fix(server): allow slow Antigravity browser preflights#25211

merged1
main
maria/takeover-pr-22804
opened17d agobyMmaria
View on GitHubTwo-way sync enabledPR last imported 3d ago

Problem

Antigravity session setup rejects a valid browser-suppression helper when cold or busy Node startup exceeds five seconds. Current main still reproduces this failure with a six-second helper delay.

Change

Allow 30 seconds for the existing preflight. Keep verifying every launch in its effective environment, with the same output validation and failure handling; success caching from the original is unnecessary for this fix.

Verification

  • Both added regressions fail against main: delayed success and the 30-second timeout boundary. With the fix, 32 existing-file auth-support and driver tests pass, including retry after timeout.
  • GitHub CI is green on 947a265527, rebased on main 3d78e91, including build/typecheck, lint, all server test shards, and Macroscope correctness. Macroscope requests Maria's normal human review of the changed default.
  • Blacksmith vp run check:changed passes formatting, lint, both knip passes, generated GraphQL validation, affected typechecks, and focused tests.
  • Real Linux install: Google's pinned Antigravity 1.3.0 archive matches SHA-256 9fb60956af0a9d76220a4db91ca9ac88e2a2372ad68f985ab5fceace6b825b96. The same Node wrapper delays the real browser helper six seconds on both revisions. Main fails before profile creation; this branch proceeds through the actual T3 ACP runtime and initializes the real provider:
text
1before: AcpTransportError: Antigravity browser suppression verification timed out.
2after: profile preflight succeeded; private profile created
3ACP initialize: {"name":"antigravity-acp","title":"Google Antigravity","version":"1.3.0"}
4loadSession: true

Runtime transcript. Independent reviews of 947a265527 found no issues.

No UI code changes. Unverified: authenticated session open through a client, natural cold-start conditions, Windows and macOS. The delay is injected; the Node helper and Google provider executable are real.

Takeover

Replaces #22804, with thanks to @lnieuwenhuis for the original implementation.

Built with GPT-6.1-Sol in the Codex harness on T3 Code.

Checks

22 successful · 18 skipped
All checks passed
947a265
Synced from GitHub

Explain Change →

No actionable comments were generated in the recent review.

Walkthrough

Antigravity browser-suppression verification now has a 30-second timeout instead of a five-second timeout. Tests cover a preflight that completes within the new limit, a preflight that reaches the timeout, and a subsequent preparation attempt.

Changes: Antigravity browser preflight

Layer / File(s)Summary
Preflight timeout and test coverage
apps/server/src/provider/antigravityAuthSupport.ts, apps/server/src/provider/antigravityAuthSupport.test.ts
The verification timeout increases to 30 seconds. Tests check completion after 20 seconds, timeout at 30 seconds, and a new preflight on a subsequent profile preparation.

Estimated code review effort: 2 (Simple) | ~10 minutes

Change: Bug fix

Possibly related issues

  • pingdotgg/t3code#20529 — Reports browser-suppression preflight failures at the five-second timeout.
  • pingdotgg/t3code#29379 — Reports a browser-suppression preflight timeout, which this change addresses; the reported session/new hang and sign-in diagnostics are separate.

Suggested reviewers: medy17

Merge Risk: External image Minimal · up to 947a2

The longer preflight timeout is ready to merge after normal checks.

Pre-merge checks: Passed 4

Check nameStatusExplanation
Title checkPassedThe title clearly identifies the Antigravity preflight timeout change.
Linked Issues checkPassedCheck skipped because no linked issues were found for this pull request.
Out of Scope Changes checkPassedCheck skipped because no linked issues were found for this pull request.
Description checkPassedThe description is mostly complete. It explains the problem, change, and verification. Add a Scope and approval section with an approved issue or discussion, or explain why the fix qualifies for the s…
Full details: Description check

Explanation

The description is mostly complete. It explains the problem, change, and verification. Add a Scope and approval section with an approved issue or discussion, or explain why the fix qualifies for the small-fix exception.

Finishing Touches

Generate docstrings

  • Commit to this branch
  • Create a new PR
Generate unit tests (beta)

  • Commit to this branch
  • Create a new PR
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts
External image Recent review info

External image Run configuration

External image Commits

Reviewing files that changed from the base of the PR and between 4a087861d0764654c0e9f450f40015aea03d50a7 and 947a265527e219fe369708a6cd1e59753ee005d0.

External image Files selected for processing: 2

  • apps/server/src/provider/antigravityAuthSupport.test.ts
  • apps/server/src/provider/antigravityAuthSupport.ts

Included review availability: This review used your included allowance. Your plan provides up to 10 included reviews per hour; 0 remain after this review.

Synced from GitHub

Approvability

Verdict: Needs Human Approval

Macroscope's review found this PR requires human approval — This targeted server fix increases the production Antigravity browser-preflight timeout from 5 to 30 seconds and adds focused regression tests. The runtime change is narrow, but it changes a product default and warrants human review.

No code changes detected at 947a265. Prior analysis still applies.

You can add or adjust custom eligibility rules. Learn more.

Synced from GitHub

Thread transfer impact

✅ Thread transfer remains within every enforced ceiling.

ProviderMetricMain baselineThis PRImpactPR ceiling
CodexTotal thread wire5.0 KiB5.0 KiB0 B (0.0%)6.8 KiB✅
CodexThread snapshot wire3.8 KiB3.8 KiB0 B (0.0%)4.9 KiB✅
CodexLive turn WebSocket wire1.2 KiB1.2 KiB0 B (0.0%)2.0 KiB✅
CodexLive turn WebSocket decoded21.5 KiB21.5 KiB0 B (0.0%)24.4 KiB✅
CodexLive turn messages110 (0.0%)8✅
ClaudeTotal thread wire5.0 KiB5.0 KiB0 B (0.0%)6.8 KiB✅
ClaudeThread snapshot wire3.8 KiB3.8 KiB0 B (0.0%)4.9 KiB✅
ClaudeLive turn WebSocket wire1.2 KiB1.2 KiB0 B (0.0%)2.0 KiB✅
ClaudeLive turn WebSocket decoded21.9 KiB21.9 KiB0 B (0.0%)24.4 KiB✅
ClaudeLive turn messages110 (0.0%)8✅

Baseline: 4a08786 · PR result: 947a265 · Source CI: success

Scenario and decoded snapshot size

10 historical turns, 5 command tools per turn, 878.9 KiB retained MCP result per historical turn, and a 1.05 MiB retained result in the measured turn.

  • Codex decoded thread snapshot: 108.5 KiB
  • Claude decoded thread snapshot: 108.8 KiB

Updated in place by a trusted workflow. PR artifacts are strictly validated and never executed.

Added 1 commit

  • fix(server): allow slow Antigravity browser preflights947a265