Repository navigation
D-RU-6 lab: arm A′ (walk_mask with a dirty-frontier skip) and the chain sweep - #1652
Conversation
…pdates Two switches, each measurable on its own; both off is A's loop, asserted by equal tuples and equal gather counts. A is unchanged; walk_mask, walk_tile and walk_sparse gain only pub(crate). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01G22yT6htkcdyXsihxxXdrg
A missing row clear cannot change the answer (stale bits are already in walk), so only this check sees it; disable-verified. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01G22yT6htkcdyXsihxxXdrg
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01G22yT6htkcdyXsihxxXdrg
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01G22yT6htkcdyXsihxxXdrg
A′ (walk_mask with a dirty-frontier skip) does not remove C's chain lead; the sweep confines C's end-to-end win to unbranched chains of >= 384 nodes. Recommendation: defer the codebook attestation. D-RU-6 stays Queued/Lab. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01G22yT6htkcdyXsihxxXdrg
|
Important
This repository does not receive automatic reviews because it has fewer than 10 stars. ⚙️ Run configuration
Warning Billing warning: we have not been able to collect payment for this subscription for more than 72 hours. Please update the payment method or pay any pending invoices in Billing to avoid service interruption. 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 |
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
|
Add Carrot credits or activate Agent usage billing to use Autofix |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 705dcca20a
ℹ️ 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".
…rs; finer sweep (codex) End to end for A and A′ now times the fixpoint without the counts, as B's and C's e2e() do. chain_fan draws extra successors without replacement and the sweep reports the distinct fan-out it built. The sweep adds 192, 230 and 320 nodes. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01G22yT6htkcdyXsihxxXdrg
# Conflicts: # .claude/board/entries/README.md
Two sweep runs with distinct fan-out and like-for-like end-to-end timing. C's end-to-end win over A' holds on unbranched chains from about 192 nodes, not 384 as first stated; branched cases mostly lose. Recommendation unchanged: defer the codebook attestation. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01G22yT6htkcdyXsihxxXdrg
This is a lab probe; nothing in it is ready for production. D-RU-6 stays Queued/Lab, and A′ is a gather path, like A. The operator set the order of steps on EXO-50:
What this adds
This PR adds
crates/crepe-plan-probe/examples/walk_dirty.rsas a fourth arm. It compiles C, which compiles B and A, so all four arms run on the same graphs and are checked against the same oracles. Arm A itself is unchanged;walk_mask.rs,walk_tile.rsandwalk_sparse.rsonly gainpub(crate)on items the new arm reuses.A′ is A's loop with two switches, and each can be measured on its own:
skip_clean: each delta plane keeps a bitmap of its non-zero rows. An adjacency bit whose delta row did not change costs nothing.touched_only: only the rows the hop wrote are updated, and only rows that held a delta are cleared. The whole-bufferfill,andnot,anyandorsweeps go away.With both switches off, A′ is A. A test checks this: the tuples are equal, and so is the number of value-addressed row reads.
The example also has a
--sweepmode. It builds a chain oflennodes and gives each nodefan - 1extra edges to a node up to 8 positions ahead.Results
Times are release builds, medians of 5. All checked points match ascent and crepe.
At chain(700), A′ and C perform exactly the same number of row operations: 225,650. A′ still scans 14.6 M adjacency words, because it visits every row
x. That loop order is the gap that remains.Sweep, C vs A′ end to end:
Recommendation: defer the codebook attestation. The only region C still wins is unbranched chains of at least 384 nodes. A pull-form A′, which walks the dirty rows through a reverse adjacency, would test whether loop order alone explains that last gap. It is listed as open, not built.
The full tables are in
.claude/board/entries/2026-10-21-d-ru-6-dirty-frontier.md: all four switch settings, work counts, memory and the sweep.Tests and disable runs
The new arm adds 8 tests, for 46 in the example including A, B and C's 38. Among them:
Each disable run below was committed first and then reverted.
The row-clear disable stayed green on the first try. A stale bit cannot change the answer, because it is already in
walkandnew &= !walkremoves it. A test-only check thatnewis clear at the start of each iteration now catches it.CI gains
cargo test --example walk_dirty. The benchmark and the sweep are not run in CI.There is no merge on green alone. Coordination happens on EXO-50.
Generated by Claude Code