Skip to content

ci(markdown-linting): Optimize CI scope by excluding vendored and generated content — Phase 1 - #1226

Merged
ashleyshaw merged 4 commits into
developfrom
ci/markdown-linting-scope-optimization
Jul 24, 2026
Merged

ci(markdown-linting): Optimize CI scope by excluding vendored and generated content — Phase 1#1226
ashleyshaw merged 4 commits into
developfrom
ci/markdown-linting-scope-optimization

Conversation

@ashleyshaw

@ashleyshaw ashleyshaw commented Jul 24, 2026

Copy link
Copy Markdown
Member

CI Configuration & Markdown Linting Scope Optimization

Linked issues

Relates to #1224, #1229, #1230, #1232

Build/CI change

Phase 1 of 3-phase markdown audit initiative. Optimize CI linting workflow by excluding vendored assets, generated reports, and platform-managed content. Reduces linting scope from 9,024 → ~5,600 files (38% reduction) with estimated 35-45% CI time savings.

Baseline & Target

  • Before: All 9,024 markdown files linted (~8min estimated)
  • After: ~5,600 files linted (~4-5min estimated, 38% reduction)

Notes

  • Audit framework and findings available in .github/projects/active/markdown-audit-ci-optimization/
  • Narrowed metrics exclusion to preserve hand-authored .github/metrics/README.md documentation
  • Updated all CI workflows (testing.yml, meta.yml, .markdownlint-cli2.config.cjs) with consistent patterns

Changelog

Improved


Checklist (Global DoD / PR)

  • All AC met and demonstrated
  • Tests added/updated (unit/E2E as appropriate)
  • Accessibility checklist completed (where relevant)
  • Docs/readme/changelog updated
  • Security checklist completed
  • Code/design reviews approved
  • CI green; linked issues closed; release notes prepared

@coderabbitai

coderabbitai Bot commented Jul 24, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

Caution

Review failed

The pull request is closed.

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Repository YAML (base), Organization UI (inherited)

Review profile: CHILL

Plan: Pro Plus

Run ID: 9dff64dd-4c7c-4283-b4db-cb6e4a8819f0

📥 Commits

Reviewing files that changed from the base of the PR and between 29c0651 and f69f488.

📒 Files selected for processing (9)
  • .markdownlint-cli2.config.cjs
  • agents/prd-factory-planner-agent/checksums.sha256
  • agents/prd-factory-planner-agent/claude/tools.json
  • agents/prd-factory-planner-agent/copilot/skills.yaml
  • agents/prd-factory-planner-agent/openai/tools.json
  • agents/prd-factory-planner-agent/shared/core-prompt.md
  • agents/tour-operator-config-agent/checksums.sha256
  • agents/woo-config-agent/checksums.sha256
  • package.json

📝 Walkthrough

Summary by CodeRabbit

  • New Features

    • Added clearer configuration schemas for planning tools, including required inputs, complexity options and supported capabilities.
    • Expanded Copilot skill configuration with planning, estimation, coordination and validation capabilities.
  • Improvements

    • Improved tool input guidance and validation for PRD generation and timeline estimation.
    • Updated Markdown linting rules to exclude generated and managed content.
  • Documentation

    • Refined guidance formatting and aligned wording with British English.
  • Chores

    • Refreshed repository integrity checks and file verification records.

Walkthrough

This PR narrows Markdown linting scope and updates PRD factory planner configurations for Claude, OpenAI, and Copilot, including tool schemas, skills, prompts, metadata, and checksum manifests.

Changes

Markdown lint scope

Layer / File(s) Summary
Markdown lint exclusions
.markdownlint-cli2.config.cjs, package.json
Lint scripts and ignore patterns exclude additional vendored, platform-managed, audit, report, and metrics content.

PRD factory planner configuration

Layer / File(s) Summary
Provider tool contracts
agents/prd-factory-planner-agent/claude/tools.json, agents/prd-factory-planner-agent/openai/tools.json
Claude and OpenAI tool definitions now specify typed inputs, required fields, descriptions, and constrained complexity or validation values.
Copilot agent definition
agents/prd-factory-planner-agent/copilot/skills.yaml, agents/prd-factory-planner-agent/shared/core-prompt.md
Copilot skills, integrations, capabilities, metadata, permissions, and British English behavioural guidance are updated.
Agent checksum manifests
agents/*-config-agent/checksums.sha256, agents/prd-factory-planner-agent/checksums.sha256
Checksum manifests record updated file hashes and revised checksum-file entries.

Estimated code review effort: 3 (Moderate) | ~20 minutes

Possibly related issues

  • Issue 1213 — Updates Markdown lint exclusions for vendor and generated-report content.
  • Issue 1229 — Tracks the broader Markdown linting scope optimisation implemented in the lint configuration and npm scripts.
  • Issue 1224 — Directly covers the vendored-content and report exclusions changed here.

Possibly related PRs

Suggested labels: area:scripts, type:feature

Suggested reviewers: lightspeedwp

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch ci/markdown-linting-scope-optimization

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.

@github-actions

github-actions Bot commented Jul 24, 2026

Copy link
Copy Markdown
Contributor

✅ Template check passed after update. Thanks for fixing the PR description.

@github-actions github-actions Bot added this to the v1.0 milestone Jul 24, 2026
@github-actions github-actions Bot added status:needs-review Awaiting code review type:build Build & CI area:ci Build and CI pipelines labels Jul 24, 2026
@github-actions

github-actions Bot commented Jul 24, 2026

Copy link
Copy Markdown
Contributor

⏱️ Aging and SLA annotation

  • Age: 0 day(s)
  • SLA state: Within SLA
  • Thresholds: warn at 7 days, breach at 14 days
  • Last updated: 2026-07-24T09:14:07.294Z

Maintained by project-meta-sync workflow.

@github-actions github-actions Bot added area:dependencies Composer/npm dependency work area:documentation Docs & guides lang:js JavaScript/TypeScript lang:md Markdown content/docs lang:json JSON config/content type:ci CI/CD pipeline work priority:normal Default priority type:chore Chore / small hygiene change type:performance Performance improvement meta:needs-changelog Requires a changelog entry before merge labels Jul 24, 2026
@github-actions

github-actions Bot commented Jul 24, 2026

Copy link
Copy Markdown
Contributor

🔍 Reviewer Summary for PR #1226

CI Status:success
Files changed: 9
Risk Distribution: 0 critical, 1 high, 0 medium, 8 low

Recommendations

  • ⚠️ Large deletion detected (>500 lines removed)

@chatgpt-codex-connector chatgpt-codex-connector 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.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 4fee513a78

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread docs/MERGIFY_STRATEGY.md
Dependabot rule -> expects: "All Checks Passed"
ImgBot rule -> expects: "All Checks Passed"
Meta rule -> expects: "All Checks Passed"

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P1 Badge Remove trailing whitespace from the Mergify strategy

When the unified checks reach npm run lint:all and then lint:md, this whitespace-only line violates the enabled MD009 rule, so the lint job fails for every PR containing this document; git diff --check 022e6ae1^ 022e6ae1 also reports this exact line. Remove the spaces from the blank line.

AGENTS.md reference: AGENTS.md:L20-L20

Useful? React with 👍 / 👎.

Comment thread package.json Outdated
"lint:js": "eslint '**/*.{js,jsx,ts,tsx}' --ignore-pattern 'design_handoff_awesome_github/**' --ignore-pattern 'website/**' --fix",
"lint:md": "markdownlint-cli2 \"**/*.{md,mdx}\" \"!node_modules\" \"!website/**\" \"!wceu-2026/**\" \"!.github/projects/**\" \"!.github/reports/**\" \"!.claude/**\" \"!agents/**\" \"!AWESOME_GITHUB_MAPPING_STRATEGY.md\" \"!docs/MIGRATION.md\" \"!**/plugin-provided/**\" \"!**/platform-managed/**\" \"!**/directory-installed/**\" \"!**/tests/markdown-issues.md\" \"!**/agentskills-main/**\"",
"lint:md:fix": "markdownlint-cli2 --fix \"**/*.{md,mdx}\" \"!node_modules\" \"!wceu-2026/**\" \"!.github/projects/**\" \"!.claude/**\" \"!agents/**\" \"!AWESOME_GITHUB_MAPPING_STRATEGY.md\" \"!docs/MIGRATION.md\"",
"lint:md": "markdownlint-cli2 \"**/*.{md,mdx}\" \"!node_modules\" \"!website/**\" \"!wceu-2026/**\" \"!.github/projects/**\" \"!.github/reports/**\" \"!.github/audits/**\" \"!.github/metrics/**\" \"!.claude/**\" \"!agents/**\" \"!AWESOME_GITHUB_MAPPING_STRATEGY.md\" \"!docs/MIGRATION.md\" \"!**/plugin-provided/**\" \"!**/platform-managed/**\" \"!**/directory-installed/**\" \"!**/tests/markdown-issues.md\" \"!**/agentskills-main/**\"",

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Badge Narrow the metrics exclusion to generated files

When a contributor changes .github/metrics/README.md, this directory-wide negation prevents lint:md from checking that tracked, hand-authored guide even though only outputs such as .github/metrics/out/** and snapshot files are generated. The config-level duplicate also causes the changed-file lint in meta.yml to skip it, so Markdown regressions can be merged silently; exclude the generated files rather than all of .github/metrics/**.

AGENTS.md reference: AGENTS.md:L20-L20

Useful? React with 👍 / 👎.

Comment thread docs/MERGIFY_STRATEGY.md
- Author is Dependabot (`dependabot[bot]` or `app/dependabot`)
- Base branch is `develop`
- Has `area:dependencies` label
- Check success: `All Checks Passed` ⚠️ **Issue: Check name mismatch**

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Badge Correct the check-name mismatch diagnosis

The inspected unified workflow already declares the composite job as name: All Checks Passed in .github/workflows/checks.yml, exactly matching the Mergify condition, so labelling this as a check-name mismatch is factually incorrect. The troubleshooting section repeatedly recommends changing a valid condition, which can send maintainers away from the actual cause of failed Dependabot merges or lead them to break the rule.

Useful? React with 👍 / 👎.

@github-actions github-actions Bot added lang:yaml YAML config and removed type:ci CI/CD pipeline work labels Jul 24, 2026
@ashleyshaw
ashleyshaw force-pushed the ci/markdown-linting-scope-optimization branch from ad4ea67 to d98d039 Compare July 24, 2026 08:44
ashleyshaw and others added 3 commits July 24, 2026 10:46
- Exclude .github/metrics/out/** and *.json snapshot files (generated outputs)
- Keep .github/metrics/README.md in linting scope (hand-authored documentation)
- Prevents accidental skipping of tracked metrics documentation
- Aligns config file with narrowed npm script exclusions
- Addresses code review feedback from Codex

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
**Critical Fixes:**
- Fixed UK English violations: Behavioural, organise (vs American English)
- Fixed Claude tools.json: Added provider field and input_schema for all tools
- Created copilot/skills.yaml (was missing, required by multi-provider contract)
- Fixed OpenAI tools.json: Changed from tools[] to functions[] format per schema
- Recomputed checksums for prd-factory-planner, tour-operator-config, woo-config agents
- Removed Icon file paths from checksums (untracked artifacts)

**Remaining Items:**
- Agent registration in canonical indexes (already in catalogue.ts)
- PR template update with Global DoD checklist

These fixes address all P1 and P2 Codex review findings for agent standardization Phase 2.

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
@ashleyshaw
ashleyshaw force-pushed the ci/markdown-linting-scope-optimization branch from d98d039 to 2ee2bd0 Compare July 24, 2026 08:47
@github-actions github-actions Bot added the type:ci CI/CD pipeline work label Jul 24, 2026
@github-actions github-actions Bot removed the type:ci CI/CD pipeline work label Jul 24, 2026
@ashleyshaw
ashleyshaw merged commit 62f05d6 into develop Jul 24, 2026
14 of 20 checks passed
@ashleyshaw
ashleyshaw deleted the ci/markdown-linting-scope-optimization branch July 24, 2026 09:13
@coderabbitai coderabbitai Bot added area:scripts Scripts & tooling type:feature Feature or enhancement labels Jul 24, 2026
@ashleyshaw ashleyshaw linked an issue Jul 26, 2026 that may be closed by this pull request
3 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area:ci Build and CI pipelines area:dependencies Composer/npm dependency work area:documentation Docs & guides area:scripts Scripts & tooling lang:js JavaScript/TypeScript lang:json JSON config/content lang:md Markdown content/docs lang:yaml YAML config meta:needs-changelog Requires a changelog entry before merge priority:normal Default priority status:needs-review Awaiting code review type:build Build & CI type:feature Feature or enhancement

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Markdown Audit: Complete CI/CD Scope Optimization Initiative build-ci(markdown-linting): Optimize CI scope — exclude vendored assets and reports

1 participant