линтеры скриптов: ruff и pyrefly через uv, починены 41 находка
Скрипты остаются на голом python 3.12 без зависимостей: pyproject.toml живёт только в этом репозитории и держит линтеры, а не зависимости скриптов. Ноль зависимостей охраняется дважды: banned-api у ruff ловит частые соблазны по имени, pyrefly видит окружение без ничего и не разрешает любой сторонний импорт. Версии прибиты точно, uv.lock под git: обновление линтера меняет набор находок, а находки правятся руками в скриптах, которые уезжают в чужие проекты. RUF001–003 выключены — весь текст русский, 311 срабатываний из 338 шум. av-dev-backlog исключён: заморожен до удаления, правка без выгоды. Из 41 находки содержательных две: мёртвая ques в check и два места, где find_entry_index может вернуть None прямо в list.pop и range. По ревью там стоит raise, а не continue: тихий пропуск превратил бы сломанный инвариант в отчёт «индексы согласованы». os из tasks.py ушёл целиком, fail() в docs.py объявлен NoReturn. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -113,4 +113,27 @@ openspec/
|
||||
<plugin>/skills/<skill>/references/ что читается по ссылке из скилла
|
||||
<plugin>/skills/<skill>/scripts/ tasks.py, docs.py
|
||||
<plugin>/agents/ charter'ы сабагентов
|
||||
pyproject.toml линтеры скриптов, только для этого репозитория
|
||||
```
|
||||
|
||||
## Проверка скриптов
|
||||
|
||||
`tasks.py` и `docs.py` запускаются **где угодно голым `python3` 3.12 без
|
||||
установки чего-либо** — они лежат рядом со скиллами и работают в любом проекте.
|
||||
`pyproject.toml` в корне не меняет этого: он живёт только здесь и держит
|
||||
линтеры, а не зависимости скриптов.
|
||||
|
||||
```
|
||||
uv sync # ставит ruff и pyrefly в .venv, версии прибиты точно
|
||||
uv run ruff check . # правила; --fix для безопасных починок
|
||||
uv run pyrefly check # типы
|
||||
```
|
||||
|
||||
Ноль внешних зависимостей охраняется двумя способами: `banned-api` у ruff ловит
|
||||
частые соблазны по имени, а pyrefly видит окружение, где нет ничего кроме
|
||||
линтеров, и любой сторонний импорт у него не разрешается. Список запретов —
|
||||
не перечень мира, настоящий страж второй.
|
||||
|
||||
`av-dev-backlog` из проверки исключён намеренно: плагин помечен устаревшим и
|
||||
живёт до перевода последнего проекта, после чего удаляется целиком. Правки в
|
||||
замороженный код — риск без выгоды.
|
||||
|
||||
Reference in New Issue
Block a user