From b4fe87e1caae3431cba09e7d755df4549493e295 Mon Sep 17 00:00:00 2001 From: Nomads_Reach <144523850+NomadsReach@users.noreply.github.com> Date: Sat, 15 Aug 2026 21:46:38 -0400 Subject: [PATCH] Track last accepted transform timing --- server/client_session.py | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/server/client_session.py b/server/client_session.py index d5c11b6..399abec 100644 --- a/server/client_session.py +++ b/server/client_session.py @@ -14,6 +14,7 @@ class ClientSession: connected_at: float last_packet_at: float | None = None last_transform: dict[str, Any] | None = None + last_transform_monotonic: float | None = None packets_received: int = 0 packets_sent: int = 0 packets_broadcast: int = 0 @@ -32,9 +33,15 @@ class ClientSession: self.packets_received += 1 return self.packets_received - def record_transform(self, packet: dict[str, Any]) -> None: + def record_transform(self, packet: dict[str, Any], accepted_monotonic: float | None = None) -> None: with self._lock: self.last_transform = dict(packet) + self.last_transform_monotonic = accepted_monotonic + + def get_last_transform_anchor(self) -> tuple[dict[str, Any] | None, float | None]: + with self._lock: + transform = dict(self.last_transform) if self.last_transform is not None else None + return transform, self.last_transform_monotonic def record_sent(self, *, broadcast: bool = False) -> None: with self._lock: