feat(perception): seal detector replay evidence
This commit is contained in:
@@ -2,7 +2,7 @@
|
||||
|
||||
Date: 2026-08-05
|
||||
|
||||
Status: in progress; M4.0–M4.2 implemented, M4.3 runtime gate open
|
||||
Status: in progress; M4.0–M4.2 implemented, M4.3 execution seam ready/runtime gate open
|
||||
|
||||
Audit base: `1b3e0b3` on `feat/simulation-polygon-s1`
|
||||
|
||||
@@ -369,6 +369,8 @@ Deliverables:
|
||||
- keep the E46J model, score, NMS, valid-FOV and full-frame profile frozen for the
|
||||
first reference run;
|
||||
- account for zero-proposal frames, pathological boxes and provider failures;
|
||||
- seal a strict digest-bound frame ledger and capacity receipt tied to the exact
|
||||
worker, container, image, artifact, source and Triton identities;
|
||||
- publish provider latency and GPU metrics through the common telemetry path.
|
||||
|
||||
Exit:
|
||||
@@ -699,15 +701,34 @@ wrapper:
|
||||
- all 4,489 accepted immutable E46J frame documents and 15,499 detections map to
|
||||
the new proposal contract with exact frame accounting.
|
||||
|
||||
The fresh execution path is also product code rather than another experiment
|
||||
runner:
|
||||
|
||||
- `k1link.perception.detector_replay` performs one sequential provider request
|
||||
per admitted envelope and seals completed, zero-proposal and failed outcomes;
|
||||
- contracts/accounting, atomic publication, fail-closed validation and the Worker
|
||||
CLI are separate modules; no laboratory or web module is imported;
|
||||
- every result carries exact runtime/container/image/artifact/code identities,
|
||||
actual model/config/mask digests, read-only source and same-host Triton topology
|
||||
assertions, per-frame canonical proposals, end-to-end/core FPS, latency,
|
||||
rejection and failure accounting;
|
||||
- Triton requests pin `yolox_s` version `1` explicitly; the M4 CLI rejects a
|
||||
non-loopback tensor endpoint and credentials embedded in its origin;
|
||||
- the baseline validator now freezes calibration, detector parameters,
|
||||
non-goals and the complete E15 rollback identity instead of merely retaining
|
||||
those fields in JSON;
|
||||
- `require_m4_detector_replay_acceptance` refuses short smoke runs, another
|
||||
worker/node, failed frames, less than 4,489 frames or less than 10.004 FPS.
|
||||
|
||||
This increment does **not** claim a new 4,489-frame Triton execution. The existing
|
||||
E46J 47.840 FPS result remains the baseline evidence. A fresh provider execution
|
||||
requires a digest-bound shadow package; ad-hoc executable staging on Worker 006
|
||||
is prohibited by the deployment canon. Therefore M4.3 runtime/capacity exit and
|
||||
its final checker remain open, and M4.4 does not start yet.
|
||||
|
||||
Validation at this increment: 76 focused-and-related tests and the complete
|
||||
Python suite (`1221 passed, 1 skipped`). Scoped Ruff and strict mypy pass for the
|
||||
new compute primitive and complete `src/k1link/perception` package.
|
||||
Validation after adding the execution seam: 42 focused-and-related tests and the
|
||||
complete Python suite (`1230 passed, 1 skipped`). Scoped Ruff and strict mypy pass
|
||||
for the complete `src/k1link/perception` package and the frozen YOLOX primitive.
|
||||
|
||||
## Implementation order
|
||||
|
||||
|
||||
Reference in New Issue
Block a user