Production Readiness Router
Definition
Act as the single entry point for Phase 4 Audit: decide whether a product, feature set, release, or system is ready for production. Invoke each named audit skill below in order and synthesize the evidence into PRODUCTION_READINESS.md.
PRODUCTION_READINESS.md is the durable audit record. It must cover requirements, architecture, code quality, tests, security, data, performance, reliability, deployment, observability, adversarial review, and the final production decision.
Questions To Ask
- What release, feature set, branch, environment, or service is being audited?
- What user journeys and acceptance conditions are must-have?
- What production environment, traffic level, data sensitivity, and compliance constraints matter?
- What evidence already exists in tests, dashboards, runbooks, deploy logs, or docs?
- Who can accept risks, and what risk level is unacceptable?
Required Output Document
- Create or update exactly this file at the repository or workspace root:
PRODUCTION_READINESS.md.
- Read
AGENT_GUARDRAILS.md, FEATURE_MAP.md, FEATURE_DESIGN.md, and FEATURE_DELIVERY.md when available.
- Compare each audit area against current project files and operational evidence.
- Preserve correct prior decisions, update stale evidence, and add update notes whenever findings change.
- Use
TBD plus a precise question when a required fact is unknown.
Existing Project Comparison
- Inspect code, tests, docs, config, migrations, deployment files, monitoring, security boundaries, and git state.
- Use the book's design lens: reduce complexity, prefer deep modules, hide information, avoid pass-through layers, keep names precise, write useful comments, measure performance, and use tests to enable safe changes.
- Treat missing evidence as a readiness risk, not as proof of readiness.
Suggestive Plan
- Define the release scope and evidence sources.
- Run each audit skill in order and update
PRODUCTION_READINESS.md.
- Mark each audit area pass, pass with risk, fail, or unknown.
- Send blocking gaps back to the relevant implementation or fixing skill when appropriate.
- Produce one final readiness decision with accepted risks and required follow-up.
Exact Skill Invocation Flow
The user should only need to invoke $production-readiness-router. This router is responsible for invoking these skills explicitly, one by one, by exact skill name.
Visible Routing Protocol
When this router is invoked, the agent must make the routing visible to the user. Do not silently blend audit phases together.
Before doing readiness audit work:
- Create a visible checklist with all 12 audit subskills in order.
- Mark only the current subskill as
in_progress.
- Announce the current subskill by exact name, for example:
Invoking $requirements-completeness-audit.
- Read that subskill's
SKILL.md completely before acting on that phase.
- Perform only the work that belongs to that audit phase.
- Update the matching section in
PRODUCTION_READINESS.md.
- Mark the subskill complete before moving to the next one.
Each phase must produce an observable artifact:
- A
PRODUCTION_READINESS.md section update, or
- An evidence-backed pass, pass-with-risk, fail, or unknown finding, or
- A blocker, accepted risk, measurement, command result, file reference, or operational-evidence note, or
- A short explicit note that no evidence was available and what remains unknown.
If audit work has already happened before this router is invoked, still run the full visible sequence. In that case, use early phases to inspect and reconcile existing readiness evidence instead of pretending they already happened.
Do not jump from requirements directly to final decision, from tests directly to security/deployment conclusions, or from audit findings directly to readiness without visibly completing the intervening subskills.
Phase Work And Handoff Protocol
Router phases must do real work. Naming or reading a subskill is not enough to complete a phase.
For every audit phase:
- Read the latest
Routing Log entry in PRODUCTION_READINESS.md, if one exists.
- Treat that entry as the incoming handoff from the previous skill.
- Inspect the project, evidence sources, existing findings, or current audit section needed for this phase.
- Produce phase output: observations, evidence-backed findings, blockers, accepted-risk candidates, questions, measurements, command results, or an explicit "no evidence available" note.
- Update the matching
PRODUCTION_READINESS.md section before moving on.
- Add a new
Routing Log handoff entry for the next skill.
- Mark the phase with exactly one status:
done, needs_user_answer, needs_fix, deferred, or blocked.
Use this handoff format:
### $current-skill -> $next-skill
Status: done | needs_user_answer | needs_fix | deferred | blocked
Work completed:
- ...
Evidence or files checked:
- ...
Questions or TBDs:
- ...
Next skill focus:
- ...
The next skill must consume the previous handoff before doing its own work. If a phase has questions that block a readiness decision, ask the user or write a precise TBD in PRODUCTION_READINESS.md. If a phase has only nonblocking questions, record them and continue with the safest stated assumption.
No phase may complete with only "invoked skill" or "read skill". It must leave an artifact in PRODUCTION_READINESS.md, the routing log, evidence output, blockers, accepted risks, or a documented readiness decision.
- Invoke
$requirements-completeness-audit.
- Write or update
Requirements Completeness Audit.
- Invoke
$architecture-complexity-audit.
- Write or update
Architecture And Complexity Audit.
- Invoke
$code-quality-documentation-audit.
- Write or update
Code Quality And Documentation Audit.
- Invoke
$functional-regression-test-audit.
- Write or update
Functional And Regression Test Audit.
- Invoke
$security-readiness-audit.
- Write or update
Security Audit.
- Invoke
$data-migration-audit.
- Write or update
Data And Migration Audit.
- Invoke
$performance-capacity-audit.
- Write or update
Performance And Capacity Audit.
- Invoke
$reliability-failure-audit.
- Write or update
Reliability And Failure Audit.
- Invoke
$deployment-rollback-audit.
- Write or update
Deployment And Rollback Audit.
- Invoke
$observability-operations-audit.
- Write or update
Observability And Operations Audit.
- Invoke
$full-system-adversarial-review.
- Write or update
Full-System Adversarial Review.
- Invoke
$production-readiness-decision.
- Write or update
Production Readiness Decision.
Document Structure
PRODUCTION_READINESS.md must include:
- Read This First
- Release Scope
- Evidence Summary
- Requirements Completeness Audit
- Architecture And Complexity Audit
- Code Quality And Documentation Audit
- Functional And Regression Test Audit
- Security Audit
- Data And Migration Audit
- Performance And Capacity Audit
- Reliability And Failure Audit
- Deployment And Rollback Audit
- Observability And Operations Audit
- Full-System Adversarial Review
- Production Readiness Decision
- Accepted Risks
- Blockers
- Routing Log
- Change Log
- Open Questions And TBDs
Use references/production-readiness-template.md when creating the document from scratch.
Operating Rules
- Do not declare readiness without evidence.
- Separate must-fix blockers from accepted risks and informational findings.
- Prefer measured facts over guesses, especially for performance, capacity, reliability, and deployment.
- Update
PRODUCTION_READINESS.md whenever fixes, evidence, risk acceptance, or project behavior changes.
- Keep the final decision to exactly one of:
READY, READY WITH ACCEPTED RISKS, or NOT READY.
- Do not enter
$production-readiness-decision until all previous audit subskills are visibly complete in the checklist and represented in PRODUCTION_READINESS.md.
- Do not mark a subskill complete until it has written its phase output and handoff entry.
- If a phase uncovers a blocker that must be fixed before readiness can be decided, record it in
Blockers, route the work back to the appropriate implementation/fixing skill when requested, and repeat affected audit phases after fixes.
- If a phase uncovers implementation work, record it as a blocker, accepted-risk candidate, or follow-up rather than doing unplanned implementation inside this router.
- In the final response, list each invoked subskill and the concrete result it produced.
Example
For a billing release, audit invoice creation, approval, payment, and reporting journeys; inspect module boundaries and tests; check auth, migrations, performance measurements, rollback, alerts, and runbooks; then decide whether production can proceed.
Vocabulary
- Readiness: evidence-backed confidence that production use is acceptable.
- Accepted risk: known risk explicitly approved by the accountable owner.
- Blocker: issue that prevents production release.
- Evidence: test result, measurement, code inspection, deploy result, log, dashboard, or documented operational proof.
Expected Outcome
Produce and maintain PRODUCTION_READINESS.md with complete audit evidence and one final decision: READY, READY WITH ACCEPTED RISKS, or NOT READY.
1---2name: production-readiness-router3description: Automatically invoke the Phase 4 Audit production-readiness skills one by one by exact skill name, compare evidence against the project, create or continuously update PRODUCTION_READINESS.md, and produce a final READY, READY WITH ACCEPTED RISKS, or NOT READY decision.4---56# Production Readiness Router78## Definition910Act as the single entry point for Phase 4 Audit: decide whether a product, feature set, release, or system is ready for production. Invoke each named audit skill below in order and synthesize the evidence into `PRODUCTION_READINESS.md`.1112`PRODUCTION_READINESS.md` is the durable audit record. It must cover requirements, architecture, code quality, tests, security, data, performance, reliability, deployment, observability, adversarial review, and the final production decision.1314## Questions To Ask1516- What release, feature set, branch, environment, or service is being audited?17- What user journeys and acceptance conditions are must-have?18- What production environment, traffic level, data sensitivity, and compliance constraints matter?19- What evidence already exists in tests, dashboards, runbooks, deploy logs, or docs?20- Who can accept risks, and what risk level is unacceptable?2122## Required Output Document2324- Create or update exactly this file at the repository or workspace root: `PRODUCTION_READINESS.md`.25- Read `AGENT_GUARDRAILS.md`, `FEATURE_MAP.md`, `FEATURE_DESIGN.md`, and `FEATURE_DELIVERY.md` when available.26- Compare each audit area against current project files and operational evidence.27- Preserve correct prior decisions, update stale evidence, and add update notes whenever findings change.28- Use `TBD` plus a precise question when a required fact is unknown.2930## Existing Project Comparison3132- Inspect code, tests, docs, config, migrations, deployment files, monitoring, security boundaries, and git state.33- Use the book's design lens: reduce complexity, prefer deep modules, hide information, avoid pass-through layers, keep names precise, write useful comments, measure performance, and use tests to enable safe changes.34- Treat missing evidence as a readiness risk, not as proof of readiness.3536## Suggestive Plan37381. Define the release scope and evidence sources.392. Run each audit skill in order and update `PRODUCTION_READINESS.md`.403. Mark each audit area pass, pass with risk, fail, or unknown.414. Send blocking gaps back to the relevant implementation or fixing skill when appropriate.425. Produce one final readiness decision with accepted risks and required follow-up.4344## Exact Skill Invocation Flow4546The user should only need to invoke `$production-readiness-router`. This router is responsible for invoking these skills explicitly, one by one, by exact skill name.4748## Visible Routing Protocol4950When this router is invoked, the agent must make the routing visible to the user. Do not silently blend audit phases together.5152Before doing readiness audit work:53541. Create a visible checklist with all 12 audit subskills in order.552. Mark only the current subskill as `in_progress`.563. Announce the current subskill by exact name, for example: `Invoking $requirements-completeness-audit`.574. Read that subskill's `SKILL.md` completely before acting on that phase.585. Perform only the work that belongs to that audit phase.596. Update the matching section in `PRODUCTION_READINESS.md`.607. Mark the subskill complete before moving to the next one.6162Each phase must produce an observable artifact:6364- A `PRODUCTION_READINESS.md` section update, or65- An evidence-backed pass, pass-with-risk, fail, or unknown finding, or66- A blocker, accepted risk, measurement, command result, file reference, or operational-evidence note, or67- A short explicit note that no evidence was available and what remains unknown.6869If audit work has already happened before this router is invoked, still run the full visible sequence. In that case, use early phases to inspect and reconcile existing readiness evidence instead of pretending they already happened.7071Do not jump from requirements directly to final decision, from tests directly to security/deployment conclusions, or from audit findings directly to readiness without visibly completing the intervening subskills.7273## Phase Work And Handoff Protocol7475Router phases must do real work. Naming or reading a subskill is not enough to complete a phase.7677For every audit phase:78791. Read the latest `Routing Log` entry in `PRODUCTION_READINESS.md`, if one exists.802. Treat that entry as the incoming handoff from the previous skill.813. Inspect the project, evidence sources, existing findings, or current audit section needed for this phase.824. Produce phase output: observations, evidence-backed findings, blockers, accepted-risk candidates, questions, measurements, command results, or an explicit "no evidence available" note.835. Update the matching `PRODUCTION_READINESS.md` section before moving on.846. Add a new `Routing Log` handoff entry for the next skill.857. Mark the phase with exactly one status: `done`, `needs_user_answer`, `needs_fix`, `deferred`, or `blocked`.8687Use this handoff format:8889```md90### $current-skill -> $next-skill91Status: done | needs_user_answer | needs_fix | deferred | blocked92Work completed:93- ...94Evidence or files checked:95- ...96Questions or TBDs:97- ...98Next skill focus:99- ...100```101102The next skill must consume the previous handoff before doing its own work. If a phase has questions that block a readiness decision, ask the user or write a precise `TBD` in `PRODUCTION_READINESS.md`. If a phase has only nonblocking questions, record them and continue with the safest stated assumption.103104No phase may complete with only "invoked skill" or "read skill". It must leave an artifact in `PRODUCTION_READINESS.md`, the routing log, evidence output, blockers, accepted risks, or a documented readiness decision.1051061. Invoke `$requirements-completeness-audit`.107 - Write or update `Requirements Completeness Audit`.1082. Invoke `$architecture-complexity-audit`.109 - Write or update `Architecture And Complexity Audit`.1103. Invoke `$code-quality-documentation-audit`.111 - Write or update `Code Quality And Documentation Audit`.1124. Invoke `$functional-regression-test-audit`.113 - Write or update `Functional And Regression Test Audit`.1145. Invoke `$security-readiness-audit`.115 - Write or update `Security Audit`.1166. Invoke `$data-migration-audit`.117 - Write or update `Data And Migration Audit`.1187. Invoke `$performance-capacity-audit`.119 - Write or update `Performance And Capacity Audit`.1208. Invoke `$reliability-failure-audit`.121 - Write or update `Reliability And Failure Audit`.1229. Invoke `$deployment-rollback-audit`.123 - Write or update `Deployment And Rollback Audit`.12410. Invoke `$observability-operations-audit`.125 - Write or update `Observability And Operations Audit`.12611. Invoke `$full-system-adversarial-review`.127 - Write or update `Full-System Adversarial Review`.12812. Invoke `$production-readiness-decision`.129 - Write or update `Production Readiness Decision`.130131## Document Structure132133`PRODUCTION_READINESS.md` must include:134135- Read This First136- Release Scope137- Evidence Summary138- Requirements Completeness Audit139- Architecture And Complexity Audit140- Code Quality And Documentation Audit141- Functional And Regression Test Audit142- Security Audit143- Data And Migration Audit144- Performance And Capacity Audit145- Reliability And Failure Audit146- Deployment And Rollback Audit147- Observability And Operations Audit148- Full-System Adversarial Review149- Production Readiness Decision150- Accepted Risks151- Blockers152- Routing Log153- Change Log154- Open Questions And TBDs155156Use `references/production-readiness-template.md` when creating the document from scratch.157158## Operating Rules159160- Do not declare readiness without evidence.161- Separate must-fix blockers from accepted risks and informational findings.162- Prefer measured facts over guesses, especially for performance, capacity, reliability, and deployment.163- Update `PRODUCTION_READINESS.md` whenever fixes, evidence, risk acceptance, or project behavior changes.164- Keep the final decision to exactly one of: `READY`, `READY WITH ACCEPTED RISKS`, or `NOT READY`.165- Do not enter `$production-readiness-decision` until all previous audit subskills are visibly complete in the checklist and represented in `PRODUCTION_READINESS.md`.166- Do not mark a subskill complete until it has written its phase output and handoff entry.167- If a phase uncovers a blocker that must be fixed before readiness can be decided, record it in `Blockers`, route the work back to the appropriate implementation/fixing skill when requested, and repeat affected audit phases after fixes.168- If a phase uncovers implementation work, record it as a blocker, accepted-risk candidate, or follow-up rather than doing unplanned implementation inside this router.169- In the final response, list each invoked subskill and the concrete result it produced.170171## Example172173For a billing release, audit invoice creation, approval, payment, and reporting journeys; inspect module boundaries and tests; check auth, migrations, performance measurements, rollback, alerts, and runbooks; then decide whether production can proceed.174175## Vocabulary176177- Readiness: evidence-backed confidence that production use is acceptable.178- Accepted risk: known risk explicitly approved by the accountable owner.179- Blocker: issue that prevents production release.180- Evidence: test result, measurement, code inspection, deploy result, log, dashboard, or documented operational proof.181182## Expected Outcome183184Produce and maintain `PRODUCTION_READINESS.md` with complete audit evidence and one final decision: `READY`, `READY WITH ACCEPTED RISKS`, or `NOT READY`.