I built an AI agent that handles customer operations — refunds, order lookups, and support tickets — with a human approval gate built into the workflow. The agent proposes the action, pauses, and waits for a human to approve before anything executes. The LLM never makes the final call. Role-based access and a full audit trail are enforced in code, not prompts. Deployed live on Azure Container Apps.