Skip to content

fix(ocr): classify packet budget exhaustion as timeout - #2221

Merged
Th0rgal merged 1 commit into
mainfrom
ocr/timeout-classification
Jul 31, 2026
Merged

fix(ocr): classify packet budget exhaustion as timeout#2221
Th0rgal merged 1 commit into
mainfrom
ocr/timeout-classification

Conversation

@Th0rgal

@Th0rgal Th0rgal commented Jul 31, 2026

Copy link
Copy Markdown
Member

One-word status fix observed during live validation of #2220 on PR #2219: spawnSync ocr ETIMEDOUT (node-side budget ceiling, killed=false on Linux) was labeled error; it is a timeout, and the uncovered-packets list should point readers at OCR_PACKET_TIMEOUT_MINUTES.


Note

Low Risk
Single-branch status labeling in CI packet review; no auth, data, or production runtime impact.

Overview
Packet review now treats Node execFileSync budget hits (ETIMEDOUT, including when killed is false on Linux) as timeout instead of error.

That status flows into packet_semantic per-group results and the uncovered-packets summary, so operators see a time-budget miss and are nudged toward OCR_PACKET_TIMEOUT_MINUTES rather than a generic crash.

Reviewed by Cursor Bugbot for commit e45bfe8. Bugbot is set up for automated code reviews on this repo. Configure here.

execFileSync reports its own timeout as code ETIMEDOUT with killed=false on
Linux — observed live on PR #2219 (group Compiler/Proofs/ExecutionSummary.lean
after the 13-minute ceiling). Label it timeout so the uncovered-packets list
points at OCR_PACKET_TIMEOUT_MINUTES instead of implying a reviewer crash.
@vercel

vercel Bot commented Jul 31, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
verity Ready Ready Preview Jul 31, 2026 3:57pm

Request Review

@cursor

cursor Bot commented Jul 31, 2026

Copy link
Copy Markdown

Bugbot couldn't run - usage limit reached

Bugbot is counted against Cursor usage for this user or team, and this run hit a usage or spend limit.

A user or team admin can review and increase usage limits in the Cursor dashboard.

(requestId: serverGenReqId_3d3c5d92-32c1-4833-a446-e47d41181c9a)

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

OpenCodeReview first-pass review

🟢 No findings from the OCR first pass. Advisory only.

No comments generated. Looks good to me.

OCR pilot metrics & packet coverage

OCR pilot metrics

  • Routing: config-docs (router-v10)
  • Changed files: 1 supported / 1 total; Lean 0, trust docs 0, workflow/scripts 1, contracts 0, docs 0
  • Changed lines: 7 supported; thresholds large Lean >=3 files or >800 lines
  • OCR: status success; comments 0; files 1; tokens 9677; tool calls 1; warnings 0; duration 30s
  • Largest changed files: .github/scripts/ocr-packet-review.js (+6/-1)

Pilot mode: advisory only. Codex Review remains the merge gate.

@Th0rgal
Th0rgal merged commit 4d5ec63 into main Jul 31, 2026
5 checks passed

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: e45bfe83b8

ℹ️ 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".

// on some platforms) — observed live on PR #2219 group 2. Label budget
// exhaustion as timeout so the summary suggests raising
// OCR_PACKET_TIMEOUT_MINUTES rather than implying a crash.
const timedOut = Boolean(err && (err.killed || err.code === 'ETIMEDOUT' || /ETIMEDOUT/.test(detail)));

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Surface the packet-timeout setting in the summary

When the node-side ceiling is hit in the large-Lean workflow, this branch only stores status: 'timeout'; buildReviewBody() in .github/scripts/post-ocr-review.js lines 405-410 renders that literal status and the first error line without mapping it to OCR_PACKET_TIMEOUT_MINUTES. The uncovered-packet list therefore still shows only something like timeout (spawnSync ocr ETIMEDOUT) and does not tell the operator which setting to raise, despite this change's stated remediation; include that guidance in the propagated error or in the renderer's timeout case.

Useful? React with 👍 / 👎.

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