JianFeeeee
7082a50365
feat(scheduler): M2 调度器骨架(就绪队列 + 选择函数 + 快照 + 任务级 panic 隔离)
设计依据 docs/zh/input-scheduler-design.md §14 M2。
- 新增 scheduler.go:四级 Level 常量(默认 L1,显式才是特权)、
Task/TaskKind、scheduler(有界队列/running/统计)、纯函数 pickTaskIndex
(排序键 -Level → EnqueuedAt → ID)、schedulerLoop/pumpInbox/executeTask、
DumpScheduler 原子快照
- eventLoop 退场,职责由 schedulerLoop 承担;M2 全部任务为 L1,
因而行为等价于原先的 channel FIFO
- 每任务 panic 隔离(不变量 I6):panic 只失败该任务,调度器存活,
取代原先「重启整个循环」
- Start() 改起 schedulerLoop;interceptLoop 暂不动(M3 重写)
- 新增 scheduler_test.go:Q1 排序 4 组、Q4 背压、生命周期、K1 panic 隔离、
O1 快照一致性、Level 取值契约
- 验收:agent 全量 + -race 通过
2026-09-12 23:49:55 +08:00
..
2026-08-05 09:59:33 +08:00
2026-08-14 00:48:40 +08:00
2026-09-11 11:45:24 +08:00
2026-09-12 23:49:55 +08:00
2026-07-25 11:17:31 +08:00
2026-09-11 11:45:24 +08:00
2026-09-11 11:45:24 +08:00
2026-09-11 11:45:24 +08:00
2026-09-12 23:49:55 +08:00
2026-08-18 09:07:21 +08:00
2026-09-12 08:23:30 +08:00
2026-09-11 11:45:24 +08:00
2026-09-11 11:45:24 +08:00
2026-07-28 11:42:29 +08:00
2026-09-11 11:45:24 +08:00
2026-09-11 13:45:25 +08:00
2026-09-11 13:45:25 +08:00
2026-09-11 11:45:24 +08:00
2026-09-11 11:45:24 +08:00
2026-09-04 06:25:51 +08:00
2026-09-04 06:25:51 +08:00
2026-09-10 20:36:39 +08:00
2026-09-12 13:57:06 +08:00
2026-09-12 13:57:06 +08:00
2026-07-16 12:11:16 +08:00
2026-08-18 09:07:21 +08:00
2026-09-12 23:47:12 +08:00
2026-09-11 20:31:50 +08:00
2026-09-10 23:59:12 +08:00
2026-09-12 23:49:55 +08:00
2026-09-12 23:49:55 +08:00
2026-09-10 20:36:39 +08:00
2026-09-10 20:36:39 +08:00
2026-08-18 11:49:57 +08:00
2026-09-03 12:37:58 +08:00
2026-07-24 14:49:08 +08:00
2026-09-03 12:37:58 +08:00
2026-09-12 14:56:25 +08:00
2026-09-12 14:56:25 +08:00
2026-08-25 10:50:37 +08:00
2026-08-26 16:10:02 +08:00
2026-09-12 23:47:12 +08:00
2026-09-12 23:47:12 +08:00
2026-07-27 15:26:23 +08:00
2026-09-12 13:57:06 +08:00
2026-09-12 13:57:06 +08:00
2026-09-10 20:36:39 +08:00
2026-09-06 09:51:31 +08:00