diff --git a/phase8_iteration36_close.md b/phase8_iteration36_close.md new file mode 100644 index 0000000..0fab5a9 --- /dev/null +++ b/phase8_iteration36_close.md @@ -0,0 +1,43 @@ +## Iteration 36 — Phase 8 (close): Remove env-gated DIAG probes + +Closes 2026-05-14, seventh campaign-day milestone after iter35 (MPEG-2 verification). User requested "clean up the env-gated diagnostics". + +### Removed (env-gated, no behavior change with env unset) + +- **iter29** `LIBVA_HEVC_DUMP_SLICE_TAIL` in `src/h265.c` — refuted 40-byte slice_data inflation theory before α-29 fix +- **iter30** `LIBVA_TS_SCALE` in `src/picture.c` — refuted timestamp magnitude theory before α-29 fix +- **iter33** `LIBVA_VP8_DUMP_FRAME` in `src/vp8.c` — led to discovering α-30 fix (header strip) +- **iter35** `LIBVA_MPEG2_DUMP_FRAME` in `src/mpeg2.c` — confirmed libva MPEG-2 ctrls are semantically correct + +Total: **-131 lines / +7 lines** (one α-7 comment refresh to remove the iter30 reference). + +### Retained (framework-level, preexisting before this campaign) + +- `LIBVA_V4L2_DUMP_OUTPUT` (picture.c α-16) — bitstream OUTPUT dump; useful for future debugging, was instrumental in α-30 discovery +- `LIBVA_V4L2_DUMP_CAPTURE` (surface.c) — sibling CAPTURE dump +- `LIBVA_V4L2_ZERO_CAPTURE` (picture.c) — debugging knob to zero CAPTURE buffers +- `LIBVA_V4L2_REQUEST_VIDEO_PATH` / `MEDIA_PATH` / `NO_AUTODETECT` (request.c) — required env config for device override + +### Regression test post-cleanup (kernel 7.0-14) + +| Codec | libva sha-16 | kdirect sha-16 | Status | +|---|---|---|---| +| H.264 | dd4f5f2d552c07bc | same | PASS | +| HEVC | 108f925bb6cbb6c9 | same | PASS | +| VP9 | cf35908ae0f9ab60 | same | PASS | +| VP8 | d3231e5b6c0ee10b | same | PASS | +| MPEG-2| 95c5905890c937d4 | same | PASS | + +5/5 PASS. Identical hashes to pre-cleanup. No regressions. + +### Substrate state + +- Backend fork tip `7db15a5` (load-bearing fixes α-25 + α-29 + α-30 retained; env-gated DIAG probes removed) +- Kernel `linux-fresnel-fourier 7.0-14` clean (unchanged) + +### Open items remaining (post-iter36) + +1. α-26 cosmetic revert — `decode_params->short_term_ref_pic_set_size = picture->st_rps_bits` is mis-routed (rkvdec doesn't use that field). Could revert to 0. Cosmetic; no behavior change. +2. Libva multi-device probe — architectural change in libva backend (~200-400 LOC). Single-session H.264/HEVC/VP9 (rkvdec) + VP8/MPEG-2 (hantro) without `LIBVA_V4L2_REQUEST_VIDEO_PATH` override per codec. Design judgment from user welcome. + +Campaign in clean ship state. No urgent work.