--- model: gpt-5.6-sol service: opencode timestamp: 2026-08-25T19:18:45Z git_ref: 5b2a064a diff_cmd: git diff HEAD~1..HEAD --- # Raw output - dispatch explicit bindspace lifecycle The human noticed the agent had re-reported already committed work without changing the worktree. The agent confirmed the sequencing error and proceeded to the actual next Layer C slice. > `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 serialized `BindspaceSpec.lifecycle` policy with explicit `attach` and `open` choices. Added `open_bindspace()` dispatch without inferring resource ownership from listen/dial role. Refactored FD attachment into policy-neutral `_pin_netns()` so borrowed and owned public lifecycles can share identity pinning while enforcing their own policy before side effects. Handle construction also verifies lifecycle and resulting ownership agree. One composition error introduced during implementation was caught by the focused test: owned creation initially called the newly guarded public attach API. `_pin_netns()` fixed that layering error. Ruff and lock checks passed; discovery plus message coverage passed 138 tests with 2 xpasses.