6.1 KiB
6.1 KiB
Бэклог фронта (зонный)
Ведёт зона
frontend/(решение владельца 02.08, D39.84: фронт и платформа держат СВОИ бэклоги; единый бэклогdocs/PROGRESS.md— трекер движка/полигона/доков, фронт-строк не принимает). Нормы те же: ID стабилен навсегда, каждая петля получает диспозицию. Запросы к ДВИЖКУ сюда не пишутся — они заходят строками единого бэклога через оркестратора (пример: строки 99–102 — пофазный прогресс · манифест глав · машиночитаемая таблица подписи · трасса). Засеян оркестратором при лендинге D39.84 — дальше правят фронт-сессии.
| ID | Хвост | Вес | Источник |
|---|---|---|---|
| Ф-1 | Этапы S2–S7 (FRONTEND_SESSION_PROMPT.md): S2 оболочка + слой src/ui/ · S3 слой данных/MSW/фикстуры всех состояний · S4 библиотека/загрузка/разбор/прогресс · S5 банк памяти и подпись (самый тяжёлый) · S6 читалка двух колонок и замечания · S7 метаданные/экспорт/настройки/сквозной прогон |
по очереди сессий (S0/S1 — текущая) | FRONTEND_SESSION_PROMPT |
| Ф-2 | React Compiler — включить ОТДЕЛЬНЫМ шагом после заморозки интерфейса, с CI-проверкой, что вставки реально попали в бандл (в MVP выключен; совместимость держит линт eslint-plugin-react-hooks) | после заморозки UI | STACK_DECISIONS §1 |
| Ф-3 | Пересмотр TS 6 → TS 7 после выхода TS 7.1 с программным API (~октябрь 2026); решение обратимо — тайпчек не участвует в сборке | триггер: релиз TS 7.1 | STACK_DECISIONS §1 |
| Ф-4 | Токен-гейт на отступы (padding/margin/gap/border-radius) — вторым шагом, когда шкала токенов зафиксирована (иначе гейт мешает подбору) |
триггер наступил: витрина S1 снята, шкала --space-1…6 заведена; включать, когда S2 обкатает её на настоящей оболочке |
STACK_DECISIONS §3 |
| Ф-8 | Вопрос владельцу: закрывать ли /* eslint-disable */ в TSX. CSS-половина гейта цвета обхода комментарием больше не допускает (reportUnscopedDisables), TSX-половина — допускает. Закрывается одной строкой linterOptions: { noInlineConfig: true }, но той же строкой запрещаются легитимные точечные подавления (react-hooks/exhaustive-deps), которые рекомендует сам React. Выбор не технический, а владельческий |
решение до S2 | адверсариальное ревью S1 |
| Ф-9 | Хвосты гейтов после адверсариального ревью S1 (все воспроизведены исполнением, ни один не в боевом коде): именованные цвета CSS в TSX (fill="red", <Icon color="dodgerblue"/>) не ловятся — в CSS запрещены, асимметрия; санкционированное исключение style={{'--x': …}} пропускает любое значение, включая литеральный цвет · JSX-спред <div {...props}/> со style внутри · системные цветовые ключевые слова (Highlight, ButtonText) проходят в box-shadow/outline/caret-color и в сокращённых записях |
до S2 или в ней | адверсариальное ревью S1 |
| Ф-10 | Хвосты структурных тестов: cssModules.test.ts строит пары по имени файла (компонент, импортирующий соседний модуль, из проверки выпадает), не видит деструктуризацию const { shell } = styles, а classesOf тянет в «объявленные классы» расширения из url(...). tokens.test.ts сверяет 23 токена из 38 и не имеет замка полноты — новый токен приезжает без гейта по построению |
до S2 | адверсариальное ревью S1 |
| Ф-7 | Хвосты сведения витрины с референсом (FRONTEND_PLAN.md §5.2): + в конце рядов вкладок — вместе с действием, которое он запускает (S2) · трактовка колонки оригинала приглушённым цветом — решение, а не замер, пересмотреть на настоящей читалке (S6) · состояния наведения витриной не проверены, снимок статичен |
S2 · S6 | S1, сверка с fleet.png |
| Ф-5 | Tauri 2.x вторым шагом — по явным триггерам (трей · глобальные горячие клавиши · распространяемый .exe · офлайн · хранилище учёток ОС); до того — установимое PWA, только браузерные API | триггеры названы | STACK_DECISIONS §6, D39.84 |
| Ф-6 | @tanstack/react-virtual — в резерве, подключать только по замеру (дефолт виртуализации — RAC Virtualizer) |
по замеру | STACK_DECISIONS §2 |