Skip to content

Commit 718a142

Browse files
committed
docs(arm-discovery): integration plan + handover for streaming ARM → NARS → SpoStore proposer leg
Plan: `.claude/plans/streaming-arm-nars-discovery-v1.md` (+766 LOC, 18 §, 12 D-ARM-* deliverables, 10 OQs, 5 risks). Authors the missing UPSTREAM proposer leg into the SPO substrate — runtime tabular data (20K-200K rows/window) → pair-stats (deterministic trunk) + optional Aerial+ neural fan-in → NARS-truth translator → SpoStore round-trip hypothesis test (revise / commit contradiction per The Click) → epiphany-brainstorm-council ratification gate (the firewall) → op_emitter codegen. Two corrections proposed to PR #434's unified-SoA plan (§7): separate `discovery_arc: [u32; D]` SoA column for in-flight candidate evidence (distinct from witness-arc for committed revisions) + `discovery_origin: u8` per-row provenance byte. Handover: `.claude/handovers/2026-05-29-2030-arm-discovery-author-to-impl.md` — next-session entry sequence, council ratification ask for `E-DISCOVERY-CODEGEN-BRACKET-1` candidate epiphany + the §7 corrections, blockers (PR #434 D-MBX-A3 landing, `spo::truth::Contradiction` primitive verification), Wave 1-8 execution order. Anchor papers: Karabulut, Groth, Degeler — Neurosymbolic Association Rule Mining (arxiv 2504.19354v1, Apr 2025; ARM `(support, confidence)` maps verbatim to NARS `(c, f)`); Abreu, Cruz, Guerreiro — Ontology-Driven M2M Transformation (arxiv 2511.13661v1, Nov 2025; §4 "from code-centric to ontology-driven" ratifies the externalize-interpretation doctrine). The two papers BRACKET the architecture: discovery upstream, codegen downstream, SPO+NARS middle. Iron rules: I-NOISE-FLOOR-JIRAK (mandatory Stage A threshold), I-SUBSTRATE-MARKOV (NARS revision IS the Markov trajectory), I-VSA-IDENTITIES (typed triples never content). Epiphany anchors: E-SOA-IS-THE-ONLY, E-BATON-1, E-INTERPRET-NOT-STORE-1. Board hygiene: INTEGRATION_PLANS.md prepend, STATUS_BOARD.md new D-ARM-1..D-ARM-12 section, AGENT_LOG.md prepend. Spec only. No code. No cargo invoked. https://claude.ai/code/session_017gZ6sPRXYPj5n7uJ7NBtRv
1 parent fece37d commit 718a142

5 files changed

Lines changed: 970 additions & 0 deletions

File tree

.claude/board/AGENT_LOG.md

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,27 @@
1+
## [Main thread / Opus 4.7] streaming-arm-nars-discovery-v1 — integration plan + handover + #434 corrections (the upstream proposer leg)
2+
3+
**Branch:** claude/activate-lance-graph-att-k2pHI (rebased onto origin/main post PR #434 merge) | **Files:**
4+
- `.claude/plans/streaming-arm-nars-discovery-v1.md` (+766 LOC new) — 18 sections, 12 deliverables, 10 OQs, 5 risks
5+
- `.claude/handovers/2026-05-29-2030-arm-discovery-author-to-impl.md` (+225 LOC new)
6+
- `.claude/board/INTEGRATION_PLANS.md` (prepend new section header)
7+
- `.claude/board/STATUS_BOARD.md` (new D-ARM-1..D-ARM-12 row section)
8+
9+
**Cargo:** not invoked (per session-stability rule + this is a SPEC PR with no code changes).
10+
11+
**D-ids:** D-ARM-1 through D-ARM-12 (**Queued**)
12+
13+
**Outcome:** DONE. Authored the integration plan for the missing **upstream proposer leg** — ARM rule discovery over streaming runtime tabular data (20K-200K rows/window) → translator to NARS-compatible `TruthValue(f,c)` → SpoStore round-trip hypothesis test (revise / commit contradiction per The Click) → council ratification gate (Stage D = the determinism firewall) → `op_emitter` codegen consumes only ratified candidates. Two corrections proposed to PR #434's unified-SoA plan: separate `discovery_arc: [u32; D]` SoA column (D=8 default; for tracking in-flight candidate rules per row, distinct from the witness-arc that tracks committed revisions) + `discovery_origin: u8` per-row provenance byte (2 bits ProvenanceTier + 2 bits proposer-id + 4 reserved; lets council's prior-art-savant tell ArmDiscovered from Curated/Extracted at lookup time).
14+
15+
**Paper anchors:** Karabulut, Groth, Degeler — *Neurosymbolic Association Rule Mining from Tabular Data* (arxiv 2504.19354v1, Apr 2025; ARM truth definitions in §2 map verbatim to NARS `(f,c)`; Algorithm 1 in §3.3 is the Aerial+ rule extraction the optional `arm-aerial` feature wraps via IPC). Abreu, Cruz, Guerreiro — *Ontology-Driven M2M Transformation of Workflow Specifications* (arxiv 2511.13661v1, Nov 2025; §4 "from code-centric to ontology-driven" ratifies the externalize-interpretation-not-code doctrine). The two papers BRACKET the architecture: discovery upstream, codegen downstream, SPO+NARS middle. Candidate epiphany `E-DISCOVERY-CODEGEN-BRACKET-1` (council-pending).
16+
17+
**Iron-rule respect:** I-NOISE-FLOOR-JIRAK (mandatory Stage A threshold via D-ARM-7), I-SUBSTRATE-MARKOV (NARS revision IS the Markov trajectory; bundle math untouched), I-VSA-IDENTITIES (operates on typed `(s,p,o)` triples, never bundles content). E-SOA-IS-THE-ONLY (writes via SpoBuilder only), E-BATON-1 (Stage C emissions are batons riding existing handoff), E-INTERPRET-NOT-STORE-1 (ARM is one interpretation projection of the lossless substrate).
18+
19+
**Plan-writing pattern:** `tee -a` chunked appends (12 chunks) per user instruction — avoids memory pressure for long-form plan writes; each chunk independently verifiable in `wc -l` post-append. Pattern documented in plan §17 decision log.
20+
21+
**Next session entry:** Council ratification of `E-DISCOVERY-CODEGEN-BRACKET-1` + §7 corrections, then Wave 1 (D-ARM-1 + D-ARM-2 contract additions). Full sequencing in handover.
22+
23+
---
24+
125
## [Main thread / Opus 4.8] op_emitter — Phase 2 bucket-dispatch codegen (SoA → Foundry SoC)
226

327
**Branch:** claude/activate-lance-graph-att-k2pHI | **Files:**

.claude/board/INTEGRATION_PLANS.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,12 @@
1+
## 2026-05-29 — streaming-arm-nars-discovery-v1 (upstream proposer leg: 20K-200K rows/window pair-stats + optional Aerial+ neural fan-in → NARS-truth translator → SpoStore hypothesis test → epiphany-council ratification → op_emitter codegen)
2+
3+
**Status:** PROPOSAL / integration plan. Design-spec only, no code. **Plan file:** `.claude/plans/streaming-arm-nars-discovery-v1.md`. **Handover:** `.claude/handovers/2026-05-29-2030-arm-discovery-author-to-impl.md`. **Candidate epiphany:** `E-DISCOVERY-CODEGEN-BRACKET-1` (council-pending).
4+
**Owns:** the missing upstream discovery leg into the SPO substrate. Today's proposers (`D-ODOO-BP-1b` curated, `D-ODOO-EXT-2` AST-extracted) are bounded by literal artifacts; this plan adds runtime-data discovery via streaming pair-stats (deterministic trunk) + optional Aerial+ neural-symbolic fan-in. The two papers (Karabulut 2025 arxiv 2504.19354v1; Abreu 2025 arxiv 2511.13661v1) ratify the architecture: discovery upstream, codegen downstream, SPO+NARS middle. Adds 12 deliverables D-ARM-1…D-ARM-12; one new crate `lance-graph-arm-discovery`; 10 OQs; two corrections proposed to PR #434 (`discovery_arc: [u32; D]` column, `discovery_origin: u8` byte).
5+
**Anchored iron rules:** I-NOISE-FLOOR-JIRAK (mandatory Stage-A threshold), I-SUBSTRATE-MARKOV (NARS revision IS the Markov trajectory), I-VSA-IDENTITIES (operates on typed triples, never content). **Anchored epiphanies:** E-SOA-IS-THE-ONLY (writes via SpoBuilder only), E-BATON-1 (Stage-C emissions are batons), E-INTERPRET-NOT-STORE-1 (ARM is one interpretation projection).
6+
**Predecessors:** PR #433 (style_recipe.rs + epiphany-brainstorm-council + 5 savant cards = the ratification gate), PR #434 (unified-soa-convergence-v1.md = the SoA contract this writes against), op_emitter.rs (this branch = Phase 2 codegen target).
7+
8+
---
9+
110
## 2026-05-29 — unified-soa-convergence-v1 (THE single LE SoA end-to-end across the workspace: 9 half-baked consumers + SoA version gate + Lance 6.0.1/LanceDB 0.29/DataFusion 53 alignment + 4-phase Rubicon kanban + lance-graph-planner DTO overhaul + Libet −550 ms anchor + Staunen×Wisdom plasticity spreader + SPO-W pointer via AriGraph episodic Markov chain)
211

312
**Status:** PROPOSAL / integration plan. Design-spec only, no code. **Plan file:** `.claude/plans/unified-soa-convergence-v1.md`. **Handover:** `.claude/handovers/2026-05-29-1825-soa-convergence-author-to-impl.md`. **Epiphany:** `E-SOA-IS-THE-ONLY` (+ refinements §11.3/4/6 in PR-this-one).

.claude/board/STATUS_BOARD.md

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -615,6 +615,27 @@ PREREQUISITE for `odoo-savant-reasoners-v2` Group F (per `E-SAVANT-COMPOSITION-1
615615

616616
---
617617

618+
## streaming-arm-nars-discovery-v1 — upstream proposer leg into the SPO substrate (20K-200K rows/window pair-stats + optional Aerial+ → NARS-truth → SpoStore hypothesis test → council ratification → op_emitter codegen)
619+
620+
The missing UPSTREAM discovery leg. Today's proposers (curated L-docs + AST-extracted Odoo source) are bounded by the literal artifact; this plan adds runtime-tabular-data ARM discovery, gated through the epiphany-brainstorm-council before reaching the deterministic codegen path. Plan: `.claude/plans/streaming-arm-nars-discovery-v1.md`. Handover: `.claude/handovers/2026-05-29-2030-arm-discovery-author-to-impl.md`.
621+
622+
| D-id | Title | Crate | Lines | Conf | Status | Notes |
623+
|---|---|---|---|---|---|---|
624+
| D-ARM-1 | `ProvenanceTier::{Curated,Extracted,ArmDiscovered,Ratified,Conjecture}` enum + ordering | lance-graph-contract | 50 | HIGH | **Queued** | blocks all other D-ARM-*; additive |
625+
| D-ARM-2 | `Proposer` trait + `CandidateRule` carrier + `WindowMetadata` | lance-graph-contract | 100 | HIGH | **Queued** | blocks D-ARM-3, D-ARM-9 |
626+
| D-ARM-3 | Pair-stats proposer (default trunk, deterministic, k² pair counters per window) | lance-graph-arm-discovery::proposer::pair_stats | 400 | HIGH | **Queued** | depends on D-ARM-1/2/7; blocks D-ARM-12 |
627+
| D-ARM-4 | ARM-truth → NARS-truth translator + Odoo `FeedProjector` impl | lance-graph-arm-discovery::translator | 200 | HIGH | **Queued** | depends on D-ARM-1/2 |
628+
| D-ARM-5 | Hypothesis test: SpoStore round-trip, NARS revision, contradiction commit per The Click | lance-graph-arm-discovery::hypothesis | 350 | MED | **Queued** | depends on D-ARM-4; verifies `spo::truth::Contradiction` primitive exists |
629+
| D-ARM-6 | `RatificationQueue` ring buffer + corrections-to-#434 spec PR (`discovery_arc D=8`, `discovery_origin u8`) | lance-graph-arm-discovery::queue + #434 spec follow-up | 200 + spec | MED | **Queued** | depends on PR #434 D-MBX-A3 landing |
630+
| D-ARM-7 | Jirak-2016 weak-dependence significance thresholds (mandatory Stage A floor) | lance-graph-arm-discovery::jirak | 150 | HIGH | **Queued** | blocks D-ARM-3; cites I-NOISE-FLOOR-JIRAK |
631+
| D-ARM-8 | `Feed` + `FeedProjector` + window-size config + Odoo `account.move` projector example | lance-graph-arm-discovery::feed | 250 | MED | **Queued** | depends on D-ARM-2 |
632+
| D-ARM-9 | Aerial+ IPC client (feature-gated `arm-aerial`, NDJSON over Unix socket) | lance-graph-arm-discovery::proposer::aerial_ipc | 200 | MED | **Queued** | optional; depends on D-ARM-2 |
633+
| D-ARM-10 | `op_emitter::bucket_corpus` ratification filter (`confidence ≥ Ratified`) + 2 tests | lance-graph-ontology::op_emitter | 30 | HIGH | **Queued** | depends on D-ARM-1 |
634+
| D-ARM-11 | `style_recipe.rs` rule 8 — ArmDiscovered backing adds `DAtom::Compute` weight 2 (provisional) | lance-graph-ontology::style_recipe | 80 | MED | **Queued** | depends on D-ARM-1 |
635+
| D-ARM-12 | End-to-end pipeline test + bench (synthetic Odoo feed → all 5 stages → council micro-batch) | lance-graph-arm-discovery::tests + benches | 400 | MED | **Queued** | depends on Waves 1-6; informs OQ-ARM-2 + OQ-ARM-7 |
636+
637+
---
638+
618639
## Update protocol
619640

620641
When a deliverable ships:

0 commit comments

Comments
 (0)