Repository navigation
D-DRISA-1 (lab): a sealed DR frame as a local register file over borrowed SoA - #1955
Conversation
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01XAqKMNZqKXSaeb9g2ypywF
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01XAqKMNZqKXSaeb9g2ypywF
|
Important
This repository does not receive automatic reviews because it has fewer than 10 stars.
|
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. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 2d733eb191
ℹ️ 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".
…mpiled A rebuilt SoA restarted its revision at zero, so a witness taken from the old SoA matched the new one and a stale derived mask answered. The witness is now (incarnation, revision); every build_soa takes a fresh incarnation. A Compiled program carried lane indices but not the schema they were resolved against, so running it on a file with reordered demanded fields predicated on the wrong field. Compiled now records the schema and run refuses a mismatch with Refusal::SchemaMismatch. Two falsifiers with success controls; both Codex findings on #1955. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01XAqKMNZqKXSaeb9g2ypywF
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01XAqKMNZqKXSaeb9g2ypywF
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01XAqKMNZqKXSaeb9g2ypywF
lib.rs: both sides added a line at the top (pub mod alu; the AtomicU64 import from #1955); kept both. Board indexes regenerated. 21/21 tests. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01XAqKMNZqKXSaeb9g2ypywF
D-DRISA-3 (lab): threshold, Kleene and Bag on the shipped carry words (stacked on #1955)
This PR adds a lab crate and board docs. It changes no production code, adds no transport and no public type, and changes nothing in
dt64,mask-riscor the contract. Please don't merge automatically. It is stage 1 of EXO-153. The architecture is #1953 (D-DRISA-0), a plan written by a GPT session and adopted here after review.The question
Can a witnessed DR frame act as a register file? In that model, typed operands name coordinates: frame, tiles, field positions and an identity selection. Only when an instruction executes are they resolved to borrowed slices of the canonical SoA.
What was built
crates/drisa-register-probe/is excluded from the workspace and depends only on dt64, mask-risc and the contract.RegisterFileis a descriptor. It holds:It holds no reference into the SoA and no value. At execution it re-checks every operand, then hands
mask-riscplanes that borrow the SoA's own slices. There is no second ALU.Results
Fixtures are DR64 (1 tile), DR256 (1 tile) and DR256 × 256 tiles (65,536 identities, local order permuted per tile).
All 13 tests pass. Every method equals an independent oracle that reads only global ids and values: COUNT, EXISTS, a value predicate and a masked sum. Measured properties:
mask-risc'sScratchReadBeforeWrite).Cost, three processes:
Findings
MapTable::mapreplays old frames.Decision memos (
.claude/plans/d-drisa-decision-memos-v1.md)Seven owner questions, M1–M7: the layout witness; a global→tile index or co-addressed selections (EXO-46); result-register lifetime; source-location receipt (EXO-46/89/151); DR→Lance authority (D4/S-INGRESS); the carry words as ALU; async loopback. Each states its source, a proposed ruling, a falsifier, and what follows from approval or refusal.
The stage-3 ALU lab is a stacked PR on this branch.
Board: entry
entries/2026-11-04-d-drisa-1-register-proof.md, STATUS_BOARD rows D-DRISA-1-LAB and D-DRISA-M1..M7, INTEGRATION_PLANS, regenerated index.Verify:
cargo test --manifest-path crates/drisa-register-probe/Cargo.toml. Bench:--example drisa_bench --release.Generated by Claude Code