Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 21 additions & 0 deletions .github/workflows/quality.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -69,6 +69,27 @@ jobs:
- name: markdownlint
run: npm run lint:md

docs:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4

- name: Setup Node
uses: actions/setup-node@v4
with:
node-version-file: ".nvmrc"
cache: "npm"

- name: Install dependencies
run: npm ci

- name: Validate documentation links
run: npm run docs:validate-links

- name: Build documentation
run: npm run docs:build

validate:
runs-on: ubuntu-latest
steps:
Expand Down
13 changes: 13 additions & 0 deletions .husky/pre-commit
Original file line number Diff line number Diff line change
Expand Up @@ -5,3 +5,16 @@ npx --no-install lint-staged

# Validate everything
npm test

# Validate docs links only when docs change
if command -v rg >/dev/null 2>&1; then
if git diff --cached --name-only | rg -q '^docs/'; then
npm run docs:validate-links
npm run docs:build
fi
else
if git diff --cached --name-only | grep -Eq '^docs/'; then
npm run docs:validate-links
npm run docs:build
fi
fi
2 changes: 1 addition & 1 deletion docs/explanation/tea/risk-based-testing.md
Original file line number Diff line number Diff line change
Expand Up @@ -250,7 +250,7 @@ Risk scores inform test priorities (but aren't the only factor):
- **Test Levels:** E2E smoke test only
- **Example:** Theme customization, experimental features

**Note:** Priorities consider risk scores plus business context (usage frequency, user impact, etc.). See [Test Priorities Matrix](/docs/reference/tea/knowledge-base.md#test-priorities-matrix) for complete criteria.
**Note:** Priorities consider risk scores plus business context (usage frequency, user impact, etc.). See [Test Priorities Matrix](/docs/reference/tea/knowledge-base.md#quality-standards) for complete criteria.

### 3. Mitigation Plans

Expand Down
4 changes: 2 additions & 2 deletions docs/explanation/tea/test-quality-standards.md
Original file line number Diff line number Diff line change
Expand Up @@ -866,8 +866,8 @@ test('should work with optional button', async ({ page }) => {
## Technical Implementation

For detailed test quality patterns, see:
- [Test Quality Fragment](/docs/reference/tea/knowledge-base.md#test-quality)
- [Test Levels Framework Fragment](/docs/reference/tea/knowledge-base.md#test-levels-framework)
- [Test Quality Fragment](/docs/reference/tea/knowledge-base.md#quality-standards)
- [Test Levels Framework Fragment](/docs/reference/tea/knowledge-base.md#quality-standards)
- [Complete Knowledge Base Index](/docs/reference/tea/knowledge-base.md)

## Related Concepts
Expand Down
13 changes: 11 additions & 2 deletions tools/build-docs.js
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,17 @@ const REPO_URL = 'https://github.com/bmad-code-org/BMAD-METHOD';
const LLM_MAX_CHARS = 600_000;
const LLM_WARN_CHARS = 500_000;

const LLM_EXCLUDE_PATTERNS = ['changelog', 'ide-info/', 'v4-to-v6-upgrade', 'downloads/', 'faq'];
const LLM_EXCLUDE_PATTERNS = [
'changelog',
'ide-info/',
'v4-to-v6-upgrade',
'downloads/',
'faq',
'_STYLE_GUIDE.md',
'_archive/',
'reference/glossary/',
'explanation/game-dev/',
];

// =============================================================================
// Main Entry Point
Expand Down Expand Up @@ -335,7 +345,6 @@ function runAstroBuild() {
stdio: 'inherit',
env: {
...process.env,
NODE_OPTIONS: `${process.env.NODE_OPTIONS || ''} --disable-warning=MODULE_TYPELESS_PACKAGE_JSON`.trim(),
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

This suppresses a noisy warning about a problem that we're already well aware of. Why does it need to be deleted? PR comment doesn't mention it.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

This suppresses a noisy warning about a problem that we're already well aware of. Why does it need to be deleted? PR comment doesn't mention it.

Because it was breaking docs:build locally. Node 22 rejects that NODE_OPTIONS flag:

node: --disable-warning= is not allowed in NODE_OPTIONS

So the build died before Astro even ran. Removing the override lets Astro run normally.

},
});
}
Expand Down