mirror of
https://github.com/EasyTier/EasyTier.git
synced 2026-10-18 08:00:44 +00:00
* fix(web): stop replaying heartbeats after token validation Wake runtime reconciliation once when authentication establishes the session. Repeated successful validation, including a binding refresh, must not replay a heartbeat whose instance list predates a completed Run. Use existing notifications as wakeups and read the latest session heartbeat when reconciling, so delayed validation and config callbacks cannot replace a newer runtime observation with a cached payload. Cover one initial wakeup, 99 successful validations without replay, and a subsequent real heartbeat that still wakes runtime reconciliation. * fix(web): wait for authoritative config during receiver takeover Keep the desired webhook revision on the authenticated session. Gate runtime reconciliation, mutations and applied acknowledgements until the receiver has that exact revision, preserving running Core instances while its local configuration is missing or stale. After committed Full/Patch updates, request current validation authority without letting delayed publication callbacks or validation responses restore an older target. After the connected ACK establishes the route, wake existing validation once when configuration is still unavailable. Cover missing and obsolete state, authoritative empty sets, stale rounds, callback races, live Core handoff and an explicit 1000-connection takeover exercise with an independent mount.