Back to notes
AutomationGuide5 min

Automation is useful when it creates a clearer queue for the human

The goal is not to remove people from the workflow. It is to make the next human decision obvious, informed, and faster.

Open source doc

Real workflow example

A recruiting team receives hundreds of candidate messages. A naive automation tries to fully answer every candidate and update the applicant system. It fails when messages are ambiguous, and humans still have to inspect scattered inbox threads.

A better automation creates a queue. Each item has status, owner, deadline, evidence, risk, and recommended next action. The system can draft replies or classify intent, but its main job is to make the next human decision obvious.

The automation reduces ambiguity first. Reduced clicking comes later.

Implementation approach

Map the manual workflow states before adding automation. Most operational work already moves through states like new, needs context, ready for review, approved, blocked, sent, and archived.

Let automation populate the queue with structured context. It can attach evidence, summarize risk, suggest an owner, estimate priority, and prepare the next action. Humans should approve or correct those decisions in the same place.

Measure queue health after launch. Age, blocked reasons, rework, and approval rates tell you whether automation is improving the workflow.

Code or config snippet

type QueueItem = {
  id: string;
  status: "new" | "needs_context" | "ready_for_review" | "approved" | "blocked" | "done";
  ownerId: string | null;
  deadline: string | null;
  evidence: Array<{ label: string; sourceUrl: string }>;
  risk: "low" | "medium" | "high";
  recommendedAction: "reply" | "assign" | "request_info" | "escalate" | "archive";
  blockedReason?: string;
};

Mistakes to avoid

  • Building a silent background process with no operator queue.
  • Removing human review before the workflow is measurable.
  • Hiding blocked reasons.
  • Storing approvals as free-form comments only.
  • Measuring automation by clicks saved while queue age gets worse.

Ready checklist

  • Queue states match the real workflow.
  • Every item has owner, status, and next action.
  • Evidence is attached to recommendations.
  • Approval, rejection, and correction events are structured.
  • Blocked work is easy to find.
  • Queue age and rework are reviewed regularly.
Practical note
Ask operators what makes an item hard to decide. Automate that context first. The best automation often starts as a better queue, not a fully autonomous agent.

Use this as an implementation constraint, not just advice. The interface, server code, and validation path should make the same behavior true.

Apply this to a build
Contact
Bring the product pressure, system constraints, and expected business outcome.
Send the desired outcome, users, current bottleneck, stack, and timeline. I will respond with a practical senior engineering path for the build.