Skip to content

chore(lint): расширить ruff-select (PTH, SIM105/115, RUF100/RUF022, D1 для публичного API) и устранить нарушения #443

Description

@ArtVsMark

Из аудита docs/audit-2026-07-15.md · пункт A36 · эпик-раздел quality-devex

Приоритет: 🟢 P3 (low)

Зачем

Два неавтоматизированных инварианта CLAUDE.md закрываются одним включением ruff-правил: «только pathlib» — 14 нарушений PTH (builtin open, os.unlink ×5, os.chmod) живут в коде, плюс 2 мёртвых noqa и 11 SIM105-кандидатов; «docstrings для всех публичных функций» — 53 из 318 публичных объектов без docstring. Ruff уже в dev-зависимостях — включение бесплатно.

Критерии приёмки

  • В [tool.ruff.lint] добавлены PTH, SIM105, SIM115, RUF100, RUF022 (RUF001-003 в ignore из-за кириллических докстрингов)
  • Все 14 PTH-нарушений исправлены (Path.open/Path.unlink/Path.chmod); мёртвые noqa удалены
  • D101/D102/D103 (или эквивалент) включены для src/stepik_grader; легитимные оверрайды (visit_, handle_, rich-стабы) закрыты per-file-ignores
  • Существующие дыры добиты docstring'ами; ruff check . — 0 ошибок, CI зелёный

Links

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions