Austin Pickett
d53b1720e6
fix(kanban): refuse to resume a Kanban-owned worker session as an untracked writer
...
Resuming a dispatcher-spawned Kanban worker session from the ordinary
CLI, /resume, /sessions, oneshot or the Desktop gateway would create a
write-capable writer the board cannot observe (and unblocking the card
can dispatch a competing worker into the same workspace).
- hermes_cli/kanban_resume_guard.py: kanban_resume_refusal() refuses a
session whose Kanban ownership markers are present; fails OPEN only
on probe errors. HERMES_KANBAN_TASK (the dispatcher's own env)
exempts the legitimate dispatcher-driven resume.
- SessionDB.is_kanban_owned_session() probes the transcript for the
worker markers without loading history.
- Wired into: CLI --resume/-c (falls back to a fresh session id),
/resume + /sessions (keep current session, print refusal), oneshot
quiet resume, gateway session.resume (error code 4132).
- locales: cli.resume.kanban_owned in en + 16 languages.
- Two latent F811 redefinitions fixed in moved handler code.
Fixes #68779
2026-10-06 15:15:06 -04:00
..
2026-10-06 10:11:33 -04:00
2026-10-06 23:14:10 +05:30
2026-10-06 04:36:02 -07:00
2026-10-06 23:14:10 +05:30
2026-10-06 12:28:55 -04:00
2026-10-06 04:36:02 -07:00
2026-10-06 04:36:02 -07:00
2026-10-06 11:17:11 -04:00
2026-10-06 11:10:45 -04:00
2026-10-06 11:14:34 -04:00
2026-10-06 11:14:42 -04:00
2026-10-06 11:17:11 -04:00
2026-10-06 06:22:28 -07:00
2026-10-06 06:22:27 -07:00
2026-10-06 05:44:21 -07:00
2026-10-06 05:50:08 -07:00
2026-10-06 06:22:29 -07:00
2026-10-06 04:36:02 -07:00
2026-10-06 06:22:27 -07:00
2026-10-06 14:23:00 -04:00
2026-10-06 15:15:06 -04:00
2026-10-06 11:10:43 -07:00
2026-10-06 12:28:00 -04:00
2026-10-06 12:27:41 -04:00
2026-10-06 13:23:15 -04:00
2026-10-06 13:23:15 -04:00
2026-10-06 06:22:29 -07:00
2026-10-06 23:14:10 +05:30
2026-10-06 12:46:06 -04:00
2026-10-06 10:11:33 -04:00
2026-10-06 11:10:43 -07:00
2026-10-06 11:10:43 -07:00
2026-10-06 11:10:43 -07:00
2026-10-06 11:10:43 -07:00
2026-10-06 11:10:43 -07:00
2026-10-06 11:10:43 -07:00
2026-10-06 06:18:39 -07:00
2026-10-06 04:36:02 -07:00
2026-10-06 06:20:31 -07:00
2026-10-06 06:20:30 -07:00
2026-10-06 12:08:49 -07:00
2026-10-06 06:22:29 -07:00
2026-10-06 06:21:58 -07:00
2026-10-06 03:44:49 -07:00
2026-10-06 06:22:28 -07:00
2026-10-06 06:22:29 -07:00
2026-10-06 06:21:09 -07:00
2026-10-06 04:36:02 -07:00
2026-10-06 06:21:58 -07:00
2026-10-06 06:22:29 -07:00
2026-10-06 06:22:29 -07:00
2026-10-06 06:22:29 -07:00
2026-10-06 04:36:02 -07:00
2026-10-06 04:36:02 -07:00
2026-10-06 04:36:02 -07:00
2026-10-06 06:22:28 -07:00
2026-10-06 04:36:02 -07:00
2026-10-06 04:36:02 -07:00
2026-10-06 06:18:39 -07:00
2026-10-06 06:38:56 -07:00
2026-10-06 06:18:39 -07:00
2026-10-06 06:18:39 -07:00
2026-10-06 06:18:39 -07:00
2026-10-06 06:18:39 -07:00
2026-10-06 06:18:39 -07:00
2026-10-06 06:18:39 -07:00
2026-10-06 06:18:39 -07:00
2026-10-06 06:18:39 -07:00
2026-10-06 06:18:39 -07:00
2026-10-06 06:18:39 -07:00
2026-10-06 06:18:39 -07:00
2026-10-06 06:21:58 -07:00
2026-10-06 03:44:49 -07:00
2026-10-06 03:44:49 -07:00
2026-10-06 03:44:49 -07:00
2026-10-06 04:36:02 -07:00
2026-10-06 06:22:29 -07:00
2026-10-06 06:20:32 -07:00
2026-10-06 06:22:27 -07:00
2026-10-06 06:18:39 -07:00
2026-10-06 06:22:28 -07:00
2026-10-06 06:22:29 -07:00
2026-10-06 06:22:28 -07:00
2026-10-06 06:22:29 -07:00
2026-10-06 04:36:02 -07:00
2026-10-06 12:59:08 -05:00
2026-10-06 11:19:16 -04:00
2026-10-06 14:51:20 -04:00
2026-10-06 05:17:45 -07:00
2026-10-06 11:15:27 -04:00
2026-10-06 11:15:20 -04:00
2026-10-06 12:27:22 -04:00
2026-10-06 12:30:01 -04:00
2026-10-06 12:28:55 -04:00
2026-10-06 12:28:06 -04:00
2026-10-06 12:27:29 -04:00
2026-10-06 12:03:11 -04:00
2026-10-06 12:00:47 -04:00
2026-10-06 03:44:49 -07:00
2026-10-06 12:28:55 -04:00
2026-10-06 06:18:39 -07:00
2026-10-06 06:18:39 -07:00
2026-10-06 06:18:39 -07:00