docs: add design system session continuation prompt to README #174
e2e.yml
on: push
Annotations
22 errors, 3 warnings, and 1 notice
|
E2E (chromium 3/4)
Process completed with exit code 1.
|
|
E2E (firefox 3/4)
Process completed with exit code 1.
|
|
E2E (chromium 1/4)
Process completed with exit code 1.
|
|
E2E (webkit 3/4)
Process completed with exit code 1.
|
|
E2E (webkit 1/4)
Process completed with exit code 1.
|
|
E2E (firefox 1/4)
Process completed with exit code 1.
|
|
E2E (firefox 2/4)
The job has exceeded the maximum execution time of 30m0s
|
|
E2E (firefox 2/4)
The operation was canceled.
|
|
E2E (chromium 2/4)
The job has exceeded the maximum execution time of 30m0s
|
|
E2E (chromium 2/4)
The operation was canceled.
|
|
E2E (webkit 2/4)
The job has exceeded the maximum execution time of 30m0s
|
|
E2E (webkit 2/4)
The operation was canceled.
|
|
[chromium] › tests/e2e/auth/session-persistence.spec.ts:187:7 › Session Persistence E2E › should clear session on sign out:
tests/e2e/auth/session-persistence.spec.ts#L199
4) [chromium] › tests/e2e/auth/session-persistence.spec.ts:187:7 › Session Persistence E2E › should clear session on sign out
Error: expect(received).toContain(expected) // indexOf
Expected substring: "supabase"
Received string: "{\"cookie-consent\":\"{\\\"necessary\\\":true,\\\"functional\\\":true,\\\"analytics\\\":true,\\\"marketing\\\":true,\\\"timestamp\\\":1770964002536,\\\"version\\\":\\\"1.0.0\\\",\\\"lastUpdated\\\":1770964003227,\\\"method\\\":\\\"banner_accept_all\\\"}\",\"auth_remember_me\":\"false\",\"sb-smuypsxnwncnjhrbdosh-auth-token\":\"{\\\"access_token\\\":\\\"***",\\\"token_type\\\":\\\"bearer\\\",\\\"expires_in\\\":3600,\\\"expires_at\\\":1770967896,\\\"refresh_token\\\":\\\"mw462zhr36kx\\\",\\\"user\\\":{\\\"id\\\":\\\"b60a610a-6138-4782-8a96-6b8f42862e72\\\",\\\"aud\\\":\\\"authenticated\\\",\\\"role\\\":\\\"authenticated\\\",\\\"email\\\":\\\"e2e-session-1770964282805-281sml@mailinator.com\\\",\\\"email_confirmed_at\\\":\\\"2026-02-13T06:31:23.005331Z\\\",\\\"phone\\\":\\\"\\\",\\\"confirmed_at\\\":\\\"2026-02-13T06:31:23.005331Z\\\",\\\"last_sign_in_at\\\":\\\"2026-02-13T06:31:36.215171036Z\\\",\\\"app_metadata\\\":{\\\"provider\\\":\\\"email\\\",\\\"providers\\\":[\\\"email\\\"]},\\\"user_metadata\\\":{\\\"email_verified\\\":true},\\\"identities\\\":[{\\\"identity_id\\\":\\\"49fc8cbe-ae6f-4382-a884-ba581042f2b2\\\",\\\"id\\\":\\\"b60a610a-6138-4782-8a96-6b8f42862e72\\\",\\\"user_id\\\":\\\"b60a610a-6138-4782-8a96-6b8f42862e72\\\",\\\"identity_data\\\":{\\\"email\\\":\\\"e2e-session-1770964282805-281sml@mailinator.com\\\",\\\"email_verified\\\":false,\\\"phone_verified\\\":false,\\\"sub\\\":\\\"b60a610a-6138-4782-8a96-6b8f42862e72\\\"},\\\"provider\\\":\\\"email\\\",\\\"last_sign_in_at\\\":\\\"2026-02-13T06:31:23.00414Z\\\",\\\"created_at\\\":\\\"2026-02-13T06:31:23.004193Z\\\",\\\"updated_at\\\":\\\"2026-02-13T06:31:23.004193Z\\\",\\\"email\\\":\\\"e2e-session-1770964282805-281sml@mailinator.com\\\"}],\\\"created_at\\\":\\\"2026-02-13T06:31:23.002798Z\\\",\\\"updated_at\\\":\\\"2026-02-13T06:31:36.217207Z\\\",\\\"is_anonymous\\\":false},\\\"weak_password\\\":null}\"}"
197 | JSON.stringify(window.localStorage)
198 | );
> 199 | expect(beforeSignOut).toContain('supabase');
| ^
200 |
201 | // Sign out (with verify: false since we verify manually below)
202 | await signOut(page, { verify: false });
at /home/runner/work/SpokeToWork/SpokeToWork/tests/e2e/auth/session-persistence.spec.ts:199:27
|
|
[chromium] › tests/e2e/auth/new-user-complete-flow.spec.ts:183:7 › New User Complete Flow › Complete new user journey: signup -> companies -> signout:
tests/e2e/auth/new-user-complete-flow.spec.ts#L252
3) [chromium] › tests/e2e/auth/new-user-complete-flow.spec.ts:183:7 › New User Complete Flow › Complete new user journey: signup -> companies -> signout
Retry #2 ───────────────────────────────────────────────────────────────────────────────────────
Error: expect(received).toBe(expected) // Object.is equality
Expected: "6cc1dd40-76c0-4981-a125-23493a97c1b7"
Received: "1c890e46-4ad8-468e-8066-9c651aa04516"
250 | // Verify metro area was assigned by trigger
251 | const profileAfter = await getUserProfile(testUserId!);
> 252 | expect(profileAfter?.metro_area_id).toBe(METRO_AREA_ID);
| ^
253 | console.log('Metro area assigned after home location set');
254 |
255 | // === STEP 6: Verify seed companies were auto-created by trigger ===
at /home/runner/work/SpokeToWork/SpokeToWork/tests/e2e/auth/new-user-complete-flow.spec.ts:252:43
|
|
[chromium] › tests/e2e/auth/new-user-complete-flow.spec.ts:183:7 › New User Complete Flow › Complete new user journey: signup -> companies -> signout:
tests/e2e/auth/new-user-complete-flow.spec.ts#L252
3) [chromium] › tests/e2e/auth/new-user-complete-flow.spec.ts:183:7 › New User Complete Flow › Complete new user journey: signup -> companies -> signout
Retry #1 ───────────────────────────────────────────────────────────────────────────────────────
Error: expect(received).toBe(expected) // Object.is equality
Expected: "6cc1dd40-76c0-4981-a125-23493a97c1b7"
Received: "1c890e46-4ad8-468e-8066-9c651aa04516"
250 | // Verify metro area was assigned by trigger
251 | const profileAfter = await getUserProfile(testUserId!);
> 252 | expect(profileAfter?.metro_area_id).toBe(METRO_AREA_ID);
| ^
253 | console.log('Metro area assigned after home location set');
254 |
255 | // === STEP 6: Verify seed companies were auto-created by trigger ===
at /home/runner/work/SpokeToWork/SpokeToWork/tests/e2e/auth/new-user-complete-flow.spec.ts:252:43
|
|
[chromium] › tests/e2e/auth/new-user-complete-flow.spec.ts:183:7 › New User Complete Flow › Complete new user journey: signup -> companies -> signout:
tests/e2e/auth/new-user-complete-flow.spec.ts#L252
3) [chromium] › tests/e2e/auth/new-user-complete-flow.spec.ts:183:7 › New User Complete Flow › Complete new user journey: signup -> companies -> signout
Error: expect(received).toBe(expected) // Object.is equality
Expected: "6cc1dd40-76c0-4981-a125-23493a97c1b7"
Received: "1c890e46-4ad8-468e-8066-9c651aa04516"
250 | // Verify metro area was assigned by trigger
251 | const profileAfter = await getUserProfile(testUserId!);
> 252 | expect(profileAfter?.metro_area_id).toBe(METRO_AREA_ID);
| ^
253 | console.log('Metro area assigned after home location set');
254 |
255 | // === STEP 6: Verify seed companies were auto-created by trigger ===
at /home/runner/work/SpokeToWork/SpokeToWork/tests/e2e/auth/new-user-complete-flow.spec.ts:252:43
|
|
[chromium] › tests/e2e/auth/complete-flows.spec.ts:590:7 › Flow 5: Sign Out and Sign Back In › Sign out clears session:
tests/e2e/auth/complete-flows.spec.ts#L671
2) [chromium] › tests/e2e/auth/complete-flows.spec.ts:590:7 › Flow 5: Sign Out and Sign Back In › Sign out clears session, sign in restores access
Retry #2 ───────────────────────────────────────────────────────────────────────────────────────
Error: expect(received).toBe(expected) // Object.is equality
Expected: true
Received: false
669 | // Welcome message should still be sent (not re-sent)
670 | const welcomeStillSent = await getWelcomeMessageSent(testUserId);
> 671 | expect(welcomeStillSent).toBe(true);
| ^
672 | console.log('Welcome message flag still true');
673 |
674 | console.log('Flow 5 PASSED: Sign out and sign back in');
at /home/runner/work/SpokeToWork/SpokeToWork/tests/e2e/auth/complete-flows.spec.ts:671:34
|
|
[chromium] › tests/e2e/auth/complete-flows.spec.ts:590:7 › Flow 5: Sign Out and Sign Back In › Sign out clears session:
tests/e2e/auth/complete-flows.spec.ts#L671
2) [chromium] › tests/e2e/auth/complete-flows.spec.ts:590:7 › Flow 5: Sign Out and Sign Back In › Sign out clears session, sign in restores access
Retry #1 ───────────────────────────────────────────────────────────────────────────────────────
Error: expect(received).toBe(expected) // Object.is equality
Expected: true
Received: false
669 | // Welcome message should still be sent (not re-sent)
670 | const welcomeStillSent = await getWelcomeMessageSent(testUserId);
> 671 | expect(welcomeStillSent).toBe(true);
| ^
672 | console.log('Welcome message flag still true');
673 |
674 | console.log('Flow 5 PASSED: Sign out and sign back in');
at /home/runner/work/SpokeToWork/SpokeToWork/tests/e2e/auth/complete-flows.spec.ts:671:34
|
|
[chromium] › tests/e2e/auth/complete-flows.spec.ts:590:7 › Flow 5: Sign Out and Sign Back In › Sign out clears session:
tests/e2e/auth/complete-flows.spec.ts#L671
2) [chromium] › tests/e2e/auth/complete-flows.spec.ts:590:7 › Flow 5: Sign Out and Sign Back In › Sign out clears session, sign in restores access
Error: expect(received).toBe(expected) // Object.is equality
Expected: true
Received: false
669 | // Welcome message should still be sent (not re-sent)
670 | const welcomeStillSent = await getWelcomeMessageSent(testUserId);
> 671 | expect(welcomeStillSent).toBe(true);
| ^
672 | console.log('Welcome message flag still true');
673 |
674 | console.log('Flow 5 PASSED: Sign out and sign back in');
at /home/runner/work/SpokeToWork/SpokeToWork/tests/e2e/auth/complete-flows.spec.ts:671:34
|
|
[chromium] › tests/e2e/auth/complete-flows.spec.ts:359:7 › Flow 1: Email/Password Signup → Welcome Message › New user sign-in triggers key initialization and welcome message:
tests/e2e/auth/complete-flows.spec.ts#L410
1) [chromium] › tests/e2e/auth/complete-flows.spec.ts:359:7 › Flow 1: Email/Password Signup → Welcome Message › New user sign-in triggers key initialization and welcome message
Retry #2 ───────────────────────────────────────────────────────────────────────────────────────
Error: expect(received).toBe(expected) // Object.is equality
Expected: true
Received: false
408 | const welcomeAfter = await getWelcomeMessageSent(testUserId);
409 | console.log(`welcome_message_sent: ${welcomeAfter}`);
> 410 | expect(welcomeAfter).toBe(true);
| ^
411 |
412 | // Verify conversation with admin exists
413 | const hasConvo = await hasConversationWithAdmin(testUserId);
at /home/runner/work/SpokeToWork/SpokeToWork/tests/e2e/auth/complete-flows.spec.ts:410:28
|
|
[chromium] › tests/e2e/auth/complete-flows.spec.ts:359:7 › Flow 1: Email/Password Signup → Welcome Message › New user sign-in triggers key initialization and welcome message:
tests/e2e/auth/complete-flows.spec.ts#L410
1) [chromium] › tests/e2e/auth/complete-flows.spec.ts:359:7 › Flow 1: Email/Password Signup → Welcome Message › New user sign-in triggers key initialization and welcome message
Retry #1 ───────────────────────────────────────────────────────────────────────────────────────
Error: expect(received).toBe(expected) // Object.is equality
Expected: true
Received: false
408 | const welcomeAfter = await getWelcomeMessageSent(testUserId);
409 | console.log(`welcome_message_sent: ${welcomeAfter}`);
> 410 | expect(welcomeAfter).toBe(true);
| ^
411 |
412 | // Verify conversation with admin exists
413 | const hasConvo = await hasConversationWithAdmin(testUserId);
at /home/runner/work/SpokeToWork/SpokeToWork/tests/e2e/auth/complete-flows.spec.ts:410:28
|
|
[chromium] › tests/e2e/auth/complete-flows.spec.ts:359:7 › Flow 1: Email/Password Signup → Welcome Message › New user sign-in triggers key initialization and welcome message:
tests/e2e/auth/complete-flows.spec.ts#L405
1) [chromium] › tests/e2e/auth/complete-flows.spec.ts:359:7 › Flow 1: Email/Password Signup → Welcome Message › New user sign-in triggers key initialization and welcome message
Error: expect(received).toBe(expected) // Object.is equality
Expected: true
Received: false
403 | const keysAfterSignIn = await hasEncryptionKeys(testUserId);
404 | console.log(`Keys created: ${keysAfterSignIn}`);
> 405 | expect(keysAfterSignIn).toBe(true);
| ^
406 |
407 | // Verify welcome message was sent
408 | const welcomeAfter = await getWelcomeMessageSent(testUserId);
at /home/runner/work/SpokeToWork/SpokeToWork/tests/e2e/auth/complete-flows.spec.ts:405:31
|
|
E2E (firefox 2/4)
No files were found with the provided path: blob-report/. No artifacts will be uploaded.
|
|
E2E (chromium 2/4)
No files were found with the provided path: blob-report/. No artifacts will be uploaded.
|
|
E2E (webkit 2/4)
No files were found with the provided path: blob-report/. No artifacts will be uploaded.
|
|
🎭 Playwright Run Summary
41 failed
[chromium] › tests/e2e/auth/complete-flows.spec.ts:359:7 › Flow 1: Email/Password Signup → Welcome Message › New user sign-in triggers key initialization and welcome message
[chromium] › tests/e2e/auth/complete-flows.spec.ts:590:7 › Flow 5: Sign Out and Sign Back In › Sign out clears session, sign in restores access
[chromium] › tests/e2e/auth/new-user-complete-flow.spec.ts:183:7 › New User Complete Flow › Complete new user journey: signup -> companies -> signout
[chromium] › tests/e2e/auth/session-persistence.spec.ts:187:7 › Session Persistence E2E › should clear session on sign out
[chromium] › tests/e2e/auth/welcome-message.spec.ts:112:7 › Welcome Message Flow › Sign-in triggers welcome message from admin
[firefox] › tests/e2e/auth/complete-flows.spec.ts:359:7 › Flow 1: Email/Password Signup → Welcome Message › New user sign-in triggers key initialization and welcome message
[firefox] › tests/e2e/auth/complete-flows.spec.ts:433:7 › Flow 4: Account Deletion › Account deletion removes all user data
[firefox] › tests/e2e/auth/complete-flows.spec.ts:590:7 › Flow 5: Sign Out and Sign Back In › Sign out clears session, sign in restores access
[firefox] › tests/e2e/auth/new-user-complete-flow.spec.ts:183:7 › New User Complete Flow › Complete new user journey: signup -> companies -> signout
[firefox] › tests/e2e/auth/session-persistence.spec.ts:187:7 › Session Persistence E2E › should clear session on sign out
[firefox] › tests/e2e/auth/welcome-message.spec.ts:112:7 › Welcome Message Flow › Sign-in triggers welcome message from admin
[firefox] › tests/e2e/map-visual-regression.spec.ts:71:7 › Map Visual Regression Tests › should capture baseline map screenshot - light theme
[firefox] › tests/e2e/map-visual-regression.spec.ts:83:7 › Map Visual Regression Tests › should capture baseline map screenshot - dark theme
[firefox] › tests/e2e/map-visual-regression.spec.ts:95:7 › Map Visual Regression Tests › should maintain visual consistency after theme toggle
[firefox] › tests/e2e/map-visual-regression.spec.ts:115:7 › Map Visual Regression Tests › bike routes have sufficient color contrast - light theme
[firefox] › tests/e2e/map-visual-regression.spec.ts:140:7 › Map Visual Regression Tests › bike routes have sufficient color contrast - dark theme
[firefox] › tests/e2e/map-visual-regression.spec.ts:161:7 › Map Visual Regression Tests › markers have ARIA labels for accessibility
[firefox] › tests/e2e/map-visual-regression.spec.ts:174:7 › Map Visual Regression Tests › map container has accessibility attributes
[firefox] › tests/e2e/map-visual-regression.spec.ts:183:7 › Map Visual Regression Tests › navigation controls are visible and labeled
[firefox] › tests/e2e/map-visual-regression.spec.ts:204:7 › Route Layer Visibility › all-bike-routes layer renders with correct styling
[firefox] › tests/e2e/map-visual-regression.spec.ts:227:7 › Route Layer Visibility › cycleway layers render from vector tiles
[firefox] › tests/e2e/map-visual-regression.spec.ts:246:7 › Theme Switching Visual Tests › no visual glitches during rapid theme toggles
[firefox] › tests/e2e/map-visual-regression.spec.ts:278:7 › Theme Switching Visual Tests › screenshot comparison after 10 theme toggles
[firefox] › tests/e2e/map-visual-regression.spec.ts:307:7 › Marker Variants Visual Tests › marker variants should be visually distinct
[webkit] › tests/e2e/auth/complete-flows.spec.ts:359:7 › Flow 1: Email/Password Signup → Welcome Message › New user sign-in triggers key initialization and welcome message
[webkit] › tests/e2e/auth/complete-flows.spec.ts:433:7 › Flow 4: Account Deletion › Account deletion removes all user data
[webkit] › tests/e2e/auth/complete-flows.spec.ts:590:7 › Flow 5: Sign Out and Sign Back In › Sign out clears session, sign in restores access
|
Artifacts
Produced during runtime
| Name | Size | Digest | |
|---|---|---|---|
|
auth-state
Expired
|
1.41 KB |
sha256:9c2961b718c4e2d873be875e9cbebe2b0bdc6e67fe3b8382a2b8f2e442abd9e2
|
|
|
blob-report-chromium-0
Expired
|
35.7 MB |
sha256:1bb0a59a21f360fb9347cb67387a5173d767888b0b27b4fa3e658069c07c00b7
|
|
|
blob-report-chromium-2
Expired
|
16.4 MB |
sha256:39fe55d2b88e1e6516805bef90193dfb3f5dcfd6aeecdfcb77f5be34e7cac512
|
|
|
blob-report-chromium-3
Expired
|
22.7 MB |
sha256:9a139b478a2866789823a5e147ac30d0718aecd86ae4a3630dc2a891863f304f
|
|
|
blob-report-firefox-4
Expired
|
53.7 MB |
sha256:41f5c093e21d5c0872d4cfdd9c3f5bd50800e90a4ac74fb57f5cc8a90a4ef0c4
|
|
|
blob-report-firefox-6
Expired
|
17.9 MB |
sha256:2296c3867538e167d7c737d80f2bd74277d46a96ff0d68d68413e5037fdafa10
|
|
|
blob-report-firefox-7
Expired
|
20.5 MB |
sha256:a720edbfb01006eba58519b0f6560efd152f36f904e130b65cda1ff53d5fdc99
|
|
|
blob-report-webkit-10
Expired
|
39.2 MB |
sha256:b7f2a58e83be65a0b9801cfe039ad2d75d49204e60d935e178e1eb8d42d3e233
|
|
|
blob-report-webkit-11
Expired
|
40.9 MB |
sha256:cc6fad3b41d0cd883b3f02fe2f577324d05d49b9533ea410e620f5ae5295c8ab
|
|
|
blob-report-webkit-8
Expired
|
74.4 MB |
sha256:37be729a49daa0ba88064fa64ec966962e84279de4dc55fae755a57b27fa959e
|
|
|
build-output
Expired
|
12.4 MB |
sha256:f51accf9ede4c16fc65fa45837846d4a4b71a687c17ac2c863a00b39f9d73fcd
|
|
|
playwright-report
|
313 MB |
sha256:2e66ccb995e7ad7951e2e24791630e09e2a48b9803161992e37a7a06b49855ff
|
|