Coldfix

A note can be wrong. A passing check can't hide it.

Agent memory usually means saving what someone wrote down and reading it back later. Coldfix adds the step those systems skip: before anything becomes a lesson, a check has to prove the fix.

Stored notes don't get checked

A memory note is text. Nothing runs it. A wrong note looks exactly like a right one, and it stays in memory until someone notices and deletes it. Agents read both with the same trust.

A stored note

  • Written from whatever the agent concluded
  • Recalled whether or not it's true
  • Stays until someone removes it

A Coldfix lesson

  • Written from a mistake that was corrected
  • Comes with a check that fails on the mistake
  • Rechecked weekly, withdrawn when it stops holding

A lesson has to pass first

Coldfix pairs each mistake with the commit that had it and the commit that fixed it. It replays the lesson's check on clean copies of both. The lesson is proven only when the check fails on the broken commit with the expected failure and passes on the fixed one.

When the fix came from a real repair, such as a reviewed pull request, there is a third run. Coldfix reverse-applies the repair's code change and the check must fail again. That catches a test that passes no matter what.

RunCode under testMust be
BeforeThe commit with the mistakeFAIL
AfterThe commit with the fixPASS
ReversedThe fixed commit with its fix taken back outFAIL

If any run disagrees, the lesson stays a proposal. A mistake without a check that proves it is not a lesson.

What never becomes a lesson

  • Flaky failures. Failures that pass on a retry, or that come from the environment rather than the code, are dropped before drafting.
  • A transcript score on its own. A scored conversation is a lead to look at, not evidence.
  • A review finding on its own. The finding has to be matched to the fix and replayed.
  • A check that can't fail. If it passes on the broken commit, the replay rejects it.

Enforced, not just remembered

A proven lesson is delivered to the repository as a rule with its check. The pre-push hook runs every delivered check and blocks a push that brings the mistake back. The same check runs in CI on pull requests. Agents don't have to remember the lesson for it to hold.

Every lesson keeps a receipt: the commits and trees it ran on, the expected failure, a digest of the check and the result of each run. You can always see why it exists.

See each step, from failure to delivered lesson.

How it works