Skip to content

ci: add fast docs validation workflow#134

Merged
superdav42 merged 2 commits into
mainfrom
ci/fast-docs-validation
Jun 16, 2026
Merged

ci: add fast docs validation workflow#134
superdav42 merged 2 commits into
mainfrom
ci/fast-docs-validation

Conversation

@superdav42

@superdav42 superdav42 commented Jun 16, 2026

Copy link
Copy Markdown
Contributor

Summary

  • adds a separate Validate Documentation workflow for PRs and non-main branch pushes
  • detects changed i18n/{locale} paths and builds English plus changed locales instead of every locale
  • uses a separate validate-docs-* concurrency group so validation does not block the deploy workflow
  • supports manual dispatch with explicit comma-separated locales

Verification

  • git diff --check
  • parsed .github/workflows/validate-docs.yml with Python/PyYAML
  • actionlint was not available locally

aidevops.sh v3.20.80 plugin for OpenCode v1.17.7 with gpt-5.5

Summary by CodeRabbit

Release Notes

  • Chores
    • Added automated documentation validation workflow that runs on pull requests targeting the main branch, pushes, and manual triggers. The workflow detects which locales are affected by changes and builds documentation for each affected locale with concurrency controls to prevent duplicate runs.

@coderabbitai

coderabbitai Bot commented Jun 16, 2026

Copy link
Copy Markdown

Review Change Stack

Warning

Review limit reached

@superdav42, we couldn't start this review because you've reached your PR review rate limit.

More reviews will be available in 50 minutes and 9 seconds. Learn how PR review limits work.

Your organization has run out of usage credits. Purchase more credits in the billing tab to continue.

⌛ How to resolve this issue?

After more reviews become available, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

We recommend that you space out your commits to avoid hitting the rate limit.

🚦 How do rate limits work?

CodeRabbit enforces hourly rate limits for each developer per organization.

Our paid plans include higher PR review limits than trial, open-source, and free plans. In all cases, reviews become available again over time. During sustained high-volume PR review activity, CodeRabbit may temporarily slow when the next review becomes available.

Please see our Fair Usage Limits Policy for further information.

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 0e9b1166-b3ed-46bf-a1e4-1bef0e5dabc7

📥 Commits

Reviewing files that changed from the base of the PR and between 66117f9 and e84d758.

📒 Files selected for processing (1)
  • .github/workflows/validate-docs.yml
📝 Walkthrough

Walkthrough

A new GitHub Actions workflow validate-docs.yml is added. It triggers on PRs to main, pushes excluding main, and manual dispatch. A detect-locales job uses git diff and an inline Python script to identify affected locales from i18n/ paths. A build job then fans out via a matrix to build the Docusaurus site per locale using npx docusaurus build --locale.

Changes

Validate Documentation CI Workflow

Layer / File(s) Summary
Workflow triggers, permissions, and concurrency
.github/workflows/validate-docs.yml
Defines PR, push, and manual dispatch triggers with locale-related inputs; sets contents: read permissions and concurrency group cancellation per PR/ref.
detect-locales job
.github/workflows/validate-docs.yml
Checks out the repo, computes changed files via git diff (PR base or origin/main...HEAD), runs an inline Python script to extract and deduplicate locale codes from i18n/<locale>/... paths with optional en inclusion, and exports the list as job output with a step summary.
build job with locale matrix
.github/workflows/validate-docs.yml
Consumes the locale list output, sets up Node.js 20, installs dependencies via npm ci, and runs npx docusaurus build --locale for each detected locale in parallel.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Poem

🐇 A rabbit hops through i18n/ trails,
Sniffing out each locale without fail.
Python counts the diff with glee,
Builds each doc for all to see!
No stale page shall ever prevail. 🌍

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title 'ci: add fast docs validation workflow' accurately summarizes the main change—introducing a new GitHub Actions workflow for faster documentation validation.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ 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 ci/fast-docs-validation

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.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Actionable comments posted: 3

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In @.github/workflows/validate-docs.yml:
- Line 56: Pin all tag-based action references to immutable full commit SHAs to
strengthen supply-chain integrity. In .github/workflows/validate-docs.yml,
replace the tag-based references at lines 56 (actions/checkout@v6), 124, and 127
with their corresponding full commit SHAs. For each location, change the uses
directive from the format `action@tag` to `action@<full-commit-sha>`, and
optionally add a comment on the same line noting which tag it corresponds to for
readability and maintainability.
- Around line 56-58: Both actions/checkout@v6 steps in the validate-docs
workflow have default credential persistence enabled, which unnecessarily
exposes the authentication token to subsequent steps. Add the parameter
persist-credentials: false to the with section of each checkout step to disable
token persistence and reduce security exposure when Git authentication is not
needed for the workflow operations.
- Around line 88-95: Add validation to ensure all locale values extracted from
both input_locales and changed_files match the pattern [A-Za-z0-9-]+ before they
are used. Apply this validation in the code blocks where locales are parsed from
input_locales (by stripping and splitting) and where they are extracted from
changed file paths by appending to the locales list. Additionally, pass the
validated locales to the shell command via environment variables instead of
direct string interpolation in the run command, which prevents shell
metacharacters from being interpreted as code even if validation is somehow
bypassed.
🪄 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: 9efd94af-6044-425a-a734-fc3f2ba9087d

📥 Commits

Reviewing files that changed from the base of the PR and between ad6b4ea and 66117f9.

📒 Files selected for processing (1)
  • .github/workflows/validate-docs.yml

Comment thread .github/workflows/validate-docs.yml Outdated
Comment thread .github/workflows/validate-docs.yml Outdated
Comment thread .github/workflows/validate-docs.yml
@superdav42

Copy link
Copy Markdown
Contributor Author

CLAIM_RELEASED reason=worker_complete runner=superdav42 ts=2026-06-16T17:57:24Z aidevops_version=3.20.84 opencode_version=1.17.7

@superdav42 superdav42 added the status:available Task is available for claiming label Jun 16, 2026
@superdav42 superdav42 merged commit e405363 into main Jun 16, 2026
5 checks passed
@superdav42

Copy link
Copy Markdown
Contributor Author

Summary

  • adds a separate Validate Documentation workflow for PRs and non-main branch pushes
  • detects changed i18n/{locale} paths and builds English plus changed locales instead of every locale
  • uses a separate validate-docs-* concurrency group so validation does not block the deploy workflow
  • supports manual dispatch with explicit comma-separated locales

Verification

  • git diff --check
  • parsed .github/workflows/validate-docs.yml with Python/PyYAML
  • actionlint was not available locally

aidevops.sh v3.20.80 plugin for OpenCode v1.17.7 with gpt-5.5


Merged via PR #134 to main.
Merged by deterministic merge pass (pulse-wrapper.sh).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

review-feedback-scanned Merged PR already scanned for quality feedback status:available Task is available for claiming

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant