# GovOPlaN Reporting **Repository type:** module (domain). `govoplan-reporting` owns report definitions, BI-style views, dashboards, scheduled outputs, and report publication/export behavior. It is intentionally separate from reusable template rendering and from generic dataflow pipelines. The module now provides an executable governed semantic-reporting vertical: - immutable, optimistic-concurrency guarded dataset, semantic-model, report, and quality-plan revisions; - exact source and definition pins, tenant isolation, normalized access grants, row-policy handoff, freshness checks, and reconstructable run provenance; - safe dimensions, hierarchies, measures, typed calculations, filters, detail/summary/pivot queries, parameterized PostgreSQL semantic plans, and accessible chart models without executing arbitrary report SQL; - quality gates, saved views, interval/scheduled runs, CSV/JSON export, provider-neutral publication targets, and import activation assessments; - a versioned, provider-neutral cross-module report contract with source-owned authorization, declared result schemas, privacy transforms, effective scope, source revisions, purpose, retention, export history, and audit provenance; - a full-height Reporting workspace for running, inspecting, saving, scheduling, visualizing, drilling into reauthorized contributors, publishing through Files/Mail, and exporting authorized reports; - a configurable Dashboard widget and explicit policy explanations for hidden fields, rows, and actions. Reporting consumes Dataflow outputs or provider-owned read models. It does not read another module's ORM tables or take ownership of ingestion and transformation. The canonical global route is `/reports`. `/reporting` remains a Reporting-owned compatibility route for saved links. Domain modules may keep their own operational report routes, but do not register `/reports`. ## Data-subject requests Reporting publishes `privacy.dsar.reporting` for private saved views, short-lived drill contexts, subject access grants, minimized staff attribution, and explicitly identified retained executions, exports, and publications. DSAR output never copies report rows, parameters, filters, delivery targets, source payloads, diagnostics, provenance bodies, or hashes. The source module remains responsible for locating and correcting subject facts; arbitrary aggregate report output is not searched as if Reporting were the authoritative owner. Private views and drill contexts can be removed, grants revoked, and exact retained result or publication detail minimized idempotently. Shared views, definitions, schedules, quality/import evidence, and institutional attribution require authorized review or retention. Source facts must be corrected before rerunning or republishing a report. See [docs/REPORTING_BOUNDARY.md](docs/REPORTING_BOUNDARY.md) for the boundary decision. The behavior-level comparison with the supplied SuperX module set is recorded in [docs/SUPERX_CAPABILITY_ASSESSMENT.md](docs/SUPERX_CAPABILITY_ASSESSMENT.md). Operational and recovery behavior is documented in [docs/OPERATIONS.md](docs/OPERATIONS.md), while user and administrator tasks are covered by [docs/USER_GUIDE.md](docs/USER_GUIDE.md) and [docs/ADMIN_GUIDE.md](docs/ADMIN_GUIDE.md). The Reporting route, workspace, state, consequence, and accessibility mapping is recorded in [docs/INTERFACE_PATTERN_MIGRATION.md](docs/INTERFACE_PATTERN_MIGRATION.md).