textmachine/frontend/docs/BACKLOG.md

6.2 KiB
Raw Blame History

Бэклог фронта (зонный)

Ведёт зона frontend/ (решение владельца 02.08, D39.84: фронт и платформа держат СВОИ бэклоги; единый бэклог docs/PROGRESS.md — трекер движка/полигона/доков, фронт-строк не принимает). Нормы те же: ID стабилен навсегда, каждая петля получает диспозицию. Запросы к ДВИЖКУ сюда не пишутся — они заходят строками единого бэклога через оркестратора (пример: строки 99102 — пофазный прогресс · манифест глав · машиночитаемая таблица подписи · трасса). Засеян оркестратором при лендинге D39.84 — дальше правят фронт-сессии.

ID Хвост Вес Источник
Ф-1 Этапы S2S7 (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закрыт 02.08 без решения владельца. Вопрос был поставлен как выбор из двух плохих вариантов, а у него есть отраслевой третий: @eslint-community/eslint-plugin-eslint-comments 4.7.2 (no-unlimited-disable + require-description + disable-enable-pair). Голое отключение падает тремя ошибками, точечное подавление с причиной проходит. Урок: не выносить владельцу технический вопрос, не поискав отраслевую практику закрыт адверсариальное ревью 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