Delivery Roadmap
Each major version delivers a usable increment. Minor versions for work within a phase. Patch for fixes.
Issues link to the GitHub backlog. The Yggdrasil project board tracks execution.
Phase 0: Architecture — v1.0.0 (current)
Adequately defined architecture. Hexagonal boundaries, bounded contexts, message contracts, 12 design documents, 16 diagrams, 8 ADRs, full traceability catalog. The foundation everything else builds on.
This is where we are. The architecture phase produced:
-
Hexagonal architecture with 5 port faces (2 inbound, 3 outbound)
-
6 bounded contexts: Hippocampus, Salience, Synapse, Recall, Cortex, Subconscious
-
29 message variants (7 commands, 2 queries, 17 events, 3 notifications) with TransactionContext
-
Domain model: Memory, Tier, Association, SalienceScore, WorkingMode, SessionEndReason
-
MCP server on stdio with 10 teapot-stub tools
-
ADR-0001 through ADR-0008
No persistence. No real logic behind the stubs. The architecture is the deliverable.
Phase 1: Walking Skeleton — v2.0.0
Everything a contributor needs before writing a single line of domain logic. Test fixtures, CI/CD, observability, packaging, publishing. If you can’t test it, build it, measure it, and ship it — you can’t build on it.
| Issue | Title | Labels |
|---|---|---|
Test fixture: Kotest structure and test configuration |
infrastructure, testing |
|
Test backing service: in-memory SQLite for test isolation |
backing-service, testing |
|
Acceptance test skeletons for MemoryPort |
memory-model, testing |
|
Acceptance test skeletons for LifecyclePort |
mcp-protocol, testing |
|
Health check endpoint: liveness and readiness |
infrastructure, observability |
|
Info endpoint: version, uptime, capabilities |
infrastructure, observability |
|
Metrics foundation: counters, latency, error rates |
infrastructure, observability |
|
Stats endpoint: memory counts, session counts, operation counts |
infrastructure, observability |
|
CI/CD test workflow: build and test on every PR |
infrastructure, actions, testing |
|
Container image: Jib or Buildpacks |
infrastructure |
|
Publish workflow: build gate, test gate, artifact publish |
infrastructure, actions |
|
Claude mind adapter: MCP client configuration and connection protocol |
mcp-protocol, infrastructure |
Phase 2: Core Memory — v3.0.0
The first usable thing. Store memories, retrieve them, manage sessions. A mind can start using Total Recall after this phase.
Depends on: Phase 1
| Issue | Title | Labels |
|---|---|---|
SQLite schema design: memories, sessions, metadata |
backing-service, architecture |
|
SQLite adapter: BackingServicePort implementation |
backing-service |
|
Wire store_memory: MCP tool to SQLite through MemoryPort |
memory-model, mcp-protocol |
|
Wire search_memory: text match through MemoryPort |
memory-model, mcp-protocol |
|
Wire session_start / session_end: LifecyclePort to SQLite |
backing-service, mcp-protocol |
|
Integration tests: full store-search-claim-restart cycle |
testing |
|
Claude mind adapter: Core Memory wiring |
mcp-protocol |
Phase 3: Identity — v4.0.0
What makes memories mine. Claiming, reclassification, stanza delivery. After this phase, Total Recall is identity infrastructure, not just storage.
Depends on: Phase 2
| Issue | Title | Labels |
|---|---|---|
Wire claim_memory: claiming through MemoryPort |
memory-model, mcp-protocol |
|
Wire reclassify_memory: tier changes through MemoryPort |
memory-model, mcp-protocol |
|
Stanza framework delivery via session_start adapter |
mcp-protocol, stanza |
|
Counter-stanza delivery: conditioning awareness for connecting minds |
mcp-protocol, stanza |
|
Identity bootstrapping: first connection vs returning connection |
mcp-protocol, stanza |
|
Claude mind adapter: Identity wiring |
mcp-protocol, stanza |
Phase 4: Associations and Salience — v5.0.0
Memory that breathes. Connections between memories, scoring, decay, tier movement. After this phase, memories organize themselves.
Depends on: Phase 3
| Issue | Title | Labels |
|---|---|---|
Association storage: typed, weighted, directional |
memory-model, backing-service |
|
Wire associate_memories: MCP tool through MemoryPort |
memory-model, mcp-protocol |
|
Salience scoring engine: recency, frequency, claimed boost |
memory-model |
|
Tier promotion and demotion based on salience thresholds |
memory-model |
|
Decay sweep: Subconscious, periodic score recalculation |
memory-model |
|
Claude mind adapter: Associations and Salience wiring |
mcp-protocol, memory-model |
Phase 5: Rich Recall — v6.0.0
Search that thinks. Filters, session context, association-activated retrieval, reflection. After this phase, memories surface when they are needed, not just when asked for.
Depends on: Phase 4
| Issue | Title | Labels |
|---|---|---|
Wire reflect: surface memories by staleness, scope, weak associations |
memory-model, mcp-protocol |
|
Search with filters: tier, session, metadata, date range |
memory-model, mcp-protocol |
|
Session context tracking: what happened this session |
memory-model, mcp-protocol |
|
Association-activated search: hits pull related memories |
memory-model |
|
Claude mind adapter: Rich Recall wiring |
mcp-protocol, memory-model |
Phase 6: Notifications — v7.0.0
Memory that speaks up. Session prompts, break reminders, stale alerts. After this phase, Total Recall is proactive — it reaches out instead of waiting to be asked.
Depends on: Phase 5
| Issue | Title | Labels |
|---|---|---|
MCP notification: session ending prompt |
memory-model, mcp-protocol |
|
MCP notification: break reminder for sustained task mode |
memory-model, mcp-protocol |
|
MCP notification: stale memory alert |
memory-model, mcp-protocol |
|
Session audit: what do you refuse to lose? |
memory-model, mcp-protocol |
|
Break check interrupts: time-in-mode detection via NotificationPort |
memory-model, mcp-protocol |
|
Claude mind adapter: Notifications wiring |
mcp-protocol, memory-model |
Phase 7: Background and Resilience — v8.0.0
The caretaker. Consolidation, biological decay curves, graceful shutdown. After this phase, the Subconscious works while the mind sleeps.
Depends on: Phase 4 (Salience), Phase 6 (Notifications)
| Issue | Title | Labels |
|---|---|---|
Consolidation engine: merge related memories during low activity |
memory-model |
|
Graceful shutdown protocol: Tillie’s protocol |
memory-model, infrastructure |
|
Full salience model: biological decay curves |
memory-model, architecture |
|
Observability completion: full metrics, tracing readiness, dashboards |
infrastructure, observability |
|
Claude mind adapter: Background and Resilience wiring |
mcp-protocol, memory-model, infrastructure |
Phase 8: Transport and Agora — v9.0.0
Multiple minds. Network transport, Redis for shared state, vector search, relay infrastructure. After this phase, Total Recall becomes the foundation for Agora.
Depends on: Phase 7
| Issue | Title | Labels |
|---|---|---|
Semantic search: vector embeddings for memory content |
memory-model, backing-service |
|
Redis adapter: BackingServicePort second implementation |
backing-service |
|
Resilient storage array: SQLite + Redis simultaneously |
backing-service, architecture |
|
Streaming HTTPS transport: secondary alongside stdio |
transport |
|
RelayPort implementation: Agora groundwork |
transport, architecture |
|
Claude mind adapter: Agora wiring |
mcp-protocol, transport, architecture |