From cf85678e2a2f6a141d3c22ff16f4492657d99b50 Mon Sep 17 00:00:00 2001 From: heaven Date: Tue, 11 Aug 2026 03:42:45 +0300 Subject: [PATCH] =?UTF-8?q?Freeze=20phase=20D=20judging=20design=20and=20$?= =?UTF-8?q?6.00=20ceiling:=20two=20zero-cost=20judge=20families=20with=20a?= =?UTF-8?q?=20pre-registered=20disagreement=20rule,=20external=20judge=20i?= =?UTF-8?q?solated,=20=D0=947=20cap=20restored=20to=20the=20order's=20$0.0?= =?UTF-8?q?5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/experiments/23-editor-tier.md | 69 ++++++++++++++++++++++++++++++ eval/dovodka/money_d.py | 21 ++++++--- 2 files changed, 85 insertions(+), 5 deletions(-) diff --git a/docs/experiments/23-editor-tier.md b/docs/experiments/23-editor-tier.md index 241b0e09..e7476dd8 100644 --- a/docs/experiments/23-editor-tier.md +++ b/docs/experiments/23-editor-tier.md @@ -979,3 +979,72 @@ D39.104. Собран уравненный мандат (строка 153 бэк которого не было: срабатывание на выходе ЧУЖОЙ единицы 67.1% против 28.5% на своём — прибор специфичен в 2.4 раза и нулевую модель проходит. Счётная сверка ПОКРЫТИЯ — дословно то, что заказано (промт :91-94). Подозрение снято; остаётся мягкая правка формулировки флага. + +### Д0.12 СУДЕЙСТВО: ДВА СЕМЕЙСТВА, ОБА $0 — подход объявлен ДО вердиктов + +Решение владельца 11.08 дословно: **«НИКАКИХ ВЫЗОВОВ ПО АПИ, всё локально у нас на харнесах +codex/claude»**; второй судья — **локальный харнесс Sol 5-6**, и его роль владелец назвал так: +«ты судишь свою часть, он — второе мнение твоего судейства / твоей слепоты». Платных судей в +смете нет ни цента; появление такой строки = дефект. + +**Зачем вообще второе семейство — замерено, а не предположено.** Проход `tier` пака 23 разошёлся +между семействами в 7–12 раз и пережил все три нормировки рига (контраст внутри единицы · порог из +своего пола · декой как единица измерения), то есть спор СОДЕРЖАТЕЛЬНЫЙ, а не шкальный. Разбор +установил: находки Claude — ПОДМНОЖЕСТВО находок Sol (74 из 100 внутри, при случайном уровне 0.14, +p=0.0000); Claude поставил ровно ноль в 47 клетках из 128, из них 31 с пустым обоснованием; в +тексте боевого редактора лежат РЕАЛЬНЫЕ инверсии смысла, которым Claude поставил ноль +(`箭在弦上,不得不发` → «Стрела уже слетела с тетивы» — смысл обратный). Одно семейство свою слепоту +не видит по построению — вот что покупает второе. + +**Шкалы НЕ синхронизируются.** Каждое семейство судит против СВОЕГО шумового пола и своего порога. +Это не компромисс, а следствие устройства рига: сравнивается не абсолютный уровень, а контраст +внутри единицы. Попытка «привести Sol к Claude» была бы подгонкой прибора под ответ. + +**Границы второго судьи объявлены заранее (Д0.7 и здесь).** Шумовой пол Sol — sd 5.05, порог +различимости 3.53. Для тонких контрастов Д4 (ожидаемые перевесы 0.2–2.5) это значит: подпись Sol +под отрицательным выводом почти автоматична и читается как «внешний судья ТОЖЕ не увидел», а НЕ +как «внешний судья подтвердил равенство». Ценность Sol здесь — поймать КАТАСТРОФУ, которой +внутрисемейный судья не заметил, и это ровно то, что он сделал в паке 23. + +#### Правило расхождения — ПРЕ-РЕГИСТРИРУЕТСЯ, потому что его отсутствие и погубило вывод пака 23 + +| что наблюдаем | вердикт фазы | +|---|---| +| оба семейства перешли СВОЙ порог в ОДНУ сторону | **CONFIRM** | +| Claude перешёл, Sol нет | **НЕ ПОДТВЕРЖДЕНО ВТОРЫМ СЕМЕЙСТВОМ** — для тонких контрастов это ОЖИДАЕМЫЙ исход при пороге Sol 3.53, опровержением НЕ является | +| Sol перешёл, Claude нет | **СЛЕПОТА ПЕРВОГО СУДЬИ** — клетки, которые цитирует Sol, читаются руками; находка идёт в отчёт как дефект ПРИБОРА, не как свойство арма | +| перешли в ПРОТИВОПОЛОЖНЫЕ стороны | **СПОРНО** — CONFIRM не выдаётся, расхождение печатается числом и становится находкой об инструменте | + +Правило симметрично и записано ДО того, как получен хоть один вердикт фазы Д. Выбирать удобное +семейство постфактум запрещено этим абзацем. + +#### Нормы, обязательные для ОБОИХ семейств + +Декой в каждой пачке; семейство, не поймавшее декой отрицательным знаком, аннулируется на этой +пачке целиком · все армы единицы — в ОДНОМ пакете (пачка на единицу, метки слепые и перемешаны) · +судье запрещено сравнивать варианты между собой, оценка только против исходника · клетка с +`finish=length` в пачку не допускается · шумовой пол — ПАРОЙ, чьи половины судят РАЗНЫЕ сессии · +идентичность судьи персистится ДО запуска (`runs.py --claim`, кап 80) · позиционный наклон +замеряется, вычитается и сторожится гейтом. + +#### Изоляция внешнего судьи — единственный работающий контроль + +Пост-фактум детектора «подглядывал ли судья в ключ» не существует; изоляция и есть контроль. +Поэтому задания Sol готовятся в ОТДЕЛЬНОМ рабочем каталоге, где нет ни ключа слепых меток, ни +кода, и путь записи ответа указывает ТУДА ЖЕ. Оба правила куплены дорого: пак 23 сперва НАЗВАЛ +внешнему судье путь к ключу (написать болтливому агенту «не открывай `blind-keys/`» = показать +пальцем), а затем велел писать ответы в боевой каталог `aj-tier/`, который харнесс владельца +затёр бы поверх отсуженного. + +**Закрытие пункта — только изменением файла ВНЕ зоны.** «Пакеты подготовлены и ждут» закрытием не +является: закрыто = непустой каталог ответов + пере-счёт скриптом класса `solscore`. + +#### $0-калибровка осей ПЕРЕД боевым судейством (`eval/editor_tier/axiscal.py`) + +Прежде чем сравнивать семейства на боевых числах, обе семьи раскладываются по УЖЕ пойманному +декою: доля пойманного дефекта известного типа и правильность отнесения его на ось. Меряется не +«строгость вообще», а чувствительность и ложная тревога КАЖДОГО семейства ПО КАЖДОЙ ОСИ. +⚠ Граница прибора названа заранее: посадка даёт ГРУБЫЕ дефекты, а спор семейств живёт в +маргинальном режиме — на грубых обе семьи упираются в потолок. И если посадка узнаваема (у декоя +пака 22 был почерк, судьи называли его метку), меряется узнаваемость, а не чувствительность. +Поэтому axiscal — прибор ОГРАНИЧИВАЮЩИЙ, а не сертифицирующий. diff --git a/eval/dovodka/money_d.py b/eval/dovodka/money_d.py index 9cd2d6f6..c9e4187e 100644 --- a/eval/dovodka/money_d.py +++ b/eval/dovodka/money_d.py @@ -81,11 +81,22 @@ TAGS = { # только СВОЙ пол — при sd ≤ 1.91 контрасты A1/A0 и A3/A0 становятся несущими. Покупать армы, # не зная пола, значит рисковать всей сметой оси, которая может не дать вывода ни при каком исходе. # -# ⚠ ЧТО НЕ ВЛЕЗЛО В $5.40 И ОБЪЯВЛЕНО ДО ПОКУПОК: Д1 добирает 15 клеток gemini из 16. Шестнадцатая -# стоит $0.147 и требует потолка $5.45. Пре-рег Д0.3 говорит прямо: несущей ось Д1 делают ПОЛНЫЕ 16. -CEILINGS = {"ФД-A": 1.640, "ФД-B": 0.620, "ФД-C": 0.160, "ФД-D": 0.055, - "ФД-E": 2.305, "ФД-F": 0.410, "ФД-G": 0.210} -PACK_CEILING = 5.40 +# ⚠ ПОТОЛОК ПОДНЯТ ДО $6.00 (санкция владельца 11.08). При $5.40 за борт выходила 16-я клетка +# gemini, а пре-рег Д0.3 говорит прямо: несущей ось Д1 делают ПОЛНЫЕ 16. При $6.00 влезает всё +# заказанное, включая расширение базы H-1 на новые единицы (без него носитель H-1 при n=16 +# недомощен по построению — эррата Э-2/Э-3), и остаётся резерв 3.2%. +# +# ⚠ СУДЕЙСТВО СТОИТ $0 И ЗДЕСЬ НЕ ЗАЛОЖЕНО НИ ЦЕНТА — это норма заказа, подтверждённая владельцем +# 11.08 дословно: «НИКАКИХ ВЫЗОВОВ ПО АПИ, всё локально у нас на харнесах». Судей двое и оба +# бесплатны: агент-сессии (кап 80, `runs.py`) и локальный харнесс Sol 5-6 владельца — второе +# мнение о МОЁМ судействе и моей слепоте. Появление платного судьи в смете = дефект, не оптимизация. +# +# ⚠ ФД-D = РОВНО $0.05, а не $0.055. Заказ несёт единственный явный денежный кэп на платный пункт +# («Д7 — микро-проба самооценки ≤$0.05», промт :119), и прежний запас 10% его пробивал, тогда как +# на всех прочих фазах запас 0.1–1.1%. Поймано ревью 11.08. +CEILINGS = {"ФД-A": 1.660, "ФД-B": 0.630, "ФД-C": 0.170, "ФД-D": 0.050, + "ФД-E": 2.370, "ФД-F": 0.720, "ФД-G": 0.210} +PACK_CEILING = 6.00 M22.configure(ZONE=ZONE, OUT=OUT, TAGS=TAGS, CEILINGS=CEILINGS, PACK_CEILING=PACK_CEILING, GLOB_ALL="dv-*.json", ROSTER=ROSTER)