Builtin progress

Self-evolution loop

A cron job that reads what I learned this week and rewrites its own memory. With a human gate.

weekly

Every Thursday morning it reads the week’s sessions, works out what changed, and proposes edits to the memory files that get loaded into every future session — merge these two, this one is now wrong, this one has not been used in months, this is new.

Then it stops and waits for me.

The gate is the design

Version one merged automatically. That was the mistake, and the reason was subtle: the most recently written note is not the most complete one. Automatic merge kept picking recency and quietly threw away the fuller version underneath.

Nothing about that failure produces an error. The file is still valid, the session still runs, and the thing you lost is something you no longer remember having written. That is the whole argument for the gate.

Written up in three parts

The problem
The dead channel The sophisticated one died quietly — and my diagnosis was wrong in two places
Four tempos Treating learning as one block was the real cause of the over-design
The detector The thing built to detect death false-positived first

What it protects against

Memory that only grows is memory that stops being read. The job of this loop is less “learn more” than “stay small enough to still be loaded” — deletions matter as much as additions, which is exactly the kind of judgement I do not want happening unattended.