A late self-cancel can arrive after the RPC service nursery has closed. Starting `Actor.cancel()` there raises before teardown can cancel the shielded parent-channel loop or run lifetime callbacks. Schedule one root-owned task to await `Actor.cancel(None)` before cancelling the root scope. Deduplicate pending requests, and cancel the root scope directly once runtime cancellation has completed. Add a fresh-child regression for open and closed service nurseries under native Trio and asyncio infection. Check repeated requests before completion, after completion and from a lifetime callback; prove all three creator-owned shm segments disappear before parent nursery teardown can mask a failure. Include the session raw record referenced by the structured provenance already in the parent. Prompt-IO: ai/prompt-io/opencode/20260916_ib_disconnect_cleanup.md (this patch was generated in some part by `opencode` using `gpt-6-astra` (`openai`)) |
||
|---|---|---|
| .. | ||
| conc-anal | ||
| prompt-io | ||
| tooling-todos | ||
| tpt-backends | ||