tractor/tests/msg
Gud Boi 060f7d24c4 Backend-aware timeout in `maybe_expect_raises`
Default `timeout` from `int = 3` → `int|None = None`;
when unset, pick a backend-aware value. Fork-based
backends (`main_thread_forkserver`) need real headroom
bc actor spawn + IPC ctx-exit + msg-validation error
path is much heavier than under `trio` backend —
especially under cross-pytest-stream contention (#451).

Defaults:
- `main_thread_forkserver` → 30s
- everything else          → 3s (unchanged)

Empirical flake history that motivated 30s as the floor
on fork backends (all from `test_basic_payload_spec`):

- 3s  → all-valid variant flaked w/ `TooSlowError`
- 8s  → `invalid-return` variant flaked w/ `Cancelled`
        (surfaced instead of `MsgTypeError` bc the
        outer `fail_after` fired mid-error-path)
- 15s → flaked under cross-pytest-stream contention

30s gives plenty of headroom while still failing-loud
on a genuine hang. Callers can opt out by passing an
explicit `timeout=` kw.

(this patch was generated in some part by [`claude-code`][claude-code-gh])
[claude-code-gh]: https://github.com/anthropics/claude-code
2026-04-29 10:21:56 -04:00
..
__init__.py Add `tests/msg/` sub-pkg, audit `pformat()` filtering 2026-03-12 18:32:31 -04:00
conftest.py Add `tests/msg/` sub-pkg, audit `pformat()` filtering 2026-03-12 18:32:31 -04:00
test_ext_types_msgspec.py Add `tests/msg/` sub-pkg, audit `pformat()` filtering 2026-03-12 18:32:31 -04:00
test_pldrx_limiting.py Backend-aware timeout in `maybe_expect_raises` 2026-04-29 10:21:56 -04:00
test_pretty_struct.py Drop unused import noticed by `copilot` 2026-03-13 11:52:18 -04:00