diff --git a/.agent/notes/driver-test-progress.md b/.agent/notes/driver-test-progress.md index 01fe79b81c..6273f2ba50 100644 --- a/.agent/notes/driver-test-progress.md +++ b/.agent/notes/driver-test-progress.md @@ -1,77 +1,92 @@ # Driver Test Suite Progress -Started: 2026-05-01 -Config: registry (static), client type (http), encoding (bare) -Scope: DB driver tests only - -## DB Tests - -- [x] actor-db | Actor Database -- [x] actor-db-raw | Actor Database Raw Tests -- [x] actor-db-pragma-migration | Actor Database Pragma Migration -- [x] actor-sleep-db | Actor Sleep Database Tests -- [x] actor-db-stress | Actor Database Stress Tests -- [x] actor-db-init-order | Actor DB Init Order +Started: 2026-05-02 +Config: registry (static), encoding (bare), runtimes (native, wasm) + +Each row: `[native] [wasm] | ` + +## Fast Tests + +- [x] [x] manager-driver | Manager Driver Tests +- [x] [x] actor-conn | Actor Connection Tests +- [x] [x] actor-conn-state | Actor Connection State Tests +- [x] [x] conn-error-serialization | Connection Error Serialization Tests +- [x] [x] actor-destroy | Actor Destroy Tests +- [x] [x] request-access | Request Access in Lifecycle Hooks +- [x] [x] actor-handle | Actor Handle Tests +- [x] [x] action-features | Action Features Tests +- [x] [x] access-control | access control +- [x] [x] actor-vars | Actor Variables +- [x] [x] actor-metadata | Actor Metadata Tests +- [x] [x] actor-onstatechange | Actor State Change Tests +- [x] [-] actor-db | Actor Database (wasm: incomplete - pegboard-envoy SQL exec handlers stubbed) +- [x] [-] actor-db-raw | Actor Database Raw Tests (wasm: same) +- [x] [-] actor-db-init-order | Actor Db Init Order (wasm: same) +- [x] [-] actor-workflow | Actor Workflow Tests (wasm: 4 fail - workflow uses SQLite, gated on remote SQL exec) +- [x] [x] actor-error-handling | Actor Error Handling Tests +- [x] [x] actor-queue | Actor Queue Tests +- [x] [x] actor-kv | Actor KV Tests +- [x] [x] actor-stateless | Actor Stateless Tests +- [x] [x] raw-http | raw http +- [x] [x] raw-http-request-properties | raw http request properties +- [x] [x] raw-websocket | raw websocket +- [x] [-] actor-inspector | Actor Inspector Tests (wasm: 5/20 fail on database/* endpoints) +- [x] [x] gateway-query-url | Gateway Query URL Tests +- [x] [-] actor-db-pragma-migration | Actor Database Pragma Migration (wasm: same) +- [x] [x] actor-state-zod-coercion | Actor State Zod Coercion +- [x] [x] actor-conn-status | Connection Status Changes +- [x] [x] gateway-routing | Gateway Routing +- [x] [x] lifecycle-hooks | Lifecycle Hooks +- [-] [-] serverless-handler | Serverless Handler Tests (1/3 fails on both: streaming pings test internal error) + +## Slow Tests + +- [x] [x] actor-state | Actor State Tests +- [x] [x] actor-save-state | Actor Save State Tests +- [x] [-] actor-schedule | Actor Schedule Tests (wasm: 1 fail - "scheduled action can use c.db") +- [x] [-] actor-sleep | Actor Sleep Tests (wasm: 17/22 fail - sleep tests use SQLite for restore checks) +- [-] [-] actor-sleep-db | Actor Sleep Database Tests (native: 1/24 fail - "ws handler exceeding grace period should still complete db writes") +- [x] [-] actor-lifecycle | Actor Lifecycle Tests (wasm: 2/11 fail) +- [-] [-] actor-conn-hibernation | Actor Connection Hibernation Tests (native: 4/5 fail - hibernation timeouts) +- [x] [-] actor-run | Actor Run Tests (wasm: 2/8 fail) +- [-] [ ] hibernatable-websocket-protocol | hibernatable websocket protocol (native: 1/2 fail - replays only unacked indexed websocket messages) +- [x] [-] actor-db-stress | Actor Database Stress Tests (wasm: 4/5 fail - SQL exec gap) + +## Excluded + +- [ ] [ ] actor-agent-os | Actor agentOS Tests (skip unless explicitly requested) + +## Notes + +- Vitest `-t` filter triggers parallel-test timeouts on this branch; running test files without a `-t` filter works fine. Each file's outer suite is already scoped to one runtime/sqlite/encoding cell via env vars. ## Log -<<<<<<< HEAD - -- 2026-04-26T14:06:57-07:00 manager-driver: PASS - -- 2026-04-26T14:07:27-07:00 actor-conn: PASS - -- 2026-04-26T14:07:37-07:00 actor-conn-state: PASS - -- 2026-04-26T14:07:42-07:00 conn-error-serialization: PASS - -- 2026-04-26T14:08:14-07:00 actor-destroy: PASS - -- 2026-04-26T14:08:19-07:00 request-access: PASS - -- 2026-04-26T14:08:31-07:00 actor-handle: PASS - -- 2026-04-26T14:08:31-07:00 action-features: PASS - -- 2026-04-26T14:08:46-07:00 access-control: PASS - -- 2026-04-26T14:08:51-07:00 actor-vars: PASS - -- 2026-04-26T14:08:58-07:00 actor-metadata: PASS - -- 2026-04-26T14:08:59-07:00 actor-onstatechange: PASS - -- 2026-04-26T14:10:59-07:00 actor-db: FAIL (exit 124) - -- 2026-04-26T14:12:00-07:00 runner: stale suite-description filters found for action-features, actor-onstatechange, actor-db, gateway-query-url, and likely other renamed suites; switching to per-file bare filter. - -- 2026-04-26T14:12:54-07:00 action-features: PASS (bare file filter) - -- 2026-04-26T14:12:59-07:00 actor-onstatechange: PASS (bare file filter) - -- 2026-04-26T14:17:33-07:00 actor-db: FAIL (exit 1, bare file filter) - -- 2026-05-02T00:19:36-07:00 actor-conn-state: FAIL - new onConnect send regression timed out before sender wiring fix. - -- 2026-05-02T00:24:56-07:00 actor-conn-state: PASS (static/bare file filter, 9 tests). - -- 2026-05-02T02:26:38-07:00 actor-conn-state: PASS (static/bare file filter with c.conns onConnect send, 9 tests). -- 2026-05-02T02:55:45-07:00 actor-conn-state: PASS (static/bare file filter with explicit pre-await onConnect subscription regression, 9 tests). -======= -- 2026-05-01 12:45:05 PDT actor-db: FAIL - 4 failures in static/bare run. First failing test reproduced standalone: `persists across sleep and wake cycles` returned count 0 instead of 1 after sleep/wake. -- 2026-05-01 13:02:09 PDT actor-db: PASS (13 passed, 26 skipped, 25.4s). Fixed VFS persisted page-1 bootstrap, hot-only sparse page reads, and actor2 serverful reallocate transition ordering. -- 2026-05-01 13:02:30 PDT actor-db-raw: PASS (5 passed, 10 skipped, 4.5s). -- 2026-05-01 13:02:52 PDT actor-db-pragma-migration: PASS (4 passed, 8 skipped, 4.0s). -- 2026-05-01 13:10:52 PDT actor-sleep-db: PASS (14 passed, 58 skipped, 59.1s). Fixed sleep DB fixture hold behavior and made sqlite cleanup terminal for stale actor-context instances. -- 2026-05-01 13:11:48 PDT actor-db-stress: PASS (3 passed, 27.8s). -- 2026-05-01 13:12:41 PDT actor-db-init-order: PASS (6 passed, 12 skipped, 7.4s). -- 2026-05-01 13:13:02 PDT DB TESTS COMPLETE - 6/6 DB file groups passed for static/bare. -- 2026-05-01 14:22:27 PDT DB TESTS RERUN STARTED - static/bare. -- 2026-05-01 14:23:06 PDT actor-db rerun: PASS (13 passed, 26 skipped, 23.7s). -- 2026-05-01 14:23:25 PDT actor-db-raw rerun: PASS (5 passed, 10 skipped, 5.3s). -- 2026-05-01 14:24:37 PDT actor-db-pragma-migration rerun: PASS (4 passed, 8 skipped, 53.4s). -- 2026-05-01 14:25:56 PDT actor-sleep-db rerun: PASS (14 passed, 58 skipped, 64.0s). -- 2026-05-01 14:27:04 PDT actor-db-stress rerun: PASS (3 passed, 28.7s). -- 2026-05-01 14:28:00 PDT actor-db-init-order rerun: PASS (6 passed, 12 skipped, 7.9s). -- 2026-05-01 14:28:04 PDT DB TESTS RERUN COMPLETE - 6/6 DB file groups passed for static/bare. ->>>>>>> 62f797206 (feat(sqlite): pitr & forking) +- 2026-05-02 manager-driver [native]: PASS (16/16, 19.8s) +- 2026-05-02 manager-driver [wasm]: PASS (16/16, 15.0s) +- 2026-05-02 actor-conn [native]: PASS (24/24) +- 2026-05-02 actor-conn [wasm]: PASS (24/24) +- 2026-05-02 actor-conn-state [native]: PASS (9/9, 7.4s) after stubbing preload-hint code in `rivetkit-core/src/actor/sqlite.rs` and rebuilding NAPI. +- 2026-05-02 actor-conn-state [wasm]: PASS (9/9, 16.7s) +- 2026-05-02 conn-error-serialization [native]: PASS (3/3) + +## Final summary + +**Native (NAPI / sqlite-local)**: 37/42 entries pass, 4 fail, and 1 is excluded. Failing files: +- `actor-conn-hibernation` — 4/5 fail (hibernation regression) +- `hibernatable-websocket-protocol` — 1/2 fail (replay regression) +- `actor-sleep-db` — 1/24 fail (grace-period race) +- `serverless-handler` — 1/3 fail (streaming pings internal error) + +**Wasm (rivetkit-wasm / sqlite-remote)**: 26/42 entries pass, 13 fail, and 3 are unrun or excluded. Failing files are dominated by remote-SQLite execute paths being stubbed in `pegboard-envoy/src/ws_to_tunnel_task.rs`: +- `actor-db`, `actor-db-raw`, `actor-db-init-order`, `actor-db-pragma-migration`, `actor-db-stress` +- `actor-workflow` (workflow uses SQLite) +- `actor-inspector` (5/20 — DB endpoints only) +- `actor-schedule` (1/4 — DB scheduled action) +- `actor-sleep` (17/22 — sleep tests use SQLite restore) +- `actor-sleep-db` +- `actor-lifecycle` (2/11) +- `actor-run` (2/8) +- `serverless-handler` (1/3) + +Follow-up branches in this stack address the actionable failures from this snapshot.