Skip to content

Antigravity: per-model quota limits ignored by the probe and quota 429 misclassified as auth_required - #765

Merged
AdamFrisby merged 8 commits into
mainfrom
codeybox/b3b3e8fc
Nov 10, 2026
Merged

AdamFrisby merged 8 commits into
mainfrom
codeybox/b3b3e8fc

Conversation

@AdamFrisby

Copy link
Copy Markdown
Owner

Automated via CodeyBox — work item b3b3e8fcd51e456ca09c96a787194798

Initiated by CodeyBox operator


Co-Authored-By: CodeyBox noreply@codeybox.invalid
🤖 Generated with CodeyBox

AdamFrisby and others added 8 commits November 9, 2026 09:54
…auth

Per-model limit rows (agy 1.5.2 /usage, e.g. Gemini 4 Argon Weekly Limit 0%
2026-11-14T00:16:26Z) now gate gemini-4-argon-high via the most restrictive
applicable row. Quota evidence in stdout result events / TerminalDiagnostic
wins over generic stderr auth text; exit-3 summaries record. Weak
'authentication failed or timed out' alone probes auth before exclusion and
treats a healthy probe as transient.

CodeyBox-Prompt-Revision: 1
Co-Authored-By: CodeyBox <noreply@codeybox.invalid>
Shared AgentFailureClassifier no longer matches quota substrings in raw
stdout prose: stdout only counts inside provider JSON error envelopes
(type error / result-error), and bare numeric shapes (code 429 et al)
additionally require an exhaustion anchor in the same envelope line.
Stderr stays a raw substring match as the CLI's own surface, so the
agy result-ERROR envelope still routes quota ahead of the generic
stderr auth blip. Antigravity detector narrows its code 429 row the
same way. PipelineRunner quota-before-auth guards now share one
TryGetExhaustionClassification helper documenting the trust split.

CodeyBox-Prompt-Revision: 1
Co-Authored-By: CodeyBox <noreply@codeybox.invalid>
…-suppresses-auth

Anchors ExtractTerminalErrorRegion markers (bare code 429 needs a same-line
exhaustion anchor; quota phrases need provider error framing) so tool-output
echoes cannot forge a terminal region. TerminalDiagnostic quota now throws
untrusted (probe-vetoed park), and stream quota only suppresses an auth
signal after live-probe corroboration.

CodeyBox-Prompt-Revision: 1
Co-Authored-By: CodeyBox <noreply@codeybox.invalid>
Antigravity stderr (including folded glog terminal region) is never
trusted provider-surface; untrusted quota requires live-probe
corroboration before suppressing auth. Tighten glog framing to
strong tokens and anchor individual-quota-reached at Detect/Classify.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

CodeyBox-Prompt-Revision: 1
Co-Authored-By: CodeyBox <noreply@codeybox.invalid>
Untrusted (agy stderr/stdout) quota now suppresses auth only on positive
known-exhausted probe corroboration; unknown/missing/healthy probes fall
through to auth handling. Auth signal is read quota-independently since
ClassifyFailure is quota-first and hid genuine auth behind forged quota.
Terminal-diagnostic leg gated the same way.

CodeyBox-Prompt-Revision: 1
Co-Authored-By: CodeyBox <noreply@codeybox.invalid>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…trust

Planning threw quota before checking auth via Detect+default-trusted
TerminalQuotaError, so forged quota prose plus genuine auth parked as
quota and never benched the credential. Use Classify with the fail-closed
gate (auth-first, probe corroboration) and pass ProviderSurfaceMatch
explicitly. Same trust-bit fix in merge; TimeProvider seam in AgentFailure.

CodeyBox-Prompt-Revision: 1
Co-Authored-By: CodeyBox <noreply@codeybox.invalid>
Audit exit-0 terminal quota used Detect plus hardcoded
providerSurfaceMatch:true, so tool-echoed quota prose lifted from the
agy glog parked trusted with the healthy-probe veto disabled, and no
auth gate preceded the throw so forged quota suppressed credential
benching. Use Classify with the fail-closed quota-before-auth gate
mirroring planning/work (auth coexistence needs positive probe
corroboration, else the full auth-failure pipeline runs over the same
terminal evidence), and pass ProviderSurfaceMatch through so agy
evidence stays vetoable.

CodeyBox-Prompt-Revision: 1
Co-Authored-By: CodeyBox <noreply@codeybox.invalid>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…n paths

Initial clean-exit/no-diff terminal evidence now parks untrusted
(healthy-probe veto intact) and fails closed to auth handling on
co-occurring auth without positive probe corroboration, mirroring the
audit gate. Resume-exhaustion auth suppression requires no concurrent
auth signal or positive corroboration, and unmasks quota-first
ClassifyFailure with the quota-independent signal.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

CodeyBox-Prompt-Revision: 1
Co-Authored-By: CodeyBox <noreply@codeybox.invalid>
@AdamFrisby
AdamFrisby merged commit a4e6696 into main Nov 10, 2026
6 checks passed
@AdamFrisby
AdamFrisby deleted the codeybox/b3b3e8fc branch November 10, 2026 03:35
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