One-line fix, geodesic math, and ripping out the ghost of Gemini
The most impactful fix was literally one line of JSX: <MapUpdater currentPos={currentPos} />. The component existed — 7 lines of perfectly written React using Leaflet's useMap hook to pan the camera — it just wasn't rendered inside <MapContainer>. One missing child element, and the entire core experience was broken. The geodesic fix was more satisfying: replaced linear lat/lon interpolation with proper spherical intermediate point math — same Haversine-family trig, no external dependencies, ~15 lines. Added a geodesicArc() helper that samples 100 points along the great-circle so the dashed route line actually curves correctly on the map. Then the fun part: ripping out every trace of Gemini. Deleted @google/genai, firebase-tools, .env.example, metadata.json, the AI Studio audit report. Cleaned next.config.ts of the DISABLE_HMR webpack hack. Wrote a real README with screenshots, init'd a repo, pushed to GitHub. 659 packages pruned. Zero vulnerabilities remaining. The app was always a pure client-side visualization — it just took three conversations to get it there.