feat(ci): add CI quality gates - CODEOWNERS, markdownlint, link checking#1269
feat(ci): add CI quality gates - CODEOWNERS, markdownlint, link checking#1269
Conversation
- Add .github/CODEOWNERS for automatic reviewer assignment - Add markdownlint-cli2 with .markdownlint.json config and lint:md npm script - Add markdownlint job to lint.yml workflow (no longer ignores .md paths) - Add link-check.yml workflow using lychee for documentation link validation - Add .github/lychee.toml config excluding localhost/example URLs - Fix duplicate "Permission Patterns" heading in github-agentic-workflows.md - SARIF npm audit already exists in dependency-audit.yml (no changes needed) Fixes #348, fixes #350, fixes #352, fixes #353 Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
✅ Coverage Check PassedOverall Coverage
📁 Per-file Coverage Changes (1 files)
Coverage comparison generated by |
Add exclusions for template variables ({run_url}, {{REPOSITORY}}),
external URLs that return non-200 for automated checks, and LOGGING.md
which doesn't exist yet but is referenced from multiple docs.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
There was a problem hiding this comment.
Pull request overview
Adds Markdown quality checks to the repository’s CI by introducing Markdown linting and link checking, alongside basic configuration for both.
Changes:
- Add
markdownlint-cli2and an npm script (lint:md) plus a.markdownlint.jsonruleset. - Extend the existing GitHub Actions lint workflow with a dedicated Markdown lint job.
- Add a scheduled + PR-scoped link-check workflow using Lychee with a repo config, and introduce a CODEOWNERS file.
Reviewed changes
Copilot reviewed 7 out of 8 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| package.json | Adds lint:md script and markdownlint-cli2 dev dependency. |
| package-lock.json | Locks markdownlint-cli2 and its transitive dependencies. |
| .markdownlint.json | Defines markdownlint rule configuration used by the new lint step. |
| .github/workflows/lint.yml | Adds a new markdownlint job alongside ESLint. |
| .github/workflows/link-check.yml | New workflow to check Markdown links on PRs and on a weekly schedule. |
| .github/lychee.toml | Lychee configuration (exclusions, retries, concurrency). |
| .github/CODEOWNERS | Adds CODEOWNERS coverage for key repo areas and a default owner. |
| .github/aw/github-agentic-workflows.md | Minor documentation heading update. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
LOGGING.md doesn't exist yet but is referenced from docs/usage.md, CLAUDE.md, and .github/skills/debugging-workflows/SKILL.md. The exclude_path config only prevents scanning LOGGING.md itself, not links pointing to it from other files. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
Smoke test results for ✅ GitHub MCP — Last 2 merged PRs: #1267 "fix: drop -f from curl to avoid GitHub API rate-limit flakiness", #1265 "fix: add missing formatItem and program imports in cli.test.ts" Overall: PASS
|
Smoke Test Results
Overall: PASS
|
|
Smoke test results:
|
Chroot Version Comparison Results
Result:
|
Summary
.github/CODEOWNERSfor automatic reviewer assignment on PRs ([plan] create codeowners file for automatic reviewer assignment #350)markdownlint-cli2with relaxed baseline config,lint:mdnpm script, and CI job inlint.yml([plan] add markdown linting workflow #352)link-check.yml) using lychee, running on PR markdown changes and weekly ([plan] add link checking workflow for documentation #353)dependency-audit.yml— no changes neededgithub-agentic-workflows.mdcaught by markdownlintFixes #348, fixes #350, fixes #352, fixes #353
Test plan
npm run lint:mdpasses locally (0 errors confirmed)npm run lint)npm test— 946 passed)🤖 Generated with Claude Code