feat(perception): connect binary ingress to the supervised full graph

This commit is contained in:
DCCONSTRUCTIONS
2026-09-02 13:53:25 +03:00
parent a85aed2e03
commit 221e429c0a
13 changed files with 1352 additions and 141 deletions
+11 -3
View File
@@ -21,7 +21,7 @@ from typing import Any, Literal
from .graph_contracts import GraphState
from .realtime_contract import StreamStart
from .realtime_scene import _wire_integer
from .streaming_queue import StreamBundle, StreamMailbox
from .streaming_queue import IngressReservation, StreamBundle, StreamMailbox
from .worker_lease import WorkerLease, WorkerLeaseError
@@ -116,6 +116,13 @@ class StreamingLifecycle:
self._check(start)
return self.mailbox.put(bundle)
def admit_reserved(
self, start: StreamStart, bundle: StreamBundle, reservation: IngressReservation
) -> bool:
with self._lock:
self._check(start)
return self.mailbox.put_reserved(bundle, reservation)
@contextmanager
def work(self, start: StreamStart, lane: Literal["gpu", "cpu"]) -> Iterator[None]:
with self._lock:
@@ -133,9 +140,10 @@ class StreamingLifecycle:
with self._lock:
self._active[lane] -= 1
def check_current(self, start: StreamStart) -> None:
def check_current(self, start: StreamStart, *, starting: bool = False) -> None:
"""Only child startup handshakes may opt into the warmup state."""
with self._lock:
self._check(start)
self._check(start, starting=starting)
def validate_result_binding(self, value: object) -> None:
"""Recheck at receipt/use; accepting a hash alone cannot renew authority."""