Skip to main content

docs-gap

Use when analyzing release branch changes for missing user-facing documentation. Compares the release branch against devel, filters for user-facing changes, scans v3-docs/docs/ for coverage, and produces a gap report (.md file) with prioritized documentation opportunities. Does NOT write documentation — only identifies gaps and outputs a plan for later action.

Datos de origen

Repositorio
meteor/meteor
Última actividad en el origen
31 de marzo de 2026 a las 15:24
Idioma detectado de SKILL.md
inglés
Estrellas
44.796
Forks
5256

Opciones de instalación

De forma predeterminada está seleccionado el prompt que primero revisa el origen. Puedes cambiar a un comando directo o descargar una copia local.

Revisa los archivos de origen

Lee SKILL.md y los archivos complementarios que muestra SkillsMP antes de decidir si quieres instalarlo.

Mostrando SKILL.md

SKILL.md
Instrucciones de origen · Vista previa de solo lectura
name
docs-gap
description
Use when analyzing release branch changes for missing user-facing documentation. Compares the release branch against devel, filters for user-facing changes, scans v3-docs/docs/ for coverage, and produces a gap report (.md file) with prioritized documentation opportunities. Does NOT write documentation — only identifies gaps and outputs a plan for later action.
# Documentation Gap Analysis Analyze release changes and identify missing user-facing documentation. Produces a gap report as a `.md` file for later action — does **not** write the documentation itself. --- ## Branching Model Releases are prepared on **`release-<VERSION>`** branches. The main development branch is **`devel`**. - **Change scope** = all changes on `release-<VERSION>` that are not on `devel` - Always compare against `devel` to determine what is new in the release - Use `git log devel..HEAD` when on the release branch This is the same branching model used by the [changelog](../changelog/SKILL.md) and [version-bump](../version-bump/SKILL.md) skills. --- ## Step 1: Gather Release Changes Fetch merged PRs targeting the release branch: **Primary — `gh` CLI:** ```bash gh pr list --repo meteor/meteor \ --base release-<VERSION> \ --state merged \ --limit 200 \ --json number,title,labels,author,body,url ``` **Fallback — git log:** ```bash git log --oneline devel..HEAD --merges | grep -oP '#\K[0-9]+' ``` Then fetch details per PR with `gh pr view`. --- ## Step 2: Filter to Release-Relevant Changes Apply the same inclusion rules as the changelog skill. **Include only PRs that touch:** * `tools/` — CLI and build system * `packages/` — core Meteor packages * `npm-packages/` — published `@meteorjs/*` packages * `scripts/` — dev bundle build scripts **Exclude PRs that are:** * Docs-only (touching only `docs/`, `v3-docs/`, `guide/`) * CI/test-infrastructure-only (`.github/workflows/`, E2E harness) * Release tooling only (version bumps, changelog generation) * Dependabot PRs unless they bump a user-visible dependency * Internal refactors with no user-facing impact --- ## Step 3: Classify Changes for Documentation Potential Not all release changes need documentation. Classify each included PR: ### High Priority (likely needs docs) | Change Type | Signal | Expected Doc Section | |-------------|--------|---------------------| | New package | New `packages/*/package.js` created | `packages/` — new article | | New CLI command or option | Changes to `tools/cli/commands.js` adding new commands/flags | `cli/` — update or new section | | New skeleton or template | New entries in `tools/static-assets/` | `about/` — getting started update | | New integration or bundler feature | Changes to `packages/rspack/`, `packages/tools-core/`, `npm-packages/meteor-rspack/` | `about/modern-build-stack/` — update or new article | | Breaking change | PR title/body mentions "breaking", "removed", "renamed" | Relevant section + migration note | ### Medium Priority (may need docs) | Change Type | Signal | Expected Doc Section | |-------------|--------|---------------------| | New feature in existing package | New exports, new methods, new options | `packages/` — update existing article | | Behavior change | Changed defaults, new error messages | `packages/` or `troubleshooting/` | | Performance improvement (user-actionable) | New config option or recommended pattern | `performance/` | ### Low Priority (usually no docs needed) | Change Type | Signal | Expected Doc Section | |-------------|--------|---------------------| | Bug fix | Fix to existing behavior, no API change | Usually none — unless the bug was a known issue in `troubleshooting/` | | Internal optimization | No user-visible change | None | | Type definition fix | `.d.ts` changes only | None | **Skip low-priority items** in the gap report unless they fix a documented known issue. --- ## Step 4: Scan Existing Documentation for Coverage For each high and medium priority change, search `v3-docs/docs/` for existing coverage. ### Search Strategy For each PR, extract keywords from: - PR title (e.g., "Rspack CSS delegation", "TypeScript Tailwind skeleton") - Package name (e.g., `accounts-base`, `rspack`) - Feature name (e.g., `swc.config.ts`, `getUserIdsInRoleAsync`) Then search: ```bash # Search by feature keyword grep -rl "<keyword>" v3-docs/docs/ --include="*.md" # Search by package name grep -rl "<package-name>" v3-docs/docs/ --include="*.md" ``` ### Documentation Scope (In-Scope Sections) Only scan and report on **user-facing** documentation sections: | Section | Path | What It Covers | |---------|------|---------------| | About / Quick Start | `v3-docs/docs/about/` | Getting started, install, concepts, modern build stack | | Packages | `v3-docs/docs/packages/` | Official package guides | | CLI | `v3-docs/docs/cli/` | Command-line reference | | Tutorials | `v3-docs/docs/tutorials/` | Step-by-step framework guides | | Troubleshooting | `v3-docs/docs/troubleshooting/` | Common issues and solutions | | Performance | `v3-docs/docs/performance/` | Optimization guides | | Community Packages | `v3-docs/docs/community-packages/` | Third-party package docs | ### Out-of-Scope Sections (Do NOT Report Gaps For) | Section | Path | Why Excluded | |---------|------|-------------| | API Reference | `v3-docs/docs/api/` | Auto-generated from JSDoc — separate concern | | Generators | `v3-docs/docs/generators/` | Build tooling for the doc site | | JSDoc | `v3-docs/docs/jsdoc/` | JSDoc configuration | | Components | `v3-docs/docs/components/` | Vue components for doc site | | Data / Search / Public | `v3-docs/docs/data/`, `search/`, `public/` | Site infrastructure | ### Coverage Assessment For each change, classify as: - **Documented** — existing docs cover the feature adequately (file path + relevant section) - **Partially documented** — feature is mentioned but not fully explained (file path + what's missing) - **Not documented** — no docs found for this change --- ## Step 5: Produce the Gap Report Output a `.md` file at `docs/plans/<DATE>-docs-gap-<VERSION>.md` with this structure: ````markdown # Documentation Gap Report: v<VERSION> **Generated:** <DATE> **Branch:** release-<VERSION> vs devel **PRs analyzed:** <COUNT> **Gaps found:** <COUNT> --- ## Already Documented Changes that have adequate documentation coverage. | PR | Change | Doc File | Notes | |----|--------|----------|-------| | [PR#NNN](url) | Description | `v3-docs/docs/path/file.md` | Covered in section X | --- ## Partially Documented Changes mentioned in docs but needing updates. | PR | Change | Doc File | What's Missing | |----|--------|----------|---------------| | [PR#NNN](url) | Description | `v3-docs/docs/path/file.md` | Missing: new option X, updated example | --- ## Not Documented Changes with no corresponding documentation. ### High Priority | PR | Change | Suggested Action | |----|--------|-----------------| | [PR#NNN](url) | Description | Create `v3-docs/docs/section/file.md` — describe X for end users | ### Medium Priority | PR | Change | Suggested Action | |----|--------|-----------------| | [PR#NNN](url) | Description | Update `v3-docs/docs/section/file.md` — add section about Y | --- ## Summary - **Total user-facing changes:** N - **Documented:** N - **Partially documented:** N - **Not documented:** N (high: N, medium: N) ```` --- ## Prioritization Rank gaps in this order: 1. **New features / new packages** — users cannot discover these without docs 2. **Breaking changes** — users need migration guidance 3. **New CLI commands/options** — users need to know they exist 4. **New integrations / build features** — expanding ecosystem 5. **Behavior changes** — users may be surprised 6. **Performance improvements** — only if user-actionable (e.g., new config) Bug fixes and internal optimizations generally do not need documentation. --- ## Writing Guidelines for Suggested Actions When describing what documentation to write in the gap report, keep suggestions **user-friendly**: **Do:** - Frame from the user's perspective ("How to use X", "Getting started with Y") - Suggest practical examples and code snippets - Reference existing doc patterns in the same section - Suggest updating existing articles before creating new ones **Don't:** - Suggest documenting internal implementation details - Suggest documenting private APIs or internal methods - Frame documentation as technical specs - Suggest documentation for changes only relevant to Meteor contributors ### Preserving Style and Integration When the gap report is used to write documentation, the new content must feel native to the existing docs — not bolted on. Each suggested action in the report should include guidance on how to integrate cleanly: - **Read the target file first.** Before suggesting where to add content, note the writing style, heading levels, use of components (e.g., `<ApiBox>`), code example format, and tone. - **Match the surrounding pattern.** If nearby sections use a brief intro paragraph followed by a code block and a tip, follow the same structure. If they use bullet lists, use bullet lists. - **Find the right spot.** Place new content next to related existing content — not appended at the end. For example, a new API method goes next to similar methods; a new framework section goes alongside the other framework sections. - **Use the same components.** If the doc uses `<ApiBox>`, `:::warning`, `:::info`, code groups, or other VitePress/Vue components, use them for new content too. - **Preserve categorization.** New package docs go in `packages/`, new CLI options go in `cli/`, new getting-started content goes in `about/`. Do not create new top-level sections unless no existing section fits. --- ## Review Checklist Before finalizing the gap report: - [ ] All high and medium priority PRs have been assessed - [ ] Each "Not Documented" item has a concrete suggested action (file path + description) - [ ] "Partially Documented" items specify what exactly is missing - [ ] No low-priority items (pure bug fixes, internal refactors) are included unless they fix a documented known issue - [ ] All doc file paths in "Already Documented" are verified to exist - [ ] Suggested new articles align with the existing doc structure and naming conventions - [ ] Gap report is saved to `docs/plans/<DATE>-docs-gap-<VERSION>.md`
Ver en GitHub