Monorepo for Aesthetic.Computer aesthetic.computer

imab hitbaker: the pitch gate — measured targets, iterate until hit master

Every pitched word layer now works like notecheck: measure the source's sung midi (cached .f0.npz beside the stem, else pyin via bin/wordgate.py), snap intent to the nearest chord tone at that bar, render the exact fractional shift (absorbing sung drift), measure the RENDER, correct once if >30 cents off. Gate prints the tally; this bake: 31/31 on target, 0 unmeasurable (first run exposed a cache-key format mismatch that made 28 layers unverifiable - keys normalized). Boundaries law: whisper only, never guessed - takes lacking a words.json get whisper-words.mjs run automatically at bake time. Claude-Session: https://claude.ai/code/session_01LaRrW1RHanS8it7SzgrqeV


+118 -4
2 changed files