textmachine/docs/archive/prompts/POLYGON_INSTRUMENT_REPAIR_SESSION_PROMPT.md

21 KiB
Raw Permalink Blame History

Промт: полигон-сессия «РЕМОНТ ПРИБОРА» — линза слепого чтения и гигиена стенда

АРХИВ — ЗАКРЫТО СЛОВОМ ВЛАДЕЛЬЦА 11.09: «полигон это вообще не наш скоуп». Заказ снят не по качеству промта и не по исчерпанию предмета: зона выведена из работы целиком. Инструкции отсюда НЕ ИСПОЛНЯТЬ (правило архива). Пере-открывается только новым словом владельца; до тех пор содержимое — история, а не задание. ⚠ Ссылки на этот файл из журнала решений и старых отчётов сознательно не правлены: тела нот не переписываются, и их адреса указывают в историю.

ВЫДАН 11.09 — прежний баннер парковки снят. Полигонный слот освободился закрытием холодного прогона A актом D39.247, и норма «один промт на зону» больше не нарушается. Содержимое ниже актуально, кроме адресов — пере-снимай их командой, дерево двигалось.

И теперь твой гейт заперт не абстрактно, а конкретным заказом: следующий платный замер уже назван и ждёт тебя — §4.5. Пока линза меряет не то, он покупать числа не пойдёт.

1. Какая проблема и что решит твой результат

Мы решаем денежный вопрос: стоит ли платить за сильного редактора. Решаем замером — судьи-модели вслепую выбирают лучший вариант редактуры. Прибор сегодня меряет НЕ ТО, что мы редактору заказали. Судимой роли предписано «сверяй смысл черновика с исходным текстом, исправляй искажения», а первичная блокирующая линза — «точность ОТНОСИТЕЛЬНО ЧЕРНОВИКА». Редактор, правильно ушедший от черновика ради оригинала, по главной линзе выглядит хуже.

Осторожно с масштабом — это ратифицировано с оговоркой (D39.215 п.3 ПЛЮС эррата 10.09-г в шапке журнала: сама нота несёт усиление, которое здесь и снимается — читать её только вместе с эрратой): доказано ПРОТИВОРЕЧИЕ КОНСТРУКЦИИ; величина искажения НЕ ЗАМЕРЕНА. Оркестратор сначала написал «прибор систематически наказывает» — и это было преувеличением: в сыром массиве такая пометка встречается ОДИН раз. Твой пак — не «доказать вред», а починить конструкцию и дать величине носитель.

Твой результат: следующий замер редакторского тира отвечает на вопрос, который мы задаём, а не на соседний.

Этот пак идёт ПЕРЕД любым следующим платным замером, включая продолжение фазы Д (промт POLYGON_EXP2223_REDO_SESSION_PROMPT.md). Причина не в очереди, а в смысле: пока линза меряет не то, каждый следующий замер тира стоит меньше, чем кажется.

2. Зона и git

Зона записи: eval/ + docs/experiments/, пинг оркестратору — секция «Полигон» в docs/PROGRESS.md. Сессия НЕ коммитит, кроме пре-рег-фризов — это право полигона и единственное исключение. Чужие зоны не трогать. .env не читать.

3. Карта чтения — ЗАКОН

  1. CLAUDE.md — цели и гардрейлы.
  2. Строка 319 бэклога (docs/BACKLOG.md, греп ^| 319 |) — предмет целиком.
  3. eval/dovodka/blind-read/PREREG-2-BLIND-READ.md — §5 (линзы) и §8.
  4. eval/dovodka/prereg-4axes/stand/editor-p9.md — инструкция судимой роли.
  5. Строки 300, 265, 143 бэклога.

Ратифицированное — в теле промта:

  • D39.216 (мандат владельца, 06.09), делай РОВНО так: чинить без хаков; где форма не тянет — развязать или переписать. «Дешевле подпереть» доводом не является; отступление — с ценой.
  • Комментарий/проза не доказывают поведение; источник утверждения о смысле — прогон. ⚠ Грепом в CLAUDE.md не ищи — норма живёт нотой D39.214.
  • Число называет ДЕРЕВО и ПОПУЛЯЦИЮ. Сегодня на этом погорели три роли подряд: один и тот же счёт дал разные величины, потому что считали разные популяции.
  • Рядом с нулём — контрольная величина (CLAUDE.md).
  • Эмпирика на знакомых моделям текстах — предварительная; вес имеет замер на целевом жанре.

4. Состав и разметка свободы

4.1 Три эрраты в носителях замера — делай РОВНО так, первым касанием, $0

Форма — БАННЕР В ШАПКЕ. Тела документов НЕ ПРАВИТЬ. Оба заморожены, и пре-регистрация ценна именно неизменяемостью: правка тела уничтожает то, ради чего фриз делался.

  1. RESULT-2-BLIND-READ.md — «правильный ответ по построению — ничья» противоречит собственному тексту того же отчёта и измеренному расхождению рук.
  2. PREREG-2-BLIND-READ.md §8 — выпало унаследованное ограничение «опора судьи — ЧЕРНОВИК, не оригинал». Верни баннером, назвав, откуда выпало.
  3. PREREG-2-BLIND-READ.md §5 — правило решения готово выдать «одна рука не хуже по точности» из НЕПРОХОЖДЕНИЯ теста, что отчёт результата запрещает дословно.

Горизонт: до всего остального. Три дешёвые правки не должны ждать дорогого пака.

4.2 Гигиена стенда (строки 300, 265) — реши сам, аргументируй

Обе помечены «до следующего платного замера»: ⚠ ДИАГНОЗ ИСПР. 10.09 — болезнь ДРУГАЯ. Замер: git worktree list даёт ОДНУ строку, соседнего воркри нет вовсе. Настоящая поломка — МЁРТВЫЙ АБСОЛЮТНЫЙ КОРЕНЬ: langpack_root в шести yaml стенда указывает в /home/ubuntu/projects/textmachine-main/..., а каталога /home/ubuntu не существует; тот же литерал несут 118 из 290 py-файлов eval/. Носитель — строка бэклога 217. ⇒ чинить пути, а не сторож между ветками. Прежний диагноз: репо-широкий сторож не дотягивается до соседнего воркри, и питоново зеркало держит ВТОРУЮ копию таблицы плейсхолдеров движка, уже разошедшуюся.

⚠ По зеркалу: не переписывать копию, а убрать второй носитель, если это возможно без хаков (D39.216); невозможно — предъяви почему и поставь сверку, которая краснеет при расхождении.

4.3 Линза (главное) — делай РОВНО так в части источника, реши сам в части формы

ВРЕЗКА 11.09, И ОНА ИДЁТ ПЕРЕД ВСЕМ ОСТАЛЬНЫМ В ЭТОМ ПУНКТЕ. Читатель со стороны (движковая сессия, которая этот пак НЕ брала) возразил по существу, и возражение принято мною как находка: «линза судит относительно ЧЕРНОВИКА, а роли предписано сверять с ИСХОДНИКОМ» может быть дефектом НОРМАТИВА, а не прибора — и тогда починка на уровне судейского промта окажется велосипедом вокруг настоящего вопроса.

начни не с правки линзы, а с вопроса: что именно мы просим у редактора и относительно ЧЕГО это вообще проверяемо. Инструкция судимой роли (eval/dovodka/prereg-4axes/stand/editor-p9.md) и линза (PREREG-2-BLIND-READ.md §5) — два носителя ОДНОГО заказа, и разойтись мог любой из них. У тебя есть право ответить «линзу править не надо, надо править заказ роли»с доводом это полноценное исполнение пункта, а не отказ. Но ответ должен быть выведен, а не выбран: покажи, какой из двух носителей старше, чем другой, и чем это установлено.

Обвязка сверки с исходником уже написана в этом дереве — eval/dovodka/judge-prompts/. Нужно пере-подключение готового, а не второй прибор.

Заказ: линза, судящая правку против исходника, плюс норматив судейства из строки 143разброс инструмента ДО замера и объявленный порог различимости. Без второго первое бессмысленно: односудейный вердикт при разбросе 33 % не различает ничего.

Граница: это ремонт ЗАМЕРНОГО прибора. Судейская роль внутри движка — другой предмет, не касаться.

4.4 Семь уехавших якорей в ТВОИХ доках — делай РОВНО так, $0

Линтер якорей (python3 docs/scripts/counts.py --lint) сегодня даёт 12 проблемных якорей на 128 живых доках, и семь из них — в зоне полигона; чинит их владелец зоны, то есть ты. Замер 11.09, дословно:

  • docs/experiments/00-provider-quirks.md:163backend/internal/llm/httpllm.go:517-522, ожидалось SystemMessagesSingle
  • docs/experiments/00-provider-quirks.md:164backend/configs/models.yaml:137, ожидалось system_messages: single
  • docs/experiments/00-provider-quirks.md:164backend/internal/llm/httpllm.go:528, ожидалось func toOpenAIMessages
  • docs/experiments/23-editor-tier.md:5274backend/configs/models.yaml:137, ожидалось system_messages: single
  • docs/experiments/23-editor-tier.md:5276backend/internal/llm/httpllm.go:528, ожидалось func toOpenAIMessages
  • docs/experiments/23-editor-tier.md:7739backend/configs/pipeline-c1.yaml:95, ожидалось ×2 дешевле glm
  • docs/experiments/23-editor-tier.md:7740backend/configs/pipeline-arm-glm.yaml:6, ожидалось ×2 дешевле). glm-5 держим ЖИВЫМ

Чини НОМЕР СТРОКИ, а не текст ожидания. Токен =`подстрока` описывает, что должно быть в цели; если подогнать токен под то, что там оказалось, якорь позеленеет и перестанет что-либо стеречь — это ровно подгонка под зелень, запрещённая D39.121. Найди, куда УЕХАЛА цель, и поправь адрес. Цель исчезла насовсем — это находка, и тогда правится утверждение дока, а не якорь.

4.5 ЧТО ТВОЙ ГЕЙТ ОТПИРАЕТ — заказ на следующий платный замер · прочти, не исполняй

Этот пункт не работа, а контекст: замер, который пойдёт СРАЗУ после твоего лендинга, и знать его надо, чтобы чинить прибор под настоящий вопрос, а не под воображаемый.

Вопрос: у редактора (deepseek-v4-pro) в боевом конфиге стоит reasoning: "off", что на этом классе моделей означает «ничего не слать» ⇒ едет вендор-дефолт high. Размышление у DeepSeek считается ВНУТРИ выходных токенов, и на живом прогоне книги 11.09 это дало $0.106472 = 25.4 % цены книги, потраченных на вызовы без единого знака текста. Ось «off против low» на движке измеряется ОТДЕЛЬНЫМ КОНФИГОМ КНИГИ — это ДАННЫЕ, правки Go не требуется (00-provider-quirks.md §3г, действующая редакция).

И у рычага есть цена, уже замеренная с другой стороны: effort: "low" ПЕРЕ-ВООРУЖАЕТ эхо-мину — на плотном CJK с ослабленным размышлением модель воспроизводимо возвращает ИСХОДНИК под HTTP 200. Единственная чистая проба на low была на АНГЛИЙСКОЙ паре и предупреждения не снимает. ⇒ замер обязан идти на плотном CJK, и у него ДВА выхода, а не один: сколько пустоты сняли И сколько эха получили.

Почему это касается твоего пака. Замер сравнивает ДВЕ РУКИ на одном входе — то есть он ровно того класса, ради которого твой гейт и стоит: при неоткалиброванном разбросе инструмента и необъявленном пороге различимости (строка 143) «low не хуже» выйдет из непрохождения теста, а не из результата. Твоя §4.3 — то, что делает этот замер осмысленным. Если по ходу починки ты увидишь, что для ЭТОГО вопроса норматив судейства нужен иной, — скажи это в отчёте: заказ ещё не выдан, и твоё слово его поправит.

4.6 Чего в паке НЕТне делай

Не продолжать фазу Д · не строить второй судейский прибор · не править тела замороженных документов · не трогать движок и платформу · не гнать замер §4.5 — он выдаётся отдельным паком после твоего лендинга.

5. Мандат самопроверки ИСПОЛНЕНИЕМ — механизм назван; «перечитал сам» его не удовлетворяет

  1. Проверка своей же починки её собственным вопросом. Ты чинишь прибор — спроси у результата не «зелено ли», а «то ли он мерит». Артефакт: два-три конкретных случая, где старая линза и новая дают РАЗНЫЙ ответ, с текстом обоих ответов.
  2. Опровергатель отдельным субагентом. ⚠ Харнесс по умолчанию субагентов не спавнит — тебе разрешено и требуется. Модель задай ЯВНО (fable), одного-двух хватит. Мандат: «найди отсутствующее и противоречащее», а не «проверь, всё ли хорошо».
  3. Проверка формы эррат исполнением: после части 4.1 — git diff показывает ТОЛЬКО шапки. Соблазн «заодно поправить тело» здесь максимальный, а цена — уничтоженный фриз.

6. Оси ревью — характер «Полигон / замеры»

Из таблицы приёмки: пере-вывод чисел из СЫРЬЯ и независимость сигналов. Обе твои: любое число в отчёте выводится из сырого массива заново, а не цитируется из прежнего отчёта.

7. Записка-план ДО работы

≤15 строк оркестратору: что берёшь по каждой части · какой вопрос новая линза будет задавать и какой НЕ будет · где ждёшь сопротивления.

8. Заявление = команда

Числа и категорика — с командой и её выводом. Пере-считанное из сырья — с указанием, из какого файла и какой популяции.

9. Эхо-протокол старта

≤10 строк ДО работы: скоуп · инварианты · не-делать.

10. Что НЕ удалось — обязательная секция

Что не проверено, что не воспроизвелось, где данных не хватило. «Не измерено» вместо догадки.

11. Канал вопросов и право отказаться

Конфликт промта с носителями — пинг, не правка. Право сказать «этого делать не надо» с аргументом: в частности, если по документам окажется, что противоречие линзы описано мимо, — это самый ценный ответ.

12. Прямой канал

CLAUDE.md §«Связь между сессиями»: /tmp/textmachine-channel, свой блок первым делом, живость — через ListAgents. ⚠ Роли нет или файла нет — нормальный случай: вопрос секцией в отчёт, сессии подряд не опрашивать.

Деньги

Части 4.1 и 4.2 — $0. Часть 4.3 до фриза — $0. Первый платный вызов — только после фриза и только по санкции владельца через оркестратора. Санкции на замер этот промт НЕ несёт. Если упрёшься в «это можно предъявить только платным прогоном» — пинг, а не решение.

Отчёт

Секция «Полигон» в docs/PROGRESS.md + сообщение оркестратору: что построено · чем предъявлено (команда и вывод) · два-три случая расхождения старой и новой линзы из §5.1 · что сказал опровергатель и что ты с этим сделал · секция §10 · что ты сам считаешь слабым местом своей работы.