Browser Testing Instructions - Wizard Retry Fix
URL:https://payroll-pipeline-cbs.vercel.app/ingestionDate: 2026-02-06
Commit:
7472c75
🚀 Quick Start
- Open Browser: Navigate to
https://payroll-pipeline-cbs.vercel.app/ingestion - Open DevTools: Press
F12or Right-click → Inspect - Go to Console Tab: Clear existing logs
- Load Test Script: Copy contents of
scripts/test_wizard_retry_fix_browser.jsand paste into console, press Enter - Test Save Flow: Follow steps below
📋 Test Steps
Step 1: Navigate to Preflight Step
- Complete Map Columns step if needed
- Navigate to Preflight step
- Verify you see businesses listed
Step 2: Save Business Configuration
- Find a business showing “not ready” status
- Click “Configure” button
- In the drawer:
- Set PEPM rate to
12.00(or any value) - Click “Save”
- Set PEPM rate to
- Observe:
- Drawer stays open during refresh
- Network tab shows requests
- Console shows logs
Step 3: Check Test Results
In Console Tab:Step 4: Verify Network Requests
In Network Tab:- ✅
PUT /api/v1/admin/onboarding/businesses/{id}/save→ 200 OK - ✅
GET /api/v1/intake/ingestion-wizard/readiness?...→ 200 OK- May see 1-3 requests if retry logic triggers
- Query params should include
period_label=2025-12-01
Step 5: Verify UI Behavior
After Save Completes:- ✅ Drawer closes
- ✅ Business shows as “ready”
- ✅ Success toast appears
- ✅ Processing button enables (if all businesses ready)
Step 6: Test Persistence
- Hard refresh page:
Ctrl+F5(Windows) orCmd+Shift+R(Mac) - Navigate back to Preflight
- Click “Configure” on the same business
- Verify: PEPM rate still shows
12.00
🔍 What to Look For
✅ Success Indicators
-
Network Tab:
- PUT request succeeds (200 OK)
- GET /readiness requests (1-3 depending on retries)
- All requests include
period_labelparameter
-
Console Tab:
- No errors
- Test script logs network activity
getWizardTestSummary()shows expected counts
-
UI Behavior:
- Drawer stays open during refresh
- Business becomes “ready” after save
- Persisted config visible after refresh
⚠️ Potential Issues
Issue: No Readiness Requests- Check if save actually succeeded (PUT 200)
- Verify
batchIdandperiodLabelare set - Check console for errors
- Check readiness response: Does it show
is_ready: true? - Verify retry logic completed (check network tab for multiple requests)
- Check if all businesses are ready (not just the saved one)
- Verify
loadPreflight()completes before drawer closes - Check if business config fetch succeeds when opening drawer
- Verify
period_labelmatches between save and read
📊 Expected Test Results
| Test | Expected Result | Status |
|---|---|---|
| Save succeeds | PUT 200 OK | ⏳ |
| Readiness check | GET 200 OK (1-3 requests) | ⏳ |
| Retry logic | Multiple requests if needed | ⏳ |
| Wizard unblocks | Business shows as ready | ⏳ |
| Persistence | Config visible after refresh | ⏳ |
🛠️ Troubleshooting
Clear Test Logs
Check Network Activity
Manual Network Inspection
- Open Network tab
- Filter by “readiness” or “save”
- Check request/response details
- Verify
period_labelin query params
📝 Notes
- Retry logs only appear in dev mode (production builds won’t show them)
- Retry logic still works in production, just without console logs
- If all retries fail, wizard proceeds anyway (save succeeded)
- Backend eventual consistency typically resolves within 500ms-1s
Ready to test! Follow the steps above and report results.