# Changelog All notable changes to `planet` are documented here. This project follows the repository versioning rule: - `feature` -> `+0.1.0` - `bugfix` -> `+0.0.1` ## 0.21.5 Released: 2026-03-27 ### Highlights - Reworked the collected-data overview into a clearer split between KPI cards and a switchable treemap distribution. - Added a direct Earth entry on the dashboard and tightened several admin-side scrolling/layout behaviors. ### Added - Added a dashboard quick-access card linking directly to `/earth`. - Added collected-data treemap switching between `按数据源` and `按类型`. - Added data-type-specific icons for the collected-data overview treemap. ### Improved - Improved collected-data summary behavior so overview counts follow the active filters and search state. - Improved the collected-data treemap with square tiles, a wider default overview panel width, and narrower overview scrollbars. - Improved responsive behavior near the tablet breakpoint so the collected-data page can scroll instead of clipping the overview or crushing the table. ### Fixed - Fixed the user-management table overflow issue by restoring `ant-table-body` to auto height for that page so the outer container no longer incorrectly takes over vertical scrolling. - Fixed overly wide scrollbar presentation in collected-data and related admin surfaces by aligning them with the slimmer in-app scrollbar style. ## 0.21.3 Released: 2026-03-27 ### Highlights - Upgraded the startup script into a more resilient local control entrypoint with retry-based service boot, selective restart targeting, and guided CLI user creation. - Reduced friction when developing across slower machines by making backend and frontend startup checks more tolerant and operator-friendly. ### Added - Added interactive `createuser` support to [planet.sh](/home/ray/dev/linkong/planet/planet.sh) for CLI-driven username, email, password, and admin-role creation. ### Improved - Improved `start` and `restart` in [planet.sh](/home/ray/dev/linkong/planet/planet.sh) with optional backend/frontend port targeting and on-demand port cleanup. - Improved startup robustness with repeated health checks and automatic retry loops for both backend and frontend services. - Improved restart ergonomics so `restart -b` and `restart -f` can restart only the requested service instead of forcing a full stack restart. ### Fixed - Fixed false startup failures on slower environments where services needed longer than a single fixed wait window to become healthy. - Fixed first-run login dead-end by ensuring a default admin user is created during backend initialization when the database has no users. ## 0.21.2 Released: 2026-03-26 ### Highlights - Reworked the Earth page HUD into a bottom-centered floating toolbar with grouped popovers and richer interaction feedback. - Unified toolbar and corner cards under a liquid-glass visual language and refined status toasts, object info cards, and legend behavior. - Made the legend state reflect the currently selected Earth object instead of a fixed static list. ### Added - Added a reusable Earth legend module in [legend.js](/home/ray/dev/linkong/planet/frontend/public/earth/js/legend.js). - Added Material Symbols-based Earth toolbar icons and dedicated fullscreen-collapse icon support. - Added click-to-copy support for info-card field labels. ### Improved - Improved Earth toolbar layout with centered floating controls, popover-based display toggles, and zoom controls. - Improved Earth HUD visuals with liquid-glass styling for buttons, info cards, panels, and animated status messages. - Improved info-card spacing, scrollbar styling, and object detail readability. - Improved legend rendering so cable and satellite object selection can drive the displayed legend content. ### Fixed - Fixed tooltip coverage and splash copy mismatches in the Earth page controls. - Fixed several toolbar icon clarity, centering, and state-toggle issues. - Fixed status-message behavior so repeated notifications replay the slide-in animation. ## 0.20.0 Released: 2026-03-26 ### Highlights - Stabilized the Earth big-screen module for longer-running sessions. - Fixed satellite orbit generation by correcting TLE handling end to end. - Added a reusable backend TLE helper and exposed `tle_line1 / tle_line2` to the Earth frontend. ### Added - Added a dedicated Earth module remediation plan in [earth-module-plan.md](/home/ray/dev/linkong/planet/docs/earth-module-plan.md). - Added backend TLE helpers in [satellite_tle.py](/home/ray/dev/linkong/planet/backend/app/core/satellite_tle.py). - Added backend support for returning `tle_line1` and `tle_line2` from the satellite visualization API. ### Improved - Reworked the Earth module lifecycle with cleaner init, reload, and destroy paths. - Improved scene cleanup for cables, landing points, satellite markers, and related runtime state. - Reduced Earth interaction overhead by reusing hot-path math and pointer objects. - Switched satellite animation timing to real delta-based updates for more stable motion. - Reduced fragile global-state coupling inside the legacy Earth runtime. ### Fixed - Fixed white-screen risk caused by iframe cleanup behavior in development mode. - Fixed incorrect client-side TLE generation: - corrected line 2 field ordering - corrected eccentricity formatting - added checksum generation - Fixed fallback orbit issues affecting some Starlink satellites such as `STARLINK-36158`. - Fixed partial Earth data load failures so one failed source is less likely to break the whole view. ### Notes - The Earth frontend now prefers backend-provided raw TLE lines. - Older satellite records can still fall back to backend-generated TLE lines when raw lines are unavailable. - This release is primarily focused on Earth module stability rather than visible admin UI changes. ## 0.21.1 Released: 2026-03-26 ### Highlights - Refined the Earth big-screen toolbar with clearer controls, hover hints, and more consistent visual language. - Replaced emoji-based Earth toolbar controls with SVG icons for a cleaner HUD. - Updated the Earth loading splash so manual reloads no longer show legacy wording. ### Improved - Improved zoom controls by adding tooltips for reset view, zoom in, zoom out, and resetting zoom to `100%`. - Improved Earth toolbar readability with larger icons and revised glyphs for rotation, reload, satellites, trails, cables, terrain, and collapse. - Improved loading overlay copy to better distinguish initial initialization from manual refresh. ### Fixed - Fixed rotate toggle rendering so play/pause state no longer relies on emoji text replacement. - Fixed Earth autorotation target syncing so inertial drag is preserved while the globe is still coasting. ## 0.21.0 Released: 2026-03-26 ### Highlights - Added legacy-inspired inertial drag behavior to the Earth big-screen module. - Removed the hard 10,000-satellite ceiling when Earth satellite loading is configured as unlimited. - Tightened Earth toolbar and hover-state synchronization for a more consistent runtime feel. ### Added - Added inertial drag state and smoothing to the Earth runtime so drag release now decays naturally. ### Improved - Improved drag handling so moving the pointer outside the canvas no longer prematurely stops rotation. - Improved satellite loading to support dynamic frontend buffer sizing when no explicit limit is set. - Improved Earth interaction fidelity by keeping the hover ring synchronized with moving satellites. ### Fixed - Fixed the trails toolbar button so its default visual state matches the actual default runtime state. - Fixed the satellite GeoJSON endpoint so omitting `limit` no longer silently falls back to `10000`. - Fixed hover ring lag where the ring could stay behind the satellite until the next mouse move. ## 0.19.0 Released: 2026-03-25 ### Highlights - Refined data collection storage and history handling. - Moved collected data away from several strongly coupled legacy columns. - Improved data list filtering, metadata-driven detail rendering, and collection workflows. ### Added - Added collected data history planning docs. - Added metadata backfill and removal-readiness scripts. - Added version history tracking. ### Improved - Improved datasource task tracking and collection status flow. - Improved collected data search, filtering, and metadata rendering. - Improved configuration center layout consistency across admin pages. ### Fixed - Fixed several collected-data field mapping issues. - Fixed frontend table layout inconsistencies across multiple admin pages. - Fixed TOP500 parsing and related metadata alignment issues.