Fix TaskGroup.start() losing child exception during cancellation on asyncio (#1426)
Sole Author: Patrick Ribbsaeter (@patrickswedish) · Immutable Commit SHA: fbab57e9c75751cd489bf36eb20078711bf6c6e1
Asyncio structured-concurrency backend fix ensuring exceptions raised by child coroutines prior to task_status.started() are preserved instead of masked by outer cancellation scopes.

PR #1426
100% CI GREEN · 18/18
fbab57e
Immutable Git SHA
Python
Runtime
18/18 CI Green
CI & Test Matrix
01 · Engineering problem
The failure mode
Nested TaskGroup cancellation edge cases on the asyncio backend could mispropagate cancellation state across shielded or exiting child tasks.
02 · Technical response
What changed
- 01Refined asyncio TaskGroup cancellation state tracking in AnyIO to preserve structured concurrency invariants.
- 02Added deterministic asyncio backend TaskGroup regression tests.
03 · Verified outcome
Evidence-backed result
- ✓Passed 100% of AnyIO CI checks across Python versions on commit fbab57e9c75751cd489bf36eb20078711bf6c6e1.
04 · Cryptographic Git record
Immutable source evidence
Independent open-source engineering authored solely by Patrick Ribbsaeter (@patrickswedish). Company and project names identify the public repository context only under nominative fair use. No employment, client, vendor, or partnership relationship is implied unless explicitly stated.