supercode-cli 0.4.13

supercode — a lightweight, fully-customizable AI coding agent CLI in Rust. Any model via OpenRouter; natively continues Claude Code and Codex sessions.
# Unified frontend compatibility baseline

These files are the raw stdout bytes emitted by the built `supercode` binary
at commit `74d5950` (`fix(sdk): preserve agent error and context semantics`).
That commit is the immediate functional parent of `e4aea53`, the first commit
which adds the canonical unified frontend runner.

The executable capture is `unified_frontend_compat_cli.rs`. To independently
replay the historical binary against these bytes, build `74d5950` and run:

```sh
CARGO_TARGET_DIR=/path/to/74d5950/target-74d5950 \
  CARGO_INCREMENTAL=0 CARGO_PROFILE_DEV_DEBUG=0 \
  cargo build -p supercode-cli --bin supercode
SUPERCODE_COMPAT_BIN=/path/to/74d5950/target-74d5950/debug/supercode \
  cargo test -p supercode-cli --test unified_frontend_compat_cli
```

The proof was independently replayed from detached worktree HEAD
`74d595045a0e0382cbe82db3c8148e9dd6460e38`. Its locally built executable had
SHA-256 `6ca9a234e3faaff28a0683dc028d6c8cffd87c528d35a2bddf6dc1d596267753`;
all three tests passed without regenerating any fixture.

The deterministic provider response, stdin requests, temporary config, and
environment normalization are all in the test. No timestamps, random session
identifiers, filesystem paths, ports, or terminal capabilities occur in the
expected output.

Text, JSON, NDJSON, RPC, and stderr are compared exactly. ACP has two bounded,
reviewed residues. Protected-review commit `7881182` introduced the first:
`agentCapabilities.sessionCapabilities.resume` changed from invalid boolean
`true` to the ACP v1 schema's empty capability object `{}` without changing
`protocolVersion`. SUP-48 introduced the second: the additive
`agentCapabilities._meta.supercode.frontend` negotiation object used for
lossless SDK history/event attachment. SUP-52 extends that same negotiated
object with the transport-neutral `lease`, `take_control`, and `heartbeat`
methods; it does not change baseline ACP behavior. `acp.current.stdout` pins
the complete current bytes. SUP-59 normalizes that additive extension onto the
generated `supercode.frontend.contract.v2` method and event names while retaining
the earlier spellings as server-side compatibility aliases; ordinary ACP
`session/*` behavior and the immutable historical baseline remain unchanged.
The test removes exactly that object, restores the corrected
resume field and release version, and requires every remaining byte to equal
the immutable historical baseline. This records why SUP-45 dev/05 v1 cannot
honestly claim universal byte identity; the residue list must not grow
silently.