Skip to content

docs(D-DR-FOLD): storage / addressing / algebra map (documentation only) - #1941

Merged
AdaWorldAPI merged 2 commits into
mainfrom
ccr-85acaff0-oszq40
Nov 3, 2026
Merged

AdaWorldAPI merged 2 commits into
mainfrom
ccr-85acaff0-oszq40

Conversation

@AdaWorldAPI

Copy link
Copy Markdown
Owner

Documentation only. No code, no new probe, no production change. mask-risc is unchanged, and EXO-140 and EXO-46 are unchanged. This preserves the D-DR-FOLD architecture map. Its sources are the recorded results it cites; nothing was run for this map.

What it says

It keeps three kinds of indirection apart and gives each finding a source and a class (PRODUCTION, LAB, PROPOSED, BLOCKED, UNCLASSIFIED or NOT VERIFIED).

A. Storage. Nothing in production translates DR addresses into physical locations, and nothing does readahead or overlaps I/O with folding.

  • The chain from address mask to the Lance prefilter exists only in lab probes (H14c-4, H14d).
  • A mask cuts the bytes fetched only when presence is page-local (1 % uniform: 1.00×; 1 % clustered: 0.24×).
  • Every recorded bytes_read was served from the page cache, not read from disk.
  • The physical read-planning contract does not exist. The map lists what it would need, and it has no owner.

B. Addressing. LocalMap, MapTable and FrameStore (in dt64) already are the reusable coordinate mapping, so no second binding store is needed.

  • lance-graph-xlog::Cube already keeps the map's lifetime apart from presence: presence edits go through a DeltaLog under the same frame. Only lab crates call it.
  • Reusing a mapping amortizes its cost. It is not a different hot execution algorithm.

C. Algebra.

  • In the frozen IR, the only operations that read across rows inside a program are Gather and EqU32Via. ScatterOrU32 can only be a terminal.
  • XLOG's scatter-then-AND is LAB / UNCLASSIFIED. Its answer is over Y alone, so the X and Z bindings are not kept.
  • Tile composition is lab code, and it returns C as a transient register.
  • Neither a vector×tile fold nor cross-tile composition exists.

Scope of the claims

  • "Gather is required for the hierarchical case" holds only for the D-BAG-FOLD query shape and the lowerings available today. It is not a general statement.
  • The 83 % Gather-avoidance figure has not been measured.

Source SHAs

  • Tree read: fb5e2d35b10fc4940f5c78285bae246f90c7faad.
  • D-BAG-FOLD v3/v4: d651b70d4a3b2299c21f1d354ac02a3311280441.
  • H14d: 802db7dfea88ecd33790a85d176910b62e2b902b.
  • H14c-4, D-DRMC-5 and D-DYNBAG-1 are cited from their plan and board entries, which name no commit.

Related: #1937, #1938, #1939, #1940.

Files

  • .claude/probes/2026-11-03-d-dr-fold/D-DR-FOLD-MAP.md: the map.
  • .claude/board/entries/2026-11-03-d-dr-fold-map.md: board entry; the index was regenerated with entries_index.py --write.

Open owner decisions

  • D1: whether an in-program operation that expands a mask over ranges is admissible.
  • D2: how scatter-then-AND is classified, and whether outer bindings must be kept.
  • D3: whether a binding may outlive presence changes, and who the single presence writer is.
  • D4: who owns the planning of DR → Lance reads.

The lab A/B/C comparison is separate work and is not in this PR.


Generated by Claude Code

Architecture map of three separate indirections, read against fb5e2d3:
physical DR I/O (absent in production; lab H14c-4 / H14d only, page-cache
bytes, not disk), Global->Local binding (LocalMap / MapTable / FrameStore
are the reusable mapping; Cube keeps presence separate), and resident
algebra (Gather / EqU32Via are the only in-program cross-row reads;
scatter-then-AND is LAB / UNCLASSIFIED). Every finding carries a
classification and its source. Documentation only: no code, no new
probe, no production change, mask-risc unchanged, EXO-140 / EXO-46
unchanged. The 83 % Gather-avoidance figure is recorded as unmeasured.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01XAqKMNZqKXSaeb9g2ypywF
@coderabbitai

coderabbitai Bot commented Nov 3, 2026 •

Copy link
Copy Markdown

Important

  • Trigger review

This repository does not receive automatic reviews because it has fewer than 10 stars.

Run configuration
  • Source mode: Auto
  • Repository: Unavailable
  • Branch: Unavailable
  • File: No configuration file from this repository applied
  • Commit: Unavailable
  • Layers: Organization UI
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: c3e1c802-758a-4eee-a11b-0fd38b41b5bf
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

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.

Share

CodeRabbit Verify

  • Run CodeRabbit Verify to test the changes in this pull request.

@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Nov 3, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-11-03T18:26:23.647454Z 3f1c7db Draft marked ready
ℹ️ 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" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

Conflict was only in the generated .claude/board/entries/README.md; resolved by
regenerating it with entries_index.py --write.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01XAqKMNZqKXSaeb9g2ypywF
@AdaWorldAPI
AdaWorldAPI merged commit 19b16c9 into main Nov 3, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants