Checkpoint

This commit is contained in:
poduck
2025-12-01 10:56:51 -05:00
parent 5147101c7c
commit 65da1c73d0
7 changed files with 189 additions and 1 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 38 KiB

View File

@@ -0,0 +1,71 @@
# Page snapshot
```yaml
- generic [ref=e1]:
- generic [ref=e3]:
- generic [ref=e5]:
- button "Collapse sidebar" [ref=e6]:
- img [ref=e7]
- generic [ref=e13]:
- heading "Smooth Schedule" [level=1] [ref=e14]
- paragraph [ref=e15]: superuser
- navigation [ref=e16]:
- paragraph [ref=e17]: Operations
- link "Dashboard" [ref=e18] [cursor=pointer]:
- /url: /platform/dashboard
- img [ref=e19]
- generic [ref=e24]: Dashboard
- link "Businesses" [ref=e25] [cursor=pointer]:
- /url: /platform/businesses
- img [ref=e26]
- generic [ref=e30]: Businesses
- link "Users" [ref=e31] [cursor=pointer]:
- /url: /platform/users
- img [ref=e32]
- generic [ref=e37]: Users
- link "Support" [active] [ref=e38] [cursor=pointer]:
- /url: /platform/support
- img [ref=e39]
- generic [ref=e41]: Support
- paragraph [ref=e42]: System
- link "Staff" [ref=e43] [cursor=pointer]:
- /url: /platform/staff
- img [ref=e44]
- generic [ref=e46]: Staff
- link "Platform Settings" [ref=e47] [cursor=pointer]:
- /url: /platform/settings
- img [ref=e48]
- generic [ref=e51]: Platform Settings
- generic [ref=e52]:
- link "Help" [ref=e53] [cursor=pointer]:
- /url: /help/ticketing
- img [ref=e54]
- generic [ref=e57]: Help
- link "API Docs" [ref=e58] [cursor=pointer]:
- /url: /help/api
- img [ref=e59]
- generic [ref=e62]: API Docs
- generic [ref=e63]:
- banner [ref=e64]:
- generic [ref=e66]:
- img [ref=e67]
- generic [ref=e70]: smoothschedule.com
- generic [ref=e71]: /
- generic [ref=e72]: Admin Console
- generic [ref=e73]:
- button [ref=e74]:
- img [ref=e75]
- button "Open notifications" [ref=e78]:
- img [ref=e79]
- button "Super User Superuser SU" [ref=e83]:
- generic [ref=e84]:
- paragraph [ref=e85]: Super User
- paragraph [ref=e86]: Superuser
- generic [ref=e87]: SU
- img [ref=e88]
- main [ref=e90]:
- generic [ref=e91]:
- img [ref=e92]
- paragraph [ref=e94]: Error loading tickets
- generic [ref=e95]: $0k
```

View File

@@ -82,4 +82,4 @@ Error generating stack: `+n.message+`
<div id='root'></div>
</body>
</html>
<script id="playwrightReportBase64" type="application/zip">data:application/zip;base64,UEsDBBQAAAgIAJsZflvAughaAAEAAHkBAAALAAAAcmVwb3J0Lmpzb25VULtqw0AQ/JVlSRUOofgR4etTxlWaELnYSGv7It0jt3tgY/TvQSIPMtXMFDPM3NCzUk9KaG+TQVHK+uI8o31oHjebXb1u6tV6Z7AvmdTFgHazarZVs65/sTV4dCML2reDwZTjB3e6J//jiJIK2htqVBrR1gb5krhT7hdRwj95HGm4LkwGl9K3Gwe0mgtPBjnnmOdsfJqZhX0EZVGBYyyhr9rwTAODlMygZ1KgfCqegwpQZsh8KiNl4EvKLOJiEPCk3dmF05IDy5qqDa+xgKcrBOYeNAJLR4lBrv49jgKjGxhavGsRYoYW71sECj18lqhzM/8VV3gwGNN84PzENH0BUEsBAj8DFAAACAgAmxl+W8C6CFoAAQAAeQEAAAsAAAAAAAAAAAAAALSBAAAAAHJlcG9ydC5qc29uUEsFBgAAAAABAAEAOQAAACkBAAAAAA==</script>
<script id="playwrightReportBase64" type="application/zip">data:application/zip;base64,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</script>

View File

@@ -0,0 +1,6 @@
{
"status": "failed",
"failedTests": [
"9a7e4977473ed55fa848-618b0c2ae07e5089ab92"
]
}

View File

@@ -0,0 +1,71 @@
# Page snapshot
```yaml
- generic [ref=e1]:
- generic [ref=e3]:
- generic [ref=e5]:
- button "Collapse sidebar" [ref=e6]:
- img [ref=e7]
- generic [ref=e13]:
- heading "Smooth Schedule" [level=1] [ref=e14]
- paragraph [ref=e15]: superuser
- navigation [ref=e16]:
- paragraph [ref=e17]: Operations
- link "Dashboard" [ref=e18] [cursor=pointer]:
- /url: /platform/dashboard
- img [ref=e19]
- generic [ref=e24]: Dashboard
- link "Businesses" [ref=e25] [cursor=pointer]:
- /url: /platform/businesses
- img [ref=e26]
- generic [ref=e30]: Businesses
- link "Users" [ref=e31] [cursor=pointer]:
- /url: /platform/users
- img [ref=e32]
- generic [ref=e37]: Users
- link "Support" [active] [ref=e38] [cursor=pointer]:
- /url: /platform/support
- img [ref=e39]
- generic [ref=e41]: Support
- paragraph [ref=e42]: System
- link "Staff" [ref=e43] [cursor=pointer]:
- /url: /platform/staff
- img [ref=e44]
- generic [ref=e46]: Staff
- link "Platform Settings" [ref=e47] [cursor=pointer]:
- /url: /platform/settings
- img [ref=e48]
- generic [ref=e51]: Platform Settings
- generic [ref=e52]:
- link "Help" [ref=e53] [cursor=pointer]:
- /url: /help/ticketing
- img [ref=e54]
- generic [ref=e57]: Help
- link "API Docs" [ref=e58] [cursor=pointer]:
- /url: /help/api
- img [ref=e59]
- generic [ref=e62]: API Docs
- generic [ref=e63]:
- banner [ref=e64]:
- generic [ref=e66]:
- img [ref=e67]
- generic [ref=e70]: smoothschedule.com
- generic [ref=e71]: /
- generic [ref=e72]: Admin Console
- generic [ref=e73]:
- button [ref=e74]:
- img [ref=e75]
- button "Open notifications" [ref=e78]:
- img [ref=e79]
- button "Super User Superuser SU" [ref=e83]:
- generic [ref=e84]:
- paragraph [ref=e85]: Super User
- paragraph [ref=e86]: Superuser
- generic [ref=e87]: SU
- img [ref=e88]
- main [ref=e90]:
- generic [ref=e91]:
- img [ref=e92]
- paragraph [ref=e94]: Error loading tickets
- generic [ref=e95]: $0k
```

Binary file not shown.

After

Width:  |  Height:  |  Size: 38 KiB

View File

@@ -0,0 +1,40 @@
import { test, expect } from '@playwright/test';
test('diagnose websocket connection', async ({ page }) => {
test.setTimeout(60000);
// 1. Go to the platform login page
console.log('Navigating to login page...');
await page.goto('http://platform.lvh.me:5173/login');
// 2. Log in using Quick Login (Platform Superuser)
await page.getByRole('button', { name: 'Platform Superuser SUPERUSER' }).click();
// 3. Wait for navigation to dashboard
await page.waitForURL('**/dashboard');
console.log('Logged in successfully.');
// 4. Navigate to support page
console.log('Navigating to support page...');
await page.getByRole('link', { name: 'Support' }).click();
// 5. Monitor WebSocket connections
const wsPromise = page.waitForEvent('websocket', ws => ws.url().includes('/ws/tickets/'));
try {
const ws = await wsPromise;
console.log('WebSocket created:', ws.url());
// Wait a bit to see if it stays connected
await page.waitForTimeout(5000);
if (ws.isClosed()) {
console.error('WebSocket is CLOSED.');
throw new Error('WebSocket connection closed unexpectedly');
} else {
console.log('WebSocket is OPEN.');
}
} catch (e) {
console.error('WebSocket error:', e);
throw e;
}
});