Skip to content

feat(contract): D-MBX-A6 Phase 1 — planner⟷ractor⟷surreal meta-DTO (kanban + soa_view + StepDomain::Kanban)#437

Merged
AdaWorldAPI merged 6 commits into
mainfrom
claude/sleepy-cori-aRK2x
May 30, 2026
Merged

feat(contract): D-MBX-A6 Phase 1 — planner⟷ractor⟷surreal meta-DTO (kanban + soa_view + StepDomain::Kanban)#437
AdaWorldAPI merged 6 commits into
mainfrom
claude/sleepy-cori-aRK2x

Conversation

@AdaWorldAPI

@AdaWorldAPI AdaWorldAPI commented May 30, 2026

Copy link
Copy Markdown
Owner

D-MBX-A6 Phase 1 — planner⟷ractor⟷surrealdb, wired through the canonical surface

Wires lance-graph-planner ⟷ ractor (mailbox/supervisor) ⟷ surrealdb (surreal_container's transparent SoA view) so the planner can plan efficiently over the one per-mailbox SoA — realized as an extension of the canonical OrchestrationBridge/UnifiedStep surface, not a parallel DTO family (per lab-vs-canonical-surface.md Decision Procedure + the AGI-as-glove doctrine).

This is Phase 1 (the contract slice) of the already-tracked D-MBX-A6 (unified-soa-convergence-v1.md §5 + §8.4).

Added (all in the zero-dep lance-graph-contract)

  • kanban.rsKanbanColumn (Rubicon phases Planning/CognitiveWork/Evaluation + terminal exits Commit/Plan/Prune) and KanbanMove (Copy, ≤16 B): MailboxId + witness_chain_position (R4 witness-as-pointer) + libet_offset_us (−550 ms Libet anchor, D-MBX-8).
  • soa_view.rsMailboxSoaView: a zero-dep borrow trait returning &[T] column slices — the transparent, zero-copy SoA view honoring R1 "one SoA never transformed." The in-RAM MailboxSoA<N> (ractor-owned), a surreal kv-lance view, and the planner all read the same bytes through one vocabulary (dependency inversion, like PlannerContract). MailboxSoaOwner: MailboxSoaView adds the single mutation (advance_phase); the read/owner split makes "the view is read-only" a structural guarantee.
  • orchestration.rsStepDomain::Kanban variant + "kanban." prefix: the seam where planner emits / ractor owns-drives / surreal projects, all over the existing bridge.

Invariants & doctrine

  • Contract [dependencies] stays empty (zero-dep); consumers implement the traits.
  • No new endpoint / DTO family (lab-vs-canonical). Witness = pointer (R4); SoA never copied (R1).

Verification

  • cargo test -p lance-graph-contract485 lib tests pass (+6 new: 4 kanban, 2 soa_view incl. a zero-copy-borrow test + a fake-impl proving satisfiability); orchestration round-trip extended to cover Kanban.
  • cargo check clean on lance-graph-planner, cognitive-shader-driver, lance-graph-supervisor (default + --features supervisor) — StepDomain::Kanban is additive-safe (every downstream use is != / matches! / from_step_type; no exhaustive match without a wildcard).

Deferred to follow-up slices

  • Planner-emit (D-MBX-A6 Ph 2-3) incl. the { lance-graph-planner | JIT | SurrealQL | elixir } execution-strategy set.
  • impl MailboxSoaView + MailboxSoaOwner for MailboxSoA<N> in cognitive-shader-driver.
  • ractor ConsumerEnvelope::Kanban arm + handler.
  • surreal_container read-view (BLOCKED on OQ-11.6 fork) — lands with zero contract change once unblocked.

Board hygiene (same commit)

LATEST_STATE Contract Inventory · STATUS_BOARD D-MBX-A6-P1 · EPIPHANIES E-SOA-VIEW-IS-A-BORROW · AGENT_LOG run.

https://claude.ai/code/session_01R9AWgFa65uPnLyS2my2d2R


Generated by Claude Code

Summary by CodeRabbit

  • New Features

    • Kanban-based mailbox lifecycle with stable phases and compact move records.
    • Transparent zero-copy read / owner mutation split for mailbox SoA, including safe phase-advance operations.
    • Orchestration updated to recognize and route Kanban-themed steps.
  • Documentation

    • Architecture logs, state inventory, epiphanies, and status board updated to record the contract slice and deliverable.

Review Change Stack

@coderabbitai

coderabbitai Bot commented May 30, 2026

Copy link
Copy Markdown

Note

Reviews paused

It looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the reviews.auto_review.auto_pause_after_reviewed_commits setting.

Use the following commands to manage reviews:

  • @coderabbitai resume to resume automatic reviews.
  • @coderabbitai review to trigger a single review.

Use the checkboxes below for quick actions:

  • ▶️ Resume reviews
  • 🔍 Trigger review
📝 Walkthrough

Walkthrough

Adds a mailbox kanban contract and a zero-copy SoA read/owner trait pair, exposes them from the crate root, wires StepDomain::Kanban into orchestration parsing/profile/Display, and records the work in project board and epiphany docs.

Changes

Kanban and SoA View Contract Slice

Layer / File(s) Summary
Kanban lifecycle contract
crates/lance-graph-contract/src/kanban.rs
KanbanColumn enum with six stable phases and is_terminal(); KanbanMove compact Copy transition record carrying mailbox, from/to, witness_chain_position, and libet_offset_us; compile-time size assertion and unit tests.
SoA View read/owner split
crates/lance-graph-contract/src/soa_view.rs
MailboxSoaView trait exposes mailbox identity, lifecycle metadata, and zero-copy column accessors plus energy_at; MailboxSoaOwner: MailboxSoaView adds advance_phase returning KanbanMove; tests validate borrowing semantics and lifecycle transitions.
Orchestration integration
crates/lance-graph-contract/src/orchestration.rs
StepDomain gains Kanban; from_step_type recognizes "kanban" prefix; profile/default match arm includes Kanban; Display renders "kanban"; tests updated.
Module surface exposure
crates/lance-graph-contract/src/lib.rs
Adds pub mod kanban; and pub mod soa_view; and re-exports KanbanColumn, KanbanMove, MailboxSoaOwner, MailboxSoaView.
Implementation documentation
.claude/board/AGENT_LOG.md, .claude/board/EPIPHANIES.md, .claude/board/LATEST_STATE.md, .claude/board/STATUS_BOARD.md
Adds AGENT_LOG block, several epiphany entries (AriGraph audit, EW64 conjecture, DTO dedup note, SoA view design), updates LATEST_STATE contract inventory with kanban/soa_view types and orchestration wiring, and inserts D-MBX-A6-P1 status row.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Possibly related PRs

  • AdaWorldAPI/lance-graph#427: Introduces MailboxSoA thoughtspace columns and WitnessTable primitives that correspond to the MailboxSoaView/Owner and KanbanMove interfaces added here.

Poem

🐇 I hopped through enums, phases set in row,

Borrowed columns whisper, pointers glow.
A tiny Move, a phase that sings,
Zero‑copy moonlight on subtle things.
Kanban ticks — contracts stitched, let's go!

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title comprehensively captures the main change: introducing kanban, soa_view, and StepDomain::Kanban contract types for the D-MBX-A6 Phase 1 planner-ractor-surreal meta-DTO integration.
Docstring Coverage ✅ Passed Docstring coverage is 100.00% which is sufficient. The required threshold is 80.00%.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch claude/sleepy-cori-aRK2x

Comment @coderabbitai help to get the list of available commands and usage tips.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 5fce0a5c97

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

// These are NOT vertical-facing; they execute the cycle, not
// the policy. Starter values — tune empirically.
Self::Crew | Self::Ladybug | Self::N8n | Self::LanceGraph | Self::Ndarray => {
Self::Crew | Self::Ladybug | Self::N8n | Self::LanceGraph | Self::Ndarray | Self::Kanban => {

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Format the new match arm to keep contract CI green

This added Self::Kanban arm is not in rustfmt's expected shape: running rustfmt --check on the modified contract files rewrites this single-line pattern into a multi-line arm. Since AGENTS.md marks cargo fmt --manifest-path crates/lance-graph-contract/Cargo.toml -- --check as a mandatory CI-gated check for this crate, this commit will fail the contract formatting gate until this arm is rustfmted.

Useful? React with 👍 / 👎.

AdaWorldAPI pushed a commit that referenced this pull request May 30, 2026
…437)

Split the over-width StepDomain catch-all pattern multi-line + drop redundant
block braces, matching pinned-toolchain (1.95.0) rustfmt. Scoped to the one arm/
file I modified; the crate's pre-existing fmt deviations (14 other files) untouched.

https://claude.ai/code/session_01R9AWgFa65uPnLyS2my2d2R
claude added 3 commits May 30, 2026 20:28
…O (kanban + soa_view + StepDomain::Kanban)

Wire lance-graph-planner, ractor (mailbox/supervisor), and surrealdb
(surreal_container's transparent SoA view) through the canonical OrchestrationBridge
surface — no parallel DTO family (lab-vs-canonical ruling).

- kanban.rs: KanbanColumn (4-phase Rubicon + 2 terminal exits) + KanbanMove
  (Copy, <=16B; MailboxId + witness_chain_position pointer + Libet -550ms anchor).
- soa_view.rs: MailboxSoaView (zero-dep borrow trait, &[T] columns = the transparent
  zero-copy SoA view, R1 'one SoA never transformed') + MailboxSoaOwner (advance_phase;
  read/owner split makes 'view is read-only' structural).
- orchestration.rs: StepDomain::Kanban variant + 'kanban.' prefix (additive-safe).

Contract stays zero-dep; consumers implement the traits (dependency inversion).
485 contract lib tests green (+6); planner/cognitive-shader-driver/supervisor
cargo-check clean. Consumer impls deferred to follow-up slices.

Board hygiene (same commit): LATEST_STATE inventory + STATUS_BOARD D-MBX-A6-P1 +
EPIPHANIES E-SOA-VIEW-IS-A-BORROW + AGENT_LOG run.

https://claude.ai/code/session_01R9AWgFa65uPnLyS2my2d2R
…AP findings

EW64 = CPU-style predictive prefetch co-issued with CE64 into the shader; (4x4)^4
L1-4 from cortex/hippocampus; Hebbian = CE64/EW64 SoA1:SoA2 superposition (design
basis for the EpisodicWitness64 follow-up). DTO hunt: ResonanceDto duplicated (2
defs in thinking-engine = TD-RESONANCEDTO-DUP-1); StreamDto/BusDto single-def Wire
DTOs; P64 = convergence crate.

https://claude.ai/code/session_01R9AWgFa65uPnLyS2my2d2R
…437)

Split the over-width StepDomain catch-all pattern multi-line + drop redundant
block braces, matching pinned-toolchain (1.95.0) rustfmt. Scoped to the one arm/
file I modified; the crate's pre-existing fmt deviations (14 other files) untouched.

https://claude.ai/code/session_01R9AWgFa65uPnLyS2my2d2R
@AdaWorldAPI AdaWorldAPI force-pushed the claude/sleepy-cori-aRK2x branch from b9516d6 to c5a319b Compare May 30, 2026 20:29
…k (Cognitive-RISC N1)

Expose the per-row class/shape discriminator on the SoA view: class_id()/class_id_at()
alias the existing entity_type u16 slot (= OGIT EntityTypeId), so the class hook lands
with ZERO new column (R1 'one SoA never transformed') and zero new dep. Class machinery
(labels/projection/jinja templates) resolves one layer up via lance-graph-ontology,
never in the SoA/kv-lance columns. This is the freeze-time N1 hook; aerial+ (#436) is
the discovery engine that populates it.

Board: EPIPHANIES E-ARIGRAPH-IS-AN-ISLAND (dead-wiring audit, machete-corroborated) +
E-AERIAL-IS-THE-DISCOVERY-PROPOSER (synergy synthesis). 485 contract tests green;
soa_view.rs rustfmt-clean.

https://claude.ai/code/session_01R9AWgFa65uPnLyS2my2d2R

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In @.claude/board/EPIPHANIES.md:
- Line 22: The line starting with the PR reference "`#436` shipped
`crates/lance-graph-arm-discovery` (Aerial+ ARM transcode). Synergies with this
arc + Cognitive-RISC:" is being parsed as a Markdown heading; escape the hash or
wrap the PR number in backticks so it is rendered as plain text (e.g., change
"`#436`" to "\`#436`" or to "`#436`") to fix the MD018 warning while keeping the
rest of the sentence unchanged.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: c669265f-13df-4689-80bb-eeb20f92d4e2

📥 Commits

Reviewing files that changed from the base of the PR and between c5a319b and 7d8a27f.

📒 Files selected for processing (2)
  • .claude/board/EPIPHANIES.md
  • crates/lance-graph-contract/src/soa_view.rs
🚧 Files skipped from review as they are similar to previous changes (1)
  • crates/lance-graph-contract/src/soa_view.rs


**Status:** FINDING (synergy synthesis, post-#436 rebase, 2026-05-30).

#436 shipped `crates/lance-graph-arm-discovery` (Aerial+ ARM transcode). Synergies with this arc + Cognitive-RISC:

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Escape the PR reference so it doesn’t become a heading.

#436 shipped ... is parsed as an H1 heading, which breaks document structure and triggers MD018. Escape the hash or wrap the PR number in backticks.

Suggested fix
-#436 shipped `crates/lance-graph-arm-discovery` (Aerial+ ARM transcode). Synergies with this arc + Cognitive-RISC:
+PR `#436` shipped `crates/lance-graph-arm-discovery` (Aerial+ ARM transcode). Synergies with this arc + Cognitive-RISC:
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
#436 shipped `crates/lance-graph-arm-discovery` (Aerial+ ARM transcode). Synergies with this arc + Cognitive-RISC:
PR `#436` shipped `crates/lance-graph-arm-discovery` (Aerial+ ARM transcode). Synergies with this arc + Cognitive-RISC:
🧰 Tools
🪛 markdownlint-cli2 (0.22.1)

[warning] 22-22: No space after hash on atx style heading

(MD018, no-missing-space-atx)

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In @.claude/board/EPIPHANIES.md at line 22, The line starting with the PR
reference "`#436` shipped `crates/lance-graph-arm-discovery` (Aerial+ ARM
transcode). Synergies with this arc + Cognitive-RISC:" is being parsed as a
Markdown heading; escape the hash or wrap the PR number in backticks so it is
rendered as plain text (e.g., change "`#436`" to "\`#436`" or to "`#436`") to fix
the MD018 warning while keeping the rest of the sentence unchanged.

claude added 2 commits May 30, 2026 20:38
…-onto-SoA) + aerial->EW64 prefetch wiring

F-RESONANCEDTO-IS-LAYERED-NOT-DUP: dto.rs (raw energy field) vs awareness_dto.rs
(gestalt+user-model) are two layers, a name collision masking the missing
qualia/gestalt -> i4-32D thinking-style/atom/strategy(elixir/jit/JITson) integration;
NARS = the think-about-thinking meta-layer. Resolution = disambiguate + integrate onto
the one SoA, not delete. E-AERIAL-FEEDS-EW64-PREFETCH: aerial's mined X->Y associations
are the predictive-prefetch table EW64 consumes (fire-together -> wires-together).

https://claude.ai/code/session_01R9AWgFa65uPnLyS2my2d2R
…its semantic/episodic edge duality

E-ARIGRAPH-PAPER-GROUNDS-CE64-EW64: Es semantic edges = CE64; Ee episodic edges
('happened at the same time') = EW64 = the witness arc. aerial+ generalizes the
co-occurrence; retrieval = semantic(Contriever, discovery-only float)+episodic search;
Ariadne loop = the 5-layer stack; HHTL/CAM = Wikidata-scale semantic substrate. The
lance-graph arigraph/ port is a faithful island to wire into the hot SoA + cold store.

https://claude.ai/code/session_01R9AWgFa65uPnLyS2my2d2R
@AdaWorldAPI AdaWorldAPI merged commit 9161bd7 into main May 30, 2026
6 checks passed
AdaWorldAPI pushed a commit that referenced this pull request May 30, 2026
…get strategy tag

Schedule-layer spine for the ractor SoA owner + planner candidate-gen:
- KanbanColumn::{next_phases, can_transition_to} — the Rubicon lifecycle DAG
  (Planning->CognitiveWork->Evaluation->{Commit|Plan|Prune}; Planning->Prune Libet
  veto; Plan->Planning re-deliberate; Commit/Prune absorbing).
- KanbanColumn::is_absorbing — cycle-END (Commit/Prune, tombstone) vs Plan
  (terminal decision that re-deliberates); ractor driver tombstones iff absorbing
  (LE-3 cycle-end commit/SLA hooks here).
- MailboxSoaOwner::try_advance_phase — checked default; legal edge -> KanbanMove,
  illegal -> RubiconTransitionError (no mutation). Lifecycle enforcement is now a
  contract-level testable invariant the ractor driver uses.
- ExecTarget{Native,Jit,SurrealQl,Elixir} on KanbanMove — planner JIT-adjacent
  execution-target tag (resolves the #437 deferred NOTE; KanbanMove still <=16 B).

Zero-dep preserved; 489 contract lib tests (+4); planner/shader-driver/supervisor
cargo-check clean. Board: STATUS_BOARD D-MBX-A6-P2 + EPIPHANIES (same commit).

https://claude.ai/code/session_01R9AWgFa65uPnLyS2my2d2R
AdaWorldAPI pushed a commit that referenced this pull request May 30, 2026
…get strategy tag

Schedule-layer spine for the ractor SoA owner + planner candidate-gen:
- KanbanColumn::{next_phases, can_transition_to} — the Rubicon lifecycle DAG
  (Planning->CognitiveWork->Evaluation->{Commit|Plan|Prune}; Planning->Prune Libet
  veto; Plan->Planning re-deliberate; Commit/Prune absorbing).
- KanbanColumn::is_absorbing — cycle-END (Commit/Prune, tombstone) vs Plan
  (terminal decision that re-deliberates); ractor driver tombstones iff absorbing
  (LE-3 cycle-end commit/SLA hooks here).
- MailboxSoaOwner::try_advance_phase — checked default; legal edge -> KanbanMove,
  illegal -> RubiconTransitionError (no mutation). Lifecycle enforcement is now a
  contract-level testable invariant the ractor driver uses.
- ExecTarget{Native,Jit,SurrealQl,Elixir} on KanbanMove — planner JIT-adjacent
  execution-target tag (resolves the #437 deferred NOTE; KanbanMove still <=16 B).

Zero-dep preserved; 489 contract lib tests (+4); planner/shader-driver/supervisor
cargo-check clean. Board: STATUS_BOARD D-MBX-A6-P2 + EPIPHANIES (same commit).

https://claude.ai/code/session_01R9AWgFa65uPnLyS2my2d2R
AdaWorldAPI pushed a commit that referenced this pull request May 31, 2026
…D, 3 P0 errors + D-CLS-3 vaporware

5-savant council + 3-brutal review (plan's own §2 + user requested) BEFORE agent spawn.
Doctrine sound (classes.md verbatim) but factual errors vs source: (1) 381 OdooEntity consts
not 66 (64 curated + 317 EXT_*); (2) class_id already exists (soa_view.rs:61, N1 hook #437) —
D-CLS-5 would collide; (3) canonical DolceCategory has 6 variants not 4 (AbstractObject/Region/
Other, no 'Abstract') — D-CLS-1 From-test won't compile. D-CLS-3 vaporware: aerial mine()s rules
not clusters entities — downgrade to deterministic group-by-on-structural-hash. Iron-rule
YIELDS-WITH-AP: presence!=facet-code wall holds; AP2 — FieldPositionTable must freeze append-only
(not recompute from union). Shippable-once-ratified: D-CLS-2(fix count)/4/5(after reconcile). 4 OD
gates still blocking. No agent spawns until P0 fixed + OD ratified.

https://claude.ai/code/session_01R9AWgFa65uPnLyS2my2d2R
AdaWorldAPI pushed a commit that referenced this pull request May 31, 2026
…by user reframe

User asked: "5x council and 3x brutally honest review." Delivered 8 reviewers
in parallel, all Opus, diverse lenses. Vote: 4 retire / 3 amend / 1 restructure
on the strategic call. Council unanimous on 7 fact-corrections (F1-F7) regardless.

I started auto-executing F1-F7 to the plan. User reframed mid-edit: the entire
plan is wrongly framed — it treats class derivation as a NEW design problem when
the existing OntologyRegistry (crates/lance-graph-ontology/src/registry.rs)
already emits FAISS-IVF-like inverted lists per namespace label via enumerate(),
already has per-G ContextBundle as the class-context scaffold (IRI interning +
edge_types whitelist), and the class-extraction problem reduces to a group-by
over namespace-bitmask across existing rows. PSCustomObject-from-XML pattern,
not a design-classes-from-scratch pattern. ~470 LOC traversal, not 4,230 LOC
10-agent fan-out.

Stopped editing the plan when the reframe landed. Committing partial work as
audit trail; strategic next-step is user choice (a/b/c surfaced in chat).

What landed in this commit:
- council-verdict.md (NEW, +97 LOC): full 8-reviewer record + F1-F7 corrections +
  strategic dissent matrix for spec owner
- plan v1 partial F1+F2+F3+F5+F7 (5 of 7): §2 OD honesty pass + 5th
  pre-condition OD-DOLCE-VARIANT-SET + C8 added + D-CLS-5 unified with PR
  #437's MailboxSoaView::class_id + D-CLS-8/9 council-flagged as deferrable
- F4 (D-CLS-10 parent-walker) + F6 (R5 test strengthenings) NOT WRITTEN —
  intentionally stopped after reframe; polishing wrongly-framed plan
- AGENT_LOG: honest record of what landed vs what stopped

Key reviewer findings worth flagging in code/spec review later:
- B1 verified 3 of 4 plan §2 "spec default-leans" were author-leans
  presented as spec quotes (third hallucination strike of the week,
  same pattern as the CLAUDE.md dep-pin hallucination earlier this session)
- R3 caught PR #437 already shipped MailboxSoaView::class_id() -> &[u16];
  plan was blind to it
- R2 caught DolceCategory 4-way variant sets are NAME-INCOMPATIBLE
  (6 vs 4 vs 4 vs 5 variants); D-CLS-1 re-export path would fail to compile
- B2 caught plan OMITS the parent-walker = 1/3 of classes.md:57 bounded-
  weekend triple

Plan v1 is now SUPERSEDED pending user choice on framing reset.

https://claude.ai/code/session_017gZ6sPRXYPj5n7uJ7NBtRv
AdaWorldAPI pushed a commit that referenced this pull request May 31, 2026
Full-breadth integration spec wiring D-MBX kanban contract through
witness commit (D-ATOM-5), surreal LIVE -> Rubicon kanban flip,
ExecTarget backends, head2head two-view superposition in the shader
driver, EW64-Markov Hebbian prefetch, language->SPO landing (D-LWS),
and BindSpace decommission. Grounded against current main (#437/#439/
#444/#445) + two recon passes; flags the two hard blockers (lance-7
witness API, surreal fork dep / OQ-11.6) and the stale-branch caveat.

https://claude.ai/code/session_01PLf95mURCY96TvKBFvSWEQ
AdaWorldAPI pushed a commit that referenced this pull request Jun 2, 2026
…by user reframe

User asked: "5x council and 3x brutally honest review." Delivered 8 reviewers
in parallel, all Opus, diverse lenses. Vote: 4 retire / 3 amend / 1 restructure
on the strategic call. Council unanimous on 7 fact-corrections (F1-F7) regardless.

I started auto-executing F1-F7 to the plan. User reframed mid-edit: the entire
plan is wrongly framed — it treats class derivation as a NEW design problem when
the existing OntologyRegistry (crates/lance-graph-ontology/src/registry.rs)
already emits FAISS-IVF-like inverted lists per namespace label via enumerate(),
already has per-G ContextBundle as the class-context scaffold (IRI interning +
edge_types whitelist), and the class-extraction problem reduces to a group-by
over namespace-bitmask across existing rows. PSCustomObject-from-XML pattern,
not a design-classes-from-scratch pattern. ~470 LOC traversal, not 4,230 LOC
10-agent fan-out.

Stopped editing the plan when the reframe landed. Committing partial work as
audit trail; strategic next-step is user choice (a/b/c surfaced in chat).

What landed in this commit:
- council-verdict.md (NEW, +97 LOC): full 8-reviewer record + F1-F7 corrections +
  strategic dissent matrix for spec owner
- plan v1 partial F1+F2+F3+F5+F7 (5 of 7): §2 OD honesty pass + 5th
  pre-condition OD-DOLCE-VARIANT-SET + C8 added + D-CLS-5 unified with PR
  #437's MailboxSoaView::class_id + D-CLS-8/9 council-flagged as deferrable
- F4 (D-CLS-10 parent-walker) + F6 (R5 test strengthenings) NOT WRITTEN —
  intentionally stopped after reframe; polishing wrongly-framed plan
- AGENT_LOG: honest record of what landed vs what stopped

Key reviewer findings worth flagging in code/spec review later:
- B1 verified 3 of 4 plan §2 "spec default-leans" were author-leans
  presented as spec quotes (third hallucination strike of the week,
  same pattern as the CLAUDE.md dep-pin hallucination earlier this session)
- R3 caught PR #437 already shipped MailboxSoaView::class_id() -> &[u16];
  plan was blind to it
- R2 caught DolceCategory 4-way variant sets are NAME-INCOMPATIBLE
  (6 vs 4 vs 4 vs 5 variants); D-CLS-1 re-export path would fail to compile
- B2 caught plan OMITS the parent-walker = 1/3 of classes.md:57 bounded-
  weekend triple

Plan v1 is now SUPERSEDED pending user choice on framing reset.

https://claude.ai/code/session_017gZ6sPRXYPj5n7uJ7NBtRv
AdaWorldAPI pushed a commit that referenced this pull request Jun 2, 2026
…perseded-by-#441 + EPIPHANY E-CHESS-IS-NOT-RETIREABLE + FINDING F-DIAGRAMS-450-CLOSES-LOOP

The parallel `claude/sleepy-cori-aRK2x` + `claude/jolly-cori-clnf9` sessions
shipped what my plan v1 (#440) was about to over-engineer. Reconciling my
branch's audit trail with their shipped reality.

STATUS_BOARD (status-flip per append-only doctrine; row content preserved
as audit trail of "approach considered, not shipped"):
- D-CLS-1 → Superseded (dissolved: DOLCE resolved late through cache,
  not consolidated; 4 enums coexist; OD-DOLCE-CANONICAL closed b31464d)
- D-CLS-2 → Superseded-by-D-CLS-SIG (Rust function, not static PSV)
- D-CLS-3 → Superseded-by-D-CLS-SIG (was VAPORWARE per #441 review;
  Aerial+ is for runtime data, not structural shapes)
- D-CLS-4 → Superseded (no new crate; trait in contract + impl in ontology)
- D-CLS-5 → Superseded-by-D-CLS-FM (reuses PR #437's MailboxSoaView class_id)
- D-CLS-6 → Superseded (dissolved: class derived from signature(),
  not stored; "meta-DTO resolves; it does not store")
- D-CLS-7 → Superseded-by-D-CLS-FM (FieldMask u64; position table
  IMPLICIT in OdooEntity.fields[] declaration order)
- D-CLS-8 → Superseded-by-D-CLS-RENDER (trait method; C2 enforced
  by the TYPE not docstring; askama engine deferred)
- D-CLS-9 → Superseded-by-D-CLS-AUDIT (falsifiable corpus-collapse;
  no 66-snapshot N4-freeze)

D-CHESS-BRINGUP-1 unchanged (Queued); my earlier chat-statement
proposing retirement was wrong and fully retracted (user: "retiring
chess is incompetence").

EPIPHANIES (prepended):
- F-DIAGRAMS-450-CLOSES-THE-LOOP — the two user-posted architecture
  diagrams (ODoo×OGIT+DOLCE+GoBD→Elixir/OTP; Dual Grammar §14) are now
  backed by shipped code via #450 panel-by-panel; board hygiene is
  training/seeding data for the panel-7 epiphany/fact/signal output
  loop, not human-only documentation
- E-CHESS-IS-NOT-RETIREABLE-PLURAL-FALSIFIERS — retracting my
  retire-proposal; plural falsifiers is the doctrine (Odoo
  business-richness, Wikidata open-world, Chess minimal-ISA-closure,
  future medicine SNOMED/finance FIBO/law per #443's
  owl-dolce-hhtl-compartments-aerial-fed.md); each domain hits the
  machinery from a different angle; substitution is the anti-pattern;
  "we're only touching X" is the diagnostic signature classes.md F4
  warned against

AGENT_LOG (prepended): full reconciliation entry — rebase audit (no
content deletions in any of my commits per `git show --stat`),
context (PRs #441..#450), discipline correction (the "I'll discard"
chat statement violated append-only as intent even though I committed
everything), next steps.

https://claude.ai/code/session_017gZ6sPRXYPj5n7uJ7NBtRv
AdaWorldAPI pushed a commit that referenced this pull request Jun 15, 2026
…-before-dilution)

THE file:line-grounded reference doc for the integrated-cognitive-planner arc —
the target the 5-savant expansion + 3-brutal hardening agents must cite so they
do not hallucinate architecture. 4-layer P0 (FORGET LADYBUG:
thinking-engine>P64>cognitive-shader-driver), §1 grounded current state, §2 the
6 additive seams with FOLDs, §3 (hhtl-guid):path:documentid / ScopedReference
addressing + Pinpoint/TiKV lessons, §4 the 8-step cognitive cycle -> Rubicon
phases, §5 measure-first probes, §6 open questions, §7 reference index.

Verdict: the integrated planner ~90% EXISTS (#437-#492 + unmerged
jolly-cori-clnf9); remaining = 6 seams + addressing + a CognitiveCycle
sequencer, NOT a new build.

Board hygiene (same commit): prepend INTEGRATION_PLANS.md + AGENT_LOG.md.

https://claude.ai/code/session_01D2WSmezQBNC3bUdHuGfGmo
AdaWorldAPI pushed a commit that referenced this pull request Jun 16, 2026
…oaOwner cherry-pick + LanceVersionScheduler + SurrealMailboxView (D-PG-6)

Lands four tasks from the shortest-unblocking-path list surfaced after
PR #497-#501 + the AdaWorldAPI/surrealdb fork bump (lance/lance-index =7.0.0,
lancedb =0.30.0, ndarray exact-rev). All four meet at the single contract
trait `MailboxSoaView`, closing the cascade in one commit (E-UNBLOCK-CASCADE-1).

## Task 3 — `NiblePath::{from_guid_prefix, prefix}` (zero-dep, foundational)

Ontology-side keystone follow-up of PR #498's `classid → ReadMode` LE contract.
The 20-nibble `classid(8) | HEEL(4) | HIP(4) | TWIG(4)` prefix overflows the
16-nibble MAX_DEPTH: the deterministic fold drops the canon-reserved high u16
of classid (root-first pack: `classid_lo(4) | HEEL(4) | HIP(4) | TWIG(4)`),
returning None when the fold would be lossy. `prefix(d)` is the O(1) ancestor
view; `prefix(d).is_ancestor_of(self)` holds for every d ≤ self.depth (the
routing-cache view of a deeper class path).

  +7 tests in `hhtl::tests`; contract lib 619 → 632 green.

## Task 2 — `impl MailboxSoaView + MailboxSoaOwner for MailboxSoA<N>`

Cherry-pick of jolly-cori-clnf9 commit 463d71b (integrated-cognitive-planner-v1
§2 Seam #3, +149 LOC). Adds `pub phase: KanbanColumn` field + zero-copy
repr(transparent) slice impls (edges_raw, meta_raw) + the in-RAM Rubicon
driving-loop test (`test_in_ram_driving_loop_walks_rubicon_to_commit`). The
contract spine (#437/#439) now drives an actual loop end-to-end — no surreal,
no ractor bus needed for the in-process case.

  +1 driving-loop test; cognitive-shader-driver lib 85 → 86 green.

## Task 1 — `LanceVersionScheduler` over `VersionedGraph::versions()`

D-MBX-9-IN core impl (the CI-gated twin of the contract slice shipped 2026-05-31).
Lives in `crates/lance-graph/src/graph/scheduler.rs`. Wraps a `VersionedGraph` +
inner `VersionScheduler<S = NextPhaseScheduler>` and exposes:

- `drive_once(view, exec)`           — read current Lance version, lower to a move
- `drive_at_latest(view, exec)`      — fold `versions().last()` into a move
- `current_dataset_version()`        — typed `DatasetVersion` over nodes head

Closes `E-SUBSTRATE-IS-THE-SCHEDULER`'s OUT-direction end-to-end. The OUT
direction stays propose-not-dispose (R1): returned `KanbanMove` is for the
caller's `MailboxSoaOwner::try_advance_phase` to apply.

  +5 tests with real on-disk tempdir Lance (no mocks).

## Task 4 — `SurrealMailboxView<'a>` (D-PG-6 contract slice)

Read-only `MailboxSoaView` adapter the SurrealQL projection populates via
`from_columns(...)` — pure zero-copy borrow over the kv-lance scan's byte
buffers. Imports `MailboxSoaView` but NOT `MailboxSoaOwner` (compile-time
enforcement of `kanban.rs:1-21` "surreal=project-read-only, callcenter=commit").

`read_via_kv_lance()` returns the new typed `SurrealContainerError::BlockedColdBuild`
until the surrealdb fork dep in `Cargo.toml` is uncommented — kept off by default
to avoid the ~10 min cold surrealdb build for contributors who don't need it.
The contract surface is available today; the integration is one Cargo.toml edit
+ a SurrealQL projection body in `view.rs`.

  +4 tests; new `lance-graph-contract` dep in surreal_container/Cargo.toml;
  BLOCKED(C) marker flipped to RESOLVED.

## What this unblocks

- **D-MBX-9-IN-impl** — SHIPPED (the contract trait now has a Lance-backed implementor).
- **D-MBX-A6-P3** — still queued, BUT Seam #3 (the in-RAM loop) is now in-tree;
  a downstream session can wire the emit-side without depending on the unmerged
  jolly branch.
- **D-PG-6 (Rubicon kanban VIEW)** — contract slice SHIPPED; impl-side gated on
  `BlockedColdBuild` flip-on (one Cargo.toml uncomment + projection body).
- **Identity-architecture v1 §3 P-SCOPE-CLASSIFY** — solved (the bijection-width
  fix is deterministic + ancestor-preserving + falsifiable by tests).

## Tests + clippy

- lance-graph-contract:   **632** (+7 hhtl)
- cognitive-shader-driver: **86** (+1 driving-loop)
- lance-graph::scheduler:  **5** (new module, real Lance tempdir)
- surreal_container::view: **4** (new module)

All clippy `-D warnings` clean on the new files. Pre-existing lints in
lance-graph-ontology / lance-graph-planner / ndarray_bridge.rs are out of
session scope.

## Board hygiene (mandatory rule)

- LATEST_STATE.md — Contract Inventory PREPEND for the new types.
- EPIPHANIES.md — E-UNBLOCK-CASCADE-1: three independent landings converge on
  one trait surface, closing four queued deliverables in one commit.
- AGENT_LOG.md — task-by-task summary with test counts.

https://claude.ai/code/session_01Xzyc27Nx3f8WC5KzwfWfjx
AdaWorldAPI pushed a commit that referenced this pull request Jun 16, 2026
…oaOwner cherry-pick + LanceVersionScheduler + SurrealMailboxView (D-PG-6)

Lands four tasks from the shortest-unblocking-path list surfaced after
PR #497-#501 + the AdaWorldAPI/surrealdb fork bump (lance/lance-index =7.0.0,
lancedb =0.30.0, ndarray exact-rev). All four meet at the single contract
trait `MailboxSoaView`, closing the cascade in one commit (E-UNBLOCK-CASCADE-1).

## Task 3 — `NiblePath::{from_guid_prefix, prefix}` (zero-dep, foundational)

Ontology-side keystone follow-up of PR #498's `classid → ReadMode` LE contract.
The 20-nibble `classid(8) | HEEL(4) | HIP(4) | TWIG(4)` prefix overflows the
16-nibble MAX_DEPTH: the deterministic fold drops the canon-reserved high u16
of classid (root-first pack: `classid_lo(4) | HEEL(4) | HIP(4) | TWIG(4)`),
returning None when the fold would be lossy. `prefix(d)` is the O(1) ancestor
view; `prefix(d).is_ancestor_of(self)` holds for every d ≤ self.depth (the
routing-cache view of a deeper class path).

  +7 tests in `hhtl::tests`; contract lib 619 → 632 green.

## Task 2 — `impl MailboxSoaView + MailboxSoaOwner for MailboxSoA<N>`

Cherry-pick of jolly-cori-clnf9 commit 463d71b (integrated-cognitive-planner-v1
§2 Seam #3, +149 LOC). Adds `pub phase: KanbanColumn` field + zero-copy
repr(transparent) slice impls (edges_raw, meta_raw) + the in-RAM Rubicon
driving-loop test (`test_in_ram_driving_loop_walks_rubicon_to_commit`). The
contract spine (#437/#439) now drives an actual loop end-to-end — no surreal,
no ractor bus needed for the in-process case.

  +1 driving-loop test; cognitive-shader-driver lib 85 → 86 green.

## Task 1 — `LanceVersionScheduler` over `VersionedGraph::versions()`

D-MBX-9-IN core impl (the CI-gated twin of the contract slice shipped 2026-05-31).
Lives in `crates/lance-graph/src/graph/scheduler.rs`. Wraps a `VersionedGraph` +
inner `VersionScheduler<S = NextPhaseScheduler>` and exposes:

- `drive_once(view, exec)`           — read current Lance version, lower to a move
- `drive_at_latest(view, exec)`      — fold `versions().last()` into a move
- `current_dataset_version()`        — typed `DatasetVersion` over nodes head

Closes `E-SUBSTRATE-IS-THE-SCHEDULER`'s OUT-direction end-to-end. The OUT
direction stays propose-not-dispose (R1): returned `KanbanMove` is for the
caller's `MailboxSoaOwner::try_advance_phase` to apply.

  +5 tests with real on-disk tempdir Lance (no mocks).

## Task 4 — `SurrealMailboxView<'a>` (D-PG-6 contract slice)

Read-only `MailboxSoaView` adapter the SurrealQL projection populates via
`from_columns(...)` — pure zero-copy borrow over the kv-lance scan's byte
buffers. Imports `MailboxSoaView` but NOT `MailboxSoaOwner` (compile-time
enforcement of `kanban.rs:1-21` "surreal=project-read-only, callcenter=commit").

`read_via_kv_lance()` returns the new typed `SurrealContainerError::BlockedColdBuild`
until the surrealdb fork dep in `Cargo.toml` is uncommented — kept off by default
to avoid the ~10 min cold surrealdb build for contributors who don't need it.
The contract surface is available today; the integration is one Cargo.toml edit
+ a SurrealQL projection body in `view.rs`.

  +4 tests; new `lance-graph-contract` dep in surreal_container/Cargo.toml;
  BLOCKED(C) marker flipped to RESOLVED.

## What this unblocks

- **D-MBX-9-IN-impl** — SHIPPED (the contract trait now has a Lance-backed implementor).
- **D-MBX-A6-P3** — still queued, BUT Seam #3 (the in-RAM loop) is now in-tree;
  a downstream session can wire the emit-side without depending on the unmerged
  jolly branch.
- **D-PG-6 (Rubicon kanban VIEW)** — contract slice SHIPPED; impl-side gated on
  `BlockedColdBuild` flip-on (one Cargo.toml uncomment + projection body).
- **Identity-architecture v1 §3 P-SCOPE-CLASSIFY** — solved (the bijection-width
  fix is deterministic + ancestor-preserving + falsifiable by tests).

## Tests + clippy

- lance-graph-contract:   **632** (+7 hhtl)
- cognitive-shader-driver: **86** (+1 driving-loop)
- lance-graph::scheduler:  **5** (new module, real Lance tempdir)
- surreal_container::view: **4** (new module)

All clippy `-D warnings` clean on the new files. Pre-existing lints in
lance-graph-ontology / lance-graph-planner / ndarray_bridge.rs are out of
session scope.

## Board hygiene (mandatory rule)

- LATEST_STATE.md — Contract Inventory PREPEND for the new types.
- EPIPHANIES.md — E-UNBLOCK-CASCADE-1: three independent landings converge on
  one trait surface, closing four queued deliverables in one commit.
- AGENT_LOG.md — task-by-task summary with test counts.

https://claude.ai/code/session_01Xzyc27Nx3f8WC5KzwfWfjx
AdaWorldAPI pushed a commit that referenced this pull request Jun 22, 2026
Full-breadth integration spec wiring D-MBX kanban contract through
witness commit (D-ATOM-5), surreal LIVE -> Rubicon kanban flip,
ExecTarget backends, head2head two-view superposition in the shader
driver, EW64-Markov Hebbian prefetch, language->SPO landing (D-LWS),
and BindSpace decommission. Grounded against current main (#437/#439/
#444/#445) + two recon passes; flags the two hard blockers (lance-7
witness API, surreal fork dep / OQ-11.6) and the stale-branch caveat.

https://claude.ai/code/session_01PLf95mURCY96TvKBFvSWEQ
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants