27 lines
1022 B
Markdown
27 lines
1022 B
Markdown
|
|
---
|
||
|
|
model: gpt-5.6-sol
|
||
|
|
service: opencode
|
||
|
|
timestamp: 2026-08-25T19:05:29Z
|
||
|
|
git_ref: e1007547
|
||
|
|
diff_cmd: git diff HEAD~1..HEAD
|
||
|
|
---
|
||
|
|
|
||
|
|
# Raw output - own created netns bindspaces
|
||
|
|
|
||
|
|
The human reported the attach-only netns lifecycle committed and
|
||
|
|
authorized the next incremental Layer C change.
|
||
|
|
|
||
|
|
> `git diff HEAD~1..HEAD -- tractor/discovery/_bindspace.py tractor/discovery/__init__.py tests/discovery/test_bindspace.py ai/tpt-backends/03_wg_tunnel_bindspace.md`
|
||
|
|
|
||
|
|
Added async `open_netns()` as the owned counterpart to
|
||
|
|
`attach_netns()`. It requires a named spec, creates through pyroute2 in
|
||
|
|
a shielded worker call, attaches the resulting namespace FD and yields
|
||
|
|
an owned process-local `BindspaceHandle`.
|
||
|
|
|
||
|
|
FD closure occurs before shielded namespace removal on normal,
|
||
|
|
exceptional and cancelled exits. The context never calls `setns()`;
|
||
|
|
namespace entry remains a spawn/bootstrap responsibility.
|
||
|
|
|
||
|
|
Privileged operations are faked in tests. Ruff and lock checks passed;
|
||
|
|
discovery plus message coverage passed 137 tests with 2 xpasses.
|