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
8 changes: 8 additions & 0 deletions .claude/board/INTEGRATION_PLANS.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,11 @@
## 2026-10-15 — metta-datalog-assimilation-v1 — Hyperon/PeTTa/MeTTa atoms assimilated into a Datalog-AST · NAL · R2IL · ONA-shaped substrate, MeTTa as oracle → `.claude/plans/metta-datalog-assimilation-v1.md`

**Status:** PROPOSAL; D-ASM-0 only (plan + inventory `.claude/research/2026-10-15-nars-metta-ce64-mapping-inventory.md`). Umbrella over D-MTP-2/3/5/6, D-RA-3/4, D-NALP-4/5/7; adds D-ASM-1 binder, -2 join-as-preimage, -3 bag terminal, -4 LanceSpace + three-way harness, -5 ONA-shaped 64×u8 compound-term tenant, -6 rule catalogue as data, -7 mining seam reserved. `/5plus3` before non-probe code.

- One Datalog AST as relalg values, two front ends (Hyperon's own `SExprParser`, `Narsese.rs`); atoms keep their meaning, `Space` is the only seam, execution beyond Datalog stays in Hyperon as the oracle.
- No new byte without an insufficiency proof; multiplicity is a terminal; recursion is d′ outside the engine; argument-order of truth functions is an engine tag (OpenNARS vs ONA/PeTTa differ).
- Kill conditions: dedup instead of bag; a differing answer re-pinned; a ported interpreter; any atom meaning changed.

## 2026-10-14 (2) — metta-polyfill-v1 — Hyperon/MeTTa as a front end over the masking-algebra polyfill → `.claude/plans/metta-polyfill-v1.md`

**Status:** PROPOSAL; D-MTP-0 (map + measurements), D-MTP-1 (join probe, measured), D-MTP-1b (range hop, measured) and D-MTP-6 (datafrog oracle) done; D-MTP-2..5 not authorized.
Expand Down
15 changes: 15 additions & 0 deletions .claude/board/STATUS_BOARD.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,21 @@ Plan: `.claude/plans/wal-shootout-v1.md`. Feeds D-LNC-7; decides nothing.
| **D-WAL-6** | version clock: a point of view as one row range | Done: `contract::temporal_pov::VersionClock`; v4 4.2 ns per `rows_at` vs 127 µs per-row scan at 400k rows | row-version oracle over 200 versions with gaps; disables (gap fill, start offset, base guard) each turn it red. Wired into `LanceCycleWriter` 2026-10-15: seeded at the head on open from the manifest's physical row counts, recorded after every commit; deleted rows keep their positions; four tests against storage, three disables red. Reader wiring open |
| **D-WAL-7** | `temporal.rs` without row copies | Done: `deinterlace_indices`, `local_trajectories_indices`, `local_trajectory_indices_of`; copying forms keep their signatures as wrappers | clone counter at 0 for the index form; removing the sort turns the two ordering tests red |

## D-ASM — MeTTa/PeTTa atoms assimilated into the Datalog-AST · NAL · R2IL · ONA-shaped substrate (2026-10-15)

Plan: `.claude/plans/metta-datalog-assimilation-v1.md`. Umbrella over D-MTP-2/3/5/6, D-RA-3/4, D-NALP-4/5/7 (cited, not copied).

| D-id | scope | status | gate / falsifier |
|---|---|---|---|
| **D-ASM-0** | Plan + inventory (`.claude/research/2026-10-15-nars-metta-ce64-mapping-inventory.md`) | Done 2026-10-15 | — |
| **D-ASM-1** | Binder: `(functor, arity) → ClassView` + label codebook; atoms → addresses once; typed refusal for Grounded/nested/state | Queued (not authorized) | same address twice per fixture atom; refusals named by kind; no string survives bind |
| **D-ASM-2** | Join as D-CMR-5 preimage in relalg (`EqU32Via` / gated `Gather` / range) | Queued (not authorized) | pairs == datafrog as a bag 10²..10⁶; join_10000 answers; `Program` byte-identical across front ends |
| **D-ASM-3** | Bag terminal → `BindingsSet` multiplicity | Queued (not authorized) | `b4_nondeterm` multiset == Hyperon; dedup arm fails; new terminal only with insufficiency proof |
| **D-ASM-4** | `LanceSpace` named space; Hyperon · PeTTa · LanceSpace harness | Queued (not authorized) | golden 32/33 unchanged; every answer == Hyperon multiset or a named refusal |
| **D-ASM-5** | ONA-shaped compound-term tenant (64 × u8 heap), parity vs ONA `Term_*` | Queued (not authorized) | byte-identical hash/extraction; > 64 atoms refused; LAYOUT-CLEAN |
| **D-ASM-6** | Rule catalogue as data (ONA `R1/R2`, OpenNARS tables) with truth label + engine order tag; `Narsese.rs` front end | Queued (not authorized) | each rule re-emits its source line; order tag proven on both engines |
| **D-ASM-7** | Mining seam (`lance-graph-cog` driver tier) — separate plan | Reserved | — |

## D-MTP — Hyperon/MeTTa over the masking-algebra polyfill (2026-10-14)

Plan: `.claude/plans/metta-polyfill-v1.md`. Proposed crate `lance-graph-metta` (not created).
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
# 2026-10-15 — `TrustTexture` is the MUL vocabulary for the topology coordinate, not a second reading

STATUS: fixed | OUTCOME: doc drift corrected in `causal-edge/src/layout.rs`,
`causal-edge/src/lib.rs`, `lance-graph-contract/src/epistemic_state5.rs`,
`lance-graph-contract/src/band_reading.rs`; executable contract unchanged |
OPEN: none.

**What the drift was.** Four sites described bits 59..60 as carrying TWO
readings — an "epistemic-trust texture" (`TrustTexture`: how much to trust the
edge; `0b11 = Contradiction`) and a "factual topology" (`CausalTopology`) —
"correlated in practice but not the same fact", with "historical factual
provenance NOT guaranteed for old rows" and "no mapping into the canonical
state" for the Trust lens. `epistemic_state5.rs` and `band_reading.rs` then
listed `TruthLens::Trust` beside `ReasoningBand` as having written "OTHER
meanings" into the merged field.

**The current contract.** Bits 59..63 are the epistemic ladder
(`EpistemicState5 = Topology2 × Certification3`; README front-page diagram and
`docs/architecture/ce64-semantic-upper-half.md`). Its lower coordinate is the
Faktorortung — Direct / IndirectKnownIntermediates /
IndirectUnknownIntermediates / Unknown — and `TrustTexture`'s Crystalline /
Solid / Fuzzy / Murky are the Meta-Uncertainty-Layer's names for those SAME
four cells (`Murky` = `Unknown`). The mapping is the identity; the Proceed /
Sandbox / Compass column is the MUL's reaction to a cell, not a second
meaning of the bits. A contradiction that needs revision is an **epistemic
pothole** the MUL reacts to, not a cell of the field. Only the historical
`ReasoningBand` on 61..63 wrote other meanings. Historical provenance is the
`EdgeProvenance` gate (were the bits written at all), not a semantic gap.

**Why no code moved.** No class in the tree declares either `TruthLens`
variant (`.band_reading(` has no production caller; `project_band` is reached
only by the obsolete `reasoning_band_probe`), so the over-refusal the old prose
implied for Trust-declared classes was never live. Gates: `causal-edge` and
`lance-graph-contract` tests + clippy `-D warnings` + fmt unchanged-green.

Source of the ruling: this session, reading the README diagram against the
crate prose. Related: `2026-10-07-epi-legacy-deprojection.md` (kept; its
"other meanings" line is regraded by this entry, not edited).
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# 2026-10-15 — metta-datalog-assimilation-v1: the assimilation plan (D-ASM-0)

STATUS: open | OUTCOME: `.claude/plans/metta-datalog-assimilation-v1.md` — umbrella over D-MTP-2/3/5/6, D-RA-3/4 and
D-NALP-4/5/7, adding the binder (D-ASM-1), join-as-preimage (D-ASM-2), bag terminal (D-ASM-3), `LanceSpace` + three-way
harness (D-ASM-4), the ONA-shaped 64 × u8 compound-term tenant that would lift ledger R10 (D-ASM-5), the NAL rule catalogue as
data with engine argument-order tags (D-ASM-6), and a reserved mining seam (D-ASM-7). | OPEN: D-ASM-1..7 unauthorized;
`/5plus3` before non-probe code; HY-Q07/Q08 and the stamp-as-atom shape undecided.

Addendum (same day): §7 validation doctrine — each `lance-graph-*` crate is validated against its ORIGINAL as the oracle first
(OpenNARS/ONA for nal, datafrog for relalg, Hyperon/PeTTa for metta, ONA for ona, hyperon-miner for cog); only then is
CausalEdge64 used to enrich, to validate (zero enrichment must be invisible) and to measure expansion potential as fixtures the
original cannot run. The oracle is never a sibling crate and never CE64.
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# 2026-10-15 — Mapping inventory: Hyperon/MeTTa/PeTTa atoms and three NARS engines against CE64 and the polyfill crates

STATUS: measured | OUTCOME: `.claude/research/2026-10-15-nars-metta-ce64-mapping-inventory.md` — read from source
(hyperon-experimental `3f76dc4`, PeTTa `1d19a1d`, ONA `dc4efd0`, opennars `4d1bdb0`, Narsese.rs `16d4d18`) against
`causal-edge`, `lance-graph-contract`, `planner/nars`, `lance-graph-nal`, `-relalg`, `-metta`, OGAR `ogar-loco`. No meaning
of any atom changed; no byte proposed. | OPEN: relalg join + `μ` (blocks MeTTa conjunction and the NAL syllogism alike);
the per-row truth law (nal-polyfill §4 C) remains the one candidate byte; `lance-graph-ona` and `-cog` do not exist and
the inventory scopes what `-ona` honestly could be (oracle harness, argument-order adapter, lanes not bits).

Findings worth one line each: no foreign system carries a 59..63 or a 40..42 — the ladder and the Pearl mask are ours to
write; lance-graph's abduction/induction argument order matches OpenNARS Java, ONA and PeTTa use the swapped convention
(bind by rule shape, never by function name); ONA's `ATOMS_MAX = 255` fits the u8 S/P/O palette; `Narsese.rs` already
holds the parser `lance-graph-nal` needs.
5 changes: 4 additions & 1 deletion .claude/board/entries/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,12 +25,15 @@ 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.

344 entries, 2026-08-06 .. 2026-10-15.
347 entries, 2026-08-06 .. 2026-10-15.

| date | entry id | finding | file |
|---|---|---|---|
| 2026-10-15 | `nars-metta-ce64-mapping-inventory` | | [2026-10-15-nars-metta-ce64-mapping-inventory.md](2026-10-15-nars-metta-ce64-mapping-inventory.md) |
| 2026-10-15 | `D-ASM-0` | | [2026-10-15-metta-datalog-assimilation-plan.md](2026-10-15-metta-datalog-assimilation-plan.md) |
| 2026-10-15 | `ledger-correction-wire-contract` | | [2026-10-15-ledger-correction-wire-contract.md](2026-10-15-ledger-correction-wire-contract.md) |
| 2026-10-15 | `givens-layer` | | [2026-10-15-givens-layer.md](2026-10-15-givens-layer.md) |
| 2026-10-15 | `epi-trust-is-topology-vocabulary` | | [2026-10-15-epi-trust-is-topology-vocabulary.md](2026-10-15-epi-trust-is-topology-vocabulary.md) |
| 2026-10-15 | `D-WAL` | `LanceCycleWriter` vs the lancedb 0.40 MemWAL write path (measured) | [2026-10-15-d-wal-shootout.md](2026-10-15-d-wal-shootout.md) |
| 2026-10-15 | `D-HOLO-H14b` | | [2026-10-15-d-holo-h14b-lane-mask.md](2026-10-15-d-holo-h14b-lane-mask.md) |
| 2026-10-15 | `D-HOLO-H14` | | [2026-10-15-d-holo-h14-lane-storage.md](2026-10-15-d-holo-h14-lane-storage.md) |
Expand Down
Loading
Loading