Testing
Rust workspace layout
This repo is Rust-only for build, test, and runtime flows. Run commands from the repo root so the workspaceCargo.toml and Rust helper binaries resolve correctly.
Running tests
Use the repo test runner from the root:cargo test --workspace.
No secondary language toolchain is required.
Use cargo run --quiet --locked --manifest-path rust/crates/si-tools/Cargo.toml --bin si-test-runner -- workspace --help for a quick usage reminder.
Use cargo run --quiet --locked --manifest-path rust/crates/si-tools/Cargo.toml --bin si-test-runner -- workspace --list to print the active test lane without running it.
For one-command local coverage of the standard test stack, run:
si, sibling fort, and sibling surf, run:
Orbit validation
Third-party Orbit integration coverage moved to the standaloneAureuma/orbit repo. Run cargo test --workspace from that repo for provider integration tests.
Installer smoke tests
To validate thesi installer script end-to-end, run:
si build installer host --help for a quick usage reminder.
To validate the pnpm launcher package end-to-end, run:
Vault strict suite
Run the dedicated vault suite:--quick is retained as a compatibility no-op; the Rust vault lane already runs as a single package suite.
Fort codex runtime security matrix
Run the Fort integration matrix:- slot-scoped Fort agent auth bootstrap in
si codex spawn(si-codex-<profile>for primary,si-codex-<profile>--<slot>for non-primary) - hosted Fort endpoint flow (configured via
~/.si/fort/settings.toml[fort].host) as the default runtime target - host-side bootstrap admin token files are used for provisioning/admin flows only
- runtime token-path flow remains file-backed under
CODEX_HOME/fort/; usesi codex shell --profile <profile> --slot <slot> -- si fort ...for profile runtime auth - runtime secret commands fail loudly when profile-scoped Fort token files are missing or cannot refresh
- worker-shell access through
si codex shellwith noFORT_TOKEN/FORT_REFRESH_TOKENsecret env leakage - strict token file modes/ownership (
0600files,0700fort state dir) - policy allow/deny behavior across multiple profiles and repo/env bindings
si codex respawnauth continuity- ciphertext-at-rest plus manual ECIES decrypt parity with
fort get
si fortis a wrapper aroundfort.- If
fortis not already onPATH, the wrapper can build and run the sibling../fortcheckout when build fallback is allowed. - If a flag belongs to
fortitself, pass it after--(for example:si fort -- --host https://fort.aureuma.ai doctor).
CI notes
GitHub Actions workflows use docs-only change detection to skip heavy test jobs when only docs/markdown files are modified.Static analysis
Run static analysis from the repo root:./si analyze:

