Wenn im "Standarddatei"-Modus (Parameter standarddatei von Dateipruefer) die
vorgeschlagene Standarddatei tatsächlich fehlt, soll das Programm das als datei_nicht_gefunden melden statt fälschlich ok=True/"ok" zurückzugeben.
Betroffen
Plugin: sn_basis
Module/Dateien:
modules/Dateipruefer.py, Methode _handle_leere_eingabe() (Zeile 239-248):
liefert bei leerem Pfad + gesetztem standarddatei immer aktion="standarddatei_vorschlagen",
ohne vorher file_exists() auf die Standarddatei anzuwenden.
modules/Pruefmanager.py, Methode _handle_basic_decision() (Zeile 189-193):
wenn der Nutzer die Rückfrage mit "Ja" bestätigt, wird generisch pruef_ergebnis(ok=True, aktion="ok", kontext=ergebnis.kontext) zurückgegeben –
auch hier ohne erneute Existenzprüfung der Standarddatei.
Berührt Schnittstellen (docs/architektur/schnittstellen.md)? nein
Fachlicher Hintergrund
Dateipruefer kennt laut eigenem Docstring drei Leer-Eingabe-Modi: leereingabe_erlaubt, standarddatei (Vorschlag einer Standarddatei) und temporaer_erlaubt. Für die beiden
anderen Modi und für einen direkt angegebenen Pfad wird die Existenz jeweils sauber mit file_exists() geprüft (siehe test_datei_nicht_gefunden/test_datei_ok). Für den
Standarddatei-Vorschlag fehlt dieser Schritt komplett – weder beim Vorschlagen noch bei
der Bestätigung durch den Nutzer im Pruefmanager.
Hinweis: Aktuell übergibt kein Aufrufer (DataGrabber.py, excel_importer.py) den
Parameter standarddatei – der Modus ist offenbar für einen künftigen Workflow
vorbereitet, aber noch nicht produktiv angeschlossen. Das Verhalten ist also aktuell
nirgends live sichtbar, sollte aber vor dem ersten echten Einsatz korrigiert sein.
Entdeckt während des Test-Audits (#16) beim Durchgehen von TestDateipruefer.
Abnahmekriterien
Ist pfad leer, standarddatei gesetzt und die Standarddatei existiert nicht: Dateipruefer.pruefe() liefert aktion="datei_nicht_gefunden" (oder eine neue,
eindeutig benannte Aktion) statt standarddatei_vorschlagen – zu klären, ob die
Prüfung schon in Dateipruefer oder erst im Pruefmanager bei der Ja-Antwort
passieren soll.
Existiert die Standarddatei, bleibt das bisherige Verhalten unverändert
(standarddatei_vorschlagen → bei "Ja" ok=True, "ok").
Mock-Test vorhanden (rot vor dem Fix, grün danach), run_tests.py sn_basis --baseline
ohne NEU ROT.
QGIS-Test: nicht nötig, da noch kein Aufrufer den Standarddatei-Modus nutzt.
Nicht Teil dieses Issues
Den Standarddatei-Modus an einen echten Aufrufer anzuschließen.
Alle anderen im Test-Audit (#16) gefundenen Docstring-/Test-Abweichungen – die laufen
separat ohne Verhaltensänderung.
## Ziel
Wenn im "Standarddatei"-Modus (Parameter `standarddatei` von `Dateipruefer`) die
vorgeschlagene Standarddatei tatsächlich fehlt, soll das Programm das als
`datei_nicht_gefunden` melden statt fälschlich `ok=True`/`"ok"` zurückzugeben.
## Betroffen
Plugin: sn_basis
Module/Dateien:
- `modules/Dateipruefer.py`, Methode `_handle_leere_eingabe()` (Zeile 239-248):
liefert bei leerem Pfad + gesetztem `standarddatei` immer `aktion="standarddatei_vorschlagen"`,
ohne vorher `file_exists()` auf die Standarddatei anzuwenden.
- `modules/Pruefmanager.py`, Methode `_handle_basic_decision()` (Zeile 189-193):
wenn der Nutzer die Rückfrage mit "Ja" bestätigt, wird generisch
`pruef_ergebnis(ok=True, aktion="ok", kontext=ergebnis.kontext)` zurückgegeben –
auch hier ohne erneute Existenzprüfung der Standarddatei.
Berührt Schnittstellen (`docs/architektur/schnittstellen.md`)? nein
## Fachlicher Hintergrund
`Dateipruefer` kennt laut eigenem Docstring drei Leer-Eingabe-Modi: `leereingabe_erlaubt`,
`standarddatei` (Vorschlag einer Standarddatei) und `temporaer_erlaubt`. Für die beiden
anderen Modi und für einen direkt angegebenen Pfad wird die Existenz jeweils sauber mit
`file_exists()` geprüft (siehe `test_datei_nicht_gefunden`/`test_datei_ok`). Für den
Standarddatei-Vorschlag fehlt dieser Schritt komplett – weder beim Vorschlagen noch bei
der Bestätigung durch den Nutzer im `Pruefmanager`.
Hinweis: Aktuell übergibt kein Aufrufer (`DataGrabber.py`, `excel_importer.py`) den
Parameter `standarddatei` – der Modus ist offenbar für einen künftigen Workflow
vorbereitet, aber noch nicht produktiv angeschlossen. Das Verhalten ist also aktuell
nirgends live sichtbar, sollte aber vor dem ersten echten Einsatz korrigiert sein.
Entdeckt während des Test-Audits (#16) beim Durchgehen von `TestDateipruefer`.
## Abnahmekriterien
- [ ] Ist `pfad` leer, `standarddatei` gesetzt und die Standarddatei existiert nicht:
`Dateipruefer.pruefe()` liefert `aktion="datei_nicht_gefunden"` (oder eine neue,
eindeutig benannte Aktion) statt `standarddatei_vorschlagen` – zu klären, ob die
Prüfung schon in `Dateipruefer` oder erst im `Pruefmanager` bei der Ja-Antwort
passieren soll.
- [ ] Existiert die Standarddatei, bleibt das bisherige Verhalten unverändert
(`standarddatei_vorschlagen` → bei "Ja" `ok=True, "ok"`).
- [ ] Mock-Test vorhanden (rot vor dem Fix, grün danach), `run_tests.py sn_basis --baseline`
ohne NEU ROT.
- [ ] QGIS-Test: nicht nötig, da noch kein Aufrufer den Standarddatei-Modus nutzt.
## Nicht Teil dieses Issues
- Den Standarddatei-Modus an einen echten Aufrufer anzuschließen.
- Alle anderen im Test-Audit (#16) gefundenen Docstring-/Test-Abweichungen – die laufen
separat ohne Verhaltensänderung.
Daniel
added the Bug label 2026-09-17 12:05:51 +00:00
Die Frage, die sich stellt: brauchen wir den Standard-Datei-Modus? Er ist für Dateieingabefelder vorgesehen. Mit den Parametern Temporaer erlaubt, Standarddatei und Leereingabe erlaubt kann man steuern, wie mit einer leeren Eingabe umgegangen wird. Einfach ignorieren, Folgeoperationen auf temporär stellen, oder eben, statt eine Datei anzugeben, auf eine Standarddatei zurückfallen. Ursprünglich für die Linkliste vorgesehen, brauchen wir aber mit der API nicht mehr. Ein anderer Anwendungsfall, der mit spontan einfällt, wäre die Standard-Gpkg, die es zwar noch nicht gibt, aber die es ja vielleicht geben wird.
ODer ist die ganze Dateieingabe-Sache für Standards ohnehin hinfällig, weil wir es eleganter über Dienste oder APIs laufen lassen können?
Die Frage, die sich stellt: brauchen wir den Standard-Datei-Modus? Er ist für Dateieingabefelder vorgesehen. Mit den Parametern Temporaer erlaubt, Standarddatei und Leereingabe erlaubt kann man steuern, wie mit einer leeren Eingabe umgegangen wird. Einfach ignorieren, Folgeoperationen auf temporär stellen, oder eben, statt eine Datei anzugeben, auf eine Standarddatei zurückfallen. Ursprünglich für die Linkliste vorgesehen, brauchen wir aber mit der API nicht mehr. Ein anderer Anwendungsfall, der mit spontan einfällt, wäre die Standard-Gpkg, die es zwar noch nicht gibt, aber die es ja vielleicht geben wird.
ODer ist die ganze Dateieingabe-Sache für Standards ohnehin hinfällig, weil wir es eleganter über Dienste oder APIs laufen lassen können?
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Ziel
Wenn im "Standarddatei"-Modus (Parameter
standarddateivonDateipruefer) dievorgeschlagene Standarddatei tatsächlich fehlt, soll das Programm das als
datei_nicht_gefundenmelden statt fälschlichok=True/"ok"zurückzugeben.Betroffen
Plugin: sn_basis
Module/Dateien:
modules/Dateipruefer.py, Methode_handle_leere_eingabe()(Zeile 239-248):liefert bei leerem Pfad + gesetztem
standarddateiimmeraktion="standarddatei_vorschlagen",ohne vorher
file_exists()auf die Standarddatei anzuwenden.modules/Pruefmanager.py, Methode_handle_basic_decision()(Zeile 189-193):wenn der Nutzer die Rückfrage mit "Ja" bestätigt, wird generisch
pruef_ergebnis(ok=True, aktion="ok", kontext=ergebnis.kontext)zurückgegeben –auch hier ohne erneute Existenzprüfung der Standarddatei.
Berührt Schnittstellen (
docs/architektur/schnittstellen.md)? neinFachlicher Hintergrund
Dateiprueferkennt laut eigenem Docstring drei Leer-Eingabe-Modi:leereingabe_erlaubt,standarddatei(Vorschlag einer Standarddatei) undtemporaer_erlaubt. Für die beidenanderen Modi und für einen direkt angegebenen Pfad wird die Existenz jeweils sauber mit
file_exists()geprüft (siehetest_datei_nicht_gefunden/test_datei_ok). Für denStandarddatei-Vorschlag fehlt dieser Schritt komplett – weder beim Vorschlagen noch bei
der Bestätigung durch den Nutzer im
Pruefmanager.Hinweis: Aktuell übergibt kein Aufrufer (
DataGrabber.py,excel_importer.py) denParameter
standarddatei– der Modus ist offenbar für einen künftigen Workflowvorbereitet, aber noch nicht produktiv angeschlossen. Das Verhalten ist also aktuell
nirgends live sichtbar, sollte aber vor dem ersten echten Einsatz korrigiert sein.
Entdeckt während des Test-Audits (#16) beim Durchgehen von
TestDateipruefer.Abnahmekriterien
pfadleer,standarddateigesetzt und die Standarddatei existiert nicht:Dateipruefer.pruefe()liefertaktion="datei_nicht_gefunden"(oder eine neue,eindeutig benannte Aktion) statt
standarddatei_vorschlagen– zu klären, ob diePrüfung schon in
Dateiprueferoder erst imPruefmanagerbei der Ja-Antwortpassieren soll.
(
standarddatei_vorschlagen→ bei "Ja"ok=True, "ok").run_tests.py sn_basis --baselineohne NEU ROT.
Nicht Teil dieses Issues
separat ohne Verhaltensänderung.
Die Frage, die sich stellt: brauchen wir den Standard-Datei-Modus? Er ist für Dateieingabefelder vorgesehen. Mit den Parametern Temporaer erlaubt, Standarddatei und Leereingabe erlaubt kann man steuern, wie mit einer leeren Eingabe umgegangen wird. Einfach ignorieren, Folgeoperationen auf temporär stellen, oder eben, statt eine Datei anzugeben, auf eine Standarddatei zurückfallen. Ursprünglich für die Linkliste vorgesehen, brauchen wir aber mit der API nicht mehr. Ein anderer Anwendungsfall, der mit spontan einfällt, wäre die Standard-Gpkg, die es zwar noch nicht gibt, aber die es ja vielleicht geben wird.
ODer ist die ganze Dateieingabe-Sache für Standards ohnehin hinfällig, weil wir es eleganter über Dienste oder APIs laufen lassen können?