feat(scripts): снимок для контура — во web/ только зависимости сборки (#112) #113
Loading…
x
Reference in New Issue
Block a user
No description provided.
Delete Branch "feat/112-contour-web-deps"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Суть
Решение владельца 16.10.2026. В контуре фронт только собирается (
npm installчерез Nexus +rsbuild build), а зеркало npm банка не содержит свежих версий инструментов разработки (уже ломались на vitest ≤3.1.4; arm-web #29 добавил eslint 9.17.0, typescript-eslint, prettier). Связь: AURORA-1635, arm-core #116.prepare-contour-snapshot.shтеперь для arm-core:web/package.jsonпо разрешённому списку (WEB_DEV_ALLOW,WEB_OPTIONAL_KEEP_PREFIX,WEB_SCRIPTS_KEEPв начале скрипта): devDependencies@rsbuild/core,@rsbuild/plugin-react,tailwindcss,daisyui;dependenciesбез изменений; optional — толькоraisa-*; scripts —build,start,preview;web-checkв Makefile снимка доnpm install+npm run build(check-fullссылается наweb-checkкак раньше);SNAPSHOT.mdубранные пакеты и скрипты;web/во временной копии; не собралось — код 1, «пакет, нужный сборке, не в разрешённом списке», каталог снимка удаляется. Отключение для тестов без сети —SNAPSHOT_SKIP_WEB_BUILD=1, по умолчанию проверка включена;dev/contour-transfer-guide.md: раздел 3.2 и правило «web/package.jsonиз контура обратно не переносить».tabular-parser и scan-gateway не затронуты (фронта нет, npm не вызывается — есть тест).
Как проверить
make -C docs test-snapshot test-sync-web validate-contracts; боевой прогон:docs/scripts/prepare-contour-snapshot.sh --web-as-is arm-core <каталог>.Проверки
make validate-contracts test-snapshot test-sync-web— зелёные;validate-openspecпадает по известной причине (docs#110 O-1), не относится к задаче.npm install+npm run buildурезанного web/ прошли (27 с). Убрано: devDependencies@biomejs/biome, @eslint/js, @types/react, @types/react-dom, eslint, eslint-config-prettier, eslint-plugin-react, eslint-plugin-react-hooks, globals, prettier, typescript, typescript-eslint, vitest; optional@biomejs/cli-linux-x64-musl; scriptstest, format, lint.Rulings I made
rsbuild.config.ts(rsbuild core + react),postcss.config.cjs(tailwindcss),tailwind.config.js(require('daisyui')), импортамsrcи фактической сборкой; typescript и@types/*сборке не нужны (SWC)web/, а не в выводе: снимок гарантированно безnode_modules/dist/package-lock.json, упавшая проверка ��ичего не оставляетbuild start preview), а не список на удаление: новый dev-скрипт не просочится в контур молча; убранное видно в SNAPSHOT.mddevDependenciesнет пакета из разрешённого списка — снимок падает с понятной ошибкой (скрипт устарел)biome.json,eslint.config.js,tsconfig.json) вweb/снимка оставлены: сборка их не читает, вырезание — лишний рискtest_sync_web.sh: синтетическиеpackage.jsonдополнены devDependencies из списка, в пайплайне заданSNAPSHOT_SKIP_WEB_BUILD=1c54d585Closes #112
🤖 Generated with Claude Code