Skip to content

lance-graph-xlog: XLOG's admitted chain over Quack → mask-risc (D-XLOG-NATIVE-4) - #1907

Merged
AdaWorldAPI merged 10 commits into
mainfrom
ccr-85acaff0-oszq40-xlogcrate
Nov 1, 2026
Merged

AdaWorldAPI merged 10 commits into
mainfrom
ccr-85acaff0-oszq40-xlogcrate

Conversation

@AdaWorldAPI

Copy link
Copy Markdown
Owner

Stacked on #1906 (D-DYNBAG-0), which is stacked on #1905 (MapTable). Merge them in that order. Until they land, this diff includes their commits. This PR's own commits are the last two.

What

A new workspace crate, crates/lance-graph-xlog, holds the computation that D-DYNBAG-0 moved onto Quack → mask-risc. The probe's version of that code is moved out of the probe:

  • Moved from the probe: Intake, support, bag_count, bag_count_admitted, Word, Support, NativeRefusal, BoundRefusal, ids, nonzero.
  • Bounds are plain Bounds { left, right }, so no XLOG type crosses into the crate.
  • Dependencies: lance-graph-quack, lance-graph-mask-risc, lance-graph-dt64, lance-graph-contract, plus ndarray for two calls only: the elementwise alias and and the TRACKED checked_binary_i64 (MISSING-3). No xlog-* crate and no arrow.
  • xlog-relcomp-probe keeps admission and delegates. It retains admit, admit_count and ChainQuery::bounds(), and still runs both oracles (scalar enumeration and XLOG's RIR walk) plus the DR64 register differential.
  • Plan: d-xlog-native-v1.md Amendment D records the crate as created. Amendment C had already replaced §4's "ndarray only" shape.

Gates (plan §6)

  • N1 / N5: lance_graph_xlog::and is ndarray::simd::mask_and and lance_graph_onnx::and, checked with fn_addr_eq.
  • N2: in-crate scalar enumeration under four bound combinations, on a fixture with a repeated tuple. The probe's two oracles also stay green.
  • N3: typed refusals: NativeRefusal, and BoundRefusal (stale frame, word with no reading, not a bag method).
  • N4: cargo tree -p lance-graph-xlog -e normal (19 lines) contains no xlog-* and no arrow.

Validation

  • cargo test -p lance-graph-xlog: 4 passed.
  • cargo clippy -p lance-graph-xlog --all-targets -- -D warnings: clean.
  • Probe: cargo test --release passes every suite (1 test was #[ignore]d before this PR); clippy -D warnings is clean.
  • Disable run: ignoring the bound in the crate turns 2 tests red.

Still open:

  • p(X, Z) and chains of more than two atoms are NATIVE and refused at admission.
  • MISSING-1/2/3/4 belong to their owner crates.
  • The D-DYNBAG-0 cost columns.

Generated by Claude Code

claude added 10 commits November 1, 2026 01:51
A LocalMap is now read only under the frame it was sealed under; the
coordinates revision is derived from the held maps (tile id + map digest),
not passed in. Stored selections (D7') wait on O4. Design: plan §1e.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01XAqKMNZqKXSaeb9g2ypywF
…YNBAG-0, step 1)

support = ScatterOrU32 per side + mask_and; bag count = GroupReduce Count per
side + checked_binary_i64 (TRACKED, MISSING-3). No ndarray fold word left in
native.rs. Public API unchanged; gate_b / litho stay the oracles.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01XAqKMNZqKXSaeb9g2ypywF
…-0, step 2)

bag_count_admitted runs only from an admitted Bag method whose words the
caller reads (MISSING-1, probe-local) and from DR's Y map read under the
caller's MapTable frame; a stale frame, an unread word, a Distinct method, or
a retracted route (no binding) leaves nothing to run.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01XAqKMNZqKXSaeb9g2ypywF
…-0 gate 3)

Queries read the intake's lanes and re-check its frame; no lookup after
intake (MISSING-5 test). bag_count_admitted now runs over an Intake.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01XAqKMNZqKXSaeb9g2ypywF
…OG-NATIVE-4)

The computation moves from the probe into a workspace crate: Intake, support,
bag_count, bag_count_admitted, Word, refusals, over plain Bounds. No xlog-* or
arrow dependency (N4); `and` is ndarray::simd::mask_and, the same symbol as
lance-graph-onnx::and (N1, N5); tests against scalar enumeration under four
bound combinations. The probe keeps admission and delegates.

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

coderabbitai Bot commented Nov 1, 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: bcb1a6b0-b8bf-4972-b240-8f4874ad2739
  • 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

@AdaWorldAPI
AdaWorldAPI marked this pull request as ready for review November 1, 2026 02:15
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Nov 1, 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-01T02:16:38.144545Z 1087758 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.

@AdaWorldAPI
AdaWorldAPI merged commit 39511c9 into main Nov 1, 2026
12 checks passed
AdaWorldAPI added a commit that referenced this pull request Nov 1, 2026
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