# PENGO-E015 — Crush latency measurement

## First native batch, retained outcome

The original E004117-frame observation is reproduced, but it is not a constant delay. The first finite E015 batch reproduces33 recipes twice from reset at native speed:66 MAME processes,330,706 physical frame evaluations,735.047seconds. All declared trace bytes, sampled rendered pixels and exposed device samples match between each pair. Complete-machine identity remains UNKNOWN.

The registered combined input/observed-prefix identity yields20 contacts and16 complete attributable timelines. A stricter audit groups identical observed contact-prefix hashes with the same ACT and actor, merging three groups despite different input histories: **17 contact episodes and14 complete attributable timelines**. Three censored timelines end in player death before acknowledgement. Original receipt and every attempt remain intact. Shared roots, repeated boards and replicas are dependent measurements, not independent starts.

Usable delays span **97–121 physical frames**; observed values are97,98,99,101,104,105,107,112,116,117,120,121. These comparisons include ACT1–3 and finite timing variants. They establish variability in tested contexts, not a universal distribution or a separate estimate of every stage/animation effect. One-frame rounding is avoided: every clock uses physical frame indices.

| Native excerpt | Contact | Crush animation | Score update | Counter acknowledgement | Delay |
| --- | --- | --- | --- | --- | --- |
| ACT1, preserved input through crush then neutral |1067|1073|1087|1179|112|
| ACT2, preserved input through crush then neutral |3507|3512|3516|3605|98|
| Original E004 ACT3 seed |6778|6783|6807|6895|117|

Sprite disappearance and actor-generation retirement are distinct observations. A hit sprite can become hidden at contact, or transition into a points/replacement sprite without a hidden sample. A missing disappearance frame remains null; it is not silently replaced with counter time. Counter attribution is UNKNOWN when another crush is pending or the decrease does not coincide with the measured actor's retirement. Contact alone is not a confirmed kill.

## Fixed extension before planning

The first batch does not meet the20-complete-event gate. v2 freezes32 additional recipes from all eight original PhaseC roots, in original order, with neutral delays3,4,5,6, the same legal two-frame push and600 neutral frames. Two native replicas each;316,944 maximum physical frames. The extension is launched only after E016's native egg microtests finish. No score selection, favorable-root selection, state loading or memory writes occur.

Combine old and new observations using the stricter observed-prefix/ACT/actor identity. Keep misses, duplicates, censored and confounded cases. The first30 distinct matching contacts in fixed recipe order form the report sample; retain every later contact. E005 remains gated until the declared20-attributable-event threshold and separate egg/controller/reader requirements pass.

## Planning implication

Register verified causal crush events as pending removals, then acknowledge them when the official counter decreases. Do not wait a fixed117frames to recognize the event and do not award a second removal on acknowledgement. No new planner policy or score search runs in E015.9,790 remains best verified planner trajectory,9,090 the incomplete E003 observation, and304,000 a numeric target.

Evidence: `data/pengo/e015/native-latency-v1`, `crush-census-v2`, the v1 and v2 fixed timing protocols, and the reviewed editorial video in `video/pengo/e015/native-latency-v1`. The video labels only the first native batch and does not claim completion of ACT3 or a full-game record. Raw RAM/state traces and ROM remain private.
