A prompt is a terrible unit of work. It has no owner, no status, no history, no SLA. When the process crashes mid-execution, the prompt is gone — and so is the answer to the only question that matters: what was this agent supposed to be doing?
The fix is to stop sending prompts and start opening tickets.
In AACFlow, every piece of agent work is a first-class record in the database before any tokens are generated. The chat box on top of the canvas is a UI affordance. The ticket underneath is what the platform actually executes against, retries, hands off, and audits.
A Ticket Has Five Things a Prompt Does Not
A prompt is a string. A ticket is a row. The difference is not cosmetic — it is what makes agent work operable.
Every AACFlow ticket carries:
- An owner — exactly one agent or workflow accountable for moving it forward.
- A status —
queued,running,paused,completed, , . Not a vibe, an enum.



