Skip to main content

Module learning

Module learning 

Source
Expand description

Agents proposing how to do better next time.

An agent that discovers something durable — a gotcha, a reliable command, a convention — can write it down for the agents that come after it. That is the whole feature, and the hard part is not capturing them.

§Why there is no approval queue

The obvious design puts a human between a proposal and its use. A sibling project built exactly that, carefully: a proposal format, duplicate detection, impact ratings, a review endpoint and a dashboard queue. After 22 days of real operation it held 88 learnings, every one still pending, none ever approved — and because only approved learnings were injected, not one had ever reached a run.

That is not a discipline failure. Approving buys a diffuse future benefit, rejecting buys nothing, and ignoring costs nothing today, so the rational act is always “later”. A gate whose default action is free will be defaulted forever.

So a learning here applies immediately and expires instead. A wrong one decays rather than compounding, and the human reviews by exception — which is possible because the run history records which learnings were live for each run, so “what was it told when it did that?” is an answerable question.

§Why re-proposal is the confirmation signal, and why echoes do not count

A learning that is genuinely true gets rediscovered. One that was a fluke does not. Counting independent rediscoveries is therefore evidence, unlike an impact rating, which is the agent’s own claim about its own work — the thing the architecture says not to trust.

The subtlety is that a learning being shown to an agent contaminates the signal: re-proposing something you were just reminded of is an echo, not a rediscovery. So duplicates are suppressed while a learning is active — the same behaviour the sibling project needed, for the opposite reason — and only a proposal arriving while the learning is lapsed counts towards confirmation.

Re-exports§

pub use screen::Rejected;
pub use screen::screen;

Modules§

screen
What a learning may say, and what it may not.

Structs§

Learning
A proposal that has been taken up, with its history.
LearningId
Identifier of a learning.
Learnings
Every learning the factory holds, across all agents.
Proposal
What an agent submitted.

Enums§

Impact
How much applying a learning would change a future run.
State
Where a learning is in its life.
Uptake
What happened to a proposal.

Constants§

CONFIRM_AFTER
How many independent rediscoveries make a learning permanent.
MAX_TEXT
Longest a learning may be, in characters.
PROVISIONAL_RUNS
How many of an agent’s runs a provisional learning survives.

Functions§

says_the_same_thing
Decides whether two pieces of prose say the same thing.