tsc emitted ESM `export` syntax that the UI's `new Function(...)` sandbox
can't evaluate, so parseStdoutLine never registered and the run window
fell back to dumping raw stream-json. Add an esbuild step that overwrites
dist/ui-parser.js with a CJS bundle assigning to module.exports.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>