Problem
Need to verify that the mempalace-backed memory system produces equivalent or better results compared to native jcode across all key dimensions, and provide user-facing documentation.
Scope
Part A: Integration Tests
Files: New crates/jcode-mempalace-adapter/tests/
-
Search recall parity:
- Insert N memories via both backends
- Search for each memory by content
- Verify mempalace R@5 >= 95% of native R@5
-
Cascade retrieval parity:
- Build graph with edges in both backends
- Run cascade retrieval from same seed IDs
- Compare result sets and scores
-
Confidence scoring parity:
- Simulate time progression (mock clocks)
- Verify confidence matches within 5% at multiple time points
- Verify category-specific half-lives produce different decay rates
-
Extraction quality:
- Feed sample transcripts through both extractors
- Compare extracted memories (count, categories, content overlap)
-
Maintenance task effects:
- Run link discovery, verify edges created
- Run confidence boost/decay, verify scores updated
- Run pruning, verify low-confidence memories removed
- Run tag inference, verify tags applied
-
Data migration fidelity:
- Create a MemoryGraph with N memories + M edges + C clusters
- Migrate to mempalace
- Verify zero data loss: all memories, edges, tags, clusters, embeddings present
- Verify round-trip: export from mempalace matches original
-
Latency benchmarks:
- Benchmark key operations (search, insert, cascade, extraction)
- Mempalace within 2x of native latency
Part B: Documentation
Files: docs/MEMORY_MIGRATION.md (jcode repo), update docs/MEMORY_ARCHITECTURE.md
-
How to enable mempalace backend:
- Config option
memory_backend = "mempalace"
- Required mempalace setup (
mpr init, embedding model selection)
-
Migration process:
- Step-by-step
jcode memory migrate --to-mempalace
- Expected output and timing
- Verification steps
-
Rollback guide:
- How to switch back to
memory_backend = "native"
- What data is preserved (
.bak files)
- Known limitations of rollback
-
Architecture docs update:
- Dual-backend design diagram
- Data flow for both paths
- Feature parity matrix
-
Troubleshooting:
- Embedding model mismatch
- KG schema migration failures
- Common error messages and fixes
Acceptance Criteria
Tests
Docs
Dependencies
Reference
jcode existing memory tests: crates/jcode-base/src/memory_tests.rs (624 lines)
jcode memory agent tests: crates/jcode-base/src/memory_agent_tests.rs
jcode architecture docs: docs/MEMORY_ARCHITECTURE.md
jcode memory budget: docs/MEMORY_BUDGET.md
Problem
Need to verify that the mempalace-backed memory system produces equivalent or better results compared to native jcode across all key dimensions, and provide user-facing documentation.
Scope
Part A: Integration Tests
Files: New
crates/jcode-mempalace-adapter/tests/Search recall parity:
Cascade retrieval parity:
Confidence scoring parity:
Extraction quality:
Maintenance task effects:
Data migration fidelity:
Latency benchmarks:
Part B: Documentation
Files:
docs/MEMORY_MIGRATION.md(jcode repo), updatedocs/MEMORY_ARCHITECTURE.mdHow to enable mempalace backend:
memory_backend = "mempalace"mpr init, embedding model selection)Migration process:
jcode memory migrate --to-mempalaceRollback guide:
memory_backend = "native".bakfiles)Architecture docs update:
Troubleshooting:
Acceptance Criteria
Tests
Docs
Dependencies
jcode --mode rpc: strict LF-delimited JSONL protocol for IDE / external integrations #12 (MempalaceAdapter)--extension-policy safe|balanced|permissive+ command-level exec mediation #14 (MemoryTool config gate)Reference
jcode existing memory tests:
crates/jcode-base/src/memory_tests.rs(624 lines)jcode memory agent tests:
crates/jcode-base/src/memory_agent_tests.rsjcode architecture docs:
docs/MEMORY_ARCHITECTURE.mdjcode memory budget:
docs/MEMORY_BUDGET.md