[WebServer]  [WebServer] > chore-app-frontend@0.0.0 dev [WebServer] > vite [WebServer]  [WebServer]  [WebServer]  VITE v7.2.2 ready in 3718 ms [WebServer]  [WebServer]  ฮ“โ‚งยฃ Local: https://localhost:5173/ [WebServer]  ฮ“โ‚งยฃ Network: https://100.91.0.87:5173/ [WebServer]  ฮ“โ‚งยฃ Network: https://192.168.1.102:5173/ [WebServer]  ฮ“โ‚งยฃ Network: https://192.168.17.1:5173/ [WebServer]  ฮ“โ‚งยฃ Network: https://192.168.44.1:5173/ [WebServer] Platform: win32 [WebServer] INFO:config.deletion_config:Account deletion threshold: 720 hours [WebServer] 2026-04-12 10:24:51 - db.default - INFO - Initializing images. Ensuring directory exists: D:\Python Utilities\Reward\backend\test_data\images\default [WebServer] 2026-04-12 10:24:51,693 - account_deletion_scheduler - INFO - Starting account deletion scheduler [WebServer] 2026-04-12 10:24:51 - account_deletion_scheduler - INFO - Starting account deletion scheduler [WebServer] 2026-04-12 10:24:51 - account_deletion_scheduler - INFO - Checking for interrupted deletions from previous runs [WebServer] 2026-04-12 10:24:51,693 - account_deletion_scheduler - INFO - Checking for interrupted deletions from previous runs [WebServer] 2026-04-12 10:24:51 - apscheduler.scheduler - INFO - Adding job tentatively -- it will be properly scheduled when the scheduler starts [WebServer] 2026-04-12 10:24:51 - apscheduler.scheduler - INFO - Added job "Account Deletion Scheduler" to job store "default" [WebServer] 2026-04-12 10:24:51 - apscheduler.scheduler - INFO - Scheduler started [WebServer] 2026-04-12 10:24:51,706 - account_deletion_scheduler - INFO - Account deletion scheduler started (runs every 1 hour) [WebServer] 2026-04-12 10:24:51 - account_deletion_scheduler - INFO - Account deletion scheduler started (runs every 1 hour) [WebServer]  * Serving Flask app 'main.py' [WebServer]  * Debug mode: on Running 19 tests using 6 workers [1/19] [setup] ฮ“ร‡โ•‘ e2e\auth.setup.ts:4:1 ฮ“ร‡โ•‘ authenticate [WebServer] 2026-04-12 10:24:54 - db.default - INFO - Initializing images. Ensuring directory exists: D:\Python Utilities\Reward\backend\test_data\images\default [2/19] [chromium-task-modification] ฮ“ร‡โ•‘ e2e\mode_parent\task-modification\scroll-to-edited-task.spec.ts:105:3 ฮ“ร‡โ•‘ Scroll to edited task after save ฮ“ร‡โ•‘ Edited chore card scrolls into viewport after override save [3/19] [chromium-tasks-rewards] ฮ“ร‡โ•‘ e2e\mode_parent\tasks\penalty-cancel.spec.ts:32:3 ฮ“ร‡โ•‘ Penalty creation/edit cancellation ฮ“ร‡โ•‘ Cancel penalty edit [4/19] [chromium-user-profile-pin] ฮ“ร‡โ•‘ e2e\mode_parent\user-profile\change-pin.spec.ts:26:3 ฮ“ร‡โ•‘ User Profile ฮ“ร‡รด Change Parent PIN ฮ“ร‡โ•‘ Change Parent PIN link navigates to PIN setup page [5/19] [chromium-tasks-rewards] ฮ“ร‡โ•‘ e2e\mode_parent\tasks\penalty-cancel.spec.ts:11:3 ฮ“ร‡โ•‘ Penalty creation/edit cancellation ฮ“ร‡โ•‘ Cancel penalty creation [6/19] [chromium-tasks-rewards] ฮ“ร‡โ•‘ e2e\mode_parent\notifications\notification-click-scroll.spec.ts:125:3 ฮ“ร‡โ•‘ Notification click navigates and scrolls to task ฮ“ร‡โ•‘ Clicking a chore notification navigates and scrolls to the chore card [7/19] [chromium-tasks-rewards] ฮ“ร‡โ•‘ e2e\mode_parent\task-sorting\child-sort-order.spec.ts:179:3 ฮ“ร‡โ•‘ Child mode sort order ฮ“ร‡โ•‘ Child chore sort: scheduled today (earliest deadline) ฮ“รฅร† general ฮ“รฅร† pending [8/19] [chromium-user-profile-pin] ฮ“ร‡โ•‘ e2e\mode_parent\user-profile\change-pin.spec.ts:35:3 ฮ“ร‡โ•‘ User Profile ฮ“ร‡รด Change Parent PIN ฮ“ร‡โ•‘ Back from PIN setup page returns to profile [9/19] [chromium-user-profile-pin] ฮ“ร‡โ•‘ e2e\mode_parent\user-profile\change-pin.spec.ts:46:3 ฮ“ร‡โ•‘ User Profile ฮ“ร‡รด Change Parent PIN ฮ“ร‡โ•‘ Send Verification Code advances to step 2 [10/19] [chromium-user-profile-pin] ฮ“ร‡โ•‘ e2e\mode_parent\user-profile\change-pin.spec.ts:60:3 ฮ“ร‡โ•‘ User Profile ฮ“ร‡รด Change Parent PIN ฮ“ร‡โ•‘ Resend Code button appears after delay [WebServer] 2026-04-12 10:25:08 - db.tracking - INFO - Tracking event created: confirmed chore eafea3ca-72e9-4286-b70c-9b205be8fe4f for child e55f3361-b7ef-4e2d-9318-86d8887702f6 [WebServer] 2026-04-12 10:25:09 - api.child_api - INFO - Child ChildSortChild has 50 points, reward CSortRewardPending costs 10 points [WebServer] 2026-04-12 10:25:09 - api.child_api - INFO - Pending reward request created for child ChildSortChild for reward CSortRewardPending [WebServer] 2026-04-12 10:25:09 - db.tracking - INFO - Tracking event created: requested reward dc7c5584-e425-4d21-ad53-5b0eb30597fb for child e55f3361-b7ef-4e2d-9318-86d8887702f6 [11/19] [chromium-tasks-rewards] ฮ“ร‡โ•‘ e2e\mode_parent\task-sorting\child-sort-order.spec.ts:214:3 ฮ“ร‡โ•‘ Child mode sort order ฮ“ร‡โ•‘ Child reward sort: pending first, then ascending by points needed [WebServer] 2026-04-12 10:25:10 - db.tracking - INFO - Tracking event created: confirmed chore 1bcb0b2b-c1b9-4d48-b795-cd5b91f5ea2d for child a4bfda72-f28b-4da8-a0b9-7868fa78febd [WebServer] 2026-04-12 10:25:11 - api.child_api - INFO - Child NotifScrollChild has 50 points, reward NotifScrollReward costs 10 points [WebServer] 2026-04-12 10:25:11 - api.child_api - INFO - Pending reward request created for child NotifScrollChild for reward NotifScrollReward [WebServer] 2026-04-12 10:25:11 - db.tracking - INFO - Tracking event created: requested reward ab631c51-d8bc-43f5-9fa9-5deeb0182351 for child a4bfda72-f28b-4da8-a0b9-7868fa78febd [12/19] [chromium-user-profile-pin] ฮ“ร‡โ•‘ e2e\mode_parent\user-profile\change-pin.spec.ts:70:3 ฮ“ร‡โ•‘ User Profile ฮ“ร‡รด Change Parent PIN ฮ“ร‡โ•‘ Invalid code shows error [13/19] [chromium-user-profile-pin] ฮ“ร‡โ•‘ e2e\mode_parent\user-profile\change-pin.spec.ts:81:3 ฮ“ร‡โ•‘ User Profile ฮ“ร‡รด Change Parent PIN ฮ“ร‡โ•‘ Valid code advances to step 3 (Create PIN) [14/19] [chromium-tasks-rewards] ฮ“ร‡โ•‘ e2e\mode_parent\notifications\notification-click-scroll.spec.ts:149:3 ฮ“ร‡โ•‘ Notification click navigates and scrolls to task ฮ“ร‡โ•‘ Clicking a reward notification scrolls reward card into viewport [15/19] [chromium-user-profile-pin] ฮ“ร‡โ•‘ e2e\mode_parent\user-profile\change-pin.spec.ts:99:3 ฮ“ร‡โ•‘ User Profile ฮ“ร‡รด Change Parent PIN ฮ“ร‡โ•‘ Set PIN disabled when PINs do not match [16/19] [chromium-user-profile-pin] ฮ“ร‡โ•‘ e2e\mode_parent\user-profile\change-pin.spec.ts:116:3 ฮ“ร‡โ•‘ User Profile ฮ“ร‡รด Change Parent PIN ฮ“ร‡โ•‘ Set PIN disabled for fewer than 4 digits [17/19] [chromium-user-profile-pin] ฮ“ร‡โ•‘ e2e\mode_parent\user-profile\change-pin.spec.ts:133:3 ฮ“ร‡โ•‘ User Profile ฮ“ร‡รด Change Parent PIN ฮ“ร‡โ•‘ Set PIN succeeds with matching 4-digit PIN ฮ“ร‡รด shows success step [18/19] [chromium-user-profile-pin] ฮ“ร‡โ•‘ e2e\mode_parent\user-profile\change-pin.spec.ts:156:3 ฮ“ร‡โ•‘ User Profile ฮ“ร‡รด Change Parent PIN ฮ“ร‡โ•‘ Back from success step exits parent mode and goes to child selector [WebServer] 2026-04-12 10:25:18 - db.child_overrides - INFO - Override created: child=8c6a8c65-f46c-4012-9d59-643dd09a28de, entity=179fda1f-2b7f-4c1d-82ce-ed152718b628, value=99 [19/19] [chromium-task-modification] ฮ“ร‡โ•‘ e2e\mode_parent\task-modification\scroll-to-edited-task.spec.ts:135:3 ฮ“ร‡โ•‘ Scroll to edited task after save ฮ“ร‡โ•‘ Edited reward card scrolls into viewport after override save [WebServer] 2026-04-12 10:25:19 - db.child_overrides - INFO - Override created: child=8c6a8c65-f46c-4012-9d59-643dd09a28de, entity=229028d2-efa7-49b5-a8f4-cd450ec40526, value=77 [WebServer] 2026-04-12 10:25:19 - db.child_overrides - INFO - Overrides cascade deleted for child: child_id=8c6a8c65-f46c-4012-9d59-643dd09a28de, count=2 [WebServer] 2026-04-12 10:25:19 - api.child_api - INFO - Cascade deleted 2 overrides for child 8c6a8c65-f46c-4012-9d59-643dd09a28de  1) [chromium-task-modification] ฮ“ร‡โ•‘ e2e\mode_parent\task-modification\scroll-to-edited-task.spec.ts:135:3 ฮ“ร‡โ•‘ Scroll to edited task after save ฮ“ร‡โ•‘ Edited reward card scrolls into viewport after override save Error: expect(received).toBe(expected) // Object.is equality Expected: true Received: false 159 | // After SSE override event ฮ“รฅร† list refreshes ฮ“รฅร† card scrolls into view 160 | await expect(targetCard).toBeVisible({ timeout: 5000 }) > 161 | expect(await isInViewport(targetCard)).toBe(true) | ^ 162 | }) 163 | }) 164 | at D:\Python Utilities\Reward\frontend\vue-app\e2e\mode_parent\task-modification\scroll-to-edited-task.spec.ts:161:44 Error Context: test-results\mode_parent-task-modificat-7e620-iewport-after-override-save-chromium-task-modification\error-context.md  1 failed [chromium-task-modification] ฮ“ร‡โ•‘ e2e\mode_parent\task-modification\scroll-to-edited-task.spec.ts:135:3 ฮ“ร‡โ•‘ Scroll to edited task after save ฮ“ร‡โ•‘ Edited reward card scrolls into viewport after override save 18 passed (41.1s)