Skip to content

feat!: перейти на изолированные generated-контракты и 29 exact modes#15

Merged
gromlab-ru merged 11 commits into
masterfrom
feat/isolated-generated-contract
Jul 15, 2026
Merged

feat!: перейти на изолированные generated-контракты и 29 exact modes#15
gromlab-ru merged 11 commits into
masterfrom
feat/isolated-generated-contract

Conversation

@gromlab-ru

Copy link
Copy Markdown
Owner

Что изменено

  • Реализована архитектура независимых exact-mode adapters и зарегистрированы 29 режимов для standalone, React, Next.js, Vue, Nuxt, Svelte, SvelteKit, Angular, Astro, Solid, SolidStart, Preact, Qwik, Lit и Alpine.
  • Generated-контракты переведены на framework-native JS runtime с отдельными TypeScript declarations; запись output централизована через безопасный staged writer.
  • Добавлен framework-neutral Viewer и новые package entries @gromlab/svg-sprites/viewer и @gromlab/svg-sprites/viewer/element.
  • Добавлена production integration matrix из 29 приложений с type probes и Playwright E2E.
  • Обновлены RU/EN документация, quick-start guides, technical reference и AI skills.
  • Удалены устаревшие legacy mode, generic target contract и встроенное preview-приложение.

Breaking changes

  • Конфигурация теперь разрешается ровно в один exact mode и один output.
  • Старый legacy mode и прежний config contract удалены.
  • Generated output перенесён в управляемый каталог .svg-sprite/.
  • Generic framework/target combinations заменены явными mode keys, например react@vite, next@app/turbopack и standalone@webpack.
  • Старые preview exports удалены; Viewer доступен через отдельные package entries.

Проверки

  • npm run verify — 48 unit-тестов.
  • npm run integration:verify — 29 Playwright E2E.
  • npm ci --ignore-scripts в integration.
  • git diff --check origin/master...HEAD.

CI

Добавлен отдельный integration job: сборка пакета, установка Chromium и запуск полной integration matrix с таймаутом 60 минут.

- добавлены независимые adapters для шести exact modes
- runtime переведён на JavaScript с отдельными декларациями
- generated output перенесён в .svg-sprite
- удалены legacy pipeline и встроенный preview
- описаны единая конфигурация и exact modes
- обновлена структура .svg-sprite
- удалены материалы legacy pipeline
- синхронизированы русская и английская версии skill
- добавлены consumer fixtures для React и Next.js
- добавлены typecheck, production build и браузерные smoke-тесты
- добавлена интеграционная проверка в CI
Добавлены exact modes:
- vue@vite и vue@webpack
- nuxt@vite и nuxt@webpack
- svelte@vite, svelte@webpack и sveltekit@vite
- angular@application и angular@webpack
- astro@vite
- solid@vite, solid@webpack и solid-start@vite
- preact@vite и preact@webpack
- qwik@vite
- lit@vite и lit@webpack
- alpine@vite и alpine@webpack

Для каждого mode реализованы изолированный adapter, нативный
framework-компонент, declarations, manifest, CSS и внешний asset URL.

Добавлены production integration-стенды с генерацией, typecheck,
сборкой и Playwright-проверкой рендера спрайта и Viewer.

Обновлены Viewer, RU/EN-гайды, README, technical reference и AI skills.
Итоговая матрица включает 29 exact modes.

Проверки:
- 48 unit-тестов
- 29 integration E2E-тестов
- удалены tracked build-файлы SolidStart и Playwright
- удалён устаревший Nuxt fixture для legacy mode
- добавлены ignore-правила для производных каталогов
@gromlab-ru
gromlab-ru merged commit f289e7c into master Jul 15, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant