rayhpeng
2e4cb5c6a9
test+config: comprehensive Phase 2 test coverage + deprecate checkpointer config
- config.example.yaml: deprecate standalone checkpointer section, activate
unified database:sqlite as default (drives both checkpointer + app data)
- New: test_thread_meta_repo.py (14 tests) — full ThreadMetaRepository coverage
including check_access owner logic, list_by_owner pagination
- Extended test_run_repository.py (+4 tests) — completion preserves fields,
list ordering desc, limit, owner_none returns all
- Extended test_run_journal.py (+8 tests) — on_chain_error, track_tokens=false,
middleware no ai_message, unknown caller tokens, convenience fields,
tool_error, non-summarization custom event
- Extended test_run_event_store.py (+7 tests) — DB batch seq continuity,
make_run_event_store factory (memory/db/jsonl/fallback/unknown)
- Extended test_phase2b_integration.py (+4 tests) — create_or_reject persists,
follow-up metadata, summarization in history, full DB-backed lifecycle
- Fixed DB integration test to use proper fake objects (not MagicMock)
for JSON-serializable metadata
- 157 total Phase 2 tests pass, zero regressions
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-02 19:36:15 +08:00
..
2026-03-14 22:55:52 +08:00
2026-03-27 20:03:30 +08:00
2026-04-01 11:42:12 +08:00
2026-03-31 22:19:27 +08:00
2026-03-31 22:33:35 +08:00
2026-03-22 20:34:01 +08:00
2026-03-26 17:44:25 +08:00
2026-03-14 22:55:52 +08:00
2026-03-29 15:34:38 +08:00
2026-03-14 22:55:52 +08:00
2026-03-22 17:29:29 +08:00
2026-03-30 07:41:18 +08:00
2026-03-26 14:20:18 +08:00
2026-03-29 21:03:58 +08:00
2026-03-29 21:03:58 +08:00
2026-03-30 17:25:47 +08:00
2026-03-14 22:55:52 +08:00
2026-03-29 15:31:18 +08:00
2026-03-29 16:45:31 +08:00
2026-03-22 22:39:50 +08:00
2026-03-27 07:41:06 +08:00
2026-03-26 00:20:08 +08:00
2026-03-31 22:19:27 +08:00
2026-04-02 19:10:11 +08:00
2026-03-26 14:20:18 +08:00
2026-04-01 11:15:56 +08:00
2026-03-23 18:07:33 +08:00
2026-03-14 22:55:52 +08:00
2026-03-26 14:20:18 +08:00
2026-03-27 20:03:30 +08:00
2026-03-29 15:34:38 +08:00
2026-03-31 22:22:30 +08:00
2026-03-29 21:03:58 +08:00
2026-03-29 21:31:29 +08:00
2026-03-25 08:00:01 +08:00
2026-03-14 22:55:52 +08:00
2026-03-14 22:55:52 +08:00
2026-03-26 14:20:18 +08:00
2026-03-26 14:20:18 +08:00
2026-03-30 17:25:47 +08:00
2026-03-29 15:34:38 +08:00
2026-03-30 17:25:47 +08:00
2026-03-14 22:55:52 +08:00
2026-03-22 20:39:26 +08:00
2026-03-26 14:20:18 +08:00
2026-03-20 17:18:59 +08:00
2026-03-26 15:07:05 +08:00
2026-04-01 15:50:06 +08:00
2026-04-02 19:36:15 +08:00
2026-03-14 22:55:52 +08:00
2026-02-25 08:39:29 +08:00
2026-03-14 22:55:52 +08:00
2026-03-14 22:55:52 +08:00
2026-04-02 19:36:15 +08:00
2026-04-02 19:36:15 +08:00
2026-03-31 22:22:30 +08:00
2026-04-02 19:36:15 +08:00
2026-03-30 07:48:31 +08:00
2026-03-29 23:21:06 +08:00
2026-03-30 16:02:23 +08:00
2026-03-26 14:20:18 +08:00
2026-03-25 16:28:33 +08:00
2026-03-26 17:39:16 +08:00
2026-03-26 14:20:18 +08:00
2026-03-25 10:17:40 +08:00
2026-03-27 20:20:31 +08:00
2026-03-30 16:02:23 +08:00
2026-03-30 16:02:23 +08:00
2026-03-14 22:55:52 +08:00
2026-03-25 10:20:16 +08:00
2026-03-29 21:03:58 +08:00
2026-03-14 22:55:52 +08:00
2026-03-22 19:59:54 +08:00
2026-03-29 21:03:58 +08:00
2026-03-26 17:39:16 +08:00
2026-04-02 19:36:15 +08:00
2026-03-24 00:36:08 +08:00
2026-03-14 22:55:52 +08:00
2026-03-19 15:46:31 +08:00
2026-03-26 00:20:50 +08:00
2026-03-26 14:20:18 +08:00
2026-03-14 22:55:52 +08:00
2026-03-30 11:23:15 +08:00
2026-03-14 22:55:52 +08:00
2026-03-26 17:39:16 +08:00
2026-03-14 22:55:52 +08:00
2026-03-27 17:37:44 +08:00