crossmate

A collaborative crossword app for iOS
Log | Files | Refs | LICENSE

commit 056e55c54cfd2c51605453ad782f2e595243af8a
parent d427dee4a032f9341164a5fa714086dda1a4d12b
Author: Michael Camilleri <[email protected]>
Date:   Tue, 21 Jul 2026 10:27:04 +0900

Fix stale comments

Diffstat:
MCrossmate/Sync/RecordSerializer.swift | 5+++--
MCrossmate/Sync/SyncEngine.swift | 8+++++---
2 files changed, 8 insertions(+), 5 deletions(-)

diff --git a/Crossmate/Sync/RecordSerializer.swift b/Crossmate/Sync/RecordSerializer.swift @@ -626,8 +626,9 @@ enum RecordSerializer { /// authorID alone is insufficient for kinds (e.g. `.opened`) that fire /// between a single user's own devices, where authorID is identical. /// - `playerName` and `puzzleTitle` let receivers render the alert body. - /// - `kind` distinguishes the remaining bootstrap kinds (.join / - /// .friend / .invite / .hail). + /// - `kind` distinguishes the bootstrap kinds current clients write + /// (.friend / .invite / .decline); legacy `.join`/`.hail` records + /// remain parseable but are no longer produced. static func pingRecord( gameID: UUID, authorID: String, diff --git a/Crossmate/Sync/SyncEngine.swift b/Crossmate/Sync/SyncEngine.swift @@ -773,8 +773,8 @@ actor SyncEngine { } } - /// Registers a Ping record as a pending send. Pings now only cover - /// bootstrap kinds (`.join` / `.friend` / `.invite` / `.hail`) — the + /// Registers a Ping record as a pending send. Current clients only write + /// bootstrap kinds (`.friend` / `.invite` / `.decline`) — the /// user-facing play events go through the push worker. Sender-only /// state: the payload is committed to a durable outbox before the /// CKSyncEngine save is queued, then retained until CloudKit confirms it. @@ -988,7 +988,9 @@ actor SyncEngine { /// One-shot cleanup of Ping records whose kinds were retired when the /// push worker took over user-facing event notifications: /// `.check`, `.reveal`, `.resign`, `.win`, and the old session-start - /// `.join`. Those kinds are gone from `PingKind`, but records written + /// `.join`. Current clients no longer write these — `.check`/`.reveal`/ + /// `.resign`/`.win` are gone from `PingKind` entirely, while `.join` + /// remains only so legacy records stay parseable — but records written /// by pre-cutover builds linger in shared game zones and will replay /// as obsolete announcements after a zone fetch. Every device drains /// the game zones it can reach exactly once.