feat(plugins): isolate device integrations
This commit is contained in:
@@ -16,18 +16,22 @@ commit complete fMP4 segments before their index rows. These are explicit
|
||||
crash-RPO bounds, not a zero-loss or disk-replication claim. The former
|
||||
Foxglove bridge remains only as a legacy regression module.
|
||||
|
||||
The repository is intentionally migrating in stages. The current `src/k1link`
|
||||
package is the compatibility implementation of the first plugin path; vendor
|
||||
transport and codecs will move behind `plugins/xgrids-k1` and the Mission Core
|
||||
Plugin SDK without changing the verified wire protocol or raw evidence format.
|
||||
The backend vendor implementation is physically isolated below
|
||||
`src/k1link/device_plugins/xgrids_k1/`; its reviewed manifest and compatibility
|
||||
profile remain below `plugins/xgrids-k1/`. Mission Core host code discovers
|
||||
archive sources, recovery hooks and recording exporters only through the plugin
|
||||
runtime contribution. The verified wire protocol and raw evidence format are
|
||||
unchanged.
|
||||
|
||||
Plugin SDK v0alpha2 now provides executable, vendor-neutral identity, session,
|
||||
operation, stream, evidence and compatibility contracts. The meanings remain a
|
||||
local experimental vocabulary rather than a mutation of NODE.DC Platform
|
||||
Ontology. The current runtime is still transitional and in process: it uses an
|
||||
explicitly injected K1 normalizer to produce transport-neutral local consumer
|
||||
views; portable SDK stream envelopes, process isolation, durable operations,
|
||||
multi-device routing and the remote Edge split remain later gates.
|
||||
operation, runtime-action, stream, evidence and compatibility contracts. Every
|
||||
backend action crosses immutable SDK `RuntimeActionInvocation` and
|
||||
`RuntimeActionResult` validation in the actual dispatcher hot path. The meanings
|
||||
remain a local experimental vocabulary rather than a mutation of NODE.DC
|
||||
Platform Ontology. The device process is still transitional and in process: it
|
||||
uses an explicitly injected K1 normalizer to produce transport-neutral local
|
||||
consumer views; portable SDK stream envelopes, process isolation, durable
|
||||
operations, multi-device routing and the remote Edge split remain later gates.
|
||||
|
||||
The current runtime cannot read K1 firmware automatically. It keeps the exact
|
||||
profile inactive until the operator explicitly attests firmware `3.0.2` and
|
||||
@@ -94,7 +98,10 @@ uv run pytest
|
||||
The browser application is the universal Mission Core Control Station rather than
|
||||
a K1-specific Foxglove launcher. Its fixed shell contains six architectural
|
||||
sections — Center, Fleet, Observation, Missions, Data and System — while the K1
|
||||
BLE/Wi-Fi/live workflow remains isolated as the first real device adapter.
|
||||
BLE/Wi-Fi/live workflow remains isolated as the first real device adapter. Its
|
||||
React provisioning, acquisition/replay and diagnostic blocks live beside the
|
||||
plugin manifest under `plugins/xgrids-k1/frontend`; the generic application
|
||||
mounts them through one reviewed composition import.
|
||||
|
||||
Install, type-check, build and serve the complete local application from the
|
||||
repository root:
|
||||
@@ -170,7 +177,7 @@ index use Mac receive/arrival timestamps, not proven K1 sensor timestamps or a
|
||||
photon-to-screen measurement.
|
||||
|
||||
The old Foxglove implementation is retained only in
|
||||
`src/k1link/viewer/foxglove_bridge.py` and its regression tests. The current
|
||||
`src/k1link/device_plugins/xgrids_k1/viewer/foxglove_bridge.py` and its regression tests. The current
|
||||
live/replay runtime does not start it or use TCP 8765. The
|
||||
[live viewer runbook](docs/06_K1_LIVE_VIEWER.md) records the active Rerun path and
|
||||
its timing/security boundaries; the frontend contract is documented in
|
||||
|
||||
Reference in New Issue
Block a user