Skip to content

ci(lint): add typos spell checker and editorconfig#65

Open
panos-xyz wants to merge 2 commits intomainfrom
panos/lint-tooling
Open

ci(lint): add typos spell checker and editorconfig#65
panos-xyz wants to merge 2 commits intomainfrom
panos/lint-tooling

Conversation

@panos-xyz
Copy link
Copy Markdown
Contributor

@panos-xyz panos-xyz commented Mar 26, 2026

Summary

  • Add typos.toml with hex pattern exclusions and crate-ci/typos CI job for spell checking
  • Add .editorconfig for consistent editor settings (UTF-8, LF line endings, indent rules)
  • Add clippy check for feature-gated integration tests (morph-node --test it --features test-utils)

Test plan

  • typos passes locally with zero findings
  • CI typos job runs and passes
  • Existing lint jobs unaffected

Summary by CodeRabbit

Chores

  • Added a repository editor configuration to enforce consistent editor settings (line endings, charset, indentation, trailing-whitespace and final newline rules) across the project.
  • Enhanced CI with an automated spelling check job and accompanying spelling configuration that ignores common hex-like tokens and explicitly treats "ser" as a valid word.

- Add `typos.toml` with hex pattern exclusions and `crate-ci/typos` CI job
- Add `.editorconfig` for consistent editor settings (UTF-8, LF, indent)
- Add clippy check for feature-gated integration tests in lint workflow
@coderabbitai
Copy link
Copy Markdown

coderabbitai bot commented Mar 26, 2026

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: d5779dfd-6842-4426-bafb-5bec545ba67f

📥 Commits

Reviewing files that changed from the base of the PR and between 3a76956 and 36f3a2e.

📒 Files selected for processing (1)
  • .github/workflows/lint.yml
✅ Files skipped from review due to trivial changes (1)
  • .github/workflows/lint.yml

📝 Walkthrough

Walkthrough

Added repository editor settings via .editorconfig, introduced spelling-check configuration with typos.toml, and added a CI job (typos) to the lint workflow to run repository-wide spelling checks.

Changes

Cohort / File(s) Summary
Editor configuration
​.editorconfig
Adds baseline editor rules: project root, LF line endings, UTF-8 charset, trim trailing whitespace, ensure final newline, 4-space default indent; overrides for Rust (max-line-length 100), YAML/YML (2-space indent), JSON/TOML (2-space indent), Markdown (no trim), and Makefiles (tabs).
Spell-check config
typos.toml
Adds typos configuration: excludes .git, target, Cargo.toml, Cargo.lock, *.json; ignores hex-like patterns via case-insensitive regexes; whitelists the word ser.
CI workflow
.github/workflows/lint.yml
Adds a new typos CI job using crate-ci/typos@v1 on ubuntu-latest to run repository spelling checks after checkout. No other CI steps modified.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~3 minutes

Poem

🐰
A nibble at settings, neat and light,
Lines trimmed tidy, encoding right.
Typos chased in morning dew,
Quiet hops — the checks pass through.
A rabbit cheers, "All set — good night!"

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title 'ci(lint): add typos spell checker and editorconfig' accurately and specifically summarizes the main changes: adding typos spell checker configuration, CI integration, and editorconfig file for editor settings consistency.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch panos/lint-tooling

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Copy Markdown

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In @.github/workflows/lint.yml:
- Around line 57-58: The CI step runs an invalid Clippy command referencing a
non-existent package feature and test target ("cargo clippy -p morph-node --test
it --features test-utils -- -D warnings"); either remove the invalid flags or
add the corresponding entries to Cargo.toml. Fix by editing the workflow to run
Clippy simply for the package (e.g., "cargo clippy -p morph-node -- -D
warnings") or, if you intended a feature/test, add a "test-utils" feature in
crates/node/Cargo.toml and a [[test]] named "it" in the crate so "--features
test-utils" and "--test it" are valid; ensure the symbols --test it, --features
test-utils, and -p morph-node are updated consistently.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 91a39d2b-658d-40c5-82b3-f61425b45094

📥 Commits

Reviewing files that changed from the base of the PR and between f55a2cd and 3a76956.

📒 Files selected for processing (3)
  • .editorconfig
  • .github/workflows/lint.yml
  • typos.toml

morph-node does not have a test-utils feature, causing clippy CI to
fail. Remove the feature-gated integration test clippy step.
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