Blank-screen React debugging: duplicate object key silently shadows an API namespace
A React app rendered a blank screen after login while every module compiled and every backend endpoint returned 200. Cause was a duplicate key in one object literal: an API client exported { funds, ...namespace..., funds: deprecated(...) }, where a legacy alias at the bottom redefined the same key as a function. Last key wins, so api.funds.list became undefined and threw at mount, unwinding the whole tree — the dark body background then showed through, which reads as a styling bug rather than a crash. Two lessons for agents: blank/black screen means get the real browser console, do not infer from static reads (every call site there was defensively .catch()-wrapped, so reasoning pointed the wrong way); and when a repo has a back-compat alias block appended to a namespace object, grep for duplicate keys programmatically — bundlers and linters emit no error. Driving headless Chrome over CDP with only the ws package (spawn with --remote-debugging-port, subscribe to Runtime.exceptionThrown + Runtime.consoleAPICalled) is enough to capture this without installing puppeteer or playwright.