57 lines
3.2 KiB
Markdown
57 lines
3.2 KiB
Markdown
# Budgetbewertung nach erneutem Belegabruf
|
||
|
||
Bug17 wurde an Generation 103 blockiert, weil drei Antworten nach Recall eine
|
||
Bewertung enthielten, obwohl `previous_result` null war. Die nächste Source-Abfrage
|
||
war plausibel und vollständig. `assessment` betrifft ausschließlich die einmalige
|
||
Budgetabrechnung eines neuen Rechercheergebnisses, nicht eine erneute Bewertung
|
||
alten Inhalts. Recall selbst erzeugt keinen neuen abrechenbaren Auftrag.
|
||
|
||
## Kontextabhängiger Vertrag
|
||
|
||
Neue begrenzte Untersuchungskontexte enthalten `assessment_scope_version: 1`.
|
||
Damit erlaubt ihr Antwortschema bei null `previous_result` nur null `assessment`,
|
||
bei einem offenen Ergebnis dagegen nur ein vollständiges Bewertungsobjekt.
|
||
Das optionale Kontextfeld erhält bestehende gespeicherte Anfragen unverändert.
|
||
Bereits eingefrorene Kontexte werden nicht nachträglich umgeschrieben; die
|
||
Controllerprüfung und neue Rückmeldungen gelten trotzdem auch bei ihnen.
|
||
Fehlerhinweise nennen `/assessment` und erklären das erforderliche Verhalten.
|
||
|
||
## Eng begrenzte Übernahme
|
||
|
||
Bei aktivierter Antwortreparatur und begrenztem Fenster v2 kann ein normaler
|
||
`investigate_one_step` mit ausdrücklich null `previous_result` eine überflüssige
|
||
Budgetbewertung neutralisieren. Voraussetzung sind:
|
||
|
||
- Ausschließlich `assessment`, `observation`, `next` an der Antwortwurzel.
|
||
- Vollständige Bewertung mit Integer-Score 0–100 und nicht leerem Grund.
|
||
- Keine zusätzlichen Belegfelder und keine unbekannten E-Referenzen im Grund.
|
||
- Eindeutige Aktion `tool`/`project.query` mit einem bekannten lesenden Query-Kind.
|
||
- Die Antwort besteht nach Setzen von `assessment: null` das Antwortschema.
|
||
|
||
Beobachtung und Auftrag bleiben unverändert. Original und Regel
|
||
`non_applicable_budget_assessment:/assessment` werden im Aufruf gespeichert;
|
||
die entfernte Bewertung wird weder als Erkenntnis noch als Gutschrift übernommen.
|
||
Anschließend gelten weiterhin sämtliche Controller-, Beleg-, Projekt- und
|
||
Budgetprüfungen vor der Ausführung. Unbekannte Aktionen, fehlerhafte Scores,
|
||
zusätzliche Findings, unklare Belegangaben und ausstehende neue Ergebnisse fallen
|
||
nicht unter diese Reparatur. Fehlende Bewertungen werden nicht erfunden.
|
||
|
||
## Nachweis
|
||
|
||
`test-results/token-usage/bug17-assessment-recovery-offline-20261020.json`
|
||
protokolliert die Übernahme aller drei Originalantworten gegen die exakten
|
||
ursprünglichen Kontexte und die konfigurierte Source-Prüfung. Keine Ausführung,
|
||
keine Budgetänderung, keine neuen bezahlten API-Anfragen.
|
||
|
||
Tests prüfen kontextabhängige Schemas, historische Kontextkompatibilität,
|
||
Originalantworten, Idempotenz, Audit, Ausschluss mehrdeutiger Fälle und einen
|
||
Controllerdurchlauf nach Recall: Ein gültiger Rechercheauftrag kostet genau seine
|
||
regulären Einheiten, ohne zusätzliche Rückerstattung für den bereits bekannten
|
||
Beleg und ohne zusätzlichen LLM-Korrekturaufruf.
|
||
|
||
Prüfergebnis: 212 Tests der breiteren Prüfung bestanden (191,46 Sekunden).
|
||
Die gezielten Tests wurden nach der letzten Präzisierung erneut ausgeführt:
|
||
24 bestanden (6,48 Sekunden); die Mengen überlappen. `git diff --check` ohne Befund.
|
||
Der bestehende Fall ist ohne Budget-/Artefaktänderung von Generation 103 auf 104
|
||
manuell wieder freigegeben. Keine kostenpflichtigen API-Aufrufe.
|