Project notebook / Voice agents
ImplementedVoice Agent Workflow Orchestration
I built a voice-agent workflow gateway that turns appointment requests into authenticated API operations, with tenant-scoped access, idempotent updates, and recovery when a response disappears after a commit.
What I built
- Implemented a Node.js appointment API with verified first-party credentials and tenant-scoped booking access.
- Implemented operation-ID deduplication, request fingerprint conflicts and recovery after simulated lost responses.
- Tested unauthorized access and concurrent duplicate submissions against the API.
Experiments & checks
- Cross-tenant changes must be denied even when the intent is valid.
- Repeated logical actions must not double-book or double-charge.
- Timeout means the outcome is unknown; reconcile before retrying a write.
- Uncertain identity requires a human handoff, not an optimistic guess.
Notes & limitations
I built the integration around the uncomfortable question: how does a natural-language request become an authorized business action?
Transcript and model output are untrusted. The backend decides which identity can change which booking, not the model or a caller-supplied customer ID.
The agent can ask good questions. It cannot grant itself permission to answer them on behalf of someone else.
Screenshots & media

Project updates
Dated notes tied to actual revisions of the site, not a simulated activity feed.
Implementation notes revised
Clarified what was built and how the integration boundaries were tested.
Site revision aed2d3d
Voice agent projects published
Added five distinct implementation write-ups and supporting articles.
Site revision 2d9a119
These entries reflect published changes to this website. The website repository is private; revision IDs are not public source links.
Discuss this project
Questions, ideas, minimal reproductions and corrections are welcome. Each project has its own public GitHub Discussion.
You can read without an account; posting requires GitHub sign-in. Keep private customer information, credentials and restricted material out of public threads.
Open this project's discussion