Commit graph

4 commits

Author SHA1 Message Date
Simbiot Harness
26edbb76c8 TG: входящее взято в работу — emoji-реакция 👀 + typing на время тика (e-261002202857, t-261002205233) 2026-10-02 21:15:48 +00:00
Simbiot Harness
e435289e55 hour берёт L-задачи (t-261002170836): classes S,M,L + мандат; тесты синхронизированы 2026-10-02 16:06:02 +00:00
Simbiot Harness
053bab3e78 tests(task-batch): синхронизация с контекст-схемой 11a8ccc (min 256k / hour 512k / day 1M) — t-261001090908-18a4f5
Бюджет и размеры задач в секциях 5/6 выведены из LEVELS[].ctx_tokens,
константы уровня захардкожены отдельным check'ом. 30 checks ALL PASS.
2026-10-01 10:02:28 +00:00
Simbiot Harness
2f4e3d22a7 feat(scheduler): батч-обработка задач в тике — пачка ready-задач в бюджете контекста (t-260930101325-010ba3)
Причина: find_task возвращал ОДНУ ready-задачу за такт — при 5+ ready
очередь росла быстрее исполнения (1 задача/такт).

Теперь:
- select_task_batch: ВСЕ ready-задачи класса уровня, старейшая первой;
- кап пачки MAX_TASK_BATCH (min=3, hour=6, day=6; env SIMBIOT_BATCH_MAX_<LEVEL>);
- бюджет контекста: секция задач <= ctx_tokens*3*0.5 символов,
  мандат/выжимки/эскалации/инбокс остаются в тике; старейшая берётся всегда;
- run_level_tick: claim всего батча ДО воркера; TaskCompleted/TaskFailed
  ПО каждой отдельно (смерть воркера не теряет батч в running);
- build_context: секция 'ТЕКУЩАЯ РАБОТА — БАТЧ из N' с постановками,
  инструкция закрывать каждую задачу cli.py complete <id> -a;
- CLI complete: закрытие running-задачи с результатом
  (commands.complete_task_with_delivery — доставка в TG идемпотентна).

Тесты: tests/test_task_batch.py — 28 проверок (ALL PASS), набор 8/8 зелёный.
2026-09-30 14:13:30 +00:00