You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
fix: results index skips campaign task records; batch wait loop keeps the fit's exit status #1749
Release validation: NOT release_ready — v2026.10.31.1.dev85201 profile=release
validation_report/stages/integrate: fail
autolens_profiling: red
Worktree drift: 0 orphan / 0 missing / 1 dirty
Human override for Heart RED (development only) extended live by the human on 2026-10-31 to this task ("yes extend the override, go ahead"). Merging needs green CI and a separate /prm; no release.
Plan
Skip the hidden .campaign_tasks directory when the results index walks an output tree.
Make the generated batch script keep only the fit's own exit status after a forwarded signal.
Add a test for each. The wait-loop test drives a real USR1 against a generated script.
Tier: judge. Merge mode: human /prm.
Detailed plan
autofit/results/index.py: add .campaign_tasks to _SKIP_DIRS as a named constant, with a comment on where those records come from (the assistant template's stage entry; they are the campaign collector's, read by autofit.campaign.collector.scan_status, not results). Confirm the collector still reads them, since it scans status records separately. Test in test_autofit/results/test_index.py: a tree with a real result plus .campaign_tasks/demo/stage/0.status.json indexes one result.
autofit/campaign/scheduler/slurm.pysbatch_script: replace the until wait loop with while true; do status=0; wait "$child" || status=$?; kill -0 "$child" 2>/dev/null || break; done. Test in test_autofit/campaign/test_slurm.py: write the generated script with a stand-in command that traps USR1, sleeps briefly and exits 0; run it with bash, send USR1 to it, and assert exit 0. Also assert exit 3 when the command exits 3. Skip the test if bash is missing.
Run the full PyAutoFit suite. It must not run in parallel with another PyAutoFit suite, because test_aggregate_csv writes a fixed /tmp/summary.csv.
Activity
Jammy2211 commentedon Oct 31, 2026
Library PR created: #1750. Full suite green (4170 passed); independent review CLEAN. No workspace impact. Awaiting human /prm.
Jammy2211 commentedon Oct 31, 2026
Shipped
Merged in #1750 (
06a414851+2caeaab3e); pending release.autofit.results indexno longer walks into.campaign_tasks/.autofit.campaign).