Skip to content

feat(app): sync web interface with v3.0.0 API — full table access and effective data visualization #14

@jeandavidt

Description

@jeandavidt

Problem

The web interface (app/) was built against an earlier version of the API and schema. Since then, the schema has advanced to v3.0.0 with significant changes (SignalPort abstraction, ControlLoop, updated ingestion routing, etc.). The interface needs to catch up.

Goals

1. API Compatibility

  • Audit every page in app/pages/ against the current API endpoints in api/v1/
  • Fix broken API calls, missing fields, renamed routes
  • Ensure all Pydantic schema changes are reflected in the UI forms

2. Full Table Coverage

Users should be able to create and edit records for all tables they need to operate the system manually. At minimum:

Table Current status
Site, Facility, Location needs audit
Equipment, EquipmentModel needs audit
SignalPort likely missing (new in v3.0.0)
Channel needs audit
Campaign, DataProvenance needs audit
Sample, SampleType, SampleMethod needs audit
ControlLoop likely missing (new in v3.0.0)
Lookup tables (Unit, Parameter, QualityCode, …) needs audit

3. Data Visualization

  • Time series plots for Channel values should still work after the Channel/SignalPort refactor
  • Plots should correctly handle scalar, vector, and (where reasonable) matrix value types
  • Explore page (11_Explore.py) should support filtering by Site, Equipment, SignalPort, Channel

Out of Scope

Workflow-specific UI (campaign mobilization, equipment move) is tracked separately in #15.

Acceptance Criteria

  • All existing pages load without errors against the v3.0.0 API
  • SignalPort CRUD page added
  • ControlLoop page added (or scaffolded with a TODO)
  • Time series visualization works for Channels with scalar values
  • All lookup tables are accessible for manual editing

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions