refactor(make): правки по холодному ревью реализации

- Зачем:
  - половина критерия приёмки стояла не там, где решено: предупреждение о ручном равенстве версий ruff адресовано тому, кто правит лок в generator/, а лежало в корневом Makefile.
  - довод «генератор — отдельная сущность» был выписан трижды почти дословно.
- Что:
  - равенство версий и охват корневой цели названы в карте проверок; три примечания к таблице собраны списком.
  - названа цена занижения target-version: даги бегут на 3.13 и модернизаций не получают.
  - шапка generator/Makefile вырезана, корневая сжата до строки, объяснение в ruff.toml укорочено.
  - формулировки в AGENTS.md и README поправлены.
- Проверка:
  - make lint; make config-test — зелёные.
  - make -C generator lint; typecheck — зелёные; исходники генератора не менялись.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
2026-08-09 21:49:54 +03:00
co-authored by Claude Opus 5
parent 6a708cd5aa
commit e4e5688775
6 changed files with 24 additions and 24 deletions
+5 -5
View File
@@ -2,17 +2,17 @@
# в `generator/pyproject.toml`: конфиг ruff ищется вверх по дереву от файла,
# поэтому ближний к генератору выигрывает и этот его не подменяет.
#
# Здесь отдельный файл, а не `pyproject.toml`, потому что пакета в корне нет:
# корневой `pyproject.toml` завёл бы в репозитории второй проект `uv` — с
# локом и окружением, — которого стенду не нужно.
# Отдельный файл, а не `pyproject.toml`: пакета в корне нет и заводить его
# ради настройки линтера незачем.
# На каком Python побежит код, ruff сам не знает: у генератора он берёт ответ
# из `requires-python`, а у стенда спрашивать некого — даги и Superset живут
# внутри образов. Замер 9 августа 2026 года: `apache/airflow:3.3.0` несёт
# Python 3.13.14, `apache/superset:6.1.0` — 3.10.20. Стоит младшая из двух,
# иначе ruff предложил бы Superset синтаксис, которого его Python не знает.
# Совпадает со значением ruff по умолчанию, и записано именно поэтому:
# сменится умолчание — проверка не поедет следом молча.
# Даги за это платят: они бегут на 3.13, и модернизаций, доступных только там,
# ruff им не предложит. Значение совпадает с умолчанием ruff, и записано
# именно поэтому: сменится умолчание — проверка не поедет следом молча.
target-version = "py310"
[lint]