feat(check): 同一行按单元格;业绩条款不再误跳;重复条目只合并显示(C5 修订)
- 送给模型的「同一行」在有框线的表格里按单元格分行 - 「以合同签订时间为准」不再被当成「签订合同时才交」,要附合同的业绩评分项照常查 - 重复的要求各自判断,问题接口给出 duplicate_ids,查标页同组折叠显示、一起处理 - 决策 C5 修订记入 decisions.md;开发集召回 74%、致命级 25/32 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -279,3 +279,17 @@ async def test_over_budget_items_are_undetermined_without_model_calls() -> None:
|
||||
results, stats = await match.run(ctx, uuid4(), items, [d], progress, budget=10)
|
||||
(r,) = results.values()
|
||||
assert (r.verdict, r.reason_code, stats.calls, stats.over_budget) == ("undetermined", "over_budget", 0, 1)
|
||||
|
||||
|
||||
def test_award_time_wording_is_not_award_stage_evidence() -> None:
|
||||
"""「以合同签订时间为准」是业绩的时间口径,不是「签订合同时才交」:要附合同的评分项照常查(check-eval §9)。"""
|
||||
from bid_doctor.check import applicability
|
||||
|
||||
scoring = {
|
||||
"categories": ["scoring"],
|
||||
"title": "项目业绩(10 分)",
|
||||
"requirement_text": "提供2023年以来类似项目业绩,以合同签订时间为准,需提供合同复印件。",
|
||||
}
|
||||
assert applicability.decide(scoring, {}).match
|
||||
later = {**scoring, "requirement_text": "签订合同时提供业绩合同原件备查。"}
|
||||
assert applicability.decide(later, {}).skip == "scoring"
|
||||
|
||||
Reference in New Issue
Block a user