← ClaudeAtlas

triage-assignlisted

Agent-actor triage loop. Batch-claims rows with agent='agent_unset' OR pool='pool_unset', assigns {tier, pool, agent} per payload + context, writes via bookie.
a-canary/arc-agents · ★ 0 · AI & Automation · score 66
Install: claude install-skill a-canary/arc-agents
# triage-assign — Unset Row Assignment Loop Drains ledger rows missing `agent` or `pool` assignment. This is the **agent-actor backstop** to `bin/factory.ts`'s `triageUnset` pure-SQL heuristic (shipped in PR-3, I-0011). The factory's SQL rule covers obvious cases (kind=task → agent=developer, kind=sprint → agent=sprint, etc.); `triage-assign` handles the hard cases the heuristic punts on — ambiguous payloads, mixed-kind parents, cross-context rows. When factory dispatches a `agent=triage` row, this is the skill it runs. ## Inputs No flags required. The worker claims `agent_unset` / `pool_unset` rows atomically from the ledger (via bookie) and processes them in batch. ## Procedure 1. **List unset rows.** ``` ledger.ts list --agent agent_unset --limit 20 # also ledger.ts list --pool pool_unset --limit 20 ``` Deduplicate (a row may have both unset). 2. **For each row, read payload + context.** - `ledger.ts show <id>` — kind, tier, title, body_md, parent_id. - Parent row if present: kind + body_md (what does the parent expect of children?). - Sibling rows (same parent): existing agent/pool assignments (for consistency). 3. **Assign {tier, pool, agent}.** Apply these rules in order: | Signal | Assignment | |---|---| | kind=sprint | agent=sprint, pool=build | | kind=event, source_module=arc-chat | agent=chat, pool=interactive | | kind=task, body mentions "HITL" or "human review" | agent=chat, pool=interactive | | kind=task, b