refactor(ui): reuse canonical graph for M4.8 regression

This commit is contained in:
DCCONSTRUCTIONS
2026-08-25 00:08:33 +03:00
parent 669bb64423
commit 1084984da2
9 changed files with 322 additions and 261 deletions
@@ -160,6 +160,29 @@ history of rejected approaches belong in Ops.
Primary visual evidence is hosted in one reusable viewer frame.
### Frozen Milestone 4 perception instruments
Milestone 4 admits exactly two operator instruments inside the shared LAB page
template:
1. the M4.8 assisted-correction instrument for editing frozen Worker 006
proposals and adding exact-frame misses;
2. the M4.7 Canonical Reference Graph instrument for synchronized
`VIDEO/CAMERA/3D/PLAN/SEMANTICS`, Worker proposals, current LiDAR, bounded
local SLAM, rolling occupancy and metric-obstacle inspection.
A later M4.8 regression or quality run supplies typed case navigation, manual
anchor overlays and result copy to one of these instruments. It does not create
an experiment-named player, viewer, Rerun configuration, timeline, splitter,
spatial renderer or loading grammar. A manual exact-frame annotation is shown
only on the annotated frame unless a separately evidenced and reviewable
tracking result exists; ordinary model proposals and graph layers continue on
their own full recorded timeline.
A third perception instrument is a product-surface change. It requires explicit
product-owner agreement before implementation and cannot be introduced by a LAB
adapter, result component or experiment configuration.
The viewer frame must:
- provide the canonical expand/restore `IconButton`;
@@ -1384,12 +1384,66 @@ clearance and passability remain functions of admitted LiDAR/local occupancy,
uncertainty and the configured vehicle footprint. Physical live, navigation,
commands, actuation and collision-safety authority remain false.
The regression reuses the held M4.8 recorded viewer and its CAMERA/3D/PLAN,
single media clock, timeline and bounded spatial cache. Each assisted anchor and
the frozen Worker objects are shown only on their exact source frame; the UI does
not drift a manually drawn rectangle across subsequent frames or fabricate a
track. A later Worker candidate must publish another immutable M4.8R run against
the frozen seed, leaving this baseline available for before/after comparison.
The regression reuses the accepted M4.7 Canonical Reference Graph instrument,
not an experiment-local M4.8 viewer. It therefore retains the complete
VIDEO/CAMERA/3D/PLAN/SEMANTICS graph, one media clock, Worker proposals, current
LiDAR, bounded local SLAM, rolling occupancy and metric obstacles. Each assisted
anchor is an additional exact-frame overlay and is shown only on its source
frame; the UI does not drift a manually drawn rectangle across subsequent
frames or fabricate a track. A later Worker candidate must publish another
immutable M4.8R run against the frozen seed, leaving this baseline available for
before/after comparison.
### 2026-08-25 — perception interface freeze and dataset/training boundary
Mission Core now has two and only two admitted Milestone 4 perception
instruments:
1. the M4.8 assisted-correction instrument used to accept, edit, delete and add
class-free exact-frame boxes over frozen Worker 006 proposals;
2. the M4.7 Canonical Reference Graph instrument used to inspect detector,
camera, semantic, LiDAR, local-SLAM, rolling and threat evidence on one full
recorded timeline.
`M48SmallStaticRegressionVisual` is removed. M4.8R results bind to the immutable
M4.7 LAB identity stored in their source pack and project only typed regression
anchors and navigation into the second instrument. Creating another player or
viewer for an experiment is prohibited unless the product owner first approves
a third reusable instrument. This is enforced by the M4.8R frontend contract
test as well as the product UI canon.
Worker 006 remains an inference-serving boundary. Its frozen `5,236` M4.8 boxes
are model output, not an online-learning state. `0/14` in M4.8R1 means that none
of the fourteen operator-added miss anchors reached IoU `0.50` against those
frozen boxes; it does not mean that Worker 006 emitted no detections.
The assisted-correction instrument is a valid annotation front end but is not,
by itself, a train-ready dataset system. A released camera-obstacle dataset must
add the following immutable control plane around its corrections:
- exact source frame, raw/corrected optical representation, calibration,
preprocessing and frozen model identities;
- explicit annotation completeness and negative-frame state rather than
treating absence of a box as background truth;
- revisioned reviewer and adjudication identity, with candidate-assisted data
kept distinct from independent truth;
- route/time-block train, development and sealed validation partitions to
prevent adjacent-frame leakage;
- one versioned task taxonomy. The first task is class-free
`obstacle-presence`; `critical_corridor_obstacle` remains a planning/clearance
attribute and does not become a detector-class-specific collider rule;
- a content-addressed internal manifest plus COCO detection export and hashes.
A lossy YOLO text folder is not the source of truth.
The already deployed CVAT `v2.70.0` remains the offline review/export control
plane behind this contract; it is not another Mission Core evidence viewer.
Mission Core owns the two product instruments and immutable LAB publication.
Training runs in a separate bounded Worker job/container, initially reusing the
current YOLOX/PyTorch family, and may not mutate the serving Triton repository
or the frozen Worker 006 process in place. A successful job seals weights,
configuration, dataset release, metrics and ONNX identity; only then is a
candidate loaded through the existing Triton seam and measured by a new
append-only M4.8R run plus an independent validation gate.
## Implementation order