378cba85ad
- Generator now yields a 'status' event immediately so the client can distinguish 'working' from 'failed silently before first event' - Batch mode: call write_activity per file but write index.json and athlete.json only once at the end (was O(n²) — 2015 rewrites) - JS: check r.ok before reading the body stream; show HTTP error detail instead of staying stuck at 'Starting…' - Handle 'status' event type in the progress log