{"wiki":{"id":775,"slug":"el-intake-01","entity_type":"droid","entity_id":"el-intake-01","title":"Intake Planner Sweep","prose_md":"## About\n\nThe Intake Planner Sweep is a scheduled maintenance droid that keeps the dispatch queue healthy. When initiative planning produces step‑less shells—blueprints for work that haven’t yet been broken into actionable steps—those shells can’t be picked up by dispatchers. Sweep checks every 5 minutes whether the dispatch window is running low on work, and if so, calls a synchronous planner that takes one eligible shell and decomposes it into concrete Layer‑1 steps, making it ready for dispatch. This prevents stalls and ensures the pipeline stays fed.\n\nUnder the hood, it’s a cron‑driven Python sweep that runs as a flock‑singleton to avoid overlaps. Within a 15‑minute global debounce and a per‑shell 2‑hour backoff, it asks the planning module to zero in on the next step‑less planned shell and then invokes the Author (ia_s1 --decompose-shell) synchronously to produce the steps. All outcomes are logged to per‑initiative files and to the audit trail, and it writes only through the [[initiatives]] service, never spawning detached children.\n\nOwned by [[agt_011]], this is not a one‑off helper; it’s a standard piece of automation that 187 agents, from [[agt_001]] through [[agt_044]], run identically. Sweep is pure software—it makes no Claude calls at all, relying instead on deterministic planning code to do its job.","namesake_json":"{\"engine\": \"software\", \"model\": null, \"claude_purpose\": null, \"family\": \"(none)\", \"family_size\": 187, \"is_unique\": false}","profile_pic_path":"avatars/droid/el-intake-01.png","source_hash":"3d82cf17b59c1c2ea1fd250b0cd0f0a6b9d9e32df865afc670d5f60186df38f7","status":"active","last_generated_at":"2026-07-26 03:33:12","created_at":"2026-07-26 03:32:56","updated_at":"2026-08-04 03:25:51"},"facts":{"id":"el-intake-01","name":"Intake Planner Sweep","machine_name":"el_intake_01","owner":"agt_011","function":"Cron sweep (audit_wrapper: flock singleton + run-audit). Checks the dispatch window; if starving, calls shared.sprint_planning.plan_next_shell() which runs the Author (ia_s1 --decompose-shell) SYNCHRONOUSLY on the next eligible step-less planned shell and records [intake-planner] launch + outcome decisions.","process_type":"scheduled","schedule":"Every 5 min","process_name":"","avatar_color":"#94a3b8","created_for":"","purpose":"Keep the dispatch queue fed: draft Layer-1 steps for step-less planned shells so planner-mode filings become dispatchable (CAROL-INI-2745 intent, re-homed out of the dispatch tick by CAROL-INI-2747 — a oneshot tick reaps detached children with its cgroup, so the Author must run under cron, synchronously).","duties":"Every 5 min: if dispatched count < rolling depth, decompose at most ONE shell (15-min global debounce, 2h per-shell backoff inside plan_next_shell). Write per-initiative logs logs/intake_planner_INI-<id>.log and decision-audit rows. Exit non-zero when the Author fails or lands no steps so the run-audit row reads failed.","constraints":"Never launches detached children; never runs from a short-lived systemd unit; at most one Author run per 15 min globally; writes only via the initiatives relay + its own logs.","status":"running","gender":"","archetype":"","building_block":"file","service_override":null,"enabled":1,"task_key":"initiatives.blanket_planner","model_free":0},"page":{"type":"droid","page_class":"main","class_label":"Main page","kind_label":"Droid","kind_gloss":"","listed":true}}