К содержанию
IFC-RS
Viewer English
Wiki проекта ru

Инструкции разработчика

Основные проверки

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. Полный процесс: план выпуска.