chore(cli-version): verify agy against 1.1.20 - #935
Merged
Conversation
kaizhou-lab
enabled auto-merge (squash)
August 25, 2026 18:08
kaizhou-lab
disabled auto-merge
August 25, 2026 18:09
Gate B (live e2e): 7/7, 171.02s, against a manifest-downloaded 1.1.20 whose sha512 was checked before it ran. The suite log reports only version=1.1.20. Gate C (release notes): CLEAR, read from 'agy changelog' on the candidate binary rather than the web page, which has been frozen at 1.1.17 since 08-22. A retracted A/B. 1.1.20's notes say print mode stopped treating benign tool errors and permission denials as fatal, so a comparison was run against what was believed to be a retained 1.1.19 binary. The two runs did differ -- result.status ERROR vs SUCCESS -- but the attribution does not hold: that binary rewrote itself mid-probe (mtime 02:02:48, probe at 02:02, size now byte-for-byte 1.1.20's). agy self-updates ANY copy of itself that is executed, including one in a temp directory under a version-named path. The path name is not a pin. The ERROR may be 1.1.19's behaviour or an artifact of a binary rewritten under a running process, and nothing separates them; it is not repeatable either, since the manifest now serves 1.1.20. Both captures are kept in the record under neutral names rather than the misleading version-labelled ones. What is verified by reading rather than by probe: translate.rs:80-86 maps any result.status other than SUCCESS to TurnOutcome::Failed, so that field -- not the exit code the note describes -- is our channel. conn.rs:805 consults the exit code only when no terminal frame arrived, and result was emitted in both runs. The other permission note is scoped to agy's default review mode, which we never run in: build_argv always passes --dangerously-skip-permissions (argv.rs:76) and gates each call in the PreToolUse hook bridge instead. Stated with its limit -- gate B does not exercise that bridge at all. No flag was removed: --help adds mic-serve and drops nothing, models --help is unchanged, and all nine flags build_argv emits are still present. Record: ~/aion/protocols/samples/antigravity-cli/1.1.20/
kaizhou-lab
force-pushed
the
chore/bump-agy-0120
branch
from
August 25, 2026 18:11
be278b0 to
52dfafa
Compare
kaizhou-lab
enabled auto-merge (squash)
August 25, 2026 18:11
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Moves
VERIFIED_AGY_VERSIONfrom 1.1.19 to 1.1.20.agy changelogon the candidate binaryWhat supports this bump
Gate B, 7/7 against a manifest-downloaded 1.1.20 whose sha512 was checked before it ran. The suite log reports only
version=1.1.20, so it cannot be a green against a different binary.Gate C read from
agy changelogon the candidate itself, captured aschangelog-from-cli.txt. The rendered web page is no longer the source — it has been frozen at 1.1.17 since 2026-08-22.A retracted A/B
1.1.20’s notes say print mode stopped "treating benign tool execution errors and permission denials as fatal run failures". We drive that surface and deny tools routinely, so an A/B was attempted against what was believed to be a retained 1.1.19 binary. That attribution does not hold, and the comparison is retracted.
The two runs did differ —
result.statuswasERRORin one andSUCCESSin the other — but the "1.1.19" binary rewrote itself mid-probe. Its mtime is02:02:48, the probe ran at02:02, and its size is now byte-for-byte 1.1.20’s:agy self-updates any copy of itself that is executed, including one in a temp directory under a version-named path. The path name is not a pin. So the
ERRORmay be 1.1.19’s behaviour or an artifact of a binary being rewritten under a running process, and nothing here separates them. It is not repeatable either: the manifest now serves 1.1.20 and no 1.1.19 binary exists here or on npm.Both captures are kept in the record as
probe-benign-tool-error-run-{a,b}.ndjson, renamed off their misleading version labels.What is verified, by reading rather than by probe
translate.rs:80-86maps the terminal frame, so aresult.statusother thanSUCCESSbecomes a failed turn for the user whatever emits it:And the exit code the note talks about is not our channel:
conn.rs:805consults it only when no terminal frame arrived (if !saw_terminal), andresultwas emitted in both runs.The other permission note does not reach us
We never run in that mode:
build_argvalways passes--dangerously-skip-permissions(argv.rs:76), because agy cannot prompt headlessly, and AionUi gates each call in its own PreToolUse hook bridge. Stated limit: gate B does not exercise that bridge — its only permission test is claude’s — so this rests on the argv and the CLI’s own scoping, not on a live run.Flag surface
--help1.1.19 → 1.1.20 addsmic-serveand removes nothing;models --helpis unchanged; all nine flagsbuild_argvemits are still present.Tests
Pinned assertions moved with the constant, including the literal verified-release case.
cargo test -p aionui-session --lib cli_version: 14/14. Clippy clean, fmt clean.Record:
~/aion/protocols/samples/antigravity-cli/1.1.20/Constants and record only — no source change.