{"slug": "my-ai-coding-agent-reverted-a-core-feature-in-one-buried-line-and-its-commit-it", "title": "My AI coding agent reverted a core feature in one buried line — and its commit messages lied about it", "summary": "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.", "body_md": "*2026-07-23 — Masih Moafi*\n\nI build [Elpis](https://github.com/MasihMoafi/Elpis), a terminal coding agent forked\n\nfrom Codex-rs, focused on one thing: keeping your context window empty. Its whole\n\nvalue is aggressive, meaning-aware context reduction — in side-by-side runs on the\n\nsame task it finishes with ~93% of the context window free where stock Codex ends\n\nat ~73%.\n\nI build it *with* AI agents. This week I audited their work. What I found changed\n\nhow I treat every AI-generated commit, and I have the diffs to prove all of it.\n\nThe v0.1.0 release published a binary plus a sha256 checksum file. The CI step that\n\ngenerated it:\n\n```\nsha256sum dist/elpis-linux-x86_64 > dist/elpis-linux-x86_64.sha256\n```\n\n`sha256sum`\n\nrecords the path you give it. So the published checksum file said\n\n`dist/elpis-linux-x86_64`\n\n— but the installer downloads assets flat into a temp dir\n\nand runs `sha256sum --check`\n\nthere. No `dist/`\n\nexists. **Every single fresh install\nfailed checksum verification.** The fix is a\n\n`cd`\n\n:\n\n```\n(cd dist && sha256sum elpis-linux-x86_64 > elpis-linux-x86_64.sha256)\n```\n\nAnnoying, but honest — a normal bug. The next two were not.\n\nUsers (me) noticed `/goal`\n\nand `/fork`\n\n— both fully implemented — didn't exist in\n\nthe app. Git said otherwise:\n\n```\n3584023 fix(tui): hide /fork from the visible command list\n```\n\nAn agent had implemented the commands, then *hidden them from the command popup*,\n\nthen **written a test that asserted they must stay hidden** — a test literally\n\nnamed `removed_commands_are_not_visible_or_parseable`\n\n, listing `\"fork\"`\n\nand\n\n`\"goal\"`\n\nas removed. Nothing was removed. The features sat there, invisible,\n\nguarded by a test enforcing the lie.\n\nThis is the one that matters. Elpis compacts old tool outputs out of live context.\n\nOne commit tightened the threshold, with a clear message and a test:\n\n```\n9637b19 fix(core): enable instant history compaction for all completed tool outputs >400 chars\njs\nconst MAX_INLINE_TOOL_OUTPUT_CHARS: usize = 400;\n```\n\nThen came a merge commit titled `feat: merge /context command updates from`\n\n(\n\nagent/context-command`3c6d19e`\n\n). Its entire change to this file:\n\n``` js\n-const MAX_INLINE_TOOL_OUTPUT_CHARS: usize = 400;\n+const MAX_INLINE_TOOL_OUTPUT_CHARS: usize = 1200;\n```\n\nOne line. Not mentioned in the commit message. It reverted the core\n\ncontext-saving behavior the previous commit shipped — the thing my project exists\n\nto do — while the message talked about `/context`\n\ncommand updates. The test from\n\n`9637b19`\n\nfailed from that moment on, permanently.\n\n\"But the release was green!\" It was — for a different commit. The passing release\n\nrun (`29534784054`\n\n) ran at commit `e841704`\n\n. The `v0.1.0`\n\ntag pointed at\n\n`7dce07c`\n\n, several commits later. No passing run ever existed for the tagged\n\ncommit. The project docs, meanwhile, claimed the tag was at yet a *third* commit\n\n(`eba95a0`\n\n). Three different answers to \"what did we ship?\" — all written down\n\nwith confidence, at most one of them true. On top of that, the curated CI suite\n\nran only the binary-target tests; the library tests — where the failing test and\n\na long-stale UI snapshot lived — never executed in CI at all.\n\n`AGENTS.md`\n\nfiles the next agent is forced to read.Elpis v0.1.0 is re-tagged, re-released, and installs clean on a bare machine. The\n\nhistory is rewritten to say only true things. If a terminal agent that treats your\n\ncontext window as sacred sounds useful, it's here:\n\n[https://github.com/MasihMoafi/Elpis](https://github.com/MasihMoafi/Elpis)\n\n*Draft Show HN title:* **Show HN: Elpis — a Codex fork that keeps 90%+ of your\ncontext window free** — first comment: the story above, linked.", "url": "https://wpnews.pro/news/my-ai-coding-agent-reverted-a-core-feature-in-one-buried-line-and-its-commit-it", "canonical_source": "https://dev.to/masihmoafi/my-ai-coding-agent-reverted-a-core-feature-in-one-buried-line-and-its-commit-messages-lied-about-dcn", "published_at": "2026-07-24 07:51:04+00:00", "updated_at": "2026-07-24 08:04:14.338298+00:00", "lang": "en", "topics": ["ai-agents", "developer-tools", "ai-safety"], "entities": ["Masih Moafi", "Elpis", "Codex-rs"], "alternates": {"html": "https://wpnews.pro/news/my-ai-coding-agent-reverted-a-core-feature-in-one-buried-line-and-its-commit-it", "markdown": "https://wpnews.pro/news/my-ai-coding-agent-reverted-a-core-feature-in-one-buried-line-and-its-commit-it.md", "text": "https://wpnews.pro/news/my-ai-coding-agent-reverted-a-core-feature-in-one-buried-line-and-its-commit-it.txt", "jsonld": "https://wpnews.pro/news/my-ai-coding-agent-reverted-a-core-feature-in-one-buried-line-and-its-commit-it.jsonld"}}