Run this repository's local CI parity commands and `pnpm run ci:local` jobs. Use when validating a change against the same job shapes used in GitHub Actions, choosing the smallest local CI job for a package, workflow, E2E, Metro, devtools, bundle-size, or build-and-test change.
Use the local CI runner and Turbo/package scripts as the source of truth for validation in this repo.
pnpm run ci:local --only=<job> for CI-parity validation.Run:
pnpm run ci:local --list
Use this when the right job is unclear or when the repo may have added or renamed jobs.
For the current job map, read references/jobs.md.
Use these defaults:
packages/*: start with build-and-test only if the change is broad; otherwise prefer package build/test commands.build-metro, then Metro E2E jobs only if relevant.e2e-* job instead of build-and-test.devtools.bundle-size.actionlint locally only to see skip behavior; the actual action is CI-only.build-and-test.When reproducing CI, use the same command shape as the repo:
pnpm run ci:local --only=build-and-test
pnpm run ci:local --only=devtools
pnpm run ci:local --only=e2e-runtime
To run more than one job:
pnpm run ci:local --only=build-and-test,bundle-size
ci:local fails in Check code format, inspect the changed-file formatter result before running broader builds.Run:
pnpm run ci:local --only=build-and-test
If that fails on format first, fix the changed files before rerunning the whole job.
Prefer the smaller direct command first:
pnpm exec turbo run build --filter=@module-federation/<pkg>
pnpm exec turbo run test --filter=@module-federation/<pkg> --force
Then run build-and-test only if the user asks for CI parity or the package change affects shared build/runtime behavior.
Run the matching job from references/jobs.md, not the whole matrix.
Use the local CI job if one exists for the workflow's behavior. For workflow syntax, pair local validation with the repo's actionlint path when relevant.
ci:local sets CI=true and mirrors the repo workflow order.actionlint and bundle-size-comment.pnpm, Node 20, and Turbo as the standard execution path.