88 lines
4.5 KiB
Markdown
88 lines
4.5 KiB
Markdown
# GovOPlaN Reporting
|
|
|
|
<!-- govoplan-repository-type:start -->
|
|
**Repository type:** module (domain).
|
|
<!-- govoplan-repository-type:end -->
|
|
|
|
`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).
|
|
|
|
## Git-source WebUI package
|
|
|
|
The repository root exposes `@govoplan/reporting-webui` for Git-tagged release
|
|
dependencies. It mirrors the owning `webui/package.json` version, public
|
|
TypeScript/CSS exports and peer requirements, with entry paths under
|
|
`webui/src`. Consumers provide the shared Core/React peers; the facade runs no
|
|
development or install scripts. The source archive contains `webui/src`, this
|
|
README and any repository license file. Run module development checks from `webui/`; Python
|
|
installation remains governed by `pyproject.toml`.
|
|
|
|
Das Repository stellt `@govoplan/reporting-webui` am Wurzelpfad für versionierte
|
|
Git-Abhängigkeiten bereit. Version, öffentliche TypeScript-/CSS-Exporte und
|
|
Peer-Anforderungen entsprechen `webui/package.json`; die Einstiegspfade liegen
|
|
unter `webui/src`. Gemeinsame Core-/React-Peers stellt die einbindende Anwendung
|
|
bereit. Die Fassade führt keine Entwicklungs- oder Installationsskripte aus.
|
|
Entwicklungsprüfungen bleiben in `webui/`, die Python-Installation weiterhin in
|
|
`pyproject.toml` definiert.
|