21 — Reporting Standards

Status: Ratified Version: 1.0.0 Applies to: Reporting Engine, renderers, templates, exports, evidence packages


1. Purpose

Reporting transforms canonical, evidence-backed findings into professional artifacts for technical teams, executives, compliance reviewers, and integrators. Reports are derived only from the Unified Security Schema (08) — renderers never touch raw findings directly.


2. Report Views

View Audience Content
Technical Pentester/engineer Full detail: every finding, evidence, reproduction, affected assets
Executive Management Summary, risk posture, top findings, remediation priorities
Evidence Package Reviewer Raw evidence: screenshots, requests/responses, logs, payloads (checksummed)
Timeline Reviewer/auditor Chronological mission timeline (phases, findings, approvals, tool runs)
Compliance Compliance Mapping to frameworks (OWASP, PCI-DSS, MITRE)

3. Report Data Model

A report is assembled from ReportBundle:

Every report is deterministic: same mission state + same template version = same bytes (up to embedded dynamic timestamps, which are pinned in headers).


4. Export Formats

Format Use Notes
JSON Machine consumers, API, re-import Canonical; includes full USS payload
Markdown Docs, Git, quick review Human-readable, portable
HTML Web review, dashboards Self-contained; no external assets
PDF Client delivery Paginated, branded, cross-platform
SARIF IDE/CI integration Findings mapped to SARIF 2.1.0 schema
CSV (future) Spreadsheet consumption Flat finding table

5. Evidence Package


6. Timeline Report

Renders TimelineEntry sequence with:

Used for auditability and client trust.


7. Compliance Mapping

Framework Mapping source
OWASP Top 10 finding category → A1..A10
MITRE ATT&CK CVE/finding → technique
PCI-DSS finding category → requirement
ISO 27001 / NIST CSF finding class → control family
(extensible) compliance mapping plugin (05)

Mappings are explicit and reviewed; never LLM-guessed for compliance reports (deterministic mapping files; AI drafting optional and labeled).


8. Rendering Pipeline

ReportService.request(mission, views, formats)
  → assemble ReportBundle (from TIDB + graph + evidence refs)
  → for each view: apply template (versioned)
  → for each format: render (deterministic)
  → compute content_hash
  → store artifacts in object store + report records
  → emit report.generated event → notify subscribers

9. Templates


10. Branding & Internationalization


11. Versioning & Retention of Reports


12. Security of Reports


13. Reporting Quality Gates


14. References