1.6 KiB
CI quality-gate orchestration
config/ci/gates.json is the executable registry for all 26 gates. The Gitea
adapter runs each gate as an independent matrix check with full fan-out and no
soft-fail wiring.
The dependency graph is:
MERGE_READY
-> RELEASE_READY
-> PROD_PROMOTION_READY
-> FIELD_SLO_READY
DOCUMENTATION_READY (off-chain)
Pull requests and develop pushes evaluate merge readiness. Version tags
evaluate merge then release readiness. Production and field evaluation require
an explicit workflow dispatch. The field tier cannot pass until the 28-day
sample threshold decision is recorded. Documentation readiness consumes the
canonical project-note evidence in which both scoped diagrams already received
100/100 PASS_SCOPED; the repo ledger preserves the evidence scope and
canonical digests.
All jobs upload the shared artifacts/ tree even after failure. Numeric
retention remains an organization/provider decision; the workflow intentionally
does not invent retention-days. The relative minimums are recorded in the
registry: merge evidence through the PR decision, coherent release evidence
through the next release promotion, drill evidence through the next production
promotion, and field evidence through aggregation.
Repository variables required by higher tiers:
HOSTING_BASE_URLfor live header verificationFIELD_WEB_VITALS_INPUTfor the privacy-approved field sample documentMIN_ELIGIBLE_SAMPLESafter the baseline decision
Branch protection must mark each FE-GATE-* / <name> check required for its
declared tier. This repository cannot configure server-side protection by
committing a file.