Инструкции разработчика
Основные проверки
cargo fmt --all --check
cargo clippy --workspace --all-targets --all-features -- -D warnings
cargo test --workspace --all-features
RUSTDOCFLAGS=-Dwarnings cargo doc --workspace --no-deps
cargo bench -p ifc-scan --no-run
cargo deny check
Перед Rust-сборкой импортируйте официальные схемы:
.venv/bin/python scripts/import-official-schemas.py
Viewer/WASM
./scripts/build-wasm-packages.sh
npm ci --prefix integration/wasm
npm run test:node --prefix integration/wasm
npm run test:browser --prefix integration/wasm
npm ci --prefix apps/ifc-viewer
npm test --prefix apps/ifc-viewer
npm run check --prefix apps/ifc-viewer
Диагностика
model_not_found: handle закрыт, устарел или относится к другому WASM instance;invalid_input_size: файл пустой или превышает 128 MiB;- ошибки схем: повторите официальный schema bootstrap и проверьте checksum;
- browser launch: установите Chromium через Playwright
--with-deps; - MCP не отвечает: запускайте binary как stdio child process, не печатайте в stdout.
Релиз
Стабильный tag — v0.2.0. Сначала выполняется dry-run
.github/workflows/release.yml, затем immutable tag, protected corpus gate и
ручное Environment approval. Windows-установщик не входит в GitHub Release. Полный процесс: план выпуска.