docs обзвон: конец смены 10, промт смене 11 — починка впервые доехала до живой машины

Смена 10 закрыта. Два круга: имя человека больше не может стать приказом роботу, и выкат
моста, ячеек и приёмника на живую машину робота. Владелец закрыл шесть развилок Р132-Р137.
Счётчик сдвинулся впервые за две смены: 21 из 54.

В промте смене 11 названы поимённо ТРИ неверных места промта смены 10, все мои.

Первое и главное. Выкат стоял первым пунктом, а починка имени вторым. Порядок вредный:
выкат и есть то действие, которое ВКЛЮЧАЕТ дорогу отравы. Владелец переставил, Р133.

Второе. Сказано, что уборщика ячеек зовёт одно место. Мест два, и главное — набор, а не
мост. И улика про 25 несостоявшихся звонков доказывает не то, подо что подставлена.

Третье. Таблица сторожей машины устарела целиком.

Мои ошибки смены 10 — семь, с 74 по 80, и пять из семи нашёл не я. Худшая восьмидесятая:
скопировал на машину тайный ключ вторым экземпляром, пролежал двадцать минут.

Заведены восемь правил сверх сорока. Главные: спрашивай у пункта плана не что он чинит, а
что он ВКЛЮЧАЕТ; мы туда не пишем — это не защита; прибор обязан звать настоящий код, а не
повторять его у себя; проверка, до которой не доходит очередь, стережёт ноль; оговорка —
не проверка; оснастку для проверки бери, не копируя тайного.

Судья снова дал улов крупнее обоих помощников вместе: у имени было ДВЕ двери, чистка
стояла на одной, и живой была как раз та, где чистки не было вовсе.

Прибавилось шесть вопросов владельцу, и первым — поднять заново вопрос про записи
разговоров: он был отложен ДО выката, выкат состоялся.

Датчики: разметка обеих бумаг 0 ошибок, все три ссылки промта проверены на существование,
метод достаётся командой и даёт 519 строк, числа собраны командой при написании.
This commit is contained in:
Дмитрий
2026-08-08 12:56:58 +03:00
parent 13d073f239
commit 238d91b67f
2 changed files with 296 additions and 0 deletions
@@ -1,5 +1,10 @@
# ПРОМТ смене 10 — «Обзвон»: стены больше нет, но починка не доехала до жизни
> 🔴🔴 **ОТРАБОТАН 08.08.2026. Читать его надо, — но СНАЧАЛА возьми
> [2026-08-14-PROMT-obzvon-stroyka-8.md](2026-08-14-PROMT-obzvon-stroyka-8.md):
> в этом файле ТРИ неверных места, и они там названы поимённо. Главное из них —
> порядок работ: выкат стоял первым пунктом, и это было вредно.**
**Написан 08.08.2026, в конце смены 9.** Смена 9 — **два круга**, оба по одной
задаче З-0.1. Владелец закрыл **четыре развилки** (Р128–Р131), и **вся стена,
на которую упиралась стройка, снята**. Задач построено по-прежнему 20 из 54 — и
@@ -0,0 +1,291 @@
# ПРОМТ смене 11 — «Обзвон»: починка впервые доехала до живой машины
**Написан 08.08.2026, в конце смены 10.** Смена 10 — **два круга**: починка
(имя человека больше не может стать приказом роботу) и **выкат на живую машину
робота**. Владелец закрыл **шесть развилок** Р132–Р137. Счётчик сдвинулся
впервые за две смены: **21 из 54**.
🔴🔴🔴 **ПЕРВОЕ ДЕЙСТВИЕ — ПРОЧЕСТЬ МЕТОД ЦЕЛИКОМ. Не пересказ, не «я помню».**
519 строк, в нашей ветке его нет:
```bash
git show 5cb09ae7e:docs/superpowers/METOD-vedeniya-fichi-v1.md
```
**Владелец требует этого прямым словом каждую смену.**
🔴🔴 **ВТОРОЕ ДЕЙСТВИЕ — ПРОЧЕСТЬ ПРОМТ СМЕНЫ 10 ЦЕЛИКОМ:**
[2026-08-13-PROMT-obzvon-stroyka-7.md](2026-08-13-PROMT-obzvon-stroyka-7.md), а
через него — промт смены 7, где лежат правила стройки, лист обязанностей,
список запрещённых файлов и как гонять прогоны. **Этот файл их не заменяет, а
поправляет.**
---
## 0. 🔴 ЧТО В ПРОМТЕ СМЕНЫ 10 НЕВЕРНО — ТРИ ПОПРАВКИ, ВСЕ МОИ ОШИБКИ
1. 🔴🔴 **§3 ставит ВЫКАТ первым пунктом, а починку имени вторым. Порядок
вредный.** Выкат — это и есть действие, которое **включает** дорогу отравы:
пока имя до машины не доезжало, продиктовать роботу было нечем. Выкатив
раньше починки, мы своими руками открыли бы дыру, которую владелец закрыл
решением Р131. Владелец переставил порядок — **Р133**.
2. 🔴 **§4 №29 говорит: «уборщика зовёт ОДНО место — сам мост». Мест ДВА**, и
главное — не мост, а **набор**: он метёт просроченные ячейки перед каждым
набором. И **улика «25 несостоявшихся звонков — лежат все 25» доказывает не
то**, подо что подставлена: уборщик отработал все 25 раз, просто имена были
моложе часа. Вывод устоял, но держится на **устройстве**, а не на замере.
3. **§2 таблица сторожей машины устарела целиком** — смотри §2 здесь.
---
## 1. ЧТО СДЕЛАЛА СМЕНА 10
### 1.1. Круг 1. ✅ Имя человека больше не может стать приказом роботу
**Беда была страшнее, чем её описывали.** Имя приходит из карточки лида, то есть
**снаружи**, а мост совал его **внутрь наставления** роботу. Значит любой, чьё
имя попало в список, мог продиктовать Лене, что сказать живому клиенту.
Замер надзирателя до работы: **восемнадцать способов отравить — отбито ноль**. И
случай, **ради которого защита строилась**, тоже доезжал: чистка меняла перевод
строки на пробел, и приказ просто оказывался в той же строке.
**Что построено.** Помощник **разбил моё требование** «передать имя отдельно от
наставления» как невыполнимое: служба принимает один текст, переложить имя в
другой угол — видимость лечения. Он сделал сильнее: **имя не фильтруется, а
собирается заново из разрешённых кусков**. Запретительных списков нет ни одного.
Плюс: дырявая замазка имени в журнале (падежи, строчные, **заглавные**);
убрано неверное слово «необратим» в **восьми** местах; «хранится час»
переписано честно.
Коммиты: `92054dc7c`, `28b4fb579`, `fefba2e1f`, `d7aafdb78`, `c5a32b640`,
`31737efb6`, `dfe675b5c`, `e890635f0`.
Лист: [priyomka/stroyka-10/z-r131-imya-ne-diktuet-2026-08-08.md](priyomka/stroyka-10/z-r131-imya-ne-diktuet-2026-08-08.md)
### 1.2. Круг 2. 🚀 ВЫКАТ на живую машину — мост, ячейки и приёмник
Владелец дал слово: **«го, только не потри никого»**. Выкат делал сам, он
необратим.
- **Никого не потёр — доказано командой**: перечень всех файлов до и после, три
моих изменения, **ни одной пропавшей строки**. Пятнадцать чужих наладочных
файлов целы, записи разговоров целы.
- **Живые входящие звонки компании не задеты**: обе Лены запускают **один и тот
же** файл моста, перезапущена **только обзвонщица**, у приёмщицы номер
процесса не изменился.
- **Отрава не доезжает — замерено моим ножом прямо на машине.**
Коммиты: `2548eb25f` (лист до выката), `13d073f23` (приговор).
Лист: [priyomka/stroyka-10/z-vykat-most-yacheyki-priyomnik-2026-08-08.md](priyomka/stroyka-10/z-vykat-most-yacheyki-priyomnik-2026-08-08.md)
**З-0.1 закрыта целиком** — в хранилище, на станции и на живой машине.
Счётчик **20 → 21**.
### 1.3. 🆕 ВЛАДЕЛЕЦ ЗАКРЫЛ ШЕСТЬ РАЗВИЛОК — Р132–Р137
| # | решение | что это меняет |
|---|---|---|
| **Р132** | записи разговоров — права закрываем **после** выката | 🔴 выкат состоялся ⇒ **вопрос №26 обязан подняться снова** |
| **Р133** | сначала Р131, потом **один** выкат | 🚀 исполнено |
| **Р134** | дырявую замазку чиним в том же круге | ✅ исполнено |
| **Р135** | имя за границей — **принятая цена**, сказано вслух | 🔴 условия службы **не читаны** |
| **Р136** | «час хранения» — бумаги честные, поведение прежнее | ✅ исполнено |
| **Р137** | З-0.4 берём, условие «слита» переписываем | 🔓 отпирает сердце фичи |
### 1.4. 🔴 МОИ ОШИБКИ СМЕНЫ 10 — СЕМЬ, С 74 ПО 80
| # | что сделал | чем кончилось |
|---|---|---|
| 74 | поставил выкат раньше починки | выкат **включает** дорогу отравы |
| 75 | дал помощнику файл под `app/` во время своего прогона | нарушил своё же правило 37; вреда не вышло **по удаче** |
| 76 | мерил на самодельном наставлении, нож списал код копией | мерил **свою копию**, а не мост |
| 77 | «уборщика зовёт одно место» | мест **два**; неправда разошлась по трём файлам |
| 78 | датчик счёл отравой прибавку строк | прибавкой была **защитная врезка помощника**; объявил 16 из 17 ложно |
| 79 | велел построить проверку, **до которой не доходит очередь** | зеленела бы, даже если бы защиты не было вовсе |
| 80 | скопировал на машину **тайный ключ** вторым экземпляром | пролежал двадцать минут |
🔴 **Из семи пять нашёл не я.** Своими руками поймал только 74 и 78.
🆕 **Восемь правил сверх сорока:**
- **41. У каждого пункта плана спрашивай не «что он чинит», а «что он
ВКЛЮЧАЕТ».** Порядок работ — очередь состояний системы, а не очередь дел.
- **42. В ветке четырёх смен «неподвижное дерево» недостижимо.** Годная мерка:
движения ОТ МЕНЯ — ноль, чужое движение объявлено слепком, всякая краснота
разбирается вторым прибором на «чья».
- **43. 🔴 «Мы туда не пишем» — не защита.** Дыру закрывает невозможность
записи, а не наше намерение не писать.
- **44. 🔴 Прибор обязан звать НАСТОЯЩИЙ код, а не повторять его у себя.**
Списанная копия меряет копию.
- **45. 🔴 Оговорка — не проверка.** «Взял с твоих слов» не спасает: спрашивай,
**что именно замер доказывает**, а не откуда он взят.
- **46. 🔴 Имя защиты — часть защиты, и ложь переезжает в него.**
- **47. 🔴🔴 Проверка, до которой не доходит очередь, стережёт НОЛЬ.** Защита из
нескольких заслонов подряд делает проверки на дальние заслоны недостижимыми.
- **48. 🔴 Оснастку для проверки бери, не копируя тайного.** Копия ключа живёт
ровно столько, сколько ты о ней помнишь, а помнишь ты плохо.
### 1.5. 🔑 ЧТО ДАЛ СУДЬЯ — БОЛЬШЕ, ЧЕМ ОБА ПОМОЩНИКА ВМЕСТЕ
Заведён **сразу после первых находок**, как велит метод.
- 🔴🔴 **У имени было ДВЕ двери, чистка стояла на одной — и живой была та, где
чистки не было вовсе.** Мост, беря имя из общего запасного файла, не проверял
его ничем; судья положил туда отраву — наставление выросло с 357 до 361
строки. **Эту дверь я своей же поправкой объявил неопасной.**
- **Мой нож был негоден** (ошибка 76) и **настоящее наставление я не мерил ни
разу**: 42 701 знак, 357 строк, заглушка **дважды**, и первое попадание —
**в конец определения роли Лены**, раньше всех правил.
- **У приёмщицы входящих заглушки нет вовсе** — ноль раз; вся постройка с
именами для неё не делает ничего.
- **Замазка дырявее**: течёт и **имя заглавными**.
- 🔴 **Шесть остановок на пути чужого приказа до уха клиента — на смысл не
смотрит НИ ОДНА.**
---
## 2. ЧИСЛА — СОБРАНЫ КОМАНДОЙ 08.08.2026
🔴 **Собери заново на входе. Числа устаревают.** В ветке работают четыре смены.
| что | сколько |
|---|---|
| ветка | `feat/prospects-manual-testing-kp`, голова `13d073f23` |
| план | **54 задачи, 21 ПОСТРОЕНО** |
| решения владельца | **137** |
| полный прогон, дерево `app/` не двигалось | **5418 проверок, 5414 зелёных, 4 пропущено, красных 0** |
| пробы робота | **131** имя за звонок · **58** имя не команда · **38** метка и замок · **233** приёмник |
| сторожа машины | станция **12/0** · заготовки **23/0** · расписание **26/0** · чистка **27/0** |
| текстовый след | **46/1** — приёмщица работает старым текстом моста |
| суточный обход | **42/1** — отправка итога порталу не настроена |
| записи разговоров на машине | **89**, права **644** — читать всем |
| служба приёмника заданий | **НЕ ПОДНЯТА** |
🔴 **Число меток спеки** прошлая смена мерила прибором §0.9 и получила 98.
Я этим прибором **не мерил** — не переноси число как свежее, **померь сам**.
🪤 **Сторож суточного обхода ВРЁТ КРАСНОТОЙ.** Два одинаковых прогона подряд:
**2 и 9 красных**. Он читает итог отдельным обращением к машине и, когда
обращение вернуло пусто, объявляет «в итоге НЕТ поля» — семь раз сразу. Все семь
полей на месте, проверено. Гоняй его **дважды** и не верь одиночному ответу.
**Коммиты смены 10 — поимённо, их пятнадцать:**
```text
c01a57910 1700b7575 7d0dac752 c5a32b640 58c2a7e12 31737efb6 92054dc7c
dfe675b5c 28b4fb579 fefba2e1f d7aafdb78 e890635f0 2e764f55e 2548eb25f
13d073f23
```
Между ними легли **два чужих** коммита соседних смен.
---
## 3. 🔴 ЧТО ДЕЛАТЬ
| # | что берёшь | почему здесь |
|---|---|---|
| **1** | 🔴 **Поднять службу приёмника заданий** | файл на машине лежит, службы нет ⇒ **портал не может заказать роботу звонок**. Нужна учётная запись на служебном входе станции. Без неё вся постройка мертва |
| **2** | 🔴🔴 **З-0.4 — перевод на менеджера, СЕРДЦЕ фичи** | **Р137 отперла**. Робот поговорил, человек согласен — звонок уходит живому менеджеру. Без неё обзвон никому не нужен |
| **3** | **З-0.5 — предел разговора** | только после З-0.4 |
| **4** | **вторая половина З-0.6 — отчёт робота** | `most.py`, узкое горло |
| **5** | 🔓 **З-4.9 тумблер видимости, потом З-4.1 экран** | 🔴 тумблер **первым**: без него мы покажем всем клиентам ссылку на недостроенный обзвон |
| **6** | 🔓 **З-3.2 — свой список «не звонить»** | **Р129 отперла**; и связь «исход отказ → запись в списке» |
🔴 **З-1.7 не брать**Р86.
### 3.1. 🔴 ЧТО ЖДЁТ ВЫКАТА — СЕМЬ МЕСТ
✅ Пункт «мост + ячейки + приёмник» **закрыт 08.08.2026**.
1. 🔴🔴 **Служба приёмника заданий** — см. §3 п.1.
2. Портальная половина сторожей машины робота (**отсюда красная у обхода**).
3. Приёмник заданий слушает **без шифрования**.
4. Правка живого модуля СМС (З-3.1).
5. Дверь боевого «Поиска клиентов» (Р126).
6. Третья дверь — плитка прокси (Р126).
7. 🔴 **Запрет ходить по переадресации.** Пока не выкачен — на боевом ключ
«Поиска клиентов» **уезжает по переадресации**, замерено.
---
## 4. ВОПРОСЫ, ВИСЯЩИЕ НА ВЛАДЕЛЬЦЕ
Двадцать девять из промта смены 10 — **проверь каждый**. 🆕 **Прибавились шесть:**
- 🔴🔴 **№26 ПОДНЯТЬ ЗАНОВО.** Записи живых разговоров лежат правами «читать
всем» — **89 файлов, права 644**. Р132 отложил вопрос **«до выката»**. **Выкат
состоялся 08.08.2026.** Обязан спросить снова, первым делом.
- 🆕 🔴🔴 **№30. Свободный мешок — вторая дверь в наставление, крупнее первой.**
Портал шлёт роботу мешок полей, и он уезжает **целиком, без проверки
содержимого**. В бумагах **уже записано**, что туда поедет «имя собеседника
**и текст скрипта**». Чистки нет и не запланировано. Молчит только потому, что
робот из мешка ничего не читает.
- 🆕 🔴 **№31. Общий запасной файл имени лежит в папке, ОБЩЕЙ со станцией.**
Гарантия стоит в точке использования и держит, но записать в файл может кто
угодно с доступом к машине. Закрывать ли саму дверь.
- 🆕 **№32. Робот произнесёт клиенту любое одно слово из карточки** —
«Здравствуйте, Дурак!». Защита от приказа держит, от оскорбления беречь не
может: словарь имён всегда неполон. Место починке — **на портале**.
- 🆕 **№33. Ни одна проба робота не запускается сама.** Суточный обход проб не
зовёт вовсе.
- 🆕 🔴 **№34. Перезапускать ли приёмщицу живых входящих звонков.** Она работает
**старым текстом моста** — это мой объявленный до выката выбор ради «никого не
потри». Перезапуск — секунды простоя живой службы.
- 🆕 **№35. Чинить ли сторожа обхода, который врёт краснотой** (§2), или принять
как есть и гонять дважды.
### 4.1. 🔴 ОСТАТОЧНЫЕ ЦЕНЫ, НАЗВАННЫЕ И НЕ ЗАКРЫТЫЕ
- **«Иванов Иван Иванович» → обращение по фамилии.** Порядок слов в карточке
лида нам неизвестен.
- **«де ла Круз Мария» → «Де»** — приставки европейских фамилий не разбираются.
- **Поле из пяти и более слов теряет обращение целиком.**
- **Короткий приказ в 2–4 слова даёт одно слово вслух** — «Здравствуйте, Скажи!».
- **Предел в 100 знаков стал бесполезен** — форма строже длины.
- **Новая проверка приёмника признаёт «пусто» безопасным** и держится **в паре**
с соседней. Сносить нельзя.
- **Условия сторонней голосовой службы не читаны** (Р135): срок хранения,
учится ли на наших словах, есть ли тумблер «не хранить».
- **Когда сливаем ветку в главную** (Р137) — не решено.
- **Старые журналы моста с именами уже лежат на машине.** Р134 чинит будущие
записи; удалять на машине нельзя (Р94).
---
## 5. ГРАНИЦЫ
Без изменений. Коротко: боевой прод не трогать; машину робота **не
перезагружать** и ничего чужого на ней не удалять (Р94); не пушить и не
выкатывать без слова владельца; чужие файлы и чужие столкновения не трогать;
открытые вопросы не закрывать.
🔴 **Живых платных звонков не делать** — в диалплане прямо написано: раздел
набора «только по команде владельца, это платный звонок живому человеку».
🔴 **Раздел `[lena-vhodyashchie]` в настройке станции и одноимённая служба —
живые входящие звонки компании.** Не трогать ничем.
🔴 **На машине ДВЕ папки с кодом робота**, и это легко проглядеть:
```text
/home/ubuntu/lena-inworld/ — отсюда РАБОТАЮТ обе службы
/home/ubuntu/lena-golos/ — папка ЭТАЛОНОВ суточного обхода
```
Выкат обязан обновлять **обе**, иначе сторож обхода краснеет. 🪤 И **состав**
папки эталонов охраняется: лишний файл там — краснота. Слепки для отката туда
не клади.
🪤 **Файлы из Windows доезжают на машину с лишним знаком конца строки** и дают
другой отпечаток. Снимай его (`tr -d "\r"`) и **сверяй отпечатки после**, иначе
побайтовый сторож останется красным навсегда.
🪤 **В дереве чужое столкновение**`bots/mts-telegram-ads/src/runner.js`. Чужой
мусор, в коммит не брать: `app/proba-korenj.md`, `app/echo`, `app/getFillable())`,
`app/toArray()))`, `bots/lena-golos/__pycache__/`.
**СТИЛЬ:** простой русский, без программистских слов — владелец не программист.
**Не называть сделанным непроверенное. Свою ошибку называть первой.**
**И работать строго по методу — это прямое требование владельца.**