Skip to content

Conversation

@tapchan54
Copy link

@tapchan54 tapchan54 commented Oct 31, 2025

Adds a GitHub Actions workflow that runs Vale (https://vale.sh) to check grammar and style on Markdown documentation.

This helps keep Plane’s documentation consistent and grammatically correct.

Summary by CodeRabbit

  • Chores
    • Established automated documentation linting workflow to validate Markdown files for style and quality consistency. The workflow runs on all pull requests that modify documentation, Markdown files, or workflow configurations, leveraging Microsoft and Technical style guidelines to maintain documentation standards.

@vercel
Copy link

vercel bot commented Oct 31, 2025

@tapchan54 is attempting to deploy a commit to the Marketing at Plane Team on Vercel.

A member of the Team first needs to authorize it.

@coderabbitai
Copy link

coderabbitai bot commented Oct 31, 2025

Walkthrough

This PR introduces Vale documentation linting configuration. It adds a GitHub Actions workflow that automatically runs Vale on pull requests affecting Markdown or documentation files, along with a configuration file specifying linting rules and style paths for Markdown documents.

Changes

Cohort / File(s) Summary
Vale Documentation Linting Setup
\.github/workflows/vale\.yml, \.vale\.ini
Adds GitHub Actions workflow to run Vale linting on PRs, triggered by changes to Markdown, docs, or workflow files. Clones errata-ai/styles repository and runs vale-action@v2. Includes configuration file specifying StylesPath, MinAlertLevel set to suggestion, and Microsoft and Technical styles for Markdown files.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~3 minutes

  • Both files are straightforward configuration additions with no complex logic or interdependencies to verify
  • Workflow file follows standard GitHub Actions patterns
  • INI configuration is minimal with basic key-value settings

Poem

🐰 A Vale so true, we now proclaim,
To lint our docs with careful aim,
GitHub Actions guards each PR,
Markdown shines, no errors bar!
Styles aligned, suggestions clear—
Perfection blooms when linting's here! ✨

Pre-merge checks and finishing touches

❌ Failed checks (1 warning)
Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. You can run @coderabbitai generate docstrings to improve docstring coverage.
✅ Passed checks (2 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title Check ✅ Passed The pull request title "chore(docs): add Vale grammar/style checker in CI" accurately describes the main objective of the changeset. The two modified files directly implement this objective: .github/workflows/vale.yml establishes the GitHub Actions workflow to run Vale linting, and .vale.ini configures Vale's behavior for Markdown files. The title is concise, specific, and clearly communicates to reviewers that the PR adds automated grammar and style checking to the continuous integration pipeline. It follows conventional commit practices with an appropriate "chore(docs)" scope.
✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment

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

@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: 0

🧹 Nitpick comments (3)
.vale.ini (1)

1-2: Verify StylesPath matches workflow and confirm MinAlertLevel scope.

Line 1 sets StylesPath = ./.vale/styles, which should match where the workflow clones styles (./.vale/styles in line 20 of vale.yml). Confirm this is intentional. Additionally, MinAlertLevel = suggestion is very permissive—all Vale suggestions will trigger warnings. Consider whether this should be raised to warning or error to enforce more substantive style violations.

.github/workflows/vale.yml (2)

3-8: Clarify trigger scope for .github/** path.

The workflow triggers on .github/**, which includes this workflow file itself. Depending on your merge strategy, this could create unnecessary workflow runs on CI-related changes. Consider whether .github/** should be scoped more narrowly to documentation-related workflows (e.g., .github/workflows/docs/** or removed if not needed).


18-20: Add error handling for style cloning and consider caching.

The git clone command has no error handling—if the clone fails silently or times out, Vale will run with missing styles and produce misleading results. Additionally, styles are re-cloned on every workflow run, adding latency. Consider:

  1. Adding set -e or explicit error checking to fail fast if styles fail to clone.
  2. Caching the cloned styles directory using GitHub Actions caching to reduce CI latency.

Here's a suggested improvement with error handling and caching:

-      - name: Fetch Vale styles
-        run: |
-          git clone https://github.com/errata-ai/styles.git ./.vale/styles
+      - name: Cache Vale styles
+        uses: actions/cache@v4
+        with:
+          path: ./.vale/styles
+          key: vale-styles-${{ hashFiles('.vale.ini') }}
+          restore-keys: vale-styles-
+
+      - name: Fetch Vale styles
+        run: |
+          if [ ! -d "./.vale/styles" ]; then
+            git clone https://github.com/errata-ai/styles.git ./.vale/styles || { echo "Failed to clone styles"; exit 1; }
+          fi
📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 706da90 and 6ae0128.

📒 Files selected for processing (2)
  • .github/workflows/vale.yml (1 hunks)
  • .vale.ini (1 hunks)
🔇 Additional comments (1)
.github/workflows/vale.yml (1)

22-26: Verify Vale action version and parameter alignment with configuration.

The workflow uses errata-ai/vale-action@v2 and passes stylesPath: ./.vale/styles explicitly. Confirm that:

  1. Version @v2 is the appropriate/latest stable version for your use case.
  2. The stylesPath parameter in the action matches the StylesPath setting in .vale.ini (line 1).

Both currently reference ./.vale/styles, which appears consistent, but verify the action respects the config parameter correctly when a stylesPath is also provided.

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