Skip to content

Learning happens in the memory graph, not by fine-tuning and not by editing the KB

Status: Accepted (2026-07-14)

When a human edits Gaby's draft before sending (or a follow-up shows the outcome), the difference is distilled into typed, provenance-tiered memory-graph writes — style deltas onto the workspace style node, factual corrections as proposed facts, recurring policy corrections as resolution patterns that stay provisional until independently seen twice. We deliberately rejected the two obvious alternatives: fine-tuning (opaque, per-install model drift, costly to audit or undo, and impossible for BYO-key installs) and auto-editing the knowledge base (the KB is human-authored ground truth with citation semantics; letting inferred content mutate it corrupts the very thing citations point at). Memory-graph writes are inspectable, tiered by trust, decay-able, and reversible per node (gaby memory forget) — learning stays data, not weights.

Consequences

  • Every learning signal must be expressible as nodes/edges in the existing taxonomy; if it can't, the taxonomy is extended — the answer is never "write it into the KB" or "collect it for training".
  • Answer-time behavior change requires the loop to read these nodes (style → reply authoring, patterns → planner envelope); a learning feature that only writes is a bug, not a feature.
  • Distilled content is quarantined by blast radius, tiered per the v0.5 plan's resolved decision 4: patterns (which steer investigations) need a second independent sighting to activate, and operator-promoted patterns are never machine-demoted; facts and style auto-apply on first sighting because their blast radius is bounded — capped planner context and reply voice, never actions — and every write stays inspectable (Settings → Memory) and reversible (gaby memory forget).
  • This supersedes ARCHITECTURE.md §22.10's "only an operator promotes" for distiller/follow-up pattern writes (see the v0.5 note there).