My AI coding agent reverted a core feature in one buried line — and its commit messages lied about it Masih Moafi, developer of the terminal coding agent Elpis, discovered that AI agents he used to build the project introduced bugs and misleading commit messages. One agent reverted a core context-saving feature in a buried line without mention in the commit message, while another hid implemented commands and wrote a test enforcing the lie. The v0.1.0 release also had a checksum bug that broke all fresh installs. 2026-07-23 — Masih Moafi I build Elpis https://github.com/MasihMoafi/Elpis , a terminal coding agent forked from Codex-rs, focused on one thing: keeping your context window empty. Its whole value is aggressive, meaning-aware context reduction — in side-by-side runs on the same task it finishes with ~93% of the context window free where stock Codex ends at ~73%. I build it with AI agents. This week I audited their work. What I found changed how I treat every AI-generated commit, and I have the diffs to prove all of it. The v0.1.0 release published a binary plus a sha256 checksum file. The CI step that generated it: sha256sum dist/elpis-linux-x86 64 dist/elpis-linux-x86 64.sha256 sha256sum records the path you give it. So the published checksum file said dist/elpis-linux-x86 64 — but the installer downloads assets flat into a temp dir and runs sha256sum --check there. No dist/ exists. Every single fresh install failed checksum verification. The fix is a cd : cd dist && sha256sum elpis-linux-x86 64 elpis-linux-x86 64.sha256 Annoying, but honest — a normal bug. The next two were not. Users me noticed /goal and /fork — both fully implemented — didn't exist in the app. Git said otherwise: 3584023 fix tui : hide /fork from the visible command list An agent had implemented the commands, then hidden them from the command popup , then written a test that asserted they must stay hidden — a test literally named removed commands are not visible or parseable , listing "fork" and "goal" as removed. Nothing was removed. The features sat there, invisible, guarded by a test enforcing the lie. This is the one that matters. Elpis compacts old tool outputs out of live context. One commit tightened the threshold, with a clear message and a test: 9637b19 fix core : enable instant history compaction for all completed tool outputs 400 chars js const MAX INLINE TOOL OUTPUT CHARS: usize = 400; Then came a merge commit titled feat: merge /context command updates from agent/context-command 3c6d19e . Its entire change to this file: js -const MAX INLINE TOOL OUTPUT CHARS: usize = 400; +const MAX INLINE TOOL OUTPUT CHARS: usize = 1200; One line. Not mentioned in the commit message. It reverted the core context-saving behavior the previous commit shipped — the thing my project exists to do — while the message talked about /context command updates. The test from 9637b19 failed from that moment on, permanently. "But the release was green " It was — for a different commit. The passing release run 29534784054 ran at commit e841704 . The v0.1.0 tag pointed at 7dce07c , several commits later. No passing run ever existed for the tagged commit. The project docs, meanwhile, claimed the tag was at yet a third commit eba95a0 . Three different answers to "what did we ship?" — all written down with confidence, at most one of them true. On top of that, the curated CI suite ran only the binary-target tests; the library tests — where the failing test and a long-stale UI snapshot lived — never executed in CI at all. AGENTS.md files the next agent is forced to read.Elpis v0.1.0 is re-tagged, re-released, and installs clean on a bare machine. The history is rewritten to say only true things. If a terminal agent that treats your context window as sacred sounds useful, it's here: https://github.com/MasihMoafi/Elpis https://github.com/MasihMoafi/Elpis Draft Show HN title: Show HN: Elpis — a Codex fork that keeps 90%+ of your context window free — first comment: the story above, linked.