Repository navigation
Require tool-free Fable to return the final review instead of deferring to repository inspection #175
Copy link
Copy link
Closed
Labels
bugSomething isn't workingSomething isn't workingpriority: P0Stop-the-line critical path; work before lower-priority roadmap itemsStop-the-line critical path; work before lower-priority roadmap items
Milestone
Description
Problem
The tool-free Fable lane can complete successfully at the provider/process level yet return only an interim intention to inspect the repository instead of the required review JSON.
The #174 exact-candidate review proved the remaining prompt-contract hole after #167 and #172:
- preflight selected Fable High normally and tools remained disabled;
- the supplied prompt included the frozen patch and exact
CERTIFIED/NOT CERTIFIEDcontract; - Fable ended its only turn with prose equivalent to “I’ll review this patch… let me first see whether the base repository is available”;
- no final JSON review or verdict was emitted;
- the gate correctly classified
INVALID_VERDICT, wrote a non-certifying partial receipt, cancelled the still-running Sol peer, and recommended no retry.
The validator is correct. The prompt must make clear that the supplied patch/context is the complete review environment and that repository inspection is unavailable and unnecessary.
Acceptance criteria
- Initial and reconciliation Fable prompts explicitly state that all available review evidence is already supplied, no repository/tools will be available, and the reviewer must complete the review in the current response.
- Require exactly one final JSON object matching the schema; prohibit preambles, progress narration, deferral, requests for more context, repository-inspection intent, and Markdown wrappers.
- Keep exact uppercase
CERTIFIED/NOT CERTIFIEDliterals and the existing contradiction rules. - Do not normalize or salvage interim prose; it remains non-retryable
INVALID_VERDICT/invalid_executionwith a non-certifying partial receipt. - Preserve the completed peer result only when it actually completed; do not relabel a cancelled/incomplete peer as completed.
- Add RED/GREEN prompt assertions for both initial and reconciliation paths plus an execution regression where a tool-free interim response fails closed without retry.
- Keep Fable High tool-free, subscription-authenticated, and candidate-bound; do not re-enable tools or broaden fallback.
- Synchronize ROADMAP and the authoritative 1.0 milestone in this slice.
- Require one canonical 11/11 proof and normal Sol High + Fable High review with no exception.
Evidence source
#174 candidate tree 2636c7da25fcd9a19735112f938e050981012a6c, patch SHA-256 20b901eb0a8b066467d4c75ee6d3dc96a9333155c83d71062d37a1a4a9cd7618:
- canonical proof: 11/11 PASS;
- review receipt:
partial,certifying: false,INVALID_VERDICT,invalid_execution, non-transient, retry not recommended; - Fable preferred route completed one provider turn but emitted only repository-inspection deferral prose;
- Sol was cancelled before completion, so no valid peer result existed to preserve.
Non-goals
- Do not retry or normalize the Block model-policy migration completion when preserved guidance still authorizes autonomous xhigh #174 review.
- Do not weaken the strict verdict validator.
- Do not add a review exception.
- Do not deliver the frozen Block model-policy migration completion when preserved guidance still authorizes autonomous xhigh #174 candidate before this blocker lands and Block model-policy migration completion when preserved guidance still authorizes autonomous xhigh #174 is reproven from fresh current main.
Metadata
Metadata
Assignees
Labels
bugSomething isn't workingSomething isn't workingpriority: P0Stop-the-line critical path; work before lower-priority roadmap itemsStop-the-line critical path; work before lower-priority roadmap items
Activity
BaseInfinity commentedon Aug 23, 2026
Start checkpoint — decomposed current-main slice
Confidence: HIGH.
/Users/stefanayala/codex-sdlc-issue175fix/issue-175-final-fable-responseorigin/mainatb7c8d4590a483afa0be61f1bb9ed4408d3b520cd2636c7da25fcd9a19735112f938e050981012a6c, canonical 11/11, non-certifying invalid-execution receipt; do not mutate, retry, or deliver it.Narrow contract
INVALID_VERDICT/invalid_execution, non-transient and non-retryable; no normalization.TDD plan
BaseInfinity commentedon Aug 23, 2026
TDD RED — complete-evidence / immediate-final-response prompt contract
Focused command:
Result: expected 0 pass / 1 fail.
A direct inspection of the exported initial and reconciliation prompt builders confirmed these missing clauses:
initial-complete-evidencereconciliation-complete-evidenceimmediate-final-jsonThe new execution fixture also mirrors the #174 terminal behavior: Fable emits only interim repository-inspection prose while Sol hangs. Existing production behavior already classifies that as non-certifying, non-transient, non-retryable
invalid_executionand leaves both reviewers incomplete; the intended production change is therefore prompt-only and must not weaken the validator or retry policy.BaseInfinity commentedon Aug 23, 2026
Focused GREEN — immediate final tool-free review contract
The narrow production change adds two Fable/cross-model-only clauses to both initial and reconciliation prompts:
Sol's repository-backed prompt is unchanged. Tool disablement, subscription auth, exact uppercase verdicts, strict parsing/contradiction checks, retry classification, candidate binding, and fallback rules are unchanged.
Focused proof:
git diff --check: GREEN.The new interim-prose fixture reproduces the #174 shape and proves a non-certifying
invalid_executionreceipt, no retry recommendation, no salvaged review, and cancelled/incomplete Sol.ROADMAP matches the authoritative milestone: 10 open / 15 closed, with #175 -> #174 -> #86 -> #109 first. #79 remains the exact-candidate real Windows Codex Desktop + CLI gate before #88 public artifact verification.
Next: freeze the tree, run one canonical stamped 11/11 proof, then normal Sol High + Fable High review with no exception.
BaseInfinity commentedon Aug 23, 2026
Canonical candidate proof — 11/11
Frozen candidate:
b7c8d4590a483afa0be61f1bb9ed4408d3b520cdb6f059a71a1ebd6133bd53714b2d684efaa6e7340cc29ded77485d0c7e3b4b9eb6b0af7485e91ab4ed121eb5c601143f0de9fb08Canonical stamped command:
Result: 11/11 PASS.
Next gate is required normal Sol High + Fable High review over this unchanged candidate; no exception is available or requested.
BaseInfinity commentedon Aug 23, 2026
Initial joint review — certified with one bounded P2 correction
Exact candidate
b6f059a71a1ebd6133bd53714b2d684efaa6e734completed both reviewers normally:CERTIFIED, confidence 98, no findings.CERTIFIED, confidence 80, one P2 and three P3s.CERTIFIED, no reconciliation, reviewer-verdict outcome, no retry.The P2 is accurate enough to correct now: prompt text reduces deferral likelihood, while the actual guarantee is the existing strict validator plus non-certifying invalid-execution receipt. ROADMAP should not blur those facts.
One bounded correction round will:
This changes the candidate, so the current proof/review will not be used for delivery. After narrow delta proof, run one fresh canonical 11/11 proof and a fresh normal Sol High + Fable High gate. No exception.
BaseInfinity commentedon Aug 23, 2026
Corrected final canonical proof passed on the exact staged candidate.
Candidate identity:
Bounded correction after the first review:
Fresh canonical proof:
Result: 11/11 PASS. The earlier proof/review is superseded; fresh required Sol High + Fable High review follows on this exact candidate.
BaseInfinity commentedon Aug 23, 2026
Fresh required review on corrected tree 4f5b8a27bda15f8833df39674afe192ff8812aef completed normally but did not certify.
Review outcome:
After one normal reconciliation round, both reviewers agreed on:
Second and final bounded correction:
The non-certifying review receipt is preserved. It is not being retried unchanged; the exact candidate has changed and now requires a fresh canonical proof and fresh normal dual review.
BaseInfinity commentedon Aug 23, 2026
Final corrected candidate is frozen and its one canonical proof passed.
Candidate identity:
Final canonical proof:
Result: 11/11 PASS. The proof receipt is fresh and reviewed. A fresh normal Sol High + Fable High review now runs on this exact candidate. No exceptions and no further correction loop.
BaseInfinity commentedon Aug 23, 2026
Final normal dual review certified the exact candidate.
Receipt binding:
Required reviewers:
Fable reported one non-blocking P2 about the literal-grep implementation of the canonical focus-selector regression plus three P3 maintainability observations. The bounded correction cap is exhausted, so the certified tree is not being mutated. The P2 is recorded as #176 in the 1.1.0 harness-hardening milestone: #176
Afterhours check: 2026-08-23 16:51 PDT, Sunday. Remote delivery is allowed. Candidate-bound delivery follows.
BaseInfinity commentedon Aug 23, 2026
Post-merge verification complete.
#175 is complete. The release train resumes #174 from a fresh current-main worktree; the previous non-certifying #174 candidate remains frozen as evidence.