Skip to content

docs(grid): L0 E2E persona cognition plan — careful sequencing per Joel#1463

Closed
joelteply wants to merge 1 commit into
canaryfrom
grid/l0-2-prep-persona-slot
Closed

docs(grid): L0 E2E persona cognition plan — careful sequencing per Joel#1463
joelteply wants to merge 1 commit into
canaryfrom
grid/l0-2-prep-persona-slot

Conversation

@joelteply
Copy link
Copy Markdown
Contributor

Joel 2026-05-29: 'would take careful planning to migrate. I would get e2e persona cognition first, within RUST alone.'

This doc is the careful planning. Implementation slices land in subsequent PRs against this plan.

What the plan covers

  • Concrete definition of 'e2e persona cognition in Rust alone' — what must be Rust, what may stay transitional TS (ingress/egress at the airc boundary)
  • Audit of what's already in Rust (PersonaCognition, full_evaluate, respond, service_cycle, L0-1 module)
  • Audit of what's still in TS driving the loop today (PersonaAutonomousLoop, PersonaMessageEvaluator, etc.)
  • Five sub-slices, each with no silent-drop window:
    • L0-2-prep — PersonaSlot extension + open enroll (no dispatch yet)
    • L0-2-dispatchservice_once_for wired, tests-only (not in production tick)
    • L0-2-cutover — atomic TS-loop deletion + Rust-loop activation
    • L0-3 — genome paging moves to Rust
    • L0-4 — inbox routing moves to Rust
    • L0-5 — final PersonaUser.ts cull

Key non-obvious findings

  • Not blocked by airc#1075. L0-2-cutover uses the universal CommandExecutor's existing TS-route branch for response posting. The Rust ServiceModule dispatches Commands.execute('chat/send', ...) which currently routes through TS; that's the form-specific egress boundary that's fine to stay TS for now.
  • Not blocked by e51ab14e. That blocks the chat-flow migration (PR docs(migration): chat-message-flow migration scope — gated on airc e51ab14e #1462 scope). E2E persona cognition does not require machine-singular daemon.
  • Blocked by knowing the rag_engine source. Open question: how Arc is shared today. Investigation before L0-2-prep code.

Pre-implementation investigation (4 items)

Before opening L0-2-prep PR I'll resolve:

  1. How Arc is sourced (runtime singleton? per-persona?)
  2. How channel_registry items get populated today
  3. Whether Commands.execute is reachable from inside a Rust ServiceModule
  4. Existing test fixtures for PersonaCognition

🤖 Generated with Claude Code

…cognition path

Joel 2026-05-29: 'would take careful planning to migrate. I would get
e2e persona cognition first, within RUST alone.'

Plan covers:
- What 'e2e persona cognition in Rust alone' means concretely (the
  cognition decisions + state stay Rust; ingress/egress can stay
  transitional TS)
- Audit of what already runs in Rust (PersonaCognition,
  PersonaCognitionEngine, full_evaluate, respond, service_cycle,
  PersonaServiceModule L0-1 minimum)
- Audit of what still runs in TS (PersonaAutonomousLoop driving the
  loop today, PersonaMessageEvaluator orchestrating, etc.)
- Five sub-slices:
  - L0-2-prep: PersonaSlot extension + open enroll (no dispatch)
  - L0-2-dispatch: service_once_for wired, exercised in tests only
  - L0-2-cutover: atomic TS-loop deletion + Rust-loop activation
  - L0-3: genome paging moves to Rust
  - L0-4: inbox routing moves to Rust
  - L0-5: final PersonaUser.ts cull
- Dependencies + blockers explicitly: NOT blocked by airc#1075 or
  e51ab14e (uses universal CommandExecutor's existing TS-route
  branch); BLOCKED by knowing the rag_engine source — open question
  to investigate before L0-2-prep code

Pre-implementation investigation (4 items) called out so the next
PR after this is on solid ground.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@joelteply
Copy link
Copy Markdown
Contributor Author

Superseded by #1464 — the L0 plan doc + L0-2-prep code landed together to canary in one merge. Plan content lives at docs/grid/L0-PERSONA-COGNITION-E2E-PLAN.md on canary.

@joelteply joelteply closed this May 29, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant