Skip to content

front kit: a one-shot answer's stdout is base64 - #647

Merged
jaredLunde merged 2 commits into
mainfrom
jared/front-kit-base64-stdout
Oct 31, 2026
Merged

jaredLunde merged 2 commits into
mainfrom
jared/front-kit-base64-stdout

Conversation

@jaredLunde

Copy link
Copy Markdown
Contributor

Since #601 every exec answer carries `stdout` and `stderr` as standard base64, but the front conformance kit still searched a one-shot answer's `stdout` as plain text. A correct answer such as `{"exit_code":0,"stdout":"b2stLi4="}` therefore failed the "a refused extension is 400 or 422" check (case `stream`).

The kit now decodes `stdout` before looking for the marker, and bytes that are not base64 count as not-ran. The in-repo reference front's one-shot body is base64 too, and a new fault mode (`OneShotStreamAnswers`) answers a malformed `stream` one-shot, so the reference run covers a successful one-shot answer.

Test: `cargo test -p beyond-agent --test it exec_front_conformance` (6 passed, 0 failed). `cargo clippy -p beyond-agent --tests`: no warnings. `cargo fmt --check`: clean.

🤖 Generated with Claude Code

The kit judged a one-shot answer by finding the marker in `stdout` as plain text. Since #601
every exec answer carries `stdout` and `stderr` as standard base64, so a correct answer
(`{"exit_code":0,"stdout":"b2stLi4="}`) was broken for not being plain text. The kit now decodes
`stdout` before looking for the marker; bytes that are not base64 count as not-ran.

The in-repo reference front's one-shot body is base64 too, and a new fault mode answers a
malformed `stream` one-shot, so the reference run covers a successful one-shot answer.

Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LBGuEqSTj8eEfjuLH6GSmD
@jaredLunde
jaredLunde added this pull request to the merge queue Oct 31, 2026
Merged via the queue into main with commit 3aadf31 Oct 31, 2026
23 checks passed
@jaredLunde
jaredLunde deleted the jared/front-kit-base64-stdout branch October 31, 2026 20:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant