From cea562b511158f1f402bf36227490e77d9a8eea7 Mon Sep 17 00:00:00 2001 From: Matiq Date: Thu, 20 Aug 2026 20:03:58 +0300 Subject: [PATCH] =?UTF-8?q?P4:=20F0=20GATE=20PASSED=20=E2=80=94=20output?= =?UTF-8?q?=20is=20byte-deterministic;=20re-renders=20reproduce=20committe?= =?UTF-8?q?d=20refs=20exactly?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Two test RPPs (res_only1_500 4s, t1kq_only1_1000 6s) rendered twice each via reaper -nosplash CLI. Data chunks identical across runs AND byte-identical to the committed reference wavs. Whole-file differs only in the bext render-timestamp. => bit-exact (bytes) is REACHABLE; the per-run-dithrandization blocker is closed. Next: exact structural chain + kernels + internal 48000/4096 geometry + live A/B/gamma. --- handoff/NOTES_LEVEL.md | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/handoff/NOTES_LEVEL.md b/handoff/NOTES_LEVEL.md index 899cbcd..3b59474 100644 --- a/handoff/NOTES_LEVEL.md +++ b/handoff/NOTES_LEVEL.md @@ -1016,3 +1016,23 @@ vs Python bandres (GAIN=4.132=10^(24.65/40), render_parity): match within ~1.5% 300..2000 (fc300: 1.1798 vs 1.1887; fc1000: 0.11746 vs 0.11714; fc2000: 0.7057 vs 0.6963). => res shape is NOT the source of the res_only1 fc=300 residual (-1.71 over-cut); that residual is level-LUT related (input resonant.wav level differs from fit levels). + +## ============ UPDATE 2026-08-20u: F0 GATE — DETERMINISM VERIFIED (bit-exact REACHABLE) ============ +Re-rendered test RPPs twice each (reaper -nosplash -renderproject on /tmp copies with +RENDER_FILE -> /tmp), then byte-compared data chunks: + +1. res_only1_500.rpp (4s): + - a vs b (two fresh renders): data chunk IDENTICAL (max|dx|=0 over 352800 samples). + - a vs committed res_only1_500.wav: data chunk IDENTICAL. +2. t1kq_only1_1000.rpp (6s, 1587600 data bytes): + - a vs b: IDENTICAL. a vs committed t1kq_only1_1000.wav: IDENTICAL. + +Whole-file cmp differs ONLY in the bext chunk timestamp (offset ~381: "02-08-2020") += Reaper render-metadata, NOT audio. Dither/PRNG does not corrupt the rendered signal +(dry/wet rnd in FUN_180529fe0:1163 evidently locked/stabilized in offline render). + +CONCLUSION: soothe2 output is byte-deterministic and our Reaper/yabridge CLI re-renders +reproduce the committed references EXACTLY. => Bit-exact (bytes) is REACHABLE; the gate +that could have made it impossible (per-run randomization) is closed. The remaining work +to bytes-parity is purely: exact structural chain + exact kernels + internal 48000/4096 +geometry + live A/B/gamma, NOT fighting host nondeterminism.