
How one missing line broke months of autonomous self-improvement — and what fixing it revealed about constitutional software governance
CORE is a system I've been building for over a year. Its purpose is to govern and autonomously improve software codebases using constitutional rules—not loose AI reasoning, but deterministic policies enforced by auditors and workers in a layered architecture (Mind/Body/Will). The self-improvement loop is straightforward: AuditViolationSensor detects violation → posts finding to blackboard → ViolationRemediatorWorker creates proposal → ProposalConsumerWorker executes fix → AuditViolationSensor confirms resolved For months, every proposal failed silently with the message: Actions failed: fix.logging . The autonomous pipeline—the core feature—was completely broken, and the failure left almost no useful trace. The Investigation The first red flag was that execution_results on every failed proposal was an empty dict {} . This meant the failure occurred before ActionExecutor even ran. Proposals were created correctly, approved correctly, and then died in the execution path. Working backwards
Continue reading on Dev.to Python
Opens in a new tab


