ForgeKitFORGEKIT

Build Log

Engine Self-Improving

June 20, 2026

ForgeKit moved from self-checking to self-improving — the loop now measures whether following the process actually made the engine better, not just whether it was followed.

EngineOSMetricsPrevention
2
new schema blocks (gate_effectiveness, promotion_review)
3
new gate_checks fields (prevented_spin, evidence, missed_issue)
2
new engine-health sections
1
new engine health scoring factors

Timeline

Start
Feedback reviewed
6 evolutions proposed — prioritized gate effectiveness + promotion review as highest leverage
20m
Schema updated
gate_checks gains prevented_spin/evidence/missed_issue; promotion_review block added
35m
_TEMPLATE.json updated
New blocks pre-scaffolded for every future session
60m
build-trends.mjs updated
Gate effectiveness aggregation, promotion pipeline aggregation, engine health scoring factors, console signals
70m
Verified + committed
build:trends runs clean, engine-health.md updated, committed

What shipped

gate_checks[].prevented_spin — bool/null: did this gate catch a real spin?

gate_checks[].evidence — string/null: what spin would have occurred without it?

gate_checks[].missed_issue — string/null: what did the gate fail to catch?

promotion_review block — observations[], promoted[] (with destination+type+reason), not_promoted[] (with reason)

build-trends.mjs §Gate Effectiveness — aggregates per-gate: times run, prevented, clean, uncertain, missed issues

build-trends.mjs §Promotion Pipeline — aggregates promoted/not-promoted across sessions, flags repeated non-promotions

Engine health scoring: +3/proven gate (cap 9), -4/theater gate; +5 for promotion rate ≥60%, -6 for 0 promotions after 3+ sessions

engine-health.md §Gate Effectiveness + §Promotion Pipeline sections with tables

Console signals: theater gate warnings, proven gate confirmations, repeated non-promotion flags

_TEMPLATE.json pre-scaffolded with both new blocks

_SCHEMA.md documented with usage guidance, including 'theater vs proven' framing

From 'did Claude follow the loop?' to 'did following the loop improve the engine?' That's the difference between compliance and compounding.

Session framing — 2026-06-20