Gas Town TLA+ Visualizer
Gas Town models a multi-agent coding orchestration system as a state machine:
- Polecats – worker agents with a status (
idle/working/crashed), a current molecule (0 means none), and a context budget in [0, 100]. - Molecules – units of work with dependencies, an assignee, a status
(
unassigned/assigned/complete/merged/conflict/needs_fix), and a hook state (none/persisted) standing for git-backed durable state. - Convoys – groups of molecules (
planning/active/complete). - Refinery queue – FIFO of completed molecule ids awaiting merge.
The context budget is the interesting part: a worker that runs out mid-molecule is a modeled state, not an error path bolted on afterward.
Drift risk
This namespace is the executable model of the spec, not its text. The TLA+ module string shown in the viewer lives verbatim in the spec; nothing checks that the displayed text and the runtime model agree. That is a known parity risk, the same one carried by order state flow.
Status
Core-only. app.cljs is a stub; there is no UI on this page yet.
| Piece | Namespace | State |
|---|---|---|
| Pure logic | wal-sh.projects.gas-town-tla.core |
complete |
| Storage | wal-sh.projects.gas-town-tla.storage |
complete |
| SPA entry | wal-sh.projects.gas-town-tla.app |
stub |
25 example-based tests and 5 test.check properties are defined under
test/wal_sh/projects/gas_town_tla/.