Converted all .formula.json files to .formula.toml using bd formula convert. TOML provides better ergonomics: - Multi-line strings without \n escaping - Human-readable diffs - Comments allowed Original JSON files retained for backwards compatibility. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
71 lines
1.5 KiB
TOML
71 lines
1.5 KiB
TOML
description = """
|
|
Semaphore tracking a single polecat's lifecycle.
|
|
|
|
Used by Witness to track polecat lifecycle during patrol. The Witness bonds this proto for each active polecat, creating a lease that tracks the polecat from spawn through work to cleanup.
|
|
|
|
## Variables
|
|
|
|
| Variable | Required | Description |
|
|
|----------|----------|-------------|
|
|
| polecat | Yes | Name of the polecat |
|
|
| issue | Yes | The issue assigned to the polecat |"""
|
|
formula = "mol-polecat-lease"
|
|
version = 1
|
|
|
|
[[steps]]
|
|
description = """
|
|
Spawned. Verify it starts working.
|
|
|
|
Check if the polecat is alive and working:
|
|
```bash
|
|
gt peek {{polecat}}
|
|
```
|
|
|
|
If idle for too long, nudge:
|
|
```bash
|
|
gt nudge {{polecat}} \"Please start working on your assigned issue.\"
|
|
```
|
|
|
|
Timeout: 60s before escalation to Mayor."""
|
|
id = "boot"
|
|
title = "Boot"
|
|
|
|
[[steps]]
|
|
description = """
|
|
Actively working. Monitor for stuck.
|
|
|
|
The polecat is processing its assigned issue ({{issue}}).
|
|
Monitor via peek. Watch for:
|
|
- Progress on commits
|
|
- Status updates in beads
|
|
- SHUTDOWN mail when done
|
|
|
|
Wait for SHUTDOWN signal from the polecat."""
|
|
id = "working"
|
|
needs = ["boot"]
|
|
title = "Working"
|
|
|
|
[[steps]]
|
|
description = """
|
|
Exit received. Ready for cleanup.
|
|
|
|
The polecat has completed its work and sent SHUTDOWN.
|
|
Perform cleanup:
|
|
```bash
|
|
gt session kill {{polecat}}
|
|
gt worktree prune {{polecat}}
|
|
```
|
|
|
|
Update beads state and close the lease."""
|
|
id = "done"
|
|
needs = ["working"]
|
|
title = "Done"
|
|
|
|
[vars]
|
|
[vars.issue]
|
|
description = "The issue assigned to the polecat"
|
|
required = true
|
|
[vars.polecat]
|
|
description = "Name of the polecat"
|
|
required = true
|