Two slow-connection bugs that both made a still-loading globe look broken
rather than look like it was loading.
- The loader closed on the globe's first frame, which is long before the
~5 MB TLE catalogue arrives. That revealed a planet whose satellites sat at
fallback positions with no orbit paths. The globe now emits orbits-ready
once buildSats has the elements, and the boot bar waits for it. A 45s
safety valve releases the loader anyway if a feed is unreachable, so an
outage delays the reveal instead of hanging it forever.
- A satellite disappeared entirely while its model downloaded: the
placeholder point was hidden the moment the model was REQUESTED, and a .glb
can take seconds to arrive. Points now stay until the glTF is confirmed in,
tracked in a loadedModels set, so nothing is ever invisible. A failed model
fetch marks it loaded too, rather than stranding the object with no marker.
Cold-host and slow-network fixes for the public Space, plus the LFS
attributes the Space needs to serve its large assets.
Deploy bugs:
- PLAN FAILED on a cold host: the satrec map read a runtime-fetched catalogue
that is not in the repo, and cached the empty result forever. Now falls back
to the bundled snapshot catalogue and never caches an empty map.
- Globe stayed frozen on the story tab's corridor after switching tabs: the
dock never announced tab changes, so nothing cleaned up what a tab painted.
- Blank panels: a render error unmounted the subtree silently. An error
boundary keeps the app alive and reports what failed.
Hosted-demo hardening, where responses are served at roughly 75 KB/s and
races that never surface locally fire on almost every load:
- Scene cleanup race: a slow replay response could land after the user changed
tabs and redraw the re-entry corridor over another view. A generation counter
discards work that arrives after the user moved on.
- Storms ta…
Four-state constraint gate (COMPLETE/PARTIAL/BLOCKED/UNRESOLVED) with:
- two-tier positional evidence from real SpaceX Starlink public ephemerides
- live USSPACECOM TIP re-entry predictions
- DINOv3-SAT 3.4 km ground classification (18.2M sub-cells, validated vs GHS-POP)
- 2-D population exposure vs NASA DAS 1-D method (measured 94% understatement)
- verified-minimal recourse, provable resolvability, RFC 8785 decision receipts
- TLA+/TLC model check + 8 property tests; FAA MMEL third-domain rulebook
- WebGPU all-pairs screening; story, chase-cam and approach replays in the UI
Fix prod: load orbits from Space-Track catalogue (CelesTrak blocked on Render) so satellites move; smooth AI zoom; robust AI replies (retry on empty); loader downloads assets first