Current state
Hypatia reads CVE alerts from GitHub APIs:
- DA001-DA004 — Dependabot alerts
- CSA001-CSA004 — CodeQL security alerts
It does not read panic-attack's local .machine_readable/patch-bridge/registry.json.
Gap
panic-attack establishes a per-CVE reach classification from local code analysis:
phantom-declared — listed in Cargo.toml but no use site
phantom-transitive — not declared, pulled transitively
reachable — declared and used
unreachable — declared, used, but not reachable from any entry point
Hypatia is currently blind to this richer classification and cannot reason over reach when scoring findings.
Proposed
Add a new fact source / rule module that reads .machine_readable/patch-bridge/registry.json from the repo under analysis.
Track E findings (motivation)
Today's Track E security sweep across 29 repos revealed that 26/29 repos contained transitive-dep misclassifications that Dependabot alone could not have surfaced. panic-attack catches these locally; hypatia is the natural aggregator.
Acceptance criteria
References
- panic-attack#16 — in-flight PR introducing split
reach values
- Track E sweep summary (in-session, 26/29 repos affected)
Current state
Hypatia reads CVE alerts from GitHub APIs:
It does not read panic-attack's local
.machine_readable/patch-bridge/registry.json.Gap
panic-attack establishes a per-CVE
reachclassification from local code analysis:phantom-declared— listed inCargo.tomlbut nousesitephantom-transitive— not declared, pulled transitivelyreachable— declared and usedunreachable— declared, used, but not reachable from any entry pointHypatia is currently blind to this richer classification and cannot reason over reach when scoring findings.
Proposed
Add a new fact source / rule module that reads
.machine_readable/patch-bridge/registry.jsonfrom the repo under analysis.panic-attack/src/bridge/mod.rs(BridgeReportstruct)phantomintophantom-declaredvsphantom-transitive. Consumer should target the post-chore(deps): bump trufflesecurity/trufflehog from 3.92.4 to 3.92.5 #16 schema (checkschema_version).Track E findings (motivation)
Today's Track E security sweep across 29 repos revealed that 26/29 repos contained transitive-dep misclassifications that Dependabot alone could not have surfaced. panic-attack catches these locally; hypatia is the natural aggregator.
Acceptance criteria
<repo>/.machine_readable/patch-bridge/registry.jsonBridgeReportmatching panic-attack'sschema_version(post-chore(deps): bump trufflesecurity/trufflehog from 3.92.4 to 3.92.5 #16)reach+ classification + severity)PA001-PA004to mirror DA/CSA)References
reachvalues