Node의 provider progress 기반 stall timeout, watchdog fencing과 bounded health probe evidence를 실행 경로에 반영한다. Edge-Node 계약과 구현 스펙, 테스트 및 Milestone 완료 evidence를 현재 상태와 맞춘다. |
||
|---|---|---|
| .. | ||
| cmd/node | ||
| internal | ||
| README.md | ||
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.