Add configurable evidence guard for resume tailoring
This commit is contained in:
@@ -140,6 +140,34 @@ def test_tailoring_strength_rejects_out_of_range_values() -> None:
|
||||
tailor_resume(FakeLLM([]), profile(), "long job post", tailoring_strength=101)
|
||||
|
||||
|
||||
def test_profile_evidence_mode_allows_claims_without_fact_ids() -> None:
|
||||
flexible = package()
|
||||
for item in flexible.resume.summary:
|
||||
item.evidence_ids = []
|
||||
for section in flexible.resume.sections:
|
||||
for item in section.items:
|
||||
item.evidence_ids = []
|
||||
llm = FakeLLM([flexible, flexible])
|
||||
|
||||
result = tailor_resume(
|
||||
llm,
|
||||
profile(),
|
||||
"long job post",
|
||||
evidence_mode="profile",
|
||||
)
|
||||
|
||||
assert result.resume.summary[0].evidence_ids == []
|
||||
assert "Per-claim evidence IDs are optional" in llm.calls[1][0]
|
||||
|
||||
|
||||
def test_strict_evidence_mode_still_rejects_missing_fact_ids() -> None:
|
||||
flexible = package()
|
||||
flexible.resume.summary[0].evidence_ids = []
|
||||
|
||||
with pytest.raises(ValueError, match="no evidence"):
|
||||
tailor_resume(FakeLLM([flexible]), profile(), "long job post")
|
||||
|
||||
|
||||
def test_revision_chat_rewrites_and_audits_current_package() -> None:
|
||||
current = package()
|
||||
revised = package()
|
||||
|
||||
Reference in New Issue
Block a user