| name | validation-ci-gate |
| description | Before declaring any Titan work complete, run the 4-command CI gate — cargo check, fmt, clippy, nextest — and verify zero warnings outside vendored crates |
| source | auto-skill |
Validation CI Gate
When to use
Before declaring any Titan implementation work complete, committing, or pushing. This is the local CI gate that must pass before work is considered done.
The 4 commands
cargo check --workspace --all-targets
cargo fmt --all -- --check
cargo clippy --workspace --exclude joltc-sys --exclude rolt --all-targets --no-deps -- -D warnings
cargo nextest run --workspace --exclude joltc-sys --exclude rolt
Rules
- Zero warnings in our crates. Only vendored crates (
crates/third_party/) may carry warnings. Any warning in crates/titan-*/ or tools/titan-*/ must be fixed before declaring work complete.
- Test failures are blocking. All tests must pass. Pre-existing failures in unrelated modules are NOT an excuse — fix them or flag them to the main chain.
- nextest is required. The project golden-file tests and pass catalogue exports depend on the nextest test runner (
cargo test may not properly exercise all golden-pinned tests).
- Clippy uses
-D warnings. This converts all clippy warnings to hard errors. No #[allow(...)] exceptions without justification.
Why
Recurring problem: work is declared complete but fails CI because of un-run clippy warnings, golden-file drift, or test breakage in crates the agent didn't think to check. The 4-command gate catches this at the point of declaration, not at the CI server.