docs: update plans, backlog, move todo\fixme from code comments

This commit is contained in:
2026-09-26 22:57:09 +05:00
parent b59a434c65
commit fcf4d8156b
16 changed files with 232 additions and 100 deletions
+40 -4
View File
@@ -61,10 +61,46 @@
нескольких местах и запутывает. (Синтаксис самих определений — под линтером:
строка `conventions/no-string-union-alias` и т.д.)
### Границы изменений
- Production — только текущие маршруты и `web/src/lib/components/**`. Старый
UI (`/v1/**`) удалён и не возвращается: без redirects и совместимого режима;
исторические упоминания живят только в `docs/archive/`. Будущий API-контракт
`POST /v1/process` из `docs/plan-platform.md` не связан с удалённым UI-v1.
- `core/` и `theme/` — общие модули: их изменение проверяется unit-тестами и
smoke-сценариями production-потребителей.
### i18n
- Новый пользовательский текст — только через словари и `t()`. Исключения:
бренд, форматы и имена файлов, технические значения, registry source strings и
`/kit`. Проверяется warn-правилом `i18n/no-hardcoded-user-text`, детали и
список исключений — в `web/eslint-plugins/README.md`.
- Новые ключи добавляются во **все** локали сразу: паритет ключей и
плейсхолдеров проверяет `i18n/dict-consistency`.
### Комментарии
- Комментарий объясняет «почему», а не пересказывает код.
- `TODO`/`FIXME` — только зарегистрированные задачи: ссылка на `docs/backlog.md`
или issue и критерий закрытия. В коде незарегистрированных пометок не
оставляем.
### Новые lint-правила
Новое правило сначала появляется в report-only/warn-only режиме, получает
fixtures и тесты (`test:rules`), и только после очистки baseline может стать
blocking. Учитывай: `lint:all` гоняет ESLint с `--max-warnings=0`, поэтому
warn-правило обязано приземлиться без срабатываний на текущем коде.
### Дизайн
Описание нового визуального языка — в `docs/plan-redesign.md`. Общие правила,
которые линтер не проверяет:
Источник правды по визуальному языку — сам код: `web/src/app.css` (дизайн-токены
и глобальные стили), `web/src/lib/components/**` (компоненты и локальные стили)
и витрина `/kit`. Приёмка — `docs/checklist-manual-testing.md`, ограничения
линтера — `web/eslint-plugins/README.md`. Общие правила, которые линтер не
проверяет:
- Новый дизайн живёт в `web/src/app.css` и применяется ко всем
production-маршрутам.
@@ -81,8 +117,8 @@
- Здесь держать только обязательные инварианты, команды и ссылки на подробные
документы; не превращать `AGENTS.md` в полный справочник.
- Индекс активных документов: `docs/README.md`; подробный workflow:
`docs/agent-workflow.md`; quality gates: `docs/quality-gates.md`; текущий
план: `docs/plan-codebase-quality.md`.
`docs/agent-workflow.md`; quality gates: `docs/quality-gates.md`; тестовая
архитектура: `docs/testing-strategy.md`.
- Новые подробные правила, процедуры и таблицы хранить в `docs/`, а детали
конкретных lint-правил — в `web/eslint-plugins/README.md`.
- Завершённые или устаревшие документы переносить в `docs/archive/`, указывать