Production Readiness Playbook¶
Status: active Last updated: 2026-05-28
This playbook defines the minimum controls, evidence, and operational checks required to treat the current governance stack as production-ready.
1. Scope¶
Applies to:
- Policy bundle governance and lifecycle checks
- Runtime canary safety and promotion-readiness evidence
- Branch protection and required-check operational controls
- Critical CI stability trend and SLO tracking
- Registry freshness and governance sequence
2. Production Go/No-Go Criteria¶
A release candidate is Go only when all required controls below are satisfied.
2.1 Required CI outcomes¶
policy-bundle-governancejob: passedruntime_canaryjob: passeddx_metricsjob: passedci_stability_trendjob: completes and publishes trend + SLO artifacts
2.2 Required governance artifact statuses¶
artifacts/policy_bundle_lifecycle_report.json:status = passedartifacts/policy_gate_freshness_report.json:status = passedartifacts/branch_protection_policy_report.json:status = passedartifacts/required_status_checks_consistency_report.json:status = passedartifacts/workflow_embedded_python_report.json:status = passedartifacts/policy_promotion_readiness_report.json:status = passedartifacts/policy_promotion_readiness_verify_report.json:status = passed
2.3 Required durability and workflow-version artifact status¶
artifacts/replay_determinism_report.json:status = passedsummary.execution_complete = truesummary.failed_executions = 0artifacts/workflow_version_compatibility_report.json:status = passedsummary.test_execution_complete = truesummary.failed_tests = 0artifacts/checkpoint_schema_provenance_report.json:status = passedsummary.test_execution_complete = truesummary.failed_tests = 0artifacts/provenance_coverage_report.json:status = passedsummary.test_execution_complete = truesummary.failed_tests = 0
2.4 Executive summary acceptance¶
artifacts/governance_executive_summary.jsonmust be presentartifacts/runtime_governance_executive_summary.jsonmust be present- Consolidated status interpretation:
passed: acceptableunverified: acceptable only for controls that are operationally external to repo codefailed: not acceptable
2.5 Allowed exception window (unverified)¶
unverified is allowed only when all are true:
- The affected control is
github_branch_protection_report - A manual GitHub UI verification was performed using
docs/GITHUB_RULESET_RUNBOOK.md - Verification evidence is attached to the release/PR notes
- No other governance report is failed
If any other control is unverified, treat as No-Go until resolved.
3. Mandatory Local Validation Before Promotion¶
3.1 agent-skills¶
cd agent-skills
pip install -e ".[dev]"
python tooling/verify_policy_bundle_lifecycle.py --bundle-root policies/opa --report-file artifacts/policy_bundle_lifecycle_report.json
python tooling/verify_policy_gate_freshness.py --report-file artifacts/policy_gate_freshness_report.json
python tooling/verify_branch_protection_policy.py --report-file artifacts/branch_protection_policy_report.json
python tooling/verify_required_status_checks_consistency.py --report-file artifacts/required_status_checks_consistency_report.json
python tooling/verify_workflow_embedded_python.py --report-file artifacts/workflow_embedded_python_report.json
3.2 agent-skill-registry (CI-equivalent sequence)¶
cd agent-skill-registry
python tools/validate_registry.py
python tools/governance_guardrails.py --fail-on-high-risk-overlap-channels community,official
python tools/capability_governance_guardrails.py
python tools/enforce_capability_sunset.py
python tools/generate_catalog.py
python tools/registry_stats.py
4. Release Evidence Bundle¶
Attach at least:
- CI run URL
policy-bundle-governance-reportartifactruntime-canary-reportartifactcritical-ci-trend-reportartifactrelease-readiness-gate-reportartifactrelease_lineageartifact (artifacts/release_lineage.json)- If bundle-based promotion was used, corresponding
artifacts/release_bundle_promotion_<environment>.json - If applicable, screenshot/export of GitHub ruleset settings for target branch
5. Incident Response Triggers¶
Treat as production incident when any of the following occurs on default branch:
runtime_canaryfailspolicy-bundle-governancefails- Governance executive summary status is
failed - Critical CI trend SLO starts reporting repeated breaches across critical jobs
Immediate actions:
- Freeze non-essential merges
- Identify first failing control from executive summary artifact
- Apply fix and re-run affected workflow(s)
- Document cause and corrective action in PR/release notes
6. Ownership¶
- Code-level governance contracts: repository maintainers
- GitHub operational controls (rulesets/branch protection): repository admins
- Promotion decision authority: release owner + approver(s)
7. Related Documents¶
docs/CI_AND_TESTING.mddocs/OPA_POLICY_BUNDLE_LIFECYCLE.mddocs/BRANCH_PROTECTION_POLICY.mddocs/GITHUB_RULESET_RUNBOOK.mddocs/PUBLIC_RELEASE_USE_CASES.mddocs/PRODUCT_100_EXECUTION_PLAN.mddocs/RELEASE_LINEAGE_MODEL.mddocs/RELEASE_GATE_SLO_POLICY.mddocs/DURABILITY_CONTRACT.md
8. Clarification: What "External Operational Closure" Means¶
When we say this gap is external to repository code, it means:
- The repository can verify expectations and detect drift.
- The repository cannot force GitHub tenant-level settings by itself.
- A repository admin must apply branch rules/rulesets in GitHub settings UI.
Why this matters:
- CI can pass while push/merge governance is still weak if rulesets are not correctly applied.
- This is the reason API-based verification may return
unverifiedunder limited token permissions.
Minimum acceptance checklist for closure:
- Ruleset/branch protection is active on the release branch.
- Required checks match
docs/required_status_checks.jsonexactly. - PR review, stale review dismissal, and conversation resolution are enabled.
- Bypass list is restricted and explicitly reviewed.
- Evidence is attached in PR/release notes (report + UI proof).