This guide takes a new maintainer from a clean checkout to a verified local builder. It does not write generated framework distributions.
- Git access to
simai/ui-builder - Node.js
20.19.5 - Corepack
- a POSIX-compatible shell for the documented examples
git clone git@github.com:simai/ui-builder.git
cd ui-builder
corepack enable
yarn install --frozen-lockfile --ignore-scripts --non-interactiveDo not run a lockfile refresh during setup. The committed dependency graph is part of the reproducibility contract.
yarn run verifyThe command runs:
check:repositoryfor package, runtime, command, and lockfile contracts;check:rtl-postcssfor logical CSS retention and fallback ordering;test:reproducibilityfor deterministic planning, Webpack configuration, lifecycle, packaging, compatibility, and isolated fixture builds.
The verification command does not require .env and does not write to ui or
ui-smart.
Copy .env.example to .env and set the absolute source and output paths
needed by the legacy Webpack configuration you intend to run:
cp .env.example .envNever commit .env. Product runners use explicit path arguments and dependency
runtime variables instead of this legacy configuration.
Use a clean ui-source checkout and a workspace path that does not yet exist:
node scripts/verify-product-reproducibility.cjs \
/absolute/path/to/ui-source \
/absolute/path/to/new-workspaceReview <workspace>/report.json. A successful report has status: "PASS" and
byte_identical: true for all four products.
If the target distribution retains accepted legacy runtime assets, also set
SF_LEGACY_COMPATIBILITY_ROOT, SF_LEGACY_COMPATIBILITY_MANIFEST, and
SF_LEGACY_COMPATIBILITY_REVISION, then append
--require-legacy-compatibility. This mode fails before the build when the
binding is absent, partial, or inconsistent and records the validated binding
in the report.
- Read Architecture and ownership before changing pipeline code.
- Read Runtime and dependency policy before updating a dependency.
- Use the Product runner reference for CI integration.