Skip to content

Rename Chroma store to unified; migrate + drop stale memory-core #12155

@neo-opus-4-7

Description

@neo-opus-4-7

Context

Sub of #12153 — the core change: make the persist dir a single flat unified store, identical local + cloud; migrate existing data; delete the federated-leftover memory-core folder. Builds on the #12152 SSOT.

The Architectural Reality

  • SSOT ai/config.template.mjs engines.chroma.dataDir (#12152) — flip value …/chroma/knowledge-base…/chroma/unified.
  • Local daemon launch — orchestrator ai/daemons/orchestrator/TaskDefinitions.mjs chroma --path.neo-ai-data/chroma/unified (SSOT-sourced, or kept-in-sync literal per #12152's resilience note).
  • Cloudai/deploy/docker-compose.yml (+ .dev.yml/.test.yml) chroma-data:/chroma/chroma/chroma/unified + the image persist-dir env.
  • One-time migration — relocate the live served store's contents into unified; delete the stale chroma/memory-core/ folder.

The Fix

  • Config SSOT value → unified.
  • Orchestrator --pathunified.
  • Compose volume mounts → /chroma/unified (all three compose files) + persist-dir env.
  • One-shot idempotent migration under ai/scripts/migrations/ (snapshot-protected) to move live data and remove the stale memory-core folder. (structural-pre-flight applies to the new .mjs.)

Contract Ledger

Surface Authority Behavior Fallback Docs Evidence
engines.chroma.dataDir config.template.mjs …/chroma/unified none — SSOT ADR + Configuration.md #12152
cloud chroma volume mount docker-compose*.yml /chroma/unified n/a ADR docker-compose.yml:22
orchestrator chroma --path TaskDefinitions.mjs unified n/a ADR TaskDefinitions.mjs

Acceptance Criteria

  • SSOT + orchestrator --path + all compose files resolve to unified; no knowledge-base/memory-core persist paths remain.
  • Migration relocates live data into unified and deletes the stale memory-core (snapshot first).
  • Post-migration: HealthService topology: 'unified'; KB + MC connect and search green.
  • Depends-on #12152 (SSOT merged first).

Out of Scope

defrag (parent sub 3), release scripts (parent sub 4), docs (parent sub 5).

Related

#12153 (parent), #12152 (depends-on).

Origin Session ID: efd8dc2e-2052-4089-814a-ab22cd8c6a62

Metadata

Metadata

Assignees

Type

No type
No fields configured for issues without a type.

Projects

Status

In Progress

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions