feat: migrate call-gemini.sh from gemini CLI to agy (Antigravity CLI)#8
Merged
Conversation
Google sunsets @google/gemini-cli on 2026-06-18; agy (Antigravity CLI) replaces it for Google AI Pro OAuth users. Filename and [gemini] log tag kept for log-contract continuity. - binary resolve: agy + AGY_BIN env (GEMINI_BIN honored as deprecated fallback with WARN) - model flag: -m → --model passthrough - --print-timeout TIMEOUT_S+30s keeps wrapper soft-timeout firing first - rc=0 content classification: agy 1.0.6/1.0.7 swallow network failures (rc=0, empty output) and auth failures (rc=0, OAuth prompt on stdout); classify EMPTY_OUTPUT + AUTH_ERROR from output content (empirically verified 2026-06-10) - install.sh: agy detection + install URL (verified HTTP 200) - pi-ask-gemini.md: wording + EMPTY_OUTPUT in error taxonomy - checksums.sha256: regenerated (19 files) Smoke: E1-E7 all pass on agy 1.0.7 (manual, skill-path sub-agent, first-byte detector, soft-timeout rc=124, EMPTY_OUTPUT/AUTH_ERROR classifiers, 150KB ARG_MAX, cross-provider fan-out). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
- success log: response_len tr strips \n too (A09 convention parity with the soft-timeout out_bytes path) - GEMINI_BIN deprecated fallback gated: accepted only when pointing at an executable named agy (rename-not-revalue); stale gemini paths ignored with sanitized WARN instead of choking on agy-only flags - AUTH_ERROR fingerprint hardened to dual-condition (first-line prefix AND OAuth URL marker) against false positives on model responses - tests: Test 3 detects agy instead of gemini; T13.5/T16.5 inject via AGY_BIN (off the deprecated path); new T17.1/T17.2 regression-guard the rc=0 EMPTY_OUTPUT / AUTH_ERROR classifiers (62/62 pass) Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
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.
Summary
Google sunsets
@google/gemini-clion 2026-06-18;agy(Antigravity CLI) replaces it for Google AI Pro OAuth users. This PR migrates the Gemini-provider wrapper while keeping thecall-gemini.shfilename and[gemini]log tag for log-contract continuity (analyze-log.sh / usage-summary.sh / calibrate-timeout.sh parse those strings).Migration (
1617e14)agycandidates +AGY_BINenv override;GEMINI_BINhonored as a deprecated, gated fallback-m→--model--print-timeout $((TIMEOUT_S+30))skeeps the wrapper soft-timeout (structured marker + rc=124) firing strictly firstsuccess. NewEMPTY_OUTPUTandAUTH_ERRORclassifiers catch them from output content.PTA quality pipeline (
4b3b0a6)Adopted: A09 sanitization parity on
response_len(tr -d ' \n');GEMINI_BINfallback gated to executables actually namedagy(stale gemini paths → sanitized WARN + standard resolution instead of choking on agy-only flags); AUTH fingerprint hardened to dual-condition (first-line prefix AND OAuth URL marker); tests migrated off the deprecated injection path (AGY_BIN) + new T17.1/T17.2 regression guards for the rc=0 classifiers.Test plan
tests/smoke-test.sh— 62/62 pass, 0 skippedmethod=measured), soft-timeout rc=124, EMPTY_OUTPUT / AUTH_ERROR classifiers, 150KB ARG_MAX, cross-provider/pi-askall🤖 Generated with Claude Code