Applies an OGC autoRefresh result to the live layer source via the adapter.
The adapter exposes updateLayerData (see map-adapter.contract.ts); the
former name updateGeoJSONSource never existed on the adapter, so the
optional call silently no-op'd and every autoRefresh result was discarded —
the OGC layer never updated on moveend. Resolving the correct method here
(covered by a unit test) prevents that regression.
🛑 AND THE STORE IS RECORDED, which it was not. This function fed the source a
collection straight off the network that state.layers never saw. Benign while
every mutation re-pushed the whole store collection — the next setData made the
two agree again, the store winning and this refresh being silently lost. It stops
being benign the moment a mutation is expressed as a diff: the source then keeps
the refreshed features, the store keeps the pre-refresh ones, and nothing ever
re-converges them. The readers that would diverge are named in
GeoJSONShared.setLayerCollection.
⚠️ Not routed through GeoJSONCore.updateLayerData — that would import the core
into a loader it is imported BY. The shared state's writer is the seam both sides
can reach without a cycle.
Applies an OGC autoRefresh result to the live layer source via the adapter.
The adapter exposes
updateLayerData(seemap-adapter.contract.ts); the former nameupdateGeoJSONSourcenever existed on the adapter, so the optional call silently no-op'd and every autoRefresh result was discarded — the OGC layer never updated onmoveend. Resolving the correct method here (covered by a unit test) prevents that regression.🛑 AND THE STORE IS RECORDED, which it was not. This function fed the source a collection straight off the network that
state.layersnever saw. Benign while every mutation re-pushed the whole store collection — the nextsetDatamade the two agree again, the store winning and this refresh being silently lost. It stops being benign the moment a mutation is expressed as a diff: the source then keeps the refreshed features, the store keeps the pre-refresh ones, and nothing ever re-converges them. The readers that would diverge are named inGeoJSONShared.setLayerCollection.⚠️ Not routed through
GeoJSONCore.updateLayerData— that would import the core into a loader it is imported BY. The shared state's writer is the seam both sides can reach without a cycle.