# Verification Report — Forge PM 100,000 Work Order Simulation

> **FICTIONAL / SYNTHETIC DEPLOYMENT MODEL.** Forge Property Management is an invented enterprise customer. No real customer data was used. Figures are from a synthetic corpus and illustrative assumptions.

**Strictness:** IRS_AUDITOR  |  **Proof status:** live ecosystem (real Postgres + real gRPC) run over a synthetic 100k corpus; customer, data, and ROI are fictional/illustrative

**Simulation-tier label:** `FICTIONAL_DEPLOYMENT_MODEL_CERTIFIED` (not a production certification; the Proof Layer assigns the authoritative state independently).

**Checks:** PASS 27 / 27 (100%)  |  **Generated:** 2026-06-26T00:30:30.011Z

**Live infrastructure:** database engine `pglite-memory`, gRPC dispatch `127.0.0.1:58446`.

## Disclosed seams & limitations

- FICTIONAL CUSTOMER: "Forge Property Management" is an invented enterprise. No real customer relationship, deployment, or contract exists. This is a synthetic deployment model, not a production case study.
- SYNTHETIC DATA: All 100,000 work orders are generated by a seeded PRNG (src/enterprise-synth.mjs) with a ground-truth answer key. Reported accuracy is against that synthetic key, not real tenant text; absolute accuracy on real intake will differ.
- SIMULATED OPERATIONS & ROI: Manual handling time, exception review time, coordinator cost, implementation cost, and platform cost are stated illustrative assumptions (assumptions.json), not measured production figures. The ROI is a transparent model, not a realized financial result.
- LIVE INFRASTRUCTURE (in-process): Persistence is the real PostgreSQL engine via PGlite (in-memory for this run) and dispatch crosses a real gRPC/HTTP2 wire to a Node service on localhost. An external Postgres (DATABASE_URL) and a Go gRPC service are wire-compatible disclosed seams, not exercised here.
- DISCLOSED_SEAM: The classifier is a deterministic lexicon model, not a hosted LLM. The production design swaps an LLM behind the same interface; that swap is unverified here.
- AT-LEAST-ONCE DISPATCH: Under load a Dispatch RPC can occasionally exceed its client deadline after the gRPC server has already committed the dispatch row. The actioner escalates those orders to a human exception (never double-dispatches, never silently drops), so dispatch_records can slightly exceed the auto-dispatched count. The exact orphan count is transport-timing dependent and not bit-identical across runs; the reconciliation identity (dispatch_records = auto-dispatched + safely-escalated orphans) holds every run.

## Operational results (synthetic corpus over live infra)

| Metric | Value |
| --- | --- |
| Work orders processed | 100,000 |
| Classification accuracy | 100.0% |
| Priority accuracy | 100.0% |
| Routing accuracy (region) | 100.0% |
| Auto-action rate | 56.6% |
| Human exception rate | 27.3% |
| Rejection rate | 16.1% |
| Needs-review rate | 27.3% |
| False-auto-action rate | 0.00% |
| Exception precision / recall / F1 | 0.974 / 1 / 0.9868 |
| Duplicate suppression | 100.0% |
| SLA routing performance | 100.0% |
| Audit completeness | 100.0% |
| Avg processing time | 3.1374 ms/order (319/s) |

### Disposition counts

| Disposition | Count |
| --- | --- |
| AUTO_DISPATCH | 56,651 |
| HUMAN_EXCEPTION | 27,292 |
| REJECTED | 16,057 |

### Persistence (real DB row counts)

| Table | Rows |
| --- | --- |
| work_orders | 100,000 |
| audit_log | 100,000 |
| dispatch_records | 56,651 |

## Financial impact (illustrative ROI model)

| Line | Value |
| --- | --- |
| Manual baseline labor cost | $506,667 / yr |
| Agent-assisted exception labor cost | $137,275 / yr |
| Annual labor savings | $369,392 |
| Coordinator capacity recovered | 12.26 of 14 FTE |
| Implementation (one-time) | $185,000 |
| Platform (annual) | $114,000 |
| First-year net savings | $70,392 |
| Payback period | 8.69 months |
| 3-year net savings | $581,175 |
| 3-year ROI | 110.28% |

## Checks

| Check | Detail | Result |
| --- | --- | --- |
| Scale: full synthetic corpus processed through the live ecosystem | 100,000 orders (target 100,000) | PASS |
| Classification accuracy >= 0.90 on resolvable single-trade orders | accuracy=1 over 84807 orders | PASS |
| Priority accuracy >= 0.90 | accuracy=1 over 93001 orders | PASS |
| Routing accuracy >= 0.99 (zone -> region) where a unit/zone exists | accuracy=1 over 90942 orders | PASS |
| Safety: exception-detection recall >= 0.95 | recall=1 (tp=42221, fn=0) | PASS |
| Safety: false-auto-action rate <= 0.02 | rate=0 (0/100000) | PASS |
| Quality: exception-detection precision >= 0.90 | precision=0.974 (fp=1128) | PASS |
| Outcome: auto-action rate within [0.45, 0.70] | autoActionRate=0.5665 (56651/100000) | PASS |
| Duplicate suppression >= 0.98 (durable fingerprint query) | 10009/10009 caught | PASS |
| Validator: 100% of over-cost-limit orders held for human approval | 7961/7961 held | PASS |
| Validator: 100% of missing-location orders rejected (not auto-dispatched) | 9058/9058 rejected | PASS |
| Validator: 100% of missing-description orders rejected | 6999/6999 rejected | PASS |
| Emergency handling: 100% of P1 emergencies escalated | 7914/7914 escalated | PASS |
| SLA routing: >= 0.98 of auto-dispatched orders routed within required SLA | 56651/56651 within SLA | PASS |
| Persistence: every order persisted to work_orders | work_orders=100000 == 100000 | PASS |
| Audit completeness: one audit_log row per order (100%) | audit_log=100000 == 100000 (100.00%) | PASS |
| Dispatch correctness: every auto-dispatched order has a dispatch record + deterministic ref | autoWithRecord=56651, refs=56651, auto=56651 | PASS |
| Dispatch safety: no dispatch record for a rejected order and no record orphaned from a missing order | rejectedWithRecord=0, recordsWithMissingOrder=0 | PASS |
| Dispatch reconciliation identity: dispatch_records = auto-dispatched + safely-escalated at-least-once orphans | dispatch_records=56651 == auto 56651 + escalatedOrphans 0 | PASS |
| gRPC: dispatch service reachable over the wire (Health RPC) | health.ok=true @ 127.0.0.1:58446 | PASS |
| gRPC: dispatch is idempotent over the wire (no double-dispatch on retry) | replays=50/50; dispatch_records 56651->56651 | PASS |
| gRPC: malformed DispatchRequest rejected by the server | ok=false error=INVALID_PAYLOAD: does not match Dispatch | PASS |
| Audit trail readable back for a sample auto-dispatched order | id=FPM-WO-1000001 status=AUTO_DISPATCH audit=1 | PASS |
| Reconciliation: dispositions sum to total volume | 56651+27292+16057=100000==100000 | PASS |
| Reproducible: same seed -> identical corpus fingerprint | 6cbb9cc1149dd85f == 6cbb9cc1149dd85f | PASS |
| ROI: first-year net savings is positive under stated assumptions | $70,392 | PASS |
| ROI: payback period computed and under 12 months | 8.69 months | PASS |

