fix(antigravity): humanize raw model id labels and add localization fallback - #1580
Conversation
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 1f9ea14422
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| if !trimmedFallback.isEmpty, fallback != key { | ||
| return fallback | ||
| } | ||
| return codexBarLocalizationFallback(for: key) ?? key |
There was a problem hiding this comment.
Apply suffix fallback before the English guard
When the app is already using en.lproj or the English bundle cannot be resolved, the guard above exits via return trimmed.isEmpty ? key : value before this new fallback is reached. That means the intended safety net still does not cover the default-English/missing-English-key case: missing usage_percent_suffix_left or usage_percent_suffix_used will continue to render the raw key instead of left/used. Consider applying codexBarLocalizationFallback(for:) in the guard's else path as well.
Useful? React with 👍 / 👎.
|
Codex review: needs maintainer review before merge. Reviewed June 18, 2026, 12:07 PM ET / 16:07 UTC. Summary Reproducibility: yes. source inspection gives a high-confidence path by constructing an Antigravity snapshot with a distinct quota whose Review metrics: 2 noteworthy metrics.
Merge readiness Overall follows the weaker of proof and patch quality, so missing proof can cap an otherwise strong patch. Rank-up moves:
Risk before merge
Maintainer options:
Next step before merge
Security Review detailsBest possible solution: Land this focused fallback after exact-head CI passes so distinct Antigravity quota windows show readable generated labels only when the backend did not provide a custom label. Do we have a high-confidence way to reproduce the issue? Yes: source inspection gives a high-confidence path by constructing an Antigravity snapshot with a distinct quota whose Is this the best way to solve the issue? Yes: the PR is the narrow maintainable fix because it only generates a readable label for empty/raw labels and preserves backend-provided custom labels. The merged backend display-name PR remains intact and only partially overlaps this fallback. AGENTS.md: found and applied where relevant. Codex review notes: model internal, reasoning high; reviewed against 73b35b0f8d2e. Label changesLabel justifications:
Evidence reviewedWhat I checked:
Likely related people:
What the crustacean ranks mean
Shiny media proof means a screenshot, video, or linked artifact directly shows the changed behavior. Runtime, network, CSP, and security claims still need visible diagnostics. How this review workflow works
|
1f9ea14 to
aa16c0e
Compare
c6e9d4f to
5ac5692
Compare
|
Post-merge rebase proof for exact head
Exact-head CI is running. |
5ac5692 to
5acca2a
Compare
|
Final post-pace rebase proof for exact head
Exact-head CI restarted. |
Co-authored-by: Brandon Charleson <b.charleson1@gmail.com>
5acca2a to
1c4b46b
Compare
|
Workflow-only final rebase: exact head is now |
Summary
Antigravity quota responses can expose raw model identifiers as display labels. This change humanizes generated labels while preserving custom server-provided labels.
The original unrelated localization fallback was removed. Compatibility targets the current Antigravity response shape only.
Public model gate
Test fixtures use publicly documented Google model identifiers such as
gemini-3-pro-previewandgemini-2.5-flash. No unannounced model identifiers are included.Proof
Exact rebased head:
c6e9d4faf97b66ec9364816e41a04f84b52bfefamake checkpasses.