Expand description
Versioned, language-neutral service over persisted harness sessions.
The service is transport-agnostic: HarnessSessionService::handle accepts
one JSON-RPC value and HarnessSessionService::poll produces subscription
notifications. The CLI exposes those primitives as NDJSON over stdio.
Structs§
- Gateway
Health - ORCH-17:
gatewayon aharness.v1.harnesses.listrow. - Harness
Session Service - Stateful persisted-session service. Each instance owns its follow subscriptions; discovery and loading remain read-only.
- Opened
Runtime - The result of
RuntimeOpen::open, ready forHarnessSessionService::finish_runtime_open. - Runtime
Open - One
RUNTIME_OPEN_METHODSrequest, parsed but not yet started. SeeHarnessSessionService::runtime_openfor why it exists apart fromHarnessSessionService::handle_async.
Enums§
- Gateway
State - Receipt-backed evidence that a harness has a RUNNING instance right now,
distinct from being merely installed (UNI-7). Detection is passive and
default-on: a gateway liveness connect for daemon harnesses, a fresh
SQLite WAL stamp for store-writer harnesses (precedent: the opencode
follower’s -wal/-shm freshness). Control stays behind per-connection
grants — this reports observations only.
ORCH-17: the gateway-health noun on an inventory row. Derived from the
UNI-7 running-instance probe (Hermes:
state.db-walfreshness; OpenClaw: a TCP connect to the gateway endpoint resolved from its OWN config) plus the executable version — never by starting anything.
Constants§
- HARNESS_
SERVICE_ METHODS - Every JSON-RPC method the harness service dispatches (
harness.v1.capabilitiesreports it; ORCH-4 registry tiers must cite entries of it). - HARNESS_
SERVICE_ VERSION - Protocol namespace implemented by this service.
- RUNTIME_
CONTROL_ DEADLINE - How long a control call on an ALREADY-open runtime — send input, interrupt,
steer, respond, close — gets before its caller is answered an error
instead. A live runtime answers these in milliseconds; a wedged one never
answers at all, and
closeis exactly what a caller reaches for when it suspects that. - RUNTIME_
EVENT_ METHOD - Notification method emitted for live runtime events.
- RUNTIME_
OPEN_ DEADLINE - How long a runtime gets to finish opening before its caller is answered an error instead. A program that never speaks the protocol at all — the wrong binary, a shim that prints usage and waits — never answers the handshake, so the wait is unbounded without this.
- RUNTIME_
OPEN_ METHODS - The doors that open a runtime: each spawns or joins a program and waits on that program’s protocol handshake before it can answer.
- SESSION_
ACTIVITY_ EVENT_ METHOD - Notification method emitted for normalized session-activity transitions.
- SESSION_
EVENT_ METHOD - Notification method emitted for followed-session changes.
- SESSION_
INDEX_ EVENT_ METHOD - Notification method emitted for revisioned session-list changes.