SORTHOUSE Source ↗ Demo · synthetic data

AI triage that knows when to stop and ask a human.

Sorthouse classifies email and documents, extracts structured fields with evidence, validates them, and lets a person approve, correct or reject before anything happens. Nothing runs twice, and every decision leaves an audit trail.

How it works Preparing an isolated inbox…

Starts an isolated session with a synthetic inbox that is deleted automatically. No account, no real mail.

received sanitized classified attachments processed extracted validated policy checked review / ready

Evidence for every field

Each extracted value links to the exact span, page or image region it came from. A value without verifiable evidence is marked unsupported, never accepted quietly.

Policy outside the model

An ActionPolicy decides AUTO, REVIEW or BLOCKED from deterministic checks. Model confidence is only one signal and a valid JSON is not proof of correctness.

Safe, idempotent actions

Approval writes a transactional outbox. Retries, duplicate deliveries and timeouts after send are reconciled instead of repeated.

What you can try in two minutes

Open the approval queue, inspect a text PDF invoice, then a photographed one where the OCR confuses 8 and B. Correct the field, approve a complaint reply, then break things on purpose in the Failure Lab: prompt injection, duplicate delivery, concurrent reviewers, a timeout after send.

The evaluation includes 100 held-out emails, 12 adversarial cases and 10 failure fixtures.

Live vs simulated, stated plainly

The public demo runs a deterministic baseline. LLM adapters are pluggable; reported baseline metrics are not LLM results.

PartStatusDetail
Inbox, messages, invoices, photosSimulatedSynthetic corpus generated for this lab. No real customer data or PII.
Classifier and extractorSimulated / LiveA deterministic heuristic baseline by default. OpenAI, Anthropic and Gemini adapters exist behind the same interfaces and are enabled only by server-side configuration.
OCRSimulatedPhotographed invoices ship the OCR words, boxes and confidences an engine would return, including deliberate misreads.
Malware scan, mail provider, actionsSimulatedGates and idempotency behave as in production; effects stay inside the lab. Nothing is sent to third parties.
Queue, outbox, locking, audit, policy, validationLiveReal PostgreSQL state machine, Redis/Horizon jobs, optimistic locking and a real test suite, including parallel-process tests.