Skip to content

fix: stop two tests depending on how fast a busy machine runs - #620

Merged
Mearman merged 1 commit into
mainfrom
fix/618-load-independent-tests
Oct 27, 2026
Merged

Mearman merged 1 commit into
mainfrom
fix/618-load-independent-tests

Conversation

@Mearman

@Mearman Mearman commented Oct 27, 2026

Copy link
Copy Markdown
Member

Fixes #618.

watchdog.test.ts: the sampler tests that wait for the sampler's own outcome passed the production deadline as overheadMs, so a child process slow to start made the watchdog log that the sampler did not finish, and the assertion on how it ended failed. They now use PAUSE_WAIT_GUARD_MS, the guard the file already uses for waits that are not an expectation of how long something takes. The tests of the deadline itself keep their own. The deadline was already a parameter, so no change to the watchdog is needed.

I reproduced the failure by delaying the failing child past the old deadline: with the production deadline the test fails with "did not finish within 3000ms", with the guard it passes. The delay was not committed.

activityFit.test.ts: the sweep called resolveStatusline (a schema parse) and createPalette inside the innermost loop, once per row. It now builds them once per case and the render context once per session and width, shared by the five rows. Per case that is 1 settings resolution instead of 7260 and 1452 contexts instead of 7260, over the same sessions, widths and rows, so the same lines are checked.

The watchdog tests that wait for a sampler's own outcome gave it the
production deadline, so a child process that was slow to start made the
watchdog report that the sampler did not finish instead of how it ended.
They now use the file's existing guard against a sampler that never ends.

The activity width sweep resolved the statusline settings and rebuilt the
palette for every row at every width of every session. The settings and
palette are now built once per case and the render context once per session
and width, shared by the five rows.

Fixes #618
@Mearman
Mearman marked this pull request as ready for review October 27, 2026 18:09
@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
🔒 Security Review ⚠️ Failed 2026-10-27T18:09:18.754745Z
We couldn’t complete this review. Comment @codex security review to try again.
023a995 Draft marked ready
ℹ️ 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" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@chatgpt-codex-connector

Copy link
Copy Markdown

This security review couldn’t start because the paying account has exhausted its Codex allowance and has insufficient available credits. The payer can check their balance and add credits in the Codex usage dashboard, then try again. If you do not manage the paying account, contact this repository's admins.

@Mearman
Mearman merged commit 49ad6b1 into main Oct 27, 2026
32 checks passed
@Mearman
Mearman deleted the fix/618-load-independent-tests branch October 27, 2026 18:09
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.

Two tests depend on a busy machine's speed: the watchdog sampler deadline and the activity width sweep

1 participant