YTs/YTEVO/YTEVO03_case.md
Название фильма поверх кадра
Заставка главы: номер и вопрос
Плашка человека
Карьера на шкале лет
Маршрут на карте — панель на полкадра
Термин с текстом Писания
Кто это: карточка-отсылка
Участок со спутникаstory_screens в языке клиента6. Цвет7. Звук и музыка8. Круги правок в комнате ревью9. Чему научили 132 правки10. Исходники и ресёрч11. Шортсы и рилсы12. Итог 4K из оригиналов и две машины13. Как собрать следующую версию (v11) — рецепт14. Код: где живёт и что сохранено15. Что взять в следующий фильм16. Известные дефекты v10 и открытые вопросы → v1117. Где что лежитРоман 14.10.2026: «на страницу с ytevo опиши кейс создания этого видео, подход. чтобы не забыть».
Роман 14.10.2026: «ты точно в кейсе всё самое важное записал, все подходы и оставил все исходники, чтобы это использовать в будущем?»
Фильм — один день из жизни Ростислава Плечко: бывший профессиональный боксёр, сейчас девелопер, основатель «Плечко Групп». Канал «Эволюция» (YTEVO).
Итог v10 — 41:23, 4K-лайт 10 бит из оригиналов камер: DriveYTEVO S1/YTEVO03_Plechko_day/03_Exports/YTEVO03_Plechko_day_v10_4K_lite_10bit.mp4(https://drive.google.com/file/d/1PLxZ7OJbuaWlP__78zJdDkEKAjbZfFeb/view).
Комната ревью — https://yt.rya.ae/review/YTEVO03/film/ (там же план v11: 45 карточек, §16).
Проект:/Volumes/T9-Black-2-RYA/YTEVO/YTEVO03_Plechko_day(Drive:YTEVO S1/YTEVO03_Plechko_day).
Хэндоффы —00_Setup/00_Handoff/: последний —HANDOFF_2026-10-14e_YTEVO03_v10_night_check.md(план v11, задание 04:00, список для коммита) — с него начинать v11; фильм и хронология —HANDOFF_2026-10-14b_YTEVO03_v9_round3.md; шортсы —HANDOFF_2026-10-14d_YTEVO03_shorts_v3.md.
03_Exports проекта на SSD и в 03_Exports на Drive. Прошлые версии — только на Drive: 03_Exports/Archive (83 ГБ) и Archive/ (кэши, прошлые комнаты) — две схемы архива в одном проекте, свести к одной при закрытии проекта (freeup.py).Сначала (26–29.09) фильм шёл обычным путём: Google Doc «Путь Ростислава», бриф Assembly, панель Premiere, карты сцен «что где брать». С 04.10 — трек AI Editing: фильм собирается кодом, Premiere не нужен.
00_Setup/08_Cut/scene_maps, главы = вопросы зрителя) → страница структуры https://yt.rya.ae/ytevo/03/episode1/story/ → «да» Романа 04.10 («начало B, остальное по подсвеченному») → монтажный лист 00_Setup/08_Cut/YTEVO03_cut_vN.json (страницы листа — /ytevo/03/episode1/cut/v1/ и /ytevo/03/episode1/editor/): каждый кусок речи с лентой, перебивки (covers), паузы (beats), экраны (gfx), главы (chapters), музыка (music).00_Setup/08_Cut/agents/.00_Setup/06_Day/ и 00_Setup/01_Ingest/ (ингест дня, карта звука); инструменты — scripts/999_extra/wordsync_multicam/.scripts/05_editing/0511_story_cut (sc_conform.py plan · render · join) режет фильм на ~60 частей; у части хэш (состав, цвет, экраны, кодировщик) — правка трогает только свои части, остальные берутся готовыми.00_Setup/08_Cut/vN/_tools/make_vN_cut.py (plan · gfx · music · inserts), копия прошлого плюс правки этого круга словарями (COVERS, FOCUS, BEAT_HOLD, EXTEND, TRIM_START, MUSIC_EXTEND, GAIN_ADD, SPEECH_GAIN_SPLIT …): видно, что именно изменилось и почему. Лист каждый раз собирается заново от v6 со всеми кругами.П1.nn, П2.nn (круги 1–2, кириллицей) и P3.nn, P4.nn (круги 3–4, латиницей, так их и искать), ответ «понял так», место в новой версии и кадры «было / стало»; «сделано» — только с изменением в источнике правды.Время — по v10. Главы — вопросы зрителя (как в слое истории), у каждой свой трек и своё настроение.
Главы для YouTube — те же вопросы с этим временем. План музыки с файлами, уровнями и обрывами — 08_Cut/YTEVO03_music_plan_v10.json (в листе YTEVO03_cut_v10.json → music[] — блок, настроение, энергия, ID трека Epidemic); исходники музыки и звуков — 02_Edit/Sound/v7/; текст структуры — 00_Setup/08_Cut/BRIEF_edl_YTEVO03.md.
story_screens в языке клиента57 экранов фильма — код, а не шаблоны After Effects. Примеры с роликами и движок по шагам — вкладка YTEVO на /kb/claude-visuals/#tab-ytevo.
#0F0F11, белый текст, единственный акцент красный #EE3227, плотные заглавные (шрифты и правила — ДНК канала, web/_data/kb_dna.json → YTEVO). Шаблоны карточек — scripts/05_editing/0510_autocut/screens2.py (без него ни один story_screens*.py не запустится; в git его нет — копия в снимке кода, §14).scripts/999_extra/story_map/story_screens_vN.py, по скрипту на круг (v10 берёт шаблоны v8, v8 — v7 …; карты — _geo, заставки глав — базовый story_screens.py): align (где на самом деле звучит слово-якорь — выравнивание по звуку петлички, edges.py) → build (композиция HyperFrames 0.8.103 на экран: 02_Edit/HyperFrames/ytevo03-cut-screens-vN/screens/<id>/index.html) → preview (кадры поверх чистого черновика) → sheet · lint · verify → render (только через очередь render_queue.py; WebM VP9 с альфой 3840×2160 25p → ytevo03-graphics-vN/renders/<id>.webm; HyperFrames на Memex не запускать — виснет) → check (начало, середина, конец поверх серого) → list (в лист версии). Скрипты vN знают проект сами; базовому story_screens.py (заставки глав) нужен --project <папка проекта>. Строки вызова с переменными — на вкладке KB.anchor_tape — секунда ленты сцены), держится по правилу чтения 0,35 с на слово, не меньше 4 с, до ближайшей склейки − 2 кадра и не дальше следующего экрана.v10/_tools/make_v10_overlay.py поверх чистой картинки; лайт 4K — v10f_master.py на каждую часть отдельно, потом склейка без перекодирования.01_Source_Light) — для просмотра.PI/6 (курс — «фон темнее, герой ярче»).story_color_ref.py: цели эталона (лицо 120, тон кожи 50°, плотность C 24, чёрное p2 10), кубы по группе «сцена · камера» и по куску ref|clip, ручные поправки manual / manual_clip в YTEVO03_color_ref_vN.json, план цвета — YTEVO03_color_vN.json.knee_st, hk, knee_scene — с какого стопа и как мягко сжимать света по сцене) и поправка экспозиции куска manual.dev; ещё 4 правки — «темно» и «лицо красное» (П1.49, P3.16, P3.19, P3.20).~/.cache/ytai/YTEVO03_vN_lut/ (кэш!). Для итога v10 копия всех 232 кубов кэша — в проекте 02_Edit/_cut/v10f_lut/ (MD5, MANIFEST.json, README: вернуть в ~/.cache/ytai/) и на Drive; проявка и look — 01_Source_Proxy/00_LUT/, три куба — 02_Edit/_cut/v1/lut/. ⚠️ Ручная точка чёрного заменяет групповую, а не добавляется к ней — считать от группы. ⚠️ Клип, которого нет в плане цвета, останется без куба и уронит часть — новые клипы (ZV-E1-1933…1936 в v10) — кубом своей группы.match_v9.py): кадр каждого из 567 планов → лицо, чёрное, баланс белого внутри своей сцены; выбивавшиеся поправлены (ночь в машине, Pocket без молочных теней, своды собора, обед у окна).v10/_tools/skin_v10.py (точки лица YuNet, люди — SFace; модели — ~/YTAI/environment/models/face/) на кадрах лайта. Три сцены расходятся между камерами: Лисий Нос (камера A краснее и темнее B), обед (FX3 гуще ZV-E1), машина с Pocket (кожа краснее, чем в других сценах) — карточки с превью в плане v11 (§16).dialog → isolate → nat → music → master: речь с петличек по стемам (32-бит float), живой звук, музыка под речь, мастер −14 LUFS (лимитер −1,5 dBTP); стемы и мастер версии — 02_Edit/_cut/vN/audio/.07_shorts/0701_finished/edges.py): тайминги Whisper врут до 1,7 с; рез — в паузе или ровно по границе буквы, склейка внутри плана прячется сменой крупности (×1,12). По смыслу оставлены «вот вам перчатки», «ну нет», «ну правда». Итог прохода — 08_Cut/v9/fillers_v9.json. ⚠️ Рез паразита не должен задевать соседнее слово, особенно «не / ни»: после прохода — проверка по звуку готового фильма (v10/_tools/hesit/swallow/: где рез по расшифровке ленты задевает не-паразит → слышно ли слово в фильме). По описи резов и таймингам Whisper судить нельзя: 14.10 так родилась ложная тревога «в 11:20 вырезано „не“» (Whisper растянул «не» на паузу) — по звуку «…значит, не мужик» на месте. Сначала подтвердить по звуку, потом называть браком.v10/_tools/hesit/): голос в паузах между словами → второе распознавание (Whisper с подсказкой на «э-э / ну / вот», 25 пустых пауз для проверки — ни одного выдуманного «э-э») → третье, независимое (wav2vec2 без подсказки). Нашлось 14 мест, которые слышат обе модели, 10 — на слух; плюс 13 «то есть / значит» из расшифровки, которые круг 3 не трогал (модели — ~/YTAI/environment/models/wav2vec2-xlsr-russian, Whisper turbo MLX).edges даёт ложное ⛔ (S07, S08) — рендер с --no-edges после проверки глазами и ушами.story_lipsync.py: сдвиг звука куска к губам (поле lipsync у куска речи). Лист каждой версии собирается заново от v6 — после plan проверять, что поправки губ на месте.01_Media/Source/Audio/v10/x12b*_prayer_c1.wav), музыка под ними тише на 9 дБ.epidemic-sound), по треку на главу (§4): под речью не громче −20 дБ (в тихих главах −22); перед пиком фразы музыка обрывается, пик и вдох после него — в тишине, потом возвращается; под архивом боёв — живой зал; колокол и служба — живым звуком; в конце музыку не выключать в полную тишину (P4.11). Под каждым планом — живой звук или музыка: «план без звука» Роман отмечал 5 раз.00_Setup/09_Review_Room/{film,color,film_shorts,story,reels}; список всех — https://yt.rya.ae/review/): черновик 720p/360p (HLS), правки по кадрам, круг «Send to Claude».portal.py pull → room.py pull --dump → «понял так» по каждой правке (vN/_tools/roundN_understood.py) → новая версия → room.py answer + кадры «было / стало» (roundN_done.py) → portal.py send → статус круга (roundN_close.py). Галочки круга (4K-лайт, Drive) — выполнять вместе с версией.asks, группа plan): у v11 их 45 (§16), ответы читать v10/_tools/proposals_v11.py answers <выгрузка>.Подсчёт по словам Романа во всех четырёх кругах (09_Review_Room/film/rounds/round_0N.json, поле quote), числа примерные.
COVERS, вставки inserts, ролики ресёрча.knee_st · hk · knee_scene и manual.dev (§6).EXTEND, TRIM_START, SPEECH_GAIN_SPLIT, края по edges.py.FOCUS, face / hero_x куска.BEAT_HOLD).01_Source/<сцена>/<камера>/: 14 сцен (01_Morning_Run … 14_LisiyNos), камеры CAM-A_FX3, CAM-B_ZVE1, CAM-C_Pocket, петлички DJI-1…4, расшифровки — Transcription/, кубы проявки камер — 01_Source/00_LUT/. Прокси (HEVC, кадр в кадр) — 01_Source_Proxy/, лайт с цветом 4K 10 бит — 01_Source_Light/. Паспорт дня — https://yt.rya.ae/ytevo/03/.00_Setup/08_Cut/research_v7/FACTS.md — факты с источниками: 13 боёв, посты по годам, «проект на миллиард 300» (ждёт сверки с клиентом).research_v7/catalog.html и catalog.json — 2068 записей: что нашлось о герое, где и в каком качестве; второй круг — research_v8/FACTS_v8.md и assets_v8.json (у каждого кадра автор, лицензия, ссылка, где стоит в фильме).01_Media/Source/Docs/ — переписка с героем (telegram_Plechko), PDF «Резиденции Присутствия», статьи, интервью, выписки ЕГРЮЛ; 01_Media/Source/Images/ — около 40 источников (сайты компаний героя, СМИ, Esri Wayback, OSM, Wikimedia) с карточкой *.src.json у файла.01_Media/Source/Video/<автор>_<площадка>/: архивы 28 YouTube-каналов (свой канал героя Plechko_youtube — бои, ТВ-сюжеты, интервью), Instagram* героя, Дарьи и «Присутствия», Telegram «Присутствия», сайт «Плечко Групп»; фото и документы по кругам — research_v7_stills, research_v8_stills, research_v10_stills (настоящие фото строящегося дома); интервью «Радио Вера» — 01_Media/Source/Audio/radiovera. Скачивание — слой scripts/12_acquire/1201_social/ (YouTube, Instagram*, Telegram).KH8Cpg3brBw (1050p), Лабаран 2017 — IDkMpQwEdhg (только 360p). ⚠️ В v10 стоят чужие записи: YT_sqrWkRn2C_k_last_fight_Costa_2018 — канал Александра Игнатова, YT_SlEhe4aDN8I_Labaran_WBA_Asia (…_promoter.mp4) — промоутер EMPIRESPORT BOXING. Обе переименованы и лежат в папке героя Plechko_youtube — это ошибка раскладки. Риск Content ID; решение — §16. Чужое (ТВ, репосты, промоутер) — не перебивка без решения Романа; источники в кадре — подписью.00_Setup/08_Cut/v10/credits_v10.md: шесть фото Wikimedia (CC BY-SA 3.0/4.0 и CC0), карты (OSM, Natural Earth), спутник (Esri, Maxar), Instagram* — строка для описания на YouTube обязательна; материалы компаний героя; ролики с YouTube.00_Setup/08_Cut/media_index.json (281 клип: оригинал, длительность, гамма, откуда), подмена на прокси для черновиков — media_vN_override.json (есть файл — черновик из прокси; YTAI_MEDIA_OVERRIDE=0 — из оригиналов). ⚠️ 368 имён в 01_Media/Source/ — с кириллицей (названия роликов с YouTube); переименовать транслитом вместе с путями в media_index.json.02_Edit/HyperFrames/ytevo03-cut-screens-vN/, рендеры ytevo03-graphics-vN/renders/ (WebM с альфой); при восстановлении с Drive ссылки screens/<id>/assets → ../../assets пересоздаёт build.music[].epidemic_id); шрифты канала — Bounded и Inter..srt) и для Instagram*: 04_Shorts/ и 04_Shorts/Instagram/; v1 и v2 — 04_Shorts/Archive/; комната reels. ⚠️ Сделаны до правил 13.10 и до 132 правок: S01 «Чего не умеет сильный?» несёт запрещённое слово — без пересборки не публиковать.04_Shorts/Film/ (5 + Instagram*), прошлые — 04_Shorts/Film/Archive; комната film_shorts.sh3 собран движком фильма из отрезков ленты сцены — одна мысль одного человека одним дублем: 00_Setup/07_Shorts/_session_tools/make_shorts_master_v3.py → лист 08_Cut/YTEVO03_cut_sh3.json, разделы 07_Shorts/sections_sh3.json, мастер 02_Edit/Shorts/YTEVO03_sh3_shorts_master_4k.mov (12 529 кадров, цвет итога v10f, звук −14 LUFS без музыки; 2,35 ГБ, пока только на SSD — на Drive его довезёт синхрон). Восемь шортсов и четыре задания: 07_Shorts/YTEVO03_shorts_job_v10.json (Ростислав, S01–S05), …_v10_arkady.json (S06), …_v10_arkady_car.json (S07), …_v10_darya.json (S08); отбор picks_v10.json. Цепочка — _session_tools/: make_words_v10.py, make_shorts_master_v3.py, sh3_build.sh (audio · parts · join), sh3_remote_parts.py (части на Memex), make_picks_v3.py, sh3_shorts.sh (edges · music · render · insta · sheet), dry_sheet.py, sh3_room.sh (комната). Комната film_shorts — сейчас v1 и v2, v3 добавит сессия шортсов. Картинка круга — прокси 4K 10 бит; после «ок» — тот же лист с оригиналов (тег sh3f).scripts/07_shorts/0701_finished/shorts.py (ДНК шортсов канала — YTs/YTEVO/shorts_profile.json, shorts_gfx.html).draft_fast — «для итога 4K ключ убрать»): итог пересобран из оригиналов — задание YTEVO03_storycut_job_v10f.json (v10 без draft_fast и без подмены прокси), v10/_tools/v10f_master.py.vignette → rgb24). Лайт — 10-битная упаковка (HEVC Main10, hvc1, BT.709, ~10 Мбит/с) 8-битной картинки; экраны поверх — в 10 битах. Честные 10 бит — части в 10-битном кодеке и маска виньетки 16 бит. Тяжёлый мастер из этих частей был бы вторым поколением 8-битного H.264.03_Exports проекта на SSD, оттуда — на Drive и в комнату; в кэше — только куски.~/.cache/ytai/YTEVO03_v10f_work (16,9 ГБ; на SSD — только ярлык 02_Edit/_cut/v10f, на Drive частей нет). После чистки кэша — пересборка ≈2 ч из YTEVO03_storycut_job_v10f.json (кубы — 02_Edit/_cut/v10f_lut/).~/.config/ytai/res_protect.tsv («регэксп ⇥ до unix-время»), ветку не морозит.v10/_tools/v10f_remote_parts.py — части на Memex, но только с копиями исходников.v10/_tools/v10f_master.master_recipe.py.bak. ⚠️ Из нынешних 8-битных частей он вышел бы вторым поколением 8 бит: для YouTube — части в 10-битном кодеке (ProRes или HEVC Main10) и маска виньетки 16 бит (sc_conform, шаг vignette).00_Setup/00_Handoff/HANDOFF_2026-10-14e_YTEVO03_v10_night_check.md, потом ответы плана v11: portal.py pull → v10/_tools/proposals_v11.py answers <выгрузка> (45 карточек; без ответа — поведение из введения плана).room.py pull --dump rounds/dump_05 → «понял так» (v11/_tools/round5_understood.py по образцу round4).08_Cut/v10/_tools/make_v10_cut.py → 08_Cut/v11/_tools/make_v11_cut.py (W = C/'v11', тег v11) + правки круга словарями; команды plan · gfx · music · inserts. ⚠️ Скрипт читает из W два файла прошлого круга: gfx_v10_new.json (≈ строка 1262) и faces_v10.json (≈ строка 1008). С W = C/'v11' они молча пропадут — вместе с карточкой «Василий Великий» (P4.04) и лицом плана B8.a2g. Завести W10 = C/'v10' и читать их оттуда, свои новые — W/'gfx_v11_new.json', W/'faces_v11.json'. ⚠️ Резы паразитов: filler_cuts() и FV9 (≈ строки 292, 321) читают только v9/fillers_v9.json — новый v11/fillers_v11.json без правки кода не применится. ⚠️ Повторный plan → удалить v11/YTEVO03_cut_v11.before_gfx.json: gfx берёт его вместо нового листа (≈ строки 1233–1236). ⚠️ В 08_Cut/ уже лежит старый lipsync_film_v11.json (05.10, прежняя нумерация) — новый так не называть.make_v11_cut.py plan пишет YTEVO03_storycut_job_v11.json сам (копия job_v6 + тег), руками job_v10 не копировать. Черновик из прокси: после plan скопировать media_v10_override.json → media_v11_override.json (без него движок sc_conform.py возьмёт оригиналы — часы вместо минут); для итога — без override (или YTAI_MEDIA_OVERRIDE=0).YTEVO03_color_ref_v10.json → YTEVO03_color_ref_v11.json: без файла версии load_profile (story_color_ref.py, ≈ строки 193–201) молча возьмёт базовый профиль от 12.10 и потеряет ручные правки цвета кругов 1–4. Потом story_color_ref.py … --to v11; новые куски — копия v10/_tools/pieces_subset.py (в нём жёстко план цвета, лист и задание v10 и --from v9 --to v10, ≈ строки 20, 32, 43–44 — как есть перепишет план цвета v10); кубы кэша — из 02_Edit/_cut/v10f_lut/, если кэш почищен. Рендер черновика (_shell/ytevo03_v10_render.sh) ждёт метку ~/.cache/ytai/YTEVO03_v11/color_ready — цепочку цвета с меткой брать по образцу _shell/ytevo03_v9_color.sh.08_Cut/_shell/ytevo03_v10_audio.sh (dialog → isolate → nat → music → master).story_screens_v11.py (копия v10, проект внутри скрипта): поменять константы PRJ, PRJ9, GDIR, CUT, WORDS, LIST, EXTRA, ALIGN, MEDIA_OV, FILM, VERSION; команды align · build · preview · render · check · list, render — через render_queue.py. preview рисует поверх чистого черновика ~/.cache/ytai/YTEVO03_vN/YTEVO03_vN_draft_720p_clean.mp4 (только кэш; у v9 уже удалён) — сначала собрать чистый черновик v11._shell/ytevo03_v10_render.sh (макбук), v10/_tools/v10_remote_parts.py prep/run --from 20 (Memex) и make_v10_overlay.py (экраны поверх). Все три жёстко на v10: v10_remote_parts.py — задание, список JSON (с 02_Edit/_cut/v10/parts.json), папки кубов v9/v10, лог (≈ строки 29–35); make_v10_overlay.py — лист v10 (≈ строка 36) и папки экранов G3–G10; _shell/ytevo03_v10_*.sh — пути v10 по всему тексту. Как есть они соберут части v10, а кубы v11 на Memex не попадут._shell/ytevo03_v10_finish.sh → _shell/ytevo03_v10_portal.sh (пути v10 заменить) (лесенка ffmpeg напрямую → HLS → push → publish), ответы и закрытие круга — roundN_done.py, roundN_close.py.v10/_tools/v10f_master.py, но в ней ~15 жёстко прописанных значений v10: J, B, LITE, A = master_v10.wav, LOG, RE_LOC/RE_REM, MXD/MX_PARTS, шаблоны pkill (≈ строка 327); prep читает cut_v10, color_v10, job_v10 (≈ строки 426–433); GD (строка 45) — папки рендеров экранов v3, v6–v9: дописать v10 и v11 и в порядок подстановки; путь на Drive — DST (строка 41), его не менять; строка 99 — screens() читает YTEVO03_cut_v10.json: не поменять — экраны v11 встанут по времени v10 (при другой длине finish() упадёт уже после двухчасового рендера частей). run → finish() всегда сам заливает итог на Drive. Поменять все на v11, имя итога — YTEVO03_Plechko_day_v11_4K_lite_10bit.mp4: недоправленная копия запишет картинку v11 со звуком v10 поверх сданного v10. Сданный v10 после «ок» по v11 — в Drive 03_Exports/Archive с записью в журнал. Комната из итога — _shell/ytevo03_v10f_portal.sh (1080/720/360).editing_status.py set YTEVO03 …, хэндофф в 00_Setup/00_Handoff/, сообщение в ветку pin_context.py YTEVO03 --report.Карточки плана v11 → где править код:
p11_d02 (Коста) — клип героя KH8Cpg3brBw (30 fps, 1050p): латинская запись в media_index.json и строка в плане цвета (99_Extra__EXTRA, cube: null), иначе часть упадёт; моменты 452,08 и 464,12 отсчитаны по ролику Игнатова — у героя искать те же удары заново.p11_d03 (Лабаран) — по ответу Романа: клип героя 360p IDkMpQwEdhg, оставить промоутера или убрать перебивки.p11_d04 — новый экран V11.optina (ссылка крупно и полностью). p11_d05 — замена рендеров застройщика 30:30–30:44 настоящими кадрами.p11_f*, p11_m*, p11_t* — в v11/fillers_v11.json (секунды фильма → лента через segments_v10.json), резать тем же способом, что 08_Cut/v9/_tools/fillers_v9.py, с проверкой по звуку (hesit/swallow/). p11_d06 (служебные слова) — словарём в make_v11_cut.py (сузить рез до границ паразита по MMS), файл fillers_v9.json не править.p11_s* — manual_clip в YTEVO03_color_ref_v11.json (тон и плотность кожи группы или клипа), проверка — skin_v10.py на новом лайте.~/YTAI/scripts/: движок фильма 05_editing/0511_story_cut/, шаблоны экранов 05_editing/0510_autocut/screens2.py, цвет 05_editing/0511_doc_cut/ (color.py, color_lab.py — их импортирует цепочка story_color_ref), история и экраны 999_extra/story_map/ (story_screens*.py, story_color_ref.py, ytevo03_kb_tab.py), этап шортсов 07_shorts/0701_finished/ (edges.py — края слов), субтитры и заливка 08_youtube/ (subs_words.py, subs_polish.py, upload_youtube.py, yt_auth.py), синхрон дня 999_extra/wordsync_multicam/, скачивание ресёрча 12_acquire/1201_social/, очереди 999_extra/render_queue.py и mlx_queue.py, комнаты 05_editing/0516_review_room/, сторож 18_compute/res.py, синхрон с Drive 14_media/1404_lifecycle/drive_sync.py.0511_story_cut, 0510_autocut, 0511_doc_cut, story_screens_v6…v10.py, ytevo03_kb_tab.py, render_queue.py, mlx_queue.py, wordsync_multicam, 12_acquire/1201_social, слоя 18_compute и этого кейса; этап шортсов и 08_youtube — частично. Поэтому снимок кода на день сдачи лежит в проекте: 00_Setup/08_Cut/_code_snapshot_2026-10-14/ (275 файлов; файлы из git — на коммите YTAI f87b2cdb). ⚠️ Восстанавливать не поверх живого кода (он уже новее снимка): README снимка — rsync --ignore-existing или отдельное дерево с временным HOME. Скрипты шагов версий v2–v10 — 00_Setup/08_Cut/_shell/, конструкторы и инструменты версий — 00_Setup/08_Cut/vN/_tools/. Всё это — на Drive (сверено по числу файлов). Коммит в git — по слову Романа (список — хэндофф 14e).scripts/site/gen_film_reference.py YTEVO03 (текст — YTs/YTEVO/YTEVO03_case.md), вкладка экранов — ~/YTAI/scripts/999_extra/story_map/ytevo03_kb_tab.py all --site <worktree> → scripts/site/gen_kb_claude.py → gen_kb.py (проверка).03_Exports.story_screens в языке клиента, на слово по звуку; рефрейм свободной половины под экраном на полкадра.Всё ниже — карточки раздела «План следующей версии» в комнате фильма (45 карточек; без ответа v11 делает, как сказано во введении плана).
v10/_tools/hesit/swallow/): смысл нигде не перевёрнут, обе модели подтверждают пропажу 8 служебных слов (6:09 «и», 9:54 «даже», 12:06 «это», 14:24 «я», 14:59 «буквально», 15:20 «она», 23:38 «пока», 40:33 «там») — p11_d06; ещё 15 мест — модели расходятся, на слух. ⚠️ Тревога «в 11:20 вырезано „не“» (хэндофф шортсов 14d, ночью попала и в план) — ложная: «…не дойду, значит, не мужик» звучит в диалоге, мастере и сданном лайте (wav2vec2, 681,15 с); карточка снята.p11_d02 — Коста 2018, 12:10–12:16, заменить записью с канала героя; p11_d03 — Лабаран, шесть мест с первого кадра 0:00, у героя только 360p — решает Роман).p11_d05, 30:30–30:44): экран V7.project — 3D-визуализации из PDF резиденций, карточки имён «Афон», «Оптина», «Валаам» — иллюстрации (у «Афона» в описи «похоже, сгенерирована ИИ»), «готовый корпус среди сосен» — с сайта, а дом ещё строится. Против P4.05 и правила «только настоящее»; замены — v10/photos_v10.json (more_src, ask_team) и R8_pr_drone_two_corps_2025.p11_d04, 28:20): «ср. Послание к Римлянам 8:28» 46 px и прозрачный — крупнее и полностью. Подписи авторства и сноски 44–58 px — решить с Романом, исключение ли это из правила мелкого текста.credits_v10.md в описание на YouTube (без неё публикация нарушает лицензию).p11_f01…f14), 10 на слух (p11_m01…m10), 13 «то есть / значит» (p11_t01…t13).p11_s01…s03, превью правки на картинках).lead; сверено сессией шортсов — 07_Shorts/_session_tools/make_words_v10.py, BY_TAPE и FORCE) — поправить в листе фильма.R10_pg_lisiynos_aerial_sunset_2025 — 1179 px, мягкое в 4K: нужен оригинал от команды героя.FACTS.md; в рилсе S02 — «зарабатывать миллиарды»./ytevo/03/ оставить ссылку; решает Роман.170232_note…) и в хэндоффе 14b. Урок — перед удалением проверять копию всех файлов, а не только медиа.01_Media/Source/ (названия роликов с YouTube) и 4 на Drive: три «…история_4K-лайт…» в 03_Exports/Archive и Archive/_ytai_cache/YTEVO03_v3s/…_до_цвета.mov — переименовать транслитом (Drive — по ID).00_Setup/08_Cut/ (YTEVO03_cut_vN.json, YTEVO03_color_ref_vN.json, vN/_tools/), скрипты шагов — _shell/, снимок кода — _code_snapshot_2026-10-14/, ночная проверка v10 и план v11 — v10/proposals/, v10/_tools/hesit/.02_Edit/HyperFrames/ytevo03-cut-screens-vN/ (композиции) и ytevo03-graphics-vN/renders/ (WebM с альфой).02_Edit/_cut/vN/audio/; музыка и звуки — 02_Edit/Sound/v7/, план музыки — 08_Cut/YTEVO03_music_plan_v10.json; кубы итога — 02_Edit/_cut/v10f_lut/; части 4K итога — кэш ~/.cache/ytai/YTEVO03_v10f_work/ (ярлык 02_Edit/_cut/v10f).00_Setup/09_Review_Room/ (правки по кругам — film/rounds/round_0N.json, картинки плана — film/plan/v10/).03_Exports/YTEVO03_Plechko_day_v10_4K_lite_10bit.mp4 (SSD и Drive); архив прошлых версий — только на Drive; рилсы и шортсы — 04_Shorts (актуальные — в корне), мастер шортсов v3 — 02_Edit/Shorts/.~/YTAI/YTs/_ops_log/2026/2026-10-14/: 164853 · 164901 · 164910 — удаление кэшей v1–v9; 170215 — черновик v7 720p в архив экспортов; 170224 — кубы v1 возвращены; 170232 — 53 утраченных файла; 180148 · 180209 — рилсы v3/v2; 192502 — удаление старых экспортов; 192859 — перенос в архив Drive; 191900 — заливка итога v10 на Drive (записано задним числом 15.10); 234101 — кубы итога v10 из кэша в проект и на Drive.~/YTAI/YTs/YTEVO/YTEVO03_case.md командой
python3 scripts/site/gen_film_reference.py YTEVO03. Экраны-образцы — из записи канала в web/_data/kb_dna.json.