ci(lint): scope super-linter to changed files + repo's actual languages#68
ci(lint): scope super-linter to changed files + repo's actual languages#68duyet wants to merge 2 commits into
Conversation
…repo Lint was running on `claude/**` push events with no DEFAULT_BRANCH and no VALIDATE_ALL_CODEBASE setting, causing super-linter to fall back to scanning the whole repo. That surfaced unrelated pre-existing failures (Python, TypeScript, HTML, Markdown linters firing on files no PR ever touched) and made the check effectively unmergeable for any branch. Changes: - Add `master` to push/PR branch filters so the default branch is actually linted (it had `total_count: 0` runs before this). - Set `DEFAULT_BRANCH: master` so super-linter can diff against the right base in push events. - Set `VALIDATE_ALL_CODEBASE: false` explicitly to enforce changed-files-only behavior. - Disable the language linters that don't apply to this repo's actual content (no Python, TypeScript, HTML, or natural-language prose to lint). Keep BASH, YAML, GitHub Actions, JSON, Checkov, Markdown, and codespell.
|
Note Gemini is unable to generate a review for this pull request due to the file types involved not being currently supported. |
|
Warning Review limit reached
Your plan currently allows 1 review/hour. Refill in 5 minutes and 1 second. Your organization has run out of usage credits. Purchase more in the billing tab. ⌛ How to resolve this issue?After more review capacity refills, a review can be triggered using the 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 have higher rate limits than trial, open-source, and free plans. In all cases, review capacity refills continuously over time. Please see our FAQ for further information. ℹ️ Review info⚙️ Run configurationConfiguration used: Organization UI Review profile: ASSERTIVE Plan: Pro Run ID: 📒 Files selected for processing (1)
✨ Finishing Touches🧪 Generate unit tests (beta)
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. Comment |
Welcome! 👋Thank you for your first contribution to this project! We appreciate you taking the time to improve our codebase. Next Steps
Contribution Guidelines
Thanks again for contributing! 🎉 |
- add `---` document start - quote `"on":` so yamllint's truthy rule stops fighting prettier - pin actions/checkout and super-linter to SHA (zizmor unpinned-uses) - add persist-credentials: false on checkout
Problem
The Lint job has never actually passed against master because:
push: [main, claude/**]+pull_request: [main]. The default branch ismaster, so master pushes weren't linted (workflow_runstotal_count = 0).DEFAULT_BRANCHwas set. Super-linter couldn't figure out what to diff against onclaude/**push events, so it fell back to validating the entire codebase.VALIDATE_ALL_CODEBASE: false. Combined with feat(ci): add GitHub Actions for linting and formatting #2, every push surfaced pre-existing lint failures across the whole repo — including Python, TypeScript, HTML, and natural-language linters firing on files no PR touched.Result: any
claude/**PR (including #67) fails Lint regardless of what it changes.Fix
masterto both push and pull_request branch filters.DEFAULT_BRANCH: masterso the diff base is correct.VALIDATE_ALL_CODEBASE: falseexplicitly.Test plan
.github/workflows/lint.ymlGenerated by Claude Code