@@ -139,12 +139,11 @@ EPICS Übersicht (oberste Steuerungsebene)
139139 acceptance: - DI Registrierung (IServiceCollection) vorhanden - Minimal API Mappings generierbar - Beispiel-Endpunkt im Sample funktioniert
140140 depends: [ E003]
141141
142- - [ ~ ] EPIC-E007 Heuristik-Abbau (P3)
142+ - [ ] EPIC-E007 Heuristik-Abbau (P3)
143143 id: E007
144144 goal: Entfernung restriktiver Namens-/Strukturheuristiken
145145 acceptance: - Liste entfernte / geänderte Heuristiken dokumentiert (Dokumentation ausreichend, kein vollständiger Audit) - Regressionstests schützen kritische Fälle
146146 depends: [ E003]
147- progress: Namensbasierte JSON-Erkennung (ProcName enthält 'Json'/'AsJson') entfernt; Legacy CrudResult Fallback für einfache nvarchar(max) JSON-Sets revertiert; Primäres ResultSet Auswahl = erstes nicht-ExecSource Placeholder; strukturelle Pseudo-CRUD Erkennung (ein einzelnes nvarchar(max) ohne FOR JSON) aktiv; Placeholder-Minimierung für Wrapper (nur ExecSource* Metadaten) umgesetzt; Fixup-Phase rekonstruiert fehlende JSON Sets (synthetische Columns mit SqlTypeName=null); Logging Präfixe vereinheitlicht ([ proc-forward-xschema] , [ proc-exec-append-xschema] , [ proc-fixup-json-* ] ); CHANGELOG Removed Abschnitt ausstehend.
148147
149148- [ ] EPIC-E008 Konfig-Bereinigung (P2)
150149 id: E008
@@ -220,16 +219,6 @@ EPICS Übersicht (oberste Steuerungsebene)
220219- [x] Ermittlung des Namespaces automatisiert und dokumentierte Fallback-Strategie vorhanden
221220- [x] Zentrale Positive Schema Allow-List (SPOCR_BUILD_SCHEMAS) für Procedures & TableTypes implementiert
222221- [ ] Entfernte Spezifikationen/Heuristiken sauber entfernt und CHANGELOG Eintrag erstellt
223- details:
224- - Entfernt: Namensbasierte JSON-Heuristik ("Json" / "AsJson" im Prozedurnamen) – alleinige Struktur (FOR JSON / Parser Flags) entscheidet jetzt
225- - Entfernt: Legacy CrudResult Fallback für einfache nvarchar(max) "JSON" Sets (Revert → richtige Output/Model Erzeugung)
226- - Geändert: Primäres ResultSet = erstes nicht-Placeholder (kein ExecSource* ) statt erstes JSON-ähnliches Set
227- - Neu: IsPseudoTabularCrud Erkennung (ein einzelnes nvarchar(max) ohne FOR JSON) → Nutzung ExecuteSingleAsync statt ReadJsonAsync
228- - Placeholder-Minimierung: Wrapper-Prozeduren persistieren nur ExecSource* Metadaten (keine synthetischen Spalten) im Snapshot
229- - Fixup-Phase: Rekonstruiert fehlende JSON ResultSets bei Wrapper-only Snapshots; synthetische JSON Columns erhalten SqlTypeName=null (Signal: künstlich)
230- - Logging: Vereinheitlichte Präfixe [ proc-forward-xschema] , [ proc-exec-append-xschema] , [ proc-fixup-json-* ] ersetzt frühere uneinheitliche Tags
231- - Offen: CHANGELOG Eintrag "Removed heuristics" + vollständige Dokumentationsseite (removed-heuristics-v5.md inhaltlich füllen)
232- status: [ ~ ] (technische Entfernung abgeschlossen, Dokumentation & CHANGELOG folgen)
233222- [ ] Neuer ` SpocRDbContext ` implementiert inkl. moderner DI Patterns & Minimal API Extensions
234223- [x] Grundgerüst via Template-Generator (Interface, Context, Options, DI) – aktiviert in ` SPOCR_GENERATOR_MODE=dual|next `
235224- [x] DbContext Optionen (ConnectionString / Name / Timeout / Retry / Diagnostics)
0 commit comments