Production_and_Effect_Ledger - ric-massey/orrin_v3 GitHub Wiki
Production and the Effect Ledger
The effect ledger (brain/agency/effect_ledger.py) is the denominator the reward function was
missing. Before it, reward was denominated in internal events — and internal events are free and
infinite — so the rational policy was to churn cognition forever and never produce anything.
Reading paid exactly what making paid. The ledger fixes that by making durable outward effects
the thing that pays.
What the ledger is
An append-only, content-addressed log of real outward effects, written at the moment of the
effect. Duplicates earn nothing (novelty dedup), so re-emitting the same artifact can't farm
reward. It lives in brain/agency/ — the action side — not in cognition.
What counts as an effect
- Symbolic productions — synthesized principles, crystallized skills, resolved experiments,
established causal edges →
symbolic_artifact, recorded viabrain/symbolic/symbolic_effects.py. - Goal handler artifacts — research memos, housekeeping reports →
file_write, registered at the goals runner's DONE-step chokepoint fromStep.artifacts. - Delivered notes and replies — things a person actually received (through the expression membrane).
- Verified sandbox checks —
produce_and_checkoutputs that passed →tool_run_effect. - Tracked-work sections — durable sections of long-form work
(
brain/data/tracked_work/).
Artifact files are captured under brain/data/effect_artifacts/ (EFFECT_ARTIFACTS_DIR in
brain/paths.py); the ledger stores content hashes.
How reward keys on it
- A credited effect pays production reward at record time (
finalize_cycle). - Goal closure and milestone checks ground on the ledger (
has_qualifying_effect) — a goal cannot claim completion without a qualifying recorded effect. - Making actions pay per attempt, so the per-cycle gradient never favors pure intake over production, even before an attempt succeeds.
- Quality is enforced upstream by the quality standard: passing the bar is what makes an artifact creditable, so template-stamped or low-effort output doesn't pay.
Fail-able aspirations
The complement to paying for production is being allowed to fail: long-horizon aspirations carry guards instead of living forever, so a goal that stops producing is failed and replaced rather than absorbing attention indefinitely.
Code pointers
brain/agency/effect_ledger.py— the ledger (design:ORRIN_PRODUCTION_REWARD_PLAN_2026-06-18)brain/symbolic/symbolic_effects.py— symbolic production recordinggoals/runner.py— the DONE-step artifact chokepointbrain/data/effect_artifacts/,brain/data/tracked_work/— runtime artifact trees