{
 "provenance": {
  "derived_from": "16 карточек сцен в analysis/original-atomic/cards/ (8 прошли двойную состязательную проверку и правку, 8 — черновики) + ledger.json (110 планов, 109 адьюдицированных стыков) + пословный ASR-клок + кадровые полосы",
  "derived_by": "основная сессия (Claude Opus 5) 2026-09-10 после того, как многоагентный прогон был прерван лимитом сессии",
  "NOT_done": "Запланированные три независимых вывода по линзам (информация / слушание / монтаж) и их синтез НЕ выполнены — см. раздел «Что не сделано» в плане. ОПРОВЕРГАЮЩИЙ ПРОХОД ВЫПОЛНЕН: 30 возражений (по свидетельствам, по переносимости, по подмене сюжета инвариантом) проверены заново по карточкам, ledger.json, дедуплицированному пословному клоку (739 слов), measurements/silence.json и кадровым полосам; результат — в refutation_log. Не выполнено также прослушивание спорных ASR-меток (спикер «Hmm.» 283.36, p=0.221; «Billy!» 139.93, p=0.279).",
  "status": "черновик, прошедший один опровергающий проход: 30 возражений проверено, все 30 приняты по существу, 4 частных утверждения внутри них отклонены и исправлены (refutation_log.rejected); три независимых вывода по линзам не выполнены"
 },
 "name": "witnessed_change_unit",
 "signature": "unit(world, question) -> (world', question')",
 "summary": "Оригинал собран не из «сцен-тем», а из ЕДИНИЦ ЗАСВИДЕТЕЛЬСТВОВАННОГО ИЗМЕНЕНИЯ. Единица = одно наблюдаемое событие + видимое принятие этого события конкретными людьми + смена вопроса, который зритель уносит дальше. Фильм не объясняет — он показывает, как информация проходит через тела: цифра «161 over 98» существует четырежды (общий план оглашения, лицо отца, рука матери, безмолвный взгляд дочери), и каждый следующий получатель добавляет к ней смысл, которого не было у предыдущего. Монтаж подчинён этому же: план держат, пока он отвечает на текущий вопрос, и режут туда, чего этот план показать не может. Отношение звука и картинки на стыке НЕ единообразно: слово пословного клока пересекает склейку на 40 из 109 измеренных стыков (звук ведёт), а картинка опережает первую реплику нового говорящего на 18 (12 строгих + 6 после длинных пауз, опережение 0.0–0.6 s). Жест держат в одном плане там, где он несёт смысл реплики, и разносят по двум планам там, где склейка обязана показать другого получателя или другую крупность (измерено минимум на шести стыках). Тип стыка кодирует отношение между единицами: затемнение закрывает единицу и меняет место, растворение сжимает время, жёсткая склейка продолжает ход. Физический носитель входит в кадр после того, как вопрос его потребовал (≈115.7), хотя название категории читается на экране планшета за 70 s до вопроса (40.233); коммерческий финал продолжает то самое желаемое будущее, ради которого история и велась. Это описание механики; никакого измеренного удержания, конверсии или эффективности продукта здесь нет.",
 "pseudocode": "# Единица фильма. Продукт-независима: «событие», «носитель», «слушатели», «предмет» — слоты.\n# Выведена из 16 измеренных сцен оригинала (110 планов, 109 стыков, пословный клок).\n# ЧИСЛА В КОММЕНТАРИЯХ — ИЗМЕРЕНО В ИСТОЧНИКЕ (см. measured_in_source), а не норматив переноса.\n\ndef unit(world, question):\n    # 1. ВХОД — не «тема сцены», а расстановка знания и цены\n    who      = world.present          # допускается 0 слушателей (S04 путь, S16 карточка) и ровно 1\n    cost     = {p: p.what_this_costs_him for p in who}   # цена задаёт, КОГО показывать, но НЕ порядок показа\n    provable = world.what_can_be_INSPECTED  # предмет | документ | экран с результатом | тело | место — не «утверждение»\n\n    # 2. СОБЫТИЕ — одно наблюдаемое изменение, а не разговор о нём\n    event = pick_event(world)         # число | предмет | приход | отказ | прикосновение | вопрос\n    if event.is_information:\n        say_it_whole(on=shot_where_everyone_it_costs_something_is_visible)\n        # носитель новости — любой: авторитет, равный, документ, прибор. Крупность выбирается по цене, не по статусу.\n        name_the_situation_but_not_the_way_out()\n        # путь обязан прийти из другой единицы и от другого человека, иначе следующая единица немотивирована.\n        # форма умолчания любая: пути нет | путь назван, но недоступен по цене/сроку | путь назван, но ему не верят.\n        # в источнике — первая форма: «We start managing it today» без плана лечения (S01)\n\n    # 3. ПОЛУЧАТЕЛИ — событие существует ровно настолько, насколько видно, что его приняли\n    for listener in receivers_worth_showing(who, cost):\n        show(listener, picture_before_voice=True)   # порядок, не число: см. measured_in_source\n        if listener.answer_is_bodily and gesture.carries_the_meaning_of_the_line:\n            hold_until(gesture.completed)           # начало → ход → завершение в ОДНОМ плане\n    allow(return_to_source_between_receivers)       # измерено: S01 SH003/SH005, S13 SH098/SH099/SH101\n    require(last_shown_receiver.silence_or_look_or_gesture == formulation_of(question_next))\n    require(everyone_who_will_decide_later.was_in_frame_while_the_grounds_were_spoken)  # кроме внешнего авторитета\n    if len(who) == 1:\n        return_to_same_receiver_in_another_scale(times=3)   # приём новости → решение → последствие\n    if not who:\n        defer_reaction_to_next_unit()       # законно: получатель появляется за границей (S04→S05)\n\n    # 4. ПЕРЕХОД — чем следующий план ОБЯЗАН отличаться\n    while shot_still_answers(question):\n        hold()                                     # держать, пока план отвечает\n    cut_to(what_this_shot_cannot_show)             # реакция | предмет | адресат | масштаб | ось\n    if speech_continues_across_the_join:\n        lead_sound_across_join = True              # звук раньше картинки: 40 из 109 измеренных стыков\n    if the_join_must_show_another_receiver_or_another_scale:\n        split_gesture_across_two_shots()           # недостающая фаза эллиптируется (S12 J080)\n                                                   # либо уже состоялась в первом кадре входящего (S07 J047, S13 J087)\n    forbid(cut_between_two_similar_poses_of_same_speaker_in_same_scale)\n\n    # 5. ВЫХОД — состояние изменилось, вопрос сменился\n    world_next    = apply(event, reactions)\n    question_next = what_is_now_unanswered(world_next)\n    assert question_next != question        # иначе единица не заработала своё место\n    assert someone_changed(world, world_next) or someone_refused_to_change(world_next)\n\n    # 6. ЗАКРЫТИЕ ЕДИНИЦЫ — тип стыка = тип отношения к следующей единице\n    if consequence_complete and next_unit_changes_place:\n        fade_through_black()      # 8 измеренных; место меняется во всех восьми,\n                                  # время измерено только при титре недели или смене света (J093, J096, J104)\n    elif time_is_compressed and emotional_register_continues:\n        dissolve()                # 11 измеренных: сжимает время, не рвёт настроение\n    elif register_changes_from_story_to_graphics:\n        white_flash()             # 1 измеренная (321.7–322.0), совпадает со склейкой 322.033\n    else:\n        hard_cut()                # 90 измеренных: 85 внутри единиц, 5 на границах единиц\n    return world_next, question_next\n\n\ndef film(world, inputs):\n    # Цепочка единиц ВЫВОДИТСЯ из положения, а не берётся из образца.\n    # Продукт-независимый вывод: цена → кто её платит → кто может действовать вместо платящего →\n    # чем положение проверяется → что мешает проверить сразу.\n    units = derive_chain(\n        price     = what_the_situation_costs_and_to_whom,\n        payer     = who_pays_it,\n        agent     = who_can_act_instead_of_the_payer,      # инициатором может быть и сам платящий\n        measure   = how_the_situation_can_be_rechecked_by_the_viewer,\n        obstacle  = what_prevents_checking_it_at_once,     # латентность | недоверие | цена | срок\n    )\n    q = None\n    opening = None\n    for i, u in enumerate(units):\n        world, q = unit(world, q)\n        if i == 0:\n            opening = snapshot(world, geometry=current_scene_geometry)   # для зеркала\n    if opening.event_is_reversible:\n        assert mirrored(opening, unit_of_result)   # тот же свидетель, та же геометрия, обратный знак\n    else:\n        assert same_witness_returns_with_the_same_occasion_and_finds_none(opening)\n    assert change_has_a_named_author(world)        # вслух названо, КТО заплатил цену за инициативу\n    forbid(nameless_change)                        # «оно как-то наладилось» запрещено\n    forbid(the_measurer_becoming_a_promoter)       # см. do_not_transfer\n    return offer_that_continues_the_desired_future(world)\n",
 "inputs": {
  "states": "кто что знает, хочет и боится на входе единицы",
  "cost": "чего событие стоит каждому присутствующему — задаёт порядок показа получателей",
  "relationship": "кто за кого и за что отвечает и перед кем — это задаёт цену события для каждого присутствующего (в том числе обязательство перед партнёром, сотрудниками, банком, а не только перед человеком)",
  "open_question": "вопрос, с которым зритель входит в единицу",
  "setting": "место, свет, предметы, доступные для действия",
  "provable": "что можно ПОКАЗАТЬ и дать проверить, а не только сказать: предмет, документ, экран с результатом, тело, место"
 },
 "states": [
  "знание",
  "вера",
  "агентность (право и возможность действовать)",
  "отношения",
  "практическое положение"
 ],
 "events": "одно наблюдаемое изменение: число, предмет, приход, отказ, прикосновение, вопрос — не «разговор о теме»",
 "reactions": "событие существует ровно настолько, насколько видно, что его кто-то принял; телесный ответ (рука, взгляд, поворот) предпочтительнее реплики. Порядок получателей НЕ сортируется по цене: измеренный монтаж возвращается к источнику между получателями (S01: SH002 отец → SH003 врач → SH004 семья → SH005 врач → SH006 руки матери → SH007 дочь; S13: SH097 отец → SH098 врач → SH099 общий → SH100 отец → SH101 врач → SH102 руки → SH103 дочь). Обязательно другое: последний показанный получатель — тот, чьё молчание, взгляд или жест формулируют вопрос следующей единицы; и каждый персонаж истории, кто позже принимает решение, попал в кадр хотя бы раз, пока звучало основание.",
 "invariants": [
  {
   "statement": "Фильм открывается событием, а не экспозицией: первое слово — уже содержание конфликта.",
   "evidence": [
    "S01/SH001 0.000–2.733: голос врача начинается ≈0.12 s по RMS (ASR даёт 0.00) — на первом же общем плане кабинета с уже впечатанным титром «YOUR BLOOD PRESSURE»; отдельной сцены-экспозиции нет, установка и событие совмещены в одном плане (cards/final/S01.json observations[0], uncertainty[0])"
   ],
   "confidence": 0.95,
   "exceptions": [
    "Прежняя формулировка свидетельства («первое слово «Your» звучит в 0.00 (ASR)») опровергнута собственной финальной карточкой: измеренный по RMS онсет ≈0.12; фильм открывается ≈0.12 s общего плана до первого звука."
   ],
   "slot_fill": "Событие — любое, что можно огласить: счёт, письмо, отказ, показание датчика, вердикт проверяющего. Требование — начать с содержания конфликта, а не с медицинской цифры и не с авторитета."
  },
  {
   "statement": "Факт получает столько получателей, скольким он что-то стоит, и каждый добавляет смысл, которого не было у предыдущего. Если носитель цены один — множественность заменяется повторным возвращением к тому же получателю в другой крупности и в другой момент, и каждый возврат обязан добавить новое.",
   "evidence": [
    "S01: SH001 оглашение (общий) → SH002 лицо отца → SH006 вставка рук матери → SH007 безмолвный взгляд дочери",
    "S13: SH096 цифра → SH097 отец → SH102 руки → SH103 дочь",
    "S14/SH104 286.2–294.4: в кадре один человек (отец), второй участник — только голос в телефоне; смысл добавляется сменой его положения внутри одного плана (cards/drafts/S14.json)"
   ],
   "confidence": 0.8,
   "exceptions": [
    "S03/S04: получателей в кадре нет вовсе (дочь одна) — приём события вынесен за границу единицы",
    "S16: получателей нет; единственный адресат — зритель",
    "Множественность получателей в оригинале обеспечена конвенцией «вся семья на приёме у врача» (cards/final/S01.json present) — это слот, а не требование"
   ],
   "slot_fill": "Если носитель цены ровно один (владелец сам получает письмо о проверке; жилец сам видит мокрый потолок), инвариант выполняется не составом сцены, а тремя возвращениями к одному лицу: кадр приёма новости → кадр решения → кадр последствия."
  },
  {
   "statement": "Картинка МОЖЕТ прийти к слушателю раньше его реплики, но это не общий закон стыка: приём зарезервирован за точками, где важно увидеть, как новость доходит (первое получение новости, детский вопрос, смена хода).",
   "evidence": [
    "Пересчёт по всем 109 адьюдицированным стыкам (ledger.json + дедуплицированный пословный клок 739 слов; стыки, через которые проходит слово, исключены): строгих реакционных стыков — 12: J001 2.733 («That high?» 2.98, +0.25), J008 19.2, J009 20.867, J010 22.9, J034 95.667, J038 111.633, J043 120.9 («Garlic?» 121.11, +0.21), J056 163.967, J074 229.133 («Okay.» 229.24, +0.11), J076 235.133, J082 269.167 («Are you serious?» 269.35, +0.18), J085 275.667",
    "Ещё 6 стыков — то же отношение после длинной паузы: J007, J019, J025, J072, J097, J105. Итого 18 из 109",
    "S06/SH042 110.1: склейка на слушающую внутри слова «from» (110.01–110.23), вопрос «What is it?» 110.89–111.41"
   ],
   "confidence": 0.5,
   "exceptions": [
    "Обратное отношение измерено на 40 стыках из 109: слово пословного клока пересекает склейку — звук ведёт картинку",
    "S09 (самая длинная диалоговая сцена, 15 стыков): «Преимущественно звук ведет (J-cut на первом слове нового говорящего, 0.04–0.54 с); картинка ведет только дважды (163.967, 184.767)» (cards/drafts/S09.json editing.sound_relation)",
    "S10/J073 226.8 — НЕ пример этого инварианта и удалён из свидетельств: это склейка внутри реплики самой говорящей (дочери), в измеренную тишину 226.735–227.09 между «Dad.» и «I want you here…»; входящий SH080 — двойной профильный план, а слушатель (отец) заговорит только в 229.24, через 2.44 s (cards/final/S10.json)"
   ],
   "slot_fill": "Переносится порядок («картинка раньше голоса на точке, где важен приём новости»), а не секундное окно; в другой просодии и в другом хронометраже значения будут иными."
  },
  {
   "statement": "Звук проходит через стык раньше картинки (J-cut), когда речь не должна прерываться.",
   "evidence": [
    "40 из 109 стыков: слово пословного клока пересекает склейку (ledger.json)",
    "S07/J046 128.2: «until» 128.09–128.51 пересекает стык, первое слово после склейки — «it» 128.51 (cards/final/S07.json)",
    "S06 вход: речь с 77.55, чистый кадр 78.2",
    "S13→S14: «I» 285.98 звучит ещё в чёрном, крыльцо проявляется ~286.1",
    "S14→S15: «My» 294.59 на хвосте SH104 до наплыва"
   ],
   "confidence": 0.85,
   "exceptions": [
    "S01: J-cut'ов нет вообще. На всех четырёх сменах говорящего картинка приходит раньше голоса (по RMS: J001 ≈0.27, J002 ≈0.09, J003 ≈0.17, J004 ≈0.12 s) — cards/final/S01.json editing.sound_relation",
    "Прежнее свидетельство «\"We\" 9.38 → cut 9.733 (S01)» РЕТРАКТИРОВАНО: измеренный по RMS онсет «We» ≈9.85, то есть на 0.12 s ПОСЛЕ склейки, а сама склейка лежит внутри измеренной тишины 9.302–9.868 (measurements/silence.json). Оно доказывало обратное — картинку, ведущую звук. Исходная, теперь опровергнутая формулировка сохранена в cards/owner-leads.json L2",
    "Приём привязан к переходам через растворение и затемнение и к длинным репликам одного говорящего, а не ко всем стыкам"
   ],
   "slot_fill": "Переносится приём («звук проходит через стык раньше картинки, когда речь не должна прерываться»), а не окно 0.10–0.40 s."
  },
  {
   "statement": "Правило удержания, а не запрет монтажа. Когда жест несёт смысл реплики, план держат до возврата рук в покой. Когда склейка обязана показать другого получателя или другую крупность, фазы жеста разносятся по двум планам: недостающая фаза либо эллиптируется, либо уже состоялась в первом кадре входящего плана.",
   "evidence": [
    "S01/SH006: рука матери входит ≈11.95, накрывает кисть к «on.» 12.40 — всё внутри плана 11.667–13.433",
    "S11/SH086: капсулы → кружка → глоток → ладони на стол, 3.3 s без единой склейки (cards/drafts/S11.json editing.why_hold)",
    "S07/SH053: левая рука на плечо ≈134.9 → пауза → правая ладонь на «explain» 136.2–136.6 → обе руки неподвижны до склейки 137.867",
    "S09/SH067 7.534 s: рука поднимается и опускается внутри плана",
    "S15/SH106: левая рука отца поднимается 301.6, ложится на макушку дочери 301.9, убирается к 303.1–303.4 — начало, ход и конец в одном плане (cards/drafts/S15.json)"
   ],
   "confidence": 0.55,
   "exceptions": [
    "S13/SH097 (cut J082 269.167): «на последнем кадре SH096 (269.1) обе руки лежали на бёдрах: жест начинается на самой склейке, его начала в общем плане нет» (cards/drafts/S13.json)",
    "S07/J047 130.633: фаза «тянется» — в SH051 («Левая рука дочери входит в кадр снизу ладонью вверх 02:10.2–02:10.4 навстречу пакету»), фаза «касание» — уже в первом кадре SH052 130.6 (cards/final/S07.json)",
    "S07/J048 133.133: «рука наставника остаётся на правом краю пакета до конца плана — отпускания в кадре нет»; в SH053 133.2 «обе его руки свободны от пакета» — отпускание пришлось на склейку (cards/final/S07.json)",
    "S06→S07/J039 114.167: «склейка на дочь до того, как он выпрямился» (cards/final/S06.json boundary_out)",
    "S12/J080 247.367: «Отец НЕ садится: до последнего кадра 247.3 он полулежит на подушках… посадка — эллипсис между SH088 и SH089» (cards/drafts/S12.json)",
    "S13/SH102 (cut J087 280.933): «рука матери… УЖЕ лежит сверху на его руке — контакт существует с первого кадра вставки» (cards/drafts/S13.json)",
    "Оценка модели, не измерение: у 77 из 109 исходящих планов model_estimate.gesture_state_at_join = «mid», у 37 стыков «mid»→«mid» (ledger.json) — противоречит универсальной форме, но само измерением не является"
   ],
   "slot_fill": "Держать до покоя обязательно там, где жест — часть высказывания (объяснение, передача, приём дозы). Там, где важнее показать другого получателя, разрыв фазы законен и его не надо «дочищать» лишним планом."
  },
  {
   "statement": "После решающей информации идёт безмолвное удержание: реакцию дочитывают на лице, а не проговаривают.",
   "evidence": [
    "S01/SH007 13.433–15.400: 1.97 s без речи",
    "S13: безмолвное удержание 283.838–285.978 (2.14 s) внутри SH103 (282.867–285.700, 2.833 s), которому предшествует невербальное «Hmm.» 283.36–283.76 (ASR p=0.221, метка спикера спорна) — cards/drafts/S13.json, measurements/silence.json",
    "S10: пауза без реплик 223.73–225.68 (1.95 s) распределена по SH078 (1.433 s) и началу SH079 (0.58 s) — одному плану она целиком не принадлежит (cards/final/S10.json)",
    "S12/SH095 263.4–265.8: ≈0.85 s в цифровой тишине после «I feel great.» (cards/drafts/S12.json boundary_out)"
   ],
   "confidence": 0.85,
   "exceptions": [
    "Прежние значения «S13/SH103 2.83 s без речи» и «S10/SH078 ≈1.95 s молчания» исправлены: 2.83 s — длина плана, в котором стоит вокализация «Hmm.»; 1.95 s — длина паузы, а не плана (1.43 s)"
   ],
   "slot_fill": "Безмолвное удержание меряется тишиной, а не длиной плана; его носителем может быть лицо, руки или предмет в руках."
  },
  {
   "statement": "Пауза перед ответом принадлежит лицу спрашивающего, а не отвечающего.",
   "evidence": [
    "S02: «right?» 22.70 → «Yeah,» 23.90 (≈1.2 s), причём план дочери SH012 держится 1.0 s без голоса и принимает закадровое начало ответа",
    "S13/SH100: 0.62 s молчания на лице отца ДО «Aged garlic»"
   ],
   "confidence": 0.85,
   "slot_fill": "Пауза на лице спрашивающего работает и без диалога: адресатом может быть документ, экран или дверь, если ответ приходит оттуда."
  },
  {
   "statement": "Повторное объяснение того же предмета оправдано сменой слушателя И сменой стандарта доказательства.",
   "evidence": [
    "S06 ребёнку: «the little pipes that carry your blood» — метафора, без чисел",
    "S09 взрослому-скептику: механизм (S-allyl cysteine), личное число «121 over 78», критерий подлинности (тёмно-янтарные, 20 месяцев), условие «Take it two months»"
   ],
   "confidence": 0.9,
   "slot_fill": "Смена стандарта доказательства обязательна, длина объяснения — нет: скептику можно ответить показанным документом или прогоном механизма, а не монологом (см. invariants[20])."
  },
  {
   "statement": "Вопрос закрывается действием с инспектируемым носителем, а не ещё одной репликой.",
   "evidence": [
    "S06: «What is it?» 110.89–111.41 → «Come, let me show you» 111.91–113.65 → S07: шкаф ≈115.7, пакет на столе 118.30, имя «Aged garlic» 119.79–120.49"
   ],
   "confidence": 0.9,
   "slot_fill": "Носитель не обязан быть товаром: готовая папка перед проверяющим, экран с результатом, сухой пол под сработавшим датчиком. Действие должно быть инспектируемым, а не символическим."
  },
  {
   "statement": "Носитель предложения живёт в руках людей и переходит из рук в руки; внутри истории он почти не отделяется от них в самостоятельный товарный план.",
   "evidence": [
    "S07/SH052: крупный план передачи, пальцы дочери на пакете с первого кадра 130.6",
    "S09/SH062: передача пакета отцу 159.74–163.9",
    "S15: пакет виден 5.3 s подряд только в руках дочери 300.3–305.6"
   ],
   "confidence": 0.75,
   "exceptions": [
    "S07/SH055 140.267–141.633 (1.366 s) — единственная в истории товарная вставка: лиц нет, речи в плане нет (в него заходит только хвост слова «Billy!» 139.93–140.37, начатого ещё в SH054), единственное содержание кадра — читаемая лицевая сторона упаковки «RESILIA · AGED ODORLESS GARLIC · WITH COQ10 UBIQUINOL» при неподвижных руках. Поставлена как приём удержания после передачи (cards/final/S07.json)",
    "S16/SH110 322.033–325.682: товарный кадр без людей — но он вне истории, это карточка предложения (cards/drafts/S16.json)"
   ],
   "slot_fill": "Инвариант требует ИНСПЕКТИРУЕМОГО НОСИТЕЛЯ, физически переходящего между людьми, а не физического товара: предмет, документ, экран с результатом, ключ доступа, уведомление на чужом телефоне. Если продукт нематериален, носителем становится артефакт его работы (готовая папка перед проверяющим; сообщение соседу снизу «перекрыл, всё сухо»)."
  },
  {
   "statement": "Тип стыка кодирует отношение между единицами: затемнение закрывает единицу, растворение сжимает время, жёсткая склейка продолжает ход.",
   "evidence": [
    "8 измеренных затемнений: J091 15.7, J092 43.9, J093 143.1, J094 159.5, J095 231.6, J096 244.9, J104 266.1, J097 285.9",
    "11 измеренных растворений: J098 77.75 (S05→S06), монтаж недель (J099 249.9, J100 253.4, J101 257.6, J102 260.1, J103 263.0) и финальный VO (J105 294.85, J106 300.1, J107 305.7, J108 310.7, J109 315.95)",
    "90 жёстких склеек (Counter по ledger.json: 89 «hard cut (scdet)» + 1 «hard cut (dense detector; adjudicated)» на 48.5): 85 внутри единиц и 5 на границах единиц — 28.533 (S02→S03), 54.633 (S04→S05), 114.167 (S06→S07), 223.667 (S09→S10), 322.033 (S15→S16)",
    "1 вспышка в белое 321.7–322.0, совпадающая со склейкой 322.033"
   ],
   "confidence": 0.95,
   "exceptions": [
    "Прежние числа исправлены: было «11 измеренных растворений», перечислено 10 (недоставало 77.3, S05→S06); было «89 жёстких склеек внутри единиц» — измерено 90, из них 5 стоят на границах единиц",
    "На границе единицы жёсткая склейка означает не «продолжение хода», а незакрытый вопрос (S02→S03 28.533: вопрос дочери тянет действие дальше) либо переход хода без паузы (S09→S10 223.667: от аргументов к решению)"
   ],
   "slot_fill": "Кодировка типа стыка переносима; количества (8/11/90) — измерение источника, а не пропорция для адаптации."
  },
  {
   "statement": "Сомнение произносится вслух ПОСЛЕ решения и получает ответ не гарантией, а названным критерием проверки; сомневающийся может больше не заговорить — неснятая тревога на лице законна и не требует развязки.",
   "evidence": [
    "S10: «Okay. Thank you. I'll try it.» 229.24–231.40",
    "S11: «And what if it doesn't work?» (мать) 233.26–234.70 → через 0.58 s прямой словесный ответ отца «Then it doesn't work. But I have to try something that isn't just hiding the number.» 235.28–239.14 (measurements/words-labeled.json)",
    "Последнее слово матери в фильме — 234.44–234.70; после ответа она не говорит, в SH085 238.167–239.5 сведённые брови и сжатые губы без развязки (cards/drafts/S11.json)"
   ],
   "confidence": 0.85,
   "exceptions": [
    "Прежняя формулировка «возражение… остаётся без ответа» ОПРОВЕРГНУТА пословным клоком: ответ есть и звучит через 0.58 s. Без ответа остаётся исход, а не возражение. Тот же обмен ранее считался одновременно «неотвеченным возражением» (invariants[11]) и «названным критерием успеха» (invariants[14])"
   ],
   "slot_fill": "Переносится разрешение, а не обязанность: сомнение партнёра/соседа можно отбить названным критерием проверки и оставить его лицо без развязки; «висящее» возражение — не требование."
  },
  {
   "statement": "У изменения должен быть названный автор: вслух признаётся, КТО заплатил цену за инициативу. Если инициатор и бенефициар — разные лица, признание принимает форму адресной благодарности; если это одно лицо — форму называния собственной цены. Запрещено безымянное изменение («оно как-то наладилось»).",
   "evidence": [
    "S14: «You gave me my life back» → «Thank your daughter. She's the one who came knocking.» 289.98–292.34",
    "S15: «My seven-year-old snuck out in the dark to save my life» 294.59–299.39",
    "measurements/words-labeled.json: последнее слово инициатора (girl) — 228.56–228.90 (70.2% хронометража); дальше инициатор молчит, и заслугу за неё называют другие"
   ],
   "confidence": 0.8,
   "exceptions": [
    "Прежняя форма («Инициатор и бенефициар — разные люди») верна для источника, но как правило переноса отвергает законные расстановки, где решение принимает тот же, кто платит цену; она держалась на копии исходного кастинга"
   ],
   "slot_fill": "Если инициатор и платящий — одно лицо, признание звучит как называние собственной цены («три ночи считал, пока не понял, что сам не вытяну»), а не как благодарность третьему."
  },
  {
   "statement": "Точка входа должна быть повторно-инсценируемой. Если открывающее событие обратимо — единица результата возвращает ту же рамку с обратным знаком (тот же наблюдатель, то же место, та же крупность). Если открывающее событие необратимо — роль зеркала берёт тот же СВИДЕТЕЛЬ в новом положении: он приходит с тем же поводом и не находит прежнего повода.",
   "evidence": [
    "S01/SH001 общий план кабинета с цифрой «161 over 98» ↔ S13/SH096 тот же общий план с «132 over 91»",
    "S01/SH006 вставка рук (мать накрывает) ↔ S13/SH102 вставка рук (обоюдный замок)",
    "S01/SH007 безмолвный двухплан дочь/отец ↔ S13/SH103 безмолвный двухплан с улыбкой"
   ],
   "confidence": 0.85,
   "exceptions": [
    "Зеркало возможно потому, что открывающее событие оригинала обратимо (диагноз). replaceable_slots допускает необратимую угрозу (авария, потеря, срыв) — её нельзя отменить в той же геометрии; безусловная форма инварианта вступала с этим слотом в противоречие",
    "«Тот же свидетель» не обязан быть оплаченным третьим наблюдателем: свидетелем может быть партнёр, сосед, проверяющий"
   ],
   "slot_fill": "Обратимое событие → повторное чтение той же рамки. Необратимое → возвращение свидетеля с тем же поводом, который больше не находит повода."
  },
  {
   "statement": "Критерий успеха называет персонаж заранее, и положение проверяет тот же измеритель, что поставил проблему. Измеритель — не обязательно число и не обязательно авторитет: это заранее названный, воспроизводимый способ проверки, который зритель может сверить сам (тот же человек, то же место, то же действие).",
   "evidence": [
    "Измерено: тот же врач в том же кабинете и в той же композиции возвращает ту же метрику — S01/SH001 «Your blood pressure is 161 over 98.» 0.98–2.66 ↔ S13/SH096 «One thirty-two over ninety-one.» 266.57–268.93",
    "Критерий назван персонажем заранее: «something that isn't just hiding the number» 237.40–239.14 (реплика начинается раньше, в 235.28, словами «Then it doesn't work. But I have to try»)"
   ],
   "confidence": 0.75,
   "exceptions": [
    "Интерпретация, не измерение: названный отцом критерий в фильме НЕ проверяется. Он отрицает метрику («isn't just hiding the number»), а предъявляется именно та же метрика; более низкое число одинаково согласуется и со средством, которое цифру не прячет, и со средством, которое её прячет. Карточка S11 сама переводит критерий обратно в цифру (open_question: «сдвинется ли «the number»»)",
    "Прежний интервал цитаты (235.28–239.14) исправлен на 237.40–239.14",
    "Допустимы три формы ответа измерителя: (i) повторное чтение той же величины; (ii) повторный приход угрозы, наткнувшийся на новое положение дел при том же свидетеле (проверяющий пришёл — папка готова; датчик сработал ночью — пол сухой); (iii) отказ от прежнего действия на глазах у того же свидетеля. Число — только одна из форм и не обязано принадлежать продукту, иначе инвариант входит в конфликт с do_not_transfer[1]"
   ],
   "slot_fill": "Для профилактического продукта исход — событие, которого не было; сравнивать нечего, и «повторного чтения» не существует: применяется форма (ii) или (iii)."
  },
  {
   "statement": "Физический носитель входит в кадр после того, как заданный вопрос его потребовал; название категории может войти раньше — как текст на экране, не произнесённый вслух.",
   "evidence": [
    "Название категории как текст: S03/SH022 40.233 (12.3% хронометража) — на вставке планшета читается статья, где жёлтым маркером выделены «aged garlic» и «longevity secret»; вслух не произносится (cards/final/S03.json; meta_function_trace.outputs: «зритель знает больше персонажа — видел «aged garlic» на экране, не произнесено»)",
    "Вопрос: «What is it?» 110.89–111.41",
    "Физический предмет: пакет виден в руке наставника у шкафа с ≈115.7–116.0 (35.5% хронометража), через ≈4.8–5.1 s после вопроса (cards/final/S07.json SH045 @ 01:56.000; fragments/strips/SH045.jpg, время впечатано)",
    "На стол ставится в 118.30 (широкополосный удар 118.30–118.40 совпадает с касанием стола); называется вслух «Aged garlic.» 119.79–120.49"
   ],
   "confidence": 0.8,
   "exceptions": [
    "Слово «только» убрано и порог разделён на два: прежнее свидетельство путало момент постановки на стол (118.30) с моментом появления предмета в кадре (≈115.7) и не учитывало текстовое вхождение категории за 70 s до вопроса"
   ],
   "slot_fill": "Разделять два порога: имя категории (текст, вывеска, строка в письме) может прийти раньше вопроса и работать как знание зрителя сверх знания персонажа; носитель — только после того, как вопрос его потребовал."
  },
  {
   "statement": "Если между решением и результатом есть интервал — он показан обычной жизнью под неснятой угрозой, с датировкой и без доказательств. Если интервала нет или продукт профилактический, единица ожидания заменяется единицей ИСПЫТАНИЯ: угроза приходит снова и наталкивается на новое положение дел при том же свидетеле.",
   "evidence": [
    "S12: титры «WEEK 2» 245.0, «WEEK 4» 253.0, «WEEK 8» 257.6; в каждом отрезке — бытовое действие с дочерью, ни одной цифры и ни одного врача (cards/drafts/S12.json)"
   ],
   "confidence": 0.8,
   "exceptions": [
    "Единица «недели» существует в оригинале потому, что у средства есть латентность. При нулевой латентности датировать нечего, и «обычная жизнь» вырождается в ожидание аварии; тогда работает ветка испытания",
    "Между наймом исполнителя и проверкой интервал есть, но он заполнен подготовкой, а не жизнью — датировка недель там читается как пустой хронометраж"
   ],
   "slot_fill": "Ветка А (есть латентность): датированная жизнь без доказательств. Ветка Б (нет латентности): результат-неслучившееся наблюдаем только через реакцию того, кто раньше пострадал."
  },
  {
   "statement": "Коммерческий финал продолжает желаемое будущее в кадре, а не прерывает его: закадровый голос идёт поверх бытовых планов, без крупных планов говорящего и без отдельной товарной вставки.",
   "evidence": [
    "S15: пять статичных планов 4.2–5.7 s (крыльцо, кухня, сад, парк, стол) на растворениях; ни одного плана говорящего; пакет только в руках дочери"
   ],
   "confidence": 0.9,
   "slot_fill": "Переносится форма (голос поверх показанного будущего, без крупных планов говорящего), а не содержание оффера: чем заполнены биты предложения — см. earnedness[6] и do_not_transfer[4]."
  },
  {
   "statement": "Карточка предложения — немая, один план, после последнего слова.",
   "evidence": [
    "S16: последнее слово «here.» 321.59 → вспышка 321.7–322.0 → карточка 322.033–325.682 (98.9% хронометража), 3.9 s тишины, 0 людей"
   ],
   "confidence": 0.95,
   "slot_fill": "Немая карточка после последнего слова; её длительность задаёт время прочтения самого длинного элемента, а не норма 3.9 s."
  },
  {
   "statement": "Хронометраж каждой единицы задаёт завершение действия, а не норма длины: длины планов измерены от 1.00 s до 8.20 s.",
   "evidence": [
    "ledger.json (110 планов): мин 1.000 s (SH049 123.133–124.133 и SH066 176.233–177.233), макс 8.200 s (SH104 286.2–294.4), медиана 2.300 s (средние значения 2.267 / 2.333); планов короче 1.00 s в фильме нет",
    "Три плана длиннее 7 s: SH067 7.534, SH033 7.867, SH104 8.200",
    "S09/SH067 7.53 s — фраза с жестом не разрезана",
    "S05/SH030 3.67 s — два кандидата стыка (61.9, 63.8) отклонены при адьюдикации: план не режут"
   ],
   "confidence": 0.9,
   "exceptions": [
    "Прежние значения («от 0.20 s до 7.53 s», «медиана 2.27 s», «мин 0.20 s (SH093)», «макс 7.53 s (SH067)») опровергнуты ledger.json и ledger-shots.md: SH093 258.0–259.7 = 1.70 s; максимум 8.20 s принадлежит SH104 и противоречил собственному примеру «S14 — вся сцена один план 8.2 s» (transition_rules[3].evidence, counterexamples[3])"
   ],
   "slot_fill": "Переносится принцип «длина = завершение действия»; диапазон 1.00–8.20 s — измерение источника, а не сетка для адаптации."
  },
  {
   "statement": "Речевой бюджет распределён крайне асимметрично: половина слов фильма принадлежит одному внешнему носителю знания. Это наблюдение источника, а не норма; обязательна не длина объяснения, а смена стандарта доказательства при смене слушателя.",
   "evidence": [
    "measurements/words-labeled.json: 753 слова — «older man» (наставник) 377 (50.1%), «man» (отец) 194, «doctor» (врач) 92, «girl» (дочь) 70, «older woman» 10, «woman» (мать) 10",
    "Два монолога наставника: S06 (ledger-shots.md SH034–SH041) и S09 (SH062–SH079)"
   ],
   "exceptions": [
    "Инвариант отсутствовал в прежней версии, хотя именно эта асимметрия несёт стандарт доказательства (invariants[7])"
   ],
   "confidence": 0.9,
   "slot_fill": "Стандарт доказательства может нести не монолог, а инспектируемое действие: показанный документ, прогон механизма на глазах у скептика, ответ на три его вопроса длиной в одну фразу каждый. В коротком формате объяснение сжимается до действия, а не выбрасывается."
  }
 ],
 "transition_rules": [
  {
   "rule": "Резать на слушателя ДО его реплики, если реплика — реакция на информацию. Переносится порядок, а не секундное окно.",
   "evidence": [
    "12 строгих случаев из 109 стыков: J001, J008, J009, J010, J034, J038, J043, J056, J074, J076, J082, J085; ещё 6 после длинных пауз: J007, J019, J025, J072, J097, J105",
    "J001 2.733 → «That high?» 2.98 (+0.25 s)",
    "J082 269.167 → «Are you serious?» 269.35 (+0.18 s); J043 120.9 → «Garlic?» 121.11 (+0.21 s)"
   ],
   "exceptions": [
    "S09: наставник не показан слушающим ни один из трёх вопросов отца — его «слушание» дано только скоростью ответа (паузы 0.28 / 0.32 / 0.18 s). Показывать получателя обязательно не всегда; иногда достаточно скорости.",
    "На 40 из 109 стыков действует обратное отношение: слово пересекает склейку (звук ведёт картинку).",
    "S10/J073 226.8 сюда не относится и перенесён в отдельное правило: это склейка внутрь паузы одного говорящего, когда нужна другая крупность на просьбе."
   ],
   "measured_in_source": "опережение 0.00–0.60 s; внутри одной сцены разброс втрое шире окна 0.20–0.30 (S01 по RMS: 0.27 / 0.09 / 0.17 / 0.12 s). Не норматив.",
   "slot_fill": "Точка приёма новости, детский вопрос, смена хода — там картинка вперёд. В протяжённом объяснении действует обратное правило."
  },
  {
   "rule": "Держать говорящего, пока фраза цельная и жест внутри плана не завершён; резать после возврата рук в покой.",
   "evidence": [
    "S06/SH039: руки в покое к 101.6, склейка 102.1 после «diet.»",
    "S09/SH067 7.53 s и SH073 7.07 s — фразы с разводом ладоней не разрезаны"
   ],
   "exceptions": [
    "S05: три склейки внутри монолога дочери сделаны на середине фразы — но каждый раз на СЛУШАТЕЛЕЙ, звук непрерывен."
   ],
   "slot_fill": "Держать до возврата рук в покой обязательно там, где жест — часть высказывания; см. invariants[4] и его исключения."
  },
  {
   "rule": "Резать внутрь слова допустимо, когда картинка обязана показать слушателя, а речь не должна прерываться.",
   "evidence": [
    "S06: склейки 92.333 и 110.1 — внутри слова, на слушающую",
    "S05/61.1 — внутри «sick.»"
   ],
   "exceptions": [
    "На говорящего в S06 все четыре склейки приходятся на начало предложения, а не внутрь слова."
   ],
   "slot_fill": "Резать внутрь слова — приём, а не норма: он законен ровно тогда, когда картинка обязана показать получателя."
  },
  {
   "rule": "НЕ склеивать два похожих плана одного говорящего в одной крупности — вместо этого держать один план.",
   "evidence": [
    "S05/SH030: 3.67 s одним планом; кандидаты стыка 61.9 и 63.8 при адьюдикации отклонены — это не склейки",
    "S06/SH039 6.43 s без врезки",
    "S14: вся сцена — один план 8.2 s без единой склейки"
   ],
   "exceptions": [
    "Нет. Во всех 109 измеренных стыках соседние планы различаются крупностью, осью или составом кадра."
   ],
   "slot_fill": "Запрет переносится без изменений: он про различие соседних планов, а не про длину."
  },
  {
   "rule": "Затемнение — когда последствие единицы исчерпано и меняется МЕСТО. Смена времени сопровождает затемнение не всегда и измерена не везде.",
   "evidence": [
    "8 измеренных затемнений (J091 15.7, J092 43.9, J093 143.1, J094 159.5, J095 231.6, J096 244.9, J104 266.1, J097 285.9); место меняется во всех восьми",
    "Смена времени ИЗМЕРЕНА в кадре только там, где есть титр недели или смена света: J096 244.9 (титр «WEEK 2» набирается с 245.0), J093 143.1 (ночь → день), J104 266.1 (конец отсчёта недель → клиника)",
    "Смена времени ЧИТАЕТСЯ, но не измерена: J091 15.7 («после приёма» — по порядку сцен, не по реплике; cards/final/S02.json), J092 43.9 (сдвиг выведен по одежде — куртка поверх пижамы, сам сбор не показан; cards/final/S03.json boundary_out), J095 231.6 («смена времени между SH081 и SH082 — чтение, не измерение»; cards/final/S10.json), J097 285.9"
   ],
   "exceptions": [
    "J094 159.5: время непрерывно — разговор продолжается («…about your blood pressure» на улице → «I brought you this» на кухне); затемнение маркирует смену помещения и смену адресата речи (cards/drafts/S08.json boundary_out, cards/drafts/S09.json boundary_in), смены времени карточки не заявляют",
    "J092 43.9: дочь оказывается в коридоре той же ночью сразу после последней реплики; «Место и действие меняются целиком… Слов нет с 43.07 до 55.23» (cards/final/S04.json boundary_in) — смены времени не заявлено",
    "S02→S03 меняет место и время, но соединён жёсткой склейкой 28.533: единица не «закрыта», вопрос дочери остаётся открытым и тянет действие дальше"
   ],
   "slot_fill": "Условие «И время» снято: затемнение маркирует исчерпанное последствие и смену места; смена адресата речи — достаточный второй признак."
  },
  {
   "rule": "Растворение — когда время сжимается, а эмоциональный регистр продолжается.",
   "evidence": [
    "Монтаж недель: 5 растворений между бытовыми планами",
    "Финальный VO: 5 растворений между планами «после»",
    "S05→S06: растворение с закрытой двери на кухонный стол — сжат переход «впустили → сидим и говорим»"
   ],
   "exceptions": [
    "S12 содержит ДВЕ жёсткие склейки: 247.367 (взгляд → объект взгляда, нужен мгновенный ответ «кто вошёл») и 255.633 (смена хода бег → шаг, нужен более общий ракурс для остановки и наклона целиком); растворение сохраняется там, где сжимается время между эпизодами (ledger-shots.md SH088, SH091 — обе помечены «hard cut (scdet)»; cards/drafts/S12.json editing.why_cut)"
   ],
   "slot_fill": "Растворение — там, где время сжато и регистр продолжается; внутри такого монтажа жёсткая склейка законна на моторной точке."
  },
  {
   "rule": "Вспышка в белое — когда меняется регистр (история → графика).",
   "evidence": [
    "321.7–322.0 единственная в фильме; маскирует переход к карточке и стирает семью из кадра"
   ],
   "exceptions": [
    "Нет: приём использован ровно один раз."
   ],
   "slot_fill": "Вспышка — маркер смены регистра; в адаптации она не обязательна, обязательна маркировка перехода «история → графика»."
  },
  {
   "rule": "Сцена без адресата законна (путь, карточка) — тогда реакция явно переносится за границу единицы.",
   "evidence": [
    "S04: 10.6 s, 0 слов, получателя нет; дверь открывают уже в S05 (рукав 54.7, лицо 54.8, «Lily?» 55.23)",
    "S16: 0 людей, 3.9 s тишины, единственный адресат — зритель"
   ],
   "exceptions": [
    "S03: реплики без адресата в кадре («Japanese blood pressure secret.», «My friend at school?») — говорящая обращается к себе; стимул реплики (статья) показан ПОСЛЕ слов, а не до."
   ],
   "slot_fill": "Сцена без адресата законна; реакция тогда обязана прийти в следующей единице и быть узнаваемой как ответ именно на неё."
  }
 ],
 "outputs": {
  "new_states": "изменённое знание/вера/агентность/отношения/положение",
  "new_open_question": "вопрос, отличный от входного",
  "callback_registered": "обещание, обязательство или измеритель, к которому фильм обязан вернуться"
 },
 "earnedness": [
  "Единица заслужила место, если её удаление делает следующую единицу немотивированной (тест удаления).",
  "Изменение состояния подтверждено наблюдаемым действием, словом или реакцией — не ярлыком эмоции.",
  "Выходной вопрос отличается от входного.",
  "Каждый ПЕРСОНАЖ ИСТОРИИ, кто позже принимает решение, ранее показан слышащим основание для него (тест слушателя): отец — S09, дочь — S03/S06. Внешний авторитет под тест не подпадает: врач появляется только в S01 и S13 (present в карточках S02–S12 его не содержит), слышит ровно «Aged garlic. Every morning.» (275.93–277.81) и сам запрашивает основание — «Send me everything. The brand, the dose, all of it.» (277.97–280.51). Это отдельный приём подтверждения, а не тест слушателя.",
  "Payoff имеет опознаваемый более ранний вопрос и инспектируемый ответ ТОГО ЖЕ измерителя: S01/SH001 «161 over 98» ↔ S13/SH096 «132 over 91», тот же врач, тот же кабинет, та же композиция. Отдельно и как ИНТЕРПРЕТАЦИЯ: названный отцом критерий («something that isn't just hiding the number», 237.40–239.14) в фильме не проверяется — инспектируется та же цифра, отрицание которой он и заявил.",
  "Согласие может сохранять сомнение: невозражение не требуется.",
  "Коммерческое предложение заслужено, если продолжает показанное будущее и опирается на уже пережитую цену. Контракт финальной единицы без заявлений: имя носителя + одно предложение о том, ЧТО именно из показанного будущего оно продолжает + одно проверяемое условие входа (цена, срок, способ получения) + названный адресат. Запрещены дефицит, возврат денег как аргумент и любые заявления об эффективности (do_not_transfer[4]). Длительность немой карточки задаёт время прочтения самого длинного элемента, а не норма."
 ],
 "replaceable_slots": [
  "продукт и его категория",
  "страна, язык, город, интерьеры",
  "возраст, пол и число участников",
  "роль инициатора (ребёнок — только один из вариантов)",
  "роль носителя знания (сосед, коллега, мастер, врач — любой)",
  "измеритель успеха (цифра врача — только один из вариантов: счёт, срок, отчёт, показание датчика)",
  "длительность истории и число единиц",
  "угроза (болезнь — только один из вариантов: проверка, авария, потеря, срыв)",
  "обстоятельства ночного похода / любого затратного действия инициатора",
  "условия предложения и механика покупки",
  "носитель предложения (предмет — только один из вариантов: документ, экран с результатом, ключ доступа, уведомление на чужом телефоне, артефакт работы нематериального продукта)",
  "распределение речевого бюджета (в источнике 50.1% слов у одного внешнего носителя знания — наблюдение, не норма; объяснение может быть заменено инспектируемым действием)",
  "форма ожидания между решением и результатом (датированный интервал — только один из вариантов; при нулевой латентности его заменяет единица испытания)",
  "расстановка «инициатор ≠ бенефициар» (допустимо и совпадение в одном лице — тогда меняется форма признания, а не наличие названного автора)"
 ],
 "do_not_transfer": [
  "медицинские диагнозы и утверждения о лечении",
  "конкретные цифры давления как доказательство эффективности продукта",
  "утверждения «очищает артерии», «заменяет таблетки» и любые заявления о механизме действия чужого продукта",
  "критика врачей и лекарств",
  "чужие скидки, гарантии и заявления о дефиците («до 70%», «30 дней», «партия закончится»)",
  "«номер один на Amazon» и ссылки на отзывы",
  "этническая или географическая «секретность» знания",
  "титры-субтитры оригинала (наблюдение источника не разрешает генерировать субтитры)",
  "исходный хронометраж 325.68 s, 16 единиц, 110 планов как норматив",
  "измеритель/авторитет в роли промоутера: он подтверждает измеренное положение и может назвать его необычным, но не просит бренд, не рекомендует его третьим лицам и не обещает применить к другим. В оригинале это сделано (SH101 «Send me everything. The brand, the dose, all of it.» 277.97–280.51; SH102 «This could change how I treat half my patients.» 280.63–282.55) и при переносе даёт самый заметный рекламный шов — в регулируемых категориях ещё и содержательную проблему. Право говорить о продукте остаётся у тех, кто заплатил цену",
  "субсекундные константы опережения (0.20–0.30 s для картинки, 0.10–0.40 s для звука) как целевые значения: это измерения одного англоязычного фильма, и разброс уже внутри одной сцены втрое шире окна (S01 по RMS: 0.27 / 0.09 / 0.17 / 0.12 s). Переносится порядок, а не число"
 ],
 "worked_examples": [
  {
   "scene": "S01",
   "title": "Клиника: диагноз (0.00–15.40)",
   "reasoning": "Каноническая единица. Событие — число и снимок. Получателей три, и они показаны НЕ по возрастанию цены: измеренный порядок планов — общий (SH001) → отец (SH002) → врач (SH003) → трёхплан семьи (SH004) → врач (SH005) → руки матери (SH006) → дочь (SH007), то есть источник возвращается в кадр между получателями дважды. Обязательным оказывается не порядок по цене, а последний показанный получатель: безмолвные 1.97 s дочери формулируют вопрос следующей единицы. Цена задаёт, КОГО вообще показывать (отец — его тело, мать — её брак, дочь — её отец), но не очередь. Переход выбран по правилу «резать туда, чего этот план показать не может»: общий план не может показать, как цифра ударила по отцу; лицо отца не может показать снимок; фронтальный врач не может показать руки; руки не могут показать ребёнка. Выход — затемнение: последствие исчерпано, ответа на «What do we do?» нет.",
   "trace": {
    "inputs": {
     "знание": "нулевое у зрителя",
     "цена": "отец — тело, мать — брак, дочь — отец"
    },
    "event": "«161 over 98» (0.98–2.66) → «arteries are narrowing. One's close to blocked.» (5.52–8.04) → «This isn't something we wait on.» (11.36–12.62)",
    "reactions": [
     "отец SH002: картинка на ≈0.27 s раньше «That high?» (RMS; ASR даёт 0.25)",
     "мать SH006: рука входит 11.95, накрывает к «on.» 12.40 — внутри одного плана",
     "дочь SH007: 1.97 s без слов — последний показанный получатель формулирует следующий вопрос"
    ],
    "transition_choice": "6 жёстких склеек + затемнение на выходе; вставка рук вместо реплики матери. J-cut'ов в сцене нет: на всех четырёх сменах говорящего картинка приходит раньше голоса (по RMS 0.27 / 0.09 / 0.17 / 0.12 s)",
    "outputs": {
     "состояние": "угроза названа, плана нет",
     "вопрос": "кто и что с этим сделает"
    },
    "earned": "Следующая единица (машина) обязана существовать, потому что вопрос «What do we do?» остался без содержательного ответа."
   }
  },
  {
   "scene": "S05",
   "title": "Порог: просьба (54.63–77.30)",
   "reasoning": "Единица, где функция работает на длинных удержаниях, а не на частых склейках. Событие — просьба ребёнка, произнесённая целиком (60.16–69.44). Первые три слова просьбы («My dad's sick») звучат НА ЛИЦАХ СЛУШАТЕЛЕЙ, а не на говорящей — правило «получатель важнее источника» доведено до предела. План SH030 держат 3.67 s без склейки: два кандидата стыка при адьюдикации отклонены — объяснение подаётся одним дыханием. Финальный план 7.87 s показывает «принятие в дом» целиком действием (переход порога, рука на спине, закрытие двери), без единой склейки. Выход — растворение: время сжато, регистр (тепло) продолжается.",
   "trace": {
    "inputs": {
     "дочь": "одна, ночью, у чужой двери",
     "взрослые": "визита не ждали («Lily?» вопросом)"
    },
    "event": "Просьба целиком: диагноз → серьёзность врача → прочитанное → «I need to save him»",
    "reactions": [
     "жена наставника: узнавание по имени, касание лица 57.9–59.1, наклон к ребёнку",
     "наставник: поворот к жене на «Japanese» 66.1–66.3, опущенные веки, возврат с улыбкой ~67.0",
     "дочь: неподвижность до 72.9, шаг через порог после конца «talk.»"
    ],
    "transition_choice": "3 склейки внутри монолога — все на слушателей, звук непрерывен; выход растворением",
    "outputs": {
     "состояние": "ребёнок принят, разговор отложен обещанием «we'll talk»",
     "вопрос": "что скажет наставник и знает ли он «секрет»"
    },
    "earned": "Обещание «and then we'll talk» назначает следующую единицу; без него кухонное объяснение было бы немотивированным."
   }
  },
  {
   "scene": "S09",
   "title": "Кухня семьи: подарок и скептик (159.70–223.67)",
   "reasoning": "Единица-исключение и одновременно подтверждение. Тот же предмет объясняется второй раз — но сменились и слушатель (взрослый вместо ребёнка), и стандарт доказательства (механизм + личное число + критерий подлинности + условие проверки вместо метафоры «трубы»). Три вопроса отца («What's the difference?» / «And you take this yourself?» / «How do I know it's the real thing?») задают трёхступенчатую проверку. Исключение: наставник НИ РАЗУ не показан слушающим эти вопросы — его принятие дано только скоростью ответа (паузы 0.28 / 0.32 / 0.18 s). Значит правило «покажи получателя» не абсолютно: скорость ответа — тоже свидетельство слушания.",
   "trace": {
    "inputs": {
     "отец": "скептик с собственным чесноком на кухне",
     "наставник": "обещал объяснить",
     "зритель": "уже знает предмет — ждёт не информации, а согласия"
    },
    "event": "Передача пакета + трёхступенчатая проверка + условие «Take it two months»",
    "reactions": [
     "отец: взгляд вниз на пакет в каждом объяснении, вверх — на термине «S-allyl cysteine» 185.2 и перед своими вопросами",
     "мать: руки скрещены 212.4–218.6, ни слова",
     "дочь: молчит"
    ],
    "transition_choice": "Длинные планы говорящего (7.53 / 7.07 / 6.60 s) с жестом внутри; слушатель показан 8 раз",
    "outputs": {
     "состояние": "аргументы исчерпаны, решения нет",
     "вопрос": "согласится ли отец"
    },
    "earned": "Следующая единица обязана быть коротким решением — и это решение приносит не аргумент, а просьба ребёнка."
   }
  },
  {
   "scene": "S12",
   "title": "Недели: обычная жизнь (245.10–265.80)",
   "reasoning": "Единица без диалога и без доказательства. Функция работает на уровне «один план — один завершённый жест»: длины 2.27 / 2.13 / 2.80 / 1.93 / 1.57 / 1.70 / 2.10 / 2.40 s, и каждый держат ровно до конца жеста (улыбка после открытия глаз; касание плеча; пара доходит до камеры; бег переходит в шаг; поза «руки на коленях» под пик смеха; встречный взгляд; поворот головы к дочери). Соединено растворениями — время сжато, регистр продолжается. Обещанного измерения (цифры) здесь НЕТ: восемь недель проходят без врача, и именно это удерживает вопрос открытым до S13.",
   "trace": {
    "inputs": {
     "отец": "принял первую дозу",
     "зритель": "держит цифру 161/98 и вопрос «сработает ли»"
    },
    "event": "Титры 2 / 4 / 8 недель; на каждой отметке — бытовое действие с дочерью",
    "reactions": [
     "дочь: касание плеча 249.4–249.8, рука в руке 251.2–252.6, смех 256.5–257.5",
     "мать: появляется только на 8-й неделе, смеётся на «I feel great.», не говорит ни слова"
    ],
    "transition_choice": "5 растворений + 1 жёсткая склейка на взгляде (247.367), где нужен мгновенный ответ «кто вошёл»",
    "outputs": {
     "состояние": "видимое улучшение без подтверждения",
     "вопрос": "что скажет цифра"
    },
    "earned": "Единица заслуживает место тем, что НЕ даёт измерения: она показывает жизнь, ради которой измерение и нужно."
   }
  },
  {
   "scene": "S15",
   "title": "Закадровый итог и предложение (295.30–322.03)",
   "reasoning": "Коммерческая единица, построенная по тем же правилам. Право говорить от первого лица отец получил в предыдущей единице (S14: заслуга переадресована дочери) — только после этого включается закадровый рассказ. Пять статичных планов по 4.2–5.7 s, каждый — новое место, новая одежда и ровно один завершённый жест; ни одного крупного плана говорящего и ни одной отдельной товарной вставки: пакет держит дочь 5.3 s подряд. Растворения (не склейки) держат регистр «после». ПЕРЕНОСИМА ЗДЕСЬ ТОЛЬКО ФОРМА. Содержание оффера оригинала (распродажа, возврат денег, дефицит партии — SH107 «They're running a limited sale right now…», SH108 «If nothing changes, you get every penny back…», SH109 «…it's gone for a while.») запрещено к переносу do_not_transfer[4], поэтому четыре отобранных бита заполняются по контракту earnedness[6]: имя носителя + что именно из показанного будущего оно продолжает + одно проверяемое условие входа + названный адресат.",
   "trace": {
    "inputs": {
     "отец": "здоров по цифрам, только что услышал «Thank your daughter»",
     "зритель": "знает историю, но не слышал условий покупки"
    },
    "event": "VO: итог одной фразой → имя и описание продукта → четыре бита предложения (в оригинале: распродажа, гарантия, дефицит — к переносу запрещены) → обращение «for the little ones»",
    "reactions": [
     "в кадре на VO не реагирует никто — измеренное отсутствие механизма",
     "дочь дважды получает руку на голове; мать получает взгляд и отвечает своим"
    ],
    "transition_choice": "Только растворения; ни одного плана говорящего; выход — вспышка в белое сразу после последнего слова",
    "outputs": {
     "состояние": "история закрыта, условия названы",
     "вопрос": "вынесен за пределы кадра: перейти по ссылке"
    },
    "earned": "Предложение заслужено тем, что продолжает показанное будущее, а не прерывает его ради товара."
   }
  },
  {
   "scene": "НЕ RESILIA — синтетический пример заполнения слотов",
   "status": "НЕ СВИДЕТЕЛЬСТВО об оригинале. Шаблон переноса, добавленный по возражению о том, что все 5 разобранных примеров и все 6 контрпримеров взяты из Resilia и адаптеру нечего подставлять, кроме самой цепочки Resilia. Ни одно утверждение здесь не измерено.",
   "title": "Бухгалтерское сопровождение малого кафе: цепочка выводится заново (нет предмета, нет латентности средства, инициатор = платящий)",
   "reasoning": "Проверка того, что функция выводит цепочку, а не пересказывает сюжет. Вывод по правилу film(): цена → кто её платит → кто может действовать вместо платящего → чем положение проверяется → что мешает проверить сразу.\nЦена: штраф и закрытие на срок. Платит владелец. Действовать вместо него может исполнитель, но инициатива остаётся у самого платящего — значит по invariants[12] признание примет форму называния собственной цены, а не благодарности третьему лицу.\nИзмеритель: тот же проверяющий, тот же прилавок, то же действие (он приходит и просит документы) — форма ответа (ii) по invariants[14], без единого числа продукта. Мешает проверить сразу срок проверки, а не латентность средства — поэтому единица ожидания заменяется единицей ИСПЫТАНИЯ по ветке Б invariants[16].\nЕдиница 1 (событие-информация): уведомление о проверке читается вслух целиком за стойкой при одном сотруднике. Носитель новости — документ, не авторитет; крупность выбирается по цене, а не по статусу. Положение названо (дата), путь не назван.\nЕдиница 2 (без адресата): владелец ночью один с коробкой чеков — движение тела через пространство, 0 слов; реакция вынесена за границу единицы (по образцу counterexamples S04, но с другим содержанием).\nЕдиница 3 (порог): он приходит не за деньгами, а с просьбой; называет собственную цену вслух.\nЕдиница 4 (стандарт доказательства): исполнитель не объясняет монологом (invariants[20]) — на глазах у скептика открывает его же выписку и одной фразой показывает три несведённых месяца. Инспектируемый носитель — папка, физически переходящая из рук в руки (invariants[9] slot_fill): предмета-товара в кейсе нет.\nЕдиница 5 (сомнение после решения): партнёр — «А если не успеем?»; ответ не гарантией, а названным критерием: «Тогда не успеем. Но я хочу, чтобы к четырнадцатому у нас был ответ на каждый чек, а не объяснение». Сомневающийся больше не говорит (invariants[11]).\nЕдиница 6 (испытание вместо недель): проверяющий приходит снова, при том же сотруднике, и не находит прежнего повода — необратимое открывающее событие зеркалится возвращением свидетеля (invariants[13], вторая ветка).\nЕдиница 7 (признание): владелец при том же сотруднике называет, что он заплатил и чем; безымянное изменение запрещено.\nЕдиница 8 (предложение): имя носителя + одно предложение о том, что именно из показанного продолжает + одно проверяемое условие входа + адресат; без дефицита, гарантий и заявлений об эффективности (earnedness[6]).",
   "trace": {
    "inputs": {
     "цена": "штраф и закрытие на срок; платит владелец",
     "измеритель": "проверяющий — тот же человек, то же место, то же действие",
     "препятствие": "срок проверки, не латентность средства"
    },
    "event": "уведомление о проверке, прочитанное вслух целиком",
    "reactions": [
     "сотрудник — единственный носитель части цены; к нему возвращаются трижды: приём новости, решение, последствие (invariants[1], ветка «один получатель»)"
    ],
    "transition_choice": "затемнение после исчерпанного последствия и смены помещения; жёсткая склейка там, где вопрос не закрыт; растворение только там, где сжимается время подготовки",
    "outputs": {
     "состояние": "положение проверено тем же измерителем",
     "вопрос": "вынесен за пределы кадра"
    },
    "earned": "Каждая единица обязана существовать, потому что снимает ровно один вопрос предыдущей; ни одна не заимствует событие Resilia (диагноз, ночной поход, чужую кухню, недели, повторный замер)."
   }
  }
 ],
 "counterexamples": [
  {
   "scene": "S03",
   "why_it_deviates": "Реплики без адресата в кадре, и стимул реплики показан ПОСЛЕ слов: «Japanese blood pressure secret.» (37.90–40.12) звучит раньше, чем зритель видит статью (40.233–41.6). Правило «сначала стимул — потом реакция» здесь нарушено сознательно: сначала звучит вывод, потом даётся его источник."
  },
  {
   "scene": "S04",
   "why_it_deviates": "10.6 s, ноль слов, ноль получателей. Единица держится только движением тела через пространство. Реакция (открытая дверь, имя «Lily?») вынесена за границу единицы."
  },
  {
   "scene": "S09",
   "why_it_deviates": "Наставник ни разу не показан слушающим три вопроса отца: приём события дан не лицом, а скоростью ответа (паузы 0.28 / 0.32 / 0.18 s). Инвариант «покажи получателя» имеет альтернативную реализацию."
  },
  {
   "scene": "S14",
   "why_it_deviates": "Вся единица — ОДИН план 8.2 s без единой склейки, включая поворот от говорения к слушанию и удержание улыбки 1.1 s после последнего слова. Сцена ≠ серия планов."
  },
  {
   "scene": "S16",
   "why_it_deviates": "Единица без получателей внутри фильма вообще: 0 людей, 3.9 s тишины, длительность задана чтением, а не действием. Единственный адресат — зритель, и его действие вынесено за пределы кадра."
  },
  {
   "scene": "S02",
   "why_it_deviates": "Меняет место и время, но соединена с предыдущей и следующей единицей не затемнением на выходе, а жёсткой склейкой (28.533): вопрос дочери не закрыт, и монтаж не даёт ему «отдохнуть»."
  },
  {
   "scene": "S07",
   "why_it_deviates": "Две фазы одного движения разнесены склейками: J047 130.633 (фаза «тянется» в SH051, фаза «касание» уже в первом кадре SH052) и J048 133.133 (отпускания пакета в кадре нет — в SH053 133.2 обе руки наставника уже свободны). Здесь же — единственная в истории товарная вставка SH055 140.267–141.633 (1.366 s, лиц нет, читаемая лицевая сторона упаковки, руки неподвижны)."
  },
  {
   "scene": "S13",
   "why_it_deviates": "Три отклонения сразу: жест отца начинается на самой склейке J082 269.167 (в последнем кадре SH096 обе руки на бёдрах); в SH102 контакт рук существует с первого кадра вставки (J087 280.933); и врач принимает решение («Send me everything…» 277.97–280.51), не будучи ни в одной карточке S02–S12 — он слышал ровно «Aged garlic. Every morning.» (275.93–277.81). Тест слушателя к внешнему авторитету неприменим."
  },
  {
   "scene": "S12",
   "why_it_deviates": "Посадка отца эллиптирована между SH088 и SH089 (J080 247.367): «Отец НЕ садится… посадка — эллипсис». В сцене ДВЕ жёсткие склейки, а не одна: 247.367 (взгляд → объект взгляда) и 255.633 (смена хода бег → шаг)."
  },
  {
   "scene": "S11",
   "why_it_deviates": "Возражение матери «And what if it doesn't work?» (233.26–234.70) получает прямой словесный ответ отца через 0.58 s (235.28–239.14). Без ответа остаётся исход, а не возражение; тот же обмен раньше засчитывался и как «неотвеченное возражение», и как «названный критерий успеха»."
  },
  {
   "scene": "S06→S07",
   "why_it_deviates": "Склейка J039 114.167 сделана до того, как наставник выпрямился: подъём из-за стола начинается в одном плане, а заканчивается вне кадра — монтаж разрывает фазу движения там, где нужен слушатель."
  },
  {
   "scene": "S01",
   "why_it_deviates": "J-cut'ов нет вообще: на всех четырёх сменах говорящего картинка приходит раньше голоса (RMS 0.27 / 0.09 / 0.17 / 0.12 s), а склейка J004 9.733 лежит внутри измеренной тишины 9.302–9.868. Приём «звук раньше картинки» в оригинале не универсален."
  }
 ],
 "disputes": [
  "«Показывать получателя обязательно» — опровергнуто S09 (наставник не показан слушающим) и S04/S16 (получателей нет). Формулировка ослаблена до «принятие события должно быть считываемо — лицом, телом или скоростью ответа».",
  "«Стимул всегда предшествует реакции» — опровергнуто S03 (реплика раньше показа статьи).",
  "«Сцена состоит из нескольких планов» — опровергнуто S14 (один план 8.2 s).",
  "«Затемнение всегда закрывает смену места и времени» — опровергнуто S02→S03 (жёсткая склейка при смене места и времени).",
  "«Жест начинается и завершается внутри одного плана» — опровергнуто шестью измеренными стыками (J039 114.167, J047 130.633, J048 133.133, J080 247.367, J082 269.167, J087 280.933). Формулировка ослаблена до правила удержания с явными исключениями (invariants[4], confidence 0.95 → 0.55).",
  "«Картинка приходит к слушателю раньше, чем он заговорит» — опровергнуто пересчётом: 12 строгих стыков из 109 (18 с учётом длинных пауз) против 40 стыков, где слово пересекает склейку. Confidence 0.9 → 0.5 (invariants[2]).",
  "«Возражение звучит после решения и остаётся без ответа» — опровергнуто пословным клоком: ответ через 0.58 s (invariants[11]).",
  "«Продукт входит в кадр только после того, как вопрос его потребовал» — опровергнуто вхождением названия категории текстом на экране в 40.233, за 70 s до вопроса (invariants[15]).",
  "«Получатели показываются по возрастанию цены события для них» — опровергнуто измеренным порядком планов S01 (SH003, SH005 — возврат к врачу после отца) и S13 (SH098, SH099, SH101 между реакциями отца и вставкой рук). Правило заменено инспектируемым: последний показанный получатель формулирует следующий вопрос.",
  "«Затемнение меняет место И время» — опровергнуто на J094 (разговор непрерывен) и J092 (та же ночь); на J095 и J091 смена времени помечена карточками как чтение, а не измерение."
 ],
 "refutation_log": {
  "status": "выполнен",
  "planned": "три опровергателя: по свидетельствам (искать сцену, где инвариант не выполняется), по переносимости (goPure / бухгалтерский сервис / датчик протечки), по подмене сюжета инвариантом",
  "note": "Проход выполнен по 30 возражениям (линзы: свидетельства, переносимость на goPure / бухгалтерский сервис / датчик протечки, подмена сюжета инвариантом). Каждое возражение перепроверено самостоятельно по cards/final, cards/drafts, ledger.json, ledger-shots.md, measurements/words-labeled.json, measurements/silence.json и кадровым полосам; числа возражений пересчитаны заново, а не приняты на слово (пересчёт «12 строгих + 6 после пауз против 40 стыков со словом через склейку» воспроизведён независимо и совпал). По существу приняты все 30; поле rejected содержит четыре ЧАСТНЫХ утверждения внутри принятых возражений, которые проверку не прошли и в файл внесены в исправленном виде. Раздел disputes дополнен шестью новыми опровержениями. Чего проход НЕ заменяет: три независимых вывода по линзам и их синтез, прослушивание спорных ASR-меток спикера, а также независимую проверку синтетического worked_examples[5] — он помечен как несвидетельство.",
  "checked": 30,
  "accepted": [
   {
    "objection": "invariants[4]: универсальность «жест начинается и завершается внутри ОДНОГО плана» (blocker)",
    "verified_by": "cards/final/S06.json boundary_out (J039 114.167); cards/final/S07.json SH051/SH052/SH053 (J047 130.633, J048 133.133); cards/drafts/S12.json SH088 (J080 247.367); cards/drafts/S13.json SH097 (J082 269.167) и SH102 (J087 280.933); ledger.json model_estimate (77/109 «mid», 37 «mid»→«mid» — оценка, не измерение)",
    "applied": "invariants[4] переформулирован в правило удержания, confidence 0.95 → 0.55, шесть исключений внесены в exceptions; контрпримеры добавлены в counterexamples (S07, S13, S12, S06→S07) и в disputes; в pseudocode добавлен split_gesture_across_two_shots()"
   },
   {
    "objection": "invariants[2]: «Картинка приходит к слушателю раньше, чем он заговорит» описывает меньшинство стыков (blocker)",
    "verified_by": "Собственный пересчёт по ledger.json (109 стыков, дедуплицированный клок 739 слов, стыки со словом через склейку исключены) воспроизвёл список возражения точно: 12 строгих (J001, J008, J009, J010, J034, J038, J043, J056, J074, J076, J082, J085) + 6 после длинных пауз (J007, J019, J025, J072, J097, J105); слово пересекает стык на 40 стыках; cards/drafts/S09.json editing.sound_relation",
    "applied": "invariants[2] переформулирован («может прийти… но не общий закон»), confidence 0.9 → 0.5, числа вынесены в evidence и в новое поле measured_in_source; S09 внесена в exceptions"
   },
   {
    "objection": "invariants[19]: «длины планов от 0.20 s до 7.53 s», «медиана 2.27», «мин 0.20 (SH093)», «макс 7.53 (SH067)» (major)",
    "verified_by": "ledger.json: мин 1.000 (SH049 123.133–124.133, SH066 176.233–177.233), макс 8.200 (SH104 286.2–294.4), медиана 2.300 (2.267/2.333); планов < 1.00 s нет; ledger-shots.md SH093 258.0–259.7 = 1.70",
    "applied": "invariants[19] исправлен целиком; прежние значения перечислены в exceptions"
   },
   {
    "objection": "invariants[15]: «Продукт входит в кадр только после вопроса»; 118.30 названо моментом появления (major)",
    "verified_by": "cards/final/S07.json SH045 @ 01:56.000 и SH046 @ 01:58.300; fragments/strips/SH045.jpg (пакет читается в шкафу с ≈115.8); cards/final/S03.json SH022 @ 00:40.233 («aged garlic» жёлтым маркером) и meta_function_trace.outputs",
    "applied": "Пороги разделены: текст категории 40.233 (12.3%), предмет ≈115.7–116.0 (35.5%), постановка на стол 118.30, называние вслух 119.79; слово «только» убрано, confidence 0.85 → 0.8"
   },
   {
    "objection": "invariants[3]: свидетельство «\"We\" 9.38 → cut 9.733 (S01)» ретрактировано (major)",
    "verified_by": "cards/final/S01.json uncertainty[0] и editing.sound_relation (RMS «We» ≈9.85); measurements/silence.json 9.30243–9.86766 накрывает J004 9.733; cards/owner-leads.json L2",
    "applied": "Пример удалён; заменён измеренным J-cut'ом S07/J046 128.2 («until» 128.09–128.51) и общим счётом 40 стыков; в exceptions добавлена оговорка о систематически ранних ASR-онсетах первого слова после паузы; та же оговорка внесена в measured_in_source"
   },
   {
    "objection": "invariants[2]: свидетельство «S10/J073: картинка ведёт ≈0.25 s» не подтверждает формулировку (major)",
    "verified_by": "cards/final/S10.json SH079 @ 03:46.740 и SH080 @ 03:46.800; ledger.json («Okay.» 229.24)",
    "applied": "J073 удалён из evidence и перенесён в exceptions invariants[2] и в transition_rules[0].exceptions как отдельный приём (склейка внутрь паузы одного говорящего); вместо него в evidence — J082 269.167 и J043 120.9"
   },
   {
    "objection": "transition_rules[4]: условие «меняет место И время» (major)",
    "verified_by": "cards/drafts/S08.json boundary_out и cards/drafts/S09.json boundary_in (J094 159.5 — разговор непрерывен); cards/final/S04.json boundary_in и cards/final/S03.json boundary_out (J092 43.9 — сдвиг времени выведен по одежде); cards/final/S10.json boundary_out (J095 — «чтение, не измерение»); cards/final/S02.json boundary_in (J091 — «по порядку сцен, не по реплике»)",
    "applied": "Правило переписано на «исчерпанное последствие + смена МЕСТА»; перечислено, где смена времени измерена (J093 ночь→день, J096 титр WEEK 2, J104), а где является чтением (J091, J092, J095, J097); J094 и J092 внесены в exceptions"
   },
   {
    "objection": "invariants[14] + earnedness[4]: названный критерий и предъявленная проверка — разные вещи; неверный интервал цитаты (major)",
    "verified_by": "Пословный клок: «Then» 235.28, «something» 237.40 … «number.» 238.86–239.14; cards/drafts/S13.json SH096 (цифра 266.57–268.93); cards/drafts/S11.json meta_function_trace",
    "applied": "Интервал исправлен на 237.40–239.14; измеренное (тот же измеритель возвращает ту же метрику) отделено от интерпретации (критерий отрицает метрику, а проверяется метрика) — в invariants[14].exceptions и в earnedness[4]"
   },
   {
    "objection": "invariants[5]: «S13/SH103 2.83 s без речи» и «S10/SH078 ≈1.95 s молчания» (minor)",
    "verified_by": "ledger.json SH103 282.867–285.700 со словом «Hmm.» 283.36–283.76; measurements/silence.json 283.838–285.978 (2.14); cards/drafts/S13.json boundary_out; ledger.json SH078 = 1.433 s против паузы 223.73–225.68 в cards/final/S10.json",
    "applied": "Оба свидетельства переписаны: 2.14 s тишины внутри 2.833-секундного плана после невербального «Hmm.»; пауза 1.95 s распределена по SH078 (1.43) и началу SH079 (0.58)"
   },
   {
    "objection": "invariants[10]: «11 растворений» при перечисленных 10; «89 жёстких склеек внутри единиц» (minor)",
    "verified_by": "Counter по ledger.json join_out.kind: 89 hard cut (scdet) + 1 hard cut (dense detector; adjudicated) 48.5 + 11 dissolve + 8 fade; растворение J098 77.75 (S05→S06) отсутствовало в перечне",
    "applied": "Перечень растворений дополнен J098 77.75 и переведён на времена стыков (J099–J103, J105–J109); счёт жёстких склеек исправлен на 90 с разбивкой 85 внутри / 5 на границах — см. rejected[0] о числе граничных склеек"
   },
   {
    "objection": "transition_rules[5].exceptions: «S12 содержит и одну жёсткую склейку (247.367)» (minor)",
    "verified_by": "ledger-shots.md SH088 и SH091 — обе «hard cut (scdet)»; cards/drafts/S12.json editing.why_cut («Две жёсткие склейки внутри сцены стоят на моторных точках»)",
    "applied": "Исключение переписано на две склейки (247.367 взгляд → объект взгляда; 255.633 смена хода бег → шаг)"
   },
   {
    "objection": "invariants[0]: «первое слово «Your» звучит в 0.00 (ASR)» (minor)",
    "verified_by": "cards/final/S01.json uncertainty[0] (RMS ≈0.12) и observations[0]; ledger.json SH001 0.0–2.733",
    "applied": "Свидетельство переписано: голос начинается ≈0.12 по RMS на первом же общем плане; установка и событие совмещены в одном плане; прежняя формулировка вынесена в exceptions"
   },
   {
    "objection": "invariants[9]: «отдельной товарной вставки в истории нет» (minor)",
    "verified_by": "cards/final/S07.json SH055 @ 02:20.267 и @ 02:20.950; ledger.json SH055 140.267–141.633 (1.366 s); cards/drafts/S16.json outputs",
    "applied": "Инвариант уточнён, SH055 внесена в exceptions как единственная товарная вставка (с исправлением: речь в плане не пуста формально — в него заходит хвост слова «Billy!», см. rejected[1]); SH110 помечен как кадр вне истории; confidence 0.9 → 0.75"
   },
   {
    "objection": "earnedness[3]: тест слушателя не выполняется для врача (minor)",
    "verified_by": "Пословный клок 275.93–277.81 («Aged garlic. Every morning.») и 277.97–282.55; present во всех 16 карточках — врач есть только в S01 и S13",
    "applied": "earnedness[3] ограничен персонажами истории; внешний авторитет вынесен в отдельный приём подтверждения; добавлено в counterexamples (S13)"
   },
   {
    "objection": "pseudocode: film() умеет проверять единицу, но не выводить цепочку; все примеры — из Resilia; нет поля not_overfit (blocker)",
    "verified_by": "Текст meta-function.json (units не определён, pick_event — чёрный ящик, worked_examples S01/S05/S09/S12/S15, counterexamples S03/S04/S09/S14/S16/S02); analysis/original-atomic/criteria/criteria.json — not_overfit_note у всех 39 критериев, в meta-function.json такого поля не было ни у одного из 20 инвариантов",
    "applied": "В film() добавлен derive_chain(price → payer → agent → measure → obstacle); поле slot_fill добавлено ко всем 21 инвариантам и всем 8 правилам перехода; добавлен worked_examples[5] — развёрнутый пример НЕ из Resilia (бухгалтерское сопровождение кафе), явно помеченный как несвидетельство"
   },
   {
    "objection": "invariants[12] + assert credit_returns_to(initiator): отлитая в assert реплика Resilia (blocker)",
    "verified_by": "ledger-shots.md SH104 289.98–292.34; measurements/words-labeled.json — последнее слово girl 228.56–228.90 (70.2%)",
    "applied": "Инвариант переформулирован в «у изменения должен быть названный автор» с двумя формами признания; в pseudocode assert заменён на change_has_a_named_author() + forbid(nameless_change); добавлен слот в replaceable_slots"
   },
   {
    "objection": "invariants[14] + earnedness[4]: измеритель определён через число и платного авторитета; конфликт с do_not_transfer[1] (blocker)",
    "verified_by": "meta-function.json invariants[14] vs do_not_transfer[1]; ledger-shots.md SH096 ↔ S01/SH001",
    "applied": "Измеритель переопределён без числа и без авторитета (заранее названный воспроизводимый способ проверки); в exceptions перечислены три допустимые формы ответа (повторное чтение / повторный приход угрозы / отказ от прежнего действия); добавлен slot_fill о профилактическом продукте"
   },
   {
    "objection": "invariants[8] и [9]: молчаливое требование физического товара (major)",
    "verified_by": "meta-function.json invariants[8], [9], pseudocode provable; ledger-shots.md SH052, SH062, S15 300.3–305.6",
    "applied": "Введено понятие ИНСПЕКТИРУЕМОГО НОСИТЕЛЯ (предмет, документ, экран с результатом, ключ доступа, уведомление); в pseudocode what_can_be_SHOWN → what_can_be_INSPECTED; добавлен слот в replaceable_slots"
   },
   {
    "objection": "invariants[16]: «время между решением и результатом» подано безусловно (major)",
    "verified_by": "meta-function.json invariants[16], worked_examples[3]; ledger-shots.md SH088–SH095",
    "applied": "Инвариант сделан условным: ветка А (есть латентность) — датированная жизнь; ветка Б (нет латентности / профилактика) — единица испытания; добавлен слот в replaceable_slots"
   },
   {
    "objection": "pseudocode шаг 3: сортировка получателей по возрастанию цены (major)",
    "verified_by": "ledger-shots.md SH001–SH007 (врач возвращается в SH003 и SH005 после отца) и SH096–SH103 (SH098, SH099, SH101 между реакциями отца и вставкой рук); cards/final/S01.json editing.pattern",
    "applied": "Сортировка убрана; заменена инспектируемым правилом (возврат к источнику разрешён; последний показанный получатель формулирует следующий вопрос; каждый персонаж истории, кто позже решает, попал в кадр, пока звучало основание). Исправлены reactions и worked_examples[0]"
   },
   {
    "objection": "invariants[11]: «возражение остаётся без ответа» (major)",
    "verified_by": "measurements/words-labeled.json: woman 233.26–234.70, man 235.28–239.14 (разрыв 0.58 s); последнее слово матери в фильме 234.44–234.70",
    "applied": "Инвариант переписан в разрешительной модальности (ответ не гарантией, а названным критерием; неснятая тревога законна); добавлено в counterexamples и disputes"
   },
   {
    "objection": "pseudocode шаг 2: say_it_whole(on=wide_or_authority_shot) и withhold(...) с комментарием S01 (major)",
    "verified_by": "meta-function.json pseudocode; cards/final/S01.json information.withheld; ledger-shots.md SH005",
    "applied": "Ветка переписана: носитель новости — любой (авторитет, равный, документ, прибор); крупность выбирается по цене, а не по статусу; withhold заменён на name_the_situation_but_not_the_way_out() с тремя допустимыми формами умолчания"
   },
   {
    "objection": "worked_examples[4]: единственный разобранный коммерческий пример построен на содержании, запрещённом do_not_transfer[4] (major)",
    "verified_by": "ledger-shots.md SH107–SH109; meta-function.json do_not_transfer[4]",
    "applied": "В reasoning добавлено явное «переносима только форма»; в earnedness[6] введён контракт финальной единицы (имя носителя + продолжение показанного будущего + одно проверяемое условие входа + адресат; дефицит, возврат денег как аргумент и заявления об эффективности запрещены; длительность карточки — по времени прочтения)"
   },
   {
    "objection": "invariants[13]: зеркало предполагает обратимое открывающее событие, что противоречит replaceable_slots[7] (major)",
    "verified_by": "meta-function.json invariants[13] и replaceable_slots[7]",
    "applied": "Инвариант сделан двухветочным (обратимое событие → та же рамка с обратным знаком; необратимое → возвращение того же свидетеля с тем же поводом); снято требование оплаченного третьего наблюдателя"
   },
   {
    "objection": "invariants[1]: множественность получателей обеспечена конвенцией «вся семья у врача» (major)",
    "verified_by": "meta-function.json invariants[1], pseudocode шаг 3; cards/final/S01.json present; cards/drafts/S14.json (один человек в кадре)",
    "applied": "Инвариант переписан («столько получателей, скольким событие чего-то стоит»); добавлена ветка одного носителя цены (три возврата в разных крупностях) в инвариант и в pseudocode; confidence 0.9 → 0.8"
   },
   {
    "objection": "pseudocode: субсекундные константы (picture_lead=0.20..0.30, lead_sound_by(0.10..0.40)) как параметры по умолчанию (major)",
    "verified_by": "cards/final/S01.json editing.sound_relation (по RMS 0.27 / 0.09 / 0.17 / 0.12 s — разброс втрое шире окна внутри одной сцены); do_not_transfer[8] покрывал только макро-норму",
    "applied": "Числа убраны из сигнатуры (picture_before_voice=True, lead_sound_across_join=True); наблюдённые диапазоны вынесены в новое поле measured_in_source с пометкой «не норматив»; в do_not_transfer добавлен пункт о субсекундных константах"
   },
   {
    "objection": "do_not_transfer: отсутствует пункт про обращение измерителя в промоутера (major)",
    "verified_by": "ledger-shots.md SH101 277.97–280.51, SH102 280.63–282.55; meta-function.json do_not_transfer",
    "applied": "Пункт добавлен в do_not_transfer; в pseudocode film() добавлен forbid(the_measurer_becoming_a_promoter)"
   },
   {
    "objection": "inputs.relationship: незамеренное утверждение о внимании зрителя (minor)",
    "verified_by": "meta-function.json inputs.relationship против собственного summary («никакого измеренного удержания… здесь нет»)",
    "applied": "Оценочная часть убрана; формулировка расширена до «кто за кого и за что отвечает и перед кем»"
   },
   {
    "objection": "Отсутствующий инвариант: распределение речевого бюджета (minor)",
    "verified_by": "measurements/words-labeled.json: 753 слова — older man 377 (50.1%), man 194, doctor 92, girl 70, older woman 10, woman 10; ledger-shots.md SH034–SH041, SH062–SH079",
    "applied": "Добавлен invariants[20] (наблюдение источника + правило сжатия: стандарт доказательства может нести инспектируемое действие); добавлен слот «распределение речевого бюджета» в replaceable_slots"
   },
   {
    "objection": "invariants[3] evidence[0]: тот же пример «\"We\" 9.38 → cut 9.733» как образец J-cut'а (minor)",
    "verified_by": "cards/final/S01.json editing.sound_relation («на всех четырёх сменах говорящего картинка приходит раньше голоса… ни один из них не J-cut»)",
    "applied": "Помимо удаления примера, в invariants[3].exceptions добавлен встречный пункт про S01 и привязка приёма к переходам через растворение и затемнение; добавлено в counterexamples (S01)"
   }
  ],
  "rejected": [
   {
    "objection": "«Жёсткие склейки на границах сцен: 28.533, 114.167, 223.667, 322.033» (4 штуки) — из возражения по invariants[10]",
    "reason": "Измерено пять, а не четыре: пропущена 54.633 (S04→S05). cards/final/S04.json boundary_out — «hard cut (scdet) 54.633», cards/final/S05.json boundary_in — hard cut J025. В файл внесена разбивка 85 внутри единиц / 5 на границах (28.533, 54.633, 114.167, 223.667, 322.033); остальная часть возражения принята."
   },
   {
    "objection": "«ledger.json SH055 140.267–141.633 (1.366 s), speech пуст» — из возражения по invariants[9]",
    "reason": "Поле speech у SH055 в ledger.json не пусто: там «Billy!» 139.93–140.37 (p=0.279) — хвост слова, начатого ещё в SH054. Существо возражения (план без лиц и без собственной речи, единственное содержание — читаемая упаковка) подтверждено карточкой и принято; формулировка исключения исправлена."
   },
   {
    "objection": "«слушатель (отец) заговорит только в 229.24 — через 2.33 s» — из возражения по свидетельству S10/J073",
    "reason": "Арифметика возражения неточна: 229.24 − 226.8 = 2.44 s. В файл внесено 2.44 s; вывод возражения (J073 не является примером «картинка к слушателю») подтверждён карточкой S10 и принят."
   },
   {
    "objection": "«Максимум противоречит собственному инварианту 18 того же файла («S14: вся сцена — один план 8.2 s»)» — из возражения по invariants[19]",
    "reason": "Ссылка неверна: invariants[18] описывает немую карточку S16. Упоминание «S14 … 8.2 s» находится в transition_rules[3].evidence и counterexamples[3] — это и указано в исправленном тексте. Само противоречие реально и устранено."
   }
  ],
  "accepted_count": 30,
  "rejected_count": 4
 },
 "measured_in_source": {
  "note": "Измерено в источнике, НЕ норматив переноса. Числа принадлежат одному англоязычному фильму 325.682 s; переносится порядок отношений, а не значения.",
  "picture_before_listener": "12 строгих стыков из 109 (предыдущая реплика кончилась ≤0.6 s до склейки, новый говорящий стартует ≤1.0 s после): J001 +0.25, J008 +0.18, J009 +0.17, J010 +0.56, J034 +0.00, J038 +0.28, J043 +0.21, J056 +0.60, J074 +0.11, J076 +0.15, J082 +0.18, J085 +0.26; ещё 6 после длинных пауз: J007 +0.57, J019 +0.40, J025 +0.60, J072 +0.58, J097 +0.08, J105 +0.18",
  "sound_across_join": "40 стыков из 109, где слово ASR-клока пересекает склейку (J002, J003, J004, J005, J021, J026–J030, J031, J033, J035–J037, J044, J046–J048, J050, J054, J055, J058, J060, J062, J064–J071, J073, J075, J077, J083, J084, J086, J087)",
  "S01_by_RMS": "внутри одной сцены разброс опережения картинки втрое шире окна 0.20–0.30: J001 ≈0.27, J002 ≈0.09, J003 ≈0.17, J004 ≈0.12 s (cards/final/S01.json editing.sound_relation)",
  "shot_lengths": "110 планов: мин 1.000 s (SH049, SH066), макс 8.200 s (SH104), медиана 2.300 s; планов короче 1.00 s нет",
  "join_kinds": "90 жёстких склеек (89 scdet + 1 dense detector 48.5), 11 растворений, 8 затемнений, 1 вспышка в белое",
  "speech_budget": "753 слова: older man 377 (50.1%), man 194, doctor 92, girl 70, older woman 10, woman 10",
  "asr_caveat": "ASR-онсеты первого слова после паузы систематически ранние на 0.1–0.5 s (cards/final/S01.json uncertainty[0]); утверждения о порядке «звук/картинка» на таких онсетах требуют RMS"
 }
}