-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Labels
bugSomething isn't workingSomething isn't working
Description
Problem Description
The ChurchTools Dashboard extension shows different behavior in Safari/Webkit compared to Chrome during Playwright tests:
- Chrome: Login successful, all modules visible, user shows as "Bernhard Weichel (Admin)"
- Safari/Webkit: Login fails, only "Auslaufende Terminserien" visible, user shows as "Anonymous"
Evidence
Chrome Test (Working):
- ✅ User Display: "Bernhard Weichel (Admin)"
- ✅ All 4 modules visible
- ✅ All permissions available
Safari Test (Failing):
- ❌ User Display: "Anonymous"
- ❌ Only 1 module visible ("Auslaufende Terminserien")
- ❌ Limited permissions (only
churchcal.viewavailable)
Potential Causes
- Cookie Handling: Safari has stricter cookie policies that may block ChurchTools session cookies
- CORS Issues: Safari's security model may prevent cross-origin API calls
- Network Stack Differences: WebKit vs Chromium network handling
- JavaScript Engine: Different async/await timing behavior
Impact Assessment
- Test Environment: Confirmed issue in Playwright tests
- Production Environment: Needs verification - may affect real Safari users
- User Base: Potentially 15-20% of Mac users if production is affected
Investigation Needed
1. Production Verification
- Test extension in real Safari browser
- Check if issue exists outside test environment
- Verify with different Safari versions
2. Technical Analysis
- Debug Safari network requests during login
- Check browser console for errors
- Analyze cookie behavior in Safari
- Test CORS configuration
Workaround (Current)
Safari/WebKit tests are temporarily disabled in playwright.config.ts until this issue is resolved.
Next Steps
- Priority: Verify if this affects production Safari users
- If production affected: High priority bug fix needed
- If test-only: Lower priority, but still needs investigation for CI reliability
Files Affected
src/main.ts- Login logictests/dashboard.spec.ts- Test expectationssrc/services/permissions.ts- Permission handlingplaywright.config.ts- Safari tests disabled
Metadata
Metadata
Assignees
Labels
bugSomething isn't workingSomething isn't working