5.1 KiB
model
| model |
|---|
| sonnet |
AP09 – Altlogik einfrieren (Preview-Code deaktivieren)
Meilenstein: M1 Vorgänger: AP03, AP05, AP06 ✅ erforderlich Nachfolger: AP10, AP11 Grundlage: AP00-ist-analyse.md §§ 7, 8 Entscheidungsprotokoll:
docs/arbeitspakete/m1/E00-entscheidungsprotokoll.md(E-01 Option b, E-03 leere Testklasse)
Ziel
Die bestehende Preview-Parser- und Validator-Logik (DefaultStructureValidator, DefaultFieldValidator, DefaultInputFileValidator) wird nicht gelöscht und nicht verschoben, sondern im Bootstrap nicht mehr verdrahtet. Ein M1-Lauf erzeugt keine fachlichen ASVREC-/ASVFEH-Befunde mehr. Die Klassen bleiben physisch an ihrem Ort als M3-Vorbau.
Hintergrund und Entscheidung
Laut AP00-Ist-Analyse läuft DefaultStructureValidator (19 ASVREC/ASVFEH-Regeln) aktiv im produktiven Lauf mit — was dem M1-Ziel „noch keine ASV-Fachvalidierung" widerspricht.
Entscheidung E-01: Option (b) — Klassen bleiben in ihren Paketen, werden aber im Bootstrap nicht mehr verdrahtet. Für M3 kann die Verdrahtung direkt wieder aktiviert werden.
Kein Paketumzug, keine Umbenennung, kein @Deprecated.
Voraussetzungen
- AP03 (Paketstruktur)
- AP05 (neues Befundmodell)
- AP06 (neuer Bootstrap/CLI)
Scope IN
1. Bootstrap-Verdrahtung anpassen
In bootstrap.Main: DefaultInputFileValidator erhält statt DefaultStructureValidator und DefaultFieldValidator jeweils eine Null-Implementation — eine leere Implementierung der jeweiligen Interfaces, die keine Befunde produziert.
Die Null-Implementierungen können als benannte Klassen in bootstrap oder application angelegt werden:
/** M1-Platzhalter. Ab M3 durch DefaultStructureValidator ersetzen. */
public final class NoOpStructureValidator implements StructureValidator {
@Override
public List<Finding> validate(ValidationContext ctx) {
return List.of(); // bewusst leer in M1
}
}
Analog für NoOpFieldValidator.
2. Einfriermarker als JavaDoc-Kommentar
DefaultStructureValidator und DefaultFieldValidator erhalten folgenden JavaDoc-Kommentar — keine andere Änderung:
/**
* M3-Vorbau. In M1 bewusst nicht im produktiven Lauf verdrahtet.
* Wird ab M3 wieder aktiviert und gegen die finalen Regelklassifikationen
* (V1-V/T/N/K) aus fachliche-anforderungen.md bewertet.
*
* @see docs/arbeitspakete/m1/E00-entscheidungsprotokoll.md E-01
*/
3. Abnahmetest
Ein Integrationstest prüft, dass ein Lauf mit einer beliebigen Testdatei keine fachlichen Findings mit Bezug auf ASVREC-/ASVFEH-Segmentregeln erzeugt.
4. Aufräumen
DefaultStructureValidatorTestAdditional(leere Testklasse ohne@Test-Methoden) löschen (gemäß E-03)- Sicherstellen dass
logs/in.gitignoresteht (falls AP06 das noch nicht erledigt hat) - Aktive Tests von
DefaultStructureValidatorundDefaultFieldValidatorbleiben erhalten und grün — sie testen den M3-Vorbau
5. Grep-Nachweis im Bericht
grep -rn "DefaultStructureValidator\|DefaultFieldValidator" \
src/main/java/de/gecheckt/asv/adapter \
src/main/java/de/gecheckt/asv/bootstrap
Muss leer sein — der aktive Code darf diese Klassen nicht mehr referenzieren.
Scope OUT
- Paketumzug der Preview-Klassen (explizit nicht — Entscheidung E-01 Option b)
- Inhaltliche Änderung an
DefaultStructureValidatoroderDefaultFieldValidator - Fachliche Neubewertung der 19 Preview-Regeln (das ist M3)
- Löschen von Preview-Klassen
Schritte
NoOpStructureValidatorundNoOpFieldValidatoranlegenbootstrap.Mainumverdrahten: Preview-Validatoren durch NoOp-Implementierungen ersetzen- JavaDoc-Einfriermarker in
DefaultStructureValidatorundDefaultFieldValidatorergänzen DefaultStructureValidatorTestAdditionallöschen- Grep-Nachweis ausführen und im Bericht dokumentieren
- Integrationstest: Lauf erzeugt keine ASVREC-/ASVFEH-Segmentbefunde
mvn clean verifygrün — alle bisherigen Tests der Preview-Klassen müssen weiterhin grün sein- Abschlussbericht schreiben
Abnahmekriterien
NoOpStructureValidatorundNoOpFieldValidatorexistierenbootstrap.Mainverdrahtet keine Preview-Validatoren mehr- Grep auf
DefaultStructureValidator/DefaultFieldValidatorinadapterundbootstrapist leer (Nachweis im Bericht) - Einfriermarker-JavaDoc in beiden Preview-Klassen vorhanden
DefaultStructureValidatorTestAdditionalist gelöscht- Bestehende Tests der Preview-Klassen laufen weiterhin grün
- Integrationstest: Lauf mit Testdatei erzeugt keine ASVREC-/ASVFEH-Segmentbefunde
mvn clean verifygrün- Abschlussbericht unter
docs/arbeitspakete/m1/berichte/AP09-bericht.md
Rest-Risiken und offene Punkte
- Bei Wiederaufnahme in M3: jede der 19 Preview-Regeln ist neu gegen V1-V/T/N/K-Klassifikation zu bewerten. Explizit M3-Aufgabe.
- Falls Preview-Tests beim Einfrieren brechen (z.B. wegen Interface-Änderungen durch AP05): einmalige Anpassung der Testimports ist kein Scope-Verstoß, sondern Teil der Konsolidierung.
Bericht
docs/arbeitspakete/m1/berichte/AP09-bericht.md nach docs/arbeitspakete/m1/templates/ap-bericht.md.