Gas City Orders Catalog¶
Purpose: Catalog scheduled, triggered, or manually invoked bindings from a formula to a target scope/pool within the Gas City 1.4.x supervisor loop.
Upstream: Tutorial 07 — Orders, Command execution trust boundaries — Order check and exec run trusted operator config against the order's target scope; untrusted order-triggering data (bead text, formula vars) must never be interpolated into the shell command.
An Order is not the workflow itself. The Formula owns workflow logic. The Order owns when, where, and against what pool/scope the formula runs.
Order kinds¶
| Kind | What fires | Agent session? |
|---|---|---|
| Exec order | POSIX shell command directly on the orchestrator environment | No |
| Formula order | Dispatches a v2 formula as a bead graph to a target worker pool | Yes (agent pool) |
Trigger types (upstream)¶
| Trigger | Behaviour |
|---|---|
cooldown |
Fires after interval duration has elapsed since last run |
cron |
Standard 5-field cron expression |
condition |
Runs check shell script; fires when it exits 0 (bounded by check_timeout) |
event |
Tracks a named event bus cursor (e.g. bead.closed, gitlab.mr.merged) |
manual |
Only fires via gc order run <name> |
Order Dispatch Loop & Split Storage¶
In Gas City 1.4.x, Orders participate directly in the native supervisor dispatch loop:
EVENT / TRIGGER (cooldown/cron/condition/event) -> ORDER -> FORMULA -> gc sling <agent> <bead>
<city>/.gc/store/.
- Durable Work Storage (Dolt): Resulting Beads tasks, DAG step beads, and closure receipts are committed to the shared Dolt server.
Confirmed orders (source-verified)¶
Reconcile against live city/pack order files before treating a row as runtime truth. Source: blueflyio/blu/blucity-packs (release/v0.1.x).
Core Infrastructure Orders (Supervisor & Maintenance)¶
| Order | Kind | Trigger | Interval/Sched | Target / Role | Purpose |
|---|---|---|---|---|---|
dolt-health |
exec |
cooldown |
30s |
— | Dolt server port and connectivity probe |
dolt-remotes-patrol |
exec |
cooldown |
15m |
— | Dolt remotes sync verification |
beads-health |
exec |
cooldown |
30s |
— | Beads store readiness and routing check |
mol-dog-backup |
exec |
cooldown |
6h |
— | Dolt ledger backup snapshot |
mol-dog-compactor |
exec |
cooldown |
2h |
— | Ephemeral wisp and cache compaction |
mol-dog-doctor |
exec |
cooldown |
5m |
— | Beads doctor preflight check |
mol-dog-phantom-db |
exec |
cooldown |
1h |
— | Detect and prune unlinked Dolt databases |
mol-dog-stale-db |
formula |
cron |
0 */4 * * * |
dog |
Prune stale ephemeral sessions |
cascade-nudge-on-blocker-close |
exec |
event |
bead.closed |
— | Nudge dependent beads when blocker closes |
nudge-on-route |
exec |
event |
bead.updated |
— | Nudge agents when bead is slung/routed |
order-tracking-sweep |
exec |
cooldown |
1m |
— | Sweep order status into parent convoys |
cross-rig-deps |
exec |
cooldown |
5m |
— | Reconcile cross-rig bead dependencies |
gate-sweep |
exec |
cooldown |
30s |
— | Sweep and evaluate active decision gates |
jsonl-export |
exec |
cooldown |
15m |
— | Backup export of Dolt beads to JSONL |
nudge-mail-sweep |
exec |
cooldown |
5m |
— | Route pending Gas City agent mail |
orphan-sweep |
exec |
cooldown |
5m |
— | Clean up orphaned agent sessions |
prune-branches |
exec |
cooldown |
6h |
— | Clean up merged worktree branches |
reaper |
exec |
cooldown |
30m |
— | Terminate stuck or dead agent processes |
spawn-storm-detect |
exec |
cooldown |
5m |
— | Safety brake against unbounded agent spawning |
wisp-compact |
exec |
cooldown |
1h |
— | Compact ephemeral wisps |
gitlab-pipeline-event |
exec |
event |
pipeline.status |
— | Ingest GitLab CI pipeline updates |
Domain & Capability Orders¶
| Order | Formula | Pack | Trigger | Cadence/scope | Target Pool |
|---|---|---|---|---|---|
governance-weekly-audit |
governance-audit |
foundation/governance |
cron |
0 9 * * 1 (Mon 09:00) |
governance |
digest-generate |
mol-digest-generate |
platform/gascity |
cooldown |
every 24h |
dog |
platform-openclaw-health-patrol |
openclaw-health-check |
platform/openclaw |
cooldown |
every 15m |
platform-ops |
mvp-drupal-roundtrip |
mvp-drupal-roundtrip |
bluefly |
webhook |
on demand | gascity.dog |
mvp-drupal-roundtrip-deliver |
exec |
event |
order.completed |
event cursor | — |
amcs-runtime-verify-patrol |
amcs-runtime-verify |
amcs |
cooldown |
every 15m |
governance-compliance |
amcs-workflow-guard-patrol |
amcs-workflow-guard |
amcs |
cooldown |
every 2h |
governance-compliance |
amcs-addon-surface-patrol |
amcs-addon-surface |
amcs |
cooldown |
every 6h (rig: amcs) |
editorial-qa |
amcs-config-drift-patrol |
amcs-config-drift |
amcs |
cooldown |
every 1h (rig: amcs) |
personalization |
amcs-custom-modules-sweep |
amcs-custom-modules |
amcs |
cooldown |
every 24h (rig: amcs) |
governance-compliance |
amcs-ddev-health-patrol |
amcs-ddev-health |
amcs |
cooldown |
every 30m (rig: amcs) |
editorial-qa |
amcs-editorial-qa-weekly |
amcs-editorial-qa |
amcs |
cron |
0 6 * * 0 (Sun 06:00) |
editorial-qa |
amcs-factory-bootstrap-manual |
amcs-factory-bootstrap |
amcs |
manual |
on demand (rig: amcs) |
governance-compliance |
amcs-governance-audit-manual |
amcs-governance-audit |
amcs |
manual |
on demand (rig: amcs) |
governance-compliance |
amcs-jsonapi-health-patrol |
amcs-jsonapi-health |
amcs |
cooldown |
every 1h (rig: amcs) |
search-rag |
amcs-rag-grounding-patrol |
amcs-rag-grounding |
amcs |
cooldown |
every 2h (rig: amcs) |
search-rag |
amcs-recipe-surface-patrol |
amcs-recipe-surface |
amcs |
cooldown |
every 12h (rig: amcs) |
migration-ingestion |
amcs-release-validation-manual |
amcs-release-validation |
amcs |
manual |
on demand (rig: amcs) |
governance-compliance |
amcs-site-maintain-daily |
amcs-site-maintain |
amcs |
cron |
0 4 * * * (04:00 daily) |
content-maintenance |
amcs-stale-content-weekly |
amcs-stale-content |
amcs |
cron |
0 5 * * 1 (Mon 05:00) |
content-maintenance |
Formula vs Order (Mountain-layer worked examples)¶
Formula owns how; Order owns when/where/against which pool/scope (gc-formulas.md). Two examples of how a Bluefly Convoy uses both (see gc-catalog.md for the Convoy definition):
- AMCS: Order=
amcs-release-validation-manual(confirmed above) fires Formula=drupal-changeon demand against theamcsRig. - DevOps: a hypothetical Order for Convoy "Shared CI Estate Convergence" would fire Formula=
shared-ci-migrationon acooldown/manualtrigger againstiac/gitlab_components— illustrative; no such order exists inblucity-packstoday.
Rules¶
Use a Gas City Order when the task requires one or more of:
- agent judgment
- cross-system evidence gathering
- routing
- durable receipts
- human approval/handoff
- state-aware remediation
Do not move deterministic work into Orders merely because it is scheduled.
Keep these with their native owners when possible:
- GitLab CI job scheduling
- DSM snapshot scheduling
- system service timers
- certificate renewal
- ordinary database maintenance
- No personal home paths or workstation absolute paths in this catalog (use
$WORKSPACE_ROOT).