BaaRai
89348b5512
feat(engine): per-intent LLM chain-head rotation (opt-in llm_rotate)
...
Implements the per-intent rotation shape from #85 : a task created with
llm_rotate=true distributes worker intents round-robin over its LLM chain
heads, so lane A can hunt on one model while lane B hunts on another
(different lenses per intent, no extra tokens). Default stays the classic
ordered failover from the active head; planner/goals/mainagent keep the
active head always.
Mechanics: the engine pins the next chain head into the run context when a
worker claims an intent; the pin travels through the provider resolver
(hooks.current now takes ctx). A pin is only a dispatch preference - it must
belong to the task chain and never bypasses failover state (an exhausted
chain stays exhausted). Schema: tasks.llm_rotate boolean, default false,
idempotent ALTER; exposed on the create payload and the task DTO.
Closes #85 (the ensemble/P4 shape stays parked as before)
2026-10-21 15:00:16 +02:00
..
2026-10-12 06:45:21 +02:00
2026-10-12 06:45:21 +02:00
2026-07-26 04:27:45 -04:00
2026-10-12 00:58:53 +02:00
2026-10-08 23:14:34 +02:00
2026-10-08 23:14:34 +02:00
2026-10-08 23:14:34 +02:00
2026-10-08 23:14:34 +02:00
2026-10-08 23:14:34 +02:00
2026-07-26 04:27:45 -04:00
2026-10-08 23:14:34 +02:00
2026-10-08 23:14:34 +02:00
2026-10-08 23:14:34 +02:00
2026-10-08 23:14:34 +02:00
2026-08-28 14:03:07 +08:00
2026-10-08 23:14:34 +02:00
2026-09-10 16:06:08 +08:00
2026-10-08 23:14:34 +02:00
2026-10-08 23:14:34 +02:00
2026-10-12 08:53:20 +02:00
2026-09-29 10:09:23 -04:00
2026-10-08 23:14:34 +02:00
2026-10-21 15:00:16 +02:00
2026-08-31 09:00:21 -04:00
2026-10-08 23:14:34 +02:00
2026-08-24 19:28:18 +08:00
2026-10-08 23:14:34 +02:00
2026-10-21 15:00:16 +02:00
2026-10-08 23:14:34 +02:00
2026-10-08 23:14:34 +02:00
2026-09-10 13:03:20 +08:00
2026-10-08 23:14:34 +02:00
2026-10-08 23:14:34 +02:00
2026-10-08 23:14:34 +02:00
2026-10-08 23:14:34 +02:00
2026-10-08 23:14:34 +02:00
2026-10-08 23:14:34 +02:00
2026-10-08 23:14:34 +02:00
2026-08-24 19:29:00 +08:00
2026-10-08 23:14:34 +02:00
2026-10-12 18:43:41 +02:00
2026-08-24 19:29:00 +08:00
2026-10-08 23:14:34 +02:00
2026-10-08 23:14:34 +02:00
2026-10-10 18:12:42 +02:00
2026-10-08 23:14:34 +02:00
2026-10-08 23:14:34 +02:00
2026-10-08 23:14:34 +02:00
2026-10-21 14:25:35 +02:00
2026-10-21 14:25:35 +02:00
2026-10-12 08:54:29 +02:00
2026-10-08 23:14:34 +02:00
2026-10-08 23:14:34 +02:00
2026-08-25 09:40:05 -04:00
2026-10-08 23:14:34 +02:00
2026-10-08 23:14:34 +02:00
2026-10-08 23:14:34 +02:00
2026-08-24 19:29:00 +08:00
2026-08-24 19:29:00 +08:00
2026-10-21 15:00:16 +02:00
2026-10-11 22:50:00 +02:00
2026-10-11 22:50:00 +02:00
2026-10-08 23:14:34 +02:00
2026-10-08 23:14:34 +02:00
2026-10-08 23:14:34 +02:00
2026-10-08 23:14:34 +02:00
2026-10-11 23:06:39 +02:00
2026-10-12 21:13:28 +02:00
2026-07-26 04:27:45 -04:00
2026-10-11 23:06:39 +02:00
2026-08-24 14:14:15 +08:00
2026-10-08 23:14:34 +02:00
2026-10-11 22:26:22 +02:00
2026-10-21 15:00:16 +02:00
2026-10-12 06:41:22 +02:00
2026-09-17 12:52:57 -04:00
2026-10-08 23:14:34 +02:00
2026-10-11 22:26:22 +02:00
2026-10-19 00:33:08 +02:00
2026-10-19 00:33:08 +02:00
2026-10-08 23:14:34 +02:00
2026-08-24 19:30:14 +08:00
2026-10-08 23:14:34 +02:00
2026-10-11 19:02:23 +02:00
2026-08-24 14:14:15 +08:00
2026-10-08 23:14:34 +02:00
2026-10-08 23:14:34 +02:00
2026-08-28 12:56:29 +08:00
2026-10-08 23:14:34 +02:00
2026-10-08 23:14:34 +02:00
2026-10-08 23:14:34 +02:00
2026-10-08 23:14:34 +02:00
2026-08-24 19:29:00 +08:00
2026-10-08 23:14:34 +02:00
2026-10-09 14:28:08 +02:00
2026-10-09 14:28:08 +02:00
2026-10-08 23:14:34 +02:00
2026-10-13 14:49:47 +02:00
2026-10-08 23:14:34 +02:00
2026-10-21 15:00:16 +02:00
2026-10-21 15:00:16 +02:00
2026-10-21 15:00:16 +02:00
2026-10-08 23:14:34 +02:00
2026-10-12 21:13:28 +02:00
2026-10-19 00:28:27 +02:00
2026-10-19 00:28:27 +02:00
2026-10-09 11:37:30 +02:00
2026-10-08 23:14:34 +02:00
2026-10-08 23:14:34 +02:00
2026-10-08 23:14:34 +02:00
2026-10-12 18:43:29 +02:00
2026-08-25 12:05:26 +08:00
2026-08-25 12:05:26 +08:00
2026-07-26 04:27:45 -04:00
2026-10-11 14:53:08 +02:00
2026-10-11 14:53:08 +02:00
2026-10-08 23:14:34 +02:00
2026-10-08 23:14:34 +02:00
2026-10-08 23:14:34 +02:00
2026-10-08 23:14:34 +02:00
2026-10-08 23:14:34 +02:00
2026-10-08 23:14:34 +02:00
2026-08-31 09:00:21 -04:00
2026-10-08 23:14:34 +02:00