tasks: остаток урожая ревью разнесён по домам
- tests-convention: два кандидата про тесты — один стенд чужого API на пакет, интеграционный тест обязан утверждать - convention-candidates: язык вывода в пяти местах без связывающего правила - quality-review-agents: четыре прохода не сообщили потолок находок — первый замер калибровки
This commit is contained in:
@@ -46,3 +46,14 @@
|
||||
- **Время.** Явный TZ всегда, хранение и логи в UTC. Уже частично в `CLAUDE.md`
|
||||
и `conventions/logging.md`, а `time.Now` вне `store` запрещён линтером — этот
|
||||
пункт, вероятно, закрыт и подлежит вычёркиванию.
|
||||
- **Язык вывода связан с мапперами.** Провенанс — ревью `tvdb-title-locale`
|
||||
(2026-08-07,
|
||||
[отчёт триажа](../../../openspec/changes/archive/2026-08-07-tvdb-title-locale/review/report.md),
|
||||
находка R2 прохода `architecture`). Язык вывода живёт в пяти местах четырёх
|
||||
пакетов, и теста, связывающего множество кодов языка с мапперами, нет:
|
||||
забытая ветка молча даст английский вывод вместо ошибки. Кандидат в правило
|
||||
`internal/archrules`, а не в прозу. **Дешёвый паллиатив, если правило окажется
|
||||
дорогим:** строка «язык вывода» в `docs/architecture.md` → «Единые точки
|
||||
проекта» — тогда расхождение хотя бы спросит проход по теме `architecture`.
|
||||
Число мест перед правкой перепроверить: оно снято ревью одной задачи и с тех
|
||||
пор могло измениться.
|
||||
|
||||
@@ -51,6 +51,13 @@ OpenSpec в сторону воспроизводимых автопроверо
|
||||
- **Калибровка проходов** по процедуре `references/calibration.md` скилла
|
||||
`av-dev-pipeline:review-pipeline` — ни один проход ещё не замерен инъекцией.
|
||||
До замера ничего не удаляем и промпты не правим.
|
||||
- **Проходы не сообщают свой потолок находок.** На прогоне `tvdb-title-locale`
|
||||
(2026-08-07) о потолке промолчали четверо из шести — `autotests`, `specs`,
|
||||
`architecture`, `ops`; триаж свой назвал («6 из 7, потолок не выбран»).
|
||||
Устав требует объявлять сработавший потолок строкой, и без неё «находок
|
||||
больше нет» неотличимо от «больше не поместилось» — то есть ровно тот сигнал,
|
||||
ради которого потолок и заведён. Первый замер калибровки стоит начать с этого:
|
||||
дефект прогона виден без инъекции.
|
||||
- **Заполнить журнал дефектов** в [docs/review.md](../../review.md) случаями,
|
||||
которые уже проскочили ревью, — они станут первыми пробами калибровки.
|
||||
- **Решить судьбу упразднённых проходов:** нужен ли проекту свой `idiom` поверх
|
||||
|
||||
@@ -23,6 +23,18 @@
|
||||
а дома у неё нет — источником ей служит только семантика гейта из `CLAUDE.md`,
|
||||
то есть «что краснеет», а не «что стоит проверять».
|
||||
|
||||
**Два кандидата пришли из ревью `tvdb-title-locale`** (2026-08-07,
|
||||
[отчёт триажа](../../../openspec/changes/archive/2026-08-07-tvdb-title-locale/review/report.md)
|
||||
→ «Promote candidates»), оба с провенансом прохода, а не из головы:
|
||||
|
||||
- **один стенд чужого API на пакет.** В `tvdb_test.go` завелись два фейка одного
|
||||
и того же API. Когда форма ответа поменяется по факту разведки, забытый
|
||||
`fakeTVDB` останется зелёным и продолжит подтверждать опровергнутое
|
||||
предположение;
|
||||
- **интеграционный тест обязан утверждать, а не печатать.** `TestIntegration_TVDB`
|
||||
печатает результат и ничего не проверяет: `PASS` с пустым выводом неотличим от
|
||||
подтверждения. Тест, который нельзя провалить, оракулом не является.
|
||||
|
||||
## Затрагивает
|
||||
|
||||
- `docs/conventions/tests.md` — новый файл записи конвенции;
|
||||
|
||||
Reference in New Issue
Block a user