Testing & Validation Guardrails
--config=fast-tests for Test Targets
- Always pass
--config=fast-tests when running or building test targets to avoid running expensive, flaky integration tests.
CRITICAL: Never use --config=fast-tests on Non-Test Targets
--config=fast-tests sets --build_tests_only=true, which silently ignores non-test targets (such as //docs:docs or package libraries), resulting in 0 targets built!
Lockfile Testing (MODULE.bazel.lock)
- Changes to transitive module extension dependencies or
.bzl files loaded by extensions update Bazel 9 lockfile hashes, requiring bazel mod deps --lockfile_mode=update in integration test workspaces. - When requirements files (e.g., in
//tools/publish or root pip parses) are modified or bumped by Dependabot, update the integration lockfile by running bazel mod deps --lockfile_mode=update in tests/integration/bzlmod_lockfile and verify with bazel test //tests/integration:bzlmod_lockfile_test_bazel_9.1.0.
Documentation Flake Handling
- When building
//docs:docs fails with exit code 2, treat it as a known Sphinx/Bazel flake and retry the build.