feat(observatory): add laboratory setup preflight
This commit is contained in:
@@ -107,6 +107,32 @@ valid snapshot, and unavailable/error with retry. If a selected Session disappea
|
||||
selection moves to the first valid source or to the empty state. No demo rows, fabricated progress,
|
||||
placeholder actions or hidden polling are allowed.
|
||||
|
||||
## Session-to-setup configurator slice
|
||||
|
||||
The next bounded slice adds an explicit laboratory Setup selection beside the source Session. A
|
||||
Setup is a versioned, immutable compatibility contract, not a mutable bag of UI parameters. The
|
||||
catalog keeps two independently named historical facts:
|
||||
|
||||
- `M4.9T5 · TRAVEL TGS · полный source-paced shadow` is an archived RunDefinition bound exactly to
|
||||
`20260720T065719Z_viewer_live`. Its configuration references are content-addressed, its primary
|
||||
visual result remains in legacy LAB, and the integrated-graph result is retained as a compute
|
||||
successor rather than presented as a second viewer.
|
||||
- `LAB V1 · финальный записанный контур восприятия` is the current exact RAV004 result bound to
|
||||
`20260828T130511Z_viewer_live`. It predates the product RunDefinition contract and therefore keeps
|
||||
`run_definition = null`; the UI identifies it as an existing result and never fabricates a config
|
||||
digest for it.
|
||||
|
||||
Changing Session fetches only the small setup catalog. Changing Setup performs no computation.
|
||||
Compatibility requires the exact source Session identity, the preserved source label and all
|
||||
required modalities. An explicit `Проверить совместимость` action sends the selected source, setup
|
||||
and RunDefinition digest to a read-only preflight. Digest drift fails closed. The preflight may
|
||||
report an exact existing result or a blocked executor, but it cannot enqueue work.
|
||||
|
||||
The calculation action remains absent until a durable dispatcher exists with an idempotent
|
||||
submission key, immutable RunDefinition receipt, lifecycle ledger and exact result publication
|
||||
receipt. The currently preserved bespoke Worker scenario is not silently treated as that adapter.
|
||||
This boundary also keeps live equipment, historical replay and legacy LAB Rerun profiles separate.
|
||||
|
||||
## Design Guideline composition
|
||||
|
||||
The existing `ApplicationShell`, `AdminNavigationPanel` and `ApplicationPanel` composition remains
|
||||
@@ -130,6 +156,11 @@ workspace.
|
||||
- Linked evidence is never presented as a CV or safety pass.
|
||||
- Existing LAB, Simulation, K1 and Data/Sessions operator behavior remains unchanged.
|
||||
- Live, historical Session and legacy LAB viewer-profile contracts remain distinct.
|
||||
- Session and Setup are independently explicit selections; neither selection submits Worker work.
|
||||
- Both the archived M4.9T5 setup and the current final RAV004 result remain visible and immutable.
|
||||
- A pre-RunDefinition result never receives a fabricated configuration hash.
|
||||
- Preflight is read-only, digest-fenced and reports the missing executor adapter instead of
|
||||
fabricating queued or running states.
|
||||
|
||||
## Canary acceptance
|
||||
|
||||
|
||||
Reference in New Issue
Block a user