ZAKON #25 — Pre/Post-flight Mandatory (H/BLOCKER)
ZAKON #25 — Pre/Post-flight Mandatory (H/BLOCKER)
Source: ~/system/rules/john-operating-system.md line 77
Instituted: 2026-04-28 (MC #9941 panel approved 4/5 + DA timing dissent preserved)
The Rule
WHEN task priority = H AND (BLOCKER label OR multi-component OR effort ≥ M)
THEN workflow MUST be:
/prompt-forge <mc_id>— 5-panel pre-flight, unified prompt/mehanik "task" <path> <mc_id>— gate clearance (existing)- Specialist dispatch with forged prompt
/task-postflight <mc_id>— Proveo validation + learning loop
When to Skip /prompt-forge
Skip directly to /mehanik when ANY of:
- Priority = M or L
- Trivial scope (single-line config, single-file edit, recurring template)
- Effort = S
- Explicit
/skip-forgedirective
SKIP /task-postflight? Never. Mandatory closure for H/BLOCKER.
Decision Tree
HAS the task been classified as H + BLOCKER/multi-component? YES → /prompt-forge mandatory NO → skip directly to /mehanik AFTER specialist dispatch completes: /task-postflight <mc_id> — ALWAYS for H/BLOCKER
Why This Exists
Eliminates reactive scope creep. Historical incidents:
- feedback_drop_ceo_request_scope_creep.md: CEO requested "fix Drop demo" (5 bugs). John hallucinated "staging + CI infra" from LLM memory, dispatched 11 infra agents, lost 6h. Real deploy path = Docker → ECR → apprunner (30 min).
- Dual-backend incident #9892: Specialist built second backend because task prompt didn't specify "use existing backend".
Solution: 5-expert panel (Petter Graff, Devils Advocate, Anthropic CA, OpenAI CA, Chip Huyen) produces better prompts for H/BLOCKER tasks. Disagreements preserved unsmoothed in <disagreements> XML block.
How to Apply
For John (orchestrator):
- Classify incoming task: priority, labels, effort, components
- If H + BLOCKER/multi-component → invoke
/prompt-forge <mc_id> - Wait for forged prompt at
~/system/prompts/forged/<mc_id>.md - Pass forged prompt to
/mehanikas Phase A input - After Mehanik clearance → dispatch specialist with forged prompt
- After specialist completes → invoke
/task-postflight <mc_id> - Wait for Proveo validation + learning loop
- Submit
mc.js readyonly after postflight clears
For specialists (builders):
No change. You receive a forged prompt (if H/BLOCKER) or regular prompt (if M/L). Execute as normal. Postflight validation happens after you finish.
Cost Guardrails
- /prompt-forge cap: $1.00 per invocation
- /task-postflight cap: $0.50 per invocation
- Daily budget: $5.00 for prompt-forge (≈ 5 BLOCKER tasks/day max)
- Typical combined cost: $0.49 warm cache / $1.35 cold per H/BLOCKER task
v0.1 Deferred Items
Deferred to post-Akershus (after 2026-05-04):
- Eval harness: 20-task golden dataset replay
- Complexity classifier: automated scope gate (replaces heuristic)
- cost-tracker.js integration: per-invocation logging + alerts
- Observability: agent latency, token counts, BFPR metric
- BFPR ship gate: ≥70% Builder First-Pass Rate over first 20 uses before declaring v1.0
Panel Approval Record
MC #9941: ZAKON #25 proposal
| Panelist | Vote | Key Argument |
|---|---|---|
| Petter Graff | APPROVE | Scope creep root cause = ambiguous prompts. 5-expert forge addresses this. |
| Anthropic CA | APPROVE | Disagreements XML preserves tension → better builder context. |
| OpenAI CA | APPROVE | Post-flight learning loop closes gap between intent and execution. |
| Chip Huyen | APPROVE | Cost acceptable if BFPR ≥70% (empirical gate required). |
| Devils Advocate | DISSENT | Timing risk: 5-panel forge adds 2-5 min overhead. May bottleneck on urgent H tasks. Proposes fast-path override for P0 incidents. |
CEO decision: Approved 4/5. DA timing dissent preserved — fast-path override deferred to v0.2 based on empirical P0 incident latency data.
References
Last updated: 2026-04-28
No comments to display
No comments to display