Files
VianoBugAnalysis/docs/parameter-grounding-and-bootstrap-v21.md

81 lines
4.6 KiB
Markdown

# Belegte DB-Werte und robuste Anfangsrunden
Im Hybrid-Test vom 18.10.2026 enthielt der Codingauftrag `phaseMask 14`.
Die 14 war als Durotar-Gebiets-ID belegt, nicht als Phasenmaske. Eine
Verwechslung ist plausibel, lässt sich aus der Antwort aber nicht beweisen.
Die beobachtete Phasenmaske 1 wird deshalb nicht automatisch als Ersatz eingesetzt.
Neue Codingkontexte markieren `parameter_grounding: 1` und verwenden
`change_request_v7`. Konkrete numerische Zuweisungen in `implementation_guidance`
werden gegen Werte derselben DB-Spalte aus kanonischen Rechercheergebnissen
geprüft. Schemafelder ohne belegten Wert benötigen bei expliziten Zuweisungen
einen Platzhalter. Typisierte Fallangaben ergänzen nur bereits bekannte DB-Spalten.
Unbelegte Werte erzeugen `CHANGE_REQUEST_UNGROUNDED_DATABASE_VALUE` samt
Korrekturhinweis; fehlende Werte dürfen an den Menschen delegiert werden.
Diese Prüfung ist eine begrenzte notwendige Bedingung, kein universeller
semantischer Beweis: Sie erfasst nicht jede Formulierung und beweist nicht, dass
ein beobachteter Wert zu einer anderen Entität passt. Der Prompt fordert zusätzlich
den Bezug zur betroffenen Entität. Bestehende Kontexte behalten ihren Vertrag.
Das historische Ergebnispaket wird nicht verändert.
## Anfangsrunden
Die drei ungültigen Antworten des Tests waren JSON-Syntaxfehler bei regulärem
Antwortabschluss, keine nachgewiesenen Schema- oder Ausgabelimitfehler. Die
ungültigen Antworttexte wurden nicht gespeichert; ihre genaue Syntaxursache
lässt sich nachträglich nicht rekonstruieren.
`bootstrap_json_framing = true` im schlanken Untersuchungsprofil aktiviert für
neue volle Anfangsrunden `investigation_bootstrap_v21`. Im nativen Gemini-
Transport mit `response_format = "json_object"` wird eine kleine native
Strukturvorgabe für `assessment`, `update` und `next` übertragen. Das vollständige
lokale Schema und die fachliche Validierung bleiben bestehen. Damit wird nicht
das früher problematische komplexe Gesamtschema an den Anbieter geschickt.
Die anschließende schlanke Schleife und alte gespeicherte Policys bleiben unverändert.
Die Transporterzeugung und strikte lokale Validierung sind mit simulierten
Antworten getestet. Akzeptanz und Wirkung am echten Endpunkt sind noch nicht
erneut kostenpflichtig geprüft. Anbietergrundlage:
[Gemini Structured Output](https://ai.google.dev/gemini-api/docs/structured-output).
Neue JSON-Fehlerdiagnosen unterscheiden unter anderem fehlende Trennzeichen,
fehlende Schlüssel und nicht abgeschlossene Zeichenketten. Sie melden außerdem,
ob der Fehler am Textende liegt. Antworttexte, Feldwerte und ungefilterte
Parsermeldungen werden dafür nicht gespeichert.
## Korrektur: benannte Fakten und explizite Profilzuordnung (19.10.2026)
Neue Übergabekontexte verwenden `parameter_grounding: 2` und speichern
`database_fact_bindings`. Eindeutige kanonische Fakten im Format
`{id, name, value, provenance}` können nun numerische Werte für gleichnamige,
bekannte DB-Spalten belegen. Strings und boolesche Werte werden nicht in Zahlen
umgewandelt; mehrdeutige Fakten-IDs werden nicht verwendet.
Abweichende Feldnamen werden ausschließlich über explizite Profiladapter
zugeordnet. Der Vcore-Adapter v1 ordnet aktuell nur den nichtnegativen ganzzahligen
wowdiag-Reproduktionsfakt `map_id` der bekannten numerischen Spalte `creature.map`
zu. Die Bindung enthält Fakten-ID, Faktenname, Tabelle und Spalte. Der allgemeine
Prüfer leitet die erlaubte Bindung erneut aus dem kanonischen Profil/Fakt ab;
ein frei hinzugefügter Bindungsdatensatz genügt nicht. Es gibt keine allgemeine
`_id`-Heuristik und keine Übertragung von Gebiets-IDs auf Phasenmasken.
Die Modellansicht enthält die Bindungen und ausschließlich die dazugehörigen
kanonischen Fakten, ohne den gesamten Runtime-Faktenkatalog erneut zu senden.
Die Rohantwort wird nicht umgeschrieben. Dies ist weiterhin eine notwendige
Wertbelegprüfung, kein Beweis, dass jeder beobachtete Wert für jede neue Zeile
geeignet ist.
Bestehende Kontexte behalten Version 1 und ihre bisherige Semantik. Neue Kontexte
werden deterministisch mit Version 2 erzeugt und bei Wiederaufnahme erneut
gebunden. Bestehende Diagnosen, Fallback-Aufträge und Paketdateien werden nicht
nachträglich geändert.
Offline-Regressionsprüfung: Beide vollständig gespeicherten SQL-Vorlagen aus
`bug20-verbose-regression-20261019`, Generation 123, scheitern mit Version 1 an
`map = 0`. Mit der belegten Bindung von F0002 (`map_id = 0`) bestehen beide die
vollständige Übergabevalidierung, ohne irgendeine Änderung an der LLM-Antwort.
Keine zusätzliche LLM-Anfrage erforderlich. Die falsche Zuweisung
`phaseMask = 14` bleibt abgelehnt.