fix: studio.deploy kickoff abort is not a hostname-finished HOLD - #1891
Merged
Merged
Conversation
#1889 remapped AbortSignal timeout / HTTP 524 to "Origin deploy finished without a backend-supplied https hostname." Prod logs for wrun_01M2B5SRA5W5S4WQP2M4ZHY040 show kickoff never returned a job id. Keep hostname HOLD only for a terminal job, retry kickoff, and pass through backend-supplied bare vercel.app hosts. Co-authored-by: Hayden <groupthinking@users.noreply.github.com>
Contributor
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
Contributor
|
Important
This repository does not receive automatic reviews because it has fewer than 10 stars. ⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: ASSERTIVE Plan: Advanced Run ID: Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Focused Vitest 107 and pytest 7 passed after the hostname HOLD remap was replaced with a kickoff-no-job residual. Co-authored-by: Hayden <groupthinking@users.noreply.github.com>
kk-agent
marked this pull request as ready for review
September 12, 2026 16:15
Contributor
🔴 E2E Test Results: FAILURE DETECTED
Test Output |
Contributor
Dependency Review✅ No vulnerabilities or license issues or OpenSSF Scorecard issues found.Snapshot WarningsEnsure that dependencies are being submitted on PR branches. Re-running this action after a short time may resolve the issue. See the documentation for more information and troubleshooting advice. Scanned FilesNone |
Contributor
9 tasks
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.
Canonical issue
Follow-on to #1889. AXIOM dogfood on READY prod
dpl_EHAzZtKkJ2PQLS2fjPfu8PpDyizt(ab752a7b) /XYMcBrFSJ4c:Origin video-to-software returned no verified live URL.Origin deploy finished without a backend-supplied https hostname.er:gate:v1:wrun_01M2B5SRA5W5S4WQP2M4ZHY040Outcome
When Studio Attempt Deploy / G.A.T.E.
studio.deployruns with a reused ready transcript, EventRelay either polls a backendjob_iduntil a backend-supplied https hostname is on the receipt, or HOLDs withSTUDIO_ORIGIN_KICKOFF_NO_JOB_HOLD— not the #1889 hostname-finished copy and not any prior cleared residual.Root cause
Verified in Vercel runtime logs for
wrun_01M2B5SRA5W5S4WQP2M4ZHY040ondpl_EHAzZtKkJ2PQLS2fjPfu8PpDyizt:POST /video-to-softwarehitAbortSignal.timeout(20s)twice perkickoffStep(16:04:25 and 16:05:05).studioDeployReadyTranscriptHold+isGatewayTimeoutKickofftoSTUDIO_ORIGIN_NO_HOSTNAME_HOLD("Origin deploy finished without a backend-supplied https hostname").FatalError— never received ajob_id, never polled.Secondary gaps while kickoff can still succeed later:
*.vercel.apphost (nohttps://); fix: studio.deploy Origin vts → verified live URL #1889 extract rejected it.sync=Truejob-store save.What changed
STUDIO_ORIGIN_KICKOFF_NO_JOB_HOLD(retryable). Hostname HOLD stays only for a terminal job with no URL.KICKOFF_RETRIES×sleep('10s')) instead of one retry then FatalError.20s→45s.*.vercel.app/ alias hosts (addhttps://only). Rejectvercel.comimport/inspector URLs.What was NOT done
VERCEL_TOKEN/EVENTRELAY_API_KEY/ Hayden secrets.Hayden stop (not taken)
Parse/poll/receipt gap was EventRelay-side: kickoff abort was labeled as a finished deploy. Did not invent deploy credentials. If a later AXIOM job error proves a missing credential only Hayden has, that is the Loop→CoS ask — not guessed here.
Scope
How cleared residuals stay cleared
Risk
Verification
Head:
47e74084db2b095246e81a021516b88e506387a6pipeline-async-job,gate-transition,studio-pipeline-status,studio-workflow,studio-deploy)Production evidence
Cannot signed-in dogfood AXIOM here. Target residual:
dpl_EHAzZtKkJ2PQLS2fjPfu8PpDyizt/er:gate:v1:wrun_01M2B5SRA5W5S4WQP2M4ZHY040. Runtime proof used: Vercel logs showingTimeoutErrorremapped to hostname HOLD.Agent handoff