mirror of
https://github.com/norandom/OpenUltraSAST.git
synced 2026-10-16 11:49:28 +00:00
test(census): record which regions a budget actually reached
A census that reports what it found cannot say whether a defect it missed was examined and cleared or never looked at, and that is the difference between a negative and a silence. It is also how a bounded run budget gets sized without guessing: task 13.3 needs to know at what population the declared PHP target enters scope, and asking the record is cheaper than binary-searching with forty-minute scans. Co-Authored-By: Claude Opus 5 (1M context) <[email protected]> Claude-Session: https://claude.ai/code/session_01EmM1j46qgKMh3zqD1QMwEo
This commit is contained in:
co-authored by
Claude Opus 5
parent
8874145874
commit
f09d788568
@@ -107,6 +107,10 @@ def main() -> int:
|
||||
deferred_by_family: dict[str, collections.Counter[str]] = collections.defaultdict(collections.Counter)
|
||||
for item in result.scope.deferred if result.scope else ():
|
||||
deferred_by_family[item.identity.family][item.reason] += 1
|
||||
# Which regions the budget actually reached, in rank order. A census that reports what it found cannot
|
||||
# say whether a defect it missed was examined and cleared or never looked at, and that is the difference
|
||||
# between a negative and a silence. It is also how a bounded run's budget gets sized without guessing.
|
||||
record["selected_paths"] = list(dict.fromkeys(q.identity.path for q in (result.scope.selected if result.scope else ())))[:400]
|
||||
asked = collections.Counter(q.identity.family for q in result.question_outcomes)
|
||||
completed = collections.Counter(q.identity.family for q in result.question_outcomes if q.status == "completed")
|
||||
found: dict[str, list[dict[str, Any]]] = collections.defaultdict(list)
|
||||
|
||||
Reference in New Issue
Block a user