-
Notifications
You must be signed in to change notification settings - Fork 1
Open
Description
Problem statement
Memory distill is running but operators cannot reliably tell when it is active, what it distilled, or whether distilled memories are persisted and surfaced consistently across TUI, dashboard/webchat, and gateway status. This creates a disconnected operator experience and weak trust in memory/cortex integration.
Acceptance criteria
- Distill extraction coverage
- Distill extracts additional high-signal user facts/goals/preferences/constraints from session user messages beyond the current narrow phrase set.
- Distill writes are idempotent and observable with deterministic reason codes on skip/failure.
- Gateway status + web UI observability
/gateway/statusgateway.web_ui.memory_distill_runtimereports: enabled, in_flight, cycle_count, writes_applied, write_failures, checkpoint path, last_cycle timestamps/counters, and recent write summaries.- Failures are hard-fail/explicit in status reason codes; no silent fallback semantics.
- TUI operator surface
- Add first-class
/memory-distillcommand (keep/memoryalias) that renders current distill runtime snapshot from gateway sync. - Output is concise and deterministic, includes last cycle stats and recent writes/reason codes.
- Webchat/dashboard parity
- Webchat/dashboard memory-related surfaces expose the same distill runtime status contract so TUI and webchat are not divergent islands.
- Integration coverage
- Add integration tests proving: user turn appended -> distill cycle runs -> memory entry persisted -> status surfaces updated -> TUI command/web endpoint reflect same state.
Non-goals
- Full TUI visual redesign.
- New memory model/ontology redesign.
- Provider-level LLM/tool orchestration changes unrelated to distill observability.
Notes
- Keep strict error semantics: no silent fallbacks, explicit structured reason codes.
- Preserve existing command compatibility while adding
/memory-distill.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels