Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 12 additions & 0 deletions .claude/board/LATEST_STATE.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,15 @@
## 2026-09-16 — PR #1241 merged (`d5d3f7ab`): the facet's per-axis LCP is one masked register readout — NO contract inventory delta

`FacetCascade::hi_distance` / `lo_distance` now read `tz((a ^ b) & AXIS_BYTES)
/ 16` off the `u128` instead of gathering a six-byte chain and walking it:
Comment on lines +3 to +4

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Subtract the classid bits from the prefix formula

When a state consumer implements the formula recorded here, a difference in tier 0 has 32 trailing zero bits, so the documented division returns 2 rather than a shared-axis prefix of 0. The merged implementation correctly uses (trailing_zeros() - 32) / 16; record that subtraction (or an equivalent right shift past the classid) so this mandatory state summary does not prescribe the wrong distance calculation.

Useful? React with 👍 / 👎.

Copy link
Copy Markdown
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Correct — the summary dropped the − 32 that the merged shared_axis has ((x.trailing_zeros() - 32) / 16); as written it would prescribe prefix 2 for a tier-0 divergence. Fixed in the follow-up hygiene PR: LATEST_STATE now records (tz((a ^ b) & AXIS_BYTES) − 32) / 16 and says why the offset is load-bearing.


Generated by Claude Code

12.5 → 5.8 ns for both axes, bit-identical over 64K pairs, disable-verified.
No public type added or removed; two private consts + one private `const fn`.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Include both newly added private const functions

The merged facet.rs adds two private const fns, tier_byte_mask and shared_axis, not one; the arc entry later in this same change even refers to the doc-coverage warning on both helpers. Correct this inventory so readers relying on LATEST_STATE.md receive an accurate summary of the implementation delta.

Useful? React with 👍 / 👎.

Copy link
Copy Markdown
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Correct — two private const fns (tier_byte_mask, shared_axis), not one. LATEST_STATE fixed in the follow-up hygiene PR.


Generated by Claude Code

Arc entry in `PR_ARC_INVENTORY.md`; the fold-once epiphany
(`E-FORMAT-SLOT-FOLD-IS-THE-SAME-OP-AS-THE-VL-DESCENT-1`) landed with the PR.
Sibling measurements the same day: ndarray #311 (ternlogq tail descent 5–8×;
64×2 re-apply on a full-width mask NO; GEMM block-stop tail inert) and
lance-graph-java #79 (cached hop tile breaks even at hop two).

## 2026-09-15 (10) — D-HXP-8 arm 1 RAN: tic-tac-toe is F0-degenerate (rails reach the whole board → the stack is a census), not a KILL; the early-exit meter presumes non-negative stacking

- **State consumers should know:** the Raumgewinn falsifier's first arm is
Expand Down
29 changes: 29 additions & 0 deletions .claude/board/PR_ARC_INVENTORY.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,32 @@
## 2026-09-16 — lance-graph PR #1241 (merged `d5d3f7ab`, branch `claude/c64-6502-falsifier-shztkk`) — the facet's per-axis LCP reads the single register; the `"{0}{1}" -f` fold is done ONCE at mint

- **Added:** `FacetCascade::{HI_BYTES, LO_BYTES}` (const byte masks over the
tier bytes of the LE `u128`, computed by a `const fn`, never typed) and
`shared_axis(xor, mask)`; `hi_distance` / `lo_distance` now route through it.
`shared6` (the six-byte loop over a gathered chain) is gone. One falsifier
(`folded_axis_prefix_matches_the_loop_at_every_position`) compares against
the loop it replaced at every divergence tier on both axes plus the
identical case. Board: `E-FORMAT-SLOT-FOLD-IS-THE-SAME-OP-AS-THE-VL-DESCENT-1`.
2 files, 3 commits (the first cut re-folded the gathered chain into a

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Record all four commits merged by PR #1241

The local first-parent range d5d3f7ab^1..d5d3f7ab^2 contains four PR commits (95e2863, ce6664e, 76bb237, and 45c5199), so this permanent per-PR history undercounts the merged commits as three. Update the count to four so the arc inventory agrees with the repository history it documents.

Useful? React with 👍 / 👎.

Copy link
Copy Markdown
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Correct — git log d5d3f7ab^1..d5d3f7ab^2 is four commits (95e2863, ce6664e, 76bb237, 45c5199). The arc inventory is append-only, so the entry gets a dated correction line naming all four rather than an in-place rewrite; follow-up hygiene PR.


Generated by Claude Code

`u64` — 1.5×; the operator's *"fold the PowerShell logic once"* replaced it).
- **Locked:** *the register is already the formatted form; never un-format it
to compute on it.* An axis prefix is `tz((a ^ b) & AXIS_BYTES) / 16` past
the classid — the same op as the whole-facet `prefix_distance`.
- **Measured (64K random facet pairs, release, best of 7):** byte loop
12.5–14.0 ns → gathered-chain fold 8.3–9.3 → masked readout **5.8 ns for
both axes** (2.9 each; whole-facet `prefix_distance` 2.6–3.1). 0 mismatches
at every step. Disable-run (swap `HI_BYTES`/`LO_BYTES`) fails at tier 0.
- **Deferred / named:** the same fold across a COLUMN of facets — a
`u128`-lane / `u16`-tile compare family in `ndarray::simd`
(`lcp_u128_to_mask`, `eq_u16_to_mask`) so HHTL `heel_search`, the CAM-PQ
6×256 path distance and the rail compare stop gathering; the truth
`(f:c)` tile as the same `u8:u8` unit. Not built.
- **Review:** CodeRabbit (no actionable comments, minimal risk); Codex
reacted without findings. Docstring-coverage warning (77.8 %) on the two
private `const fn`s — not addressed, private helpers.
- **Confidence:** HIGH on the numbers (two scratch-bench runs, identical
ordering); the "column of facets" door is the operator's framing, unmeasured.

## 2026-09-15 (3) — lance-graph PR #1235 (merged `e8d3c19`, branch `claude/clone-repositories-71a5sw`) — `lance-graph-quack`: the DuckDB-shaped surface whose operators ARE masking ops, and A1's falsifier run

- **Added:** the workspace member `crates/lance-graph-quack` (builds mask-risc
Expand Down
Loading