Problem
The reusable repo-required-gate.yml@v1 policy-validation job hard-codes .agent/check-map.yml to the legacy singular required_gate: shape. Consumers adopting the canonical plural required_gates: list fail policy validation even when every declared check is valid. ArchonVII/repo-template PR #187 is the live reproducer.
Goal
Make the shared policy validator accept the canonical plural required-gate list while preserving compatibility with existing singular check maps and failing closed on malformed declarations.
Scope
- Update the canonical reusable required-gate workflow validation.
- Add regression coverage for plural, legacy singular, and malformed check-map shapes.
- Record the operational change and release propagation requirement.
Non-Goals
- Changing consumer branch-protection settings.
- Moving the owner-gated
v1 tag in this implementation lane.
- Changing repo-template's canonical plural schema.
Acceptance Criteria
Dependencies / Blockers
Implementation is unblocked. Consumer proof remains blocked until this PR is merged and the owner-gated v1 tag is advanced.
Status
ready
Execution Gate
allowed
Problem
The reusable
repo-required-gate.yml@v1policy-validation job hard-codes.agent/check-map.ymlto the legacy singularrequired_gate:shape. Consumers adopting the canonical pluralrequired_gates:list fail policy validation even when every declared check is valid. ArchonVII/repo-template PR #187 is the live reproducer.Goal
Make the shared policy validator accept the canonical plural required-gate list while preserving compatibility with existing singular check maps and failing closed on malformed declarations.
Scope
Non-Goals
v1tag in this implementation lane.Acceptance Criteria
required_gates:and one or morecheck_nameentries passes policy validation.required_gate:remains compatible.check_namefail closed.repo-required-gate / decision; custom additional required checks are accepted.docs/repo-update-log.mdrecords the change and pending propagation through the owner-gatedv1tag.Dependencies / Blockers
Implementation is unblocked. Consumer proof remains blocked until this PR is merged and the owner-gated
v1tag is advanced.Status
ready
Execution Gate
allowed