Skip to content

Latest commit

 

History

History
198 lines (150 loc) · 13.3 KB

File metadata and controls

198 lines (150 loc) · 13.3 KB

Changelog

[0.18.0] - 2026-04-24

Added

  • User location map with live camera follow: tap "Locate me" to centre the map on your GPS position; the camera follows as you move until you pan away. (#765)
  • Site beam visualizer popover: interactive gain/beam-pattern overlay with anchored popover and unified gain fields across antenna types. (#737, #740)
  • Site access editor redesign: cleaner layout, padded collaborator popover, and improved modal structure. (#733)
  • PanelToolbar component unifying toolbar layout and action alignment across all panels (Navigator, Inspector, chart panel, sidebar). (#616, #751)
  • Unified button system: btn, btn-ghost, and btn-icon CSS roles + shared Button component consolidation; removes mixed legacy button language. (#616, #748)

Fixed

  • Notification bell replaced with Lucide Bell icon (removes emoji dependency). (#616, #763)
  • Map pin anchoring and stacking order corrected. (#731)
  • Deploy script syntax error. (#732)

Internal

  • Removed dead UI patterns: NotificationBanner, OfflineBanner (#759), MapInlineNotice, MapControls, FormActionRow (#760), terrain-alert (#761), stale gallery class refs (#758).
  • require-milestone-on-close workflow now honours no-milestone-close-ok label. (#764)
  • README landing page simplified. (#747)

[0.17.0] - 2026-04-17

Rolls up all merged work since 0.16.0, including the 0.16.2 shared-site sync hotfix and the release/deploy guardrail fixes.

Added

  • A new /settings panel with per-field auto-save, plus settings layout, avatar drop-zone, and access-request refinements. (#125, #688, #689, #690, #691)
  • The live in-app UI gallery plus continued componentization of badge, popover, state-dot, and ActionButton patterns across the shell. (#540, #616)
  • Mobile tabbed map overlays and expanded accessibility semantics for mobile tabs and markers. (#171, #430, #431, #433)

Changed

  • Reorganized map layers.
  • Standardized panel/sidebar headers, ActionButton usage, and iconography across the shell, inspector, sidebar, and settings surfaces.
  • Continued mobile map, panel, and attribution polish, including synchronized animation timing and viewport-fit behavior.
  • Hardened release and deploy automation, CI guardrails, and staging-main workflow rules.
  • Improved local test-server startup, change polling, and developer workflow reliability.

Fixed

  • Shared simulations now persist private Site references during sync and reload.
  • Panorama/profile sizing, path override handling, and overlay recompute/performance stability were improved.
  • Rolled unfinished milestone work forward one step to keep the backlog aligned with the new release boundary.

[0.16.2] - 2026-04-17

Fixed

  • Shared simulations now persist private Site references instead of silently skipping the save, so newly added Sites survive sync and reload in shared workspaces.

[0.16.0] - 2026-04-12

Added

  • Panorama / Horizon mode: single-site 360° terrain viewshed with LOS-clipped rendering, peak labels (elevation + distance), shading modes, FOV controls, and synchronized map lens. (#101)
  • Distance-based terrain heatmap coloring in panorama view with red-to-blue gradient; FOV range extended to support full 360° and narrow 15° slices. (#633)
  • Adaptive coverage radius for single-site simulations: analysis area automatically expands to match loaded Copernicus terrain tiles (20–100 km range) with manual override control. (#176)
  • Norsk Polarinstitutt Svalbard basemap provider: topographic, satellite, and orthophoto presets using official EPSG:3857 WMTS from geodata.npolar.no. (#635)
  • Terraform infrastructure-as-code scaffolding for Cloudflare resources. (#188)

Changed

  • Panels animate on expand/collapse and resize with synchronized choreography across desktop and mobile. (#532)

Fixed

  • Eliminated UI freezes during simulation recompute via non-blocking async pipeline with chunked overlay rendering and work scheduling. (#574)
  • Deep-link cold-load incorrectly flagged slug-resolved shared simulations as unavailable on first load. (#629)
  • Antenna height and cursor height display in hover path profile segments. (#491)

[0.15.0] - 2026-04-08

Added

  • Added an in-app /ui-gallery visual inventory with tabbed families (Actions, Panels, Forms, Notifications, States, Meta/Map UI), status labeling, and gallery-local theme controls aligned with real app styling. (#539)
  • Added a unified app-level notification queue with debug hooks for local/staging (window.linksimNotifications) to support iterative UI verification without code edits. (#539)

Changed

  • Converged standard text-bearing app actions toward the shared ActionButton family across Simulation Library and inspector surfaces, reducing mixed legacy button language. (#521, #523, #525, #529)
  • Aligned panel shell language across left/right/bottom surfaces and improved shell/header rhythm consistency while preserving intentional structural differences. (#529)
  • Updated UI taxonomy and glossary coverage to better map real production families and migration status for future cleanup passes. (#527, #529, #539)

Fixed

  • Unified banner-like transient notices into the mini-bar notification system and removed remaining duplicate notice styles in app shell/admin contexts. (#539)
  • Fixed staging/prod shell visibility regression where .app-shell could remain at opacity: 0 after animation path mismatch. (#539)
  • Fixed notification mini-bar clipping regressions (shadow clipping and mobile spacing under controls) and refined fade/reflow behavior for manual vs timed dismissals. (#539)

[0.14.0] - 2026-04-05

Added

  • Cloud library sync now performs background delta pulls and merges remote updates by id, so cross-device changes appear without a reload and manual sync no longer keeps stale local copies. (#113, #374)
  • UI panel visibility (Navigator, Inspector, Profile) now persists in localStorage and is restored across sessions. (#132)

Changed

  • Radio and model controls were restructured: propagation model selection was removed (ITM is now the only model), and Frequency Plan / ITM Environment / network options moved into New Simulation and Edit Simulation dialogs to reduce sidebar clutter. (#183, #394, #395)
  • Coverage resolution control now applies consistently across heatmap, relay, and pass/fail overlays, including drag-time low-resolution behavior with automatic restore after drag. (#393)

Fixed

  • Anonymous deep-link loads no longer trigger unnecessary authenticated API calls or CORS noise; readonly bootstrap and access-check fallback behavior is hardened for Firefox and auth bootstrap edge cases. (#385)
  • Newly created Sites and Simulation entries now set owner edit role correctly, preventing creator-owned resources from appearing read-only. (#383)
  • Site library delete flow now handles simulation references deterministically, and shared-link workspace naming/selection-driven results behavior is more consistent during path workflows. (#124, #141, #185)
  • Search rate-limit behavior and terrain loading reliability were hardened, including removal of unreliable in-memory geocode throttling and clearer terrain loading state transitions. (#105, #150)

[0.13.0] - 2026-04-02

Added

  • Private simulations can now be shared with specific users without elevating them to public. Collaborators are granted viewer or editor access per-user; the simulation and its sites stay private. The share link is auth-gated — only explicitly added users can open it. (#142)
  • Share modal redesigned with two equal option cards: "Make Broadly Accessible" (existing public upgrade path) and "Share with Specific Users" (new private collaboration path), each with an icon. (#142)
  • Per-collaborator role selector (viewer / editor) in the resource access dialog. (#142)
  • Anonymous visitors now land on a demo workspace with four real Oslo-area sites (Tryvannstårnet, Haukåsen, Kikut, Kolsåstoppen) instead of an empty map, giving a clear first impression of the tool. (#346)
  • Meshmap MQTT node data now loads with a progress bar and shows a retry button on failure, consistent with the terrain and simulation loading patterns. (#292, #294)

Changed

  • Sidebar "More" panel reduced — actions consolidated into more appropriate locations, reducing clutter and improving focus. (#182)

Fixed

  • Cloud auto-sync no longer fails after sharing a private simulation with specific users. The simulation_private_site_reference conflict is suppressed during sync for private simulations; strict validation is kept only when explicitly upgrading a simulation to shared/public. (#142)
  • New sites created in areas without terrain data no longer silently default to elevation 0 — elevation is resolved from live terrain data at creation time. (#181)
  • Path profile fullscreen button no longer triggers map fullscreen; the two controls now operate independently. (#309)
  • "Fit" button now correctly fits the viewport to the simulation area in all cases, including a Mercator cos(lat) correction for accuracy. (#223)
  • Map search in the site editor now pans the map to the selected result immediately. (#95)
  • Mobile map attribution placement is now stable across all panel and tab states. (#240)
  • Meshmap proxy no longer caches error responses (429/5xx) — only successful responses are cached, preventing stale error states. (#294)
  • Map UI pill is now correctly centered in expanded mode. (#300)
  • Removed the redundant "Inspector" heading from the inspector panel header. (#142)
  • Panel toggle button is now left-aligned on desktop and hidden on mobile; Share button stays right-aligned in both modes. (#142)
  • Clipboard permission error when saving collaborators resolved — clipboard write is now registered within the user-gesture context before async operations begin. (#142)

[0.12.1] - 2026-03-28

Fixed

  • Holiday theme state is now shared across all UI consumers (AppShell, MapView, Sidebar). Clicking "Revert Theme" in the map inspector immediately reverts the color without requiring a page refresh.
  • Yellow Easter theme option now appears in the color theme dropdown during the active Easter window, and disappears afterward.

[0.12.0] - 2026-03-28

Added

  • Mobile: tabbed interface splits map/profile view and sidebar for better small-screen layout.
  • Desktop: right-side inspector panel for simulation results alongside the sidebar.
  • Easter holiday theme framework with automatic seasonal activation and window management.
  • Holiday theme system is reusable for future seasonal overrides.

Changed

  • Unified UI iconography with the Lucide icon set across all controls, map buttons, and sidebar.
  • Map UI controls consolidated into the sidebar; removed floating overlays on mobile.
  • iOS: map renders full-bleed behind safe areas with proper viewport anchoring.
  • Sidebar header simplified to icon-only row; environment badge moved to title area.
  • Basemap fallback now uses Carto Normal style instead of incorrect default layer.

Fixed

  • Fullscreen toggle for map and path profile now operate independently.
  • Mobile attribution placement is stable across panel open/close states.
  • iOS map canvas sizing is consistent across orientation changes and viewport updates.
  • Coverage store extracted from main Zustand store to reduce re-render overhead.

[0.11.0] - 2026-03-26

Added

  • Deep links now update the browser URL live as selection state changes, so shared links always match the current context.
  • Terrain and calculation requests are routed through async job endpoints to improve reliability under longer-running workloads.

Changed

  • Onboarding is consolidated into a simpler welcome flow with clearer entry points to Simulation Library and Site Library.
  • Deep-link handling is more deterministic for multi-site selections and shorter shared link paths.

Fixed

  • Deep-link parsing now handles emoji variation selectors and non-Latin names (including Korean) more consistently.
  • Blank Simulation workflows no longer get stuck during startup/reload edge cases.
  • Terrain calculation path no longer depends on the reverted Pages proxy experiment; production path is stabilized.

Internal

  • Removed temporary deep-link debug instrumentation after validation.
  • Updated release and staging workflow guardrails documentation.

[0.10.3] - 2026-03-24

Fixed

  • Restored stable blank Simulation loading/session behavior so empty workspace flows continue correctly.

[0.10.2] - 2026-03-23

Changed

  • Promoted staging release guardrails to main for safer branch, deploy, and promotion flow.

[0.10.1] - 2026-03-22

Fixed

  • Aligned production Copernicus proxy rate limits with staging to avoid environment-specific terrain behavior.

[0.10.0] - 2026-03-22

Added

  • Added version-based migration framework and standardized client storage migration policy.
  • Added profile-click temporary Site draft behavior to speed up map-driven planning.

Changed

  • Improved startup responsiveness through deferred non-critical loading and terrain prioritization.
  • Refined onboarding and workspace entry behavior by removing forced starter workspace autoload.
  • Simplified terrain UX with clearer loading states, continuation messaging, and preview-to-refined updates.
  • Improved library filter controls with grouped, persisted filters and compact layout.

Fixed

  • Hardened startup fallback behavior and hover/profile interaction edge cases.
  • Stabilized Copernicus throttling behavior and reduced terrain loading stalls.
  • Unified LOS model behavior across views and reduced link-switch jank.