35 lines
1.3 KiB
Markdown
35 lines
1.3 KiB
Markdown
|
|
---
|
||
|
|
model: gpt-5.6-sol
|
||
|
|
service: opencode
|
||
|
|
timestamp: 2026-08-28T17:29:43Z
|
||
|
|
git_ref: 2ca8c570
|
||
|
|
diff_cmd: git diff HEAD~1..HEAD
|
||
|
|
---
|
||
|
|
|
||
|
|
# Raw output - transport bindspace FD through Trio spawn
|
||
|
|
|
||
|
|
The human approved the next WireGuard Layer C increment after landing
|
||
|
|
pre-handshake child-death detection.
|
||
|
|
|
||
|
|
## Generated code
|
||
|
|
|
||
|
|
> `git diff HEAD~1..HEAD -- tractor/_child.py tractor/runtime/_supervise.py tractor/spawn/_spawn.py tractor/spawn/_trio.py tractor/spawn/_mp.py tractor/to_actor/_api.py tests/test_netns_spawn.py`
|
||
|
|
|
||
|
|
Thread an optional live `Bindspace` through actor spawn APIs. For the
|
||
|
|
Trio backend, duplicate its namespace FD, append that temporary
|
||
|
|
descriptor to existing `pass_fds`, and send the atomic descriptor/inode
|
||
|
|
pair through the child CLI. Close the parent temporary duplicate as
|
||
|
|
soon as `open_process()` returns, raises, or is cancelled, while the
|
||
|
|
child consumes its inherited descriptor before runtime startup.
|
||
|
|
|
||
|
|
Reject bindspace transport explicitly in multiprocessing backends until
|
||
|
|
their descriptor-reduction slice is implemented. Add privilege-free
|
||
|
|
tests for CLI forwarding, merged pass-FD state, caller immutability,
|
||
|
|
source/duplicate ownership, exec failure, cancellation, absent live
|
||
|
|
authority, death-before-handshake cleanup, and MP rejection.
|
||
|
|
|
||
|
|
## Scope boundary
|
||
|
|
|
||
|
|
Multiprocessing FD reduction and root-process namespace entry remain
|
||
|
|
follow-up work.
|