Final Test — Unified Release Gate
One credit-free pass: parser fixtures → bank-analysis chain → loan-flow + PDF matrix (per-product PDFs + last-mile payloads) → phantom-record guard → load speed. Every permutation’s real PDF and real payload sit beside its verdict, and every created bundle is held in the Test Accounts repository for edit + compare.
Bank-Statement Parser Fixtures
Credit-free regression of the deterministic parser against synthetic statements with known totals.
Bank Analysis Chain
Statement persistence → bank-dependent pre-qual engines → lender ranking, proven by degrading bank metrics.
Loan-Flow + PDF Matrix
Creates a real application + documents per loan product, generates a DEDICATED per-product application PDF, verifies persistence + exact PDF field content, and builds the actual last-mile lender payload — each row shows its own PDF + payload beside its verdict. Credit-free (inline PDFs, no storage uploads).
Phantom-Record Guard
Runs only after the flow matrix has created real records. Drives the create→submit→re-enter→re-submit→fresh-start lifecycle through the live dedupe guard and asserts exactly one active record survives every step.
Load Speed — Core Web Vitals
LCP / CLS / FCP / load-time on the wizard + capital programs at desktop + mobile widths.
Test Accounts Repository
Every created bundle — fresh email → submitted application → dedicated PDF → built payload — held here as a full registry. Open a bundle to inspect/edit (edits persist to the live DB), regenerate its payload, or select several for side-by-side compare.