Skip to content

Run CI-equivalent checks before push#21

Merged
OneNoted merged 1 commit intomainfrom
local-prepush-ci
Apr 15, 2026
Merged

Run CI-equivalent checks before push#21
OneNoted merged 1 commit intomainfrom
local-prepush-ci

Conversation

@OneNoted
Copy link
Copy Markdown
Owner

Summary

  • add a local CI script that mirrors the repo's format, lint, test, feature-matrix, packaging, and release-bundle checks
  • add an installable pre-push hook that runs the local CI workflow automatically
  • document the contributor workflow and ship the contributor docs alongside the other bundled docs

Verification

  • scripts/install-git-hooks.sh
  • scripts/local-ci.sh
  • cargo fmt --all -- --check
  • cargo clippy --all-targets -- -D warnings
  • cargo test
  • cargo check --no-default-features
  • cargo check --no-default-features --features osd
  • cargo check --no-default-features --features local-rewrite
  • cargo package --locked --allow-dirty
  • cargo check --no-default-features --features cuda
  • cargo check --no-default-features --features cuda,local-rewrite
  • scripts/build-release-bundle.sh

Add a local CI script, an installable pre-push hook, and contributor docs so contributors can run the same high-signal format, lint, test, feature-matrix, packaging, and release-bundle checks locally before opening or pushing a PR.

Constraint: Local workflow should stay as close to GitHub CI as practical without requiring a perfectly clean working tree
Constraint: README-linked contributor docs should also ship in local package and release artifact docs
Rejected: Keep pre-push guidance ad hoc in docs only | too easy to skip and drift from CI
Confidence: high
Scope-risk: narrow
Reversibility: clean
Directive: When CI steps change, update scripts/local-ci.sh, the hook installer, and contributor docs in the same change
Tested: scripts/install-git-hooks.sh; scripts/local-ci.sh; cargo fmt --all -- --check; cargo clippy --all-targets -- -D warnings; cargo test; cargo check --no-default-features; cargo check --no-default-features --features osd; cargo check --no-default-features --features local-rewrite; cargo package --locked --allow-dirty; cargo check --no-default-features --features cuda; cargo check --no-default-features --features cuda,local-rewrite; scripts/build-release-bundle.sh
Not-tested: Hook execution from a separate fresh clone
@OneNoted OneNoted merged commit 2bc811b into main Apr 15, 2026
3 checks passed
@OneNoted OneNoted deleted the local-prepush-ci branch April 15, 2026 10:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant