Files
NODEDC_MISSION_CORE/docs/adr/0022-operator-surface-ownership.md
T

3.6 KiB

ADR 0022 — Operator surface ownership

Status: accepted, 2026-07-26

Context

The first simulation and LiDAR qualification slices exposed implementation results where they were produced. Saved observation sessions lived in the live spatial workspace, public datasets lived under Polygon, and the local-surface laboratory result was labelled as device diagnostics. This made the operator infer backend history instead of following product concepts.

The same ambiguity affected Centre: separate overview, health and activity pages repeated static capability inventories instead of showing the current compute and network contour.

Decision

Mission Core assigns one owner to each operator concept:

Product area Owns Does not own
Наблюдение Current live sensor scene and live-only spatial controls Saved-session selection or offline experiments
Данные Saved sessions, replay, public datasets, streams, entities and export Simulation execution or laboratory conclusions
Тестировочный контур Versioned laboratory work, test configuration and visual evidence Source-of-record retention or public dataset storage
Центр → Состояние контура Live compute nodes, processes, network reachability and connected devices Static feature inventory or a separate activity page
Система Deeper module, integration, network, audit and configuration administration Daily operational health summary
Парк Devices, sensors and live device operation Offline algorithm-development reports

The existing internal root id polygon remains stable for compatibility, but its operator label is Тестировочный контур and it is last in the header. Legacy ?workspace=polygon-datasets and ?workspace=polygon-run links resolve to Данные → Датасеты. They do not recreate the previous Polygon dataset page.

Saved session replay is mounted only in Данные → Сессии и записи or from a LAB entry. Leaving either archive returns Наблюдение → Пространственная сцена to the runtime-published live source. A selected archive cannot leak into the live observation surface.

Dataset sources use a single-open accordion. Expanding one source mounts its viewer and analysis inside that source card, pushes later sources down, and closes the previously expanded source.

The laboratory archive reads immutable LAB instances from the existing observation-session catalog. The E29 local-surface result remains a read-only laboratory surface and is no longer presented as live LiDAR diagnostics. A future device-diagnostics workspace must require an attached device and its own diagnostic contract.

Contour health reads only live contracts:

  • GET /api/health;
  • GET /api/v1/device-plugin-runtimes;
  • GET /api/v1/polygon/worker;
  • current Mission Runtime state for active device and perception metrics.

Unknown or unavailable values remain empty/offline. The UI does not invent load, latency, activity or connected devices.

Consequences

  • Public datasets and private sensor records are both discoverable under Data, but remain separate evidence classes.
  • Laboratory evidence is inspectable without confusing it with live device health or closed-loop simulation.
  • The current Simulation Worker may be offline while its prior laboratory evidence remains available.
  • The generic Control Station remains device-neutral; device names and implementation details come from plugin/runtime contracts.
  • New operator pages must declare one product owner before implementation.