830 B
830 B
Cancellation while Actor.start_remote_task() waits for StartAck can strand its caller-side context and leave the remote task running. Make one bounded cleanup request, remove local startup state and close its receive channel.
git diff HEAD~1..HEAD -- tractor/runtime/_runtime.py tractor/runtime/_portal.py tractor/_context.py tests/test_context_stream_semantics.py
Separate private startup-cancellation policy from public target kwargs using Portal._run_from_ns(). Have Context.cancel() disable recursive startup cancellation for its own _cancel_task RPC. Exercise cancellation after Start publication and prove the caller-owned actor remains reusable without leaked contexts.