Replace Leaflet with locally vendored OpenLayers and keep wheel/trackpad zoom
continuous around the pointer. Zoom buttons retain one-level increments.
Build the tile grid from exported native resolutions to keep imagery aligned
at missing zoom levels and when zooming beyond an archive's maximum.
Associate Map Tile Sets and a preferred basemap with each Operation. Retain
other permitted, available basemaps and explain when an Operation needs a fallback.
Display archive availability in the UI/API and add check_map_storage for
deployment diagnostics. Check archive availability and tile existence before
serving cached tiles or conditional responses.
Default development services to Nautobot 3.2.7 with Python 3.12; the supported
Nautobot minimum remains 3.1.8.
Plot permitted Mission Plans with deployment coordinates using locally served
raster MBTiles basemaps. Filter by Operation and switch among active basemaps.
Detect actual archive zoom levels, including sparse levels, and keep map
imagery within the selected basemap's coverage.
Store archives in a private persistent directory. Tile reads and archive
downloads check the requested Map Tile Set's view permission.
Restrict uploaded filenames, serve downloads as binary attachments, and apply
SQLite query and size limits. Remove unreferenced files after committed changes.
Include OpenLayers' license and administrator/developer map guides in the package.
Use UUIDs for Transport Option lookup keys so conditional circuit constraints
and duplicate detached names cannot produce ambiguous lookups. Integrations
using a previous composite key must retain or retrieve the record's UUID.
Supply model-specific Help pages with the HTML filenames Nautobot expects.
Match satellite form tests to geostationary and non-geostationary validation.
Make fixed-password demo-user provisioning an explicit opt-in. The demo role
includes Map Tile Set view/add/change/delete permissions.
Use Nautobot 3.1.8 or later, below 4.0.0. The migration graph depends on schema
changes absent from Nautobot 3.0.0; package metadata and CI reflect this floor.
Use Python 3.11 or later for Operational Map archive processing. Package support
for other TRAX functions remains Python 3.10–3.13.
Back up the database and archives, stop web/worker services, and mount both
original media and persistent private storage for migration 0011. It copies,
verifies, and removes legacy public archives. Its reverse does not restore
public files. Follow the map upgrade guide.
Existing demo accounts remain in place. Run
nautobot-server setup_operator_user to refresh their scoped permissions.
An existing password is preserved unless --reset is requested.