PR 30697 verification, 2026-11-04, Linux Boat VM main: github/main 9e85538535c8553901351112ab02dd1dd62db5ee PR head: 538849febb0dfb67a553482fd131c44a9a46b23c Setup: git worktree add ../main github/main timeout 600 vp i (in each checkout) setsid nohup vp run dev > /tmp/main-dev.log 2>&1 & main dev-runner: serverPort=16733 webPort=8693 baseDir=/home/user/main/.t3 Stopped main by captured PID 26233 before starting PR. setsid nohup vp run dev --home-dir /home/user/t3code/.t3 --no-seed > /tmp/dev.log 2>&1 & PR dev-runner: serverPort=13773 webPort=5733 baseDir=/home/user/t3code/.t3 Playwright 1.60.0 from repo dependencies, /usr/bin/google-chrome. Created project and task through the web app, pointing at /home/user/schedule-verification (real git repo). Model selection persisted: {"instanceId":"codex","model":"gpt-6.1-sol"} No mocked provider, direct database writes, fixtures, or clock changes. All timestamps below are UTC. Browser zone was Europe/Paris. Observed automatic starts and real assistant replies: main interval: replies at 14:08:29.886 and 14:09:34.986; both succeeded. PR Wed window 14:15-14:18: 14:15:03.804, 14:16:08.889, 14:17:51.964. PR Wed window 14:20-14:23: 14:20:00.378. Every real assistant response was SCHEDULE_WINDOW_OK. Restart outside window (read-only sqlite3 observations): 2026-11-04T14:20:25.010Z: run_count=6, last_run_at=14:20:00.378Z, last_run_status=succeeded, next_run_at=2026-11-04T14:21:00.472Z. Stopped captured PID 47064 before next tick. 2026-11-04T14:23:10.076Z: same run_count and overdue next_run_at before restart. Started captured PID 52147. Actual server log: [14:23:17.422] INFO: Skipping missed schedule task run missedRunAt: 2026-11-04T14:21:00.472Z rescheduledTo: 2026-11-11T14:20:00.000Z 2026-11-04T14:23:40.000Z: run_count still 6, last_run_at unchanged, last_run_status=succeeded, next_run_at=2026-11-11T14:20:00.000Z. Web UI showed Every 1 min, Wed 14:20-14:23, Next run in 7d. Neighboring behavior: Turned window off in editor. Persisted {"type":"interval","everyMs":60000}. next_run_at=2026-11-04T14:25:31.818Z; actual start=14:25:32.199Z, succeeded. Changed editor to fixed time. Persisted {"type":"fixed_time","timeOfDay":"14:27"}. next_run_at=2026-11-04T14:27:00.000Z; actual start=14:27:02.242Z, succeeded. Paused through UI: enabled=0, next_run_at=null, run_count=8. Editor checks: invalid end-before-start disables save; last selected weekday cannot be removed; saved interval window and weekday survive reload; turning window off removes the stored window and restores an all-day interval. Blacksmith focused checks: vp test run apps/server/src/scheduledTasks/Schedule.test.ts apps/server/src/scheduledTasks/ScheduledTaskService.test.ts apps/web/src/components/settings/scheduledTasksSettings.logic.test.ts apps/mobile/src/features/settings/scheduledTaskDraft.test.ts apps/mobile/src/features/settings/scheduled-task-editor-state.test.ts packages/contracts/src/scheduledTask.test.ts 6 files passed, 91 tests passed. Includes DST and missed-window regression cases. PR CI: 28 successful, 0 failing, 0 pending at checked head. No source changes or pushes.