diff --git a/.claude/board/FRUITS.md b/.claude/board/FRUITS.md index 363be4170..0cdbcdd4c 100644 --- a/.claude/board/FRUITS.md +++ b/.claude/board/FRUITS.md @@ -4,7 +4,7 @@ Generated by `.claude/tools/fruits_index.py --write`. Do not hand-edit: add or change a `**Fruit:**` line on the ledger row and regenerate. CI fails when this file is stale. -Open: 21. Closed: 0. +Open: 24. Closed: 0. ## discovery torque @@ -26,6 +26,8 @@ Open: 21. Closed: 0. | tier | row | status | ledger | |---|---|---|---| +| High-signal | TD-NARS-REVISION-UNGUARDED-CAUSAL-EDGE-ISA-1 — `Opcode::Revision` pools a duplicated source; a measured site of TD-NARS-REVISION-UNGUARDED (2026-10-23) | OPEN. **Basis:** VERIFIED-IN-CODE + MEASURED. | `TECH_DEBT.md` | +| Low-hanging | TD-BGZ-TENSOR-INTEGRATION-TESTS-UNGATED-1 (2026-10-23) — OPEN | OPEN | `TECH_DEBT.md` | | Low-hanging | TD-CE64-W-SLOT-DOC-SAYS-NO-ANCHOR — `edge.rs` still documents W = 0 as "no corpus anchor" (2026-10-23) — OPEN | OPEN. **Basis:** VERIFIED-IN-CODE (`edge.rs:944` on main `8f610a85`). | `TECH_DEBT.md` | | Low-hanging | TD-STATUS-BOARD-ROWS-MISSING-FOR-OCT-PLANS-1 (2026-10-23) — OPEN | — | `TECH_DEBT.md` | @@ -40,6 +42,7 @@ Open: 21. Closed: 0. | High-signal | ISS-D-CGW-4-PROMOTION-GATE — the counterfactual verdict is computed but promotes nothing (2026-10-23) | OPEN. **Basis:** VERIFIED-IN-CODE (`crates/lance-graph-planner/src/pearl.rs:259-263` `counterfactual_verdict` calls `Reaction::verdict`; callers found only in `pearl.rs` tests `:747-815`; STATUS_BOARD row D-CGW-4 Queued). | `ISSUES.md` | | High-signal | ISS-DURABLEREF-THOUGHTCOMMITID — the two identity types four plans depend on do not exist (2026-10-20) | OPEN. **Basis:** VERIFIED-IN-CODE (`DurableRef` and `ThoughtCommitId` appear in `crates/` only in doc comments, `mork-pathmap-probe/src/rmap.rs:70` and `:690`). | `ISSUES.md` | | High-signal | ISS-BF16-POLYFILL-PER-ELEMENT-ALLOC — ndarray's BF16 16×16 polyfill allocates per output element (2026-10-20) | OPEN. **Basis:** VERIFIED-IN-CODE (`ndarray/src/simd_ops.rs`, `bf16_tile_gemm_16x16`) and MEASURED (D-RMAP-2 §5a: a 256 × 256 `A·A` takes about 19 ms, about 0.9 GMAC/s, on an AVX-512 host without AMX or `avx512_bf16`). | `ISSUES.md` | +| Low-hanging | ISS-FISHERZ-ENCODE-SATURATES-SILENTLY — out-of-family cosines encode to the edge code with no flag (2026-10-23) | OPEN. **Basis:** VERIFIED-IN-CODE (`crates/bgz-tensor/src/fisher_z.rs:67`, `i8_val.clamp(-128.0, 127.0) as i8`, read at `main` `8f610a85`) + MEASURED. | `ISSUES.md` | | Low-hanging | ISS-CAUSAL-EDGE-CARRIES-SEVEN-PRE-EXISTING-CLIPPY-FINDINGS (2026-08-22) — OPEN | — | `ISSUES.md` | | Heavy | ISS-ORDER-AND-CODEBOOK-WITNESS-HAS-NO-CONTRACT-TYPE — seven open items wait on one witness nobody owns (2026-10-23) — OPEN | OPEN (reframed, see correction). **Basis:** VERIFIED-IN-CODE | `ISSUES.md` | | Heavy | ISS-ADMISSION-B-CALL-SITE-CLASSIFICATION-NOT-STARTED — Semijoin, EqU32Via and Gather are unclassified, and no owner is named (2026-10-23) — OPEN | OPEN (operator decision on ownership). **Basis:** VERIFIED-IN-CODE | `ISSUES.md` | diff --git a/.claude/board/ISSUES.md b/.claude/board/ISSUES.md index 1741d9ac8..adb7db013 100644 --- a/.claude/board/ISSUES.md +++ b/.claude/board/ISSUES.md @@ -1,3 +1,26 @@ +## ISS-FISHERZ-ENCODE-SATURATES-SILENTLY — out-of-family cosines encode to the edge code with no flag (2026-10-23) + +**Status:** OPEN. **Basis:** VERIFIED-IN-CODE (`crates/bgz-tensor/src/fisher_z.rs:67`, `i8_val.clamp(-128.0, 127.0) as i8`, read at `main` `8f610a85`) + MEASURED. +**Fruit:** Low-hanging + +- `FisherZTable::encode` clamps anything beyond the family's + `[z_min, z_max]` onto the edge code, and nothing reports it. An + out-of-family pair therefore reads as maximal in-family similarity. Below + `z_min` the value lands on −128, which `decode` maps one step past `z_min`. +- **Receipt:** P-D3, `crates/bgz-tensor/tests/p_d3_ood_support_probe.rs` + (`entries/2026-10-22-probes-pd4-pe2-pd3.md`). The clamp condition holds on + 0/120 in-range cosines and 403/403 saturating ones, and + `encode(1.0) == encode(0.99995)`. +- This is H5 of the H1–H5 falsifiers (EXO-50, session_01G22yT6 /tanh-01). H5 + was proposed and never added. +- **What closes it:** a checked encode that reports out-of-range values (a + count, or an `Option`) beside the existing one, with no change to the code + points. Add a can-fire test (a value past `z_max` is reported) and a + stay-silent test (in-family values are not). +- Note: until TD-BGZ-TENSOR-INTEGRATION-TESTS-UNGATED-1 is fixed, a test under + `bgz-tensor/tests/` does not run in CI. Put this one in the crate's lib + tests. + ## ISS-ORDER-AND-CODEBOOK-WITNESS-HAS-NO-CONTRACT-TYPE — seven open items wait on one witness nobody owns (2026-10-23) — OPEN ADMISSION B (`entries/2026-10-20-six-decisions.md` §1, ruled in diff --git a/.claude/board/TECH_DEBT.md b/.claude/board/TECH_DEBT.md index 007227d03..303123a97 100644 --- a/.claude/board/TECH_DEBT.md +++ b/.claude/board/TECH_DEBT.md @@ -1,3 +1,47 @@ +## TD-NARS-REVISION-UNGUARDED-CAUSAL-EDGE-ISA-1 — `Opcode::Revision` pools a duplicated source; a measured site of TD-NARS-REVISION-UNGUARDED (2026-10-23) + +**Status:** OPEN. **Basis:** VERIFIED-IN-CODE + MEASURED. +**Fruit:** High-signal + +- `crates/causal-edge/src/isa.rs:209` `truth_code` (and `:197` `truth`) runs + `Opcode::Revision` through `truth::revision` on four scalars. There is no + stamp, so nothing can see that the two operands share evidence. +- **Receipt:** P-E2, `crates/causal-edge/tests/p_e2_stamp_gate_probe.rs` + (`entries/2026-10-22-probes-pd4-pe2-pd3.md`). Revising one source with + itself k times starting from c = 128 gives c = 170 / 204 / 227 at + k = 2 / 4 / 8, with posterior sd ratio 0.837 / 0.658 / 0.491. +- The test-local ONA-shape gate already exists in that file and is + disable-verified. It checks stamp overlap first, and on overlap keeps the + stronger belief. With it, duplicates give Δc = 0 and an sd ratio of 1.000, + while disjoint sources still pool. +- This is the same defect as TD-NARS-REVISION-UNGUARDED (2026-07-23, ndarray + `nars.rs` and planner `nars_engine.rs`). That row does not list this site. +- **Open:** where the stamp lives (G5 in the entry). The guard belongs at the + belief store, not in the pure truth function. +- **What closes it:** pick the stamp's home, then call `Revision` only through + a gate that refuses or chooses on overlap. Move P-E2's three tests onto the + production path; each must go red when its guard is removed. + +## TD-BGZ-TENSOR-INTEGRATION-TESTS-UNGATED-1 (2026-10-23) — OPEN + +CI runs `bgz-tensor` with `--lib` only (`.github/workflows/rust-test.yml:274`), +so nothing under `crates/bgz-tensor/tests/` runs in CI. The crate is +workspace-excluded, so no other step reaches it. + +On main `8f610a85` that directory holds 9 lab probes, 23 tests. Among them are +P-S2 (`p_s2_compose_chain_probe.rs`, #1726), the evidence behind TORQUE row +T-2026-10-23-1, and P-D3. Draft #1731 adds the EXO-129 probe in the same +directory, so its PR checks would pass without running it. + +**Receipt:** `cargo test --manifest-path crates/bgz-tensor/Cargo.toml --tests` +on main `8f610a85` with `CARGO_PROFILE_{DEV,TEST}_DEBUG=0 CARGO_INCREMENTAL=0`: +207 lib tests plus all 9 integration files (3+4+2+3+2+2+2+2+3 = 23 tests), 0 failed. +No test reads a file or an env var, so nothing blocks gating them. +**Fix:** drop `--lib` from that step (or add a second `--tests` step). The +step comment gives no reason for `--lib`. +**Fruit:** Low-hanging +**Status:** OPEN + ## TD-CE64-W-SLOT-DOC-SAYS-NO-ANCHOR — `edge.rs` still documents W = 0 as "no corpus anchor" (2026-10-23) — OPEN `crates/causal-edge/src/edge.rs:944`: "Witness corpus root handle (6-bit,