docs(perception): record m4 temporal acceptance

This commit is contained in:
DCCONSTRUCTIONS
2026-08-05 17:24:56 +03:00
parent 998775c3af
commit 6b810952a4
@@ -2,7 +2,7 @@
Date: 2026-08-05 Date: 2026-08-05
Status: in progress; M4.0–M4.4 accepted, M4.5 temporal/motion is next Status: in progress; M4.0–M4.5 accepted, M4.6 replay threat is next
Audit base: `1b3e0b3` on `feat/simulation-polygon-s1` Audit base: `1b3e0b3` on `feat/simulation-polygon-s1`
@@ -844,8 +844,72 @@ observation bytes.
All ten M4.4 acceptance requirements in the immutable result are true. This is All ten M4.4 acceptance requirements in the immutable result are true. This is
algorithmic and contract acceptance on the recorded source, not a physical-live algorithmic and contract acceptance on the recorded source, not a physical-live
claim and not a Worker 006 cutover. No class name participates in association or claim and not a Worker 006 cutover. No class name participates in association or
range. M4.4 is closed; M4.5 temporal retention and class-independent motion is range. M4.4 is closed.
the next implementation phase.
### 2026-08-05 — M4.5 bounded temporal retention and motion acceptance
The accepted E34 state machine and E51 diagnostic motion thresholds were
extracted into product-owned `k1link.perception.temporal` and
`k1link.perception.motion`. Neither runtime closure imports `k1link.compute`, an
E/L experiment module or a device plugin. The versioned profile
`config/perception/m4-temporal-motion-v1.json` binds the exact M4.4 frame ledger
and freezes the following semantics:
- only current qualified source points create occupied cells;
- all components use ephemeral identities and a bounded eight-sample history;
- association is deterministic spatial reassociation and uses neither detector
identity nor semantic class;
- camera-only/conflicting evidence remains nonmetric uncertainty and cannot
create occupied temporal state;
- current evidence is hit-backed, held evidence is `unknown`, and expired
evidence publishes no cells;
- the occupied TTL is `0.75 s`, with exact deadline semantics independent from
the later replay frame that materializes the expiry event;
- moving/static decisions use only map-frame centroid history, explicit span,
displacement, speed and evidence-sufficiency thresholds;
- insufficient history, stale support, map-frame discontinuity, implausible
speed and the conservative threshold deadband all publish `unknown`.
The canonical provider consumed the immutable M4.4 ledger and sealed a complete
local Mission Core replay:
- result ID:
`m4-temporal-replay-9ed5dcd249ed3bcb81661dd18e2b854a7ffedf3fd2b92b9c994c3c70c34533f2`;
- frame ledger SHA-256:
`1bf1365bdb3f20214443d3f8b87a0fa88f9848af8ca0456b7ca364d37631c3fc`;
- manifest SHA-256:
`c01692d18393877acd432bc6d7b829b8f9f70b36814e0ddfc3c1a31cab65daac`;
- report SHA-256:
`5327782f3ee55bac61a7003fd594adb50f53cb10538d25cbc90a38e3a31ae7a4`;
- `4,489 / 4,489` frames, `0` failed and all `37,457` M4.4 observations
accounted for;
- `27,299` current occupied inputs and `10,158` nonmetric uncertainty inputs;
- `4,305` ephemeral components created and `22,994` frame-local detector
identity changes survived spatial reassociation;
- `27,299` current, `33,707` held and `4,288` expiry publications;
- peak state was `34` active components, `324` cells per component and exactly
`8` history samples;
- `11,365` moving, `1,451` stationary and `52,478` unknown publications;
- zero map-frame jump candidates and zero implausible-speed publications;
- maximum held age exactly `0.75 s`, zero occupied cells after the TTL deadline
and zero false-free claims;
- expiry deadline delay `0 ms`; maximum discrete replay materialization delay
`283 ms`, identical to the separately reported accepted E34 measurement and
not an occupied ghost interval;
- local temporal-plus-motion latency p50 `0.902 ms`, p95 `1.973 ms`, maximum
`5.057 ms`.
Sixteen E46B source-scoped engineering frames are included as explicit aggregate
clip checks. They remain non-independent and have no component correspondence,
so they are evidence coverage, not a moving/static accuracy claim. Independent
object-centric correctness remains the M4.8 gate. A separate repeat execution
produced the same frame-ledger SHA-256, proving that runtime timing does not alter
canonical temporal or motion bytes.
All fifteen M4.5 acceptance requirements are true. Synthetic tests cover ID and
semantic-hint changes, moving, stationary, held, expiry, camera-only uncertainty
and map-frame discontinuity. M4.5 is closed; M4.6 replay-only threat assessment
is the next implementation phase.
## Implementation order ## Implementation order