fix: clear resolved evidence gaps after a successful scoring retry

This commit is contained in:
2026-10-17 20:19:37 +08:00
parent ef5c3ecab2
commit 9a1afd5020
2 changed files with 5 additions and 0 deletions
+4
View File
@@ -607,6 +607,9 @@ def test_scoring_retry_carries_target_contract_and_specific_repair_feedback(sqli
"description": "实现方法", "required_evidence": ["实验数据", "实现方法"]}
created = services.create_batch(SimpleNamespace(course_version_id=1, rubric_version_id=1), db)
batch = db.get(ScoringBatch, created["id"])
db.add(CriterionScore(batch_id=batch.id, project_id=item.id, criterion_id=criterion["criterion_id"],
status="needs_review", evidence_gaps=[{"target_id": "t1", "reason": "上次未命中正文"}]))
db.commit()
class Client:
calls = 0
def json_call(self, prompt, payload, *args, **kwargs):
@@ -626,6 +629,7 @@ def test_scoring_retry_carries_target_contract_and_specific_repair_feedback(sqli
score = _score_criterion(db, batch, item, criterion, client,
retriever=lambda *args, **kwargs: [], multi_retriever=selected)
assert score.status == "scored" and client.calls == 2
assert score.evidence_gaps == []
@pytest.mark.parametrize("version", [None, 1])