FastAPI → Pydantic → SQLite
Validates an inquiry, checks a caller-supplied idempotency key, and writes an inquiry and its audit event in one local transaction.
Two separate components, one practical question: how do we verify that the system handles the unhappy path?
AI-assisted · synthetic data · local demonstrationEvidence captured on 2026-09-09. Results below are historical records, not a live service or a new test run.
Silent recording, approximately 57 seconds. Playback was paced for readability; it is not a latency benchmark. The LLM scenes use mock responses.
The PDF and video retain the original 9-scenario browser walkthrough. This viewer shows its 6 API scenarios. The public source ZIP contains regression tests and offline evidence, rather than the complete original demonstration work package.
This is a static viewer of recorded test outcomes, not a running API, database, or live model. Nothing you select is sent to an AI provider.
{
"mode": "recorded_result / not live",
"scenario": "valid inquiry",
"status": 201,
"result": "created",
"persisted_inquiries_after_step": 1,
"audit_events_after_step": 1
}Database counts follow the original sequential walkthrough.Validates an inquiry, checks a caller-supplied idempotency key, and writes an inquiry and its audit event in one local transaction.
Tests strict output parsing, refusals, incomplete responses, and bounded retry behavior. It is not wired into the intake endpoint.
The enclosed local regression suite passes. It exercises request validation, replay/conflict behavior, transaction rollback, selected concurrent submissions, and model-adapter failure handling.
No production deployment, real-model accuracy, customer outcome, or security certification is claimed. No Google Sheets or Telegram integration is included. A different idempotency key represents a new request; this is not distributed exactly-once delivery.
The downloadable source includes the tests and setup instructions. Inspect the dependencies and run locally in an isolated environment. The optional --live example can incur provider charges; it is not needed for the tests.
python -m pytest -q
# 81 passed · local verification · 2026-09-09Read the machine-readable test report ↗Share the workflow, a sanitized example, and what a successful result should look like. We can agree on scope before work begins.
Project goal: Current stack / workflow: Sanitized example of the problem: Expected result / acceptance check: Deadline and budget range: Code/data access I am authorized to provide: AI-assisted development allowed: yes / no / discuss
Upwork-sourced inquiries: please keep pre-contract communication and contracting on Upwork. This site does not accept payment or submit messages.