ревью: idiom упразднён, его класс переселён в ops и architecture

- эксперимент против поведения stdlib, драйвера и PRAGMA — обязательный
  вопрос 8 у ops, с прецедентом «-1 >= -1» и оговоркой про data_version
- «не изобретаем ли то, что уже есть в библиотеке» — вопрос 1 у architecture,
  с перечнем конструкций stdlib
- потеряна поимённая сверка с Effective Go и стайлгайдами: класс обратимый,
  но теперь не покрыт вовсе — записано в журнал ревью
- профили: quick 4, standard 6, deep 7–8, design 3
This commit is contained in:
av
2026-08-02 20:52:45 +03:00
parent 33cf1b7bae
commit 9ad1deeb01
6 changed files with 65 additions and 135 deletions
+12
View File
@@ -89,6 +89,18 @@ VPS **rivendell**: один бинарь в контейнере, перед н
просто нет новых событий? И зеркальный вопрос: не утекают ли в лог тело
доставки, значения точек или токен — для данных о здоровье это дороже
отказа, тела допустимы только на `DEBUG` и с обрезкой.
8. **Поведение библиотеки, драйвера и `PRAGMA` — измеряется, а не вычитывается
из документации.** Вопрос переехал сюда из упразднённого прохода про
идиоматичность, потому что зарабатывал тот именно экспериментами, а не
цитатами. Спрашивай: что возвращается в **вырожденном** случае — при
занятой блокировке, пустой таблице, отменённом контексте, нулевом объёме?
Отличим ли этот ответ от штатного? Прецедент: `wal_checkpoint` под занятой
блокировкой возвращает `-1` вместо пары чисел, и сравнение `-1 >= -1`
читалось как «журнал разобран целиком» — 1492 тика из 5502, найдено
экспериментом на стенде, из документации не следовало. Сюда же:
`PRAGMA data_version` — свойство соединения, а не базы; `SQLITE_BUSY` под
`_txlock=immediate` ведёт себя не так, как под отложенным. Проверяй на
копии или временном каталоге, `./data` не трогай.
## Правило формулировки