Orchestrata Ultimate › Plans › research › audit-02-communication-status

Audit 02 — Communication Fabric + Orchestrator Status-Awareness

Source: plans/research/audit-02-communication-status.md at 8a2cb42ad · last changed 2026-07-27 · first committed 2026-07-04 · 61 lines.

Prose pending.

Plan text

Audit 02 — Communication Fabric + Orchestrator Status-Awareness

Paths repo-relative. Two runtimes / two registries — the biggest confusion source.

Orientation: two of everything

Concern Out-of-process (gRPC) kernel In-process gateway fallback
Runner kernel/pipeline.py::PipelineRunner (escalation loop, get_status, submit_intent/respond) orchestrator/pipeline_runner.py::PipelineRunner (linear stages via PipelineRouter)
Entry agents/kernel_handler.py:build_kernel_packet_handler → CXPServer orchestrator/pipeline_kernel.py::PipelineKernelClient
Volk↔volk choreographed escalation linear stage chaining

VolkRegistry collision: kernel/volk_registry.py:398 (rich, heartbeat/health) vs plugin/registries.py:30 (SPEC-015 plugin registry) — unrelated.

CXP protocol

Dispatch (live path = Postman, NOT kernel/dispatcher.py)

Volk↔volk: NO arbitrary messaging (fixed choreography)

Orchestrator status: NO live query

  1. Live per-volk status real but CLI-only: agents/volks/base.py:47-49 (status/summary/current_thread); kernel/pipeline.py:321 get_status() → only consumer kernel/pipeline_cli.py:140. Not over gRPC/gateway.
  2. Gateway volk.list/volk.get = static configs/volks.yaml/_DEFAULT_VOLK_REGISTRY (gateway/handlers/volk.py:21,233); hardcodes health/current_task. Roster aliases (U:Ox/U:PS/U:Vz/U:KR) don't even match live aliases.
  3. cxp.status (gateway/handlers/cxp.py:379) = packet delivery status per thread, not volk liveness.
  4. Rich registry orphaned: kernel/volk_registry.py has VolkStatus/VolkHealth/last_heartbeat/record_heartbeat(:1032)/get_volk_health(:987)/in_flight/query_volks(:1100) — but not instantiated by either live runner; record_heartbeat has ZERO call sites.
  5. PacketType.HEARTBEAT never emitted. Gateway heartbeat = WS UI↔gateway ping, unrelated.

Reply transport

Insertion points

Volk↔volk

Status

Highest-leverage

Primitives exist (alias addressing, Postman dispatch to any alias, send(), WorkStatus, get_status(), heartbeat/health registry). Work = wiring: (1) route arbitrary/multiple recipients in _route_escalation backed by a live VolkRegistry capability resolver; (2) feed record_heartbeat/in-flight at sync_router._dispatch_sync + expose get_status()/get_volk_health via a kernel.status RPC replacing the static roster.