tractor/ai/prompt-io/opencode
Gud Boi 2ca8c570ec Detect child death before parent handshake
Race the initial peer handshake against process exit during Trio
child bootstrap so a dead child cannot park its spawning task.
Restore and harden the design originally implemented in `3b0724eb`.

Deats,
- register peer events before provisional nursery publication
- raise `ActorFailure` with child status when process death wins
- prioritize observed death over a simultaneous handshake
- preserve waiter exceptions without `ExceptionGroup` wrapping
- log expected losing-waiter cancellation at debug level
- remove exact failed-startup peer events during backend cleanup
- cover controlled schedules and full Trio backend cleanup

Based-on: 3b0724eba8
Prompt-IO: ai/prompt-io/opencode/20260828T045119Z_fb6d81d3_prompt_io.md

(this patch was generated in some part by `opencode` using `gpt-5.6-sol` (`openai`))
2026-08-28 04:11:53 -04:00
..
20260804T030309Z_65bf9df5_prompt_io.md Wait for ctx exit in `maybe_open_context()` 2026-08-03 23:45:42 -04:00
20260804T030309Z_65bf9df5_prompt_io.raw.md Wait for ctx exit in `maybe_open_context()` 2026-08-03 23:45:42 -04:00
20260817T231825Z_359fe75c_prompt_io.md Restore IPC transport style conventions 2026-08-17 19:37:44 -04:00
20260817T231825Z_359fe75c_prompt_io.raw.md Restore IPC transport style conventions 2026-08-17 19:37:44 -04:00
20260818T021729Z_d9a6e2e9_prompt_io.md Add `TunnelledAddress` wrapper primitives 2026-08-27 20:33:00 -04:00
20260818T021729Z_d9a6e2e9_prompt_io.raw.md Add `TunnelledAddress` wrapper primitives 2026-08-27 20:33:00 -04:00
20260818T031532Z_4151b956_prompt_io.md Reap `to_actor.run()` children before return 2026-08-21 15:03:34 -04:00
20260818T031532Z_4151b956_prompt_io.raw.md Reap `to_actor.run()` children before return 2026-08-21 15:03:34 -04:00
20260818T075031Z_dd02c7c0_prompt_io.md Support nested `wg` maddrs 2026-08-27 20:43:25 -04:00
20260818T075031Z_dd02c7c0_prompt_io.raw.md Support nested `wg` maddrs 2026-08-27 20:43:25 -04:00
20260818T193001Z_bf06b4f8_prompt_io.md Close interrupted `MsgTransport.send()` streams 2026-08-21 15:03:34 -04:00
20260818T193001Z_bf06b4f8_prompt_io.raw.md Close interrupted `MsgTransport.send()` streams 2026-08-21 15:03:34 -04:00
20260818T193002Z_bf06b4f8_prompt_io.md Centralize `Context` registry removal 2026-08-21 15:03:34 -04:00
20260818T193002Z_bf06b4f8_prompt_io.raw.md Centralize `Context` registry removal 2026-08-21 15:03:34 -04:00
20260818T193003Z_bf06b4f8_prompt_io.md Bound cancelled remote-task startup 2026-08-21 15:03:34 -04:00
20260818T193003Z_bf06b4f8_prompt_io.raw.md Bound cancelled remote-task startup 2026-08-21 15:03:34 -04:00
20260818T193004Z_bf06b4f8_prompt_io.md Clean failed remote-task startup state 2026-08-21 15:03:34 -04:00
20260818T193004Z_bf06b4f8_prompt_io.raw.md Clean failed remote-task startup state 2026-08-21 15:03:34 -04:00
20260818T193005Z_bf06b4f8_prompt_io.md Use linked contexts in `to_actor.run()` 2026-08-21 15:03:34 -04:00
20260818T193005Z_bf06b4f8_prompt_io.raw.md Use linked contexts in `to_actor.run()` 2026-08-21 15:03:34 -04:00
20260819T020757Z_b38efed7_prompt_io.md Reject misplaced empty `runtime_kwargs` 2026-08-21 15:03:34 -04:00
20260819T020757Z_b38efed7_prompt_io.raw.md Reject misplaced empty `runtime_kwargs` 2026-08-21 15:03:34 -04:00
20260819T184640Z_481ba003_prompt_io.md Bind named `to_actor.run()` inputs with partials 2026-08-25 19:20:43 -04:00
20260819T184640Z_481ba003_prompt_io.raw.md Bind named `to_actor.run()` inputs with partials 2026-08-25 19:20:43 -04:00
20260819T213144Z_f81fc5e5_prompt_io.md Peel tunnels before `Channel` connects 2026-08-27 20:47:02 -04:00
20260819T213144Z_f81fc5e5_prompt_io.raw.md Peel tunnels before `Channel` connects 2026-08-27 20:47:02 -04:00
20260819T213145Z_f81fc5e5_prompt_io.md Peel tunnels before `Endpoint` binding 2026-08-27 20:47:04 -04:00
20260819T213145Z_f81fc5e5_prompt_io.raw.md Peel tunnels before `Endpoint` binding 2026-08-27 20:47:04 -04:00
20260819T234823Z_557065d8_prompt_io.md Harden debugger teardown assertions 2026-08-21 15:03:34 -04:00
20260819T234823Z_557065d8_prompt_io.raw.md Harden debugger teardown assertions 2026-08-21 15:03:34 -04:00
20260819T234824Z_557065d8_prompt_io.md Complete IPC frames before sender cancellation 2026-08-21 15:03:34 -04:00
20260819T234824Z_557065d8_prompt_io.raw.md Complete IPC frames before sender cancellation 2026-08-21 15:03:34 -04:00
20260820T021516Z_dfad66a0_prompt_io.md Model bindspaces as scoped capabilities 2026-08-27 20:47:04 -04:00
20260820T021516Z_dfad66a0_prompt_io.raw.md Model bindspaces as scoped capabilities 2026-08-27 20:47:04 -04:00
20260820T023004Z_88a23449_prompt_io.md Skip nested crash REPL on macOS CI 2026-08-21 15:03:34 -04:00
20260820T023004Z_88a23449_prompt_io.raw.md Skip nested crash REPL on macOS CI 2026-08-21 15:03:34 -04:00
20260820T023005Z_88a23449_prompt_io.md Showcase `to_actor.run()` across docs 2026-08-21 15:03:34 -04:00
20260820T023005Z_88a23449_prompt_io.raw.md Showcase `to_actor.run()` across docs 2026-08-21 15:03:34 -04:00
20260820T033107Z_ba07e09d_prompt_io.md Decode tagged transport addresses 2026-08-27 20:47:04 -04:00
20260820T033107Z_ba07e09d_prompt_io.raw.md Decode tagged transport addresses 2026-08-27 20:47:04 -04:00
20260820T033108Z_ba07e09d_prompt_io.md Emit canonical tagged addresses 2026-08-27 20:48:57 -04:00
20260820T033108Z_ba07e09d_prompt_io.raw.md Emit canonical tagged addresses 2026-08-27 20:48:57 -04:00
20260820T135125Z_9f99043b_prompt_io.md Fix macOS CI `skipif` condition 2026-08-21 15:03:34 -04:00
20260820T135125Z_9f99043b_prompt_io.raw.md Fix macOS CI `skipif` condition 2026-08-21 15:03:34 -04:00
20260820T143845Z_559fd0f1_prompt_io.md Preserve cancellation over shielded `send_all()` errors 2026-08-21 15:03:34 -04:00
20260820T143845Z_559fd0f1_prompt_io.raw.md Preserve cancellation over shielded `send_all()` errors 2026-08-21 15:03:34 -04:00
20260820T150250Z_9afda1c6_prompt_io.md Fix send-side `MsgTypeError` rendering 2026-08-20 11:57:39 -04:00
20260820T150250Z_9afda1c6_prompt_io.raw.md Fix send-side `MsgTypeError` rendering 2026-08-20 11:57:39 -04:00
20260821T023537Z_ae6f2ac3_prompt_io.md Bound `Portal.cancel_actor()` frame sends 2026-08-21 15:03:35 -04:00
20260821T023537Z_ae6f2ac3_prompt_io.raw.md Bound `Portal.cancel_actor()` frame sends 2026-08-21 15:03:35 -04:00
20260821T040803Z_3c1bbe73_prompt_io.md Close late `ActorNursery` registration race 2026-08-21 15:03:35 -04:00
20260821T040803Z_3c1bbe73_prompt_io.raw.md Close late `ActorNursery` registration race 2026-08-21 15:03:35 -04:00
20260821T052052Z_3690e43a_prompt_io.md Retry macOS tests with `pytest-rerunfailures` 2026-08-27 13:43:06 -04:00
20260821T052052Z_3690e43a_prompt_io.raw.md Retry macOS tests with `pytest-rerunfailures` 2026-08-27 13:43:06 -04:00
20260821T233204Z_5d92595f_prompt_io.md Read WireGuard iface keys through `pyroute2` 2026-08-27 20:54:24 -04:00
20260821T233204Z_5d92595f_prompt_io.raw.md Read WireGuard iface keys through `pyroute2` 2026-08-27 20:54:24 -04:00
20260822T023226Z_59a8ecfd_prompt_io.md Add explicit `verify_wg_peer()` inspection 2026-08-27 20:54:25 -04:00
20260822T023226Z_59a8ecfd_prompt_io.raw.md Add explicit `verify_wg_peer()` inspection 2026-08-27 20:54:25 -04:00
20260822T032520Z_d35c802b_prompt_io.md Expose tunnel namespaces on IPC endpoints 2026-08-27 20:54:25 -04:00
20260822T032520Z_d35c802b_prompt_io.raw.md Expose tunnel namespaces on IPC endpoints 2026-08-27 20:54:25 -04:00
20260822T042026Z_29141f0b_prompt_io.md Add bindspace capability models 2026-08-27 20:54:25 -04:00
20260822T042026Z_29141f0b_prompt_io.raw.md Add bindspace capability models 2026-08-27 20:54:25 -04:00
20260824T222033Z_ce38cb6f_prompt_io.md Share `Context.cancel()` deadline with frame sends 2026-08-24 18:34:19 -04:00
20260824T222033Z_ce38cb6f_prompt_io.raw.md Share `Context.cancel()` deadline with frame sends 2026-08-24 18:34:19 -04:00
20260824T223614Z_88d538e3_prompt_io.md Assert paired `ActorNursery` reap state 2026-08-24 18:50:59 -04:00
20260824T223614Z_88d538e3_prompt_io.raw.md Assert paired `ActorNursery` reap state 2026-08-24 18:50:59 -04:00
20260824T225356Z_2f86dd1a_prompt_io.md Factor `child_in_debug()` state sampling 2026-08-24 19:38:22 -04:00
20260824T225356Z_2f86dd1a_prompt_io.raw.md Factor `child_in_debug()` state sampling 2026-08-24 19:38:22 -04:00
20260824T233957Z_5327b25e_prompt_io.md Use `Aid` keys for child reap state 2026-08-24 21:56:00 -04:00
20260824T233957Z_5327b25e_prompt_io.raw.md Use `Aid` keys for child reap state 2026-08-24 21:56:00 -04:00
20260825T015742Z_e42ecb55_prompt_io.md Clarify provisional child registration 2026-08-24 22:11:15 -04:00
20260825T015742Z_e42ecb55_prompt_io.raw.md Clarify provisional child registration 2026-08-24 22:11:15 -04:00
20260825T021319Z_ce430fca_prompt_io.md Inline `functools.Placeholder` lookup 2026-08-24 22:19:21 -04:00
20260825T021319Z_ce430fca_prompt_io.raw.md Inline `functools.Placeholder` lookup 2026-08-24 22:19:21 -04:00
20260825T045557Z_fdccfd7e_prompt_io.md Attach existing network namespaces 2026-08-27 20:54:25 -04:00
20260825T045557Z_fdccfd7e_prompt_io.raw.md Attach existing network namespaces 2026-08-27 20:54:25 -04:00
20260825T190529Z_e1007547_prompt_io.md Open owned network namespaces 2026-08-27 20:54:25 -04:00
20260825T190529Z_e1007547_prompt_io.raw.md Open owned network namespaces 2026-08-27 20:54:25 -04:00
20260825T191845Z_5b2a064a_prompt_io.md Dispatch explicit bindspace lifecycles 2026-08-27 20:54:25 -04:00
20260825T191845Z_5b2a064a_prompt_io.raw.md Dispatch explicit bindspace lifecycles 2026-08-27 20:54:25 -04:00
20260825T234631Z_b973e78c_prompt_io.md Separate local WireGuard configuration 2026-08-27 20:54:25 -04:00
20260825T234631Z_b973e78c_prompt_io.raw.md Separate local WireGuard configuration 2026-08-27 20:54:25 -04:00
20260826T001442Z_dcdf4d82_prompt_io.md Model explicit WireGuard peers 2026-08-27 20:54:25 -04:00
20260826T001442Z_dcdf4d82_prompt_io.raw.md Model explicit WireGuard peers 2026-08-27 20:54:25 -04:00
20260826T003430Z_6dd39da0_prompt_io.md Own WireGuard interface lifecycles 2026-08-27 20:56:06 -04:00
20260826T003430Z_6dd39da0_prompt_io.raw.md Own WireGuard interface lifecycles 2026-08-27 20:56:06 -04:00
20260826T022434Z_2245f094_prompt_io.md Compose WireGuard bindspace lifecycles 2026-08-27 20:57:33 -04:00
20260826T022434Z_2245f094_prompt_io.raw.md Compose WireGuard bindspace lifecycles 2026-08-27 20:57:33 -04:00
20260826T030534Z_d130431c_prompt_io.md Retain realized `BindspaceRef` metadata 2026-08-27 20:57:35 -04:00
20260826T030534Z_d130431c_prompt_io.raw.md Retain realized `BindspaceRef` metadata 2026-08-27 20:57:35 -04:00
20260827T211115Z_d130431c_prompt_io.md Rename bindspace resource models 2026-08-27 20:57:35 -04:00
20260827T211115Z_d130431c_prompt_io.raw.md Rename bindspace resource models 2026-08-27 20:57:35 -04:00
20260827T232500Z_d067505a_prompt_io.md Verify inherited network namespace entry 2026-08-27 20:57:35 -04:00
20260827T232500Z_d067505a_prompt_io.raw.md Verify inherited network namespace entry 2026-08-27 20:57:35 -04:00
20260828T003805Z_e40c39da_prompt_io.md Support nested `wg` maddrs 2026-08-27 20:43:25 -04:00
20260828T003805Z_e40c39da_prompt_io.raw.md Support nested `wg` maddrs 2026-08-27 20:43:25 -04:00
20260828T012205Z_9ae7cd86_prompt_io.md Enter inherited netns during child bootstrap 2026-08-27 23:31:03 -04:00
20260828T012205Z_9ae7cd86_prompt_io.raw.md Enter inherited netns during child bootstrap 2026-08-27 23:31:03 -04:00
20260828T045119Z_fb6d81d3_prompt_io.md Detect child death before parent handshake 2026-08-28 04:11:53 -04:00
20260828T045119Z_fb6d81d3_prompt_io.raw.md Detect child death before parent handshake 2026-08-28 04:11:53 -04:00
README.md Wait for ctx exit in `maybe_open_context()` 2026-08-03 23:45:42 -04:00

README.md

AI Prompt I/O Log - OpenCode

This directory tracks prompt inputs and model outputs for AI-assisted development using opencode.

Policy

Prompt logging follows the NLNet generative AI policy. All substantive AI contributions are logged with:

  • Model name and version
  • Timestamps
  • The prompts that produced the output
  • Unedited model output (.raw.md files)

Usage

Entries are created by the prompt-io workflow. Human contributors remain accountable for all decisions. AI-generated content is never presented as human-authored work.