Skip to content

merge queue: checking release/v3.8.49 (7123236), #7106, #7116 and #7119 together - #7485

Closed
mergify[bot] wants to merge 10 commits into
release/v3.8.49from
mergify/merge-queue/aafc8f46e1
Closed

mergify[bot] wants to merge 10 commits into
release/v3.8.49from
mergify/merge-queue/aafc8f46e1

Conversation

@mergify

@mergify mergify Bot commented Jul 16, 2026 •

Copy link
Copy Markdown

✨ Pull request #7116 ahead in the queue was removed (reason: pull request dequeued). The pull request #7119 has been requeued. ✨

Branch release/v3.8.49 (7123236), #7106, #7116 and #7119 are queued together for merge.

This pull request has been created by Mergify to speculatively check the mergeability of #7119.
You don't need to do anything. Mergify will close this pull request automatically when it is complete.

Required conditions of queue rule release for merge:

  • #check-pending=0
  • check-success=Merge integrity (changelog + generated skills)
  • #check-success>=1
  • any of:
    • #check-failure=0
    • all of:
      • #check-failure=1
      • check-failure=dast-smoke

Required conditions to stay in the queue:

---
checking_base_sha: 59f976ed3631d18f3171d2a88686176c352e2617
previous_check_retries: []
previous_failed_batches: []
pull_requests:
  - number: 7119
    scopes: []
scopes: []
...

diegosouzapw and others added 10 commits July 13, 2026 23:09
… 9router#2461)

Root cause: the STREAMING branch of AntigravityExecutor.executeOnce() had no
!response.ok check at all — it unconditionally wrapped the upstream response
body in a pass-through TransformStream, unlike the sibling non-streaming
branch which already built a sanitized error via buildAntigravityUpstreamError.
When Google's 403 error body was binary/non-UTF8 (observed: gzip-magic-byte
payloads), those raw bytes were forwarded verbatim, corrupting the
client-visible error message ('[ERROR] [403]: <control-byte garbage>').

Fix: add the same !response.ok guard to the streaming branch, routing through
buildAntigravityUpstreamError()/buildErrorBody() (hard rule #12) instead of
piping unknown bytes through as if they were an SSE stream.

Reported-by: Duongkhanhtool (decolua/9router#2461)
…s (port from 9router#1811)

parseInnerCall only split arg segments on a newline between the arg name
and its value. Cursor's live Composer/Auto output has been observed using a
single space instead, so those segments were treated as one long
(space-containing) arg name with an empty value, silently no-opping
Write/tool calls for Composer/Auto models.

Fall back to splitting on the first whitespace boundary when no newline is
present in the segment.

Reported-by: way-art (decolua/9router#1811)
…(port from 9router#1037)

The Vercel relay deploy route disabled Deployment Protection (SSO) by firing a PATCH request with .catch(() => {}) and never checking res.ok. When Vercel rejects or no-ops the PATCH (plan doesn't allow disabling protection, an under-scoped token, etc.), the relay was still saved and activated as a healthy proxy pool, and later requests routed through it failed with an undiagnosed 403 Access denied from Vercel's own deployment protection — indistinguishable from an upstream-provider rejection (e.g. Codex/ChatGPT edge-IP blocking).

Extract disableSsoProtection() to check the PATCH response and surface an ssoProtectionWarning in the deploy response when it fails, so the failure source can be diagnosed instead of silently masked.

Reported-by: Rico Aditya (@ricatix) (decolua/9router#1037)
…ve-complexity ratchet at baseline

The SSO-protection check added to POST pushed its cognitive complexity from
15 to 21, regressing the cognitive-complexity ratchet (891 > baseline 890).

Extract two pure helpers with identical behavior:
- buildDeployErrorResponse(): the sanitized non-ok Vercel deploy response
- resolveSsoProtectionWarning(): the SSO PATCH check + warning string

POST now reads as a flat sequence of guards. No behavior change.
@mergify mergify Bot closed this Jul 16, 2026
@mergify
mergify Bot deleted the mergify/merge-queue/aafc8f46e1 branch July 16, 2026 15:00
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