Joseph Doherty
f3827706df
fix: drawer delete_turn guards event_id <= 0 (T110.1)
...
A stale tab or hand-crafted request posting event_id=0 to the surgical
delete route would compute after_event_id=-1 and silently truncate the
entire log. Now rejected with 400.
SQLite assigns event_log ids starting at 1, so any legitimate id is
always >= 1 — non-positive values can only indicate a client bug.
Test: tests/test_drawer_phase4.py::test_delete_turn_with_event_id_zero_returns_400.
2026-04-27 05:11:39 -04:00
..
2026-04-26 11:23:38 -04:00
2026-04-26 21:40:47 -04:00
2026-04-26 14:18:57 -04:00
2026-04-26 12:17:06 -04:00
2026-04-27 04:34:32 -04:00
2026-04-27 02:35:58 -04:00
2026-04-26 14:33:28 -04:00
2026-04-26 12:39:15 -04:00
2026-04-26 15:03:13 -04:00
2026-04-26 11:28:40 -04:00
2026-04-27 02:31:31 -04:00
2026-04-27 02:36:30 -04:00
2026-04-26 17:28:25 -04:00
2026-04-26 13:40:40 -04:00
2026-04-26 21:55:53 -04:00
2026-04-26 17:26:31 -04:00
2026-04-27 05:11:39 -04:00
2026-04-26 13:35:47 -04:00
2026-04-26 11:51:15 -04:00
2026-04-27 02:51:36 -04:00
2026-04-27 02:22:32 -04:00
2026-04-27 04:47:17 -04:00
2026-04-26 11:46:19 -04:00
2026-04-26 14:33:28 -04:00
2026-04-26 20:09:13 -04:00
2026-04-26 20:15:51 -04:00
2026-04-26 11:42:49 -04:00
2026-04-26 20:04:36 -04:00
2026-04-26 14:33:28 -04:00
2026-04-26 15:46:16 -04:00
2026-04-26 15:46:09 -04:00
2026-04-26 11:23:38 -04:00
2026-04-26 15:51:29 -04:00
2026-04-26 12:28:05 -04:00
2026-04-26 15:03:13 -04:00
2026-04-26 11:35:57 -04:00
2026-04-26 20:52:45 -04:00
2026-04-26 22:33:52 -04:00
2026-04-27 02:42:38 -04:00
2026-04-27 05:00:57 -04:00
2026-04-26 12:03:26 -04:00
2026-04-26 11:32:32 -04:00
2026-04-26 15:51:58 -04:00
2026-04-26 17:05:29 -04:00
2026-04-26 21:50:55 -04:00
2026-04-26 22:02:25 -04:00
2026-04-27 04:08:25 -04:00
2026-04-26 21:41:15 -04:00
2026-04-27 02:23:55 -04:00
2026-04-26 15:47:12 -04:00
2026-04-26 22:41:35 -04:00
2026-04-26 17:06:21 -04:00
2026-04-26 13:58:20 -04:00
2026-04-26 15:03:13 -04:00
2026-04-27 04:34:18 -04:00
2026-04-26 12:22:00 -04:00
2026-04-26 15:03:13 -04:00
2026-04-26 21:40:29 -04:00
2026-04-27 04:47:14 -04:00
2026-04-26 14:15:17 -04:00
2026-04-26 12:49:41 -04:00
2026-04-26 15:03:13 -04:00
2026-04-26 22:41:35 -04:00
2026-04-26 20:10:05 -04:00
2026-04-26 20:10:36 -04:00
2026-04-26 20:05:09 -04:00
2026-04-26 20:04:46 -04:00
2026-04-27 02:23:15 -04:00
2026-04-27 04:47:26 -04:00
2026-04-26 15:03:13 -04:00
2026-04-27 02:31:06 -04:00
2026-04-26 16:25:03 -04:00
2026-04-27 05:00:57 -04:00