docs(issues): re-file the 2026-08-12 ledger yield review as inbox requests - #1920
Conversation
…uests The sweep's judgements are unchanged; only the delivery mechanism is. The original pass edited the canonical ledger directly, which is how it was done at the time, and the inbox/reconcile architecture that landed afterwards forbids it — check:ledger-write-discipline compares the canonical file against merge-base(HEAD, origin/main) plus the moved requests, so every direct edit on that branch became a violation and PR #1890 was closed without merging. Nothing from it reached main. 43 requests, no canonical ledger edit: - 22 done: #304 (already completed before the sweep), the six standing cautions whose own text says "no action" (#241#244#272#294#300#257), the five DR runbook steps (#196-#200), two index umbrellas (#86#188), two superseded rows (#250#253) plus #254, and five rows merged into survivors (#156 into #168; #301 into #292; #152#236#260 into #169). - 19 update: the deprioritisations, six of which move the Pri cell to P3 now that `--pri` exists (#183#90#211#212#266#269) and thirteen of which record the reasoning against a row already at the floor. - 2 add: the row-outlives-its-own-completion gap, and the residual dead Outcome cells left by PR #1902. Every closure premise was re-verified against current main rather than trusted from the earlier pass, and that mattered: five of them turn on a code comment carrying the knowledge the row was protecting, and those comments had to be confirmed present on main before the row could be closed. All five are (differentials-home, ckb-v2-tokens, bindings, page-secondary-navigation, and the viewer plan), and #244 is now additionally pinned by a test. #304's premise was re-measured too: the snapshot is 1 day old with sourceRunId 31329507691. Two deliberate omissions. #13 is skipped because it already has a pending update request, and a second one would force an explicit cancellation decision on someone else's mutation. #313 gets no row: it was fixed in PR #1905, and its tracking row only ever existed in the closed PR. The batch was dry-applied before committing: 114 open -> 95, archive 196 -> 220, and checkIssues passes on the applied result. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01DuYJz8hauCsCdx8r4fXiZU
This pull request has been ignored for the connected project Preview Branches by Supabase. |
Warning Review limit reachedYou’ve reached a temporary PR review limit under our Fair Usage Limits Policy. Next review available in:44 minutes Your organization has reached its usage spending cap. Adjust your spending cap in the billing tab. How can I continue?After more reviews become available, a review can be triggered using the To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews. How do review limits work?CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability. For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window. Please refer docs for additional details. Review details⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (49)
Comment |
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01DuYJz8hauCsCdx8r4fXiZU
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit:0e3ed773cd
ℹ️ 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".
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
…ion design Cancels the original request and re-files it, using the inbox's own supersede mechanism rather than editing an immutable request. The original said 'drop the Outcome column (or replace each cell with a pointer)'. Building it on 2026-08-13 established that dropping the column is wrong and that two other constraints are load-bearing, none of which are visible from reading the code: - The rewrite cannot be a direct edit, and cannot even be code-only. It has to run inside applyRequestBatch — the function check-ledger-write-discipline imports — and land in the same commit as a reconcile, or the checker computes normalise(base) against an un-normalised canonical and fails every PR. - Dropping the column makes the queue vanish from /issues, because issues-report skips any queue row whose cells.length !== 7. - Composite ID(s) rows must keep their prose. Derivation deliberately skips them, so they still fall back to the Outcome cell; blanking it leaves them with nothing. Found by running it: order 17 (#13, #16) rendered empty. Recording these now because rediscovering them costs another build-and-revert cycle, which is what this session just spent. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01DuYJz8hauCsCdx8r4fXiZU
…ts' into claude/ledger-sweep-inbox-requests
BigSimmo
commented
Aug 13, 2026
Codex final review summaryFinal state
Fixed or dispositioned
Independent review and threads
Verification
Limitations and residual risk
The PR was not merged. Final merge is left to the user. |
Uh oh!
There was an error while loading. Please reload this page.
Summary
The sweep's judgements are unchanged; only the delivery mechanism is. The original pass edited the canonical ledger directly — which is how it was done at the time — and the inbox/reconcile architecture that landed afterwards forbids it.
check:ledger-write-disciplinecompares the canonical file againstmerge-base(HEAD, origin/main)plus the moved requests, so every direct edit on that branch became a violation; PR #1890 was closed without merging and nothing from it reachedmain.43 requests, no canonical ledger edit:
done—#304(already completed before the sweep); the six standing cautions whose own text says "no action" (#241#244#272#294#300#257); the five DR runbook steps (#196–#200); two index umbrellas (#086#188); two superseded rows (#250#253) plus#254; and five rows merged into survivors (#156→#168,#301→#292,#152/#236/#260→#169).update— the deprioritisations. Six move the Pri cell to P3 now that--priexists (#183#090#211#212#266#269); thirteen record the reasoning against a row already at the floor.add— the row-outlives-its-own-completion gap, and the residual dead Outcome cells left by PR fix(issues): derive queue prose from the row it cites, so a stale cell cannot misdirect #1902.Every closure premise was re-verified against current
mainrather than trusted from the earlier pass, and that mattered. Five closures turn on a code comment carrying the knowledge the row was protecting, so those comments had to be confirmed present onmainbefore the row could be closed — otherwise closing the row would delete the knowledge. All five are present (differentials-home.tsx,ckb-v2-tokens.css,bindings.tsx,page-secondary-navigation.tsx, the viewer plan), and#244is now additionally pinned by a test.#304's premise was re-measured too: the snapshot is 1 day old withsourceRunId 31329507691, so its "freshness fuse" is not armed.Worth flagging: two of my greps returned
0for comments that are onmain— Prettier had reflowed them across lines. I checked the files rather than acting on the false negative, but a less careful pass would have closed#300and#272and lost both cautions.Two deliberate omissions.
#013is skipped: it already has a pending update request, and a second would force an explicit cancellation decision on someone else's mutation.#313gets no row — it was fixed in PR #1905, and its tracking row only ever existed in the closed PR.Verification
npm run verify:pr-local—completed: check:runtime, check:installed-lock-parity, format:changed, sitemap:check, docs:check-index, docs:check-inventory, docs:check-scripts, docs:check-links, check:branch-review-ledger, check:outstanding-issues, check:ledger-write-discipline·failed: (none)npm run check:ledger-write-discipline—Ledger write discipline passed for ca788d41e1e6..HEAD. This PR makes no canonical ledger edit;git diff HEAD -- docs/outstanding-issues.mdis empty.applyRequestBatchbefore committing: open 114 → 95, archive 196 → 220, andcheckIssuespasses on the applied result. Spot-checked#211lands atP3.#013), excluded.Risk and rollout
issues:reconcile. The batch is proven to apply cleanly, so reconciliation should not surprise.git revert, or cancel individual requests withnode scripts/ledger-inbox.mjs cancel <uuid> --reason "…"before reconciling.Notes
This does not reconcile. Per
docs/outstanding-issues-inbox/README.md, reconciliation runs on a dedicated branch off a freshly fetchedorigin/mainafter the relevant PRs land. Once this merges,npm run issues:reconcile -- --dry-runthennpm run issues:reconcileapplies all 57 pending requests in one serialized transaction.Reviewability: the judgement is in the outcome and detail text of each request, so this is best read as 43 small decisions rather than one diff. If any single closure looks wrong, cancelling that one request is a one-line change and leaves the rest intact.
🤖 Generated with Claude Code
https://claude.ai/code/session_01DuYJz8hauCsCdx8r4fXiZU
Generated by Claude Code