Altlasten: Inhaltsreview und Wiederherstellung am 5. September 2026
Issue #556, Ausgangscode
084d30fd08f88a20a62835154c65010d27618100.
Ausgangszustand und Entscheidung
Am 5. September 2026 war Release 8ed8d136-f3f8-5a78-946b-4b419a050269,
Pointer 1, aktiv, aber seit 2026-08-28T03:16:54.083Z stale. Neue Reports
lehnten Altlastenaussagen korrekt ab. Die täglichen Renewal-Läufe qualifizierten
geänderte Kandidaten, aktivierten sie jedoch nicht. Diese Sperre war richtig.
Read-only-Datenbankvergleich am 5. September, 10:14 und 10:17 UTC: neuester
qualifizierter Kandidat 094c9db7-f432-531d-9cb7-e31884d01cd8, Abruf
2026-09-05T03:43:51.480Z, gültig bis 2026-09-07T03:43:51.480Z.
Ein eigener Drei-Pass-Abruf um 10:17:42.371Z bestätigt exakt dessen Inhalt.
| Nachweis | Alter Release | Geprüfter Kandidat |
|---|---|---|
| Quellzeilen | 1.794 | 1.814 |
| Published / Excluded / außerhalb Scope | 372 / 19 / 1.403 | 372 / 19 / 1.423 |
| Composite-SHA-256 | 05026d1639b247240303fa9fa5e703df447e57e05867e80e0f2a7d143ebb7fdb | 430d9fa81df4a8d2d75b7a193ca0969ea02de89c5340ecd009789c83ed1db812 |
| Source-SHA-256 | fb0cf929c3f1f4b54e791caf6da42dea1d3e7019b2831ce7b0517afa54c4ee50 | 3e3ad412e203f82aae204b127d5d08dfa821f8ab18fec3957144110c5b9c59d1 |
| Published-SHA-256 | 515e51e5bb1dcc55ea055433cd3b280d5cb95c192cd3347688d4d5792efaa605 | 3fe3fea7176efa6b8aaddd9532ace1bee6080a2e10848cbdfcc2207c9286d2ab |
| Scope-SHA-256 | bf94beba8963123b7a7dd4801e76aafb4040faa79074fcadb0fe57f966628af6 | 48f4441a95d6e665b66596332af4086d77be4c9c7d344037bf32a10cdf2ee48f |
| Excluded-SHA-256 | d8e20b751b274d55a5ab5d9c6144bada7eddc1580a0607ab96a56f27a2a78e9b | identisch |
372 identische veröffentlichte UBAID, keine Hinzufügung oder Löschung. Genau eine
Attributänderung: UBAID 72173, N27 Parkplatz Brevillier Urban,
SAN_ART: Dekontamination → Sicherung. Status gesichert, Sanierungsstatus
in Durchführung und sämtliche anderen Attribute bleiben identisch. Zeilenhash
306c4900754d37c9d57390148232fc09b7aa3bdd0850da3c887b9fc506287b3c →
a7f5c32adf832550f65739041b85be9b9fd56f482ad0351f860564fe3d047950.
Alle 372 Geometriehashes sind gleich; PostGIS bestätigt zusätzlich 372/372
ST_Equals und binär identische EWKB. Alle 19 ausgeschlossenen Zeilen inklusive
Geometriehash sind identisch. Published-BBox bleibt
[122948.66,290958.08,669870.15,553253.14] in EPSG:31287.
Altablagerungen steigen aggregiert von 726 auf 732, Altstandorte von 677 auf 691. Historische Einzelzeilen außerhalb des Altlast-Scopes wurden nicht gespeichert. Deren Identitäts-, Attribut- und Geometriedelta ist aus dem Gesamthash nicht rekonstruierbar. Deshalb weder „nur 20 hinzugefügt“ noch vollständige Gesamtquellengleichheit. Künftige private geometriefreie Inventare schließen diese Nachweislücke für neue Abrufe; sie ersetzen keine rückwirkend fehlenden Daten.
Die PM-Prüfung hat den gespeicherten Zeilenvergleich und den Consumer unabhängig
bestätigt. lib/geo/altlasten.ts verwendet Geometrie und UBAID, nicht SAN_ART.
Die Korrektur verändert daher keine Hit-/No-Hit-/Distanzentscheidung. Das ist eine
konkrete Einzelfallentscheidung innerhalb des bestehenden Reportscopes, keine
allgemeine automatische Freigabe von Attributänderungen. Die Aktivierung war an
frischen Kandidaten, Gesamtmanifest, Pointer-CAS und finale PM-Abnahme gebunden;
diese Voraussetzungen wurden unmittelbar vor dem unten dokumentierten Wechsel erneut geprüft.
Rechte und Betriebsgrenzen
Bestehende Entscheidung UBA-WEITERNUTZUNG-2026-08-11, public_display/report_lookup,
altlast-enacted-v1, EPSG:31287 und neun Pflichtchecks bleiben unverändert.
Registry und Kandidat bestätigen die Rechtebindung und aktuelle Frische.
Die amtliche GIS-Seite
nennt am 5. September zusätzlich CC BY 4.0 und den Zitierhinweis
„Quelle: Umweltbundesamt GmbH“. Das erweitert in #556 keine Produktfreigabe:
maßgeblich bleibt die engere dokumentierte UBA-Entscheidung mit Attribution,
Quelllink, Screening-Hinweis und ohne Rohgeometrieexport. Rechte-Review spätestens
11. Februar 2027; keine neuen Capabilities oder kommerzielle Pauschalfreigabe.
Der alte Release ist stale und kein verwendbares Rollbackziel. Rückweg und fail-closed Wiederanlauf stehen im Runbook. Der bestehende Resend-Alarm scheitert an unverifizierter Domain; GitHub-Actions ist der live geprüfte Reviewkanal; Adminlogik und Daten wurden geprüft, die authentifizierte Adminansicht war in den vorhandenen Sitzungen nicht zugänglich. Mailzustellung bleibt offen. Keine Testmail, DNS-Änderung oder künstlich ausgelöster Produktionsausfall.
Implementierung und Abnahme
Der reproduzierende Renewal-Test scheiterte vor dem Fix an fehlender
activeSnapshot-Evidence (1 fehlgeschlagen, 7 bestanden). Derselbe Test ist nach
Ergänzung der aktiven Frist/Pointer-/Gate-Evidence grün. Zusätzliche Tests prüfen
Attributänderung, Identitätstausch bei gleicher Anzahl, Geometriedelta, fehlende
historische Inventare und Adminwarnung. Unveränderte Source-/Rechte-/Freshness-
und Qualitygates bleiben Pflicht.
Lokaler Prüfstand: Typecheck, ESLint und vollständige Vitest-Suite grün (3.607 bestanden, 43 bewusst übersprungen). Content-Audit, SEO-Audit und Österreich-Adapterprüfung bestanden. Der echte PostGIS-E2E lief im isolierten CI-Image: Migration idempotent, Hit/Rand/Nähe/No-Hit, Pointer 1→2→3, Recovery/Abandon, Rechte- und Fristensperren sowie unveränderte Legacydaten. Die lokale PostgreSQL-17-Installation ohne PostGIS wurde dafür nicht verändert.
Kontrollierter Warnlauf und Aktivierung
PR #559, Code-Stand
f2bf008c8a82afab2af0f43fe8522e93a8d970e5, vollständige
CI 33960423710
erfolgreich: Verify, PDF-Poppler und PDF-UA-Feasibility. Der gebaute Preview
dpl_8h9iNpZuLkcrLXYMFbgEZTY2M3W8 war READY und an diesen SHA gebunden.
Die letzten Dokumentationskorrekturen und der anschließende Main-Rollout werden
mit ihrem exakten finalen SHA in #556/#559 belegt; die folgenden Liveprüfungen
betreffen die Quellenaktivierung auf dem unveränderten damaligen Produktionscode.
Der kontrollierte Renewal-Warnlauf 33960421624
auf demselben Code scheiterte erwartungsgemäß mit source_content_changed,
aktivierte nichts und erzeugte Kandidat 84667e56-73ac-5ea4-a345-6a96acd2a9f2.
Er enthält exakt das oben geprüfte Manifest, technisch abgerufen
2026-09-05T10:22:17.037Z, frisch bis 2026-09-07T10:22:17.037Z.
Die echte GitHub-Fehlerannotation „Altlasten: Inhaltsreview erforderlich“ nennt
explizit die aktive alte Frist 2026-08-28T03:16:54.083Z und den nicht
aktivierten Kandidaten. Artefakt altlasten-renewal-review-33960421624
(ID 9967762864, 145.988 Bytes, Ablauf 4. Dezember 2026) wurde heruntergeladen:
Ergebnis trennt aktive und Kandidatenfrist; Inventar enthält 1.814 Zeilen mit nur
UBAID, Scopeklassifikation und Hashes, keine Rohgeometrien. PM prüfte dies unabhängig.
PM bestätigte den finalen Kandidaten nach eigenem Drei-Pass-Review um 10:25:38 UTC
und neun bestandenen Pflichtchecks. Die bekannte optionale Warnung zur fehlenden
WFS-Transaktionssicherheit bleibt sichtbar; drei identische Komplettabrufe kompensieren
sie im bestehenden Vertrag. Nach ausdrücklicher Einzelfallfreigabe bestätigte ein
weiterer vollständiger Review um 10:26:55.470Z Manifest, Rechte und Pointer 1.
Der bestehende Publisher aktivierte um 2026-09-05T10:26:55.681Z:
- Release
84667e56-73ac-5ea4-a345-6a96acd2a9f2, Pointer 1 → 2, Event 747. - Rechte unverändert
UBA-WEITERNUTZUNG-2026-08-11, neun Pflichtchecks bestanden. - Öffentliche Provenance durch Umsetzung und PM unabhängig als
freshrückgelesen. - Kein direktes SQL-Update, keine Fristverlängerung, kein Gate-Bypass.
Produktive API-, Web- und PDF-Abnahme
Genau zwei neue anonyme Prüfberichte auf Produktionscode
084d30fd08f88a20a62835154c65010d27618100, Deployment
dpl_DG1YnkTeWc5DH6vDAxE9wGR3ibMi. Damit ist Quellenaktivierung von späterer
Auslieferung der neuen Warnlogik getrennt belegt. Beide API-Antworten waren
200, private, no-store, ohne alsag_altlasten in den degradierten Layern.
| Öffentlicher Prüffall | API-Zeit UTC | Ergebnis | Web / PDF | PDF-SHA-256 |
|---|---|---|---|---|
| Tanklager Lobau, 1220 Wien | 10:27:18.705 | kein Punkttreffer; Nähe 703 m, UBAID 72113 | 200 / 200, 9 Seiten | 61f52878a268f924ff4f3bae92e84083b0c92c4cc324e421ae252b3fb48e3bad |
| Schulgasse 2, 2230 Gänserndorf | 10:28:17.102 | kein Treffer innerhalb 1 km; UBAID und Nähe null | 200 / 200, 13 Seiten | 27e71fc7736bf6d729d07b8b1b7b6c68e5e5561a341d67ec5fdd92b6b604b799 |
Beide zeigen Release 84667e56-73ac-5ea4-a345-6a96acd2a9f2, technischen Abruf
2026-09-05T10:22:17.037Z, source_vintage=null, UBA-Attribution und Screeninggrenze.
Webansichten nach Bestätigung des unverbindlichen Hinweises tatsächlich sichtbar
geprüft. PDF-Risiko-, Hinweis- und Quellenseiten mit Poppler gerendert und visuell
geprüft. Beim negativen PDF steht der Hinweis auf der Folgeseite; die bestehende
Pagination ist damit nicht als verbessert oder vollständig abgenommen behauptet.
Private Screenshots, PDF-Dateien und API-Belege liegen beim Review vor; keine
Report-Capabilities oder Rohdateien werden im Repository veröffentlicht.
Der bereits vorliegende alte Prüfbericht bleibt unverändert: Erzeugungszeit
2026-09-05T09:17:09.267Z, Altlasten null, source_not_released weiterhin als
degradierter Layer. Keine Änderung bestehender Reports.
Die bestehende Admin-Sitzung leitete /admin/data-sources mit 307 nach /login.
Die neue Adminwarnung ist durch Logiktests und Read-only-Datenvergleich geprüft,
nicht durch eine authentifizierte visuelle UI-Abnahme. Keine neue Anmeldung,
Loginmail oder Änderung von Zugriffskontrollen. Mailzustellung bleibt ebenfalls offen.
Ein kontrollierter normaler Main-Renewal und der exakte Main-CI-/Deploymentabschluss
werden abschließend in #556 belegt; ein Skip bei ausreichender Frischereserve ist
korrekt und kein Nachweis eines späteren planmäßigen Laufs.
#557/#558 und PDF/UA-Produktgates aus #333 sind nicht Teil dieser Abnahme.