feat(perception): export bounded runtime observations outside heartbeat lane

This commit is contained in:
DCCONSTRUCTIONS
2026-09-02 17:35:46 +03:00
parent c570f7d938
commit 2ef8c08bf2
4 changed files with 179 additions and 1 deletions
@@ -16,6 +16,7 @@ from pathlib import Path
from pilot_freshness import CLOCK_DOMAIN
from k1link.perception.realtime_contract import StreamStart
from k1link.perception.runtime_telemetry import RuntimeTelemetryPublisher
from k1link.perception.streaming_continuity import StreamSuspended
from k1link.perception.streaming_lifecycle import StreamingLifecycle
from k1link.perception.worker_control import WorkerControlChannel
@@ -132,8 +133,14 @@ class PilotController:
)
self.thread.start()
self.control = None
self.telemetry = None
self.report = report
try:
if getattr(args, "telemetry_snapshot", None):
self.telemetry = RuntimeTelemetryPublisher(
self.runtime, Path(args.telemetry_snapshot),
"K1 DDRNet + RF-DETR + LiDAR + TGS",
)
if control_config:
self.control = WorkerControlPump(
self.runtime,
@@ -195,4 +202,8 @@ class PilotController:
self.report["worker_control_thread_released"] = self.control.close()
self.report["worker_control"] = self.control.snapshot()
self.stop_renewals()
return self.runtime.close(reason)
closed = self.runtime.close(reason)
if self.telemetry:
self.report["telemetry_thread_released"] = self.telemetry.close()
self.report["telemetry_export_failures"] = self.telemetry.failures
return closed
@@ -921,6 +921,7 @@ if __name__ == "__main__":
parser.add_argument("--controller-image-sha256")
parser.add_argument("--worker-control-requests")
parser.add_argument("--worker-control-responses")
parser.add_argument("--telemetry-snapshot", help="Optional host-agent current snapshot, never readiness")
parser.add_argument(
"--worker-readiness-mode",
choices=("strict-envelope", "labelled-experiment"),