Track T by default, because this job TIMED OUT. The source path says what a job compiles, not what went wrong, and a timeout did not fail in any of its sources — it ran out of budget. Guessing a lane from the path is the wrong turn
bug-t-a-timeout-bisects-to-an-innocent-commitwas filed to stop, so a timeout stays T's until someone shows otherwise. Re-lane it if the budget was not the problem.It was executing line 2 of 11 when the budget ran out:
tools/expect_same.sh test_nilpy_noleak "$(/tmp/test_nilpy_noleak | tail -n 1)" "PYLEAK OK". That is where to look; it is not an accusation against that line.
The SLUG names
test_nilpy_format_and_set_do_not_leak_a_temporary_list_per_call, and that is not what broke. The slug is derived from the job'ssrc:selector so that it stays stable across a renumbering — it is the dedupe key and the close key — butsrc:says what the job is ABOUT. The failing step namesexpect_same. Read theFailing step:bullet, not the file name in the title, before you reproduce anything: the row the slug names may be passing.
origin/master has advanced 9 commit(s) since this sha. Re-verify at current HEAD before acting — the callback is tagged to the sha that was tested, which may no longer be the state of the tree.
regression: lib-test#src:test/test_nilpy_format_and_set_do_not_leak_a_temporary_list_per_call.npy at ebe1a9b4d011 in step 2/11, tools/expect_same.sh test_nilpy_noleak "$(/tmp/test_nilpy_noleak | tail -n 1)" "PYLEAK OK" (auto-filed by twatch)
- Type: regression (auto-filed by Track T watcher, host borg, twatch
f35167cd4e55). Untriaged. - Found: 2026-09-23T21:46:13Z
- Test source: test/test_nilpy_format_and_set_do_not_leak_a_temporary_list_per_call.npy tools/expect_same.sh
- Failing step: line 2 of 11 of the job's recipe; it names
tools/expect_same.sh.tools/expect_same.sh test_nilpy_noleak "$(/tmp/test_nilpy_noleak | tail -n 1)" "PYLEAK OK"
Repro
tools/testmgr.py --tier full --job 'lib-test#src:test/test_nilpy_format_and_set_do_not_leak_a_temporary_list_per_call.npy' at ebe1a9b4d0110b63c3e8e4a3a0d60f5c069ab131
Range
The named sha
ebe1a9b4d011CANNOT be the cause — it touches no buildable file (docs / tickets / tstate only). It is the sha that was TESTED, i.e. the upper bound of an untested range; the cause is somewhere below it.
bad ebe1a9b4d011, last good 77eff6982552, 2 commit(s) in range — the watcher narrows this by idle bisect; check tstate/TSTATE.md for the current range.
Log tail
ok: /tmp/testmgr-scratch-980262/test_nilpy_noleak [code=657646B data=100700B bss=72012B procs=2247 codeseg=659168B]
Stub ticket: signal only. Track T agent (face 2) enriches or a dev track takes it from the repro line.
Log
- 2026-09-23 — the borg watcher saw
lib-test#src:test/test_nilpy_format_and_set_do_not_leak_a_temporary_list_per_call.npyGREEN at 434cc8f7ff79 (tier full) and did NOT close this: this is a repeat stub (regression-lib-test-test-nilpy-format-and-set-do-not-leak-a-temporary-list-per-call-2, notregression-lib-test-test-nilpy-format-and-set-do-not-leak-a-temporary-list-per-call) — the job already went red, was closed, and came back, so one green is the outcome a live intermittent bug produces most of the time. The green is recorded because it is evidence and because a ticket that stops moving with no reason reads as forgotten; closing this one is a human's call. - 2026-09-24 — the borg watcher saw
lib-test#src:test/test_nilpy_format_and_set_do_not_leak_a_temporary_list_per_call.npyGREEN at 692ea558bbe4 (tier full) and did NOT close this: this is a repeat stub (regression-lib-test-test-nilpy-format-and-set-do-not-leak-a-temporary-list-per-call-2, notregression-lib-test-test-nilpy-format-and-set-do-not-leak-a-temporary-list-per-call) — the job already went red, was closed, and came back, so one green is the outcome a live intermittent bug produces most of the time. The green is recorded because it is evidence and because a ticket that stops moving with no reason reads as forgotten; closing this one is a human's call. - 2026-09-24 — the borg watcher saw
lib-test#src:test/test_nilpy_format_and_set_do_not_leak_a_temporary_list_per_call.npyGREEN at e09adcd641b6 (tier full) and did NOT close this: this is a repeat stub (regression-lib-test-test-nilpy-format-and-set-do-not-leak-a-temporary-list-per-call-2, notregression-lib-test-test-nilpy-format-and-set-do-not-leak-a-temporary-list-per-call) — the job already went red, was closed, and came back, so one green is the outcome a live intermittent bug produces most of the time. The green is recorded because it is evidence and because a ticket that stops moving with no reason reads as forgotten; closing this one is a human's call. - 2026-09-25 — the borg watcher saw
lib-test#src:test/test_nilpy_format_and_set_do_not_leak_a_temporary_list_per_call.npyGREEN at fdca56b72841 (tier full) and did NOT close this: this is a repeat stub (regression-lib-test-test-nilpy-format-and-set-do-not-leak-a-temporary-list-per-call-2, notregression-lib-test-test-nilpy-format-and-set-do-not-leak-a-temporary-list-per-call) — the job already went red, was closed, and came back, so one green is the outcome a live intermittent bug produces most of the time. The green is recorded because it is evidence and because a ticket that stops moving with no reason reads as forgotten; closing this one is a human's call.
Closed (2026-10-02, frankuser): a budget timeout, removed twice over
It was never a leak. The job ran out of its 90 s unit budget on a loaded borg. On 2026-09-25, N in the fixture was cut from 12000 to 1000 (see the fixture's own "N IS A SLOPE, NOT A SOAK" note), and every borg run logged above since then is green.
The fixture was still slow for its size: 5.0 s on plexus against CPython's
0.23 s. Profiling found the cause. pyiter_has cleared about 46 Variant temps
on every element step. It now has a fast path for list, range and generator
cursors, and the fixture runs in 3.6 s. The deeper cost, an exception frame
around every routine with a managed result, is filed as
perf-a-a-routine-with-a-managed-result-pays-an-exception-frame-even-when-its-body-cannot-raise.