AIS, VDES and both APRS decoders were listed under the map plugin group
alone, so opening Digital modes and clicking AIS or APRS gave an empty
panel reading "Connected, listening for packets" while the decodes piled
up unprocessed in the plugin runtime. They appeared only if something
had opened the Map tab first, which flushed the queue. There is also a
map-data group naming exactly those four that nothing loads: the loader
is called with tab names and no tab is called map-data.
They load with the tab whose panels they fill now. map-core stays lazy,
since their calls into it are optional and the Map tab can go on paying
for Leaflet by itself.
tests/decode-flow.mjs follows a decode from the wire to the map: an AIS
vessel and an APRS beacon arrive on /decode, and it asserts both panels
fill with the map module confirmed absent, the mini view names the
vessel and offers a pin, following that pin lands on /map centred on the
vessel, and both decoders leave a marker. Nothing exercised any of this
before — the fixture served an empty decode stream, which is how the map
links came to be broken for every decoder at once.
The fixture stamps decodes as it sends them, since the client prunes
anything outside the retention window, and repeats them, since the views
collapse by vessel and need more than one frame to behave.
Signed-off-by: Stan Grams <sjg@haxx.space>