docs(perception): record m4 detector acceptance
This commit is contained in:
@@ -2,7 +2,7 @@
|
||||
|
||||
Date: 2026-08-05
|
||||
|
||||
Status: in progress; M4.0–M4.2 implemented, M4.3 local shadow artifact ready/runtime gate open
|
||||
Status: in progress; M4.0–M4.3 accepted, M4.4 geometry/range is next
|
||||
|
||||
Audit base: `1b3e0b3` on `feat/simulation-polygon-s1`
|
||||
|
||||
@@ -750,6 +750,50 @@ removed after success or failure. Durable E15 and Triton are re-verified after
|
||||
the run. This is a Mission Core operator workflow, not a cross-repository deploy
|
||||
workflow.
|
||||
|
||||
### 2026-08-05 — M4.3 Worker 006 runtime acceptance
|
||||
|
||||
The first self-contained execution exposed a real package-boundary defect before
|
||||
frame zero: importing `k1link.perception` eagerly imported legacy
|
||||
`k1link.compute`, which then initialized annotation, device and MQTT modules.
|
||||
Adding the missing MQTT dependency to the container was rejected as a runtime
|
||||
workaround. Instead, the product package initializer was made side-effect free
|
||||
and the frozen YOLOX primitive moved from `k1link.compute` to product-owned
|
||||
`k1link.perception.yolox_object_detector`. Architecture tests now fail if the
|
||||
detector runtime closure imports legacy compute. The complete repository suite
|
||||
after that correction is `1236 passed, 1 skipped`; scoped Ruff and strict mypy
|
||||
are clean.
|
||||
|
||||
Accepted local artifact:
|
||||
|
||||
- patch: `mission-core-m4-detector-shadow-20260805-006`;
|
||||
- code revision: `8bd632509e01fcd0a22b3986cb044cba3248ab2e`;
|
||||
- artifact SHA-256:
|
||||
`2c9d62cb3d1949bcfd0576e95192aac100c8c145d894ebad3f3a40ff3512e4eb`;
|
||||
- wheel SHA-256:
|
||||
`4158784fd40b70c7213b629ed39d664fd2f12eab1c9242ec9a6ebbb366e3dd5a`.
|
||||
|
||||
Immutable Worker 006 result:
|
||||
|
||||
- result ID:
|
||||
`m4-detector-replay-11f83f2e0b81758ac2a5a5fc54e9d293b501678df5f6ef97b5c6069ba08605c5`;
|
||||
- `4,489 / 4,489` completed, `0` failed, `0` rejected;
|
||||
- `15,499` proposals and `181` zero-proposal frames;
|
||||
- end-to-end `24.880292 FPS`, provider core `32.60469 FPS`;
|
||||
- frame latency p50 `29.943714 ms`, p95 `40.417794 ms`, max `323.939743 ms`;
|
||||
- provider tracklets `0`; semantic labels remain diagnostic metadata only;
|
||||
- receipt SHA-256:
|
||||
`81280380ada97548e4991f33727c2cb279b824646024c07ec21e96505d002038`;
|
||||
- frame ledger SHA-256:
|
||||
`9bf5ae17938cd57c112278781b38d54a7187cf2dabc7bb0332acdb1efad721f5`.
|
||||
|
||||
The result passes `require_m4_detector_replay_acceptance`. The candidate
|
||||
container was removed. Durable E15
|
||||
`db2024d05098a6beb6b73bbf43f02c88ede586a4664b2c91182f436a42b3e3ff`
|
||||
and healthy Triton
|
||||
`4232fb040062a8384809e73612baa92b343ddcb60f00c23e7091eb4909959223`
|
||||
retained their exact identities; no public port, cutover or Platform dependency
|
||||
was introduced. M4.3 is closed and M4.4 geometry/range may start.
|
||||
|
||||
## Implementation order
|
||||
|
||||
The implementation sequence is intentionally strict:
|
||||
|
||||
Reference in New Issue
Block a user