iop/agent-ops/rules/project/domain/node/rules.md

2 KiB

domain last_rule_review_commit last_rule_updated_at
node 4695bcbc60 2026-08-02

Node

Responsibility

Node connects to Edge and executes provider requests. It owns transport handlers, provider adapter construction, local run tracking, runtime config swaps, provider tunnels, and execution event translation.

Owned paths

  • apps/node/cmd/node/
  • apps/node/internal/bootstrap/
  • apps/node/internal/node/
  • apps/node/internal/router/
  • apps/node/internal/transport/
  • apps/node/internal/adapters/
  • apps/node/internal/store/

Required patterns

  • Translate protobuf messages to packages/go/execution types in runtime_bridge.go.
  • Use adapter + target for internal provider selection.
  • Treat session_id as opaque correlation. Never use it to reuse or resume execution state.
  • Track cancellation by a non-empty run id and always deregister completed runs.
  • Admit only capabilities, transport status, and Ollama API provider commands before provider lookup.
  • Keep normalized run streams separate from raw provider tunnel frames.
  • Build replacement adapter registries before a live config swap; let in-flight work finish against its captured provider.
  • Base local concurrency on adapter capability. Edge remains the owner of distributed provider-pool admission and leases.
  • Preserve standard inference, structured tools, usage, provider lifecycle, reconnect, and tunnel behavior.
  • Regenerate bindings from protobuf source; never edit generated files.

Prohibited ownership

Node must not implement persistent host programs, interactive terminals, conversation resume, arbitrary host command execution, local filesystem context mutation, or quota/status scraping. It must not accept direct scheduling from Control Plane or Client.

Contracts and verification

  • agent-contract/inner/execution-runtime.md
  • agent-contract/inner/edge-node-runtime-wire.md
  • Follow the testing domain rule after changes to run, cancel, command, refresh, reconnect, adapter, tunnel, or transport paths.