Skip to content

docs: refresh the release workflow pages for the train-based pipeline#171

Merged
Reefact merged 2 commits into
mainfrom
claude/refresh-release-workflow-docs
Jul 17, 2026
Merged

docs: refresh the release workflow pages for the train-based pipeline#171
Reefact merged 2 commits into
mainfrom
claude/refresh-release-workflow-docs

Conversation

@Reefact

@Reefact Reefact commented Jul 17, 2026

Copy link
Copy Markdown
Owner

Summary

Brings the release workflow reference pages (doc/handwritten/for-maintainers/workflows/release.en.md / .fr.md) back in sync with the pipeline as it exists today: they still described the pre-lib/cli-split era (a single v*.*.* tag, two dispatch inputs), while release.yml now drives three independent release trains and carries the GenDoc gates.

Type of change

  • Bug fix
  • New feature
  • Breaking change
  • Refactoring
  • Analyzer / diagnostic change
  • Tests
  • Documentation
  • Build / CI / tooling

Changes

  • "When it runs": train-prefixed tag triggers (lib-v*.*.* with its lockstep package group, cli-v*.*.*, dum-v*.*.*) and the three workflow_dispatch inputs (component, version, dry_run), with links to tools/trains.sh and the AddingAReleaseTrain runbook.
  • "Pre-release labels": the stripped prefix is the train prefix, no longer a bare leading v.
  • "How it runs": the actual step chain — the GenDoc major-bump gate (cli train only) before pack, packing only the resolved train with its per-train guards, train-scoped release notes, and the final cli-only baseline-refresh step; the dry-run gating now correctly counts the three publish steps (NuGet push, GitHub Release, baseline refresh).
  • "Handle with care": a new bullet for the GenDoc major-bump gate; injection examples updated to train-prefixed tags (lib-v1.2.3;id, lib-v1.2.3+build5); the OIDC bullet's gating claim corrected.
  • "Related": link to the AddingAReleaseTrain runbook.
  • French page updated in full parity with the English one.

Every claim was fact-checked against release.yml, pack.sh, release-notes.sh and trains.sh; that check is what surfaced the omitted baseline-refresh step. One residual left untouched to keep this PR documentation-only: the comment inside release.yml itself (around line 236) still says only the push and the Release are dry-run-gated — same staleness, but fixing it is a workflow-file change.

Testing

  • dotnet build FirstClassErrors.sln
  • dotnet test FirstClassErrors.sln
  • Analyzer tests pass (FirstClassErrors.Analyzers.UnitTests)

Documentation-only change (two Markdown pages); no build or test was run locally. CI runs the full suite regardless.

Documentation

  • Public API / error documentation updated
  • README / doc/ updated (maintainer workflow reference, English and French in lockstep)
  • French translation (doc/handwritten/for-users/README.fr.md) updated if user-facing behavior changed — not applicable: no user-facing behavior change; the maintainer pages' own French counterpart is updated in this PR
  • No documentation change required

Architecture decisions

  • No architectural decision in this pull request
  • New decision recorded — ADR drafted as Proposed: ADR-____
  • Supersedes an existing ADR — successor proposed, status not flipped: ADR-____
  • ⚠️ Conflicts with an existing ADR — flagged for the maintainer: ADR-____

Related issues

None.

🤖 Generated with Claude Code

https://claude.ai/code/session_01UhPrBqngpiSwdsF4DWvNPw


Generated by Claude Code

claude added 2 commits July 17, 2026 13:47
The release.en.md / release.fr.md pages still described the pre-split
pipeline: a single v*.*.* tag trigger and a two-input dispatch. Bring
them up to date with reality — the three release trains and their tag
prefixes (lib-v, cli-v, dum-v), the component dispatch input, the
train-prefix stripping, the GenDoc major-bump gate in the step chain,
per-train packing with its guards, train-scoped release notes, and a
pointer to the AddingAReleaseTrain runbook.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01UhPrBqngpiSwdsF4DWvNPw
The fact-check against release.yml surfaced an omission: after the
GitHub Release, a cli release also refreshes GenDoc's error-catalog
baseline (accepting the published contract, pushed straight to main),
and that step shares the dry-run gate — so three publish steps are
gated, not two. Complete the step chain and correct the gating count
in both languages.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01UhPrBqngpiSwdsF4DWvNPw
@Reefact
Reefact merged commit 004201d into main Jul 17, 2026
13 checks passed
@Reefact
Reefact deleted the claude/refresh-release-workflow-docs branch July 17, 2026 15:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants