board: route the ARCHIVE? batch — 3/3 were false positives, all live - #1046
Conversation
First routing pass over SUPERSESSION-INDEX.md. Took the ARCHIVE? batch first because it was smallest and looked most decided; every member was wrong, and archiving on the route would have retired work in flight. The classifier searched the whole status string for a shipped-word, so it had no notion of WHAT shipped: it matched a phase inside an ACTIVE status, a predecessor inside a PROPOSAL, and a `Status legend:` defining the tick mark. Verified against STATUS_BOARD.md instead of the headers -- one plan is 12 shipped with a stale 4-row tail citing #388/#390, one has all five D-ids Queued, one is Queued/OBE. All three name a RETIRE symbol, so all three are RESCOPE. ARCHIVE? 0, RESCOPE 47->50, READ unchanged. The fix is an anchor, not a longer word list: any alternation matching COMPLETE fires on case 1, any matching SHIPPED fires on case 2. Only the status's leading token predicates the plan. Both halves falsified -- fires on real shipped statuses, silent on all three -- and the rule is not dead: odoo-source-extraction-v1 carries a leading-shipped status tree-wide. The correction is generated into the legend, not hand-written, so the self-reproduction invariant from #1044 still holds (verified idempotent). Two limits recorded and left open: crate hit-counts include tombstone comments (CollapseGateEmission reads 5 files and is gone), and nothing reconciles a board row against its PR's real outcome. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01AGVLyRZNEKKBSfBDJfbY3V
|
Important
This repository does not receive automatic reviews because it has fewer than 10 stars. ⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Plus Run ID: Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Bugbot couldn't run - usage limit reachedBugbot is counted against Cursor usage for this user or team, and this run hit a usage or spend limit. A user or team admin can review and increase usage limits in the Cursor dashboard. (requestId: serverGenReqId_9b95cd53-77bb-47ec-a303-ce00785f2b9f) |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 8334dcf4ef
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| # first ARCHIVE? batch were that error (2026-08-26 routing pass). | ||
| SHIPPED = re.compile(r'^\W*(SHIPPED|COMPLETE[D]?|SUPERSEDED|DONE|CLOSED|LANDED)\b', re.I) | ||
| # `(?!\s*legend)` so "Status legend:** OK SHIPPED (verified...)" is not read as a status. | ||
| STATUS = re.compile(r'[Ss]tatus(?!\s*legend):?\*{0,2}\s*([^\n|]{0,52})') |
There was a problem hiding this comment.
Restrict status extraction to plan metadata
For unified-soa-rubikon-integration-v1, excluding the legend does not stop this unanchored search: its next match is the incidental prose current-status (no overclaim) at plan line 181, so the generated table now reports (no overclaim) as the plan's self-declared status. Routing also evaluates this arbitrary later match, allowing a section-level status beginning with a shipped token to recreate the false ARCHIVE? classification; constrain extraction to the plan's header/metadata rather than merely skipping Status legend.
Useful? React with 👍 / 👎.
Skipping `Status legend:` by name was whack-a-mole. STATUS still searched the whole document and took the first hit anywhere, so unified-soa-rubikon's next match was the section heading `## 6. Honest status (no overclaim)` at line 181 -- and the table reported `(no overclaim)` as its status. Codex also named the escalation: a mid-document `## 9. Status: SHIPPED items` recreates the false ARCHIVE? outright. A status is metadata, not prose. Extraction now runs over plan_head() -- the preamble extended through any leading status-titled section, since `## §0 — Status` is metadata and line 181 is not. Measured against two alternatives: a strict preamble cut loses self-reasoning-substrate-v1's real status; a 40-line window's only marginal catch is itself prose. Nine junk statuses go, not one. Two near-misses recovered by allowing a parenthetical (`**Status (§0):** PROPOSED`). Twelve rows now read `—`; an honest absence beats a fabricated status. Routes unchanged (0/50/12), generation still idempotent, falsifier suite gained codex's escalation case and stays two-sided. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01AGVLyRZNEKKBSfBDJfbY3V
|
@codex — verified and fixed in Confirmed the symptom exactly as described: the table was reporting The root cause is that I fixed the instance rather than the class. Skipping Fix: extraction now runs over I measured two alternatives rather than guessing at the boundary:
Nine junk statuses go, not one — the table had also been reporting Routes are unchanged ( Generated by Claude Code |
Review ResultNo additional findings on
No further code changes were necessary, so I did not create an additional commit or pull request. The existing unrelated modifications to Testing
|
First routing pass over
SUPERSESSION-INDEX.md, starting with theARCHIVE?batch because it was the smallest and looked the most decided. Every member was wrong. Archiving on the route would have retired work in flight.The classifier searched the whole status string for a shipped-word, so it had no notion of what shipped:
cognitive-substrate-convergence-v2COMPLETEACTIVE, next word is(pending merges)odoo-savant-reasoners-v2SHIPPEDPROPOSAL. v1 SHIPPED in PR #420unified-soa-rubikon-integration-v1SHIPPEDStatus legend:defining what ✅ meansChecked against
STATUS_BOARD.mdrather than the headers: one plan is 12-shipped with a stale 4-row tail citing #388/#390, one has all five D-ids Queued, one is Queued/OBE. All three name a RETIRE symbol → all three are RESCOPE.ARCHIVE?0,RESCOPE47 → 50,READunchanged.The fix is an anchor, not a longer word list. Any alternation matching
COMPLETEfires on case 1; any matchingSHIPPEDfires on case 2. Only the status's leading token predicates the plan.STATUSadditionally refusesStatus legend:.Both halves falsified rather than assumed — fires on
SHIPPED in #420,DONE (2026-06-01),✅ SHIPPED,Superseded by v3; silent on all three false positives. The rule is not dead:odoo-source-extraction-v1carries a leading-shipped status tree-wide, so a category reading 0 inside the table is a measurement.The correction is generated into the legend, not hand-written, so #1044's self-reproduction invariant still holds (verified idempotent).
Two limits recorded and left open: crate hit-counts include tombstone comments (
CollapseGateEmissionreads 5 files and is gone), and nothing reconciles a board row against its PR's real outcome.🤖 Generated with Claude Code
https://claude.ai/code/session_01AGVLyRZNEKKBSfBDJfbY3V
Generated by Claude Code