CI publish step needs more robust approach

Problem

The current CI publish step has two issues:

  1. Non-main branches: The publish step requires manual triggering, which is undesirable
  2. Main branch: The publish step fails if the version is not bumped with every push

Expected Behavior

The CI should handle publishing more gracefully:

  • Non-main branches should either skip publishing automatically or handle it without manual intervention
  • Main branch should not fail when the version hasn't changed (e.g., skip publishing if the version already exists)

Suggested Improvements

  • Check if the version already exists in the registry before attempting to publish
  • Auto-skip publish for non-main branches or only publish on version changes
  • Consider using commit tags or conditional logic to determine when publishing is appropriate