diff --git a/NucleicRemote/NucleicRemote/Models/HostConnection.swift b/NucleicRemote/NucleicRemote/Models/HostConnection.swift index e1f1335..2d20037 100644 --- a/NucleicRemote/NucleicRemote/Models/HostConnection.swift +++ b/NucleicRemote/NucleicRemote/Models/HostConnection.swift @@ -453,7 +453,9 @@ final class HostConnection { callbacks.didUpdate() send(.listSessions) send(.listDashboard) - if let id = openSessionID { send(.subscribe(Subscribe(sessionID: id, sinceSeq: nil, verbosity: .full))) } + // Warm-resubscribe from what we already have, so a reconnect on a long transcript replays + // only the gap rather than snapping back to the host's 200-event tail. + if let id = openSessionID { send(.subscribe(Subscribe(sessionID: id, sinceSeq: openMaxSeq, verbosity: .full))) } case .sessionList(let list): sessions = list callbacks.didUpdate()