Skip to content

DX-025: Verify the changelog on release tags in CI #537

Description

@IbrahimIjai

Context

The release process is only trustworthy if a tag cannot be pushed with a stale
or missing changelog section. CI's job here is to verify, never to write —
a workflow that commits back to main takes release notes out of review and
races with concurrent merges. See
docs/dx_1/002_changelog.md §7.

Scope

  • A workflow triggered on v* tags that runs the full gate from AGENTS.md §1,
    then asserts: .changelog/unreleased/ is empty, CHANGELOG.md contains a
    section whose version equals the tag, and its date is within a day of the tag.
  • On success, publish a GitHub Release whose body is that version's section,
    extracted by the DX-005 parser.
  • Fail with a message naming exactly which assertion failed and how to fix it.
  • Document the release procedure in CONTRIBUTING.md.

Acceptance criteria

  • The workflow never pushes a commit to any branch.
  • Each failure mode is demonstrated on a scratch tag, with output in the PR.
  • The published release body matches the CHANGELOG.md section exactly.
  • CONTRIBUTING.md documents the procedure end to end.

Out of scope

  • Publishing packages to any registry, or bumping workspace versions.

Spec: docs/dx_1/002_changelog.md §7 · Depends on: DX-024

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

GrantFox OSSIssue tracked in GrantFox OSSMaybe RewardedIssue may be eligible for a GrantFox rewardStellar WaveIssues in the Stellar wave programThird CampaignCampaign: Third CampaigndocumentationImprovements or additions to documentationenhancementNew feature or request

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions