Build authorization-gated tenancy evidence harness
Assistant: codex Assistant-Model: gpt-5.6-sol Assistant-Session: 01a0260c-4067-7052-9647-ad000d576e38
This commit is contained in:
parent
2c8e1d41ad
commit
beab2a04d1
32 changed files with 1816 additions and 11 deletions
23
docs/reporting.md
Normal file
23
docs/reporting.md
Normal file
|
|
@ -0,0 +1,23 @@
|
|||
# Reporting contract
|
||||
|
||||
Every target run—pass, finding, inconclusive or abort—uses
|
||||
`schemas/run-report.schema.json`. Reports include authorization and engagement
|
||||
ids, target revision, posture/model, timestamps, sanitized observations,
|
||||
cleanup and credential disposition. They never include response bodies,
|
||||
credentials or severity.
|
||||
|
||||
A finding is routed to `risk-nexus` with supported facts and provenance. A
|
||||
passing report is routed too because its date and target revision define the
|
||||
freshness of the limited assurance. Generate the message body with:
|
||||
|
||||
```sh
|
||||
PYTHONPATH=src python3 -m whitehat_security.cli risk-message evidence/<run>.json
|
||||
```
|
||||
|
||||
The reporter does not edit risk-nexus grading fields. `risk-nexus` decides
|
||||
whether an observation is a finding or note, and owns severity, disclosure,
|
||||
review cadence and escalation.
|
||||
|
||||
Offline calibration stays in this repository and is plainly labeled
|
||||
`evidence_class: fixture`; it is not sent as if it were a target result.
|
||||
|
||||
Loading…
Add table
Add a link
Reference in a new issue