Skip to content

fix(reporters): report CLI-side timeouts as timed out, not failed [RED-1276] [ship] - #1582

Merged
sorccu merged 2 commits into
mainfrom
simo/issue-979-relevance-4d774e
Oct 26, 2026
Merged

sorccu merged 2 commits into
mainfrom
simo/issue-979-relevance-4d774e

Conversation

@sorccu

@sorccu sorccu commented Oct 26, 2026 •

Copy link
Copy Markdown
Member

Linear: RED-1276

Affected Components

  • CLI
  • Create CLI
  • Test
  • Docs
  • Examples
  • Other

When the CLI stops waiting for a check result (its per-check --timeout), the check may still finish and pass in Checkly. Every reporter still showed such checks as plain failures, so the CLI output disagreed with the test session and looked like a real failure. That mismatch is what the linked issue reports for the GitHub reporter.

This PR reports those checks as timed out:

  • The check runner passes an optional CheckFailure argument ({ timedOut: true }) with CHECK_FAILED, set only when the CLI-side timeout fires. test, trigger and pw-test pass it through to reporters as result.timedOut.
  • A new CheckStatus.TIMED_OUT, which resultToCheckStatus returns for those results, drives the output:
    • github: the status cell reads ⏱️ Timed out (with the retry count, if any) instead of ❌ Fail.
    • list / ci: check titles use a ⏱ symbol, and the summaries count N timed out separately from N failed.
    • dot: prints a T mark, and the brief summary counts timed-out checks separately.
    • json: "result": "Timed out" instead of "Fail".
  • Timed-out checks keep their "Execution Errors" details in every reporter, as before.

The run's exit code is unchanged: a timed-out check still makes the run exit 1, because the CLI never received a result. Timed-out checks also still count toward --max-failures.

Notes for the Reviewer

  • The json reporter's result field gains a new value. "Timed out" joins "Pass", "Fail", "Degraded" and "Not finished". A script that finds failures by matching result === "Fail" will no longer see timed-out checks. Such a script should rely on the exit code or also match "Timed out". The docs will need a matching line next to the existing "Not finished" description, as a follow-up.
  • Run errors that are not timeouts (an error message from the backend, or a final result the CLI failed to process) are left unflagged and still report as failed. The flag is set explicitly by the runner, not inferred by matching the error message text.
  • The rest of the issue was already addressed by earlier changes. The default timeout is now 600s (1200s for Playwright checks) and counts per check. It restarts on retries and does not count server-side queueing time. The reporters also gained the "Execution Errors" output.

Resolves #979

🤖 Generated with Claude Code

sorccu and others added 2 commits October 27, 2026 03:08
When the CLI stops waiting for a check result, the check may still pass in
Checkly, yet the GitHub markdown table showed it as a plain failure. The
runner now flags timeouts on CHECK_FAILED, the test, trigger and pw-test
commands pass the flag through as result.timedOut, and the github reporter
renders those rows as "Timed out". Other run errors (backend errors, result
processing failures) still show as failed.

Refs #979

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
A check the CLI stopped waiting for may still pass in Checkly, but the
list, ci, dot and json reporters reported it as an ordinary failure. Add
a TIMED_OUT check status for results flagged timedOut: titles use a ⏱
symbol, the summaries count "N timed out" separately from failures, the
dot reporter prints a T mark, and the json reporter emits
"result": "Timed out". Other run errors still report as failed, and
exit codes and the max failures limit are unchanged.

Refs #979

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@sorccu sorccu changed the title fix(reporters): label CLI-side timeouts as timed out in github reporter fix(reporters): report CLI-side timeouts as timed out, not failed Oct 26, 2026
@sorccu sorccu changed the title fix(reporters): report CLI-side timeouts as timed out, not failed fix(reporters): report CLI-side timeouts as timed out, not failed [RED-1276] Oct 26, 2026
@sorccu sorccu changed the title fix(reporters): report CLI-side timeouts as timed out, not failed [RED-1276] fix(reporters): report CLI-side timeouts as timed out, not failed [RED-1276] [ship] Oct 26, 2026

@github-actions github-actions 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.

Auto-approved: ship/show PR from a same-repo branch.

@sorccu
sorccu merged commit bedb773 into main Oct 26, 2026
17 of 18 checks passed
@sorccu
sorccu deleted the simo/issue-979-relevance-4d774e branch October 26, 2026 18:23
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.

bug: Prolonged test suite exceeding CLI default timeout of 5 minutes displaying false positives

1 participant