feat(chief): import pasted assistant memories and undo complete batches

Merged
TE
3d ago
+189-15

Pasted summaries from assistants without exports can now be imported with memory import-from text:FILE dry-run|write --origin grok-bot|muse|dots|instinct (text:- also accepts stdin). Paragraphs become origin-tagged memory notes, with stable deduplication and the existing secret filter.

An import spanning several sources now keeps distinct backups and Undo restores the entire batch. Includes a small synthetic ChatGPT export ZIP for the GUI verification.

Leo’s request: "we should do that, and have flows for dudes coming from grokbot/muse/dot/instinct". Then "let's do all these".

Validation: Rust formatting passed. Fleet memory tests are being run at the exact head; results will be attached before handoff. The GUI is a separate dependent PR.

🤖 Generated with Codex

Agent session: agent session


Autofix with [code]smith
Open in [code]smith · Need help on this PR? Tag @codesmith-bot with what you need.


Summary by cubic

Lets Chief import pasted assistant summaries that have no export API and makes undo restore a whole batch even when it came from several sources.

  • memory import-from accepts text:FILE (or -/stdin) with --origin grok-bot|muse|dots|instinct; paragraphs become origin-tagged note items with stable keys so re-runs deduplicate, and the existing secret filter still applies.
  • undo now groups all source rows sharing a batch, restores the first backup, and removes all keys/records at once instead of leaving a partial tail.
  • Backups use millisecond timestamps with a numeric suffix to avoid collisions.
  • Adds a synthetic ChatGPT export ZIP fixture to verify the GUI import path.