Добавление канонического графа M4.7
This commit is contained in:
@@ -2,7 +2,9 @@
|
||||
|
||||
Date: 2026-08-05
|
||||
|
||||
Status: in progress; M4.0–M4.6 accepted, E47 diagnostic semantic/SLAM shadow is parallel, M4.7 Worker 006 cutover remains next
|
||||
Status: in progress; M4.0–M4.6 accepted, the M4.7 canonical graph and Worker
|
||||
006 shadow artifact are implemented locally, and Worker preflight/full shadow
|
||||
acceptance plus durable cutover remain open
|
||||
|
||||
Audit base: `1b3e0b3` on `feat/simulation-polygon-s1`
|
||||
|
||||
@@ -111,7 +113,7 @@ Those systems remain separate platform workstreams.
|
||||
| Realtime worker | Worker 006 has healthy Triton and persistent perception containers plus live Telegraf | Infrastructure exists |
|
||||
| Worker graph | The persistent process still executes `run_e15_shadow_inference.py serve` with E15/E19/E8/E3/E23 profiles | Open architectural blocker: runtime remains LAB-generation-specific |
|
||||
| Model service | Canonical Triton currently exposes pinned `yolox_s` and `pointpillars`; PointPillars was rejected as a K1 product candidate | Reuse `yolox_s`; do not reopen PointPillars |
|
||||
| CV provider interfaces | No executable `DetectorProvider`, `GeometryProvider`, `TemporalProvider` or object-map contract exists in the product package | Open architectural blocker |
|
||||
| CV provider interfaces | Product-owned source, detector, geometry, temporal, motion, rolling-map and threat protocols plus `LocalObstacleMap` exist under `k1link.perception` | Closed in code; Worker evidence remains open |
|
||||
| LAB execution | 33 evidence definitions are fully classified; M4, E33, E35 and E46J are canonical canaries, E47 is one bounded experimental adapter, and 28 remain read-only legacy | Closed for LAB governance; no bulk legacy migration |
|
||||
| Production import graph | 93 compute modules (72,456 lines), 51 web modules and many direct `web → compute.e*/l*` imports remain | Do not clean wholesale; prohibit new dependencies and isolate the new graph |
|
||||
| Telemetry | Generic pipeline telemetry, multi-contour enrollment, bounded journal and current Worker 006 Telegraf service exist | Reuse; add graph-stage and object-state metrics |
|
||||
@@ -222,6 +224,9 @@ LiveK1Source (later) ──┘ │
|
||||
MotionEstimator
|
||||
│
|
||||
v
|
||||
RollingLocalObstacleMap
|
||||
│
|
||||
v
|
||||
LocalObstacleMap
|
||||
│
|
||||
virtual rig/corridor (M4 only)
|
||||
@@ -495,6 +500,11 @@ Physical mounted threat acceptance remains outside Milestone 4.
|
||||
|
||||
### M4.7 — cut Worker 006 over to the canonical graph
|
||||
|
||||
Status: implementation complete locally on 2026-08-23; Worker 006 preflight,
|
||||
full lossless shadow evidence and durable process replacement are not yet
|
||||
accepted. The current E15 worker and Triton identities remain the rollback
|
||||
predecessor. No K1, Zarya or connection-stack change is part of this phase.
|
||||
|
||||
Deliverables:
|
||||
|
||||
- package one digest-bound worker artifact containing the graph runner, provider
|
||||
@@ -655,7 +665,7 @@ is requested. None may be silently claimed from a successful recorded replay.
|
||||
|
||||
Milestone 4 is complete only when all of the following are true:
|
||||
|
||||
- [ ] One versioned reference graph exists outside experiment-named modules.
|
||||
- [x] One versioned reference graph exists outside experiment-named modules.
|
||||
- [ ] RAVNOVES00 runs through the same graph contract intended for a live source.
|
||||
- [ ] Semantic class and persistent detector ID are optional diagnostics only.
|
||||
- [ ] Camera, fused and geometry-only obstacles share one canonical observation
|
||||
@@ -1135,6 +1145,51 @@ after indexing, a 12-frame spatial chunk was served in approximately `33 ms` and
|
||||
was about `1.27 MB`. M4.7 may proceed only from the corrected identities above;
|
||||
physical-live, collision, navigation and actuation authority remain false.
|
||||
|
||||
### 2026-08-23 — M4.7 canonical graph and shadow release implementation
|
||||
|
||||
`reference-perception-graph/v2` is now the product-owned assembly contract. It
|
||||
composes the admitted recorded source, frozen YOLOX detector, current geometry,
|
||||
bounded temporal state, class-independent motion, rolling local occupancy and
|
||||
replay threat providers without importing an E/L-named module. Rolling retained
|
||||
occupancy is an explicit stage rather than an offline side computation, so the
|
||||
published map preserves the accepted M4.5R/M4.6 rule: current plus retained is
|
||||
occupied, held/expired is unknown, and missing republication never means free.
|
||||
|
||||
The graph has two explicit bounded execution policies:
|
||||
|
||||
- `source-paced-latest-wins` for the later 1× realtime canary, with every
|
||||
superseded or stale packet receiving a terminal outcome;
|
||||
- `lossless-replay` for deterministic parity, with bounded backpressure and
|
||||
zero accepted supersession.
|
||||
|
||||
Every stage is deadline-checked before and after provider work, queue
|
||||
high-watermarks are reported, terminal accounting is closed, and V2 restart is
|
||||
fail-closed unless all stateful providers are freshly instantiated. A production
|
||||
assembly boundary validates the digest of every provider profile and takes only
|
||||
explicit paths to the camera index, video, source pack, local surface, valid-FOV
|
||||
mask and Triton origin. The CLI writes immutable content-addressed frame,
|
||||
terminal, report and manifest ledgers; acceptance requires exactly `4,489`
|
||||
delivered frames with zero failed, stale, superseded, rejected or unavailable
|
||||
terminal outcomes.
|
||||
|
||||
The new Worker package uses transition `m47-canonical-graph-shadow-v1`. It is a
|
||||
separate deterministic artifact and does not relabel the accepted historical
|
||||
`m4-detector-shadow-v1` wheel. Its PowerShell runner verifies release files,
|
||||
inputs, dependency trees, disk reserve, pinned Worker/Triton predecessor and
|
||||
container isolation before it can start the one-shot lossless graph shadow. It
|
||||
adds no public port, never changes Triton, removes the candidate container after
|
||||
the run and re-verifies the predecessor. Provider readiness and graph readiness
|
||||
are emitted separately. The production builder refuses a dirty worktree so an
|
||||
artifact cannot claim a Git revision which does not contain its wheel.
|
||||
|
||||
Local contract, graph, result-sealing, artifact and historical-rollback tests
|
||||
pass. This is implementation evidence only. It does not claim that Worker 006
|
||||
has the pinned local-surface input, that preflight has passed, that the 4,489
|
||||
frame graph shadow matches the accepted M4.5R/M4.6 ledgers, or that the durable
|
||||
E15 command has been replaced. Those are the next M4.7 acceptance actions, in
|
||||
that order. K1, Zarya, the stable connection path and physical-live authority
|
||||
remain untouched.
|
||||
|
||||
## Implementation order
|
||||
|
||||
The implementation sequence is intentionally strict:
|
||||
|
||||
Reference in New Issue
Block a user