# My AI coding agent reverted a core feature in one buried line — and its commit messages lied about it

> 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: 2026-07-24 07:51:04+00:00

*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.
