stablyai/orca · error · Error
Timed out finding dispatched mac release build workflow run
Error message
Timed out finding dispatched mac release build workflow run named "${expectedTitle}". What it means
Thrown by findDispatchedReleaseMacBuildRun when, within RUN_DISCOVERY_TIMEOUT_SECONDS (120s), no workflow run matching the dispatch can be found. A match requires created_at >= dispatchStartedAtMs (now-10s) AND display_title === expectedReleaseMacBuildRunTitle ('Mac release build <tag> (<releaseRunId>)').
Source
Thrown at config/scripts/run-release-mac-build-workflow.mjs:110
`/repos/${api.owner}/${api.repo}/actions/workflows/${encodeURIComponent(
options.workflow
)}/runs?event=workflow_dispatch&per_page=20`
)
const workflowRuns = Array.isArray(response?.workflow_runs) ? response.workflow_runs : []
const match = workflowRuns.find((run) => {
const createdAtMs = Date.parse(run.created_at ?? '')
return createdAtMs >= deps.dispatchStartedAtMs && run.display_title === expectedTitle
})
if (match) {
return match
}
await sleep(options.pollSeconds * 1000)
}
throw new Error(
`Timed out finding dispatched mac release build workflow run named "${expectedTitle}".`
)
}
export async function waitForReleaseMacBuildRun(api, workflowRunId, options, deps = {}) {
const now = deps.now ?? Date.now
const sleep = deps.sleep ?? sleepMilliseconds
const deadlineMs = now() + options.timeoutMinutes * 60 * 1000
while (now() <= deadlineMs) {
const run = await api.request(
'GET',
`/repos/${api.owner}/${api.repo}/actions/runs/${workflowRunId}`
)
if (run.status === 'completed') {
return run
}View on GitHub (pinned to 1136503c6a)
Solutions
- Confirm options.workflow (RELEASE_MAC_BUILD_WORKFLOW) matches the actual workflow file name.
- Verify tag and releaseRunId produce the exact expected title via expectedReleaseMacBuildRunTitle.
- Reduce concurrent dispatches or bump per_page/poll if the run falls outside the first 20.
- Re-run; transient GitHub lag under heavy load is common.
Example fix
// before const workflowRun = await findDispatchedReleaseMacBuildRun(api, options, deps) // after // confirm title formula matches what the workflow produces console.log(expectedReleaseMacBuildRunTitle(options)) // and widen discovery by increasing pollSeconds / re-dispatching if GitHub lagged
Defensive patterns
Strategy: retry
Validate before calling
const expectedTitle = expectedReleaseMacBuildRunTitle(options)
// sanity-check inputs that form the title before dispatching
if (!options.tag || !options.releaseRunId) {
throw new Error('tag and releaseRunId are required to match the dispatched run title')
} Type guard
function isWorkflowRun(value) {
return value != null && (typeof value.id === 'number') && (typeof value.display_title === 'string')
} Try / catch
try {
workflowRun = await findDispatchedReleaseMacBuildRun(api, options, deps)
} catch (err) {
if (/Timed out finding dispatched mac release build/.test(err.message)) {
// GitHub lag: wait and re-dispatch/re-poll once, with a wider per_page
}
throw err
} Prevention
- Confirm RELEASE_MAC_BUILD_WORKFLOW matches the workflow file name exactly.
- Keep dispatch churn low so the new run stays within the first 20 results.
- Verify tag/releaseRunId produce the exact title the workflow will display.
When it happens
Trigger: After dispatchReleaseMacBuildWorkflow, polling GET .../actions/workflows/<wf>/runs?event=workflow_dispatch&per_page=20 never yields a run whose title and creation time match. Possible because the dispatch was accepted but the run is slow to register, the title format changed, or per_page=20 omits it behind many newer runs.
Common situations: Workflow file renamed/mismatched, tag or releaseRunId mismatch, high workflow churn pushing the new run past the first 20, clock skew on created_at, dispatch actually 202 (queued) but not yet creating a run object.
Understand the failure class
- Timeouts: ETIMEDOUT, deadlines, and hung requests — what actually expires when a request times out.
Related errors
- Timed out after ${options.timeoutMinutes}m waiting for mac r
- GitHub request failed ${res.status} ${res.statusText}: ${bod
- GitHub releases response page ${page} for ${repo} was not an
- repo is required
- token is required
AI-assisted analysis of stablyai/orca@1136503c6a (2026-08-12).
Data as JSON: /api/errors/946ed9fc753c5546.
Report an issue: GitHub.