Files
Find-Word/.agent/evidence-v0.2.5/review-fixes
..

v0.2.5 독립 리뷰 수정 증거

릴리스 차단. ebur128/pyloudnorm loudness 조건은 통과했지만 동일 faster-whisper VAD gate가 새 market WAV에서 1개 segment를 반환했다. requiredEmptyPassed=false이며 이를 true로 요구하는 단위 테스트는 실패 상태다. 승인/commit/push/merge/tag/deploy는 하지 않았다.

기존 상위 .agent/evidence-v0.2.5의 150개 파일은 history-sha256.json으로 고정했다. 수정 전 bundle과 RESULT/정규화 계획은 rejected-* 사본으로 보존한다. 기존 loudnorm input_i의 0.01 LU spread 주장은 전용 ebur128 2.0 LU / 독립 리뷰의 pyloudnorm 0.2.0 1.925 LU와 모순되어 거부된 역사 증거다. 상위 GREEN 표시는 당시 테스트 결과이며 현재 릴리스 통과가 아니다.

TDD와 결과

검사 증거 결과
복원한 전용 ebur128 목표/동등성 01 RED, 06 GREEN 2.0 LU 실패 → 0.0 LU 통과
순수 scalar/사전 peak/보정/비수렴 02 RED, 04 GREEN 7개 통과
exact 새 WAV ASR gate 03 RED, 08 실제 실행, 결과 실패 보존
새 manifest의 빌드 계약 07 RED, 15 unit 해당 39개 통과
새 원자 생성 05 8개 전체 교환
전용 ebur128 독립 측정 스크립트, 결과 전수 −32.5 LUFS, spread 0.0 LU, 최대 −6.2 dBTP
별도 pyloudnorm 독립 측정 스크립트, 결과 −32.6062~−32.5291 LUFS, spread 0.0771547792 LU
Python 전체 11 47개 통과
lint/typecheck 14 통과
npm test 15 143 통과 / 1 실패 (ASR)
build 16 통과
audit JSON 취약점 0개
Chrome desktop/mobile 17, summary 36 PASS, skipped/flaky/unexpected=0
같은 원본에서 두 번 재생성 18, JSON PCM/통계/notice 동일, generatedAtUtc만 제외
역사/원본/음성/dist 보존 20, JSON 통과

현재 manifest의 hash는 ASR와 pyloudnorm 결과에 연결되어 있고 각 WAV hash도 기록되어 있다. ASR 모델 revision/모델 파일 hash/VAD hash/전체 기본 옵션/seed/의존성/스크립트 hash는 final-asr.json에 있다. 기존 실패·no-VAD는 수정하지 않았다. market의 exact SHA-256은 7178307c48c192ac396dcd3c880c377bf56b45e829b459b1feca9f986437e632이며, 반환 구간 10.45–12.45초, 후보 텍스트 Let's go, let's go, let's go.를 그대로 남겼다. 이 텍스트는 검증된 전사가 아니다. humanListeningAcceptance/legalPrivacyClearance는 모두 false다.

독립 pyloudnorm 재현

일반 npm test는 이 가상 환경이나 네트워크를 사용하지 않는다. 아래 절차는 별도의 독립 증거 재현용이다. Python 3.11/Linux x86_64 wheel을 고정했다. 의존성 lock의 모든 버전과 SHA-256을 사용한다. wheel inventory, 설치 로그, freeze를 함께 보존했다. pyloudnorm=0.2.0, soundfile=0.13.1, libsndfile=1.2.2; 나머지 패키지 버전과 Python 버전은 결과 JSON에 있다.

기존 증거를 덮어쓰지 않도록 새 임시 디렉터리에 같은 상대 경로를 구성한다. 설치에는 네트워크가 필요할 수 있지만 WAV 측정은 로컬 파일만 읽는다. open('x')가 기존 결과 덮어쓰기를 거부한다.

review_run=$(mktemp -d /tmp/findword-independent-XXXXXX)
python3 -m venv "$review_run/venv"
"$review_run/venv/bin/pip" install --require-hashes -r .agent/evidence-v0.2.5/review-fixes/pyloudnorm-requirements.lock
mkdir -p "$review_run/public" "$review_run/.agent/evidence-v0.2.5/review-fixes"
cp -a public/ambience "$review_run/public/ambience"
cp .agent/evidence-v0.2.5/review-fixes/measure-pyloudnorm.py "$review_run/.agent/evidence-v0.2.5/review-fixes/"
"$review_run/venv/bin/python" "$review_run/.agent/evidence-v0.2.5/review-fixes/measure-pyloudnorm.py"

동일한 임시 경로에 measure-ebur128.py도 복사해 python3로 실행하면 전용 FFmpeg 계기를 별도 재현할 수 있다. FFmpeg 6.1.1-3ubuntu5와 정확한 input bytes 범위에서 재현성을 검증했으며 다른 빌드의 byte 동일성을 보장하지 않는다.