Require meaning-preserving memory writes
This commit is contained in:
parent
021e34362c
commit
d37fa4351a
5 changed files with 58 additions and 6 deletions
|
|
@ -35,6 +35,7 @@ Git history and smoke artifacts carry routine proof. `state/evidence.jsonl` shou
|
|||
- Most of the deterministic legacy translation and retention code is recent compensator cruft from failed attempts to manually clean an exploded state file. Do not preserve it as an earned organ. Architect the state boundary so that bad state cannot enter, and keep only narrow historical migrations for old debris.
|
||||
- Agency is now split into identity crystallization, candidate interventions, and value-pressure inference. That split names the current hard-wired behavior; it does not make the behavior sacred. The desired shape is typed state operations plus derived/model-owned policy, not a permanent sermon generator in maintenance code.
|
||||
- Sleep/distillation must be rewritten with a meaning-preservation contract: concrete subject, claim/question, evidence refs, live tension, and future-action implication survive compression. Bulk can die. Meaning does not get put through the office shredder and called a dream.
|
||||
- Typed memory operations now enforce the first ingress wall for the next brain: `append_distilled_memory`, `propose_memory_distillation`, and `apply_memory_distillation` require a concrete target, claim or question, tension, action implication, and evidence refs unless the operation explicitly tags `evidence:missing`. This does not fix old state. It prevents new summary-only mush from being accepted as memory.
|
||||
- The owner Codex lane is no longer one swollen file; orchestration, runtime/parsing, rendering, and shared helpers are split under `packages/providers/src/owner-codex-*.ts`.
|
||||
- The local Ollama lane is no longer one swollen file; orchestration stays in `packages/providers/src/local-llm-provider.ts` while prompt/rendering, tool-loop helpers, and shared types/constants live under `packages/providers/src/local-llm-*.ts`.
|
||||
- The Discord bot lane is no longer one swollen entrypoint; gateway wiring remains in `apps/bot/src/discord-bot.ts` while command/prompt handlers and Discord-shape support helpers now live under `apps/bot/src/discord-bot-*.ts`.
|
||||
|
|
@ -91,7 +92,7 @@ Git history and smoke artifacts carry routine proof. `state/evidence.jsonl` shou
|
|||
## Likely Next Bounded Move
|
||||
|
||||
- Stop feature work on moderation, mood, agency, and public-lane behavior until the private-state boundary is rebuilt.
|
||||
- First bounded move after the current commit: move memory-maintenance, incubation, sleep, identity, value-pressure, and candidate-intervention outputs behind typed operations instead of direct canonical/working-projection writes.
|
||||
- First bounded move after the current commit: move memory-maintenance, incubation, sleep, identity, value-pressure, and candidate-intervention outputs behind typed operations instead of direct canonical/working-projection writes. Start with memory writes, because the schema now has a real meaning-preservation gate.
|
||||
- Next cuts should delete unstable foundations early after concrete writers move: remove `legacyJsonPath`/working-projection authority, then cut top-level mirror fields and cleanup code that only compensated for those broken boundaries.
|
||||
- Rebuild sleep/distillation before trusting it again. Fixture check: a memory like `AquariumSynthCSharp: Workflow cannot own the body` must survive sleep with its concrete subject, claim, evidence, tension, and implication intact.
|
||||
- Do not build adapters around the JSON projection. That is how the heap learned to stand upright and ask for snacks.
|
||||
|
|
|
|||
|
|
@ -8,6 +8,8 @@ Stop feature work on moderation, mood, and self-state until the state boundary i
|
|||
|
||||
The next priority is to remove JSON from the mutation loop entirely and rebuild the state model so the compensator pile is unnecessary. Agents and scheduled workers should mutate typed CultCache-backed state through explicit tools/APIs, not by editing a whole-state JSON working copy. Sleep and memory distillation must also be redesigned from first principles so they preserve meaning-bearing claims/evidence/tensions instead of collapsing them into generic slogan paste.
|
||||
|
||||
The center of the next pass is prevention, not legacy repair. The old brain can be treated as evidence of a failed boundary. The new brain should reject malformed memory at ingress so the runtime never needs a permanent cleanup bureaucracy to recover basic meaning.
|
||||
|
||||
## Smallest Coherent Architecture
|
||||
|
||||
### Durable State Model
|
||||
|
|
@ -94,6 +96,17 @@ The clean crossing surface is small JSON command payloads, not a whole JSON stat
|
|||
}
|
||||
```
|
||||
|
||||
Memory-bearing operations have a stricter contract than historical projections. A new distilled memory must carry:
|
||||
|
||||
- a concrete target
|
||||
- a summary
|
||||
- at least one claim or question
|
||||
- a tension or counterweight
|
||||
- an action implication
|
||||
- evidence refs, or an explicit `evidence:missing` tag
|
||||
|
||||
If those fields are missing, the operation is invalid. This is the wall that keeps the next iteration from turning into topic sludge and asking cleanup to be its personality.
|
||||
|
||||
```json
|
||||
{
|
||||
"operation": "append_distilled_memory",
|
||||
|
|
@ -205,6 +218,7 @@ Verdict: stop feature work and rebuild this foundation. The rest of the machine
|
|||
|
||||
- Delete cleanup paths whose only job was repairing JSON projection edits, legacy mirrors, keyword sludge, or overgrown runtime residue.
|
||||
- Delete or demote hard-wired agency paths whose real job is turning current heuristic scores into doctrine, advocacy, or speech candidates without an explicit typed-state contract.
|
||||
- Treat legacy brain mush as a migration problem, not the design center. New memory writes must cross the meaning-preserving typed operation schema before they reach CultCache.
|
||||
- Redesign sleep/distillation around an explicit contract:
|
||||
- preserve the claim/question/fascination target
|
||||
- preserve the concrete subject, such as repo, room, lore seam, person, or system
|
||||
|
|
|
|||
Loading…
Reference in a new issue