You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The three P0 wiring gaps that made the system "concrete-operational with formal-operational machinery sitting unused" are now closed in `cognitive-shader-driver/src/driver.rs`. Per CLAUDE.md §The Click, parsing/disambiguation/learning/memory/awareness IS one operation; before this commit, the operation was scaffolded but only partially executed every cycle. After this commit, every dispatch performs the full loop:
**What this means in Piaget's frame.** The system was concrete-operational: it could perform reversible operations (bind/unbind, bundle/cleanup) on concrete objects but did not observe or update its own cognition. Now it does. Every cycle: F is computed from the dispatch's actual likelihood and KL surrogate; Resolution branches into Commit/Epiphany/FailureTicket per the canonical thresholds (HOMEOSTASIS_FLOOR=0.2, FAILURE_CEILING=0.8, EPIPHANY_MARGIN=0.05); the outcome revises per-style `GrammarStyleAwareness`; the next dispatch under that style sees a changed `awareness.divergence_from(prior)` and therefore a changed F. The equilibration loop closes.
86
+
87
+
**What's still surrogate-not-principled.** The KL term currently uses `std_dev` of top-k resonances rather than `awareness.divergence_from(prior)` — to switch we need GrammarStyleConfig priors loaded into ShaderDriver (separate wiring). The Markov braiding is binary-space rotation, not f32 VSA bundle — f32 carrier alongside Binary16K is the next architectural step. The MUL gate veto (DK position, trust texture) is not yet wired. Each is a separate TD-INT entry.
88
+
89
+
**What this is NOT.** Not full AGI. Not formal-operational reasoning yet (no World::fork hypotheticals running per cycle). Not the deep metacognition of MulAssessment computing every dispatch (TD-INT-3 still open). What it IS: the structural loop that makes those next steps additive call sites rather than architectural forks.
90
+
91
+
Cross-ref: 2026-04-24 paradigm-shift gestalt entry (Berge + Piaget + metacognition); 2026-04-24 systemic-wiring-gaps TECH_DEBT log; CLAUDE.md §The Click §Three things that must never be complicated; commits `474d3eb` (TD-INT-1 + LF-1/6/7/8) and `b7787cf` (TD-INT-2 + TD-INT-4) on `claude/teleport-session-setup-wMZfb`.
`LanceMembrane::subscribe()` now returns a `tokio::sync::watch::Receiver<CognitiveEventRow>` under the `[realtime]` feature gate — supabase-shape always-latest semantics. `project()` calls `watcher.bump(row)` after building the scalar row; subscribers observe the latest committed event without polling. `DrainTask` scaffold ships unconditionally (no feature gate) as a `Future` shell for the follow-up `steering_intent` drain loop. Tokio was already an optional dep in `lance-graph-callcenter/Cargo.toml` under `[realtime]` — no new deps required.
@@ -2771,6 +2794,7 @@ single document without retraining? That's the measurement. One
2771
2794
book. One metric. One curve. Rising = AGI. Flat = broken wire.
**Payoff:** Commit `0f9dcbb` on `claude/teleport-session-setup-wMZfb`
357
+
358
+
The three P1 wiring gaps that bring the second metacognitive layer online — meta-uncertainty veto, precomputed NARS truth lookup, and the cold→hot knowledge highway — are now wired.
359
+
360
+
-**TD-INT-3 (MUL gate veto):**`MulAssessment::compute(&SituationInput)` is a carrier method on the contract type (per "object speaks for itself" doctrine). In `driver.rs`, the gate decision builds a SituationInput from current dispatch state (felt_competence ← top_resonance, demonstrated ← `1 - F.total`, skill ← `awareness.recent_success.frequency`, challenge ← std_dev, environment_stability ← `1 - std_dev`), computes MulAssessment, then vetoes homeostatic Flow → Hold whenever MUL flags Mount-Stupid or Overconfident-trust-texture. The system can no longer commit confidently while metacognitively flagging the gap.
361
+
-**TD-INT-10 (NarsTables in cascade):**`causal_edge::tables::NarsTables` is a zero-dep crate `cognitive-shader-driver` already depends on, so no circular dep. ShaderDriver gains `nars_tables: Option<Arc<NarsTables>>` + a `with_nars_tables(Arc)` builder. Per cascade hit, when tables are attached, the system revises `(edge.frequency, edge.confidence)` against `(resonance, half_confidence)` via `tables.revise(...)`. Result currently observed only — tuning into the resonance formula is deferred. Call site established; the wiring debt is paid.
362
+
-**TD-INT-14 (convergence highway):** ShaderDriver.planes moved into `RwLock<Box<[[u64; 64]; 8]>>` so newly-committed AriGraph SPO knowledge can swap into the live cascade without restart. New `update_planes(&self, [[u64; 64]; 8])` takes the write lock and replaces in place. `dispatch()` reads under the read lock and snapshots so concurrent writes can't tear the topology mid-cycle. Planner-side `run_convergence(triplets, apply: impl FnOnce([[u64; 64]; 8]))` packages the conversion + closure handoff so `cognitive-shader-driver` doesn't need to depend on `lance-graph-planner` (would be circular). Call site: `run_convergence(&triplets, |p| driver.update_planes(p))`.
363
+
364
+
The cognitive loop now has every metacognitive layer wired: F drives the gate (TD-INT-1), NARS revises every cycle (TD-INT-2), MUL vetoes overconfidence (TD-INT-3), Markov braiding preserves order (TD-INT-4), NarsTables truth-revises per hit (TD-INT-10), and AriGraph commits flow into the cascade via convergence (TD-INT-14). Six P0/P1 dormant intelligence features paid in two days.
365
+
366
+
Cross-ref: TD-INT-3 / TD-INT-10 / TD-INT-14 original entries in the 2026-04-24 systemic-wiring-gaps log; commit 0f9dcbb.
The three P0 wiring gaps (FreeEnergy compose, NARS revision per cycle, Markov trajectory braiding) are now wired into `cognitive-shader-driver/src/driver.rs`. Every dispatch cycle now executes: encode → Markov braid (positional XOR) → FreeEnergy::compose → Resolution gate → NARS revise → next cycle's F landscape changes accordingly.
373
+
374
+
-**TD-INT-1 (FreeEnergy gate):** Replaced `collapse_gate(std_dev)` heuristic with principled `FreeEnergy::compose(top_resonance, std_dev)`. Homeostatic F → Flow with `MergeMode::Bundle` (Markov-respecting per I-SUBSTRATE-MARKOV); catastrophic F → Block; epiphany (top-2 within EPIPHANY_MARGIN) → Hold; mid-band → Hold. `MetaSummary.meta_confidence = 1 - F.total` (principled) and `should_admit_ignorance = F.is_catastrophic()` replace the `1 - std_dev` and `confidence < 0.2` surrogates.
375
+
-**TD-INT-2 (NARS revision):** Added `awareness: RwLock<Vec<GrammarStyleAwareness>>` to ShaderDriver (12 entries indexed by shader ord). At end of `run()`, `free_energy_to_outcome(F, is_epiphany)` produces a ParseOutcome (LocalSuccess / LocalSuccessConfirmedByLLM / EscalatedButLLMAgreed / LocalFailureLLMSucceeded), which is then folded into `awareness[style_ord]` via `style_aw.revise(ParamKey::NarsPrimary(inference), outcome)`. Hot path stays zero-allocation; lock is brief (write only at end of cycle).
376
+
-**TD-INT-4 (Markov braiding, binary-space first step):** Replaced unordered XOR fold of content rows with positional XOR fold — each row's fingerprint is rotated by `cycle_index % WORDS_PER_FP` before XOR. Two cycles with identical hits in different order now produce different `cycle_fp`. This is the binary-space analogue of `vsa_permute + vsa_bundle`. **Deferred:** full f32 VSA bundle requires a Vsa16kF32 trajectory carrier alongside Binary16K — separate tracked debt.
377
+
378
+
What this means in the larger frame: the system no longer just describes cognition through types; it performs cognition every cycle. The `Think` struct from CLAUDE.md §The Click is now operationally instantiated by `ShaderDriver` — the awareness field is mutated, the F landscape changes, the next dispatch differs from the last. Concrete-operational → formal-operational, in Piaget's terms.
379
+
380
+
Cross-ref: original entries TD-INT-1 / TD-INT-2 / TD-INT-4 in the 2026-04-24 systemic-wiring-gaps log; CLAUDE.md §The Click; I-SUBSTRATE-MARKOV (Bundle merge mode); commits 474d3eb + b7787cf.
381
+
382
+
---
383
+
384
+
(No further debt paid at initial commit. When an Open entry is retired,
0 commit comments