Drei Fehler, die erst der erweiterte Headless-Test gegen die echte Schnittstelle sichtbar
gemacht hat (11.09.2026, alle drei Anbieter plus Vererbung und Stil):
1. WMS-Layer kamen als "Provider is not valid" zurück. Der Rasterprovider erwartet seine
Parameter mit "&" getrennt statt mit Leerzeichen wie die Vektorprovider — und "styles"
muss dabei sein, auch leer. Beides durchgemessen am wms_geosn_dop-rgb: ohne "styles"
ungültig, mit "&"+"styles=" gültig in 0,2 s. Ein fertiger URI wird durchgereicht.
2. "Dienste holen" lieferte bis zu eine Minute lang die alte Liste. Die Schnittstelle
antwortet mit "Cache-Control: private, max-age=60", damit ein Ladelauf nicht alles neu
holt — bei einem Klick des Nutzers ist das aber falsch: wer gerade im Manager einen
Dienst eingetragen hat, will ihn sehen. dienste_laden und stil_anwenden fragen jetzt
frisch.
3. Gesteuert wird das über den forceRefresh-Parameter von QgsBlockingNetworkRequest.get/post,
NICHT über CacheLoadControlAttribute am Request: das Attribut wird intern überschrieben
und blieb wirkungslos.
Der Test in tools/headless_dienste_test.py deckt jetzt auch ab, was das Plugin bisher nicht
sah, weil alle 44 Altdaten ArcGIS-REST sind: WMS und WFS bauen, Ausblenden wirkt und lässt
sich zurücknehmen, ein Stil bleibt beim Ändern ohne QML stehen und lässt sich entfernen.
Angelegte Proben räumt der Lauf selbst wieder ab.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>