.agents/skills/workflow-ci-contract/references/d-guarantees.md line 16 condenses D2.1 as:
D2.1 A dedicated entry job asserts each cross-input invariant before expensive work, downstream jobs needs: it.
Three surfaces write it as a job or a step. WORKFLOW.md D2.1: "a dedicated entry job/step asserts each cross-input/derived-state invariant". WORKFLOW.md 5A's D2 core item: "an entry validation job/step exists per complex-input workflow". GOVERNANCE.md states the same pair.
The difference is not cosmetic, because the contract's own worked example is a step. D2.4 names the docker-readme task's repositories XOR manifest+manifest-jq validation, and .github/workflows/publish-docker-readme-task.yml implements it as a "Validate inputs step". An audit run from this reference records D2.1 failed against a workflow the contract holds up as conforming, or restructures that step into a job to satisfy a requirement no source states.
The same skill's SKILL.md was corrected to "a dedicated entry job or step" in the pull request settling #1225, #1208 and #1207, so the two files in one skill now disagree. That change was not authorized to edit d-guarantees.md, which #1205 and #1212 hold.
Related: #1205, #1212.
.agents/skills/workflow-ci-contract/references/d-guarantees.mdline 16 condenses D2.1 as:Three surfaces write it as a job or a step.
WORKFLOW.mdD2.1: "a dedicated entry job/step asserts each cross-input/derived-state invariant".WORKFLOW.md5A's D2 core item: "an entry validation job/step exists per complex-input workflow".GOVERNANCE.mdstates the same pair.The difference is not cosmetic, because the contract's own worked example is a step. D2.4 names the docker-readme task's
repositoriesXORmanifest+manifest-jqvalidation, and.github/workflows/publish-docker-readme-task.ymlimplements it as a "Validate inputs step". An audit run from this reference records D2.1 failed against a workflow the contract holds up as conforming, or restructures that step into a job to satisfy a requirement no source states.The same skill's
SKILL.mdwas corrected to "a dedicated entry job or step" in the pull request settling #1225, #1208 and #1207, so the two files in one skill now disagree. That change was not authorized to editd-guarantees.md, which #1205 and #1212 hold.Related: #1205, #1212.