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
4 changes: 4 additions & 0 deletions .claude/board/INTEGRATION_PLANS.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
## 2026-10-28 — D-SAG-6-1 reference ledger and stale-status corrections → `.claude/plans/d-sag-6-1-audit-reference-ledger-v1.md`

**Status:** PROPOSED, docs only; prerequisite reading for D-SAG-6-1 (#1760), not the audit. **Board:** [entry](entries/2026-10-28-d-sag-6-1-audit-reference-ledger.md). Lists the references #1760 §7 lacks (ruff `ruff_spo_triplet` files and plans, `ogar-from-ruff`, CFA #1813/#1814/#1818, #1792, #1799, contract files, D-DTM-1, ndarray primitives, crai-rs CR-H0/H1) and corrects stale status (crai-rs lists #1813–#1830 as open; ruff has no Rust frontend; `ProposedMethod` is not defined in code).
**Confidence:** reference ledger only; D-SAG-6-1 unstarted.
## 2026-10-28 — D-DT64-6: DR64 routing, DT64 bind store, per-cell WHEN×ON×DO behaviour, OGIT reference predicates → `.claude/plans/d-dt64-6-routing-bindstore-behavior-v1.md`

**Status:** PROPOSED, docs only; nothing authorized. **Board:** [entry](entries/2026-10-28-d-dt64-6-routing-bindstore-behavior.md), [STATUS_BOARD](STATUS_BOARD.md) D-DT64-6. Records eight user decisions (three DT64 levels; primary DR#3 Identity × Properties; WHEN×ON×DO per DR#3 cell; DR64 = direct routing, DT64 = DTO bind store; immutable classid → behaviour via hotplug; global needs no classid; OGIT read unpinned; DR64 references existing identity and the global→local prefetch holds a frame-keyed register copy) and stages D-DT64-6-0..5 with 6-1a (classify the verb files both readers miss: lance-graph accepts 12, OGAR 511, of 523), OGIT reader reconciliation, one `(src, verb, dst)` table from the entity `ogit:allowed` blocks with no second parser, DT64 predicate registration, consumer HotPlug access. Requests an amendment to D-DT64-Q0's "One-sentence contract" (persistent binding store); not applied.
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# D-SAG-6-1: reference ledger and stale-status corrections for the D-SAG-6 audit

**Status:** PROPOSED / DOCS ONLY. Plan: [d-sag-6-1-audit-reference-ledger-v1.md](../../plans/d-sag-6-1-audit-reference-ledger-v1.md). Parent: D-SAG-6 (#1760). No code, test or authorization; the D-SAG-6-1 audit itself is still unstarted.

## What this records

- References the D-SAG-6-1 audit needs that #1760 §7 does not list: ruff `ruff_spo_triplet` (`ir.rs`, `expand.rs`, `reassemble.rs`, `role.rs`), ruff's behavioural-ore and R2IL oracle plans, OGAR `ogar-from-ruff`, the merged CFA docs (#1813, #1814, #1818), #1792, #1799, `spog_tenants.rs`, `epistemic_state5.rs`, `lance-graph-cypher-quack`, D-DTM-1, the `mcp.exo.red` workbench entry, the ndarray mask/popcount primitives for the first fixture, and crai-rs CR-H0/CR-H1 (private).
- MEASURED: ruff `f2cb523` has SPO frontends for C++, C#, Python, Ruby, MeTTa and SQLAlchemy, none for Rust; `ProposedMethod` has zero hits under lance-graph `crates/`.
- Stale status corrected: crai-rs CR-H0 lists #1813–#1830 as open (all merged); #1831 calls crai-rs the successor to #1760 (crai-rs is a sidecar that waits on D-SAG-6-1).

## Open

Whether D-SAG-6-1 proposes a Rust frontend for ruff; where `ProposedMethod` is defined before D-SAG-6-2 needs it.
3 changes: 2 additions & 1 deletion .claude/board/entries/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,10 +25,11 @@ index row, (3) no duplicate entry id. Checks 1 and 2 are deliberately
opposite directions; the stranding this convention prevents shows up in
exactly one of them, never both.

489 entries, 2026-08-06 .. 2026-10-28.
490 entries, 2026-08-06 .. 2026-10-28.

| date | entry id | finding | file |
|---|---|---|---|
| 2026-10-28 | `D-SAG-6-1` | | [2026-10-28-d-sag-6-1-audit-reference-ledger.md](2026-10-28-d-sag-6-1-audit-reference-ledger.md) |
| 2026-10-28 | `D-DT64-6` | | [2026-10-28-d-dt64-6-routing-bindstore-behavior.md](2026-10-28-d-dt64-6-routing-bindstore-behavior.md) |
| 2026-10-27 | `harvest-integration-composite-key-and-simd-scope` | | [2026-10-27-harvest-integration-composite-key-and-simd-scope.md](2026-10-27-harvest-integration-composite-key-and-simd-scope.md) |
| 2026-10-26 | `D-ONNX-INTAKE-0` | | [2026-10-26-onnx-frontend-intake-bakeoff.md](2026-10-26-onnx-frontend-intake-bakeoff.md) |
Expand Down
51 changes: 51 additions & 0 deletions .claude/plans/d-sag-6-1-audit-reference-ledger-v1.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
# D-SAG-6-1: reference ledger and stale-status corrections for the D-SAG-6 follow-up audit

**Date:** 2026-10-28. **Status:** PROPOSED / DOCS ONLY. **Parent:** [D-SAG-6](d-sag-6-rust-codegraph-math-logic-tracert-v1.md) (#1760), stage D-SAG-6-1 (the read-only capability audit). **Not:** the audit itself, and no code, test, ABI or implementation authorization.

D-SAG-6 S0 (#1760, merged 2026-10-24) lists its entry points in §7. Since then, #1813–#1831 and the private crai-rs CR-H0/CR-H1 docs have added material the D-SAG-6-1 audit must read, and some of it now carries stale status. This plan records both, so the audit does not start from #1760's ledger alone. It adds nothing to D-SAG-6's design.

Read on 2026-10-28 at lance-graph `main` `eeaaafb`, ruff `main` `f2cb523`, OGAR `main` `6b43a48`, ndarray `master` `38dd52e`, crai-rs `main` `378a24a`. Evidence states: VERIFIED-IN-CODE (read here), CURRENT-CONTRACT (merged doc), MEASURED (command given), OPEN.

## 1. References D-SAG-6-1 needs that #1760 §7 does not list

| Reference | Why the audit needs it | State |
|---|---|---|
| ruff `crates/ruff_spo_triplet/src/ir.rs` (`ModelGraph`) | the structural model Ruff hands over; data, not execution semantics | VERIFIED-IN-CODE (exists) |
| ruff `crates/ruff_spo_triplet/src/expand.rs` | sorted, deduplicated SPO triples: event order and multiplicity are lost, so this view alone cannot separate two programs that differ only in effect order (D-SAG-6 F05) | VERIFIED-IN-CODE (exists); behaviour as documented in ruff and crai-rs CR-H0 |
| ruff `crates/ruff_spo_triplet/src/reassemble.rs` | inverse projection for C++ only, not a general reverse oracle | VERIFIED-IN-CODE (exists) |
| ruff `crates/ruff_spo_triplet/src/role.rs` (`PredicateRole`) | the 13 role bits (DESCRIBES … OPAQUE) that #1814 quotes as READS, DERIVES, EFFECTS, REQUIRES, AUTHORIZES, TRIGGERS | VERIFIED-IN-CODE |
| ruff `.claude/plans/behavioral-ore-v1.md` | the separate ordered event stream (`events.tsv`, never deduplicated); a C++ research leg, not a Rust oracle | CURRENT-CONTRACT (ruff plan) |
| ruff `.claude/plans/r2il-roundtrip-oracle-spec-v1.md` | states that SPO is not the behavioural parity oracle | CURRENT-CONTRACT (ruff plan) |
| ruff `docs/OGAR-POLYGLOT-AST-INTEGRATION.md` | "structure transpiles; behavior does not": an RFC, not a finished round trip | CURRENT-CONTRACT (ruff doc) |
| ruff has no Rust SPO frontend | frontends exist for C++, C#, Python, Ruby, MeTTa and SQLAlchemy (`crates/ruff_{cpp,csharp,python,ruby,metta,sqlalchemy}_spo`), none for Rust. D-SAG-6's "Ruff structural crosswalk" therefore has no Ruff input for Rust source today; the audit must record this as MISSING, not as a coverage gap of an existing arm | MEASURED: `ls crates \| grep spo` on ruff `f2cb523` |
| OGAR `crates/ogar-from-ruff` (`lift_model_graph`, `lift_actions`) | the existing Ruff → OGAR bridge; the audit's "smallest already-owned location for a read-only projection adapter" must be compared against it | VERIFIED-IN-CODE (crate exists; functions named in its own docs) |
| `docs/research/counterfactual-behavior/cfa-1-typed-incidence.md` (#1814) | ON×WHEN×DO over Ruff/OGAR/rust-analyzer records; "Ruff is structural crosswalk, not a Rust MIR oracle"; WHEN is a K3 guard | CURRENT-CONTRACT (merged research doc) |
| `docs/research/counterfactual-behavior/cfa-5-compiler-analysis.md` (#1818) | asks where a behavioural projection binds `ProposedMethod` without a duplicate type; cites #1760, #1747, #1792 | CURRENT-CONTRACT |
| `docs/research/counterfactual-behavior/README.md` and `thought-dependency-scratchpad.md` (#1813) | name D-SAG-6 as the source-harvesting and fixed-point owner | CURRENT-CONTRACT |
| [#1792](https://github.com/AdaWorldAPI/lance-graph/pull/1792) | escaped-`Keep` refusal: a mask may not be reused outside its borrowed scope (D-SAG-6 F07) | CURRENT-CONTRACT |
| [#1799](https://github.com/AdaWorldAPI/lance-graph/pull/1799) and the DT64 plans | DT64 versioned bindings, which crai-rs places between Ruff and the D-SAG-6 projection | CURRENT-CONTRACT |
| `crates/lance-graph-contract/src/spog_tenants.rs` | the graph of an address comes from its classid, not a stored fourth column | VERIFIED-IN-CODE (exists) |
| `crates/lance-graph-contract/src/epistemic_state5.rs` | CausalEdge64 readings need declared meaning and evidence; a syntax edge named `calls` is not causal evidence | VERIFIED-IN-CODE (exists) |
| `crates/lance-graph-cypher-quack/src/lib.rs` | experimental Cypher → Quack with a few supported shapes; other patterns are typed refusals | VERIFIED-IN-CODE (exists) |
| `.claude/plans/d-dtm-1-distributed-thought-delta-reasoning-interchange-v1.md` | "D-SAG-6 owns codegraph"; lists D-SAG-6 as the source-code reasoning Tracert owner | CURRENT-CONTRACT |
| `.claude/board/entries/2026-10-27-harvest-integration-composite-key-and-simd-scope.md` | records the read-only workbench at `mcp.exo.red` as building on D-SAG-6 | CURRENT-CONTRACT (board entry) |
| ndarray `src/simd.rs` re-exports: `*_to_mask` predicates, `popcount_raw`, `mask_ternlog_popcount`, `masked_group_count_u32*` | the concrete primitives for D-SAG-6 §4's first fixture, `count(filter(P, X))` versus `popcount(mask(P, X))` | VERIFIED-IN-CODE (re-exported names) |
| crai-rs `docs/CR-H0-*.md`, `docs/CR-H1-*.md` (private) | negative-mold falsifiers NEG-01..10, CR-F01..18 and X-01..15; several restate F01, F04, F06, F07, F11 and must be reconciled, not duplicated | CURRENT-CONTRACT (other repo, read in full) |

## 2. Corrections to stale or overstated status

| Where | What it says | What is true on 2026-10-28 |
|---|---|---|
| crai-rs `CR-H0-CHASSIS-RETROFIT-MAP.md` §2, `CR-H0-SOURCE-LEDGER.md` | #1813–#1830 are "currently open docs proposals" | all eighteen are merged into lance-graph `main` as docs; still not implementations |
| #1831 plan §2 and board entry | crai-rs CR-H0/CR-H1 is "the successor to #1760" | crai-rs keeps D-SAG-6 as the motor and forbids a new Codegraph owner in crai-rs (CR-H0 §7); its CR-H2 waits on the D-SAG-6-1 audit. crai-rs is a sidecar that consumes D-SAG-6, and D-SAG-6-1 remains unstarted in lance-graph |
| #1760 §0 and §3 | Ruff "may independently corroborate supported source structure" | true for the six languages above; for Rust there is no Ruff frontend, so there is nothing for Ruff to corroborate yet |
| #1760 §0, prompt "do not … invent new … ProposedMethod" | implies a `ProposedMethod` type exists to reuse | `ProposedMethod` appears in plans (SAG capstone, cfa-5) but has no definition in `crates/` (MEASURED: zero hits under `crates/`); the audit must treat it as a planned shape, not an existing type |

## 3. What the audit does with this

The D-SAG-6-1 deliverable stays as #1760 §6 defines it: a SHIPPED / LAB / PROPOSED / MISSING capability map and the smallest read-only adapter recommendation. This ledger adds two required rows to that map, "Ruff Rust frontend: MISSING" and "`ProposedMethod` type: PROPOSED only", and one required comparison, against `ogar-from-ruff`. The audit must also reconcile crai-rs's falsifier sets with F01–F15 rather than adopt a second numbering.

## 4. Open

1. Whether the audit should propose a `ruff_rust_spo` frontend or treat rust-analyzer / rustc MIR as the only Rust source of structure (#1760 already names them as the semantic sources).
2. Where `ProposedMethod` will be defined, and by which owner, before D-SAG-6-2 needs it.
Loading