Skip to content

Cap script timeout at 60s + live streaming output#39

Merged
Jammy2211 merged 1 commit into
mainfrom
feature/runner-timeout-live-output
Apr 10, 2026
Merged

Cap script timeout at 60s + live streaming output#39
Jammy2211 merged 1 commit into
mainfrom
feature/runner-timeout-live-output

Conversation

@Jammy2211

Copy link
Copy Markdown
Collaborator

Summary

  • Lower TIMEOUT_SECS from 36000 (10h!) to 60 so a single hung script can no longer block a full mega-run
  • Remove the verbose print(result.stdout) / print(result.stderr) dumps in execute_script and execute_notebook so the console stays one-line-per-script
  • Set PYTHONUNBUFFERED=1 in run_all.py before launching per-directory subprocesses so live PASS/FAIL/TIMEOUT lines aren't block-buffered through the pipe

Test plan

  • Sanity check on a single directory: run_python.py autolens multi --report-dir /tmp/test_results_check — live stream confirmed
  • Full mega-run via run_all.py — all 476 scripts stream live, timeouts kick in at 60s, run completes in ~35 min

60s per-script cap stops hung scripts (e.g. subhalo/sensitivity) from
blocking a full mega-run. Removing the post-run stdout/stderr dumps
keeps console output to one concise line per script, and setting
PYTHONUNBUFFERED in run_all.py ensures those lines land live in the
terminal instead of being block-buffered through the pipe.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
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