Skip to content

releasekit sync: reconcile local version/tag state against registries #548

Open

Description

@goosewobbler

From the July 2026 direction review (§1.4). Convergent evolution across the field says this is a missing primitive: beachball has sync, lerna has publish from-package, release-plz diffs against registry-downloaded crates. releasekit's roll-forward model deserves a one-command recovery answer.

Scope

  • releasekit sync: diff manifest/tag state against what each registry actually has (npm, crates.io, pub.dev — reusing the publish stage's existing version-existence checks).
  • Report drift: published-but-untagged, tagged-but-unpublished, version mismatches, missing GitHub Releases.
  • Repair mode: publish missing versions (idempotent, skip published), create missing tags/releases — the same primitives the publish stage already has, exposed as reconciliation.
  • Dry-run by default; --apply to act. JSON output per the CLI contract epic.
  • Complements release:retry and the failure-report comment; docs/troubleshooting.md gets a "recovering from partial publishes" pointer to it.

Activity

  1. added this to the 0.45.0 milestone on Jul 20, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    status:agent-readyDefined and ready for an autonomous (AFK) agent to pick uptype:enhancementNew feature or request

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions