Skip to content

Release script resumes an interrupted release #158

Closed

Description

@JacobStephens2

Parent

#150

What to build

If a release is interrupted (the terminal is closed, Ctrl-C, the network drops), running the release script again with the same version carries on from the first step not yet done, with no manual cleanup:

  • Branch pushed, no PR yet: it opens the PR.
  • PR open: it waits for the checks, then merges and tags.
  • PR merged, no tag yet: it tags that merge commit and pushes the tag.
  • Tag already on origin, pointing at the merged bump: it says the release is already tagged and exits 0. This narrowly relaxes the "tag already exists" refusal.

Acceptance criteria

  • A re-run after the PR was opened, but before the merge, merges and tags without opening a second PR or pushing a second bump commit.
  • A re-run after the merge, but before the tag, tags the existing merge commit and pushes the tag.
  • A re-run once the tag is on origin, pointing at the merged bump, reports it and exits 0 without changing anything.
  • A tag that exists but doesn't point at the merged bump for this version is still refused.
  • Tests go through the same black-box seam, setting up each interrupted state in the bare origin and the fake gh state.

Blocked by

Activity

  1. JacobStephens2 commented on Sep 30, 2026

    @JacobStephens2
    OwnerAuthor

    Closed by #168, merged into main by a thirdshift Merge run. (thirdshift could not close it itself; see #181.)

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

    ready-for-agentFully specified, ready for an AFK agent

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions