Files
huncode 98a64abeb7
Build and deploy / deploy (push) Successful in 16s
revise May 2022 design system articles
2026-07-31 13:46:13 +03:00

7.8 KiB
Raw Permalink Blame History

П51 · 2022-05 · Маленькая дизайн-система — три прохода саморевью

Рамка пакета

  • Slug: editorial-2022-05-practice-design-system, editorial-2022-05-mechanism-design-system, editorial-2022-05-field-design-system.
  • Голос: М5, системный практик 2022 года. Тема продолжает доступный control: внешняя форма, состояния и семантика должны иметь явный контракт, но не раздуваются до выдуманной универсальной платформы.
  • Граница компетентности: в текстах нет существующей библиотеки, команды, production-дефекта, пользовательского исследования, скриншота, visual-regression запуска или результата accessibility-проверки.
  • Fixture: детерминированные локальные объекты и массивы. visualPayload — объявленные входы будущей проверки, не screenshot, score или тестовый результат. DOM, браузер, Playwright, screen reader, CSS compilation, HTTP и реальные visual tests не запускаются.

Проход 1 — факты и техника

  • Историческая рамка сверена по датированным W3C-снимкам: CSS Custom Properties Level 1, Candidate Recommendation Draft, 11.11.2021, WAI-ARIA 1.2, Candidate Recommendation Draft, 08.12.2021 и неизменяемой WCAG 2.1 Recommendation, 05.06.2018. Ссылки существуют до мая 2022 года; современные mutable docs не используются как доказательство прошлого состояния.
  • Уточнена граница CSS Custom Properties: спецификация задаёт --* и var(), но не taxonomy дизайн-токенов. WAI-ARIA/WCAG не выданы за правила конкретного token API, инвентаря или visual pipeline.
  • Fixture проверяет named tokens, пять required states, name/role/state, три именованных usage, declared payload с каждым required state, два invalid configuration и безопасную пару correction/rollback. В ней нет симуляции CSS, пикселей, accessibility tree или browser behavior.
  • После финальной правки успешно выполнены node --check web/scripts/upgrade-2022-05.mjs, node web/scripts/upgrade-2022-05.mjs --verify-fixture (13/13) и npm run audit:draft -- scripts/upgrade-2022-05.mjs.

Проход 2 — редактура и голос

  • В первых двух абзацах каждой статьи есть конкретный симптом и цена: рассинхрон кнопок, разрыв владельцев contract или опасная общая правка token.
  • Речь построена как «симптом → причина → проверка → действие». М5 проявляется в разделении слоёв, явном радиусе изменения, тестовой границе и обратимой правке, без роли автора как владельца большой дизайн-платформы.
  • Во всех трёх статьях есть таблица, рисунок с содержательным alt и caption, исполнимый JS-пример, нумерованный маршрут, ограничение и следующий проверяемый шаг.
  • Основной текст без источников проверен редакционным аудитом: 6 862 / 8 576 / 8 495 знаков — внутри диапазона 5 000–15 000.

Проход 3 — визуал и выпуск

  • SVG разделены по задаче: token flow, четыре слоя component contract и diagnosis с обратимой правкой. Каждый открыт после Sharp-рендера на ширине 375 px: заголовки, ключевые ветки, подписи и границы модели читаемы.
  • XML-проверка прошла для всех трёх SVG. Safety scan подтвердил отсутствие script, foreignObject, внешних URL и data:image; изображения содержат только встроенную vector-разметку.
  • Sidecar содержит ровно пять новых файлов. Registry, README, articles.json, QUALITY_STANDARD, очередь, docs/, Git и чужие sidecar-файлы не менялись. Интеграция и публикация намеренно не выполнялись.

Независимый редакторский приём

Проход 1 — фактчек и модель

Проверка исторических ссылок обнаружила неверный URL WAI-ARIA: вариант с суффиксом 20211209 возвращал 300, хотя текст правильно называл документ от 8 декабря. Ссылка заменена на CRD-wai-aria-1.2-20211208; она, как и датированные CSS Custom Properties CR Draft и WCAG 2.1 Recommendation, отвечает 200. Статус WAI-ARIA не повышен до будущей Recommendation.

В code review обнаружен второй разрыв: requiredStates содержал пять значений, а declared visual payload не включал hover. Payload дополнен пятым state, fixture получила отдельный assertion о покрытии каждого required state. Это по-прежнему только вход будущего visual test, а не screenshot, diff или результат browser run. Fixture завершилась с 13/13 assertions.

Проход 2 — текст и полнота

Повторно проверены problem/cost, таблицы, исполнимые примеры, ordered route, rollback и ограничения трёх статей. Тексты не выдают CSS custom properties за taxonomy токенов, а visual payload — за факт visual regression. Draft audit подтверждает 6 862 / 8 576 / 8 495 знаков в требуемом диапазоне; import-safe проверка вернула три revision-объекта без date и author.

Проход 3 — визуал и выпуск

xmllint прошёл; safety scan не нашёл script, foreignObject, внешних URL или data:image. Sharp-рендеры на 375 px просмотрены: token flow, четыре слоя contract и correction/rollback отвечают на разные вопросы и явно отделяют declared payload от реального результата. После подключения мая registry содержит 148 ревизий. Строгий slug-audit прошёл с одной figure, таблицей и code example на статью; production build успешно сгенерировал 374 страницы. Материалы июня и позже не затрагиваются.

Финальный вердикт

П51 принята и интегрирована после трёх независимых проходов. В коммит войдут только пять файлов мая и два точечных файла интеграции.