# John Blueprint Cost-Waiver Preflight — 2026-05-23

# Blueprint MUST checklist — John fail-closed — 2026-05-23

## Trigger / waiver

- CEO/user message: `Nije mi vazan cost.`
- Interpreted narrowly as: cost objection waived for continuing blueprint preflight/MUST work.
- Not interpreted as: CEO sign-off on specs, MC done approval, or permission to fabricate workflow state.

## Inputs

- Project path: `/Users/makinja/system`
- MC #10599: John replacement plan
- MC #10570: John drift-prevention spec
- System BUILD-BLUEPRINT: `/Users/makinja/system/BUILD-BLUEPRINT.md`
- Persistent evidence base: `/Users/makinja/system/evidence/john-fail-closed-20260523/`

## Deterministic checks run

1. Blueprint rubric wrapper:
   - Command: `bash /Users/makinja/system/tools/run-blueprint-check.sh /Users/makinja/system --json`
   - Evidence: `blueprint-check-rubric.json`
   - Result: `READY`, score `100`, rc `0`.

2. Blueprint inventory wrapper:
   - Command: `bash /Users/makinja/system/tools/run-blueprint-check.sh /Users/makinja/system --inventory --json`
   - Evidence: `blueprint-check-inventory.json`
   - Result: `MISSING_FILES`, compliance `3/6`, rc `1`.
   - Missing: `DEPLOY-MAP.md`, `PIPELINE.md`, `RUNBOOK.md`.
   - Context: `/Users/makinja/system/BUILD-BLUEPRINT.md` says `~/system/` is exempt from `DEPLOY-MAP.md` and `RUNBOOK.md` circuit breakers because it is not a product. The generic inventory checker is not system-exemption-aware.

3. Blueprint SHA registry verify:
   - Command: `node /Users/makinja/system/tools/blueprint-sha256-registry.js verify /Users/makinja/system/BUILD-BLUEPRINT.md`
   - Evidence: `blueprint-sha256-verify.out`, `blueprint-sha256-verify.err`
   - Result: `NOT_REGISTERED`, rc `2`.
   - Context: `/Users/makinja/.claude/agents/mehanik.md` CB9 defines `NOT_REGISTERED` / exit `2` as WARN, not block.

4. MC lease/status checks:
   - Commands:
     - `node /Users/makinja/system/tools/mc.js claim-status 10599`
     - `node /Users/makinja/system/tools/mc.js claim-status 10570`
     - `node /Users/makinja/system/tools/mc.js show 10599`
     - `node /Users/makinja/system/tools/mc.js show 10570`
   - Evidence files: `mc-10599-claim-status.json`, `mc-10570-claim-status.json`, `mc-10599-show.txt`, `mc-10570-show.txt`
   - Result: both claim-status outputs show `available: true`, `lease_holder: null`.

5. Discover lookup:
   - Command: `node /Users/makinja/system/tools/discover.js "john fail-closed claim gates system specs"`
   - Evidence: `discover-john-fail-closed.txt`
   - Result: lookup ran; output is advisory/context, not completion evidence.

6. Attempted Claude Code `/mehanik` skill wrapper via local cc-api-server:
   - Tool: `run_claude_skill(skill="mehanik", ...)`
   - Result: BLOCKED by `cc-api-server error 401: Unauthorized`.
   - No mehanik marker was written from this attempt.

## Verdict

PARTIAL / PRE-FLIGHT ONLY.

- Cost gate is waived by CEO/user statement.
- Deterministic local blueprint rubric passes.
- Inventory check fails generically but conflicts with documented `~/system/` exemption for non-product workspaces.
- SHA registry is WARN (`NOT_REGISTERED`), not block, under Mehanik CB9.
- Full Claude Code `/mehanik` wrapper did not run due cc-api-server 401.
- Therefore, do not claim full blueprint MUST completion.

## Next required decision

Need explicit CEO decision on one of:

1. `SIGN OFF SPECS` — record sign-off, then move MC states via normal workflow.
2. `RUN FULL MEHANIK/BLUEPRINT DESPITE 401` — use another authorized Claude Code path or manual operator run to generate `/tmp/mehanik-cleared-*` markers.
3. `REGISTER SYSTEM BUILD-BLUEPRINT HASH` — register `/Users/makinja/system/BUILD-BLUEPRINT.md` in SHA registry, then rerun preflight.
4. `REQUEST CHANGES` — edit specs/evidence before any status transition.