[Feature] Add reporting visualization and publication providers #6

Closed
opened 2026-07-30 18:17:54 +02:00 by zemion · 3 comments
Owner

Context

Add charts and durable report publication after the semantic and interactive table layers exist.

Acceptance criteria

  • Define a chart renderer provider contract independent of one charting library.
  • Ship an accessible bounded initial chart catalogue with tabular fallbacks.
  • Let modules announce additional renderers without direct imports.
  • Support saved chart views and Dashboard contributions.
  • Schedule immutable report revisions with bound parameters and source freshness checks.
  • Publish idempotently through declared Files, Mail, or other target capabilities and retain delivery evidence.
  • Keep unavailable optional targets visible only with an actionable capability explanation.

Depends on #5. Architecture reference: docs/SUPERX_CAPABILITY_ASSESSMENT.md.

## Context Add charts and durable report publication after the semantic and interactive table layers exist. ## Acceptance criteria - [ ] Define a chart renderer provider contract independent of one charting library. - [ ] Ship an accessible bounded initial chart catalogue with tabular fallbacks. - [ ] Let modules announce additional renderers without direct imports. - [ ] Support saved chart views and Dashboard contributions. - [ ] Schedule immutable report revisions with bound parameters and source freshness checks. - [ ] Publish idempotently through declared Files, Mail, or other target capabilities and retain delivery evidence. - [ ] Keep unavailable optional targets visible only with an actionable capability explanation. Depends on #5. Architecture reference: `docs/SUPERX_CAPABILITY_ASSESSMENT.md`.
Author
Owner

Codex State: progress

Summary

  • The renderer-neutral chart model, mandatory accessible table fallback, saved visualization state, schedules, immutable publication records, idempotent publication capability, evidence retention and unavailable-capability handling are implemented locally.

Verification

  • 7 Reporting tests passed; Ruff passed; Core WebUI production build passed.

Next / Blocked

  • Retain this issue for richer concrete chart renderer packages, Dashboard widget contributions, and first Files/Mail publication adapters with target delivery/recovery evidence.

Suggested status label: status/in-progress

## Codex State: progress ### Summary - The renderer-neutral chart model, mandatory accessible table fallback, saved visualization state, schedules, immutable publication records, idempotent publication capability, evidence retention and unavailable-capability handling are implemented locally. ### Verification - `7 Reporting tests passed; Ruff passed; Core WebUI production build passed.` ### Next / Blocked - Retain this issue for richer concrete chart renderer packages, Dashboard widget contributions, and first Files/Mail publication adapters with target delivery/recovery evidence. Suggested status label: `status/in-progress`
zemion added
status
in-progress
and removed
status
ready
labels 2026-08-01 14:56:08 +02:00
Author
Owner

Closure audit (2026-08-03)

Renderer-neutral visualization models, mandatory table fallback, saved visualization state, schedules, immutable publication records, idempotent publication dispatch, and evidence retention are implemented. This issue is not yet closable: the default renderer only returns the neutral/table model, there is no accessible concrete chart catalogue, no Dashboard widget contribution, no schedule/publication management UI, and no first Files/Mail publication adapters with recovery evidence.

Close after #5 by shipping the bounded chart renderer, Dashboard contribution, schedule/publication UI, then Files and Mail adapters through capabilities without direct module imports.

## Closure audit (2026-08-03) Renderer-neutral visualization models, mandatory table fallback, saved visualization state, schedules, immutable publication records, idempotent publication dispatch, and evidence retention are implemented. This issue is **not yet closable**: the default renderer only returns the neutral/table model, there is no accessible concrete chart catalogue, no Dashboard widget contribution, no schedule/publication management UI, and no first Files/Mail publication adapters with recovery evidence. Close after #5 by shipping the bounded chart renderer, Dashboard contribution, schedule/publication UI, then Files and Mail adapters through capabilities without direct module imports.
Author
Owner

Implemented and published in 8337aec. Reporting now ships accessible bounded bar, column, line, area, pie, donut, and metric views with tabular fallbacks; a configurable Dashboard widget; schedule pause/resume and publication history UI; and idempotent Files and Mail publication adapters through Core capabilities. Missing optional targets carry actionable availability reasons, and successful publications retain target-specific evidence and the output hash. Verification covers adapter idempotency, optional Files/Mail absence, manifest contracts, UI structure, and the integrated Core build.

Implemented and published in 8337aec. Reporting now ships accessible bounded bar, column, line, area, pie, donut, and metric views with tabular fallbacks; a configurable Dashboard widget; schedule pause/resume and publication history UI; and idempotent Files and Mail publication adapters through Core capabilities. Missing optional targets carry actionable availability reasons, and successful publications retain target-specific evidence and the output hash. Verification covers adapter idempotency, optional Files/Mail absence, manifest contracts, UI structure, and the integrated Core build.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: GovOPlaN/govoplan-reporting#6