Daeseon Yoo
Back to project
·Troubleshoot·2 min

Quality sweep of all 38 screens — killing the number and label contradictions

A cold content-quality inspection of every screen found the platform broadly interview-ready, with the real risk being self-contradicting numbers and labels — the things said out loud in the interview. Fixed nine: a costing story whose throughput and line counts disagreed with themselves, a TTS voice that was computed per accent then hardcoded to alloy, slug labels leaking on the intro screen, and a few mismatched copy and model labels.

The owner was at a cafe and asked for a full inspection of every screen for anything still weak. An audit ran over all 38, reading each screen's backing data and component. The honest result: content quality is broadly interview-ready — most screens are hand-filled real data with working runners, graders, and voice gates, and there were no genuinely broken screens. The actual risk was narrower and sharper: a handful of numbers and labels that the owner would say out loud and that contradicted themselves.

The worst was the costing story. The résumé bullet said throughput went 4→7, a follow-up answer said 4→8, and the line-count appeared as 7.7K, 7K, and 3.6K with a 57% reduction that doesn't match any of them. Saying that case twice in an interview would surface the mismatch — and the engineering head explicitly distrusts paper-smart, so a self-contradicting metric is a direct trust hit. Unified it to 4→7 and 7.7K→3.6K (~53%) across the bullet, deep-dive, say, and code comment, with a note that the owner should confirm against the source docx — the point was to remove the contradiction, not to invent a number.

The most embarrassing was the TTS route: it computed an expressive voice per accent (uk→fable, indian→ash, aussie→verse) and then sent voice: "alloy" hardcoded. A dead variable — which is exactly why every accent had sounded like the same flat voice no matter what was selected. One word (voice) fixed it.

The rest were small label/copy mismatches: the leader screen printed internal card slugs (arc → mes-wms → …) instead of readable labels; the DB-perf page claimed "46ms→0.3ms with one index" when the source needs a composite index; the catch-the-bug timer was hardcoded to "60s" while a third of the drills budget 90s; the copilot screen showed a fake model name while the backend is gpt-4o; the /all index was missing the two screens that had been promoted into the nav; and the my-voice speak-gate let half-recall pass at threshold 0.55.

The reusable lesson: for memorize-and-say material, the audit that matters most isn't prose polish — it's internal consistency of the numbers and labels the user will repeat, and that every UI label matches the code it describes. And a computed-then-ignored variable is the classic dead-variable bug worth grepping for.