Arch4 renderer development uses a repo-local runtime bundle containing:
- Java runtime
- Structurizr CLI
- Runtime libraries required by those tools
Runtime setup must:
- Pin every runtime version.
- Verify downloaded artifacts by SHA256.
- Install tools under
runtime/bundles/<platform>/. - Update
THIRD_PARTY_NOTICES.mdfor runtime tools and bundled production dependencies. - Make
arch4 doctorshow runtime paths.
Builds do not download runtime tools. Run setup explicitly:
pnpm setup:runtimeThen verify the pinned manifests and current platform bundle:
pnpm verify:runtimeThe verifier fails if manifests contain placeholders, release dependency notices are missing, or the current platform bundle has not been installed. During local manifest shape work only, placeholders can be accepted explicitly:
ARCH4_ALLOW_RUNTIME_PLACEHOLDERS=1 pnpm verify:runtimeArch4 uses Structurizr CLI to validate and export workspace JSON. Diagram layout
is performed by Arch4's TypeScript renderer, so runtime bundles do not include
Graphviz and arch4 render does not depend on Homebrew or a system Graphviz
install.