You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Create/update the GitHub Release draft from finalized release artifacts after the generated stable release PR is merged and milestone transition is complete.
This issue ends at the second human gate: the maintainer reviews the draft and explicitly clicks Publish release.
Do not rediscover/recalculate release version, changelog, milestone or target commit.
Preconditions
Before creating/updating the draft:
verify both input artifact schemas/ids;
confirm the selected stable still points to the expected final release SHA;
confirm the release preparation PR was merged by an authorized maintainer path;
verify final release-file digests still match;
verify target tag/release state is non-conflicting.
Authorization comes from repository permissions/protected workflow policy, never from a label alone.
Privileged mutation uses the configured GitHub App installation token. The PHP tool receives credentials through environment/input and never persists them.
Tag semantics
Create/update one draft using the configured tag prefix and exact final release SHA as target_commitish.
For a new release:
do not create/push a separate tag before the draft;
draft tag name is derived from the normalized app version, for example v15.0.4;
if the tag already exists, require it to point to the same expected commit or fail;
never retarget an existing published tag.
Draft contents
Body contains:
curated public release notes from the finalized changelog/security-safe text;
final closed milestone link;
full changelog/compare link as the final line.
Prerelease channels set GitHub prerelease state from #80-derived data already carried by PreparedRelease v1.
Do not use GitHub-generated release notes as a substitute for the curated release data.
Human gate
Merging the release PR never publishes the release.
The maintainer reviews the draft and explicitly publishes it.
The existing release: published consumer workflow remains responsible for build/sign/upload/App Store publication.
Parent: #70
Depends on: #73, #74, #84
Blocks: #88, #76
Goal
Create/update the GitHub Release draft from finalized release artifacts after the generated stable release PR is merged and milestone transition is complete.
This issue ends at the second human gate: the maintainer reviews the draft and explicitly clicks Publish release.
Post-publication verification belongs to #88.
Input artifacts
Consume:
PreparedRelease v1from Finalize the merged stable release and synchronize aggregate changelog history #73;MilestoneTransition v1from Plan and apply reusable release milestone transitions #74.Do not rediscover/recalculate release version, changelog, milestone or target commit.
Preconditions
Before creating/updating the draft:
Authorization comes from repository permissions/protected workflow policy, never from a label alone.
Privileged mutation uses the configured GitHub App installation token. The PHP tool receives credentials through environment/input and never persists them.
Tag semantics
Create/update one draft using the configured tag prefix and exact final release SHA as
target_commitish.For a new release:
v15.0.4;Draft contents
Body contains:
Prerelease channels set GitHub prerelease state from #80-derived data already carried by
PreparedRelease v1.Do not use GitHub-generated release notes as a substitute for the curated release data.
Human gate
Merging the release PR never publishes the release.
The maintainer reviews the draft and explicitly publishes it.
The existing
release: publishedconsumer workflow remains responsible for build/sign/upload/App Store publication.Output artifact: ReleaseDraft v1
Produce a versioned artifact containing at least:
#88 consumes this artifact after publication.
Recovery before publication
If a correction is required before successful publication:
Acceptance criteria
ReleaseDraft v1schema/fixture is committed and consumed by Verify the published release, artifact and App Store handoff #88.Definition of done
ReleaseDraft v1schema and fixtures are committed;