feat: Warnung bei ungeschützter Sandbox, Prüf-Regel für konstante Kosten, Grund je Korrekturrunde
- sandbox_warning: fehlt bubblewrap oder ist SOLVER_SANDBOX=aus, steht das im Log und in SolverRun.warnings (vorher lief der Code stillschweigend ungeschützt) - Dijkstra-Markierung: der Report erklärt den Begriff selbst (DIJKSTRA_EXPLANATION), check_text_quality zählt das als Erklärung; Stamm 'markier' -> 'markierung' - Pruef-Prompt Regel 7: entscheidungsunabhängige Terme ohne Zahlenwert dürfen weggelassen oder symbolisch mitgeführt werden (wagner_whitin_dijkstra: 1+1 statt 2+1 Korrekturrunden, n=2) - revision_reasons: jede Korrekturrunde nennt ihren Auslöser im Log Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
parent
26f988a953
commit
0f1ab04a8d
1 changed files with 148 additions and 8 deletions
|
|
@ -6,7 +6,7 @@ from pathlib import Path
|
|||
from typing import List
|
||||
|
||||
from checks.model_checks import check_spec, check_understanding, has_errors
|
||||
from checks.review import needs_work, review_assumptions, select_best
|
||||
from checks.review import needs_work, review_assumptions, revision_reasons, select_best
|
||||
from core.llm import DEFAULT_MODEL, LLMSession
|
||||
from core.model_schema import (
|
||||
AssumptionReview,
|
||||
|
|
@ -89,6 +89,8 @@ def _model_attempt(session, task: str, max_revisions: int, label: str, hint: str
|
|||
while needs_work(review, issues) and revisions < max_revisions:
|
||||
revisions += 1
|
||||
log(f"[{label}] Probleme gefunden – Korrekturrunde {revisions}/{max_revisions} ...")
|
||||
for grund in revision_reasons(review, issues):
|
||||
log(f" Grund: {grund}")
|
||||
spec = revise_model(session, task, spec, review, issues)
|
||||
issues = check_spec(spec, task, understanding)
|
||||
review = review_assumptions(session, task, spec)
|
||||
|
|
|
|||
Loading…
Reference in a new issue