장시간 provider prefill과 stream backpressure가 정상 노드를 끊지 않도록 liveness window를 확장하고 Chronos 분리 완료 문서와 잔여 artifact를 정리한다.
1.5 KiB
1.5 KiB
IOP Node
IOP Node connects to Edge, applies the provider configuration delivered during registration, and executes normalized inference or provider-tunnel requests.
Runtime boundary
- Internal provider selection uses
adapter + target. session_idis opaque correlation only. Every request is an independent execution.- Cancellation requires a non-empty
run_idand affects only that run. - Provider commands are limited to capabilities, transport status, and the Ollama API tunnel.
- Standard inference, streaming, structured tools, usage, provider lifecycle, capacity, and reconnect behavior remain supported.
- Edge and Node use a shared tunnel-tolerant liveness profile: a 30-second heartbeat interval and a 45-second response wait. This keeps long provider prefill or streamed-response backpressure from disconnecting a healthy Node; a connection that actually exceeds the wait closes as
heartbeat_timeoutand enters supervised reconnect.
Node does not manage interactive host programs, persistent conversations, terminal emulation, arbitrary host commands, local filesystem execution context, or local quota scraping.
Development
go test -count=1 ./apps/node/...
go test -race -count=1 ./apps/node/internal/node ./apps/node/internal/adapters/...
go vet ./apps/node/...
The wire contract is documented in agent-contract/inner/edge-node-runtime-wire.md. Shared provider primitives are documented in agent-contract/inner/execution-runtime.md.