docs обзвон: промт смене 5 переписан под стройку, правила вынесены вперёд

Владелец просил промт для смены, которая ПРОДОЛЖИТ СТРОЙКУ, и отдельно — чтобы
правила стройки она прочитала заново. Правлю тот же файл, чтобы у стройки не
завелось двух источников правды.

Что изменилось:

- шапка переписана: между сменой 4 и следующей прошла не стройка, а разбор
  развилок с владельцем — кода никто не трогал, но решений стало на одиннадцать
  больше, задач на три больше и появился лист выката. Первым действием смены
  назначено чтение метода целиком, командой, прямо в шапке;
- заведён новый раздел 0.0 «ПРАВИЛА СТРОЙКИ — прочти до того, как тронешь хоть
  один файл»: кто ты и почему надзиратель не пишет код, семь шагов круга, пять
  правил, которые нарушают чаще всего, и список того, чего не делаешь;
- раздел 3 получил честную картину целиком: 13 задач из 53 готовы, 40 осталось,
  разбивка по волнам. Главное вынесено вслух — позвонить модуль пока не может ни
  разу: шва портал-робот нет, перевода на менеджера нет. Построено всё вокруг
  звонка, а сам звонок нет. Плюс предупреждение про обманчивое чувство хода:
  закрыта самая дешёвая волна;
- числа собраны заново командой поздним вечером 06.08: план 53 задачи и 13
  построено, спека 112 требований, решений 115, хвостов 33, приёмочных листов
  8+4+6+2, тестовые базы проверены запросом, живых чужих правок сейчас нет;
- коммиты разбора названы поимённо, и отдельно записано, что соседняя смена по
  телеграму положила два своих коммита ПРЯМО МЕЖДУ моими — «мой последний
  коммит» не значит «последний в ветке».

🪤 Свои ошибки за разбор развилок добавлены счётом, их три, 33-35:

33 — приговор «подписи столбца в боевой базе нет» был ложным: первый прибор
сопоставлял столбцы по порядковому номеру, а он расходится с внутренним, если из
таблицы удаляли столбец;
34 — дважды написал проверочную команду с диапазоном русских букв в тот же день,
когда сам вписывал про это правило 18. Оба раза получил честный на вид ноль;
35 — поправил два числа в промте командой sed вопреки прямому правилу «файлы
править только средствами правки».

Ошибка 34 вынесена особо: знание правила не защищает — правило было написано
мной, в тот же день, и всё равно нарушено дважды. Защищает прибор, показанный на
подставной строке.

Проверено приборами: 983 строки, правил ровно 20, номера ошибок 17-35 без
пропусков, протухших чисел не осталось, разметка 0 ошибок, правописание чисто,
все ссылки ведут к живым файлам.
This commit is contained in:
Дмитрий
2026-08-06 15:46:03 +03:00
parent a3fe86b98b
commit ef10ef6ec6
@@ -1,8 +1,24 @@
# ПРОМТ смене 5 — «Обзвон»: звуку наконец есть куда лечь, волны 2 осталась одна задача
# ПРОМТ смене 5 — «Обзвон»: ТЫ СТРОИШЬ. Развилки разобраны, очередь работ готова
**Переписан 06.08.2026 вечером, после смены 4.** Она закрыла **З-2.1**: у записей
разговоров появилось настоящее хранилище, и два обещания человеку — «запись живёт
месяц» и «удалим голос по требованию» — перестали быть бумажными.
**Переписан 06.08.2026 поздним вечером.** Между сменой 4 и тобой прошла **не
стройка, а разбор развилок с владельцем**: кода никто не трогал, но решений стало
на **одиннадцать** больше, задач в плане на **три** больше, и у стройки появился
**лист выката**.
🔴🔴🔴 **ТЫ — СТРОИШЬ. Не переписываешь бумаги, не переоткрываешь решения, не
затеваешь разбор заново.** Спека, ворота вслепую, план, суд, редактор и допрос
владельца пройдены **до тебя**. Твоя работа — круги по плану, по методу, с
приговором своей рукой.
🔴🔴🔴 **ПЕРВОЕ ДЕЙСТВИЕ — ПРОЧЕСТЬ МЕТОД ЦЕЛИКОМ. Не пересказ, не «я помню».**
519 строк, в нашей ветке его нет:
```bash
git show 5cb09ae7e:docs/superpowers/METOD-vedeniya-fichi-v1.md
```
**Владелец потребовал этого прямым словом и повторил при передаче смены.** Правила
стройки одним списком — §0.0, и они не советы.
🔴 **Главное, что изменилось — пять вещей:**
@@ -24,9 +40,10 @@
🔴🔴 **Особо: Р115 положил в З-3.1 ловушку, которая выглядит правильной**
рамка обзвона это пересечение двух окон в **разных** часах, а построенное
правило знает только одну пару границ. Подробно в §5.1.
5. **Ошибок надзирателя стало 32** — смена 4 прибавила **пять**, две поймал
помощник. Новые правила 1820 в §0.3. 🔑 Обе пойманные помощником ошибки
одного класса: **надзиратель выдал за замер то, что замером не было.**
5. **Ошибок надзирателя стало 35** — смена 4 прибавила пять, разбор развилок ещё
три. Правила 18–20 в §0.3. 🔑 Самая полезная из новых — **34-я**: правило было
написано мной, в тот же день, и всё равно нарушено **дважды**. Знание правила
не защищает — защищает **прибор, показанный на подставной строке**.
🔴 **Твоя работа — СТРОЙКА кругами по плану.** Спека, ворота вслепую, план, суд и
редактор пройдены до тебя. Бумаги не переписывать, решения владельца не
@@ -34,11 +51,69 @@
---
## 0.0. 🔴🔴🔴 ПРАВИЛА СТРОЙКИ — ПРОЧТИ ДО ТОГО, КАК ТРОНЕШЬ ХОТЬ ОДИН ФАЙЛ
**Это не вступление и не напоминание для галочки.** Владелец потребовал прямым
словом: строить **строго по методу**. Ниже — костяк; полный метод всё равно читать
целиком (§0.1), потому что здесь только каркас, а держат стройку подробности.
**Кто ты.** Надзиратель. 🔴 **Своей рукой кода не пишешь.** Четыре обязанности:
**задания помощникам · приборы · приговор своей рукой · бумаги.** Единственное
исключение — диагностический прибор.
🔑 **Почему так.** Тот, кто пишет код, защищает свой код. Надзиратель, взявшийся
чинить сам, теряет способность выносить приговор — и метод рассыпается за одну
смену.
**Как идёт круг — семь шагов, ни один не пропускается:**
1. **Один круг = ОДНА задача плана.** Не две, не половина.
2. **Завести приёмочный лист ДО работы** — не после. Куда класть — §0.9.
3. **Задание помощнику переписать ЦЕЛИКОМ.** Он не видел твоего разговора и не
знает ничего. Проверки плана перенести **дословно** — потерянная оговорка
отменяет решение владельца.
4. **В задание — просьба о разборе** (§0.4, дословно) и **полный список
запрещённых файлов** (§0.5).
5. **Резать СВОИМ ножом.** Сторож обязан быть показан **красным** — и не тем
ножом, каким резал исполнитель. Плюс **вырезание второго рода**: назови вслух
допущение, на котором стоит защита, и найди годный по форме случай **мимо**
него.
6. **Всё вырезанное вернуть и доказать слепком**`git hash-object` или
`md5sum`, не памятью.
7. **Приговор своей рукой** в приёмочный лист, и **бумаги обновить в том же
круге**: план, лист, при надобности протокол.
**Пять правил, которые нарушают чаще всего:**
- 🔴 **«Отчёт помощника — не доказательство. И отчёт судьи тоже.»** Полный прогон
гоняешь **сам**.
- 🔴 **Свою ошибку называешь ПЕРВОЙ**, до находок. Всегда.
- 🔴 **Всякий перечень собирается КОМАНДОЙ, а не глазами по одному месту.**
- 🔴 **Приговор «этого нет» — только вторым прибором.** «Ноль» — самый опасный
ответ прибора: он одинаково значит «чисто» и «смотрел не туда».
- 🔴 **«Построено» и «работает» — разные утверждения.** Спрашивай третье:
**доехало ли до жизни** — до той машины, где оно должно работать.
**Чего не делаешь:**
- не переписываешь спеку, план и протокол решений — они закрыты до тебя;
- не переоткрываешь решения владельца Р1–Р115;
- не пушишь и не выкатываешь без его слова;
- не трогаешь файлы соседних смен (§0.5) и не разрешаешь чужие столкновения;
- не останавливаешься между кругами — владельца переспрашивают только на стене
или на границе.
🔑 **Счёт, ради которого всё это.** Метод поймал **35 ошибок надзирателя**, и
**двадцать две** из них поймал не надзиратель, а несогласный исполнитель.
Отступление от метода — не «ускорение», а отказ от единственного датчика.
---
## 0. 🔴🔴🔴 РАБОТАТЬ СТРОГО ПО МЕТОДУ — ЭТО НЕ СОВЕТ
**Владелец потребовал этого прямым словом.** Метод — не украшение стройки, а
единственное, что до сих пор ловило ошибки. Счёт за три смены: метод поймал
**32 ошибки надзирателя**, и **двадцать две из них** поймал не надзиратель, а
**35 ошибок надзирателя**, и **двадцать две из них** поймал не надзиратель, а
несогласный исполнитель — то есть приём метода, а не человек.
🔑 **Счёт смены 4 отдельно:** пять своих ошибок, две поймал помощник — и обе
@@ -104,7 +179,7 @@ git show 5cb09ae7e:docs/superpowers/METOD-vedeniya-fichi-v1.md
-**З-0.8: защита выдержала** — новое место, заведённое ножом, поймано двумя
проверками разом. Пустой улов тоже результат.
### 0.3. 🔴 ТРИДЦАТЬ ДВЕ ОШИБКИ НАДЗИРАТЕЛЯ — ВСЕ ОДНОГО КЛАССА
### 0.3. 🔴 ТРИДЦАТЬ ПЯТЬ ОШИБОК НАДЗИРАТЕЛЯ — ВСЕ ОДНОГО КЛАССА
Класс у всех один: **утверждение без замера**.
@@ -116,6 +191,18 @@ git show 5cb09ae7e:docs/superpowers/METOD-vedeniya-fichi-v1.md
где живёт человек, а их четыре; **сам указал помощнику на ловушку**; написал
«пустой прогон виден в журнале», а на бою `LOG_LEVEL=warning`.
**Ошибки 33–35 — разбор развилок 06.08.2026, все три мои:**
| # | что сделал | чего не сделал | кто поймал |
|---|---|---|---|
| 33 | 🔴 вынес приговор «подписи столбца в боевой базе НЕТ» | не проверил вторым прибором. Первый сопоставлял столбцы по **порядковому** номеру, а он расходится с внутренним, если из таблицы когда-то удаляли столбец. Подпись **была**, и она врала | сам, вторым прибором — но только потому, что правило велит |
| 34 | 🔴🔴 дважды написал проверочную команду с диапазоном **русских букв** — в тот же день, когда сам вписывал про это правило 18 | не запустил её на строке, которую она обязана поймать. Оба раза получил честный на вид **ноль** | сам, по несуразице: число не выросло, хотя я только что добавил строки |
| 35 | 🔴 поправил два числа в промте командой `sed` | не вспомнил прямое правило: файлы править **только средствами правки**, не оболочкой. Именно на записи из оболочки уже теряли содержимое | сам, сразу после — целость файла проверил, но правило нарушил |
🔑 **Ошибка 34 стоит отдельного взгляда.** Она показывает, что **знание правила не
защищает**: правило было написано мной, в тот же день, и всё равно нарушено дважды.
Защищает не память, а **прибор, показанный на подставной строке**.
**Ошибки 28–32 — смена 4, все пять:**
| # | что сделал | чего не сделал | кто поймал |
@@ -338,10 +425,10 @@ grep -c 'ПОСТРОЕНО' docs/superpowers/plans/2026-08-04-obzvon-pod-klient
---
## 2. ЧИСЛА — СОБРАНЫ КОМАНДОЙ 06.08.2026 ВЕЧЕРОМ, В КОНЦЕ СМЕНЫ 4
## 2. ЧИСЛА — СОБРАНЫ КОМАНДОЙ 06.08.2026 ПОЗДНИМ ВЕЧЕРОМ
🔴 **Собери заново на входе.** Ветка уезжает под ногами: за смену 4 в неё легло
**три** чужих коммита от **двух** соседних смен.
🔴 **Собери заново на входе.** Ветка уезжает под ногами: пока шёл разбор развилок,
соседняя смена по телеграму положила **два** своих коммита прямо между моими.
| что | сколько | чем мерил |
|---|---|---|
@@ -349,7 +436,7 @@ grep -c 'ПОСТРОЕНО' docs/superpowers/plans/2026-08-04-obzvon-pod-klient
| вершина | 🪤 **не записана намеренно, см. ниже** | `git rev-parse --short HEAD` |
| план | **53 задачи, 13 отмечено ПОСТРОЕНО** 🆕 три задачи добавлены 06.08 | §0.7 и §0.9 |
| спека | **112 требований** 🆕 было записано 96 — датчик был сломан, см. §0.7 | §0.7 |
| протокол решений | **115** 🆕 владелец закрыл десять развилок 06.08 | §0.7 |
| протокол решений | **115** 🆕 владелец закрыл **одиннадцать** развилок 06.08 | §0.7 |
| открытых хвостов в плане | **33**, живых 32 🆕 шесть породили ответы владельца | датчик в самом плане |
| приёмочных листов | **8** + **4** + **6** + **2** в `stroyka-1/2/3/4` | `ls … \| wc -l` |
| прогон на входе смены 4 | **5031 проверка, 5 КРАСНЫХ — чужие, реклама** | `php artisan test` из `app` |
@@ -364,14 +451,19 @@ grep -c 'ПОСТРОЕНО' docs/superpowers/plans/2026-08-04-obzvon-pod-klient
наступила на то же место. Вершина ветки протухает всегда: её меняет и твой
собственный коммит, и любая из двух соседних смен. **Мери, не читай.**
**Коммиты смены 4 — поимённо, их 8** (последний — сохранение этого промта):
**Коммиты разбора развилок — поимённо, их 3** (кода в них нет, только бумаги):
```
6d9bb7f65 6c01d3e08 42df0aab2 3ca4ce16c 9a4579357 496008d1b 2110ddf11 7dc7a4267
8fef11622 90993d315 a3fe86b98
```
🔴 **Чужих легло три**`a709efdee`, `9125be1f8`, `f54635c7f`: кошелёк рекламы и
промт соседней смены **о выкате**. ⇒ **вершина ветки не признак твоей работы.**
Плюс раньше, от смены 4: `6d9bb7f65 6c01d3e08 42df0aab2 3ca4ce16c 9a4579357
496008d1b 2110ddf11 7dc7a4267 4675fbd36`.
🔴 **Чужие ложатся ПРЯМО МЕЖДУ твоими.** За один вечер разбора соседняя смена по
телеграму положила два — `13ce301ab` и `f83b84565`, разбор застрявших кампаний и
починка экрана. ⇒ **вершина ветки не признак твоей работы**, и «мой последний
коммит» не значит «последний в ветке».
🪤 **Отбор коммитов «по автору» НЕ РАБОТАЕТ** — все смены коммитят под одним
именем `git config user.name`. Свои коммиты знай поимённо, иначе припишешь себе
@@ -381,8 +473,10 @@ grep -c 'ПОСТРОЕНО' docs/superpowers/plans/2026-08-04-obzvon-pod-klient
режет по 300 секунд. **Вывод НЕ через трубу**: код возврата придёт от трубы.
Полный прогон ~17 минут.
🔴 **Заводи СВОЮ тестовую базу.** Заняты и живы: `liderra_testing_obzvon` (смена 3),
`liderra_testing_obzvon4` (смена 4), `liderra_testing_z21` (её помощник):
🔴 **Заводи СВОЮ тестовую базу.** Заняты и живы — проверено запросом 06.08 поздним
вечером: `liderra_testing_obzvon` (смена 3), `liderra_testing_obzvon4` (смена 4),
`liderra_testing_z21` (её помощник). 🪤 Рядом живут ещё десятки чужих
`liderra_testing_*` от соседних смен — имя бери заведомо своё:
```bash
cd app
@@ -398,8 +492,31 @@ DB_DATABASE=liderra_testing_<своё> php artisan migrate --force
## 3. ЧТО СДЕЛАНО — НЕ ПЕРЕДЕЛЫВАЙ
**Денежная волна: 7 из 9. Волна 0: З-0.2 и З-0.8. Волна 2: 3 из 5.** Всё в ветке,
**не пушено**.
**Готово 13 задач из 53. Осталось 40.** Всё в ветке, **не пушено**, на боевом
модуля нет.
| волна | готово | осталось |
|---|---|---|
| **0. Шов, перевод, предохранители** | **2** из 11 — З-0.2, З-0.8 | 9 |
| **1. Деньги** | **7** из 9 | 2 — З-1.6, З-1.7 |
| **2. Данные человека** | **4** из 5 | 1 — З-2.4 |
| **3. Наружу к человеку** | 0 из 8 | 8 |
| **4. Скрипты и экраны** | 0 из 9 | 9 |
| **5. Авто-обзвон** | 0 из 3 | 3 |
| **6. Отделка** | 0 из 8 | 8 |
🔴🔴 **ГЛАВНОЕ, ЧЕГО НЕ ВИДНО ПО ЧИСЛАМ: ПОЗВОНИТЬ МОДУЛЬ ПОКА НЕ МОЖЕТ НИ РАЗУ.**
Шва портал↔робот нет (З-0.3, З-0.6), перевода на менеджера нет (З-0.4). Построено
всё **вокруг** звонка — деньги, хранение, стирание, сроки. Сам звонок — нет.
🪤 **И от этого обманчивое чувство хода.** Волна 1 закрыта почти целиком — но это
**самая дешёвая** волна: деньги и таблицы живут внутри портала, их видно тестами.
Волна 0 (звонок как таковой) и волна 3 (то, что уходит к живому человеку) почти
нетронуты, а там отыграть нельзя: **набранный номер уже набран**.
🔴 **Две из сорока брать нельзя** — решения владельца: **З-0.1** только пробами в
отдельное окно (Р96, Р101), **З-1.7** письмо общее с рекламой, не трогаем до
починки дороги назад (Р86).
| задача | коммит | что построено |
|---|---|---|