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, 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, and exporting authorized reports.
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.
See 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.
Operational and recovery behavior is documented in docs/OPERATIONS.md, while user and administrator tasks are covered by docs/USER_GUIDE.md and docs/ADMIN_GUIDE.md.