Repository navigation
Correct Section 3, 4 and 6 Statements the Tree Contradicts - #1541
Conversation
Settle #1523, every item checked against the tree before it was changed. Section 3 and D6.4 now list the add/drop surface a caller of the pinned release task actually owns: the enable_<target> value its publisher passes, the publisher's on.push.paths where it carries a push trigger, expect_release_assets, the PR workflow's filter, output, and enable-forward, and a package target's publish job. The release task's own inputs, build jobs, and needs: entries belong to the task, so only a repo owning one edits them. The "shared paths filter" becomes the publisher's own on.push.paths list, and the seam contract drops the verbatim carry that no caller makes. The build layer names the per-job hook a caller of the hub task shapes its leaf through, and section 6's library row gains the publisher surfaces and stops saying a caller can forward an input the hub task does not declare. D3.2 binds every literal that keys default-branch behavior rather than three named ones, and says the hub tasks and default leaves write main. D3.3 drops the claim that the maintainer bumps the patch. D4.4 names the gh release view check and scopes its no-op to package registries, Docker still re-pushing. D5.1 and section 3 drop the same-run exception that covered every artifact. D1.2 states what the validator detects, so a repo with tests in another shape knows to replace the call. Section 6 scopes the release task's cleanup to the release-asset-* step, files S5 and S6 under a push trigger only, credits the main pin's publish to D8.3's bot push, reads the wrapper's state file for the build or image version, drops D6.3 from the differently-named-artifact divergence, names the deploy hook's path and four inputs, and stops claiming an operational repo reaches S2 and S3 on every pull request. The no-build PR stub now maps CODECOV_TOKEN, as D1.6 requires of a cross-repository caller. Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
The no-build PR stub carries the release-with-smoke stub's comment telling a C# or Python repo to map CODECOV_TOKEN, rather than mapping it for every repo, since docs/reusable-workflows.md has a call needing no secret pass no secrets: key. The operational-vs-release-workflow skill's release-publish-mechanics reference names the per-job hook path and drops the verbatim-carry claim, matching WORKFLOW.md section 3. Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Advanced Run ID: ⛔ Files ignored due to path filters (8)
📒 Files selected for processing (6)
Included review availability: Your plan provides up to 1 included review per hour; 0 remain after this review. 📝 WalkthroughWalkthroughThe pull request updates workflow-contract documentation for build hooks, artifact handling, release conditions, validation rules, target ownership, project-type guidance, and canonical review records. It also adds a non-functional Codecov workflow comment. ChangesWorkflow contract documentation
Priority: ⬇️ Low Estimated code review effort: 3 (Moderate) | ~20 minutes Merge Risk: ⚪ Minimal · up to The workflow documentation and review metadata updates present no concrete merge-blocking risk. 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
@coderabbitai review |
✅ Action performedReview finished.
|
There was a problem hiding this comment.
🟡 Changes recommended
A few newly updated contract statements remain inaccurate versus the current YAML behavior (notably Docker hook surfaces, validate-hook extensibility, and client-vs-server duplicate handling).
Once you've addressed the issues Copilot identified, you can request another Copilot review.
Pull request overview
Updates the workflow contract documentation to align WORKFLOW.md sections 3, 4, and 6 (and the derived skill references) with the current GitHub Actions implementation, plus refreshes the canonical-review report stamps.
Changes:
- Refines the “orchestration vs build” and “add/drop surface” descriptions to match the hub-hosted release-task and caller-stub boundaries.
- Corrects multiple release-model / no-op-republish / cleanup / scenario-scoping statements in sections 4 and 6.
- Updates derived skill reference copies and canonical review metadata.
File summaries
| File | Description |
|---|---|
| WORKFLOW.md | Main contract doc updates across sections 3/4/6 to match current workflow behavior. |
| reports/canonical-review.json | Updates recorded digests/findings/stamps for reviewed canonical units. |
| catalog/snippets/workflows/test-pull-request.yml | Adds guidance comment about Codecov token mapping for coverage uploads. |
| .agents/skills/workflow-ci-contract/references/architecture.md | Regenerated include of WORKFLOW.md section 3 for the skill reference. |
| .agents/skills/workflow-ci-contract/references/d-guarantees.md | Regenerated include of WORKFLOW.md section 4 for the skill reference. |
| .agents/skills/operational-vs-release-workflow/references/release-publish-mechanics.md | Updates release skill reference prose about the override seam and artifact handoff. |
| .github/skills/workflow-ci-contract/references/architecture.md | Generated distribution copy of the workflow-ci-contract architecture reference. |
| .github/skills/workflow-ci-contract/references/d-guarantees.md | Generated distribution copy of the workflow-ci-contract D-guarantees reference. |
| .github/skills/operational-vs-release-workflow/references/release-publish-mechanics.md | Generated distribution copy of the release-publish mechanics reference. |
| .claude-plugin/fleet-skills/skills/workflow-ci-contract/references/architecture.md | Generated plugin distribution copy of the architecture reference. |
| .claude-plugin/fleet-skills/skills/workflow-ci-contract/references/d-guarantees.md | Generated plugin distribution copy of the D-guarantees reference. |
| .claude-plugin/fleet-skills/skills/operational-vs-release-workflow/references/release-publish-mechanics.md | Generated plugin distribution copy of release-publish mechanics reference. |
| .claude-plugin/fleet-skills/.source-digests/workflow-ci-contract | Updates plugin source digest for workflow-ci-contract. |
| .claude-plugin/fleet-skills/.source-digests/operational-vs-release-workflow | Updates plugin source digest for operational-vs-release-workflow. |
Review details
- Files reviewed: 14/14 changed files
- Comments generated: 5
- Review effort level: Lite
💡 Configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
…ction 3 (#1545) ## Summary Settles #1540 and #1539, the statements the #1523 change (#1541) wrote or left that the tree contradicts, so promotion #1542 does not carry them to `main`. - **D1.2.** A repo whose tests take another shape can run them from its own `.github/actions/validate/action.yml` hook, which `validate-task.yml` runs where it exists. The hook receives no secret, so a repo whose other-shape tests owe D1.6's coverage upload still replaces the validator. - **Section 3, Build.** Names the Docker leaf's `docker-prepare` hook, which a caller's `docker_matrix` bypasses, and the `docker-build-base` hook beside it, both reached through the release task's `build-docker` job, which forwards `docker_matrix` and `docker_build_base`. - **Codecov wording.** The no-build stub and the release-with-smoke stub in `docs/reusable-workflows.md` say a tokenless upload can skip silently, matching D1.6, rather than that coverage reaches Codecov. - **Release skill, override seam.** The section restated `WORKFLOW.md` section 3 and disagreed with it in all four places #1539 lists, so it is now a pointer to section 3, which the `workflow-ci-contract` skill carries whole. Its two remaining sentences on the hub defaults went too, being false for the Docker default and misrouting the overrides that need no hook. It keeps one sentence naming the inputs a caller sets beyond `enable_*`, `docker_image` and the project-path inputs, which section 3 does not name. The whole-unit passes raised further statements this change did not write, filed as #1543 rather than fixed here. The final passes found three more on text this change wrote, D1.2's hook route missing the validator job's fixed runner and scope, and the skill's caller-input sentence overreaching and living only in the skill, filed as #1544 on the maintainer's call to stop editing after a final round. ## Verification - `scripts/build_dist.py --check`, `spec/validate.py`, `scripts/repo_gate.py --check eol`, `scripts/prose_lint.py`, and `scripts/docker_lint.py` pass. - A whole-unit pass over each moved canonical unit, and a diff pass, recorded per `local-strict-review`. Refs #1540, #1539 🤖 Generated with [Claude Code](https://claude.com/claude-code) https://claude.ai/code/session_01SjJ6HmHg8u8SSdotSezKqk <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **Documentation** - Expanded guidance for Docker build customization, including preparation hooks, caller-provided build matrices, and optional shared base layers. - Documented support for repositories with custom test layouts through validation hooks. - Clarified coverage-upload behavior when no Codecov token is provided. - Consolidated workflow architecture and behavioral-contract references for consistency. <!-- end of auto-generated comment: release notes by coderabbit.ai --> --------- Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
Promotes `develop` to `main`, carrying #1541 and #1545. #1541 corrects the `WORKFLOW.md` sections 3, 4 and 6 statements the tree contradicted and points the no-build pull request stub and the release skill at the corrected rules. #1545 fixes what #1541's final passes left: D1.2's route for tests in another shape, the Docker hooks in section 3, the Codecov wording in both stubs, and the release skill's override-seam section, now a pointer to section 3. What the passes found and neither change wrote is filed as #1536 and #1543, and #1545's own final findings as #1544. Closes #1523 Closes #1539 Closes #1540 🤖 Generated with [Claude Code](https://claude.com/claude-code) https://claude.ai/code/session_01SjJ6HmHg8u8SSdotSezKqk
Summary
Settles #1523, a set of
WORKFLOW.mdsections 3, 4 and 6 statements the tree contradicts, and the D6.4 item its comment adds. Each item was checked against the YAML before it was changed.build-release-task.ymlby pin (spec/divergences.jsonretires a local copy), so its surface is theenable_<target>value its publisher passes, its publisher'son.push.paths,expect_release_assets, the PR workflow's filter, output and enable-forward, and a package target's publish job. The task's own inputs, build jobs andneeds:entries belong to the task. The .NET build job is named for what it is,dotnet-publish. The build layer names the per-job hook (.github/actions/<job>/action.yml) a caller shapes its leaf through. Thelibraryrow gains the publisher surfaces and no longer says a caller can forward anenable_librarythe hub task does not declare.on.push.paths. The unscoped "re-pushes nothing" now defers to D4.4, which a dispatch refreshes.main. D3.3 no longer says the maintainer bumps the patch.gh release viewcheck rather than the tag, and says "package-registry" pushes are no-ops so it no longer contradicts Docker re-pushing.*Tests*.csproj, or a roottests/besideuv.lockorrequirements*.txt), so a repo with tests in another shape knows to replace the call. The no-build catalog stub now carries the same comment the release-with-smoke stub does, telling a C# or Python repo to mapCODECOV_TOKEN, sincedocs/reusable-workflows.mdhas a call needing no secret pass nosecrets:key.operational-vs-release-workflowskill. Itsrelease-publish-mechanics.mdreference names the per-job hook path and drops the verbatim-carry claim, matching section 3.release-asset-*step, files S5 and S6 under a push trigger only, credits S11's publish to D8.3's bot push, reads the wrapper state file for the build or image version, drops D6.3 from the artifact divergence, names the deploy hook's path and four inputs, and stops claiming S2 and S3 on every operational pull request.The section 3 list now names
expect_release_assets, which is the section 3 half of #1524's second item.The whole-unit passes raised further statements this change did not write, filed as #1536 for
WORKFLOW.mdand #1539 for the skill reference's override-seam section, rather than fixed here. #1539's first item is on a sentence this change rewrote, left for that issue on the maintainer's call to stop editing after a final round. The final diff pass found two more on text this change wrote, D1.2's "tests in another shape" sentence and the Build bullet's missing Docker hooks, filed the same way as #1540.Verification
scripts/build_dist.py --check,spec/validate.py,scripts/repo_gate.py --check eol,scripts/prose_lint.py, andscripts/docker_lint.py(editorconfig, actionlint, markdownlint, cspell, shellcheck, shfmt, PSScriptAnalyzer) all pass.local-strict-review.Refs #1523
🤖 Generated with Claude Code
https://claude.ai/code/session_01SjJ6HmHg8u8SSdotSezKqk
Summary by CodeRabbit
Documentation
Chores