fix(call-to-play): explain peer startup state
Treat an unavailable actor ID or an explicit not-ready result as normal peer startup and tell the user that LAN connection is still in progress. Clear that message when snapshot registration succeeds. Map obsolete, missing-history, and active-history-limit store failures to distinct guidance without marking a healthy transport unavailable. Preserve a generic message for unexpected publish failures. Test Plan: - just frontend-test - just build - git diff --cached --check
This commit is contained in:
@@ -8,6 +8,21 @@ import {
|
||||
export const CHECKIN_LEAD_MS = 15 * 60_000;
|
||||
export const EXPIRED_RETENTION_MS = 5 * 60_000;
|
||||
export const TERMINAL_RETENTION_MS = 15 * 60_000;
|
||||
export const CALL_TO_PLAY_CONNECTING_MESSAGE =
|
||||
'Call to Play is still connecting to the LAN. Try again in a moment.';
|
||||
|
||||
export const callToPlayPublishErrorMessage = (error: unknown): string => {
|
||||
const detail = error instanceof Error ? error.message : String(error);
|
||||
if (detail.includes('Call to Play event is obsolete')
|
||||
|| detail.includes('Call to Play history is missing')
|
||||
) {
|
||||
return 'This Call to Play has expired or already finished.';
|
||||
}
|
||||
if (detail.includes('Call to Play event history is full')) {
|
||||
return 'Call to Play has reached its active update limit. Start or cancel an active call, then try again.';
|
||||
}
|
||||
return 'Could not send this Call to Play update.';
|
||||
};
|
||||
|
||||
export const extendDeadline = (
|
||||
now: number,
|
||||
|
||||
Reference in New Issue
Block a user