Add durable evidence storage and item-level novelty accounting
This commit is contained in:
1 parent
66c76a9930
commit
c03f70e3e1
15 files changed
+1040
-2
No files matched your search
@@ -114,4 +114,18 @@ def test_full_bug20_package_pair(tmp_path):
|
||||
assert queried["results"][2]["data"]["matches"][0]["row"] == {"ID":11117}
|
||||
assert queried["results"][2]["data"]["coverage"] == "unknown"
|
||||
assert hashlib.sha256(accounted.package.read_bytes()).hexdigest() == before_query_hash
|
||||
from viano_bug_analysis.evidence import EvidenceStore
|
||||
for asked in request["requests"]:
|
||||
budget.reserve(*identity,asked["hypothesis_id"],asked["action_id"],asked["operation"])
|
||||
current=budget.snapshot(*identity)
|
||||
queried=InvestigationToolRouter(database_tool=DatabaseQueryTool(normalize_schema_descriptor)).query(current.package,request)
|
||||
evidence=EvidenceStore(store,router=InvestigationToolRouter(database_tool=DatabaseQueryTool(normalize_schema_descriptor)))
|
||||
saved=evidence.store_tool_results(*identity,"real-snapshot-query",request,queried)
|
||||
assert len(saved.record_refs)==3
|
||||
assert budget.snapshot(*identity).state==current.state
|
||||
assert PackageValidator().validate(saved.package).valid
|
||||
for asked,ref in zip(request["requests"],saved.record_refs):
|
||||
budget.record_evidence(*identity,asked["hypothesis_id"],asked["action_id"],ref)
|
||||
budget.settle(*identity,asked["hypothesis_id"],asked["action_id"],semantic_score=50,reason="Offline provenance regression")
|
||||
assert CaseBuilder(store).build(*identity).reused
|
||||
assert [hashlib.sha256(path.read_bytes()).hexdigest() for path in (diag, src)] == original_hashes
|
||||
Reference in new issue
Block a user