Skip-mark `subint_forkserver` nested-multierror hang

Skip-mark the still-hanging
`test_nested_multierrors[subint_forkserver]` via
`@pytest.mark.skipon_spawn_backend('subint_forkserver',
reason=...)` so it stops blocking the test matrix
while the remaining bug is being chased. The mark is
an inert no-op until that (in-dev) backend lands.

(this patch was generated in some part by [`claude-code`][claude-code-gh])
[claude-code-gh]: https://github.com/anthropics/claude-code

(cherry picked from commit 506617c695)
(factored: kept only the tests/test_cancellation.py skip-mark; dropped
 the subint_forkserver conc-anal doc update)
wkt/tooling_enhancements_from_mtf_spawner
Gud Boi 2026-04-23 16:44:15 -04:00
parent d9a99d9c48
commit 555f64fdf2
1 changed files with 13 additions and 0 deletions

View File

@ -452,6 +452,19 @@ async def spawn_and_error(
await nursery.run_in_actor(*args, **kwargs) await nursery.run_in_actor(*args, **kwargs)
@pytest.mark.skipon_spawn_backend(
'subint_forkserver',
reason=(
'Multi-level fork-spawn cancel cascade hang — '
'peer-channel `process_messages` loops do not '
'exit on `service_tn.cancel_scope.cancel()`. '
'See `ai/conc-anal/'
'subint_forkserver_test_cancellation_leak_issue.md` '
'for the full diagnosis + candidate fix directions. '
'Drop this mark once the peer-chan-loop exit issue '
'is closed.'
),
)
@pytest.mark.timeout( @pytest.mark.timeout(
10, 10,
method='thread', method='thread',