mirror of
https://github.com/norandom/OpenUltraSAST.git
synced 2026-10-19 04:59:28 +00:00
feat(pair-corpus-honesty): deterministic provenance fingerprint at scan time
Task 6.1. - provenance.py: classify a checkout as human / agent / mixed / unknown from deterministic signals only (.claude/, AGENTS.md, Lovable meta, agent git trailers on a bounded commit sample); no model involved. - cli scan runs a `provenance` stage; the manifest records the result. Co-Authored-By: Claude Fable 5.1 <[email protected]> Claude-Session: https://claude.ai/code/session_01T7XD7x5KonMdmGRkp63EQG
This commit is contained in:
co-authored by
Claude Fable 5.1
parent
c0b9e41000
commit
25fa7aa7e1
@@ -173,6 +173,7 @@ def write_manifest(
|
||||
stages: dict[str, object] | None = None,
|
||||
complexity: dict[str, object] | None = None,
|
||||
worth_fixing: dict[str, object] | None = None,
|
||||
provenance: dict[str, object] | None = None,
|
||||
) -> None:
|
||||
path.parent.mkdir(parents=True, exist_ok=True)
|
||||
verification_by_id = _verification_by_id(verifications)
|
||||
@@ -207,6 +208,8 @@ def write_manifest(
|
||||
payload["complexity"] = complexity
|
||||
if worth_fixing is not None:
|
||||
payload["worth_fixing"] = worth_fixing
|
||||
if provenance is not None:
|
||||
payload["provenance"] = provenance
|
||||
path.write_text(json.dumps(payload, indent=2, sort_keys=True) + "\n")
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user