-
Notifications
You must be signed in to change notification settings - Fork 267
Add Husky pre-commit and pre-push hooks for automated doc checks #1411
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
❌ Deploy Preview for docs-optimism failed. Why did it fail? →
|
📝 WalkthroughWalkthroughThe pull request introduces several changes to the project configuration. In the Sequence Diagram(s)sequenceDiagram
participant Dev as Developer
participant PreCommit as Pre-commit Hook
participant LintStaged as Lint-Staged Command
participant PrePush as Pre-push Hook
participant FixRedirects as Fix Redirects Command
participant LinkChecker as Link Checker Command
Dev->>PreCommit: Commit changes
PreCommit->>LintStaged: Run pnpm lint-staged
Dev->>PrePush: Push changes
PrePush->>FixRedirects: Execute pnpm fix-redirects
PrePush->>LinkChecker: Execute pnpm link-checker
Possibly related PRs
Suggested reviewers
Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media? 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
Documentation and Community
|
Do not merge 🙏🏻! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
🧹 Nitpick comments (3)
package.json (1)
22-31
: Consider optimizing lint-staged configuration.The current setup runs fix-redirects and link-checker on all files (
**/*
), which could be expensive for large changes. Consider:
- Running these checks only on relevant file types
- Moving expensive operations to pre-push hook only
"lint-staged": { "**/*.mdx": [ "eslint --max-warnings 0", "cspell lint" - ], - "**/*": [ - "pnpm fix-redirects", - "pnpm link-checker" ] },.husky/pre-push (1)
1-4
: Add newline at end of file.While the hook configuration is correct, add a newline at the end of the file to follow Unix file format conventions.
. "$(dirname -- "$0")/_/husky.sh" pnpm fix-redirects -pnpm link-checker +pnpm link-checker +pages/operators/node-operators/tutorials/node-from-docker.mdx (1)
38-38
: Fix sentence style and remove redundancy.
- Maintain consistent punctuation by keeping the period at the end of the sentence
- Remove redundant phrase "inside of"
-Configuration for `simple-optimism-node` is handled through environment variables inside of an `.env` file +Configuration for `simple-optimism-node` is handled through environment variables in an `.env` file.🧰 Tools
🪛 LanguageTool
[style] ~38-~38: This phrase is redundant. Consider using “inside”.
Context: ...s handled through environment variables inside of an.env
file {Step-by-...
(OUTSIDE_OF)
📜 Review details
Configuration used: .coderabbit.yaml
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (4)
.husky/pre-commit
(1 hunks).husky/pre-push
(1 hunks)package.json
(4 hunks)pages/operators/node-operators/tutorials/node-from-docker.mdx
(1 hunks)
🧰 Additional context used
📓 Path-based instructions (1)
`**/*.mdx`: "ALWAYS review Markdown content THOROUGHLY with ...
**/*.mdx
: "ALWAYS review Markdown content THOROUGHLY with the following criteria:
- Use proper nouns in place of personal pronouns like 'We' and 'Our' to maintain consistency in communal documentation.
- Avoid gender-specific language and use the imperative form.
- Monitor capitalization for emphasis. Avoid using all caps, italics, or bold for emphasis.
- Ensure proper nouns are capitalized in sentences.
- Apply the Oxford comma.
- Use proper title case for buttons, tab names, page names, and links. Sentence case should be used for body content and short phrases, even in links.
- Use correct spelling and grammar at all times (IMPORTANT).
- For H1, H2, and H3 headers:
- Use sentence case, capitalizing only the first word.
- Preserve the capitalization of proper nouns, technical terms, and acronyms as defined in the 'nouns.txt' file located in the root directory of the project.
- Do not automatically lowercase words that appear in the 'nouns.txt' file, regardless of their position in the header.
- Flag any headers that seem to inconsistently apply these rules for manual review.
- When reviewing capitalization, always refer to the 'nouns.txt' file for the correct capitalization of proper nouns and technical terms specific to the project.
"
pages/operators/node-operators/tutorials/node-from-docker.mdx
🪛 LanguageTool
pages/operators/node-operators/tutorials/node-from-docker.mdx
[style] ~38-~38: This phrase is redundant. Consider using “inside”.
Context: ...s handled through environment variables inside of an .env
file {
Step-by-...
(OUTSIDE_OF)
🔇 Additional comments (3)
package.json (2)
6-7
: LGTM! Husky setup and lint script modification.The prepare script for husky and the modified lint script look correct. Moving link-checker to pre-push hook is a good optimization as it can be slow for large changes.
65-66
: LGTM! Dependencies added with fixed versions.The added dependencies for husky and lint-staged use caret ranges which is good for getting compatible updates.
.husky/pre-commit (1)
1-3
: LGTM! Standard husky pre-commit hook setup.The pre-commit hook is correctly configured to run lint-staged checks.
Description
Tests
Additional context
Metadata