Skip to content

Commit 299ec7a

Browse files
SisyphusZhengDevBot
andauthored
fix(fullstack): widen tier-2 reseed bound and add failure diagnostics (#1079)
Three seeded attempts over ~21s still delivered nothing in CI, so the rejoined-channel issue is not a sub-second activation race. Widen to 6 attempts (~45s) to separate 'slow binding activation' from 'never delivers', and on final failure include the island's live status and rendered event count so the next red run tells us which world we are in. Co-authored-by: DevBot <devbot@openelement.dev>
1 parent cc07e2c commit 299ec7a

1 file changed

Lines changed: 9 additions & 2 deletions

File tree

tools/smoke-supabase-browser.ts

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ async function seedNoteUntilDelivered(
4545
marker: string,
4646
title: string,
4747
): Promise<void> {
48-
for (let attempt = 1; attempt <= 3; attempt++) {
48+
for (let attempt = 1; attempt <= 6; attempt++) {
4949
const insert = await fetch(`${supabaseUrl}/rest/v1/notes`, {
5050
method: 'POST',
5151
headers: {
@@ -64,7 +64,14 @@ async function seedNoteUntilDelivered(
6464
.then(() => true, () => false);
6565
if (delivered) return;
6666
}
67-
throw new Error(`Realtime seed "${marker}" was not delivered after 3 bounded attempts`);
67+
// Diagnostics for CI-only failures: is the island stuck pre-subscribe, or
68+
// subscribed-but-silent?
69+
const status = await live.locator('#live-status').innerText().catch(() => 'unreadable');
70+
const events = await live.locator('#live-events li').count().catch(() => -1);
71+
throw new Error(
72+
`Realtime seed "${marker}" was not delivered after 6 bounded attempts ` +
73+
`(island status: "${status}", live events rendered: ${events})`,
74+
);
6875
}
6976

7077
const browser = await chromium.launch();

0 commit comments

Comments
 (0)