Release Notes

Neuigkeiten und Updates

Alle Veränderungen an naturvergabe transparent dokumentiert — was wurde gebaut, wann und warum. Feedback willkommen an kontakt@naturvergabe.de.

v0.29.0

Großes Praxis-Update: Beteiligung, editierbare Berichte, GIS-Ausbau

Das bisher umfangreichste Update aus der konsolidierten Praxis-Rückmeldung (BUKEA, Bezirksamt Mitte, Naturzentrum). Highlights: ein öffentliches Beteiligungsverfahren per QR-Code, frei editierbare Projektberichte und Förderanträge, amtliche Hamburg-Kartenlayer mit GeoJSON-Import, ein Technik-Assistent für die Maschinenwahl, eigene Positionen im Leistungsverzeichnis und eine konsolidierte Sachbearbeiter-Übersicht. Dazu mehrere Kalkulations-Korrekturen.

Öffentliches Beteiligungsverfahren per QR-Code

Neu

Pro Projekt lässt sich ein QR-Code bzw. Link erzeugen, über den Bürger:innen ohne Login Hinweise, Wünsche oder Kritik — auch zu einer bestimmten Fläche — abgeben können. Eingaben sind anonym möglich (E-Mail freiwillig), gegen Spam abgesichert und werden in der Projektansicht moderiert (freigeben/ablehnen).

Projektbericht & Förderantrag selbst bearbeiten

Editor

Die KI-Texte sind jetzt eine Vorlage: Du kannst Projektbericht und Förderantrag direkt überschreiben. Die eigene Fassung hat im Export Vorrang, und mit einem Klick stellst du die KI-Fassung wieder her.

Eigene Positionen im Leistungsverzeichnis

Neu

Neben den Katalogpositionen kannst du jetzt freie Eigenpositionen mit Bezeichnung, Einheit, Menge und Einzelpreis eintragen — sie werden wie alle anderen kalkuliert und exportiert.

Amtliche Hamburg-Kartenlayer + GeoJSON-Import

GIS

Neue Overlay-Layer aus dem LGV Hamburg (Naturschutzgebiete, Bodenkarte, Hitze-Hotspots) und ein Import für GeoJSON-Dateien (EPSG:4326) — Flächen, Linien und Punkte landen direkt auf der Karte. Zusätzlich ein Schalter zum Ein-/Ausschalten des Einrastens (Snapping) beim Zeichnen.

Flächenänderungen werden sofort übernommen

GIS

Beim Verschieben oder Anpassen von Polygonen wird die Fläche (ha) und damit alle abhängigen Mengen jetzt unmittelbar bei jeder Änderung neu berechnet — nicht erst beim Schließen des Bearbeitungsmodus.

Standortkontext aus amtlichen Geodaten

KI

Bei Hamburg-Projekten fragt das System für jede Hauptfläche amtliche Geodaten ab (Schutzgebiet, Bodentyp) und nutzt sie als Kontext für fachlich begründete Vorbemerkungen — mit Quellen- und Datumsnachweis.

Technik-Assistent für die Maschinenwahl

Neu

Ein kurzer Assistent fragt die Flächenbeschaffenheit ab (nass, steil, dichter Aufwuchs …) und empfiehlt die passende Technik mit fachlicher Begründung — schonende Technik als naturschutzgerechte Standardwahl, robuste nur wo nötig.

Sachbearbeiter-Übersicht

Neu

Eine konsolidierte Ansicht bündelt die behördlich relevanten Felder eines Projekts: Fläche, Maßnahme, Kosten, Abrechnung, Dokumentation, Quellennachweis und Technik-Entscheidung.

Anfahrt einsatzgenau statt pauschal

Kalkulation

Die feste Anfahrts-Pauschale entfällt zugunsten der einsatzgenauen Position „An- und Abfahrt pro Einsatz", die jetzt jeden Pflege-Einsatz abdeckt (Summe aus Häufigkeit × Jahre). Damit verschwindet auch die doppelte Anfahrts-Position.

Korrigierte Preise und bereinigter Katalog

Kalkulation

Freischneider-Mahd auf 65 €/h (Marktspanne 60–85) angepasst und eine doppelte Handbergungs-Position zusammengeführt. Die Kostenübersicht weist jetzt zusätzlich die Preisbasis transparent aus.

Beweidung mit Kalender und Schnellauswahl

UX

Der Beweidungszeitraum wird über echte Datumsfelder mit Saison-Schnellbuttons (Frühjahr/Sommer/Spätsommer/Herbst) gewählt; bei Beweidung werden nicht passende Mahd-Felder ausgeblendet.

Abteilungs-Filter im Projekt-Dashboard

UX

Projekte lassen sich einer Abteilung / einem Fachbereich zuordnen und im Dashboard danach filtern — hilfreich für Organisationen mit vielen Projekten.

Stabilität beim Hinzufügen von Positionen

Fix

Wird einer Fläche eine Position hinzugefügt, die zwischenzeitlich gelöscht oder verschoben wurde, erscheint jetzt eine klare Meldung statt eines Absturzes.

Datenbank- und Abhängigkeits-Update

Infra

Erweitertes Datenmodell für die neuen Funktionen (editierbare Berichte, Beteiligung, Abteilung, eigene Positionen) und aktualisierte Bibliotheken.

v0.28.0

Anmeldung per Code — zuverlässig auch hinter Behörden-Mailservern

Der E-Mail-Login läuft jetzt über einen 6-stelligen Code statt einen Anmeldelink. Das umgeht Sicherheits-Scanner in Behörden- und Firmennetzen, die Anmeldelinks automatisch vorab öffnen und damit unbrauchbar machten — der häufigste Grund für „Link funktioniert nicht". Außerdem behoben: ein Fehler, durch den die allererste Anmeldung neuer Konten fehlschlug, und eine Weiterleitungsschleife auf der Anmeldeseite.

Anmeldung per 6-stelligem Code

Neu

Statt eines Anmeldelinks bekommst du jetzt einen kurzen Code per E-Mail, den du direkt auf der Seite eingibst. Das ist robust gegen Sicherheits-Scanner in Behörden- und Firmen-Postfächern (Outlook Safe Links, Virenscanner), die Anmeldelinks automatisch öffnen und so vorzeitig entwerten. Google- und Passkey-Login bleiben unverändert.

Erste Anmeldung neuer Konten schlug fehl

Fix

Bei der allerersten Anmeldung mit einer neuen E-Mail-Adresse konnte das Konto nicht angelegt werden — die Anmeldung brach kommentarlos ab und sah wie ein Code-Fehler aus. Ursache war eine fehlende Datenbankspalte aus der Nutzerverwaltung. Behoben; neue Anmeldungen funktionieren wieder.

Weiterleitungsschleife auf der Anmeldeseite

Fix

Mit einer abgelaufenen Sitzung im Browser konnte die Anmeldeseite in eine Endlosschleife laufen („zu viele Weiterleitungen"). Die Weiterleitung prüft jetzt zuverlässig die echte Sitzung statt nur, ob ein Cookie vorhanden ist.

Abhängigkeiten aktualisiert

Infra

Bibliotheken auf den aktuellen Stand gebracht (u. a. Stripe, Vitest, Biome, Editor- und Icon-Komponenten) für Sicherheit und Stabilität.

v0.27.1

Erschwernis-Vorschlag, korrigierter Stunden-Floor und scharfes GAEB-3.3-Marketing

Folge-Patch direkt nach v0.27.0: Das Tool schlägt jetzt die Erschwernis-Stufe pro Fläche selbst vor (mit Begründung, ein Klick übernimmt), der 2-Stunden-Mindestansatz wirkt jetzt pro Einsatz statt global, und Landing/Metadaten sagen klar GAEB DA XML 3.3 + kompatibel mit DTVP, aumass, Healy Hudson.

Erschwernis-Vorschlag pro Fläche

Editor

Das Tool wertet Maßnahmentyp, freitextlichen Bestand und Flächengröße aus und schlägt eine passende Erschwernis-Stufe mit Begründung vor (z. B. „Vorschlag: mittel (×1,5) — Feuchtwiese + Hanglage"). Ein Klick übernimmt den Wert, sonst bleibt es bei „keine". So sparen sich Anwender:innen das Schätzen, behalten aber die Hoheit.

2-Stunden-Mindestansatz wirkt pro Einsatz

Kalkulation

Bisher wurde der 2-h-Mindestansatz einmal auf die Gesamtmenge angewendet — bei mehrfachen Pflegedurchgängen unterbewertet. Jetzt gilt er pro Einsatz: Bei 5 Durchgängen auf einer Kleinfläche werden 5 × 2 h angesetzt, wie es Fritz' Original-Spec vorsieht. An- und Abfahrt + Rüstzeit laufen weiterhin separat über die Einsatzpauschale.

GAEB-3.3-Anbindung in Landing und Metadaten

Design

Landing, Layout-Metadaten und LLMs-Datei nennen jetzt sauber „GAEB DA XML 3.3-Export für deutsche eVergabe-Plattformen (DTVP, aumass, Healy Hudson)" statt der veralteten 3.2-Angabe.

v0.27.0

GAEB-Export für deutsche eVergabe-Plattformen + Faden-Kennzeichnung

Fertige Leistungsverzeichnisse lassen sich jetzt als GAEB DA XML 3.3 herunterladen und direkt in deutsche eVergabe-Plattformen (DTVP, aumass, Healy Hudson u. a.) importieren — Schluss mit dem manuellen Abtippen in die Vergabesoftware.

GAEB DA XML 3.3 für eVergabe-Plattformen

Export

Der X81-Export ist jetzt auf dem aktuellen GAEB-Standard 3.3 und auf die Anforderungen deutscher eVergabe-Plattformen abgestimmt: korrekter offizieller Namespace, Versionsdatum, alle Pflichtfelder (LblAwdg, Datenphase in PrjInfo) gesetzt, mehrzeilige Texte CDATA-gewrappt. Vergabestellen laden die Datei direkt in DTVP, aumass.de, Healy Hudson oder bi-medien hoch — kein manueller Medienbruch mehr.

Hierarchische Ordnungszahlen (OZ) pro Pflegefläche

Export

Im GAEB-Export bekommt jede Hauptfläche jetzt einen eigenen Gruppen-Block und jede Position eine eindeutige OZ im Format XX.YYYY (z. B. 01.0010 für die zehnte Position der ersten Fläche). Das entspricht der GAEB-Konvention und macht die LV-Struktur in der Vergabesoftware sauber lesbar.

Klarere Export-Buttons

UX

"GAEB X81 — Für eVergabe-Plattform" mit Hinweis auf die kompatiblen Plattformen (DTVP, aumass, Healy Hudson). Dateiname enthält jetzt das Export-Datum, damit Versionen bei der Vergabestelle sauber archiviert werden können.

Fadenkopf-Freischneider klar gekennzeichnet

Fachwissen

Die Freischneidermahd mit Fadenkopf ist im Positionskatalog jetzt eindeutig als "NICHT naturschutzgerecht, nur Restflächen" markiert — sowohl im Auswahl-Dropdown als auch im fertigen LV. Hintergrund: Der Faden schlägt den Aufwuchs statt sauber zu schneiden, schadet Insekten/Amphibien in der Grasnarbe. Die Position bleibt wählbar, wird aber nie automatisch vorgeschlagen.

v0.26.0

Stunden automatisch aus der Fläche — Hand- und Freischneidermahd

Bei Sensen-, Freischneider- und Handbergungsarbeit rechnet das Tool die Stunden jetzt automatisch aus der Flächengröße — mit fachlichen Faustwerten aus der Praxis und einem Erschwernis-Aufschlag pro Fläche. Außerdem behoben: Preise und Mengen ließen sich in zusammengefassten Positionen nicht zuverlässig speichern.

Preise & Mengen speichern jetzt zuverlässig

Fix

Wenn eine Position aus mehreren Teilflächen zusammengefasst war, wurde eine geänderte Menge oder ein geänderter Preis beim Neuberechnen wieder überschrieben — es sah aus, als würde nichts gespeichert. Der Wert wird jetzt sauber auf alle Teilflächen verteilt und bleibt erhalten.

Bearbeiten-Knopf dauerhaft sichtbar

UX

Der „Bearbeiten"-Knopf an jeder Position war vorher nur beim Drüberfahren mit der Maus sichtbar. Jetzt ist er dauerhaft als Button erkennbar.

Stunden automatisch aus der Flächengröße

Kalkulation

Sensenmahd, Freischneidermahd und Handbergung werden stundenbasiert kalkuliert. Die Stundenzahl ergibt sich automatisch aus Fläche × Stunden-pro-Hektar × Anzahl Durchgänge — manuelles Schätzen entfällt. Die Werte sind weiterhin pro Position überschreibbar.

Praxis-Stundenwerte hinterlegt

Fachwissen

Faustwerte aus der Pflegepraxis: Handsense 45 h/ha, Freischneider mit Messer 35 h/ha, Freischneider mit Fadenkopf 25 h/ha, Handbergung Mahdgut 15 h/ha. Reine Ausführung auf der Fläche — An-/Abfahrt und Rüstzeit laufen weiterhin separat über die Einsatzpauschale.

Erschwernis-Aufschlag pro Fläche

Kalkulation

Neue Auswahl „Erschwernis" je Fläche: leicht (×1,2), mittel (×1,5), stark (×2,0), extrem (×2,5). Der Faktor erhöht die kalkulierten Stunden — z.B. bei Hanglage, Vernässung, vielen Hindernissen oder Artenschutz-Handarbeit. Stundenmengen werden praxisgerecht gerundet (Mindestansatz 2 h, sonst halbe Stunden).

Erschwernis-Auswahl im Flächen-Editor

Editor

Pro Pflegefläche lässt sich die Erschwernis-Stufe direkt neben Maßnahme und Frequenz wählen. Eine Trigger-Liste (Hanglage, Vernässung, Neophyten, weite Wege …) hilft bei der Einstufung.

v0.25.0

Passkey-Login, Sitzungs-Verwaltung und Behörden-Auto-Join

Komplette Auth-Modernisierung. Passwordless mit TouchID/FaceID/Hardware-Key, Übersicht aller angemeldeten Geräte, automatische Org-Zugehörigkeit per Email-Domain. Unter der Haube: Migration auf Better Auth — eine moderne, aktiv gewartete Auth-Library.

Passkey-Login

Neu

Passwordless Anmeldung mit TouchID, FaceID, Windows Hello oder Hardware-Schlüsseln (YubiKey & Co.). Phishing-sicher, schneller als Magic-Link. Verwaltung in Einstellungen → Sicherheit. Der Browser schlägt registrierte Passkeys automatisch im Email-Feld vor.

Sitzungs-Verwaltung pro Gerät

Neu

Neue Seite Einstellungen → Sicherheit zeigt alle Geräte, auf denen Sie aktuell angemeldet sind, samt Browser, IP und Anmelde-Datum. Einzelne Sitzungen oder „alle anderen Geräte" lassen sich gezielt abmelden.

Behörden-Onboarding per Email-Domain

Neu

Org-Inhaber:innen können Email-Domains hinterlegen (z.B. @hamburg.de): Jeder neue User, der sich mit dieser Domain registriert, wird automatisch Mitglied — ohne manuelle Einladung. Die Email-Ownership ist durch OAuth/Magic-Link verifiziert, daher sicher gegen Spoofing.

Auth-System komplett modernisiert

Infra

Migration von Auth.js v5 (Beta) auf Better Auth — moderne, aktiv gewartete Library mit reichhaltigem Plugin-Ökosystem. Org-Verwaltung, Invitations, Member-Rollen und Permission-Checks laufen jetzt out-of-the-box über Plugin-APIs statt selbstgebauter Logik.

Session-scoped aktive Org

Infra

Die aktive Organisation ist jetzt an die Browser-Session gebunden, nicht mehr an den User. Heißt: Sie können in einem Browser BUKEA, in einem anderen Ihre Personal-Org aktiv haben — kein versehentliches Wechseln zwischen Fenstern.

Saubere Permission-Architektur

Infra

Vier Rollen (Inhaber, Admin, Mitglied, Lesezugriff) mit expliziten Permissions pro Ressource (Projekt, Vorlage, Auftragnehmer, Org-Verwaltung). Server prüft jede Aktion automatisch — keine doppelten Checks im Anwendungs-Code.

Sicherheits-Tab in den Einstellungen

UX

Eigener Reiter für alle Sicherheits-Themen — Passkeys verwalten, Sitzungen prüfen, Geräte abmelden. Vorher in mehreren Stellen verstreut.

v0.24.2

KI-Fehler-Diagnostik im Admin-Panel

Wenn ein KI-Call fehlschlägt, sieht der Admin jetzt nicht nur die Fehlerart, sondern auch die letzten Original-Fehlermeldungen. Vorher landeten unbekannte Fehler in einem anonymen "other"-Topf — jetzt steht dahinter, was tatsächlich passiert ist.

Original-Fehlermeldung wird mitgeloggt

Infra

Bei jedem fehlgeschlagenen Gemini-Call wird zusätzlich zur Klassifikation (timeout, rate-limit, parse-error, …) die Original-Meldung gespeichert (max. 200 Zeichen). Das macht "other"-Fehler diagnostizierbar, deren Pattern bisher unbekannt war.

Aufklappbare Fehlertypen im Admin-Panel

UX

Die Fehler-Typ-Übersicht im Admin zeigt pro Typ jetzt die letzten 5 Vorfälle mit Zeitpunkt, betroffenem Call (z. B. extract-ausschreibung) und Original-Meldung. Klick auf den Typ öffnet die Liste.

KI-Fehler erscheinen jetzt auch in Vercel-Logs

Infra

Jeder fehlgeschlagene KI-Call schreibt zusätzlich eine grep-bare Zeile (`[ai-error] kind=… type=… msg=…`) in die Vercel-Runtime-Logs. Damit lassen sich Häufungen auch ohne Datenbank-Zugriff schnell finden.

v0.24.1

Konto-Löschung räumt Personal-Organisation auf

Bug-Fix: Beim Löschen eines Accounts blieb die zugehörige Personal-Organisation bisher als Karteileiche in der Datenbank stehen. Jetzt wird sie zusammen mit dem User entfernt. Bestehende verwaiste Personal-Organisationen wurden mit der Migration aufgeräumt.

Personal-Org wird beim Konto-Löschen mit gelöscht

Fix

Sowohl die Eigenlöschung über die Settings als auch die Admin-Löschung räumen jetzt auch die zugehörige Personal-Organisation des Users auf. Team-Organisationen, in denen der User Mitglied war, bleiben unangetastet — dort wird wie bisher nur seine Mitgliedschaft entfernt.

Cleanup verwaister Personal-Orgs

Infra

Migration v0241 löscht alle Personal-Organisationen ohne Mitglieder. In der Admin-Org-Liste werden damit alte Karteileichen aus früheren Account-Löschungen entfernt.

v0.24.0

Marktpreis-Konsolidierung, Hand-Bergungs-Kette, Anfahrt pro Einsatz, triggerbasierte Artenschutzbegehung

Fritz-Antwort auf die Marktpreis-Recherche umgesetzt. Mahd-Preise auf das marktnahe Niveau für reine Mahd-Positionen gebracht (Komplettpreis ergibt sich aus Mahd + Bergung + Transport zusammen). Sechs Spezialpositionen für Neophyten- und Gehölzbekämpfung sind jetzt Stundenpositionen statt €/m² — wie es der Marktstandard verlangt. Bei Maschinenwahl Handarbeit wird die Bergungskette automatisch auf Stunden-Handbergung umgestellt, statt fachlich falsche maschinelle Bergung+Transport zu erzeugen. Mehrfachdurchgänge bekommen jetzt eine eigene Anfahrts-Position pro Einsatz statt eines pauschalen Surcharges. Artenschutzbegehung wird nicht mehr pauschal angelegt, sondern nur wenn ein Trigger im Bestand greift (Bodenbrüter, Amphibien, Reptilien, sensibler Mahdzeitraum). Tests 339/339, eine additive DB-Migration.

Marktnahe Mahd-Preise nach LfU/LPV-Recherche

Kalkulation

Mahd-Preise auf realistisches Niveau für reine Mahd-Positionen: Balkenmahd 0,25 €/m² (war 0,40), Kreisel-/Scheibenmahd 0,12 €/m² (war 0,18), Mulchmahd 0,12 €/m² (bleibt). Der LPV-Komplettpreis 0,65–1,20 €/m² ergibt sich jetzt sauber aus Mahd + Bergung + Transport. Handmahd primär als Stundenposition.

Sechs Spezialpositionen jetzt auf Stundenbasis

Kalkulation

Bärenklau-Erstbehandlung, Traubenkirsche-Entfernung, Robinie-Bekämpfung, Armenische-Brombeere-Entfernung, Auf-den-Stock-Setzen und Entkusselung-Hand sind jetzt mit Einheit Stunde und Standardpreis 65 €/h kalkuliert. Bestände sind in Wuchsdichte und Zugänglichkeit zu variabel für m²-Pauschalen — das entspricht dem Marktstandard in LPV- und Behörden-Vergaben.

Handbergung-Position bei Handarbeit-Maschinenwahl

Neu

Wenn der User für eine Fläche Handarbeit als Maschine wählt, erzeugt das LV jetzt automatisch eine Handbergungs-Position auf Stundenbasis (65 €/h) statt der fachlich falschen maschinellen Bergungs- und Transport-Positionen. Bei Handsense ist Ladewagen-Bergung nicht praktikabel — die neue Logik spiegelt das wider.

Anfahrts- und Rüstkosten pro Einsatz transparent

Neu

Bei Mehrfachdurchgängen (Knöterich 4–7×, Brombeer-Vergrämung 5–7×, Goldrute 3–4×) wird jetzt automatisch eine Anfahrts-Position mit Pauschale 120 € pro Einsatz angelegt. Anzahl = Frequenz × Vertragsjahre. Das ist VOB-Standard, transparenter für Vergabestellen als ein pauschaler 10 %-Surcharge.

Artenschutzbegehung nur noch triggerbasiert

Verbesserung

Die Artenschutzbegehung wird nicht mehr pauschal in jedes Projekt eingerechnet, sondern nur wenn ein Trigger greift: Bodenbrüter-Hinweis im Bestand, Amphibien- oder Reptilien-Lebensraum, oder Mahdzeitraum vor 15. Juni (mögliche Brutzeit). Spart Geld in Projekten, die keinen erkennbaren Artenschutzbedarf haben.

Dokumentation jetzt mit 450 € statt 850 €

Verbesserung

Die Pauschale für Dokumentation und Fotonachweise wurde an den Marktstandard angepasst. 850 € haben Vergabestellen in der Kostenübersicht oft als überzogen wahrgenommen.

Migration v024 für Marktpreis-Konsolidierung

Infra

Backward-kompatible Migration aktualisiert bestehende quantityAuto-Positionen auf die neuen Marktpreise. Manuell editierte Positionen bleiben unangetastet. Die sechs Spezialpositionen werden auf Einheit Stunde umgestellt, der User trägt die geschätzte Stundenzahl beim ersten Aufruf ein.

Marktspannen unter jeder Position sichtbar

UX

Im Positions-Editor erscheint jetzt unter dem Festpreis ein Hinweis „Markt 0,18–0,40 €/m²" — Sachbearbeiter sehen sofort, ob ein angepasster Preis im Marktbereich liegt oder nicht. Aktuell für Mahd, Bergung, Transport, Handarbeit und alle Stunden-Spezialpositionen gepflegt.

Sechs neue Maschinen im Auswahl-Katalog

Fachwissen

Trommelmäher, Quaderballenpresse, Hochentaster, Seilwinde, Rückewagen und Teleskopsäge sind jetzt als eigenständige Maschinen im Editor verfügbar — auch mit den Naturschutz-Ausschluss-Regeln, sodass z. B. Trommelmäher auf Feuchtwiesen automatisch gefiltert wird. Insgesamt jetzt 30 Maschinen im Katalog.

Empty-State auf dem Dashboard mit Schritt-Liste

UX

Neue User sehen auf dem leeren Dashboard jetzt drei konkrete nächste Schritte (Flächen zeichnen, Maßnahmen+Maschinen wählen, Word-Datei exportieren) statt nur einem CTA. Plus Link zur Produkt-Roadmap für „Was kann naturvergabe?".

Aufgeräumte Lint-Schulden in den SEO-Pages

Infra

Veraltete Biome-Suppression-Kommentare in 12 SEO-/Layout-Dateien entfernt. Reine Hygiene, kein User-sichtbarer Effekt.

v0.23.1

Geometrie-Save aktualisiert die LV-Positionen automatisch

Folge-Patch zu v0.23: bisher mussten User nach einer Maschinen- oder Maßnahmen-Änderung auf einer existierenden Fläche manuell „Generieren" klicken, damit die LV nachzieht. Jetzt aktualisiert das Speichern der Karte direkt die Default-Positionen — alte Auto-Positionen, die durch den Wechsel überflüssig werden, verschwinden, neue Positionen erscheinen, manuelle Anpassungen (Erschwernisse, Pauschal-Override, eigene Texte) bleiben unangetastet. Tests 327/327, kein DB-Migrate.

Karten-Speichern hält die LV automatisch konsistent

Verbesserung

Beim Speichern von Geometrien rechnen Default-Positionen und Generation jetzt direkt nach. Wenn der User die Maschinenwahl von Balken auf Hand wechselt, verschwindet die alte Mahd-Position und die Handmahd-Position erscheint — ohne Umweg über „Generieren".

Veraltete Auto-Positionen werden aufgeräumt

Fix

Wenn eine Pflegemaßnahme oder Maschinenwahl wechselt, werden quantityAuto-Positionen ohne User-Bearbeitung entfernt. Manuell hinzugefügte Positionen, eigene Erschwernisse, Pauschal-Overrides oder eigene Beschreibungen bleiben sicher erhalten.

v0.23.0

Maschinen-bewusste LV-Erzeugung, Mengentransparenz, faire Sub-Area-Subtraktion

Konsolidierungs-Block aus Fritz-Feedback Runde 8. Die Maschinenwahl im Flächentool steuert jetzt direkt, welche Mahd-Position im Leistungsverzeichnis entsteht — Handsense erzeugt eine Handmahd-Position, Schlegelmäher eine Mulchmahd-Position, Kreiselmäher eine eigene Position für rotierende Schneidwerke. Die Subtraktion abweichend bearbeiteter Sub-Areas vom Hauptflächen-Brutto greift jetzt auch wenn nur die Maschinen, die Frequenz oder der Bearbeitungszeitraum abweichen — die Doppelbepreisung bei Mosaikmahd ist damit sauber gefixt. Im Word-Export erscheint pro Position eine Mengen-Klartextzeile (z. B. "1.000 m² × 7 Durchgänge × 3 Jahre = 21.000 m²"), bei Knöterich- oder Brombeer-Vergrämung mit ≥4 Durchgängen pro Jahr wird automatisch ein 10 %-Zuschlag für An-/Abfahrt und Rüstaufwand appliziert. Stunden-, Pauschal- und Einsatz-Positionen bleiben editierbar — die hartgekoppelte Geometrie-Sperre gilt nur für Mengen, die tatsächlich aus der Fläche kommen. Tests 312 → 327 grün, kein DB-Migrate.

Maschinenwahl bestimmt die Mahd-Position

Kalkulation

Wenn der User im Flächentool z. B. Handsense statt Balkenmäher wählt, generiert das LV automatisch eine Handmahd-Position statt der Balken-Mahd. Schlegel- und Kreiselmäher bekommen eigene Mulch- und Kreisel-Positionen. Endlich passt die LV-Position zur tatsächlichen Bearbeitungstechnik.

Zwei neue Mahd-Positionen: Kreisel- und Schlegelmahd

Kalkulation

Mahd mit Kreisel- oder Scheibenmäher und Mulchmahd mit Schlegelmäher sind jetzt eigene LV-Positionen mit eigenen Marktpreisen. Bieter kalkulieren mit der richtigen Technik-Klasse, Vergabestellen erkennen schon am Position-Namen, was geleistet werden soll.

Doppelbepreisung bei Mosaikmahd behoben

Fix

Wenn eine Sub-Area dieselbe Pflegemaßnahme wie die Hauptfläche hat, aber abweichende Maschine, Frequenz oder Bearbeitungszeitpunkt, wird sie jetzt vom Hauptflächen-Brutto abgezogen. Vorher wurde die Sub-Fläche doppelt bepreist (einmal in der Hauptflächen-Mahd, einmal als eigene Position).

Mengen-Klartextzeile pro Position

Verbesserung

Bei mehrfachen Durchgängen oder Mehrjahresverträgen rendert das LV jetzt unter jeder Position eine Klartextrechnung wie "1.000 m² × 7 Durchgänge × 3 Jahre = 21.000 m²". Bieter und Vergabestellen erkennen sofort, wie sich die Endmenge ergibt.

Mehrfachdurchgangs-Zuschlag bei ≥4×/Jahr

Kalkulation

Bei Knöterich-, Brombeer- oder Goldrute-Vergrämung mit vier oder mehr Durchgängen pro Jahr wird jetzt automatisch ein 10 %-Zuschlag für zusätzlichen An-/Abfahrt- und Rüstaufwand appliziert. Vorher musste der Bieter den Mehraufwand selbst in die Kalkulation einbauen, was zu Vergleichbarkeitsproblemen führte.

Stunden- und Pauschal-Positionen bleiben editierbar

UX

Die quantityAuto-Sperre aus v0.22 gilt nur noch für Mengen, die wirklich aus der Geometrie ableitbar sind (m², m³, lfd.m, ha). Stunden-, Pauschal-, Einsatz- und Stk-Positionen lassen sich weiterhin direkt in der Tabelle editieren — sonst wäre die Stundenarbeit nicht mehr erfassbar.

v0.22.0

Vergabefähige LV-Struktur — Vorbemerkungen, Flächenbezug, Bergung in m³

Großer Vergaberecht-Block aus Fritz-Feedback Runde 7. Jede LV-Position trägt jetzt sichtbar Flächenname, ggf. Teilfläche und eingesetzte Technik — Bieter erkennen am Position-Label, was wo und womit auszuführen ist, auch wenn die Zeile isoliert in einem Excel-Auszug oder GAEB-Schnitt steht. Vor dem Leistungsverzeichnis steht jetzt eine eigene Vorbemerkungs-Sektion mit Projektname, Lage, Bundesland, Vertragslaufzeit, Hauptflächen-Aggregat und allen LV-relevanten Kartennotizen — wie es VOB/A § 7 verlangt. Im Word-Export erscheint unter jeder Position eine Hinweiszeile mit den angewendeten Erschwernissen (z. B. "Steillage +25 %, Vernässung +20 %") und dem Mindestmengen-Hinweis. Die Bergung des Mahdguts rechnet jetzt in Kubikmeter mit Volumenfaktor 0,05 m³/m² und Marktpreis 18,50 €/m³ — eindeutig und nicht mehr redundant zur Mahd-Fläche. Auto-Mengen lassen sich im Editor nicht mehr direkt überschreiben (eine Quelle der Wahrheit), und ein Merge-Badge zeigt transparent wenn LV-Zeilen aus mehreren Teilflächen zusammengefasst wurden. Tests 312/312 grün, 1 backward-kompatible Migration applied.

Vorbemerkungen vor dem Leistungsverzeichnis

Neu

Jede LV trägt jetzt eine eigene Vorbemerkungs-Sektion mit Projektname, Lage, Bundesland, Vertragslaufzeit, Hauptflächen-Aggregat und allen LV-relevanten Kartennotizen — vor den abrechenbaren Positionen, wie es VOB/A § 7 verlangt.

Flächenname, Teilfläche und Technik in jeder Position

Verbesserung

LV-Positionen tragen jetzt im Leistungs-Label sichtbar den Flächennamen, ggf. die Teilfläche und die eingesetzte Technik. Auch im Excel- oder GAEB-Schnitt bleibt eine einzelne Zeile eindeutig — Bieter erkennen sofort wo, womit und in welcher Menge.

Erschwernisse als Sub-Zeile unter jeder Position

Verbesserung

Im Word-Export erscheint unter jeder Position eine kurze Hinweiszeile mit den angewendeten Erschwernissen (z. B. "Steillage +25 %, Vernässung +20 %") und dem Mindestmengen-Hinweis. Bieterkalkulationen werden damit nachvollziehbar.

Bergung jetzt in m³ statt m²

Kalkulation

Die Position "Bergung des Mahdguts" rechnet jetzt in Kubikmeter Frischmasse mit Volumenfaktor 0,05 m³/m² und Marktpreis 18,50 €/m³ — eindeutig vergabefähig und nicht mehr redundant zur Mahd-Fläche. Bestehende Projekte werden bei der Migration automatisch konvertiert.

Frequenz im Kosten-Breakdown auch ohne manuellen Override

Kalkulation

Der transparente Kosten-Breakdown zeigt jetzt auch die Default-Frequenz aus der Pflegemaßnahme an (z. B. "2 Durchgänge/Jahr" bei Mahd 2x). Vorher wurde nur ein User-Override angezeigt — Bieter sehen jetzt, wie sich die Menge ergibt, auch ohne manuelle Eingabe.

Auto-Mengen sind jetzt read-only

UX

Mengen, die automatisch aus der Geometrie berechnet werden, lassen sich im Editor nicht mehr direkt überschreiben. Der User korrigiert die Fläche oder die Pflegemaßnahme, und die Menge zieht nach. Eine Quelle der Wahrheit, weniger inkonsistente LV-Stände.

Merge-Indikator zeigt zusammengefasste Teilflächen

UX

Wenn mehrere Teilflächen zu einer LV-Zeile zusammengefasst werden, zeigt ein kleines Badge „aus N Teilflächen" mit Tooltip-Liste der Quell-Sub-Areas. Damit ist die Aggregation transparent und nicht versteckt.

Migration v022 für Bergungs-Einheit

Infra

Backward-kompatible Migration konvertiert bestehende Bergungs-Positionen von m² auf m³ (Faktor 0,05) und setzt den Marktpreis. Bestandsprojekte rechnen nach dem Deploy automatisch korrekt.

v0.21.0

Marktpreise, maßnahmen-getriebene LV, Beweidung, Karten-Beschriftungen

Großes Release nach Fritz-Feedback Runde 6 (23 Punkte). Kern: das Leistungsverzeichnis wird jetzt von der Pflegemaßnahme getrieben — Knöterich-Sub-Bestände bekommen automatisch Knöterich-Positionen, Gehölz-Entkusselung wird als Stundenarbeit gerechnet, Beweidung erzeugt eigene Beweidungs-Positionen statt Mahd. Folgepositionen wie Schwaden, Bergung und Transport werden pro Hauptfläche zusammengefasst, sodass aus 5 Sub-Areas mit gleicher Konfig keine 20 LV-Zeilen mehr werden. Beweidung als eigene Pflegelogik: Tierart, Beweidungsform, Zeitraum, Besatzdichte und Besonderheiten (Tränke, Zaun, Gewässer-Auszäunung) pro Fläche, mit Tierschutz-Prüfregeln. Karten-Beschriftungen für Hinweise, Zufahrt, Logistik und Gefahr — werden als farbige Pins auf der Karte gezeigt und sind standardmäßig nicht-LV-relevant. Marktpreise endlich auf LPV-Donau-Ries-Niveau angepasst (Mahd 0,40 €/m² statt 0,052 €/m², Komplett-Mahd 0,80 €/m² in Marktspanne). Bodenschutz-Ausstattung als Multi-Select-Tags pro Fläche (Niederdruckbereifung, Reifendruckregelanlage, Stachelwalzen) — fließen als Pflicht-Klausel in den LV-Text. Zwölf neue Maschinen-Files (Bergung, Mähtechnik-Subtypen, Gehölzwerkzeuge), mit fauna-schädigender Technik wie Kreiselmäher und Scheibenmäher gezielt von Naturschutzflächen ausgeschlossen. Plus: doppelte Mahd-Bepreisung bei verschachtelten Sub-Areas behoben, Mengenfeld behält den Tastatur-Fokus beim Tippen, Bearbeitungszeitpunkt-Optionen aufgeräumt, Schutzstreifen-Typ entfernt und auf Rückzugsflächen migriert.

Marktpreise endlich angeglichen (Faktor 5–10 höher als vorher)

Kalkulation

Die Kern-Mahd-Preise waren bisher deutlich unter Marktniveau angesetzt. Mahd mit Balkentechnik kostet jetzt 0,40 €/m² (statt 0,052), Schwaden 0,15 €/m², Bergung 0,25 €/m², Transport 32 €/m³. Komplett-Mahd liegt damit bei rund 0,80 €/m² und damit in der LPV-Donau-Ries-Marktspanne von 0,65 bis 1,20 €/m². Auch Goldrute-Mahd, Springkraut-Entfernung und Beweidung-Standweide auf realistische Werte gehoben. Vergaben sind jetzt vergleichbar mit gängiger kommunaler Praxis.

Doppelte Mahd-Bepreisung bei Sub-Flächen behoben

Kalkulation

Wenn eine Hauptfläche eine Sub-Area mit eigener Pflegemaßnahme enthielt (z.B. Mähwiese-Sub innerhalb einer Feuchtwiese), wurde der Bereich bisher doppelt gerechnet — einmal als Teil der Hauptflächen-Mahd, einmal als eigene Sub-Position. Sub-Areas mit eigener Pflegemaßnahme werden jetzt von der Hauptflächen-Berechnung abgezogen. Sub-Areas ohne eigene Pflegemaßnahme bleiben Teil der Hauptflächen-Mahd. Im Header der Hauptfläche steht „Netto · Brutto" wenn Differenzen auftreten.

Maßnahmen-getriebene LV-Erzeugung statt Mahd-Default

Kalkulation

Bisher bekam jede Sub-Fläche automatisch die vier Standard-Mahd-Positionen — auch Knöterich-Bestände, Gehölz-Sub-Areas und Beweidungsflächen. Jetzt entscheidet die Pflegemaßnahme welche Positionen erzeugt werden: Knöterich → Erstbehandlung + Folgepflege, Gehölz-Entkusselung → Handarbeit-Stundenposition, Beweidung → Beweidungs-Pauschale + Zaun + Tierkontrolle. Bergung und Transport werden nur noch ergänzt, wenn die Maßnahme tatsächlich Mahdgut erzeugt.

Folgepositionen pro Hauptfläche zusammengefasst

Kalkulation

Hat eine Wiese fünf Sub-Areas mit gleicher Pflegemaßnahme, gleichem Bearbeitungszeitpunkt und gleichen Maschinen, erscheinen Schwaden, Bergung und Transport jetzt als jeweils EINE Position mit summierter Menge — statt fünf identischen Zeilen. Sobald sich ein Kriterium unterscheidet (andere Maschine, anderer Mahdtermin, individuelle Zuschläge), bleiben Positionen separat. Spart deutlich Platz im LV ohne fachliche Information zu verlieren.

Beweidung als eigene Pflegelogik

Neu

Wer „Beweidung" als Pflegemaßnahme wählt, sieht jetzt einen eigenen Eingabeblock statt der Maschinen-Auswahl. Tierart (Rinder, Schafe, Ziegen, Pferde, Wasserbüffel, Mischbeweidung), Beweidungsform (Stand-, Umtriebs-, Portions-, Hüte-, Pflegeweide, Ganzjahresbeweidung), Beweidungszeitraum, Besatzdichte (GVE/ha) und Besonderheiten (mobiler Zaun, Tränke, Gewässer-Auszäunung, Schutzhütte) pro Fläche. Optional kann zusätzlich ein Beweidungskonzept als Beratungsleistung gebucht werden.

Tierschutz-Prüfregeln für Beweidung

Neu

Bei Beweidung prüft das System automatisch ob Wasserversorgung, Tierkontrolle und Gewässer-Auszäunung im LV-Text adressiert sind. Wenn nicht, erscheinen Hinweise auf TierSchG, ANL-Beweidungs-Handbuch und TVT-Leitlinien. Ganzjahresbeweidung triggert eine zusätzliche Sondergenehmigungs-Hinweis (Witterungsschutz, Zufütterung, Notfallplan).

Karten-Beschriftungen für Hinweise und Logistik

Neu

Neuer Bereich unter der Karte: Beschriftungen mit Text und Kategorie (Hinweis, Zufahrt, Artenschutz, Logistik, Gefahr, Beweidung, Sonstiges) anlegen. Werden als farbige Pins auf der Karte gerendert mit Tooltip-Text. Standardmäßig nicht-LV-relevant — opt-in als Vorbemerkungs-Klausel ins LV. Für Hinweise wie „Schwere Maschinen nur über die Westseite, Schranke kombiniert".

Bodenschutz-Ausstattung als Multi-Select pro Fläche

Neu

Niederdruckbereifung, Breitreifen, IF-/VF-Reifen, Reifendruckregelanlage, Doppelbereifung, Stachelwalzen — werden jetzt als separate Tags pro Fläche markiert (statt im Maschinen-Freitext versteckt). Die Tags fließen als Pflicht-Klausel in den LV-Text („Trägerfahrzeug mit Niederdruckbereifung und Reifendruckregelanlage").

Zwölf neue Maschinen-Files

Neu

Mähtechnik-Subtypen separat dokumentiert: Doppelmesser-Anbaumähwerk, Motormäher (Einachser), Mähraupe (funkferngesteuert), Kreiselmäher (mit fachlicher Warnung), Scheibenmäher (mit fachlicher Warnung). Bergung als eigenständige Maschinen: Schwader, Kammschwader, Ladewagen, Rundballenpresse, Frontlader. Gehölz-Erweiterung: Freischneider, Häcksler. Insgesamt 24 statt 12 Maschinen.

Schlagende Mähtechnik gezielt von Naturschutzflächen ausgeschlossen

Neu

Kreiselmäher, Scheibenmäher und Schlegel werden auf Feuchtwiese, Magerrasen, Gewässerrand und geschützten Bereichen automatisch aus der Maschinenauswahl gefiltert — fauna-schädigend (Insektenmortalität, Verletzung Bodenbrüter). Auf Parkrasen und intensivem Gebrauchsgrünland bleiben sie zugelassen. Die fachliche Begründung steht in den Maschinen-Beschreibungen.

Mengenfeld behält Tastatur-Fokus beim Tippen

UX

Bei jeder Ziffer im Mengenfeld einer Position ging vorher der Cursor verloren — der Server-Round-Trip warf den Fokus jedes Mal raus. Jetzt: lokales State-Mirror und Commit erst beim Verlassen des Felds (oder bei Enter). Längere Mengen lassen sich endlich flüssig eintippen.

Bearbeitungszeitpunkt-Optionen aufgeräumt

Verbesserung

Das starre Datums-Dropdown („Frühestens ab 1. Juli", „Frühestens ab 15. Juli", „Frühestens ab 1. August" …) ersetzt durch ein freies Datumsfeld „Frühestens ab …" und „Individueller Zeitraum von … bis …". Frühsommer-Cutoff fachlich auf 30. Juli geschoben (Brutsaison-Ende), Spätsommer-Start auf 1. August. Plus zwei neue semantische Werte „Fachlich vorgeschlagener Zeitraum" und „Gesetzlich/fachlich eingeschränkter Zeitraum" für KI-Generierung.

Gehölzhecke automatisch auf BNatSchG-Schnittzeitraum

Verbesserung

Bei Auswahl „Gehölzhecke" als Wiesensubtyp wird der Bearbeitungszeitpunkt automatisch auf 1. Oktober bis 28. Februar gesetzt. Bei abweichender Wahl erscheint eine gelbe Warnung mit dem Wortlaut von § 39 Abs. 5 BNatSchG (Gehölz- und Heckenschnitt-Verbot 1. März bis 30. September).

Schutzstreifen entfernt — nur noch Rückzugsfläche

Verbesserung

Der Flächentyp „Schutzstreifen" war fachlich überlappend mit „Rückzugsfläche" — beide hatten dieselbe Wirkung (Mahd-Ausschluss). Schutzstreifen wurde entfernt, bestehende Geometrien automatisch auf Rückzugsfläche umgeschrieben. Vereinfacht die Auswahl und schließt eine doppelte Begrifflichkeit aus.

LV-Position-Dropdown nach Fachgruppen sortiert

UX

Das „+ Position hinzufügen"-Dropdown hat jetzt vier Gruppen: Mahd & Bergung, Gehölz / Beweidung / Sonstiges, Neophyten- und Spezialbekämpfung, LPV-Tarif (Stundensätze, Maschinenpauschalen). Macht die wachsende Positions-Liste sortier- und scannbar.

Erschwernis-Heuristiken werden auch im LV-Text wirksam

KI

Stichwörter wie „Kiebitz" oder „feucht" lösten bisher nur Live-Hinweise im UI aus. Jetzt werden sie auch serverseitig ausgewertet und an die KI als Pflicht-Klausel übergeben („Mahdverbot 15.03.–30.06., Mahd von innen nach außen"). UI-Hinweise und tatsächlich generierter LV-Text laufen nicht mehr auseinander.

Admin-Reset für Demo-Projekte

Editor

Admin-Tools im Projekt-Detail-Header: Demo-Vorlagen und Demo-Klone können per „↻ Demo neu generieren" auf den frischen Stand gebracht werden — Auto-Positionen werden gelöscht und maßnahmen-getrieben neu angelegt, Generation neu gerendert, der Snapshot für künftige Klone aktualisiert. Hilft beim Migrieren von Bestands-Demo-Daten auf neue LV-Logik ohne Account-Reset.

Berechnung-Aufklappen zeigt Aggregations-Hinweis

Editor

Wenn eine LV-Zeile aus mehreren Sub-Flächen zusammengefasst wurde, zeigt das Berechnungs-Detail jetzt die SUMMIERTE Fläche statt der ersten Einzelfläche. Plus „aus N Teilflächen aggregiert" als Hinweis. Vorher konnten Mengen und Berechnungs-Aufklappung auseinanderlaufen.

Neue Pflegemaßnahmen-Defaults

Fachwissen

Jede Pflegemaßnahmen-Datei trägt jetzt eine Liste der Default-Positionen, die beim Anlegen einer Geometrie automatisch erzeugt werden — Knöterich-Behandlung, Goldrute-Mahd, Bärenklau-Bekämpfung, Springkraut-Entfernung, Gehölz-Entkusselung als Stundenposition, alle gepflegt. Plus Marktpreise hinterlegt für sechs neue Spezialpositionen (Bärenklau-Erstbehandlung mit PSA, Traubenkirsche, Robinie, Armenische Brombeere, Auf-den-Stock-Setzen, Entkusselung von Hand).

SSL-Warning und Karten-Toolbar-Hash-Bug behoben

Infra

Datenbank-Verbindung nutzt jetzt explizit „verify-full" statt der deprecated „require"-Alias-Behandlung. Plus: Klicks auf die Geoman-Karten-Toolbar lösten unnötige Server-Requests aus, weil die Buttons als Hash-Links rendern — das Browser-Default-Verhalten wird jetzt abgefangen ohne die Tool-Funktionalität zu blocken.

Fünf neue DB-Migrations

Infra

Migration alter Bearbeitungszeitpunkt-Werte (z.B. „ab-1-juli") auf das neue freie Datumsschema. Schutzstreifen → Rückzugsfläche. Acht neue Geometrie-Felder für Beweidung (Tierart, Form, Zeitraum, Besonderheiten, Besatzdichte, Konzept-Flag). Bodenschutz-Ausstattung als JSON-Array. Neue MapLabel-Tabelle für Karten-Beschriftungen. Alle Migrations additiv und backward-kompatibel.

v0.20.0

Auftragnehmerkartei, Wiesentypen-Sortierung, transparente Kalkulation

Großes Frühjahrs-Release nach Fritz-Feedback Runde 5. Neue Auftragnehmer-Kartei: externe Pflegebetriebe inklusive Maschinenpark, Fachkompetenz und Einsatzradius werden zentral pro Organisation gepflegt und können einzelnen Projekten zugeordnet werden. Wiesentypen-Auswahl jetzt in fachliche Gruppen gegliedert (mesophiles Grünland, Feuchtwiesen, Trockenrasen, Streuobst, Gehölz, Park, Sonderstandorte). Parkrasen als neuer Flächentyp für Stadtgrün. Bearbeitungszeitpunkt jetzt mit konkreter „Frühestens ab" / „Spätestens bis"-Datumsspanne pro Fläche. Gehölzhecken bekommen automatisch den BNatSchG-konformen Pflegezeitraum 1. Oktober bis 28. Februar. Auto-Speichern alle zwei Minuten verhindert Datenverlust beim langen Arbeiten in der Karte. Positionsnummern endlich sauber durchnummeriert (1.1, 1.2, 2.1 statt 10.1, 20.1). Marktreferenz-Preise des LPV Donau-Ries als Vergleichsbasis hinterlegt — die KI begründet Kostenansätze damit gegenüber Auftraggebern. Berechnung jeder Position transparent aufklappbar (Fläche × Frequenz × Jahre × Mahdgut). Mahdgut-Volumenfaktor sachlich korrigiert (Faktor 10). Neophyten-Bestände werden jetzt automatisch ins LV gerechnet, fünf neue spezifische Positionen für Knöterich, Goldrute, Springkraut und Riesen-Bärenklau. Akku-Säge als neue Maschine für sensible Gehölzpflege.

Auftragnehmer-Kartei pro Organisation

Neu

Neuer Bereich „Auftragnehmer" in der Sidebar. Externe Pflegebetriebe (GaLaBau, Landschaftspflege, Maschinenring) werden mit Stammdaten, Maschinenpark, Fachkompetenz und Einsatzradius eingetragen — pro Projekt optional einer der Betriebe zuordnen. Bleibt zwischen Projekten erhalten und wächst zur internen Wissensbasis welcher Betrieb was kann.

Parkrasen als neuer Flächentyp

Neu

Park, Schulhof, Sportplatz-Umfeld, Straßenbegleitgrün — Park- und Gebrauchsgrünland als eigener Flächentyp wählbar (eigene Farbe auf der Karte). Vier bis acht Schnitte pro Jahr von April bis Oktober, Kreiselmäher ist hier zulässig (anders als bei Naturschutzflächen). Eigene Maschinenliste mit Kommunaltechnik vorrangig.

Auto-Speichern alle zwei Minuten

Neu

Während du in der Karte arbeitest, werden Änderungen automatisch alle zwei Minuten gespeichert — auch wenn du den manuellen Speichern-Button vergisst. Im Header oben rechts erscheint kurz „Auto-Speicher HH:MM" als Bestätigung. Vorher konnten Karten-Änderungen verloren gehen wenn man den Tab geschlossen hat ohne aktiv zu speichern.

Bearbeitungszeitpunkt mit konkreter Datumsspanne

Neu

Pro Fläche kann jetzt zusätzlich zum Dropdown-Vorgaben (Frühsommer, Spätsommer, Mosaikmahd) ein konkretes Datum „Frühestens ab" und „Spätestens bis" gesetzt werden. Format Tag/Monat ohne Jahr — die Vorgabe wiederholt sich jährlich. Wird im LV als „frühestens ab 15. Juli, spätestens bis 30. September" gerendert.

Akku-Säge als Maschine für sensible Gehölzpflege

Neu

Akku-betriebene Hand- oder Astsäge — geeignet für Friedhof, Schulhof, Naherholung. Ohne Abgas-Emissionen, geringerer Lärm- und Vibrationsbelastung als Motorsäge. Schonungsstufe 1, niedrigerer Bodendruck. Bei Gehölzhecken steht sie jetzt vor der Motorsäge in der Maschinen-Auswahl.

Fünf spezifische Neophyten-Bekämpfungspositionen

Neu

Erstbehandlung Japanischer Staudenknöterich, Folgepflege Knöterich, Bekämpfungsmahd Goldrute, händische Springkraut-Entfernung, Riesen-Bärenklau-Wurzelstich mit PSA — als eigenständige Positionen mit fachlich passenden Einheiten und Mindestmengen. Kombinierbar mit Standard-Mahd, optional pro Sub-Bestand aktivierbar.

Handarbeit auch im Stundenlohn-Tarif

Neu

Neben der bestehenden m²-Pauschale für Handmahd gibt es jetzt eine Stundenlohn-Variante für Sondereinsätze (Erschwernis, PSA, Hanglage). 65 €/h Basis, manuelle Mengen-Eingabe, Zuschläge für Erschwernis und Nacht-/Wochenendeinsätze.

LPV-Donau-Ries-Marktreferenz als KI-Kontext

Neu

22 Stundensatz-Verrechnungssätze des LPV Donau-Ries (Mai 2024) als Marktbaseline hinterlegt. Die KI nutzt diese Vergleichswerte zur Begründung der Kostenansätze gegenüber Auftraggebern. Zusätzlich als auswählbare Catalog-Positionen verfügbar wenn ein Stundensatz-Posten ins LV soll.

Wiesentypen in fachlichen Gruppen sortiert

UX

Die Wiesensubtyp-Auswahl im Flächen-Editor ist jetzt in optgroup-Sektionen gegliedert: mesophiles Grünland, Feucht- und Nasswiesen, Trockenrasen und Magerstandorte, Streuobst, Gehölz und Hecken, Park- und Gebrauchsgrünland, Gewässerrand, Sonderstandorte. Alle Wiesensubtypen sind jetzt unabhängig vom Hauptflächen-Typ wählbar — fachliche Verfeinerung über die Grenzen der Hauptkategorie hinaus.

Aufklappbare Berechnung pro Position

UX

Unter jeder Position in der Angebots- und Kostenansicht steht jetzt eine kleine Zeile mit der Berechnungsgrundlage (Fläche × Frequenz × Jahre, Mahdgut-Volumen). Klick auf das Pfeil-Symbol öffnet eine Detail-Tabelle mit allen Faktoren — Pflegemaßnahme, Technik, Volumenfaktor, berechnetes Mahdgut. Macht die Mengenermittlung gegenüber Auftraggebern transparent.

Vorlagen aus dem Hauptmenü entfernt

UX

Der bisherige „Vorlagen"-Eintrag im User-Menü und unter Einstellungen wurde durch „Auftragnehmer" ersetzt — das ist die Stammdaten-Verwaltung die im Pflege-Alltag tatsächlich gebraucht wird. Bestehende Vorlagen-Daten bleiben erhalten und sind weiter über die Direkt-URL erreichbar.

Gehölzhecken automatisch im BNatSchG-Zeitfenster

GIS

Bei Wiesensubtyp „Gehölzhecke" wird der Bearbeitungszeitpunkt automatisch auf den gesetzlich erlaubten Pflegezeitraum 01. Oktober bis 28. Februar gesetzt. Manuelle Wahl eines Sommer-Termins löst eine deutliche Warnung mit BNatSchG-Verweis aus — auch jetzt für Gehölzhecken die als Wiesensubtyp innerhalb einer normalen Wiesen-Hauptfläche liegen.

Mehr „Frühestens ab"-Optionen für Mahd

GIS

Der Bearbeitungszeitpunkt-Dropdown enthält jetzt zusätzliche Optionen ab 1. Juli, 15. Juli, 1. August und 1. September. Praktisch für Wiesenbrüter-Schutz (Brutzeit-Ende abwarten) ohne dass ein festes End-Datum gesetzt werden muss.

Positionsnummern endlich 1.1, 1.2, 2.1 statt 10.1, 20.1

Kalkulation

Die Hauptflächen werden in der Angebotsstruktur jetzt natürlich durchnummeriert (1, 2, 3 …) statt in 10er-Sprüngen (10, 20, 30). Sub-Positionen entsprechend (1.1, 1.2 statt 10.1, 10.2). Projekt-allgemeine Positionen schließen sich nahtlos an, statt hartem Sprung auf 100.

Neophyten-Bestände erscheinen automatisch im LV

Kalkulation

Sub-Bestände innerhalb einer Hauptfläche (z. B. Knöterich-Insel in einer Wiese) bekommen jetzt automatisch Default-Positionen mit der Frequenz der gewählten Pflegemaßnahme. Vorher mussten Positionen manuell hinzugefügt werden — die Neophyten-Bekämpfung tauchte weder im Maßnahmenplan noch in der Angebotsstruktur auf.

Mahdgut-Volumenfaktor sachlich korrigiert

Kalkulation

Der Volumenfaktor für die Bergungsmenge war auf 0,005 m³ pro m² gesetzt — der korrekte Wert ist 0,05 m³ pro m² (1 ha Wiesenschnitt ergibt etwa 50–100 m³ Frischmasse, Verdichtungsfaktor 0,5). Die Transport-Mengenangabe ist damit jetzt zehnmal höher und realistisch.

Stamm-Felder werden zuverlässig gespeichert

Fix

Bisheriger latenter Bug: Bearbeitungszeitpunkt, Wiesensubtyp, Frequenz-Override, Pflegeflächen-Toggle und Projektbeschreibung wurden vom Save-Schema still verworfen — beim nächsten Laden waren sie weg. Jetzt durchgereicht und persistiert. Ältere Eingaben sind leider nicht rekonstruierbar, neue bleiben sicher erhalten.

Stabilere „+ Position hinzufügen" auf Sub-Flächen

Fix

Wenn das automatische Neuberechnen der Generation-Tabs nach dem Anlegen einer neuen Position scheitert (z. B. wegen inkonsistenter Sub-Bestände), wird die Position trotzdem korrekt gespeichert. Vorher konnte der Insert verloren gehen. Der Nutzer kann mit „Generieren" manuell neu auslösen.

Schema-Aufräumen: Auftragnehmer, Datumsspanne, Projekt-Zuordnung

Infra

Vier neue/bestehende Datenbank-Migrationen: Sitzplatz-Limits + Pilot-Tarif raus, Auftragnehmer-Modell, Datumsspanne in der Geometrie, Auftragnehmer-Zuordnung im Projekt. Alle additiv und backward-kompatibel — alter Code bricht nicht.

v0.19.2

Fritz-Feedback Runde 4: Inline-Edit, Heckenschere, Demo-Technikauswertung

Sieben Punkte aus Fritz' Feedback-Runde nach v0.19.1. Projektnamen jetzt direkt im Header per Klick umbenennbar, ohne Umweg über die Stammdaten. „Kreiselmäher" fachlich aus den Ausführungstexten verbannt — auf Naturschutzflächen unzulässig. Demo-Projekt zeigt im Technikcheck-Tab jetzt drei Beispiel-Bieter mit den Auto-Status grün/gelb/rot, damit der Aha-Moment komplett ist. Gehölzhecke als eigener Wiesentyp ergänzt, Sommer-Pflegetermine bei Gehölzflächen lösen jetzt eine BNatSchG-Warnung aus. Motorisierte Heckenschere als Maschinenoption für Gehölzpflege. Mindestmengen für Zusammenrechen und Bergung gesenkt — kleine Unterflächen werden nicht mehr auf 2.500 m² hochgerechnet. Knöterich-Eintrag aufgeräumt: Art und Pflegeintervall sauber getrennt, das Intervall ist pro Polygon einstellbar.

Projektname direkt im Header umbenennen

Neu

Klick auf den Projekttitel oben links öffnet ein Inline-Edit-Feld. Enter speichert, Escape bricht ab. Auf Hover erscheint ein dezenter Stift als Hinweis, dass der Titel klickbar ist. Vorher musste man den Namen über die Stammdaten umweg ändern — jetzt direkt im Wizard möglich.

Demo-Technikauswertung mit drei Beispiel-Bietern

Neu

Im Demo-Projekt enthält der Technikcheck-Tab jetzt drei fiktive Bieter-Einreichungen mit unterschiedlichem Auto-Status: ein freigegebener Balkenmäher (grün), ein Sichelmähwerk mit unvollständigen Angaben (gelb, manuelles Review) und ein Schlegelmulcher mit nicht abschaltbarer Mulchfunktion (rot, automatisch unzulässig). So sieht jeder neue Nutzer auf einen Blick, wie die Plausi-Prüfung funktioniert.

Gehölzhecke als eigener Wiesentyp

Neu

Strukturreiche Hecke aus heimischen Gehölzen ist als Wiesentyp unter Gehölzflächen wählbar — separate fachliche Beschreibung, klarer Hinweis auf BNatSchG § 39 (Schnittfenster Oktober bis Februar). Praktisch für Knick-Pflege und gemischte Heckenpflanzungen.

Motorisierte Heckenschere als Maschine

Neu

Elektrische und benzinbetriebene Heckenscheren — auch Teleskop-Varianten — sind jetzt als Maschine für Gehölzflächen verfügbar. Niedriger Bodendruck, Schonungsstufe 1, geeignet für Formschnitt und Pflegeschnitt an Hecken. Erscheint im Maschinen-Multi-Select bei Gehölzflächen.

Sommer-Termine bei Gehölzflächen lösen Warnung aus

GIS

Wer für eine Gehölzfläche den Bearbeitungszeitpunkt auf „Frühsommer" oder „Spätsommer" setzt, sieht jetzt einen roten Warnhinweis: Gehölzschnitt ist gemäß BNatSchG § 39 nur vom 01. Oktober bis 28. Februar zulässig. Sommer-Termine verstoßen gegen den gesetzlichen Vogelschutz.

Kreiselmäher aus Ausführungstexten entfernt

Verbesserung

In der Pflegemahd-Beschreibung für Grünland stand bisher „Balken- oder Kreiselmäher". Kreiselmäher haben hohe Schneidengeschwindigkeit (bis 100 m/s) und sind fachlich für Naturschutzflächen ungeeignet. Der LV-Text nennt jetzt nur noch Balkenmäher (Doppelmesser- oder Fingerbalken) und macht explizit, dass Kreiselmäher und schlagende Verfahren unzulässig sind.

Mindestmengen Zusammenrechen und Bergung gesenkt

Kalkulation

Vorher hatten beide Positionen eine kaufmännische Mindestmenge von 2.500 m². Bei kleinen Sub-Flächen (z. B. 200 m² Schutzstreifen) wurde die Anzeige dadurch auf 2.500 m² hochgesetzt — verwirrend, weil die tatsächliche Fläche im LV viel kleiner war. Mindestmenge auf 100 m² gesenkt, damit die effektive Menge der echten Polygon-Größe entspricht.

Knöterich-Pflege: Art und Intervall sauber getrennt

UX

Bisher gab es zwei Knöterich-Einträge im Pflegemaßnahmen-Dropdown: „6× jährlich" und „7× jährlich (starker Bestand)". Das doppelte sich mit dem Pflegeintervall-Feld pro Polygon. Jetzt nur noch ein Eintrag „Japanischer Staudenknöterich" — die Bestandsstärke wird über das vorhandene Pflegeintervall-Feld eingestellt (1× bis 8× jährlich). Hilfetext zeigt dynamisch den Default für die gewählte Art.

v0.19.1

Org-Stammdaten, konsolidierte Settings, geteilte Berater-Inbox

Aufräum-Release nach dem Multi-Tenant-Großumbau. Organisations-Stammdaten (Anschrift, Kontaktperson, E-Mail, Telefon, USt-IdNr) liegen jetzt zentral an der Org und fließen in die KI-Generierung als Auftraggeber-Block ein — Vorlagen können einzelne Felder projekt-spezifisch überschreiben. Tier-Modell konsolidiert: PILOT als neue Stufe zwischen Free und Professional, Tier hängt einheitlich an der Org. Settings-Bereich neu strukturiert: Profil, Organisation, Vorlagen und Admin als Tabs unter „Einstellungen", Sidebar-Footer mit Avatar-Dropdown, Vorlagen und Organisation aus dem Top-Level-Menü entfernt. Admins können Mitglieder direkt zu beliebigen Orgs hinzufügen oder entfernen, und die Beraterprüfung-Inbox ist eine geteilte Admin-View — alle Admins sehen alle Anfragen, Berater-Zuweisung wird visuell markiert.

Stammdaten direkt an der Organisation

Neu

Eigener Stammdaten-Block in den Org-Einstellungen mit Anschrift, Ansprechperson, E-Mail, Telefon und USt-IdNr. Diese Daten fließen automatisch als Auftraggeber-Block in die KI-Generierung ein. Vorlagen können einzelne Felder projekt-spezifisch überschreiben — typischer Fall: pro Projekt eine andere Ansprechperson, gleicher Behörden-Header.

Tier-Modell konsolidiert: PILOT als neue Stufe

Verbesserung

Bisher gab es Tier auf User- und Org-Ebene parallel — das war inkonsistent. Jetzt hängt das Tier ausschließlich an der Organisation, mit vier Stufen: Free (ohne KI), Pilot (für Pilotkunden während Testphase), Professional, Kommunal Plus. Admin-Übersicht zeigt das Tier pro Org und erlaubt direkte Umstellung.

Settings konsolidiert: Profil, Organisation, Vorlagen, Admin als Tabs

UX

Vorher waren Vorlagen und Organisation eigene Top-Level-Items in der Sidebar — jetzt eine konsolidierte „Einstellungen"-Sektion mit Tabs. Klarere Hierarchie, weniger Sidebar-Rauschen. Admin-spezifische Sektionen (Plattform-Metriken, Org- und User-Verwaltung) sind in einem eigenen Admin-Tab gebündelt und nur für ADMIN-User sichtbar.

Avatar-Dropdown im Sidebar-Footer

UX

Statt „E-Mail + Abmelden"-Inline-Form jetzt ein Avatar-Button mit Initial oder Profilbild. Klick öffnet ein Menü mit Direktlinks zu Einstellungen, Organisation, Vorlagen und Abmelden. Kompakter, moderner, bekannte Pattern aus Notion und Linear.

Admin: Mitglieder direkt zu Orgs hinzufügen oder entfernen

Neu

In der Admin-Org-Tabelle kann jeder Admin existierende Nutzer per E-Mail direkt einer beliebigen Team-Organisation als Owner/Admin/Member/Viewer hinzufügen — ohne Invite-Flow, ohne Mail-Versand. Praktisch für manuelles Einrichten von Pilot-Kunden oder Konfliktlösung. Bestehende Memberships können per ✕-Button entfernt werden, der User landet automatisch zurück in seiner Personal-Org. Personal-Orgs sind geschützt (1:1 an User gebunden).

Beraterprüfung als geteilte Admin-Inbox

Verbesserung

Vorher sahen Admins nur Anfragen, die ihnen explizit zugewiesen waren. Jetzt sehen alle Admins alle Anfragen — Berater-Zuweisung bleibt erhalten und wird in der Liste als „mir zugewiesen", „→ Fritz" oder „unassigned" markiert. So kann jeder Admin einspringen, ohne dass etwas im Postfach versandet.

Org-Stammdaten in der LV-Generierung

KI

Die LV-Generierung nutzt jetzt Stammdaten der aktiven Org (Auftraggeber-Name, Anschrift, Ansprechperson, Kontakt). Vorlagen-Felder haben Vorrang — wenn die Vorlage eine spezielle Auftraggeber-Anschrift trägt, wird diese verwendet, sonst kommen die Org-Stammdaten zum Einsatz.

User.organization-Freitextfeld entfernt

Infra

Das alte Profil-Freitextfeld „Organisation" ist redundant, seit Memberships erstklassig modelliert sind. Wurde aus Profil-Form, Schema und DB entfernt. Admin-User-Tabelle zeigt jetzt die aktive Organisation des Nutzers (aus dem Org-Switcher) statt einer manuell getippten Bezeichnung.

v0.19.0

Multi-Tenant: Organisationen, Vorlagen, Beraterprüfung mit Threading

Naturvergabe wird Multi-Tenant. Jeder User hat eine persönliche Organisation und kann zusätzlich Team-Organisationen gründen oder als Mitglied joinen — Behörden, Planungsbüros oder Bezirksämter arbeiten so im gemeinsamen Workspace. Per Magic-Link-Einladung werden Kollegen zu einer Org hinzugefügt, ein Org-Switcher in der Sidebar wechselt zwischen den Workspaces. Neue Vorlagen-Funktion: Stamm-Defaults und organisatorische Textbausteine (Header, Footer, Zahlungsbedingungen, Datenschutz) werden einmal pro Org gepflegt und beim „Neues Projekt" automatisch übernommen. Beraterprüfung wird endgültig produktiv: persistenter Status-Banner mit Conversation-Threading, Admin-Page für Berater, Resend-Mails an beide Seiten. Plus saubere Wissensbasis: alle md-Files mit Frontmatter und Zod-Validation, Build crasht bei toten Cross-Refs.

Multi-Tenant-Organisationen mit Personal-Org-Pattern

Neu

Bei der Anmeldung wird automatisch eine persönliche Organisation angelegt — alle Projekte gehören dort hinein, niemand sieht sie außer dir. Zusätzlich kannst du Team-Organisationen gründen (z. B. „BUKEA Hamburg", „Bezirksamt Wandsbek"), Kollegen einladen und als Team gemeinsam an Projekten arbeiten. Der Org-Switcher links oben in der Sidebar wechselt zwischen den Workspaces.

Mitglieder-Einladung per E-Mail

Neu

Owner und Admins einer Team-Organisation laden Kollegen über deren E-Mail ein — auch wenn die Person noch keinen naturvergabe-Account hat. Die eingeladene Person bekommt einen Magic-Link per Mail (gültig 7 Tage), Klick führt zur Anmeldung mit Auto-Akzept der Einladung. Vier Rollen wählbar: Owner (volle Rechte), Admin (Members verwalten + Vorlagen pflegen), Mitglied (eigene Projekte), Lesezugriff.

Organisations-Verwaltung in den Einstellungen

Neu

Eigene Settings-Seite „Organisation" mit Mitglieder-Liste, offenen Einladungen (mit Resend + Cancel), Rollen-Wechsel-Dropdown, Einladungs-Form. Owner können die Organisation umbenennen oder im Notfall ganz löschen — Mitglieder werden dann auf ihre Personal-Org zurückgesetzt. Mitglieder können die Org freiwillig verlassen (außer sie sind einziger Owner).

Vorlagen-Bibliothek pro Organisation

Neu

Eigene Settings-Seite „Vorlagen": Standardprojekt-Daten und Textbausteine, die beim Anlegen eines neuen Projekts automatisch übernommen werden. Pro Organisation beliebig viele Vorlagen, eine davon als „Default" markiert. Vorlagen enthalten Stamm-Defaults (Bundesland, Pflegeziel, Pflegejahre, Auftraggeber-Daten), organisatorische Textbausteine (Header über LV, Footer, Zahlungsbedingungen, Datenschutz, Vergabevorbehalt) und eine Maschinenpark-Vorauswahl, die beim Zeichnen neuer Polygone automatisch greift.

Vorlagen-Texte fließen in die KI-Generierung ein

KI

Beim LV-Generieren bekommt die KI die Vorlagen-Texte als Kontext-Block: Auftraggeber-Daten werden 1:1 übernommen, Header/Footer/Zahlungsbedingungen/Vergabevorbehalt/Datenschutz werden als zusätzliche LV-Sections am Anfang bzw. Ende eingewoben. Das fachliche Naturschutz-Wissen kommt weiterhin aus Fritz-Wissensbasis — Vorlagen ergänzen die Sections, ersetzen sie nicht.

Beraterprüfung mit Threading — echte Conversation statt Toast

Neu

Statt einer einmaligen Anfrage gibt es jetzt einen persistenten Status-Banner oben im Projekt: „🟡 Beraterprüfung beantragt" / „🔵 Berater prüft" / „✅ Geprüft". Anfragender und Berater unterhalten sich in einer Inline-Conversation mit Reply-Form, Mail-Notifications an beide Seiten bei jeder neuen Nachricht. Berater kann den Status auf „abgeschlossen" oder „abgelehnt" setzen.

Generation-Snapshot zum Zeitpunkt der Anfrage

Neu

Wenn ein User die Beraterprüfung beantragt, wird ein Snapshot der LV gespeichert. Der Berater sieht damit immer den Stand zum Zeitpunkt der Anfrage — auch wenn der User danach noch editiert. Der Snapshot ist im Conversation-Banner aufklappbar.

Admin-Übersicht aller Beraterprüfungen

Neu

Eigene Admin-Seite „Beraterprüfungen" für Berater mit allen offenen und abgeschlossenen Anfragen aller Organisationen. Sortiert nach Status, Direktlink zum Projekt, Anzahl der Nachrichten und Anfragender pro Zeile.

Admin-Übersicht aller Teams und Organisationen

Neu

Auf der Einstellungs-Seite gibt es für Admin-User eine neue Tabelle „Teams / Organisationen" mit allen Personal- und Team-Orgs der Plattform: Tier-Auswahl (Free / Professional / Kommunal Plus), Mitglieder-Anzahl, Projekt-Anzahl, aufklappbare Mitglieder-Liste mit Rollen-Icons, Lösch-Button. Tier-Wechsel ist sofort wirksam und steuert ab Pricing-Aktivierung die Quotas.

Wissensbasis komplett auf Frontmatter umgestellt

Fachwissen

Die zentralen Markdown-Wissensdateien (Pflegemaßnahmen, Wiesentypen, Maschinen, Prüfregeln) sind jetzt eine Datei pro Eintrag mit YAML-Frontmatter und Zod-Validierung. Beim Build crasht alles, was strukturell kaputt ist — sauberer Audit-Trail per Git, eine Pflegemaßnahme pro Datei statt 42 H3-Headings in einer Riesendatei. Wiederholungen wie „mahd-2x" sind dedupliziert mit appliesTo[] und labelOverrides für flächentyp-spezifische Variationen (Streuobstwiese: „2× jährlich Juni/Juli + September").

Cross-Reference-Validation zwischen Wissensbasis-Dateien

Infra

Wenn maschinen-auswahl.md auf eine Maschine verweist, prüft der Build, dass diese in maschinen/ existiert. Wenn pflegemassnahmen einen Flächentyp im appliesTo-Feld haben, muss er ein bekannter UI-Flächentyp oder eine AreaCategory sein. Tote Refs blockieren den Build — keine stillen Inkonsistenzen mehr.

Cross-Linking aus dem Editor zu den fachlichen Detail-Seiten

UX

Bei der Wiesentyp-Auswahl im Geo-Editor erscheint ein Link „Welcher Typ passt? ↗" zur Übersicht aller 19 Wiesentypen, plus „Mehr erfahren ↗" zum gewählten Subtyp. Die Pflegemaßnahmen-Auswahl verlinkt auf die fachliche Detail-Seite (Mahd, Beweidung, Mosaikmahd, Gehölzschnitt, Entkusselung, Neophytenbekämpfung). Bei der Bundesland-Auswahl ein „Rechtsgrundlagen + zuständige Behörde ↗"-Link.

Landkreis → Bundesland Auto-Fill

Editor

Beim Eintippen eines Landkreises (z. B. „Bezirk Wandsbek", „Mainz-Bingen", „Rendsburg-Eckernförde") wird das Bundesland-Feld automatisch erkannt und gesetzt. Erkennt etwa 290 deutsche Landkreise, kreisfreie Städte und Stadtstaat-Bezirke. Manuelle Auswahl bleibt jederzeit möglich.

Flächen-Cards einklappbar

UX

Bei vielen Flächen pro Projekt wird der Editor schnell unübersichtlich. Jede Flächen-Card kann nun per Pfeil-Button im Header zusammengeklappt werden — Status-Header und Validierungs-Warnungen bleiben sichtbar, Form und Positionen werden ausgeblendet. Der Klapp-Zustand wird pro Card im Browser gemerkt und überlebt einen Reload.

v0.18.0

Geotool-Großumbau: Nettoflächen, hierarchische Nummerierung & Online-Bieter pro Jahr

Großer Schritt nach Fritz Geotool-Feedback (21 Punkte plus UX-Pack). Flächen mit Schutzstreifen, Gewässer oder Mahdgut-Ablageplätzen rechnen jetzt auf der NETTOfläche — automatischer Abzug der ausgeschlossenen Sub-Polygone von der Mähfläche. Karten-Polygone tragen hierarchische Nummern (1, 1.1, 1.2, 2 …) synchron in Karte und Liste, mit Hover-Tooltip für Name + Größe + Maßnahme. Bieter sehen bei mehrjährigen Verträgen pro Jahr eine eigene EP-Spalte (Tabellen-Layout mit Sticky-Spalten links). Neue Felder: Projektbeschreibung auf der Gesamtfläche und Bearbeitungszeitpunkt pro Polygon (Mosaikmahd / Frühsommer / Spätsommer / nur Jahr 1 / 2 / wechselnd). KI nutzt das Feld „Auffälligkeiten / Erschwernisse / Spezialtechnik" — Stichwörter wie „Kiebitz", „Feldlerche", „feucht" werden live erkannt und im LV automatisch um Schutzklauseln (Mahdverbotszeiträume, Pufferstreifen, Technik-Filter) ergänzt.

Nettoflächen-Berechnung — Mengen rechnen Brutto minus Ausschluss

GIS

Wenn innerhalb einer Mähfläche Schutzstreifen, Gewässer oder ein Ablageplatz eingezeichnet sind, werden deren Flächen automatisch abgezogen. Der Bieter bepreist nur die tatsächlich zu pflegenden Quadratmeter. In der LV-Tabelle steht dann „2.050 m² netto · 2.250 m² brutto", wenn Abzüge greifen.

Hierarchische Nummerierung in Karte und Liste

GIS

Hauptflächen tragen die Nummer 1, 2, 3 …, Unterflächen entsprechend 1.1, 1.2, 2.1 … — synchron auf der Karte (kleinere Marker für Sub-Polygone, dezenter Farbton) und in der Flächenliste. Sub-Polygone haben jetzt einen schwächeren Border-Look, damit die Hierarchie auch ohne Nummern sichtbar ist.

Hover-Tooltip auf Karten-Nummern

GIS

Wenn man mit der Maus über die grüne Nummer eines Polygons fährt, erscheint Name, Größe, Flächentyp und gewählte Pflegemaßnahme. Spart Klicks bei der Übersicht über mehrere Flächen.

Inline-Validation: Schutzflächen größer als Hauptfläche

GIS

Wenn die Summe der Ausschlussflächen größer ist als die Hauptfläche, erscheint eine rote Warnung in der Card — typischerweise ein Hinweis darauf, dass ein Sub-Polygon falsch gezeichnet wurde (außerhalb statt innerhalb).

Live-Erkennung von Artenschutz-Stichwörtern

Fachwissen

Sobald im Feld „Auffälligkeiten / Erschwernisse / Spezialtechnik" Begriffe wie Kiebitz, Wiesenbrüter, Feldlerche, Amphibien, Zauneidechse oder „feucht" / „Leichttechnik" auftauchen, zeigt die App eine grüne Bestätigung darunter („✓ Wiesenbrüter erkannt: Mahdverbot 15.03.–30.06., Mahd von innen nach außen") und die KI ergänzt im LV automatisch die passende Schutzklausel mit korrekten Mahdverbotszeiträumen.

Wissensbasis Artenschutz & Mahdverbotszeiträume

Fachwissen

Neue Sektion „Artenschutz-relevante Stichwörter und Mahdverbotszeiträume" in der KI-Wissensbasis: Wiesenbrüter, Feldlerche, Amphibien, Insekten, Reptilien, Fledermäuse, Bodenschutz — jeweils mit Zeitraum, Technik-Vorgabe und prüffester LV-Formulierung.

Erschwernis-Feld umbenannt + smarter Technikfilter

Editor

Das frühere Feld „Bestand / Aktueller Bewuchs" heißt jetzt „Auffälligkeiten / Erschwernisse / Spezialtechnik" — fokussiert auf alles was die Pflege erschwert. Wenn dort Begriffe wie „feucht", „nass", „Leichttechnik" oder „bodenschonend" erkannt werden, blendet die Maschinenauswahl automatisch alle robusten Maschinen (Schonungsstufe 3) aus.

Projektbeschreibung auf der Gesamtfläche

Editor

Auf der Projekt-Gesamtfläche (Boundary-Polygon) gibt es jetzt ein mehrzeiliges Beschreibungsfeld für Pflegeziel, Artenvorkommen, Befahrbarkeit, technische Anforderungen. Erzeugt KEINE Pflegepositionen, dient aber der KI als verbindlicher Steuerungs-Kontext für ALLE Tab-Texte.

Bearbeitungszeitpunkt pro Polygon

Editor

Pro Polygon kann jetzt ein Mosaikmahd-Modus gewählt werden: Frühsommer (bis 30.06.), Spätsommer (ab 15.08.), nur Jahr 1, nur Jahr 2 oder jährlich wechselnd. Fließt direkt in den LV-Text ein („Erste Mahd bis 30. Juni, zweite Mahd ab 15. August").

Smart Defaults für Neophyten-Ausbreitungsgebiete

Editor

Neuer Flächentyp „Ausbreitungsgebiet (Neophyten)" für Pufferzonen um Hauptbestände. Wird automatisch vorgeschlagen, sobald eine Sub-Fläche zu einem Neophyten-Parent zugeordnet wird, mit sinnvollem Default-Namen und Frequenz 4×/Jahr (statt 7× wie beim Hauptbestand).

Frequenz 7× jährlich für starke Neophyten-Bestände

Editor

Im Frequenz-Override-Dropdown gibt es jetzt explizit „7× jährlich (starker Bestand)". Bei Erkennung von „starker Bestand", „dicht" oder „massiv" im Erschwernis-Feld erscheint zusätzlich ein One-Click-Button „💡 Auf 7× erhöhen?".

Quick-Pick-Chips für Ablageplatz-Logistik

Editor

Beim Flächentyp „Ablageplatz für Mahdgut" stehen jetzt vier Click-Optionen über dem Freitextfeld: Container am Wegrand, Abrollcontainer, Abholung durch AN, Zwischenlagerung. Spart Tipparbeit bei häufigen Logistik-Setups.

Positionen jetzt auch auf Unterflächen

Editor

Sub-Polygone (z. B. ein Knöterichbestand innerhalb einer Wiese) können jetzt eigene Leistungspositionen tragen — vorher nur auf Root-Flächen möglich. Macht das Datenmodell konsistent mit der hierarchischen Pflege-Realität.

Gewässer und Mahdgut-Ablageplätze als Ausschlussflächen

GIS

Beide Flächentypen werden jetzt automatisch aus der Pflegefläche abgezogen — ihre Card-UI wird vereinfacht (kein Pflegeziel, kein Pflegeintervall, keine Maschinen). Stattdessen typabhängige Beschreibungs-Hinweise: 💧 für Gewässer („Gewässerrandstreifen 5 m beachten"), 🚛 für Ablageplätze.

Bieter-Form mit EP-Spalten pro Jahr

Export

Bei mehrjährigen Pflegeverträgen sieht der Bieter im Online-Angebotsformular pro Jahr eine eigene EP-Spalte plus eine GP-Spalte — alle Mengen pro Jahr ausgewiesen, Zwischensummen pro Jahr und Gesamtsumme automatisch berechnet. Position-Spalten links sind sticky, damit horizontaler Scroll bei vielen Jahren funktioniert.

KI berücksichtigt Erschwernisse, Bearbeitungszeitpunkt und Projektbeschreibung

KI

Die KI bekommt drei neue Kontext-Blöcke beim LV-Generieren: das Erschwernis-Feld (Stichwort-getriggerte Schutzklauseln), den Bearbeitungszeitpunkt (Mosaikmahd-Formulierungen) und die Gesamt-Projektbeschreibung (verbindlicher Kontext für alle Tab-Texte). Die LV-Texte werden dadurch deutlich projektspezifischer und reduzieren Nacharbeit beim Sachbearbeiter.

Empty-State-Tipp auf der Gesamtfläche

UX

Solange die Projektbeschreibung leer ist, erscheint ein „💡 Tipp"-Banner mit kurzer Erläuterung, was hier reinkommt und wie es die KI beeinflusst — macht das neue Feld auch für unerfahrene Sachbearbeiter selbsterklärend.

v0.17.0

SEO-Fundament, Demo-Vorlage-Mechanik & Mehrjährige LV-Aufgliederung

Großer Sichtbarkeits-Push und drei fachliche Verbesserungen aus Fritz April-Feedback Runde 3. naturvergabe.de hat jetzt 60 indexierbare URLs mit 48 fachlich kuratierten Detail-Seiten zu Wiesentypen, Pflegemaßnahmen, Bundesland-Recht und Förderwegen — voll SSG, mit Person-Schema und FAQ-JSON-LD für Google AI Overviews. In der App: Admins können jedes generierte Projekt als globale Demo-Vorlage festlegen — neue User klonen ab dann genau diese Vorlage, statt eines hardcoded Beispiels. Mengen werden bei mehrjährigen Verträgen jahresweise aufgegliedert (Bieter trägt EP pro Jahr separat ein, für Inflations-/Kostenanstieg). Polygone, die nur als Projektboundary dienen, fließen nicht mehr in die Mengen.

60 indexierbare URLs mit 48 fachlich kuratierten Themenseiten

Neu

Die Marketing-Seite ist jetzt fünf Pillar-Cluster groß: 19 Wiesentypen-Pages mit FFH-LRT-Codes (Glatthaferwiese, Magere Flachland-Mähwiese, Kalkmagerrasen, …), 8 Pflegemaßnahmen-Pages (Mahd, Beweidung, Mosaikmahd, Auf-den-Stock, Entkusselung, Neophyten, Mahdgut), 16 Bundesland-Pages mit Hauptgesetz und zuständiger Behörde, 3 Förderpfad-Pages (ELER, Vertragsnaturschutz, § 15 BNatSchG) und 2 Referenz-Case-Studies (Park Altona, BUKEA Hamburg). Jede Detail-Page mit 7-10 strukturierten Fakten + 3 unique FAQs (144 FAQ-Antworten gesamt für AI Overviews) + lateralen Links zu vier verwandten Pages.

Trust-Signale (E-E-A-T) — Author-Block + verifizierte Quellen pro Page

Neu

Jede Detail-Page zeigt unten „Fachlich kuratiert von Fritz Rudolph (Urbane Vielfalt)" mit Person-JSON-LD (für Google Knowledge Panel) und Aktualisiert-Datum. Pro Cluster eine Quellen-Sektion mit konservativ ausgewählten Outbound-Links: Wikipedia für FFH-Lebensraumtypen, gesetze-im-internet.de für BNatSchG-Paragrafen, Behörden-Hauptdomains für Landesrecht. Macht die Inhalte für Google authoritativer und für Sachbearbeiter zitierfähig.

Robots.txt mit AI-Bot-Whitelist + Sitemap mit 60 URLs

Neu

GPTBot, ClaudeBot, PerplexityBot und Google-Extended sind explizit erlaubt — wir wollen, dass die Marketing- und Detail-Inhalte in AI-Antworten landen. Token-Routes (/pruefliste/*, /angebot/*) sind explizit disallowed, damit private Bieter-Links nicht im Index landen. Sitemap.xml zählt jetzt alle 60 indexierbaren Pages.

Per-Page-Metadaten + drei JSON-LDs im Layout

Infra

Alle Marketing-Seiten haben canonical + OG-Title/Description. Im Root-Layout drei separate JSON-LDs (Organization, WebSite, SoftwareApplication mit featureList) statt der bisherigen einen großen — Google bevorzugt mehrere klare Schemas. Keywords-Meta entfernt (Google ignoriert das seit 2009).

Demo-Vorlage-Mechanismus — Admins setzen ein eigenes Projekt als Demo

Neu

Admins können jedes ihrer generierten Projekte zur globalen Demo-Vorlage erklären — über einen kleinen Button im Projekt-Header („★ Als Demo-Vorlage festlegen"). Neue User klonen beim ersten Login einen Snapshot davon (Geometrien, Positionen, Generation, Bieter-Imports). Sobald ein anderer Admin eine andere Vorlage setzt, wird die alte automatisch entmarkiert. Demo-Klone bleiben read-only, der Admin editiert sein Quell-Projekt frei.

Jahresweise LV-Aufgliederung für mehrjährige Verträge

Kalkulation

Bei Pflegejahren > 1 zeigt der Angebot-Tab jetzt einen Toggle „Pro Jahr | Gesamt". In der Pro-Jahr-Ansicht erscheint pro Vertragsjahr ein eigener Block mit denselben Positionen — Mengen + Preise gleichmäßig auf die Jahre verteilt (Pos-Nr „J1.10.1", „J2.10.1"). Bieter können so pro Jahr separate Einzelpreise eintragen, um Inflation, Lohn- und Kraftstoffanstieg zu berücksichtigen. Aggregat-Summe und Gesamt-LV bleiben kalkulatorisch identisch.

Pflegeflächen-Toggle wirkt jetzt auch auf Kalkulation

Kalkulation

Polygone, die mit „Diese Fläche wird nicht gepflegt" markiert sind (z. B. Projektboundary, Schutz-/Schonstreifen, NSG-Außengrenze), fließen jetzt komplett aus der Mengen- und Preisberechnung raus — weder in der Hauptflächen-Group noch in der Gesamt-Summe. Vorher zählten Mahd-Mengen auf solchen Flächen mit, was die LV-Mengen aufblies. Sub-Areas mit istPflegeflaeche=false (z. B. Schutzstreifen innerhalb einer Wiese) werden jetzt korrekt ausgeschlossen, ohne die Hauptfläche zu beeinflussen.

Knöterich-Mahd auch in 7×/Jahr-Variante

Fachwissen

Für starke Knöterich-Bestände gibt es jetzt im Pflegemaßnahmen-Dropdown zusätzlich „Japanischer Staudenknöterich — 7× jährlich (starker Bestand)" neben dem bestehenden 6×-Eintrag. Schnittfolge alle ca. 3 Wochen für maximale Schwächung des Rhizomsystems. Wahl zwischen 6× (mittlere Bestände) und 7× (dichte Bestände, schnellere Zurückdrängung).

Demo-Vorlage gegen versehentliches Löschen geschützt

UX

Das aktuell als Demo-Vorlage markierte Projekt zeigt ein „★ Demo-Vorlage"-Badge im Dashboard und kann nicht gelöscht werden — Lösch-Buttons sind auf der Karte und im Projekt-Header ausgeblendet. So vermeiden wir, dass die Vorlage versehentlich entfernt wird und neue User-Anmeldungen ohne Demo dastehen. Lösung: erst ein anderes Projekt als Vorlage setzen, dann ist das alte wieder löschbar.

Schema-Erweiterung für Demo-Vorlage-Mechanismus

Infra

Neue Felder: `Project.isDemoTemplate Boolean default false` und `Project.demoGenerationSnapshot Json?`. Partial Unique Index sichert, dass max ein Projekt globales Template sein kann. Generation-Snapshot wird beim Klonen befüllt, beim Generate-Klick im Demo-Klon eingespielt — kein KI-Call, reproduzierbares Demo-Erlebnis. Migration `20260427140000_demo_template`, additiv und backward-kompatibel.

v0.16.0

Online-Bieter-Form, Park-Altona-Demo & Sub-Polygon-Numbering

Bieter geben Angebote jetzt über einen Online-Link ab — kein PDF-Hin-und-Her, keine Berechnungs-Fehler im PDF-Reader. Der Auftraggeber generiert im Preisspiegel-Tab einen Link, schickt ihn an die Bieter, die füllen das Angebot direkt im Browser aus (mit Live-Berechnung von Summe, MWST und Brutto), und die Einreichung landet sofort als BidSubmission im Preisspiegel. Außerdem: das Demo-Beispielprojekt ist jetzt der Park Altona (statt NSG Höltigbaum) — fachlich besser kuratiert mit echten Hamburg-Geoportal-Polygonen, Bezirksamt-Altona als AG und Wildbienen-Pflegezielen. Sub-Polygon-Auto-Naming nummeriert jetzt korrekt durch.

Online-Angebotsformular für Bieter

Neu

Im Preisspiegel-Tab gibt es einen neuen Bereich „Online-Bieterlink": Mit einem Klick wird ein anonymer Link generiert (z. B. naturvergabe.de/angebot/abc123), den Sie an die Bieter weiterleiten. Bieter öffnen den Link ohne Login, sehen Ihre LV-Positionen und tragen pro Position ihren Einzelpreis ein. Gesamtpreis je Position, Netto-Summe, MWST (19 %) und Brutto rechnen sich live im Browser aus. Submit erzeugt eine Einreichung mit allen Stammdaten (Firma, USt-ID, Adresse, Telefon, Bietergemeinschaft, Nachunternehmer, Skonto, Bemerkungen) — direkt im Preisspiegel sichtbar.

Token-Verwaltung mit 60-Tage-TTL und Revoke

Neu

Im Preisspiegel-Tab oben gibt es eine kompakte Karte zur Link-Verwaltung: Link erzeugen, in die Zwischenablage kopieren, Ablaufdatum sehen (60 Tage Default) und auf Knopfdruck widerrufen. Widerrufene Links zeigen Bietern „Link ungültig oder abgelaufen". Pro Token Rate-Limit von 10 Einreichungen pro Stunde gegen Spam.

Bieter-Form mit Live-Auto-Berechnung im Browser

UX

Anders als das PDF-Angebotsformular (wo Chrome/Safari/Preview die Auto-Berechnung der AcroForm-Felder oft nicht ausführen) berechnet die Online-Form alle Summen direkt im Browser — Gesamtpreis je Zeile, Zwischensumme netto, MWST 19 %, Brutto. Bieter sehen sofort was sie eintragen, keine Überraschungen beim Submit. Pflichtfelder sind markiert, Validierung erfolgt vor Absenden.

Park Altona als neues Demo-Projekt (statt NSG Höltigbaum)

Neu

Das Beispielprojekt für neue Nutzer ist jetzt der Park Altona — Hamburger Bezirksamt-Pflegeprojekt mit echten Polygonen aus dem Hamburg-Geoportal (LGV/WFS), realistischer Auftraggeber (Bezirksamt Altona statt UNB), Pflegeziele rund um Verkehrssicherung, Müll/Hundekot-Management und Wildbienen-Förderung. Fachlich besser kuratiert und für Hamburger Sachbearbeiter sofort vertraut. Bestehende Höltigbaum-Demos werden bei der nächsten Anmeldung durch Park-Altona-Demos ersetzt.

Sub-Polygone werden durchnummeriert

GIS

Wenn Sie mehrere Sub-Areas (z. B. Schutzstreifen, Brombeere, Rückzugsfläche) zur selben Hauptfläche hinzufügen und der Default-Name greift, wird jetzt automatisch durchnummeriert: „Wiese – Unterfläche 1", „Wiese – Unterfläche 2", „Wiese – Unterfläche 3". Vorher hatten alle Sub-Areas denselben Namen. Manuell überschreibbar wie immer.

Schema-Erweiterung für Online-Bieter-Workflow

Infra

Neue Felder: `Project.bidToken` (UNIQUE, 60-Tage TTL), `Project.bidTokenExpires`. `BidSubmission` erweitert um `submittedVia` (online-form / xml-import / manual), `bidderEmail/Phone/Address/UstId`, `subtotalNetto`, `mwstEur`, `totalBrutto`, `skonto`, `bietergemeinschaft` (Json), `nachunternehmer` (Json), `notes`. Migration `20260427130000_bid_online_form` — additive, nullable, backward-kompatibel.

Cleanup-Skript für alte Höltigbaum-Demos

Infra

Einmaliges Migrations-Skript `scripts/cleanup-old-hoeltigbaum-demos.ts` entfernt bestehende Höltigbaum-Demo-Projekte und setzt User auf `demoSeeded=false`, sodass beim nächsten Login der neue Park-Altona-Demo angelegt wird. Eigene (Nicht-Demo) Projekte bleiben unangetastet.

v0.15.2

Technikliste, Wiesentypen-Subkategorien, Pflege-Toggle

Fritz hat seine vollständige Technikliste und 19 Wiesentypen-Subkategorien geliefert — beide jetzt in der App. Maschinen werden nach Schonungsstufe (schonend / bedingt / robust) gekennzeichnet, Wiesen lassen sich fachlich verfeinern (Glatthaferwiese, Pfeifengraswiese, Borstgrasrasen etc.). Außerdem ein Pflege-Toggle pro Polygon: NSG-Außengrenzen oder Projekt-Boundaries werden nicht mehr als Pflegeflächen gerechnet, KI-Prüfung meldet keine False-Positives mehr für Gesamtfläche-vs-Mahdfläche-Diskrepanzen.

Technikliste mit Schonungsstufen aufgenommen

Fachwissen

Fritz' Technikliste vom 24.04. ist jetzt komplett in maschinen.md übernommen — pro Maschine ein neues Feld Schonungsstufe (1=besonders schonend, 2=bedingt geeignet, 3=robust/Sonderfälle). Im Maschinen-Picker erscheinen passende Badges („schonend" grün, „robust" warning) damit Sachbearbeiter sofort sehen welche Geräte für die jeweilige Wiese empfohlen sind.

19 Wiesentypen-Subkategorien (FFH-LRT-konform)

Fachwissen

Aus der Hauptkategorie heraus lässt sich der Wiesentyp jetzt fachlich verfeinern: Glatthaferwiese, Magere Flachland-Mähwiese, Berg-Mähwiese, Goldhaferwiese, Bärwurz-Goldhaferwiese, Salbei-Glatthaferwiese, Wiesenknopf-Silgenwiese, Sumpfdotterblumenwiese, Kohldistelwiese, Pfeifengraswiese, Brenndolden-Auenwiese, Borstgrasrasen, Kalk-Halbtrocken-/Trockenrasen, Sandtrockenrasen, Steppenrasen, Stromtalwiese, Streuobstwiese, Salzwiese. Optional, mit FFH-Lebensraum-Typ-Bezug. Pflege durch Fritz direkt in `wiesentypen.md`.

Pflege-Toggle pro Polygon

Editor

Pro Polygon ein neues Häkchen „Diese Fläche wird selbst gepflegt". Default an. Deaktivieren z. B. bei NSG-Außengrenze oder Projekt-Boundary, die nur als Referenzfläche gezeichnet ist. Deaktivierte Flächen bekommen keine Default-Pflegepositionen, KI-Prüfung respektiert das Flag und meldet keinen False-Positive mehr für Gesamtfläche-vs-Mahdfläche-Diskrepanzen.

Konsistenzprüfung ignoriert Gesamtfläche-Mengen

KI

Die KI-Konsistenzprüfung vergleicht die Projekt-Gesamtfläche nicht mehr mit den Positions-Mengen. Begründung: die Gesamtfläche ist häufig die Schutzgebiets-/Projekt-Boundary, die nicht selbst gepflegt wird — die Mahdfläche ist davon nur ein Ausschnitt. Diese Diskrepanz ist normal und wurde bisher fälschlich als Widerspruch gemeldet.

Schema-Erweiterungen für Wiesen-Subtyp + Pflege-Toggle

Infra

`Geometry.wiesenSubType String?` und `Geometry.istPflegeflaeche Boolean default true` — beide additiv und backward-kompatibel. Neue Migration `20260427120000_wiesen_subtyp_pflege_toggle`.

Build-Step für Wiesentypen

Infra

`generate-knowledge.ts` generiert jetzt auch `src/lib/generated/wiesentypen.ts` aus `wiesentypen.md` — client-safe Konstante, Fritz pflegt nur die MD und Browser-Code kann direkt darauf zugreifen.

Dependencies aktualisiert

Infra

Patch-Versionen gezogen, Tests + Build durchgängig grün.

v0.15.1

Fritz April-Feedback Runde 2 — Inline-Edit-Fixes & PDF-Layout

Sammelrelease auf Basis Fritz Feedback Runde 2: Zahleneingabe-Bug behoben (Up/Down-Pfeile gehen, Focus bleibt erhalten), Einzelpreis ist jetzt direkt editierbar (eigenes Override-Feld), Position hinzufügen funktioniert auch bei Unterflächen, neuer Pflegeintervall-Dropdown bei Neophyten, PDF-Bieter-Layout aufgeräumt mit Zeilenumbruch + Bietergemeinschaft + Nachunternehmer-Feldern. Plus zwei Branding-Fixes und Mindestmenge bei Mahd-Balken raus.

Zahleneingabe in Inline-Edit korrekt

Fix

Menge, EP und GP-Override sind jetzt echte Number-Inputs mit Up/Down-Pfeilen. Der Cursor bleibt während des Tippens im Feld und springt nicht mehr nach jeder Ziffer raus.

Einzelpreis direkt editierbar

Verbesserung

In Angebots- und Kostenstruktur lässt sich der EP jetzt im Inline-Edit direkt überschreiben — Default kommt weiterhin aus der Wissensbasis (positionen.md), der User-Wert wird in einem eigenen Override-Feld gespeichert. GP rechnet sich aus EP × Menge automatisch neu.

Mindestmenge bei „Mahd mit Balkentechnik" entfernt

Fix

Der 2.500 m² Mindestansatz wurde aus positionen.md entfernt — kleine Pflegeflächen wurden sonst überteuert kalkuliert. Auswirkung: Mahd-Position rechnet jetzt mit der echten Fläche.

Position hinzufügen auch bei Unterflächen

Verbesserung

Beim „+ Position hinzufügen" erscheint jetzt ein zusätzlicher Dropdown „Auf Fläche", in dem die Hauptfläche und alle Sub-Areas (Brombeere, Schutzstreifen, Rückzug etc.) auswählbar sind. So lassen sich Pflegepositionen gezielt einer Teilfläche zuordnen.

Pflegeintervall überschreibbar bei Neophyten

Neu

Beim Flächentyp „Neophyten" gibt es jetzt zwei Felder: Neophytenart (Knöterich, Bärenklau, Springkraut, Goldrute) und Pflegeintervall (1×–8× pro Jahr). Die Art legt einen Default fest (z. B. Knöterich = 6×), den der User pro Bestand anpassen kann.

PDF-Bieter-Layout aufgeräumt

Export

Spaltenbreiten neu kalibriert, lange Leistungs-Bezeichnungen werden jetzt umgebrochen statt mit „…" abgeschnitten. GP-Spalte verschiebt sich nicht mehr über den Rand. A4-konform mit kleineren Innenabständen für mehr Platz.

PDF-Angebotsformular: Bietergemeinschaft + Nachunternehmer

Export

Neue Pflichtangaben im Bieter-PDF: Ja/Nein-Auswahl für Bietergemeinschaft (mit Hauptbieter und Mitbietern) und Nachunternehmer (3 Slots mit Firma + betreffender Position). Beide Bereiche als ausfüllbare Form-Felder direkt im PDF.

Branding-Texte entschärft

UX

„Kuratierte Regeln von Fritz" → neutralere Beschreibung „fachliche Konsistenzregeln direkt im Browser". „KI-Cross-Check" → „Konsistenzprüfung (KI)" — ohne den irreführenden Token-Hinweis.

Dependencies aktualisiert

Infra

Patch- und Minor-Updates für Biome, lucide-react, Stripe gezogen. Tests + Build durchgängig grün.

Neue Schema-Felder

Infra

`ProjectPosition.unitPriceOverrideEur` (EP-Override) und `Geometry.frequenzOverride` (Pflegeintervall pro Polygon) — beide nullable, additive Migration ohne Datenverlust.

v0.15.0

Editierbare Positionen, Cross-Tab-Sync, Bericht-Lifecycle & Bieter-Export

Massives Update auf Basis Fritz April-Feedback. Positionen sind jetzt überall (Angebot, Kosten, Maßnahmen) inline editierbar mit hierarchischer Struktur (Hauptfläche → Maßnahmen → Zwischensumme), Cross-Tab-Sync und Auto-Renumbering. Förder-Höhe ist anpassbar. Der Projektbericht hat einen neuen Lifecycle (Ausgeschrieben → In Ausführung → Abgeschlossen) mit Maske für IST-Daten und Nachträge. Neuer Word-Export nur für Bieter (ohne Preise + Angebotsformular). Plus zahlreiche Wissensbasis- und Berechnungsfixes.

Hierarchische Positions-Struktur in allen Generierungs-Tabs

Neu

Positionen werden jetzt pro Hauptfläche gruppiert (Pos. 10 → 10.1, 10.2, …) mit Zwischensumme. Sub-Areas werden zu ihrer Hauptfläche zugeordnet. Projekt-allgemeine Positionen (Anfahrt, Dokumentation) erscheinen separat als Pos. 100. Identische Struktur in Angebotsstruktur, Kostenübersicht und Maßnahmenplan.

Inline-Edit für Preise, Mengen, Texte und Hinweise

Neu

Jede Position lässt sich direkt in der Tabelle bearbeiten — Bezeichnung, Menge, Preis-Override, eigener Beschreibungstext und Hinweis. Ein Klick auf „✎ Bearbeiten" öffnet die Felder, Speichern persistiert sofort. Schluss mit dem alten Vollformular-Edit-Mode für jeden Tab.

Cross-Tab-Synchronisation aller Position-Änderungen

Neu

Wer im Kosten-Tab eine Position löscht oder den Preis ändert, sieht die Änderung sofort auch in Angebotsstruktur, Maßnahmenplan und Word-Export. Single Source of Truth: alles läuft über den Datenbank-Datensatz, der bei jedem Edit neu komputiert wird.

Auto-Renumbering nach Lösch-Operationen

Neu

Wird eine Position gelöscht, passt sich die Nummerierung der nachfolgenden Positionen automatisch an — sowohl in der UI als auch im Word-Export. Lückenlose, fortlaufende Pos.-Nummern.

Position hinzufügen direkt in der Hierarchie

Neu

Pro Hauptfläche und für „Projekt-Allgemein" gibt es einen „+ Position hinzufügen"-Button — Auswahl aus dem Wissensbasis-Katalog (Mahd, Bergung, Transport, Anfahrt, Dokumentation usw.), Menge wird bei flächenbezogenen Positionen aus der Karte übernommen.

Förder-Höhe direkt im Förderantrag-Tab editierbar

Neu

Die beantragte Förderaufwendung ist jetzt anpassbar — entweder als Prozentsatz (Default 80 %) oder als manueller €-Betrag. Override schlägt prozentuale Berechnung. Änderung sofort im Förderantragstext + Word-Export sichtbar.

Projektbericht-Lifecycle mit IST-Daten-Maske

Neu

Status-Workflow „Ausgeschrieben → In Ausführung → Abgeschlossen" mit Setzen-Buttons im Bericht-Tab. Im Status „In Ausführung" öffnet sich eine Maske für Sachbearbeiter:innen: Datum, Witterung, allgemeine Bemerkung, IST-Status pro Position (voll/teilweise/nicht erbracht) inkl. IST-Menge und IST-Betrag, sowie Nachträge mit Bezeichnung und Begründung. Berechnete IST-Gesamtkosten unten.

Word-Export für Auftragnehmer (ohne Preise + Angebotsformular)

Export

Im Export-Dropdown gibt es eine zweite Variante: „DOCX für Auftragnehmer". Identische Vergabeunterlagen, aber EP/GP-Spalten sind leer und am Ende kommt ein vorformuliertes Angebotsformular (Bieter-Stammdaten, Angebotssumme netto/brutto, Skonto, Unterschrift). Bieter füllt das in Word direkt aus.

Mahdgut-Volumenfaktor korrigiert (10× zu hoch)

Fix

Der Volumenfaktor für die Position „Abtransport Mahdgut" war auf 0,05 m³/m² gesetzt — korrekt sind 0,005 m³/m². Bei 10.000 m² Fläche ergibt das jetzt 50 m³ Mahdgut statt 500 m³, mit entsprechend angepassten Transport- und Entsorgungskosten.

Unterflächen werden nicht mehr zur Hauptfläche addiert

Fix

Im Karten-Editor und im Flächendaten-Formular wurden Unterflächen (z. B. Schutzstreifen innerhalb einer Wiese) zur Gesamtfläche dazugerechnet — obwohl sie schon Teil der Hauptfläche sind. Jetzt werden nur Top-Level-Polygone summiert.

BUKEA statt „Untere Naturschutzbehörde" im Hamburg-Demo

Fix

Im Höltigbaum-Demo wurde mehrfach die Untere Naturschutzbehörde genannt — die gibt es in Hamburg als Stadtstaat aber nicht. Korrekte Behörde ist die Behörde für Umwelt, Klima, Energie und Agrar (BUKEA). Korrigiert in Leistungsbeschreibung Punkt 3, Maßnahme M7 und Maßnahmenplan-Hinweis.

„Aufbereiter / Conditioner" → nur noch „Aufbereiter"

Fix

In der Wissensbasis (Naturschutz-Technik), in der Technikprüfliste und im Word-Export wurde die Bezeichnung „Conditioner" entfernt — den Begriff gibt es im deutschen Sprachgebrauch der Pflegetechnik nicht.

Tableiste sticky und responsive bei schmalen Viewports

UX

Die Tab-Leiste in der Generierungsansicht (Leistungsbeschreibung, Karte, Angebot, Kosten, …) bleibt jetzt beim Scrollen oben sichtbar. Bei kleinen Browserfenstern stapeln sich die Tabs in mehreren Zeilen statt horizontal zu scrollen.

Bezirk statt Landkreis im Projektformular für Stadtstaaten

UX

Wenn als Bundesland Hamburg, Berlin oder Bremen ausgewählt ist, ändert sich das Label „Standort / Landkreis" zu „Standort / Bezirk" mit passenden Platzhaltern (Wandsbek, Pankow, Stadt Bremen). Der Hilfetext erklärt die Stadtstaaten-Spezifik.

Hinweis-Banner zur Technikprüfliste im Generierungs-Tab

UX

Ein dismissable Tipp oben in der Generierungs-Ansicht stellt die Technikprüfliste vor: „Bieter müssen ihre eingesetzte Technik dokumentieren — Mulcher, Schlegel und Aufbereiter sind raus." Der Hinweis verweist auf den Auswertungs-Schritt mit dem öffentlichen Bieter-Link.

Auto-Naming für Unterflächen nach der Hauptfläche

UX

Wenn eine Sub-Area einer Hauptfläche zugeordnet wird (Dropdown „Teilfläche von") UND der aktuelle Name noch der generische Default ist, wird automatisch „<Hauptflächenname> – Unterfläche" vorgeschlagen. Manuell überschreibbar wie immer.

Bessere Fehlermeldung bei fehlender Flächengröße

UX

Statt eines stillen Validation-Errors verweist die Hint-Zeile beim Flächengröße-Feld jetzt aktiv aufs Karten-Tool: „Am einfachsten direkt im Karten-Tab einzeichnen, dann wird sie automatisch übernommen."

Anfahrtsweg-Beschreibung mit konkreten Hinweis-Beispielen

UX

Das Beschaffenheits-Feld bei Anfahrtswegen schlägt jetzt konkret vor, was reingehört: Breite, Untergrund (Asphalt/Schotter/Feldweg), Zustand (eben/matschig/steil), Hindernisse (Bach, Graben, Schranke), zulässige Tonnage. Hilft Bietern bei der Anfahrt-Planung.

Satellitenansicht als Standard-Kartenlayer

GIS

Der Karten-Editor öffnet jetzt mit Satellit als Default-Basemap statt OpenStreetMap. Bessere Orientierung beim Einzeichnen der Pflegeflächen. Über den Layer-Switcher links oben weiterhin auf OSM umschaltbar (für Wege/Straßen/Hindernisse).

Neuer Flächentyp „Ablageplatz für Mahdgut"

GIS

Logistik-Fläche zum Einzeichnen, wo Mahdgut zwischengelagert wird — kein Pflegeobjekt. Wird im LV als Sammel-/Ablageplatz aufgeführt, ohne Standard-Mahd-Position.

Neue DB-Felder für Förder-Konfig, IST-Bericht und Position-Overrides

Infra

`Project.foerderProzent`, `Project.foerderBetragOverrideEur`, `Project.bericht`, `ProjectPosition.customDescription`, `ProjectPosition.customHinweis`, `Generation.groups`, `Generation.totals` plus zwei neue Status-Werte (`inProgress`, `completed`). Migration `20260425010000_fritz_april_v015`.

v0.14.0

Onboarding-Flow, Tags & Smart-Filter fürs Dashboard

Komplettes Onboarding-Erlebnis für neue Nutzer — vom ersten Login bis zum ersten fertigen LV in unter drei Minuten. Das Demo-Projekt lässt sich jetzt selbst generieren (simuliert, ohne KI-Kosten), durchgängig mit Welcome-Dialog, kontextbewusstem Banner und einem cleanen Progress-Screen. Das Dashboard bekommt eine neue Such-, Filter- und Tag-Leiste mit Pills-in-Input-Pattern, und Projekte sind frei mit Tags kategorisierbar.

Geführter Onboarding-Flow für neue Nutzer

Neu

Beim ersten Login begrüßt ein Willkommens-Dialog: „In 3 Minuten zu Ihrem ersten Leistungsverzeichnis". Ein Klick öffnet das vorbereitete Beispielprojekt NSG Höltigbaum — alle Flächen, Pflegeziele und Positionen sind schon eingerichtet. Ein kontextbewusster Banner oben leitet durch: vor Generierung als Call-to-Action mit Tab-Hinweis, nach Generierung als Recap mit Export-Empfehlung.

Beispielprojekt selbst generieren (ohne KI-Kosten)

Neu

Das Demo-Projekt kommt jetzt ohne vorbereitetes Leistungsverzeichnis — stattdessen drücken Sie selbst auf „Leistung erzeugen" und erleben den kompletten Generierungs-Flow. In ca. 6 Sekunden wird der Höltigbaum-Snapshot geladen, ohne KI-Call und ohne Kosten. So bekommen Sie genau dasselbe Aha-Erlebnis wie später mit eigenen Projekten.

Tags für Projekte — inline auf der Projekt-Card

Neu

Jedes Projekt kann jetzt mit Tags kategorisiert werden (z. B. „2026", „Hamburg", „Feuchtwiese"). Tags setzen Sie direkt auf der Dashboard-Kachel mit einem kleinen „+"-Button — kein Umweg ins Detail nötig. Autocomplete schlägt bereits vergebene Tags aus Ihren anderen Projekten vor. Bis zu 10 Tags pro Projekt, lowercase + automatisch dedupliziert.

Smart-Filter-Leiste fürs Dashboard

Neu

Eine einzige Leiste oben fasst Suche, Status- und Tag-Filter zusammen. Tippen sucht live nach Name, Dokument, Landkreis oder Tag. Ein „+"-Button öffnet ein Dropdown mit allen Filterquellen; aktive Filter erscheinen als Pills direkt im Input. Backspace entfernt die letzte Pill, Tastaturbedienung ist durchgängig. Zusätzlich ein Sortier-Dropdown (Neueste / Älteste / Name A–Z / Z–A).

Sonstiger Flächentyp mit Freitext-Maßnahme

Neu

Neuer Flächentyp „Sonstiges" für Sonderfälle außerhalb der Standardkategorien. Bei Auswahl wird das Pflegemaßnahme-Dropdown zu einem Freitext-Feld — Sie beschreiben die Maßnahme in eigenen Worten (Zeitpunkt, Technik, Besonderheiten). Für alles, wofür es keinen spezifischen Flächentyp gibt.

Armenische Brombeere als Neophyten-Art

Neu

Die Armenische Brombeere (Rubus armeniacus, Himalaya-Brombeere) ist wieder als wählbare Neophyten-Art im Geotool. Deutlich aggressiver als heimische Brombeerarten — eigener Pflegetext mit Zeitpunkten (Mai/Juni/September), Hinweis auf Wurzelstock-Nachbehandlung und Samenverbreitung über Vögel.

Schritt-für-Schritt-Anleitung im Karten-Tab

UX

Der Karten-Tab in Schritt 2 „Flächendaten" bekommt eine strukturierte 3-Punkte-Anleitung (Polygon-Tool wählen → Eckpunkte setzen → Name eintragen) mit Hinweis auf die Hamburg-Fachlayer. Zusätzlich sind die Sub-Tabs „Formular" und „Karte" als klar sichtbare Segmented-Control umgesetzt — mit Eyebrow-Label „Wählen Sie, wie Sie die Flächen erfassen", Icons und Subtitles.

Cleaner Generierungs-Dialog

UX

Statt eines kleinen Inline-Spinners erscheint während der LV-Generierung jetzt ein vollflächiger Progress-Dialog, der verhindert, dass Sie die Seite verlassen. Spinner, Titel, dünne Progress-Bar und rotierende Status-Texte („Fachliche Textbausteine werden zusammengestellt" → „Pflegemaßnahmen werden abgeleitet" → …). Nach erfolgreicher Generierung kommt ein dezenter Erfolgs-Toast „So entsteht ein Leistungsverzeichnis — gleich mit eigenen Flächen versuchen".

Einheitliche Empty-States & kontextuelle Hinweise

UX

Alle leeren Bereiche (Dashboard ohne Projekte, Karten-Tab ohne Flächen, Preisspiegel ohne Angebote, Technikcheck ohne Einreichungen, LV-Tab vor der Generierung) nutzen jetzt ein einheitliches Muster: Icon, Pain-bewusste Überschrift, Outcome-orientierter Body, konkrete nächste Aktion. Field-Hints unter den Formularfeldern sind durchgängig vereinheitlicht, Ton siezend.

Demo-Projekt voll bearbeitbar & löschbar

UX

Das Beispielprojekt verhält sich jetzt wie ein echtes Projekt: löschen und wieder anlegen, Tags setzen, Flächen bearbeiten. Wenn Sie den kompletten Flow nochmal testen wollen, löschen Sie einfach Ihren Account und legen ihn neu an — dann kommt Welcome-Dialog + frisches Demo wieder.

Status-Badge „Analysiert" neutral statt Warnung-Orange

Verbesserung

Die Farbe der Statusanzeige wurde neu sortiert: Entwurf / Hochgeladen / Analysiert sind neutral-grau, Generiert ist grün (Erfolg), Exportiert ist Primärfarbe (erledigt). Vorher sah „Analysiert" wie eine Warnung aus, obwohl es ein normaler Fortschrittsschritt ist.

Datum durchgängig deutsch formatiert

Verbesserung

Projekt-Karten zeigen das Anlage-Datum jetzt als „23. Apr. 2026" statt „2026-04-23" (ISO). Konsistent zum restlichen deutschen UI.

Button „Leistung erzeugen" statt „Leistungsbeschreibung generieren"

Verbesserung

Die Beschriftung des zentralen Generate-Buttons wurde gekürzt und mit dem Tab-Namen „Generierung" harmonisiert. Konsistent mit allen Verweisen in Onboarding-Texten und Hinweisen.

Demo-Projekt: Flächentyp, Bundesland & Pflegeziel korrekt gesetzt

Fix

Im NSG-Höltigbaum-Beispiel waren die Dropdown-Werte für Flächentyp, Bundesland und Pflegeziel nicht mit den gültigen Keys gemappt — die Dropdowns zeigten „Bitte wählen". Jetzt vorausgefüllt mit Extensivwiese, Hamburg und Erhaltungspflege.

Fehlerzustand beim Generieren wird sichtbar gemeldet

Fix

Schlägt der KI-Call bei der LV-Generierung fehl, erscheint jetzt ein roter Fehler-Banner oben mit der Fehlermeldung und einem Hinweis aufs Feedback-Widget. Vorher verschwand der Progress-Dialog stillschweigend und der User wusste nicht, was los ist.

Loading-Skeleton beim Projekt-Öffnen

Fix

Bei Navigation vom Dashboard oder Welcome-Dialog ins Projekt erscheint jetzt ein Skeleton-Platzhalter (Breadcrumb / Titel / Tabs / Content) statt eines kurzen weißen Blitzes, bis die Seite vollständig geladen ist.

Zentrale Copy-Datei fürs Onboarding

Infra

Alle Texte im Onboarding-Flow (Welcome-Dialog, Banner, Empty-States, Field-Hints, Feedback-Widget, Generierungs-Dialog) liegen jetzt in einer einzigen TypeScript-Datei. Step-Referenzen („Wechseln Sie zu Generierung (Schritt 3)") nutzen eine zentrale Wizard-Konfiguration — ändert sich ein Tab-Name oder eine Reihenfolge, wird an EINER Stelle angepasst und alle Texte stimmen automatisch.

v0.13.0

Pflegeziele, Inline-Positionen & Flächenatlas-Redesign

Großes Fachupdate nach Fritz-Review: vier neue Pflegeziele (Nährstoffreduktion, Strukturanreicherung, Biotopvernetzung, Neuanlage), Beweidung als eigenes Pflegeverfahren, ein überarbeiteter Flächenatlas mit sauberen Karten, und die Leistungspositionen wandern direkt in die jeweilige Flächen-Card. Zusätzlich komplett überarbeitete Datenschutz- und AGB-Texte, ein neues Feedback-Widget mit Direkt-Versand, und die Flächeneinheit ist jetzt durchgängig m² (kein ha mehr).

Vier neue Pflegeziele

Neu

Das Pflegeziel-Dropdown umfasst jetzt zusätzlich Nährstoffreduktion (Aushagerung mit zwingendem Mahdgutabtransport), Strukturanreicherung (Förderung kleinräumiger Strukturvielfalt), Biotopvernetzung (Verbindung isolierter Lebensräume) und Neuanlage (Herstellung eines neuen Biotops aus Ackerfläche oder anderem Ausgangsstandort). Jedes Ziel hat einen eigenen LV-Textbaustein mit fachlich präziser Formulierung.

Beweidung als eigenständiges Pflegeverfahren

Neu

Beweidung ist jetzt eine wählbare Pflegemaßnahme neben Mahd — differenziert nach Flächentyp (Wiese, Feuchtwiese, Magerrasen, Streuobstwiese) mit fachlichen Hinweisen zu Besatzdichte, Tierart und Stammschutz. Das Feld heißt nun „Pflegeverfahren" statt „Mahdregime", weil Beweidung keine Mahd ist.

Förder-Textbausteine für ELER, Vertragsnaturschutz und Ausgleichsmaßnahmen

Neu

Neue Fach-Dokumentation zu den drei zentralen Finanzierungswegen naturschutzfachlicher Pflege: ELER/AUKM, Vertragsnaturschutz (landesspezifisch) und Ausgleichsmaßnahmen nach § 15 BNatSchG. Pro Förderweg: Zweck, Rechtsgrundlage, Fördergegenstand, Antragsweg und Kombinierbarkeit. Basis für die Förderberatung und das Matching im LV-Generator.

Feedback-Widget direkt in der App

Neu

Unten rechts in der App gibt es jetzt einen kleinen, dezenten Feedback-Button. Ein Klick öffnet ein Inline-Formular — Ihre Nachricht landet direkt bei Devin und Fritz (per E-Mail + persistiert in der Datenbank). Schneller Weg für Bug-Meldungen, Wünsche und fachliches Feedback ohne den Umweg über einen Mail-Client.

Drohne im Geräte-Katalog (Kartierung & Monitoring)

Neu

Drohnen sind jetzt als eigenständiges Werkzeug geführt — nicht als Pflegegerät, sondern für Luftbildkartierung, Bestandskontrolle, Neophyten-Früherkennung und Erfolgskontrolle nach Maßnahmen. Mit Preisfaktor 0, weil Drohnen keine Pflege ausführen — sie gehen in die Dokumentation und Projektvorbereitung.

Leistungspositionen direkt in jeder Flächen-Card

UX

Der separate „Positionen"-Tab entfällt. Stattdessen sehen Sie die Leistungspositionen jetzt direkt am Ende jeder Flächen-Card — mit Zwischensumme pro Fläche. Projekt-weite Positionen (Anfahrt, Artenschutzbegehung, Dokumentation) stehen als eigene Card darunter, die Gesamt-Summe inkl. Risikozuschlag als markante Leiste am Ende. „Weiter zum Formular" sitzt jetzt unten rechts am Ende der Seite.

Flächenatlas mit Rahmen, Kopfzeile und sauberen Karten

UX

Jede Flächen-Kachel bekommt eine Kopfzeile (Flächennummer · Name · Maßnahme) und einen Footer-Streifen mit „naturvergabe". Die Karten-Snapshots zeigen nicht mehr die Zeichen-Werkzeuge oder das Leaflet-Badge — die Bilder sind sauber und präsentationsfähig. Die OpenStreetMap-Attribution erscheint als dezenter Quellenvermerk unter dem Atlas (Lizenzpflicht erfüllt).

Dashboard-Kachel zeigt Landkreis + Bundesland

UX

Die Projekt-Kacheln auf dem Dashboard zeigen jetzt „Landkreis, Bundesland" kombiniert (z. B. „Mainz-Bingen, Rheinland-Pfalz"). Wenn kein Landkreis eingetragen ist, steht nur das Bundesland. Drei Projekte im gleichen Bundesland sind so sofort unterscheidbar.

Anfahrtswege-Sektion deutlich prominenter

UX

Die Sektion „Anfahrtswege & Zuwegung" war vorher klein und kursiv — leicht zu übersehen. Jetzt mit größerer, fettgesetzter Überschrift und klarer Einleitung. Anfahrtswege sind für viele Bieter eine der wichtigsten Kontext-Informationen.

Einheit Hektar durchgängig raus — alles in m²

Kalkulation

Die Mischeinheit ha/m² war verwirrend und GAEB-untypisch. Alle Flächenpositionen rechnen und dokumentieren jetzt in m² (z. B. Mahd 0,052 €/m² statt 520 €/ha). Endpreise sind identisch, aber die Einheit ist vergabekonform und passt zu GAEB. Anzeigen wie „1,5 ha" wurden entsprechend auf „15.000 m²" umgestellt.

Mahdgut-Entsorgung mit automatischer Mengenrechnung

Kalkulation

Der Abtransport + Verwertung vom Mahdgut berechnet die Menge jetzt automatisch aus der Fläche (Faustzahl 0,05 m³ Mahdgut pro m² gemähter Fläche, editierbar im Fachkatalog) und multipliziert sie mit Frequenz und Laufzeit. Einheitspreis auf 35 €/m³ aktualisiert. Der User kann die vorgeschlagene Menge jederzeit überschreiben, wenn das Projekt spezifische Erfahrungswerte hat.

Schlegelmäher-Warnhinweis

Verbesserung

Der Schlegelmäher (Mulchgerät) ist fachlich in den meisten naturschutzfachlichen Pflegeprojekten ungeeignet — er zerkleinert Mahdgut, reichert Nährstoffe an und schädigt Bodenfauna und Kleintiere. Die Geräte-Beschreibung enthält jetzt einen deutlichen Warnhinweis, die Eignung wurde auf Wald-/Gehölzrand und klar begründete Sonderfälle eingeschränkt.

Projektbericht-Templates erweitert

Verbesserung

Das Projektbericht-Template hat drei neue Abschnitte: Witterung und Boden (Niederschlag, Temperatur, Tragfähigkeit während der Arbeiten), Abweichungen vom Pflegeplan (inkl. Begründung und UNB-Abstimmung) und Fotodokumentation (georeferenzierte Fotos, optional Drohnenaufnahmen). Basis für Nachweise bei Fördermittelgebern und Auftraggebern.

Terminologie vereinheitlicht

Verbesserung

Der interne Begriff „Parent-Fläche" heißt jetzt überall „Gesamtfläche". Die roten Teilbereiche bei Mosaikmahd wurden von „Ausschlussbereich" in „Rückzugsfläche" umbenannt — mit Zusatzhinweis, dass auch „Altgrasfläche" oder „ungemähte Teilfläche" fachlich synonym sind. Verständlicher für alle, die nicht aus dem Entwickler-Slang kommen.

Datenschutz und AGB komplett überarbeitet

Infra

Die Datenschutzerklärung und die AGB sind auf aktuellem Stand. Verarbeitung der KI-Analyse via Google Gemini ist transparent beschrieben, alle Auftragsverarbeiter sind aufgeführt (Vercel, Neon, Google, Resend) mit Link zum jeweiligen DPA. Korrekte Angaben zu Server-Standorten (Neon AWS Frankfurt), zum EU-US Data Privacy Framework, zu den erhobenen Datenkategorien und zur Speicherdauer. Keine irreführenden Versprechen mehr.

Prisma 7.8.0 + konsolidierte Migrations-Historie

Infra

Die Datenbank-Migrations-Historie wurde auf einen sauberen Baseline-Stand konsolidiert (aus 8 historischen Migration-Files wurde ein klar definierter Init-Zustand). Prisma Client + CLI sind auf 7.8.0 aktualisiert. Ab jetzt läuft der Standard-Migration-Workflow wieder sauber — kein Drift mehr zwischen Schema-Dateien und Datenbank.

Landkreis ist optional

Fix

Das Feld „Standort / Landkreis" war als Pflichtfeld markiert (Sternchen). Ist es nicht — das Bundesland-Dropdown steuert das Landesmodul im LV, der Landkreis ist ein reines Anzeigefeld im LV-Header. Sternchen entfernt, Hilfstext klarer formuliert.

Generierung läuft auch bei Projekten mit vielen Flächen durch

Fix

Bei Projekten mit 3+ größeren Flächen kam es vereinzelt zu Transaction-Timeouts beim Generieren (Datenbank-Operation brauchte länger als die 5-Sekunden-Standardgrenze). Timeout großzügig auf 30 Sekunden hochgesetzt, damit auch Projekte mit zehn oder mehr Polygonen sauber durchlaufen.

v0.12.0

Einzelpositions-Kalkulation & erweiterte Wissensbasis

Die Preiskalkulation wurde vollständig auf das Einzelpositions-Modell umgestellt: jede LV-Zeile ist jetzt eine eigene Position mit Einheit, Menge, Basispreis und optionalen Zuschlägen — statt einer starren €/ha-Pauschale mit Maschinenfaktor. Zusätzlich: neue fachliche Einleitungstexte für alle Wiesen-Typen, Gewässerrand als eigener Flächentyp, artspezifische Neophyten-Module und ein Bundesland-Dropdown mit Hamburg-Landesmodul.

Einzelpositions-Modell statt flächenbasierter Pauschale

Kalkulation

Jede LV-Zeile ist jetzt eine eigene Position mit klarer Einheit — Stk, lfd.m, m², ha, m³, Einsatz, Pauschale, h oder Tag. Jede Fläche bekommt automatisch die vier Mahdschritte (Mahd, Bergung, Transport, Entsorgung); pro Fläche lassen sich zusätzliche Positionen wie Obstbaumschnitt, Heckenpflege, Beweidung, Entbuschung oder Nachsaat anlegen. Zuschläge wie „Steillage +20 %" oder „Kletterer +40 %" werden additiv auf den Basispreis geschlagen. Mindestansätze pro Position und pro Projekt werden automatisch berücksichtigt.

Neuer „Positionen"-Tab im Flächenschritt

UX

Im Schritt „Flächendaten" gibt es einen dritten Sub-Tab „Positionen". Pro Fläche sehen Sie alle LV-Zeilen mit Menge, Einheit und Zuschlägen, können einzelne Schritte deaktivieren, Mengen überschreiben und weitere Positionen aus dem Katalog hinzufügen. Oben rechts eine Live-Kostenanzeige mit Netto, Risikozuschlag und Gesamtsumme.

Maschinenfaktor entfällt — ersetzt durch Positionen und Zuschläge

Kalkulation

Der globale Maschinenfaktor (Balkenmäher 1,0 × Kletterer 2,5) war fachlich unscharf. Er wurde ersetzt durch klar abgegrenzte Positionen („Mahd mit Einachsbalkenmäher" vs. „Handmahd mit Sense") und Erschwernis-Zuschläge („Steillage +20 %", „Vernässter Standort +20 %"). Transparenter fürs LV und besser für die GAEB-Vergabe.

Gewässerrand / Uferbereiche als eigener Flächentyp

Neu

Gewässerränder und Uferzonen haben jetzt einen eigenen LV-Textbaustein, eigene Ausführungstexte (Pflegezeitfenster außerhalb der Brutzeit, Schutz der Böschungsoberkante) und eigene Grundpreise. Vorher liefen Gewässer unter „Sonderstandort" — fachlich zu grob.

Neophytenbekämpfung artspezifisch

Neu

Statt eines generischen Neophyten-Regimes gibt es jetzt vier Prio-Arten mit eigenen Schnittzeitpunkten, Intervallen und Entsorgungsregeln: Japanischer Staudenknöterich (6×/Jahr, gesicherte thermische Entsorgung zwingend), Riesen-Bärenklau (PSA-Pflicht wegen phototoxischem Saft), Drüsiges Springkraut (vor Samenreife) und Kanadische Goldrute. Plus Fallback „sonstige invasive Problempflanzen".

Neue Flächentyp-Einleitungen

Verbesserung

Die Einleitungstexte für Grünland, Feuchtwiese, Magerrasen und Streuobstwiese waren bisher fast identisch (Copy-Paste-Rest). Jetzt hat jeder Typ eine eigene, fachlich fundierte Einleitung — Standortcharakter, Pflegeerfordernisse, typische Risiken, Pflegeziel.

Bundesland-Auswahl steuert das Landesmodul

Neu

Im Flächendaten-Formular gibt es ein neues Feld „Bundesland" mit allen 16 Ländern. Bei Auswahl wird das bundeslandspezifische Landesmodul ins LV gezogen. Hamburg ist fachlich ausgearbeitet (HmbBNatSchAG, Biotopschutz nach § 14, Landschaftsprogramm, BUKEA-Vorgaben) — die anderen 15 sind als Templates vorbereitet.

GAEB-Export mit Standard-Einheiten

Export

Die neuen Einheiten werden beim GAEB-Export automatisch auf die Standard-Kürzel gemappt (Stk→Stck, lfd.m→m, m²→m2, m³→m3, Einsatz/Pauschale→psch, Tag→d). Kompatibel mit ORCA AVA, California.pro, RIB iTWO, Nevaris.

Positions-Katalog als editierbare Markdown-Datei

Infra

Alle Positionen mit Einheiten, Basispreisen und Zuschlägen liegen in `src/content/knowledge/positionen.md`. Änderungen an Preisen oder neue Positionen erscheinen beim nächsten Speichern automatisch im LV — ohne Deploy.

v0.11.0

Echte Accounts, KI-gestützte Pipeline & Wissensbasis als Markdown

Der größte Umbau seit Start: naturvergabe hat jetzt echte Nutzer-Konten mit Google-Login oder Anmeldelink per E-Mail, eine echte Datenbank (Neon Postgres), eine überarbeitete KI-Pipeline mit Gemini 2.5 Flash für Dokumentenanalyse und LV-Text-Generierung, und die gesamte Fachwissens-Basis (Pflegetexte, Preise, Maschinen, Prüfregeln) liegt jetzt als Markdown-Dateien, die Fritz direkt auf GitHub editieren kann.

Anmeldung mit Google oder per Anmeldelink

Neu

Echte Nutzer-Konten mit zwei Login-Wegen: Google-OAuth oder Magic-Link per E-Mail an die eigene Adresse. Kein Passwort mehr, keine Registrierung. Beim allerersten Login wird automatisch das NSG-Höltigbaum-Beispielprojekt ins Konto geladen, damit man direkt etwas zum Anschauen hat.

Persönliches Dashboard mit eigenen Projekten

Neu

Alle Projekte werden jetzt dauerhaft unter dem eigenen Konto gespeichert — Ausschreibungen, Flächen, Analysen, Preisspiegel, alles bleibt erhalten. Projekte sind privat und nur für den eigenen Account sichtbar.

Einstellungen-Seite mit Profil und KI-Nutzungsstatistik

Neu

Neue Einstellungen-Seite: Profil bearbeiten (Organisation, Funktion), Login-Infos einsehen, KI-Nutzungs-Statistik (wie viele Ausschreibungen analysiert, wie viele LVs generiert) und Konto-Löschung mit Typ-Bestätigung.

KI-Analyse von PDF/Word-Ausschreibungen überarbeitet

Verbesserung

Ausschreibungsdokumente werden jetzt direkt per Google Gemini 2.5 Flash analysiert — ohne Umweg über einen separaten Parser. In einem Schritt werden Volltext, Anforderungen, Risiken und Stammdaten (Flächentyp, Pflegeziel, Pflegezeitraum, Landkreis) extrahiert. Duplikat-Erkennung verhindert unnötige Re-Analysen nach Re-Upload derselben Datei.

LV-Texte werden KI-generiert — Preise bleiben deterministisch

Verbesserung

Die Leistungsbeschreibung, Maßnahmen, Förderabschnitte und Berichtabschnitte werden jetzt per KI aus Fritz' Fachleitfaden geschrieben — klingt flüssiger und besser passend zum konkreten Projekt. Die Preise bleiben aber wie gewohnt deterministisch aus der Preisliste — keine KI-Preise, immer nachvollziehbar.

LV-Systemprüfung — Regel-Check und KI-Cross-Check

Neu

Neue Prüfen-Funktion in der LV-Ansicht: Die „Regel-Prüfung" wendet 13 deterministische Fachregeln an (z. B. Mahdhöhe plausibel, Feuchtwiesen-Bodendruck ok, Gehölzschnitt nur im Winterhalbjahr). Der „KI-Cross-Check" sucht gezielt Widersprüche zwischen den LV-Sektionen (z. B. Mahd im Juni erwähnt, aber Ausführungstext sagt September).

Fachwissen als Markdown-Dateien im Repo

Infra

Alle fachlichen Textbausteine, Preise, Maschinenprofile, Pflegemaßnahmen und Prüfregeln liegen jetzt als Markdown-Dateien in `src/content/knowledge/`. Fritz kann sie direkt auf GitHub editieren (Stift-Button), die Änderungen sind beim nächsten LV sofort wirksam. Inkl. 4 LV-Grundtexten, 6 Flächentyp-Bausteinen, 5 Pflegezielen, 24 Ausführungstexten, 9 Maschinen, 13 Prüfregeln.

Technikprüfliste mit echtem Online-Workflow

Verbesserung

Die Technikprüfliste gibt es jetzt nicht nur als Word-Anlage, sondern auch online: der Auftraggeber kopiert einen Link aus dem Dashboard, schickt ihn an die Bieter, die füllen die Prüfliste im Browser aus — das Dashboard zeigt alle Einreichungen sortiert mit Automatik-Bewertung (grün/gelb/rot) und Freigabe-Feld. Inkl. Rate-Limit, Token-Ablauf nach 60 Tagen und Revoke-Möglichkeit.

Demo-Projekt als „Beispiel" markiert

UX

Das automatisch angelegte Höltigbaum-Projekt bekommt jetzt ein „Beispiel"-Badge und ist schreibgeschützt — damit man sofort sieht, was die Demo kann, aber nicht aus Versehen was ändert. Eigene Projekte erstellt man wie gewohnt neu.

Sicherheits-Härtung auf allen Eingängen

Infra

Alle Server-Aktionen haben jetzt Zod-Validierung, Dokument-Uploads sind auf 10 MB begrenzt, die Pruefliste-Token haben Rate-Limit und Ablaufdatum, und alle Datenbankzugriffe laufen über einen Connection-Pool (Neon Serverless Pooler). Dateien werden per SHA-256-Hash gegen Duplikate geprüft.

Anmeldelink-E-Mail im naturvergabe-Design

Design

Der Anmeldelink per E-Mail kommt jetzt mit echtem Branding — Logo-Badge, Forest-Green-Button, saubere Typografie. Inklusive „Mail verschickt"-Seite mit Hinweis auf Spam-Ordner.

v0.10.2

Mosaikmahd & Technikprüfliste (Anlage)

Zwei direkte Antworten auf Fritz' Wünsche aus dem 20.04.-Meeting: Mosaikmahd mit Schutz-/Rückzugsstreifen im Geotool, und eine zweistufige Technikprüfliste als Anlage im Word-Export für Bieter (Teil A) und Auftraggeber (Teil B).

Mosaikmahd — Bereiche von der Mahd ausnehmen

GIS

Innerhalb einer Wiese können jetzt Schutzstreifen (z. B. für Bodenbrüter) oder Rückzugsflächen (z. B. Altgras für Insekten-Überwinterung) als Teilflächen markiert werden, die von der Mahd ausgenommen sind. Neues Pflegeziel „Mosaikmahd". Die Ausschlussbereiche erscheinen auf der Karte in rot-gestrichelter Darstellung, im Flächenatlas mit 🚫-Markierung und im Word-Export in einer eigenen Tabelle „Ausschlussbereiche" unter dem Maßnahmenplan.

Technikprüfliste als Anlage im Word-Dokument

Export

Am Ende jeder Ausschreibung landet jetzt eine zweistufige Technikprüfliste (Teil A zum Ausfüllen durch den Bieter pro Maschine, Teil B für die interne Bewertung durch den Auftraggeber). Inklusive 5 Standardklauseln (Verpflichtende Einreichung, Prüfbarkeit, Vertragsbindung, Gerätewechsel, Ausschluss ungeeigneter Technik) und einer 10-Punkte-Prüfcheckliste mit Gesamturteil-Feld. Basiert 1:1 auf Fritz' Fach-Vorlage.

LV-Textbaustein für Mosaikmahd

Kalkulation

Neuer vorformulierter Pflegeziel-Textbaustein für Mosaikmahd — erklärt Bietern die räumliche Aussparung und den Umgang mit Schutz-/Rückzugsflächen in der Ausführung.

Ausschlussbereiche haben eigenes UI-Verhalten

UX

Wenn eine Teilfläche als „Schutzstreifen" oder „Rückzugsfläche" markiert wird, blendet die Flächenliste Pflegeziel, Maßnahme und Technik aus (da nicht gepflegt wird) und zeigt stattdessen eine rote Info-Box „Von der Mahd ausgenommen" mit Beschreibungsfeld für den Zweck.

Saubere Nummerierung — Sub-Areas ohne eigene Nummer

GIS

Nur Haupt-Flächen bekommen jetzt auf der Karte eine Nummer (1, 2, 3…). Sub-Areas wie Brombeerbestände oder Ausschlussbereiche sind Sub-Features ihrer Parent-Fläche und erscheinen in der Flächenliste eingerückt, aber ohne eigene Nummerierung — sauberer in der Darstellung.

Demo-Projekt erweitert — Mosaikmahd live sehen

Neu

Die Hauptwiese im NSG-Höltigbaum-Demo hat jetzt zwei Ausschlussbereiche: einen Schutzstreifen am Südrand (Pufferzone für die Feldlerche) und eine Rückzugsfläche im Nordwesten (Altgrasstreifen für Insekten). Man sieht das Pattern sofort in Aktion, ohne selber zeichnen zu müssen.

v0.10.1

NSG Höltigbaum, Anfahrtswege & echte Per-Area-Bilder

Das Demo-Projekt liegt jetzt im echten NSG Höltigbaum (Hamburg-Rahlstedt) statt in einem fiktiven Rheinhessen. Anfahrtswege können als Linien gezeichnet werden — als reine Kontextinfo für den Bieter. Teilflächen innerhalb einer Fläche werden korrekt als Sub-Features geführt, nicht als eigene Flächen. Außerdem viele kleine UX-Schliffe und ein Fix für die Tabellen im Word-Export.

Anfahrtswege als Linien zeichenbar

Neu

In der Karten-Toolbar steht jetzt ein zusätzliches Werkzeug zum Zeichnen von Linien (Polylines). Diese sind ausschließlich für Anfahrtswege gedacht — sie zeigen dem Bieter wie er zur Pflegefläche kommt, welche Technik passt und wie weit die Anfahrt ist. Werden nicht gepreist, sondern als Kontextinfo dargestellt mit Länge in Metern + Beschaffenheits-Hinweis (z. B. „Schotter, befahrbar bis 7,5 t").

Demo-Projekt im echten NSG Höltigbaum (Hamburg)

Neu

Das bisherige fiktive „NSG Rheinhessen" wurde durch ein reales Beispiel ersetzt: NSG Höltigbaum im Hamburger Stadtteil Rahlstedt — ehemaliger Truppenübungsplatz, ca. 280 ha, mit echten Koordinaten. Enthält Hauptwiese (Glatthaferwiese), Heidefläche Nord, Sandtrockenrasen am Stellmoorer Tunneltal und einen Anfahrtsweg vom Parkplatz Eichberg.

Teilflächen innerhalb einer Fläche

Neu

Eine Wiese mit Brombeerbestand drin wird jetzt korrekt als EINE Fläche mit einer Teilfläche behandelt — nicht als zwei getrennte Flächen. Im Flächenatlas erscheint die Teilfläche als Sub-Feature unter der Parent-Card mit eigener Pflegemaßnahme. Im DOCX-Export bekommt jede Parent-Seite einen „Teilflächen"-Block mit den enthaltenen Sub-Areas. Im Demo: 0,35 ha Brombeerbestand innerhalb der 5,8 ha Hauptwiese.

Sub-Areas zählen nicht als eigene Flächen

GIS

Counter, Tabellen, Per-Area-Gallery und Flächenübersicht filtern Sub-Areas (Polygone mit gesetztem Parent) konsistent heraus. Der „N Flächen · Gesamt"-Counter zeigt jetzt nur die echten Top-Level-Flächen.

Per-Area-Bilder in der Leistungsbeschreibung

Export

Statt eines großen Übersichtsbilds (das bei weit auseinanderliegenden Flächen unbrauchbar wird) erscheint im Word-Export jetzt pro Polygon ein kompaktes Zoom-Thumbnail mit Nummer und Name. Die ausführlichen Einzelseiten im Flächenatlas-Kapitel am Ende des Dokuments bleiben unverändert.

Per-Area-Bilder funktionieren jetzt für alle Projekte

Export

Die Capture-Logik wurde zentralisiert: ein hidden off-screen MapEditor in der Projektseite. Damit werden Einzelbilder pro Polygon auch für Demo-Projekte und für Flächen, die nach der Generierung hinzugefügt wurden, korrekt gefangen. Vor dem DOCX-Export wird automatisch geprüft ob Bilder fehlen und nachgeladen.

Word-Tabellen sind nicht mehr kaputt

Fix

Die Tabellen im DOCX-Export (Flächenübersicht, Angebotsstruktur, Maßnahmenplan, Flächenatlas-Metadaten) hatten nur Prozent-Breiten auf Cell-Level, die Word ignoriert hat — die Spalten kollabierten auf ein Zeichen pro Zeile. Jetzt: explizite columnWidths in DXA-Einheiten und FIXED Layout. Tabellen sind sauber lesbar.

Pflegeziel ist optional

UX

Das Pflegeziel-Feld im Flächendaten-Formular ist jetzt nicht mehr Pflichtfeld. Wer schnell einen Entwurf anlegen will, muss nur noch Flächentyp, Größe und Standort angeben.

Karte-Tab in Schritt 3 zeigt immer den Flächenatlas

UX

Bisher zeigte der Karte-Tab in der Generierung bei Demo-Projekten oder nachträglich hinzugefügten Flächen nur einen Platzhalter. Jetzt wird die Live-Karte automatisch im Hintergrund eingefangen und der Flächenatlas zeigt echte Bilder pro Polygon ohne dass der User zurück zu Schritt 2 muss.

v0.10.0

Schritt 4 Auswertung, Preisspiegel & Design-System

Der komplette Vergabelebenszyklus ist jetzt abgebildet: Vom ersten Entwurf über die Generierung bis zur Auswertung der eingegangenen Bieter-Angebote. Der Preisspiegel vergleicht mehrere GAEB-X83-Angebote automatisch mit Ihrem Richtpreis. Dazu ein App-weites Design-System (einheitliche Buttons, Dropdowns, sticky Speicher-Leiste), ein Flächenatlas mit Einzelbild pro Fläche im DOCX-Export und hundert kleine UX-Verbesserungen.

Schritt 4: Auswertung mit Preisspiegel

Neu

Der Wizard hat jetzt einen vierten Schritt. Sobald die Bieter auf Ihre Ausschreibung (GAEB X81) geantwortet haben, laden Sie die zurückgesendeten X83-Dateien hoch — Naturvergabe matcht die Positionen automatisch gegen Ihren Kostenanschlag und erzeugt einen Preisspiegel mit Delta-Anzeige (grün = günstiger, rot = teurer, Schwelle ±5 %). Mehrere Bieter gleichzeitig, inkl. Summenzeile und Gesamtabweichung.

Flächenatlas — eine Seite pro Fläche im DOCX-Export

Neu

Am Ende des Word-Dokuments gibt es jetzt einen neuen Abschnitt „Flächenatlas". Jede Fläche bekommt eine eigene Seite mit einem gezoomten Kartenausschnitt und einer kompakten Metadaten-Tabelle (Typ, Größe, Pflegeziel, Maßnahme, Bestand, Technik). Perfekt für Ortstermine und Abrechnung.

Demo-Projekt „Streuobstwiese Bergstraße"

Neu

Ein drittes Demo-Projekt zeigt den kompletten End-to-End-Flow: LV generiert, exportiert, drei Bieter haben per GAEB X83 geantwortet, Preisspiegel ist befüllt. So sehen Sie die Auswertung sofort ohne eigenes Projekt anzulegen.

Ein Exportieren-Dropdown für alles

Export

Oben rechts in jedem Projekt: ein einziger „Exportieren"-Button mit Dropdown — DOCX, GAEB X81 (Ausschreibung ohne Preise), GAEB X82 (Kostenanschlag mit Preisen), GeoJSON (WGS 84) und GeoJSON (ETRS89 / UTM 32N für KfW 444). Der separate „Geodaten-Assistent" ist aufgelöst — alle Formate leben jetzt dort wo sie gebraucht werden.

GAEB-Standard korrigiert (X81 / X82 / X83)

Export

Die bisherige „DA 90"-Variante war nicht Teil des offiziellen GAEB-Standards. Jetzt liefern wir die korrekten Datenphasen: X81 ohne Preise (für den Versand an Bieter), X82 mit Richtpreisen (für interne Kalkulation), und wir verstehen X83 (Angebote zurück vom Bieter) beim Import. Kompatibel mit ORCA AVA, California.pro, RIB iTWO, Nevaris.

Design-System: einheitliche Buttons & Formulare

Design

Überall in der App gilt jetzt das gleiche Button-Styleset (primary, secondary, ghost, danger — in zwei Größen, mit Icon-Support). Buttons werden NIE mehr wegen unvollständiger Eingaben grau-geschaltet — stattdessen bekommen Pflichtfelder einen roten Rahmen und der User sieht eine konkrete Liste „noch auszufüllender Felder". Beamten-freundlich: klar benannt statt rätselhaft deaktiviert.

Einheitliche Seitenbreite über die ganze App

Design

Alle Seiten (Dashboard, Projekt, Neues Projekt, Einstellungen) verwenden jetzt die gleiche Container-Breite und Paddings. Mobile und Desktop konsistent, kein Springen zwischen Seiten mehr.

Eine Schriftart app-weit (Inter)

Design

Die App hatte vorher einen Mix aus Inter (Body) und Lora (Überschriften). Das ist jetzt durchgängig Inter — klarer, schneller im Laden, konsistenter im Erscheinungsbild.

Sticky Speicher-Leiste für ungesicherte Änderungen

UX

Sobald Sie an einer Fläche, einer Position oder einem Formular etwas ändern, erscheint unten mittig eine Action-Bar: „Ungespeicherte Änderungen · Verwerfen · Speichern". Gleiches Muster überall — in der Karte (Fritz-Wunsch), im LV-Editor und auf dem Geodaten-Entwurf.

Flächendaten-Formular mit klarer Pflichtfeld-Führung

UX

Pflichtfelder sind mit rotem Sternchen markiert, jedes Feld hat einen Hilfetext darunter („Bestimmt die Pflegemaßnahmen", „Für regionale Preisanpassung" …). Klickt man Generieren mit leeren Feldern, erscheint eine konkrete Fehlerbox mit Liste und das erste fehlende Feld bekommt automatisch Fokus + Scroll.

Aufgeräumte Map-Toolbar

UX

Die Karte hat jetzt eine kompakte einzelne Toolbar-Zeile: Suchfeld · Basiskarte-Dropdown (Radio-Auswahl mit Haken) · Layer-Dropdown (Multi-Select mit Zähl-Badge) · Vollbild-Icon. Vorher waren das bis zu sieben verstreute Buttons.

Aufgeräumte Projekt-Kopfzeile

UX

Projekt-Titel, Status-Badge und Meta-Info links, ein einzelner Aktions-Bereich rechts mit Prüfen-Dropdown und dem Exportieren-Button. Der vorherige Mix aus drei Button-Clustern in verschiedenen Stilen ist weg.

Flächenatlas statt Live-Karte in Schritt 3

GIS

Der Karte-Tab in Schritt 3 (Generierung) ist jetzt read-only und zeigt das Ergebnis so, wie es auch im DOCX landet: Gesamtübersicht oben, darunter pro Fläche eine Card mit Einzelkarte und Metadaten. Zum Bearbeiten geht man zurück zu Schritt 2 — klarer Flow statt zwei Editier-Stellen.

Automatische Flächen-Einzelbilder

GIS

Naturvergabe zoomt jeden Polygon automatisch an, nimmt einen PNG-Schnappschuss auf und verwendet diesen sowohl im Karte-Tab als auch im DOCX-Flächenatlas. Passiert transparent im Hintergrund ohne dass man etwas anklicken muss.

Alles in m² — konsistent überall

Kalkulation

Ha-Angaben sind aus allen user-facing Bereichen verschwunden: Flächengrößen, Positionspreise, Textbausteine im Bericht, Analyse-Anforderungen und Platzhalter im Formular. Eine Einheit, keine Verwirrung mehr.

Neues Projekt bekommt Status „Entwurf"

Verbesserung

Ein frisch angelegtes Projekt ohne hochgeladenes Dokument zeigt jetzt „Entwurf" statt fälschlicherweise „Hochgeladen". Der Status-Flow ist jetzt ehrlich: Entwurf → Hochgeladen → Analysiert → Generiert → Exportiert.

Libs aktualisiert

Infra

@geoman-io/leaflet-geoman-free auf 2.19.3 und @anthropic-ai/sdk auf 0.88.0 angehoben.

Karte lädt jetzt immer — auch bei Demo-Projekten

Fix

Vorher zeigte der Karte-Tab in Schritt 3 bei Demo-Projekten oder nachträglich hinzugefügten Flächen nur einen Platzhalter „Kartenaufnahme noch nicht verfügbar". Jetzt wird bei fehlendem Snapshot automatisch eine Live-Karte erfasst und das Bild nachgereicht, ohne dass man zurück zu Schritt 2 muss.

v0.9.0

Pflegemaßnahmen & Maschinen pro Flächentyp

Die Flächenerfassung versteht jetzt, dass ein Gehölz andere Pflegemaßnahmen braucht als eine Feuchtwiese — und dass man auf einer Fläche oft mehrere Maschinen parallel einsetzt. Außerdem: neues Logo, eigene Social-Share-Bilder für jede Seite, Self-Hosted Fonts.

Pflegemaßnahme passt sich dem Flächentyp an

GIS

Wer ein Gehölz erfasst, bekommt jetzt „Gehölzschnitt / Auf-den-Stock-Setzen / Entkusselung / Rodung" zur Auswahl. Wer eine Brombeerfläche erfasst, bekommt „2× Erhalt / 4× Schwächung / 5–7× Vergrämung". Grünland bleibt bei 1× / 2× / 3× jährlich. Das Feld heißt nicht mehr starr „Mahdregime", sondern passt sich an den Typ an.

Mehrfachauswahl bei Maschinen

GIS

Auf einer Fläche kommen oft mehrere Geräte zum Einsatz — z. B. Balkenmäher plus Bandrechen auf bodenschonenden Stachelwalzen. Das lässt sich jetzt direkt pro Fläche als Mehrfachauswahl abbilden, statt sich auf ein einziges Gerät festlegen zu müssen.

Maschinen-Liste filtert sich automatisch nach Flächentyp

GIS

Bei Gehölz erscheinen Motorsäge, Hubsteiger und Baumkletterer. Bei Wiesen werden diese ausgeblendet und stattdessen Balkenmäher, Leichttechnik und Kommunaltechnik angezeigt. So sieht man nur noch sinnvolle Optionen.

Kreiselmäher entfernt, Kommunaltechnik ergänzt

Kalkulation

Der „Kreiselmäher" passt fachlich nicht zur Pflege von Naturschutzflächen und wurde aus der Liste entfernt. Neu dabei sind „Kommunaltechnik" (für Grünflächenpflege in öffentlichen Bereichen) und „Bandrechen auf Stachelwalzen" (für bodenschonende Bergung). Schlegelmäher bleibt.

Realistische Preise für Brombeere und Neophyten

Kalkulation

Bei Brombeerbestand und Neophyten wirkt sich die gewählte Strategie direkt auf den Preis aus: Vergrämung (5–7× pro Jahr) kostet entsprechend mehr als reiner Erhalt (2× pro Jahr). Bisher wurden diese Flächen pauschal wie Grünland behandelt.

Neues Logo und Favicon

Design

naturvergabe hat jetzt ein eigenes, minimal gezeichnetes Logo: ein weißes lowercase „n" auf dem vertrauten Forest-Green. Das neue Mark ist in allen Größen (Browser-Tab, iOS Home-Screen, PWA, Android-Install) konsistent.

Eigene Social-Share-Bilder pro Seite

Design

Wer einen Link zu /preise, /roadmap oder /neuigkeiten in WhatsApp, Slack oder LinkedIn teilt, bekommt jetzt eine eigene Vorschau-Grafik mit passendem Inhalt — keine generischen Platzhalter mehr. Die Neuigkeiten-Grafik aktualisiert sich automatisch bei jedem neuen Release.

Roadmap und Neuigkeiten überall im Footer

UX

Der Footer hat jetzt auf jeder Seite zwei Gruppen von Links: Produkt (Roadmap, Neuigkeiten) und rechtliche Hinweise (Impressum, Datenschutz, AGB). Vorher war die Roadmap nur über die Startseite erreichbar.

Self-hosted Fonts (zero CLS)

Infra

Inter und Lora werden jetzt direkt von naturvergabe.de ausgeliefert statt über Google. Das bedeutet schnellere Ladezeiten, kein Flash-of-Unstyled-Text mehr, keine Third-Party-Requests und bessere DSGVO-Konformität.

PWA-Manifest und Apple Touch Icon

Infra

naturvergabe lässt sich jetzt auf iOS und Android sauber als Web-App auf dem Home-Screen speichern — mit eigenem Icon, Namen und Theme-Color. Hintergrund: vollständige Metadata-Konfiguration für Suchmaschinen und App-Installs.

v0.8.0

Mehrere Flächen, bessere Preise, neue Formate

Großes Update auf Basis von Feedback von Fritz Rudolph (Urbane Vielfalt) und Kolja Bodendieck (BUKEA Hamburg). Die Plattform kann jetzt mehrere Flächen in einem Leistungsverzeichnis bündeln, hat realistische Marktpreise und exportiert direkt in das GAEB-Standardformat für öffentliche Ausschreibungen.

Mehrere Flächen in einem Leistungsverzeichnis

Neu

Zeichne mehrere Polygone auf der Karte und fasse sie in einem gemeinsamen LV zusammen. Jede Fläche bekommt eigene Positionen (1.1, 1.2, … / 2.1, 2.2, …), Fixkosten wie Artenschutzbegehung und Dokumentation werden projektweit nur einmal berechnet.

Pflege-Details pro Fläche

Neu

Pflegeziel (Erhaltung, Entwicklung, Offenhaltung, Artenschutz), Mahdregime (1×, 2×, 3× jährlich), Maschinenauswahl und aktueller Bestand (z. B. Brombeere, Neophyten) lassen sich pro Fläche einzeln festlegen und fließen automatisch in das LV ein.

Maschinenprofile mit Preisfaktor

Neu

Fünf Maschinenprofile – Standard, Leichttechnik, Großflächenmäher, Schlegelmäher, Handarbeit – mit hinterlegtem Preisfaktor und Bodendruck-Grenzwert. Pro Fläche wählbar.

GAEB DA 90 (XML 3.2) Export

Export

Leistungsverzeichnisse lassen sich jetzt als GAEB-Datei (.X90) exportieren — das Standardformat für öffentliche Ausschreibungen. Direkt importierbar in ORCA AVA, California.pro, RIB iTWO und Nevaris.

Kartenbild im DOCX-Export

Export

Das exportierte Word-Dokument enthält jetzt eine automatische Kartenübersicht mit allen eingezeichneten Flächen — ideal für Vergabeunterlagen und Behördenvorlagen.

Flächenübersicht mit Flächennummern

Export

Jede Fläche bekommt eine Nummer, die sowohl auf der Karte, in der Flächenliste, im Leistungsverzeichnis als auch im DOCX-Export konsistent referenziert wird.

Realistische Marktpreise 2026

Kalkulation

Die Preiskalkulation wurde an aktuelle Marktpreise angepasst. Eine Feuchtwiese kostet jetzt rund 1.100 €/ha/Jahr statt überhöhter Pauschalwerte.

Transparente Preisherleitung

Kalkulation

Jede Position in der Kostenübersicht ist als strukturierte Tabelle sichtbar. Ein Klappfeld „Wie kommen diese Preise zustande?" erklärt Basispreis, Mahdregime, Fixkosten, Risikozuschlag und regionale Abweichung.

Ausführungstexte pro LV-Position

Kalkulation

Zu jeder Position gibt es einen konkreten Ausführungstext mit Eckpunkten: Zeitpunkt, Technik, Bodendruck-Grenzwert, Mahdhöhe, Bundesnaturschutzgesetz-Fristen. Insgesamt über 25 fachliche Textbausteine.

Vollbildmodus für die Karte

GIS

Klick auf „Vollbild" vergrößert die Karte auf die gesamte Bildschirmfläche. Alle Pflegedaten bleiben editierbar. Escape beendet den Vollbildmodus.

Komfortable Flächenerfassung

UX

Neu gezeichnete Flächen werden automatisch ins Sichtfeld gescrollt. Löschen erfordert eine Bestätigung. Alle Pflege-Angaben stehen übersichtlich in einer einzigen Kachel pro Fläche.

Einheitliche Flächenverwaltung

Verbesserung

Die Flächenerfassung funktioniert jetzt im Projekt-Wizard und im Geodaten-Modul exakt gleich — eine gemeinsame Komponente für beide Flows.

Test-Suite (80 Tests) und Repository

Infra

Vitest eingeführt mit 80 Tests für Farb-Logik, Preiskalkulation und GAEB-Export. Projekt ist jetzt in einem privaten GitHub-Repo mit README, Lizenz und Package-Updates (Next.js 16.2.3, React 19.2.5).

v0.7.0

Fachliche Wissensbasis & LV-Schema

Die inhaltliche Basis für fachlich fundierte Leistungsverzeichnisse. Gemeinsam mit Fritz Rudolph erarbeitet.

7-teiliges LV-Schema

Neu

Jedes Leistungsverzeichnis besteht jetzt aus sieben fachlichen Bausteinen: allgemeine ökologische Grundanforderungen, Bodenschutz, Flächentyp-spezifische Anforderungen, Pflegeziel, landesrechtliche Hinweise, objektbezogene Prüfpflicht und Ausführungszeitraum.

Wissensbasis mit Textbausteinen

Neu

Kuratierte Fachtexte für 6 Flächenkategorien (Grünland, Feuchtwiese, Magerrasen, Streuobstwiese, Wald/Gehölz, Sonderstandorte) und 4 Pflegeziele (Erhaltung, Entwicklung, Offenhaltung, Artenschutz).

Pflegezeitraum-Konfiguration

Neu

Wähle zwischen einmaliger Maßnahme, mehrjähriger Pflege (2–3 Jahre) oder Rahmenvertrag (3–5 Jahre + Verlängerungsoption). Die Laufzeit fließt automatisch in LV-Text und Preiskalkulation ein.

Dynamische Preiskalkulation

Kalkulation

Preise werden pro Projekt berechnet: Fläche × Typ × Mahdregime × Laufzeit, zzgl. Risikozuschlag von 10 %.

v0.6.0

Kartenfunktionen erweitert

Feedback von Fritz zu Farben, Flächentypen und Einheiten umgesetzt.

Farbcodierung nach Flächentyp

GIS

Jeder Flächentyp (Wiese, Feuchtwiese, Brombeerbestand, Neophyten, geschützte Bereiche …) bekommt eine eindeutige Farbe auf der Karte. Keine Verwechslungen mehr.

Hinweise pro Flächentyp

GIS

Sobald ein Typ gewählt ist, erscheinen fachliche Eckpunkte (Mahdzeitpunkt, Bodendruck, Rückzugsflächen, Artenschutz) direkt in der Flächenliste.

Dynamische Einheiten

UX

Flächenangaben werden intelligent formatiert: unter 10.000 m² in m², ab 10.000 m² in Hektar.

Konfigurierbare Paywall

Infra

Die Paywall kann per Umgebungsvariable an- und abgeschaltet werden — hilfreich für die aktuelle Testphase.

v0.5.0

LV-Editor, SEO und Vertrauenselemente

Runde 3 von Fritz' Feedback: der LV-Editor, Systemprüfung, Vertrauenszeile und Beispielanalyse.

LV-Editor mit Inline-Bearbeitung

Neu

Das generierte Leistungsverzeichnis lässt sich direkt im Browser bearbeiten — jede Überschrift und jeder Abschnitt ist editierbar.

Systemprüfung und Beraterprüfung

Neu

Zwei Prüfmodi: automatische Systemprüfung auf Konsistenz, Plausibilität und Vollständigkeit, oder Anfrage an das Fachteam für persönliche Prüfung.

Vertrauenszeile und Beispielanalyse

UX

Neue Abschnitte auf der Landing Page: Wer steht hinter dem Projekt, wie funktioniert der Ablauf, und eine Beispielanalyse zum direkten Anschauen.

SEO-Grundlagen

Infra

Favicon, Open-Graph-Bild, Sitemap, robots.txt und strukturierte Daten (JSON-LD).

v0.4.0

Fritz-Feedback Runde 2 — Workflow-Verbesserungen

Verbesserter Wizard-Workflow

Verbesserung

Analyse → Flächendaten → Generierung wurde strukturell überarbeitet und an die Arbeitsweise von Landschaftspflege-Betrieben angepasst.

v0.3.0

Demo-Modus mit kompletten Workflow

Voll funktionsfähiger Demo-Modus

Neu

Kompletter Mock-Workflow: Projekt anlegen, Ausschreibung hochladen, analysieren, Flächendaten eintragen, Leistungsverzeichnis generieren. Alle Dokumenttypen verfügbar.

6 Dokumenttypen

Neu

Leistungsbeschreibung, Angebotsstruktur, Kostenübersicht, Maßnahmenplan, Förderantragstext und Projektbericht — alles aus einem Wizard.

v0.2.0

Fachliche Neupositionierung und Design-Überarbeitung

Notion-Clean Design-System

Design

Klare Typografie mit Inter und Lora (Serif-Headlines), Forest-Green als Primärfarbe, großzügiger Whitespace und minimale Shadows.

Fachzeitschrift-Layout

Design

Die Landing Page orientiert sich jetzt an der Bildsprache von Fachzeitschriften — professionell, seriös, inhaltsorientiert.

Positionierung geschärft

Verbesserung

Das Tool wird als spezialisiertes Werkzeug für naturschutzfachliche Landschaftspflege positioniert, nicht als generisches SaaS.

v0.1.0

Projekt-Start

Die erste Version von naturvergabe.de — Landing Page, Preise, rechtliche Seiten und Dashboard-Gerüst.

Landing Page und rechtliche Seiten

Neu

Hero, Feature-Übersicht, Preisseite, Impressum, Datenschutz und AGB. Alles DSGVO-konform.

3-Tier Preismodell

Neu

Basis (149 €/Monat Self-Service), Professional (499 €/Monat fachlich geprüft) und Kommunal Plus (ab 990 €/Monat mit Beratung).

Technik-Fundament

Infra

Next.js 16 App Router, React 19, TypeScript (strict), Tailwind 4, Zustand, Prisma, Biome, pnpm. Deployment auf Vercel.

Sie vermissen eine Funktion oder haben Feedback?

Feedback senden