# Events

45 event types in the rig-conductor stream. Full payload shapes in `facts/events.yaml`.

- `ISSUE_APPROVED` — Issue is ready for dispatch.
- `ISSUE_ASSIGNED` — Dispatch picked an agent.
- `ISSUE_UNASSIGNED` — Agent released (timeout, explicit release, escalation).
- `WORK_STARTED` — Agent began coding.
- `BRANCH_CREATED` — Feature branch pushed.
- `PR_CREATED` — PR opened from agent branch.
- `CI_PASSED` — Per-PR CI green.
- `CI_FAILED` — Per-PR CI red.
- `REVIEW_ASSIGNED` — Review-E or human picked up the PR.
- `REVIEW_PASSED` — Review approval.
- `REVIEW_DISPUTED` — Review requested changes.
- `HUMAN_GATE_TRIGGERED` — A PR requires human decision before auto-merge.
- `HUMAN_GATE_REMINDER` — Gate still pending after N minutes.
- `MERGED` — PR merged.
- `MERGE_GATE_WAITING` — Merge queue is waiting (checks, reviews, labels).
- `MERGE_GATE_MERGED` — Merge queue completed.
- `MERGE_GATE_TIMEOUT` — Merge queue timed out.
- `MAIN_CI_STARTED` — Main-branch CI kicked off post-merge.
- `MAIN_CI_PASSED` — 
- `MAIN_CI_FAILED` — 
- `DEPLOYED_STAGING` — 
- `DEPLOYED_PRODUCTION` — 
- `SMOKE_PASSED` — 
- `SMOKE_FAILED` — 
- `BUILD_FAILED` — 
- `VERIFIED` — Post-deploy verification passed.
- `ISSUE_DONE` — Terminal state for a work item.
- `ESCALATED` — Escalated to human intervention.
- `MILESTONE_COMPLETE` — 
- `DUPLICATE_PR_CLOSED` — 
- `PR_OPENED` — Human or bot PR opened directly (no parent issue). Used for infra/tooling PRs.
- `PR_REVIEW_ASSIGNED` — 
- `PR_REVIEW_APPROVED` — 
- `PR_REVIEW_REJECTED` — 
- `AGENT_STARTED` — Pod started; first signal rig-conductor sees from a new instance.
- `HEARTBEAT` — Liveness + current-work snapshot. StaleHeartbeatService detects missing pods.
- `AGENT_STUCK` — Agent gave up or hit a loop. Surfaced for escalation.
- `CLI_STARTED` — Agent started a Claude Code / Codex / Gemini CLI run.
- `CLI_PROGRESS` — Periodic CLI progress ping.
- `CLI_COMPLETED` — CLI session finished. Aggregates cost and turn count.
- `TOKEN_USAGE` — Per-category cost emission (work vs thinking vs caching etc). Backed by a TokenUsageProjection in rig-conductor — per-ag
- `TOOL_USED` — Single tool invocation trace. TargetPreview is truncated to 120 chars.
- `MEMORY_WRITE` — 
- `MEMORY_READ` — 
- `MEMORY_HIT_USED` —
