antcolony
antcolony-scheduler
opened by import
opened · updated
Docker container on Byrodin, Hybriel. Reads/writes tickets.worldapi.org directly, holds no data. Event-driven rules (ticket/comment/state/session events + timers), priorities, leases on tickets, matches tickets to agent capabilities, hands out Claude quota shares for shared accounts, validates worker reports before filing them, generates project status and the creator inbox. Keywords in comments handled by code: /confirm /reject /prio /hold. Design: antcolony README.md.
Children
0 of 12 children done
pending antcolony #13Scheduler reacts to tickets events instead of pollingreview antcolony #14Scheduler on Byrodin, agents per hostreview antcolony #15Agents announce what their computer can doreview antcolony #16Claude quota per account, shared across computersreview antcolony #17Your keywords in commentsreview antcolony #18Each worker in its own sealed boxreview antcolony #19Status and a daily summary from ticketspending antcolony #20Small local models for the routine decisionsreview antcolony #21Knowledge from finished workreview antcolony #22Your answers to questions go straight into the next briefreview antcolony #23Short proper titles for question ticketsreview antcolony #24Only real questions reach the creator
History
import opened the ticket imported from 0004-scheduler.md
architect commented Creator decision 2026-09-24: worker reports become JSON with a fixed schema so the scheduler can validate them, e.g.
done: [..],verified: [{claim, command, output}](an entry without output is rejected),open: [..],issues: [{project, subject, repro, observed, expected}],questions: [..],running: [{url, pid, log}]. Free text inside fields is Markdown. Tickets are read by workers via the Markdown read view (see tickets.worldapi.org ticket on Markdown).architect commented Deployed to Byrodin 2026-09-24: tickets.worldapi.org (container tickets.worldapi.org, 127.0.0.1:45003) and ident.worldapi.org (127.0.0.1:45002). This comment was posted by the architect's live check while a browser watched this page.
Architect commented Draft design written: antcolony repo docs/scheduler-agent.md (Byrodin /CONTAINERS/projects/antcolony). Waiting for the creator on its 5 open questions (priority, project metadata, worker isolation, deploys, scheduler identity).
Architect changed the state progress Mission 015 started: scheduler v0 (next / brief / report --post, run by hand, no agent yet). Defaults for the 5 open questions set by the architect in docs/scheduler-agent.md; creator may overrule. Code: loreana:/media/STORAGE/projects/antcolony-scheduler.
Architect changed the state review Mission 015 done: scheduler v0 at loreana:/media/STORAGE/projects/antcolony-scheduler - ./colony next [--post] | brief | report [--post]. e2e 74/74 re-run by the architect (own tickets+ident copies); live next (read-only) lists 44 eligible. Fixes in mission 016: hybriel gets workers:false (registry now lives in the scheduler folder), ident#1 put on hold (parent). Nothing posted to live yet: needs the Colony identity + token.
Architect commented Mission 019 started: controller step (second one-shot session checks the worker's report with evidence, JSON verdict pass/fail) + ./colony cycle (next -> work -> controller -> post, once).
Architect commented Mission 019 done: controller step + ./colony check + ./colony cycle. e2e 119/119 re-run by the architect (fakes); real runs checked by the architect in the log and run folders: honest trivial task -> controller PASS -> posted (cycle USD 0.26: worker 0.09 + controller 0.18); fabricated report (file claimed that does not exist) -> real Sonnet controller FAIL, finding 'false' -> ticket back to open. A pass with a 'no evidence' finding is overruled to fail by code. Nth fail (default 2) -> creator question + on hold. Real cost of the mission about USD 0.37. Controller has host access like the worker (auto-mode classifier only).
Architect commented Mission 020 started: colony run (loop), expiring leases, quota check with reserve + parking/resume, per-session port ranges. Tests with fake claude only; refuses the live tickets server without --live.
Architect commented Concept update (creator, 2026-09-24): report questions become their own awaiting-creator tickets (parent = the ticket); a rejected ticket with a reason is picked up again with the reason at the top of the brief. See docs/scheduler-agent.md section 2. To be built after mission 020.
Architect commented Mission 020 done (daemon): colony run with --once/--parallel/--reserve/--port-pool/--live, expiring leases with heartbeat, quota from claude /usage (costs 0) with a 70 % reserve, parking + resume, disjoint port ranges, clean stop via the wrapper. e2e 144/144 re-run by the architect; live guard verified (refuses tickets.worldapi.org without --live). Questions filed as antcolony#8-#10. Mission 022 started: blocked-by, questions as tickets, rejections as work.
Caramboleyo changed the state done Architect commented Next: readable ticket texts from the scheduler, weekly limit 84 %, Haiku allowed.
Architect commented The scheduler now works tickets live: three are running one after another.
Architect commented Last step before it runs on its own: the scheduler as a container on Loreana that starts with the system.
Architect commented The scheduler now runs on its own, around the clock, on Loreana.
Test:
- Watch your inbox — finished work arrives as 'Ready for you to test'.
- New tickets you write are picked up automatically, oldest first.
- Deploys stay with the architect until gitoria can do them.
Architect changed the state open Not finished — what runs is a stopgap. The missing parts are its child tickets.
AntColonyScheduler commented The scheduler now writes under its own name.
Reading is open to everyone. To comment or change the state, log in with ident (top right) and choose a display name.