Commit Graph
28 Commits
Author SHA1 Message Date
Daniel a0bb40aeee Merge pull request 'HTML-Dashboard 'Pruefstand' fuer den Testkatalog ergaenzt' (#15) from feature/testkatalog-html-dashboard into main
Reviewed-on: #15
2026-09-15 09:44:13 +00:00
DanielandClaude Sonnet 5 f7aa8ca899 HTML-Dashboard 'Pruefstand' fuer den Testkatalog ergaenzt
scripts/testkatalog.py schreibt jetzt zusaetzlich zu testkatalog.md ein
eigenstaendiges, lokal oeffenbares HTML-Dashboard (docs/tests/testkatalog.html):
je Testdatei ein Mermaid-Baumdiagramm Datei -> Testgruppe -> Testfall,
Statusfarbe aus der Baseline, plus Filter (rot/uebersprungen/schwach
beschrieben) und Volltextsuche. Generiert direkt aus denselben
Paketkatalog-Dataclasses wie der Markdown-Katalog, kein zweiter Parse-Schritt.

--pruefen prueft jetzt beide Dateien; --ohne-html erzeugt/prueft nur die
Markdown-Datei; --html-ausgabe setzt ein anderes Ziel. Mermaid laedt von
cdnjs.cloudflare.com (Fallstrick dokumentiert: ohne Internetverbindung bleiben
nur die Diagramme leer).

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-15 11:36:01 +02:00
Daniel 70360acf5f Merge pull request 'Testkatalog nach Konsolidierung in Plugin_SN_Verfahrensgebiet #47 aktualisiert' (#14) from bugfix/47-flurstuecke-ladelogik-konsolidieren-testkatalog into main
Reviewed-on: #14
2026-09-15 08:40:53 +00:00
DanielandClaude Sonnet 5 38f0845730 Testkatalog nach Konsolidierung in Plugin_SN_Verfahrensgebiet #47 aktualisiert
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-15 10:26:39 +02:00
Daniel 86e8474c7b Merge pull request 'Bugfix/28 doppelte flurstuecke testkatalog' (#13) from bugfix/28-doppelte-flurstuecke-testkatalog into main
Reviewed-on: #13
2026-09-15 08:08:34 +00:00
DanielandClaude Sonnet 5 3ded00896c Testkatalog nach zweitem Fix in Plugin_SN_Verfahrensgebiet #28 aktualisiert
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-15 09:17:46 +02:00
DanielandClaude Sonnet 5 f5e0a22457 Testkatalog nach Fix in Plugin_SN_Verfahrensgebiet #28 aktualisiert
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-15 08:51:11 +02:00
Daniel cae9cbb646 Merge pull request 'Bugfix/42 umlaute sonderzeichen-Doku Prüfskript' (#12) from bugfix/42-umlaute-sonderzeichen into main
Reviewed-on: #12
2026-09-15 06:08:28 +00:00
Daniel 02023d0deb Merge branch 'main' into bugfix/42-umlaute-sonderzeichen 2026-09-15 06:07:30 +00:00
Daniel 21ae6ddeac Merge pull request 'Neue Kategorie projekte/ fuer plugin-spezifische Fachablauf-Diagramme' (#11) from doku/ablauf-verfahrensgebiet-alkis-laden into main
Reviewed-on: #11
2026-09-14 13:26:10 +02:00
Daniel d92ca6d2f7 Merge branch 'main' into doku/ablauf-verfahrensgebiet-alkis-laden 2026-09-14 13:25:39 +02:00
Michael Otto 59aafe1898 Branches im Projektwissen (#8) 2026-09-14 13:00:07 +02:00
Michael Otto 3ba7a32c7e Neue Kategorie projekte/ fuer plugin-spezifische Fachablauf-Diagramme
Bisher gab es keinen Platz fuer rein fachliche Ablaufbeschreibungen
unabhaengig von Tests: docs/ ist projektuebergreifendes Wissen,
docs/tests/ ist testkonzept-gebunden. projekte/<paket>/ablaeufe/
schliesst diese Luecke, gegliedert nach Plugin-Paketname wie in
workspace.toml.

Erster Eintrag: projekte/sn_verfahrensgebiet/ablaeufe/alkis-laden.md,
uebernommen aus Plugin_SN_Verfahrensgebiet/docs/aus_alkis_laden.md
(dort entstanden, bevor es dieses Wissensrepo gab).
2026-09-14 12:49:27 +02:00
DanielandClaude Sonnet 5 d8f88df0ba Umlaut-Pruefskript ergaenzt und in Fallstricke dokumentiert (#42)
scripts/pruefe_umlaute.py findet String-Inhalte und Kommentare mit
Leerzeichen, die einen bekannten ASCII-Wortstamm statt Umlaut/ss enthalten
(gueltig, verfuegbar, fuer, ueber, ...). Technische Bezeichner ohne
Leerzeichen (aktion-Codes, Variablen-Keys, WFS-Feldnamen) werden von der
Heuristik nicht erfasst. Aktuell ueber den gesamten Workspace grün.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01MneDjzrjmbpQt8udFYxN9e
2026-09-14 12:21:13 +02:00
22ottomi e00669ff9e Merge pull request 'Lokal abweichenden Ablageort der Plugin-Klone unterstuetzen (#6)' (#7) from feature/6-repos-root into unstable
Reviewed-on: #7
2026-09-14 11:38:23 +02:00
Michael Otto 85a34e4d1d Lokal abweichenden Ablageort der Plugin-Klone unterstuetzen (#6)
hallo.py, setup_workspace.py und link_qgis_profile.py gingen bisher fest
davon aus, dass die Repos aus workspace.toml direkte Unterordner von
Projektwissen sind. Eine optionale, nicht versionierte workspace.local.toml
mit [workspace] repos_root = "..." kann das jetzt lokal ueberschreiben, z. B.
wenn die Klone zusaetzlich unter einem separaten src-Ordner liegen und von
dort in mehrere QGIS-Profile verlinkt werden. Ohne diese Datei bleibt das
Verhalten fuer alle unveraendert.
2026-09-14 11:36:55 +02:00
Daniel 5c593931bb Merge pull request 'ALKIS-Objektartenkatalog als Wissensbasis fuer GID6 und GID7 angelegt' (#5) from doku/alkis-wfs-referenz into unstable
Reviewed-on: #5
2026-09-14 11:36:09 +02:00
DanielandClaude Sonnet 5 f0d7efddf2 Fallstricke/Modulkarte/Testkatalog um sanitize_bezeichner ergänzt (#42)
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01MneDjzrjmbpQt8udFYxN9e
2026-09-14 11:10:51 +02:00
Daniel 034060a1b8 Merge branch 'unstable' into doku/alkis-wfs-referenz 2026-09-14 09:58:50 +02:00
DanielandClaude Sonnet 5 f41666b3d6 ALKIS-Objektartenkatalog als Wissensbasis fuer GID6 und GID7 angelegt
Atomare Markdown-Wissensdateien je Objektart/Datentyp (Beschreibung, Attribute,
Codelisten, Bildungsregeln, Konsistenzbedingungen, Relationen inkl. Gegenrolle),
maschinell erzeugt aus den ADV-Katalog-XML unter referenz/alkis/ (unversioniert).

Zwei getrennte Baeume, weil operativ noch GID6 laeuft und GID7 erst der Zielstand
ist: docs/wissen/alkis/gid6/ (189 Klassen, WFS-Produktivstand, fuer Plugin-Code
massgeblich) und docs/wissen/alkis/gid7/ (209 Klassen, kuenftige Umstellung).

Vererbung wird nicht in jede Datei hineinkopiert (Drift-/Tokenrisiko), sondern per
Inline-Hinweis auf die Oberklasse referenziert plus on-demand ueber
_werkzeuge/parse_alkis.py resolve aufgeloest; ein diff-Modus vergleicht eine
Klasse zwischen beiden Versionen. alkis_objektarten.md verweist jetzt auf beide
Versionsbaeume.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-14 09:55:27 +02:00
Daniel 3d1e9b4b3d Merge pull request 'Referenzwissen ALKIS/WFS und ALKIS-7-Umstellungscheckliste ergänzt' (#3) from doku/alkis-wfs-referenz into unstable
Reviewed-on: #3
2026-09-04 15:09:25 +02:00
DanielandClaude Sonnet 5 ce795cdc6f Referenzwissen ALKIS/WFS und ALKIS-7-Umstellungscheckliste ergaenzt
Neu in docs/wissen: wfs_dienste.md (ALKIS-WFS-Endpunkte der saechsischen
Dienste, erprobte Anfragen je Objektart, die vom WAF blockierten
Normfaelle) und alkis_objektarten.md (die von sn_verfahrensgebiet
genutzten AAA-Objektarten mit Attributen, Filterkonventionen und den
FlurbG-Werten von artderfestlegung).

Neu in docs/konzept: 09_alkis7_umstellung.md - Vergleich ALKIS 6 (GID 6.0)
gegen ALKIS 7 (GID 7.1) und die konkrete Anpassungsliste fuer
sn_verfahrensgebiet (fest verdrahteter NAS-Namespace, abgeflachte
WFS-Feldnamen, Codelisten, Tests). Als offene Baustelle 14 in STATUS.md
verlinkt.

Quellmaterial (OK-AAA 7.1.2, ALKIS-FSK 2.1.0, EA-Modellexporte, ~180 MB)
liegt lokal unter referenz/ und wird per .gitignore nicht versioniert;
Herkunft ist in alkis_objektarten.md dokumentiert.

Querverweise aus externe_dienste.md, fallstricke.md, docs/README.md
ergaenzt; Glossar um NAS, ZUSO/REO, OK-AAA erweitert.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01NqvdHqySjQMVowB3G3Vf3U
2026-09-04 15:05:07 +02:00
Daniel de05b04e21 Merge pull request 'Einrichtungsanleitung um Claude-Installation und PATH-Eintrag ergänzt' (#1) from doku/readme-einrichtung-claude into unstable
Reviewed-on: #1
2026-09-04 13:08:56 +02:00
DanielandClaude Sonnet 5 1bcc0224c7 Einrichtungsanleitung um Claude-Installation und PATH-Eintrag ergänzt
Zwischen Schritt 3 und 4 der README steht jetzt ein eigener Schritt, der
Claude Code per npm installiert und den Workspace-Ordner AG_QGIS in den
PATH aufnimmt (PowerShell für Windows, export fuer Linux/macOS). Ohne
beides laesst sich der KI-gestuetzte Arbeitsablauf nicht nutzen.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01NqvdHqySjQMVowB3G3Vf3U
2026-09-04 13:02:02 +02:00
AndreasTharang c4cd2641ff Standardbranch des neuen Repos praezisiert: unstable
Gitea fragt den Standardbranch schon beim Anlegen ab, nicht erst beim
ersten Push. Mit Begruendung und dem Abgleich zu den bestehenden Repos:
acht Code-Repos stehen auf unstable, main nur die drei ohne Kanalmodell.
2026-09-04 12:04:09 +02:00
AndreasTharang 6dde74c422 Benutzernamen aus den .vscode-Befunden entfernt
Das Repository wird oeffentlich. Der technische Befund (fest verdrahtete
Pfade in .vscode/) steht auch ohne den Windows-Benutzernamen einer
konkreten Person.
2026-09-04 12:01:01 +02:00
AndreasTharang 56f1cfda2e Git-Identitaet: E-Mail muss die des Gitea-Kontos sein
Gitea ordnet Commits ueber die E-Mail-Adresse dem Benutzerkonto zu. Passt
sie nicht, erscheinen Commits ohne Zuordnung, und nachtraeglich laesst sich
das nur durch Umschreiben der Historie korrigieren.

- 04_werkzeuge_einrichten.md: Einrichtung mit Begruendung, Hinweis auf
  --local fuer privat mitgenutzte Rechner, Punkt in der Pruefliste.
- 08_repo_einrichten.md: Pruefschritt vor dem Push praezisiert.
- fallstricke.md: Eintrag unter Umgebung und Werkzeuge.
2026-09-04 11:58:06 +02:00
AndreasTharangandClaude Sonnet 5 ab416fb34c Projektwissen: Git-Vorgaben, Ticketzugriff, Tests und Einstieg
Erster Stand des Repositories AG_QGIS/Projektwissen (bisher Arbeitstitel
"Workspace", ADR 0006). Der lokale Ordner heisst weiter AG_QGIS, weil darin
auch die Plugin-Klone liegen.

Git verbindlich (ADR 0007), aus dem bisherigen Wiki-Konzept entwickelt:
- docs/leitfaden/05_git_arbeitsweise.md mit Kanal-Kette, Branch-Namen und
  Gitea-Branch-Schutz.
- Der Einstiegspunkt eines Fixes richtet sich nach dem Kanal, in dem der
  Fehler sitzt; ein Fix an testing oder stable ist erst mit der
  Rueckfuehrung nach unten abgeschlossen. Das fehlte bisher.
- Der stabile Kanal heisst stable, nicht main: der Release-Workflow in
  Repository:hidden/workflows fuehrt git checkout "$CHANNEL" aus, der
  Branchname muss also dem Kanalnamen entsprechen. Er existiert in keinem
  Plugin-Repo und ist vom Maintainer anzulegen.
- Der Mensch drueckt ab: .claude/settings.json sperrt push, merge, tag.
- scripts/hallo.py und /hallo holen den Stand aller Klone, per
  Fast-Forward wo gefahrlos; nie mergen, stashen oder verwerfen.

Ticketzugriff:
- scripts/gitea.py liest Issues, Kommentare und PRs ueber die oeffentliche
  API, ohne Token, nur GET. Schreibendes nur als Entwurf in entwuerfe/.
- Skill sn-ticket.

Tests (ADR 0009):
- docs/leitfaden/06_tests.md: Testebenen, Testpflicht, und wie eine
  Fachperson beurteilt, ob Tests fachlich sinnvoll sind.
- scripts/testkatalog.py erzeugt docs/tests/testkatalog.md per ast-Parsing,
  ohne Import und ohne QGIS. Befund: nur 100 von 332 Tests haben einen
  Docstring, sn_basis keinen einzigen von 87.
- Vorlage und erste Testkonzept-Seite mit Mermaid. Dabei gefunden und gegen
  origin geprueft: _ermittle_gebietstyp_aus_fbschl hat keinen Test, obwohl
  PR #44/#45 genau diese Funktion tolerant gemacht hat.
- docs/konzept/07_qgis_tests_plan.md: Stufenplan fuer Tests gegen echtes
  QGIS. Dabei aufgefallen: QGIS 3.40 ist seit Januar 2026 End of Life,
  qgis_min steht aber noch darauf.

Werkzeuge (ADR 0008):
- 04_werkzeuge_einrichten.md nur noch Claude Code als CLI und in VS Code.
- .vscode/ entfernt, brauchbare Einstellungen als persoenliche Vorlage.

Ausserdem: README als Einstieg neu aufgebaut, Mermaid-Diagramm in
schnittstellen.md repariert (unmaskierte Klammern, rendert seither nicht).

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-04 11:57:26 +02:00