Constrain nested bootstrap findings with versioned native output shapes

This commit is contained in:
Nico committed 2026-10-18 23:55:16 +02:00
1 parent 67843454e4
commit f5a87dfca3
14 files changed
+173 -12

No files matched your search

+35
View File
@@ -50,3 +50,38 @@ Typangaben erhalten keinen zusätzlichen Prompttext. Frühere Prompts bleiben so
reproduzierbar. Die lokal simulierte Paketwiederaufnahme prüft denselben Fehlerpfad
wie der echte Lauf und anschließend einen korrigierten Aufruf. Dies ersetzt keinen
Erfolgsnachweis mit dem echten Modell.
## Nativer verschachtelter Vertrag v22
Neue Untersuchungen verwenden bei aktiviertem Bootstrap-Framing standardmäßig
`bootstrap_framing_version = 2`, gespeichert in der Untersuchungspolicy. Der daraus
gebildete Kontext trägt denselben Versionsmarker; der Aufruf heißt
`investigation_bootstrap_v22`. Die Konfiguration im schlanken Testprofil setzt
diese Version ausdrücklich.
Für Gemini im Modus `json_object` erhält `responseJsonSchema` jetzt auch die
verschachtelten Typen und Pflichtfelder von `assessment` und `update`, insbesondere
`working_brief.findings.items`. Jedes Belegelement muss ein Objekt mit `id`,
`direction`, `text`, `scope` und `evidence_refs` sein. Referenzen müssen als Liste
von Strings vorliegen. Auch `retired` und `next_step` behalten ihre Struktur.
Die Projektion wird aus dem lokalen Ausgabeschema erzeugt; sie enthält keine
zusätzliche fachliche Zusammenfassung und verändert das Schema nicht.
Der native Vertrag ist bewusst eine Strukturprüfung, ohne die komplexen
Werkzeugalternativen von `next`. Wertebereiche, ID-Muster, zulässige Aktionen,
Provenienz und fachliche Belegprüfung bleiben Aufgaben der vollständigen lokalen
Validierung. Das vollständige Schema bleibt im Cachepräfix enthalten. Explizites
Caching, Cache-Messung und sichere Fehlerdiagnosen unterstützen v22.
Version 1 und alte Policies ohne Versionsfeld behalten v21 und dessen äußeren
Vertrag. Gespeicherte Kontexte werden nicht migriert. Eine explizite abweichende
Policy wird abgelehnt. Für den nächsten Test muss daher ein Checkpoint vor der
Initialisierung der Untersuchung oder ein neues Eingabepaket verwendet werden;
der zuvor vorbereitete H3-Checkpoint würde weiterhin v21 nutzen.
Lokale Transporttests prüfen den tatsächlich gesendeten Vertrag, nicht nur den
Prompt: String-, Array-, Null-, Zahlen- und Bool-Einträge als Belege werden
abgelehnt; ausgefüllte Objektbelege sind zulässig. Weitere Prüfungen decken
verschachtelte Feldtypen, Cache-Erzeugung/-Wiederverwendung sowie Paketwiederaufnahme
mit beiden Versionen ab. Ob der Anbieter den neuen Vertrag im echten API-Aufruf
akzeptiert und zuverlässig befolgt, muss weiterhin im Nutzer-Test geprüft werden.