Production readiness testing with PRR scoring — 5 integrated sections
BY THE NUMBERS
WHAT IT DOES
Centralized testing and quality platform for the entire Granite ecosystem. Five distinct sections: the main 30-system test runner, a dedicated Trades Dashboard tester, an LHP v2 integration tester, a Research page with AI-powered summarization, and a custom Admin Panel designed after Google's admin interface for managing the trades side.
ARCHITECTURE
The Tester is a single Flask application with 5 distinct sections served from one process. The main test runner handles 30+ registered systems. Each system can be tested individually or all at once with results streaming via Server-Sent Events (SSE) to the browser in real-time.
The Trades Dashboard test engine and LHP v2 test engine are separate Python modules imported by the main tester. Each defines its own test phases with specific endpoint expectations. The LHP engine runs 7 phases covering connectivity, scrapers, enrichment, email, drip sequences, compliance, and API integrity.
PRR scoring follows Google SWE/SRE standards: each test gets a point value, phases are weighted, and a letter grade (A through F) is calculated from the aggregate. The Findings Engine categorizes issues as BUG (must fix), WARNING (should fix), or INFO (note for later).
The Research page stores every test run in a SQLite database with individual test results as run outputs. The AI summarizer uses Ollama to analyze test results and generate plain-English recommendations for what to fix next.
The Admin Panel section is modeled after Google's admin interface design. It provides cross-system management for the trades side of the business — user administration, system configuration, and health monitoring.
THE JOURNEY
The Granite Tester was born from a painful realization: with 30+ systems running on different ports, there was no way to know if a code change in one system broke something in another. Manual testing was a joke at this scale.
The first version just hit endpoints and checked for 200 status codes. That caught the obvious stuff — dead routes, import errors, missing templates. But it missed the subtle bugs: wrong data in responses, missing form fields, broken database queries that returned empty instead of erroring.
Adding the Findings Engine and PRR scoring changed everything. Now every test run produces a grade. You can see at a glance whether a system is production-ready or needs work. The LHP v2 tester went from a 50% PRR score to 90% in one session just by aligning test paths to actual routes.
The Research page with AI summarization was the final piece — instead of reading through 40 test results manually, the AI reads them and tells you in plain English what's broken and what to fix first.
KEY FEATURES