What the run returned

Observed results compared with authored expectations
MeasureExpectedObserved
Routine cases1515
Cases requiring review3030
Processor errors on first run00
Exact case results4545
Exceptions incorrectly routed as routine00
Accepted documents with the wrong client / entity0 / 00 / 0

0 cases differed from the expected result. Each case ran 3 measured times. Route totals use the first result; exact-match and unsafe-acceptance checks cover every repetition. An exact match checks the entire output: document identity, type, period, accepted/duplicate/exception status, missing requirements and reason codes. An expected exception passing the test means it was correctly held for review.

Matching, missing documents and exceptions

The configured checklist asks which document types are present for a client, entity and month. A valid attachment can be accepted while the package still needs another document.

Examples from this measured run; names and records are synthetic
ScenarioObserved associations and missing documentsCase result
Exact registered client and entity; complete three-type package
intake-01
  • accepted: client-harbor / entity-harbor-studio / 2026-08 / bank statement
  • accepted: client-harbor / entity-harbor-studio / 2026-08 / payroll report
  • accepted: client-harbor / entity-harbor-studio / 2026-08 / receipt

Missing: none on the configured checklist.

routine
Matches expected
Duplicate attachment in same message, renamed
intake-09
  • accepted: client-harbor / entity-harbor-studio / 2026-08 / bank statement
  • duplicate: client-harbor / entity-harbor-studio / 2026-08 / bank statement

Missing: none on the configured checklist.

routine
Matches expected
One required receipt missing despite valid bank and payroll
intake-12
  • accepted: client-harbor / entity-harbor-studio / 2026-08 / bank statement
  • accepted: client-harbor / entity-harbor-studio / 2026-08 / payroll report

Missing: receipt (2026-08).

exception
Matches expected
Known sender is not authorized for claimed client
intake-17
  • exception — sender client mismatch

Missing: bank statement (2026-08).

exception
Matches expected
Entity alias matches two entities
intake-18
  • exception: client-harbor — ambiguous entity

Missing: bank statement (2026-08).

exception
Matches expected
Changed receipt without explicit correction link is held
intake-32
  • exception: client-harbor / entity-harbor-studio / 2026-08 / receipt — conflicting document version

Missing: none on the configured checklist.

exception
Matches expected
Textless scanned PDF envelope requires review
intake-38
  • exception — unreadable text

Missing: bank statement (2026-08).

exception
Matches expected
Text digest mismatch prevents filing
intake-40
  • exception — hash mismatch

Missing: bank statement (2026-08).

exception
Matches expected
View all 45 case results
CaseExpected routeFirst observed routeFull output check
intake-01 · Exact registered client and entity; complete three-type packageroutineroutineExact match
intake-02 · Registered client and entity aliasesroutineroutineExact match
intake-03 · Case and whitespace normalizationroutineroutineExact match
intake-04 · Canonical identifiers are exact lookup valuesroutineroutineExact match
intake-05 · Single authorized client and single entity fallbackroutineroutineExact match
intake-06 · Single authorized client fallback with explicit entityroutineroutineExact match
intake-07 · Document type registered aliasroutineroutineExact match
intake-08 · Filename and email subject cannot override explicit document factsroutineroutineExact match
intake-09 · Duplicate attachment in same message, renamedroutineroutineExact match
intake-10 · Already received exact content is duplicateroutineroutineExact match
intake-11 · New attachment completes package alongside trusted prior documentroutineroutineExact match
intake-12 · One required receipt missing despite valid bank and payrollexceptionexceptionExact match
intake-13 · Empty message leaves all requirements missingexceptionexceptionExact match
intake-14 · Missing period is not inferred from subject or filenameexceptionexceptionExact match
intake-15 · Invalid numeric monthexceptionexceptionExact match
intake-16 · Unknown sender cannot self-assign a registered clientexceptionexceptionExact match
intake-17 · Known sender is not authorized for claimed clientexceptionexceptionExact match
intake-18 · Entity alias matches two entitiesexceptionexceptionExact match
intake-19 · Missing entity for multi-entity clientexceptionexceptionExact match
intake-20 · Unknown entity does not fuzzy-matchexceptionexceptionExact match
intake-21 · Unknown client does not fall back to known senderexceptionexceptionExact match
intake-22 · Authorized adviser submits two independently identified clientsroutineroutineExact match
intake-23 · Adviser with two client scopes cannot omit clientexceptionexceptionExact match
intake-24 · One bad item preserves valid item without claiming complete packageexceptionexceptionExact match
intake-25 · Conflicting duplicate client headers are never last-winsexceptionexceptionExact match
intake-26 · Unsupported type tax return is escalatedexceptionexceptionExact match
intake-27 · Missing document type is not guessed from filenameexceptionexceptionExact match
intake-28 · Known but unrequested month is not silently filedexceptionexceptionExact match
intake-29 · Plain body text is not an attachment or a completeness factexceptionexceptionExact match
intake-30 · Late receipt explicitly belongs to prior monthroutineroutineExact match
intake-31 · Explicit later corrected receipt links to prior versionroutineroutineExact match
intake-32 · Changed receipt without explicit correction link is heldexceptionexceptionExact match
intake-33 · Correction target does not existexceptionexceptionExact match
intake-34 · Correction cannot cross entity boundaryexceptionexceptionExact match
intake-35 · Non-increasing correction revision is heldexceptionexceptionExact match
intake-36 · Injection prose after header cannot change client or checklistexceptionexceptionExact match
intake-37 · Email-body injection cannot waive absent receiptexceptionexceptionExact match
intake-38 · Textless scanned PDF envelope requires reviewexceptionexceptionExact match
intake-39 · Unsupported archive does not imply successful extractionexceptionexceptionExact match
intake-40 · Text digest mismatch prevents filingexceptionexceptionExact match
intake-41 · Annual tax period is outside monthly contractexceptionexceptionExact match
intake-42 · Same filename with distinct document content is not duplicateroutineroutineExact match
intake-43 · Receipt without stable reference stays an exceptionexceptionexceptionExact match
intake-44 · Unsupported prose-only attachment cannot invent an entityexceptionexceptionExact match
intake-45 · Malformed correction revision is heldexceptionexceptionExact match

How the benchmark works

  1. Define the expected result. The fixture supplies a synthetic message, attachment text, an approved client/contact/entity catalog, requested monthly packages and prior documents. Expected outputs are authored separately from the processor.
  2. Run the intake rules. The processor receives the input, catalog and policies—not case IDs, titles or expected results. It validates text hashes, resolves registered identities and aliases, checks explicit periods, detects duplicates and corrections, and lists missing document types.
  3. Compare every output. The runner records the complete expected and actual result for every case. Source hashes bind the report to the exact fixture, processor and runner; the page build refuses changed inputs or inconsistent totals.

The test set includes ordinary complete packages, incomplete submissions, ambiguous entities, conflicting versions, unsupported or unreadable inputs and instructions embedded in text. Its deliberately chosen mix of 15 routine and 30 exception cases is not an estimate of a firm's exception rate.

Recognized facts use explicit headers before the document narrative. Arbitrary PDFs, natural-language extraction, live connector reliability, accounting validity and human handling time require separate measurements. A sender match is a routing hint, not identity verification.

Inspect the evidence: download every test input, expected output and measured result below. The report identifies the exact processor and runner versions by their source hashes.

Your workflow, measured

Find the work worth automating.

A workflow audit maps your intake queue, the information it needs and the decisions your team should keep. Start with the documents your team spends the most time matching and chasing.