# План: закрытие остатков код-стайла (2026-09-11, вечер) > Источник: `backlog.md` — `TD-COMMENTS-IFACE` (п.3, п.4), `TD-STYLE-ANALYZERS`, найденное при проверке > проекта. Правила — `docs/spec/Код-стайл-Дейл.md`, отчёт — `docs/spec/Код-стайл-аудит-2026-09-11.md` §2. > Ограничения захода: без поднятия Docker-стека и без внешних кредов. ## Задачи 1. **Замер остатков** (dry-run, без правок): сканами по тексту и по имени члена проверить дубли `` реализации ↔ интерфейса; разбивку `var`; латинские комментарии; членов интерфейсов без дока; TODO; переводы строк по расширениям. 2. **`var` для встроенных типов**: `.editorconfig` → `csharp_style_var_for_built_in_types = false:warning` (гейт ломает сборку), остаток выправить `dotnet format style --diagnostics IDE0008` по 5 решениям. «Очевидный тип» и «прочие» — оставить `silent` (субъективно, ~1600 замен). 3. **Дедупликация ``→``**: по результатам замера — либо codemod, либо закрытие «дублей нет». 4. **Переводы строк**: решение политики + нормализация (`.gitattributes`, `.editorconfig`, конверсия файлов, `git add --renormalize`); проверить, что `.sh` — LF (Linux CI). 5. **Попутные доки/комментарии**: недостающие `` членам интерфейсов; англоязычные `//`-комментарии; повторный прогон `fix_private_docs.py`; устаревший блок в `STATUS.md`; трекаемые `.pyc` из индекса. 6. **Приёмка**: build 5 sln 0/0, все тесты зелёные; обновить `backlog.md`/`STATUS.md`. ## Решения - Явные реализации интерфейсов (§11) — **не автоматизировать**: остаётся точечным ревью владельца (замер: 54 интерфейса с XML-doc, 43 с реализациями; массовая правка ломает публичную поверхность классов). - Переводы строк — **LF** (инструменты проекта пишут LF; CRLF-.sh ломают `sh scripts/ci.sh` на Linux CI; большинство файлов уже LF). Откат — `git revert` нормализации. - Гейт `var` — только на встроенные типы: правило §4 запрет говорит про встроенные/неочевидные, «неочевидность» не проверяется машиной. ## Приёмка - build 5 sln: 0 warnings / 0 errors (гейт IDE0008 проходит). - Тесты: core / telegram / ai / ml / storage — зелёные, счётчики в `STATUS.md`. - Фронт не менялся содержательно (только концы строк) — `build`/`lint:i18n` не прогонялись.