QA Docs Coverage (Dec 2025) — Discovery, Freshness, and Runbook Quality
Modern Best Practices: Phase-based audits, priority-driven documentation, automated coverage tracking
This skill provides operational workflows for auditing existing codebases, identifying documentation gaps, and systematically generating missing documentation. It complements docs-codebase by providing the discovery and analysis layer.
Key Principle: Templates exist in docs-codebase. This skill tells you what to document and how to find undocumented components.
Core references: Diataxis documentation framework (https://diataxis.fr/) and OpenAPI (https://spec.openapis.org/oas/latest.html).
When to Use This Skill
Invoke this skill when:
- Auditing documentation coverage for an existing codebase
- Generating documentation for legacy or underdocumented projects
- Creating documentation coverage reports
- Systematically documenting APIs, services, events, or database schemas
- Onboarding to a new codebase and need to understand what's documented vs not
- Preparing for compliance audits requiring documentation
- Setting up documentation maintenance processes
Core QA (Default)
What “Docs as QA” Means
- Treat docs as production quality artifacts: they reduce MTTR, enable safe changes, and define expected behavior.
- REQUIRED doc types for reliability and debugging ergonomics:
- “How to run locally/CI” and “how to test”.
- Operational runbooks (alerts, common failures, rollback).
- Service contracts (OpenAPI/AsyncAPI) and schema examples.
- Known issues and limitations (with workarounds).
Coverage Model (Risk-Based)
- Prioritize docs by impact:
- P1: externally consumed contracts and failure behavior (OpenAPI/AsyncAPI, auth, error codes, SLOs).
- P2: internal integration and operational workflows (events, jobs, DB schema, runbooks).
- P3: developer reference (configs, utilities).
Freshness Checks (Prevent Stale Docs)
- Define owners, review cadence, and a “last verified” field for critical docs.
- CI economics [Inference]:
- Block PRs only for missing/invalid P1 docs.
- Warn for P2/P3 gaps; track via backlog.
- Run link checks and linting as fast pre-merge steps.
Runbook Testability
- A runbook is “testable” if a new engineer can follow it and reach a measurable end state.
- Include: prerequisites, exact commands, expected outputs, rollback criteria, and escalation paths.
Do / Avoid
Do:
- Keep docs close to code (same repo) and version them with changes.
- Use contracts and examples as the source of truth for integrations.
Avoid:
- Large “doc-only” projects with no owners and no CI gates.
- Writing runbooks that cannot be executed in a sandbox/staging environment.
Quick Reference
| Audit Task |
Tool/Pattern |
Output |
Priority |
| Discover APIs |
**/*Controller.cs, **/routes/**/*.ts |
Component inventory |
Use discovery-patterns.md |
| Calculate Coverage |
Compare inventory vs docs |
Coverage report |
Use coverage-report-template.md |
| Prioritize Gaps |
External-facing → P1, Internal → P2, Config → P3 |
Documentation backlog |
Use priority-framework.md |
| Generate Docs |
docs-codebase templates |
Documentation files |
Use audit-workflows.md Phase 3 |
| Automate Checks |
CI/CD gates, PR templates |
Continuous coverage |
Use cicd-integration.md |
Decision Tree: Documentation Audit Workflow
User needs: [Audit Type]
├─ Starting fresh audit?
│ ├─ Public-facing APIs? → Priority 1: External-Facing (OpenAPI, webhooks, error codes)
│ ├─ Internal services/events? → Priority 2: Internal Integration (endpoints, schemas, jobs)
│ └─ Configuration/utilities? → Priority 3: Developer Reference (options, helpers, constants)
│
├─ Found undocumented component?
│ ├─ API/Controller? → Scan endpoints → Use api-docs-template → Priority 1
│ ├─ Service/Handler? → List responsibilities → Document contracts → Priority 2
│ ├─ Database/Entity? → Generate ER diagram → Document entities → Priority 2
│ ├─ Event/Message? → Map producer/consumer → Schema + examples → Priority 2
│ └─ Config/Utility? → Extract options → Defaults + descriptions → Priority 3
│
├─ Large codebase with many gaps?
│ └─ Use phase-based approach:
│ 1. Discovery Scan → Coverage Analysis
│ 2. Prioritize by impact (P1 → P2 → P3)
│ 3. Generate docs incrementally (critical first)
│ 4. Set up maintenance (PR templates, quarterly audits)
│
└─ Maintaining existing docs?
└─ Check for:
├─ Outdated docs (code changed, docs didn't) → Update or archive
├─ Orphaned docs (references non-existent code) → Remove
└─ Missing coverage → Add to backlog → Prioritize
Navigation: Discovery & Analysis
Component Discovery
Resource: resources/discovery-patterns.md
Language-specific patterns for discovering documentable components:
- .NET/C# codebase (Controllers, Services, DbContexts, Kafka handlers)
- Node.js/TypeScript codebase (Routes, Services, Models, Middleware)
- Python codebase (Views, Models, Tasks, Config)
- Go, Java/Spring, React/Frontend patterns
- Discovery commands (ripgrep, grep, find)
- Cross-reference discovery (Kafka topics, external APIs, webhooks)
Priority Framework
Resource: resources/priority-framework.md
Framework for prioritizing documentation efforts:
- Priority 1: External-Facing (public APIs, webhooks, auth) - Must document
- Priority 2: Internal Integration (services, events, database) - Should document
- Priority 3: Developer Reference (config, utilities) - Nice to have
- Prioritization decision tree
- Documentation debt scoring (formula + interpretation)
- Compliance considerations (ISO 27001, GDPR, HIPAA)
Audit Workflows
Resource: resources/audit-workflows.md
Systematic workflows for conducting audits:
- Phase 1: Discovery Scan (identify all components)
- Phase 2: Coverage Analysis (compare against existing docs)
- Phase 3: Generate Documentation (use templates)
- Phase 4: Maintain Coverage (PR templates, CI/CD checks)
- Audit types (full, incremental, targeted)
- Audit checklist (pre-audit, during, post-audit)
- Tools and automation
CI/CD Integration
Resource: resources/cicd-integration.md
Automated documentation checks and enforcement:
- PR template documentation checklists
- CI/CD coverage gates (GitHub Actions, GitLab CI, Jenkins)
- Pre-commit hooks (Git, Husky)
- Documentation linters (markdownlint, Vale, link checkers)
- Automated coverage reports
- Best practices and anti-patterns
Navigation: Templates
Coverage Report Template
Template: templates/coverage-report-template.md
Structured coverage report with:
- Executive summary (coverage %, key findings, recommendations)
- Coverage by category (API, Service, Data, Events, Infrastructure)
- Gap analysis (P1, P2, P3 with impact/effort)
- Outdated documentation tracking
- Documentation debt score
- Action plan (sprints + ongoing)
Documentation Backlog Template
Template: templates/documentation-backlog-template.md
Backlog tracking with:
- Status summary (In Progress, To Do P1/P2/P3, Blocked, Completed)
- Task organization by priority
- Templates reference (quick links)
- Effort estimates (Low < 2h, Medium 2-8h, High > 8h)
- Review cadence (weekly, bi-weekly, monthly, quarterly)
Output Artifacts
After running an audit, produce these artifacts:
Coverage Report - .codex/docs/audit/coverage-report.md
- Overall coverage percentage
- Detailed findings by category
- Gap analysis with priorities
- Recommendations and next audit date
Documentation Backlog - .codex/docs/audit/documentation-backlog.md
- In Progress items with owners
- To Do items by priority (P1, P2, P3)
- Blocked items with resolution path
- Completed items with dates
Generated Documentation - .codex/docs/ (organized by category)
- API reference (public/private)
- Event catalog (Kafka/messaging)
- Database schema (ER diagrams)
- Background jobs (runbooks)
Integration with Foundation Skills
This skill works closely with:
docs-codebase - Provides templates for:
Workflow:
- Use qa-docs-coverage to discover gaps
- Use docs-codebase templates to fill gaps
- Use qa-docs-coverage CI/CD integration to maintain coverage
Anti-Patterns to Avoid
- Documenting everything at once - Prioritize by impact, document incrementally
- Merging doc drafts without review - Drafts must be validated by owners and runnable in practice
- Ignoring outdated docs - Outdated docs are worse than no docs
- Documentation without ownership - Assign owners for each doc area
- Skipping the audit - Don't assume you know what's documented
- Blocking all PRs - Only block for P1 gaps, warn for P2/P3
Optional: AI / Automation
Do:
- Use AI to draft docs from code and tickets, then require human review and link/command verification.
- Use AI to propose “freshness diffs” and missing doc sections; validate by running the runbook steps.
Avoid:
- Publishing unverified drafts that include incorrect commands, unsafe advice, or hallucinated endpoints.
Success Criteria
Immediate (After Audit):
- Coverage report clearly shows gaps with priorities
- Documentation backlog is actionable and assigned
- Critical gaps (P1) identified with owners
Short-term (1-2 Sprints):
- All P1 gaps documented
- Documentation coverage > 80% for external-facing components
- Documentation backlog actively managed
Long-term (Ongoing):
- Quarterly audits show improving coverage (upward trend)
- PR documentation checklist compliance > 90%
- "How do I" questions in Slack decrease
- Onboarding time for new engineers decreases
Related Skills
Usage Notes
For Claude: When auditing a codebase:
- Start with discovery - Use resources/discovery-patterns.md to find components
- Calculate coverage - Compare discovered components vs existing docs
- Prioritize gaps - Use resources/priority-framework.md to assign P1/P2/P3
- Follow workflows - Use resources/audit-workflows.md for systematic approach
- Use templates - Reference docs-codebase for documentation structure
- Set up automation - Use resources/cicd-integration.md for ongoing maintenance
Remember: The goal is not 100% coverage, but useful coverage for the target audience. Document what developers, operators, and integrators actually need.
1---2name: qa-docs-coverage3description: Docs as QA: audit doc coverage and freshness, validate runbooks, and maintain documentation quality gates for APIs, services, events, and operational workflows.4---56# QA Docs Coverage (Dec 2025) — Discovery, Freshness, and Runbook Quality78**Modern Best Practices**: Phase-based audits, priority-driven documentation, automated coverage tracking910This skill provides operational workflows for auditing existing codebases, identifying documentation gaps, and systematically generating missing documentation. It complements [docs-codebase](../docs-codebase/SKILL.md) by providing the **discovery and analysis** layer.1112**Key Principle**: Templates exist in docs-codebase. This skill tells you **what** to document and **how to find** undocumented components.1314Core references: Diataxis documentation framework (https://diataxis.fr/) and OpenAPI (https://spec.openapis.org/oas/latest.html).1516---1718## When to Use This Skill1920Invoke this skill when:2122- Auditing documentation coverage for an existing codebase23- Generating documentation for legacy or underdocumented projects24- Creating documentation coverage reports25- Systematically documenting APIs, services, events, or database schemas26- Onboarding to a new codebase and need to understand what's documented vs not27- Preparing for compliance audits requiring documentation28- Setting up documentation maintenance processes2930---3132## Core QA (Default)3334### What “Docs as QA” Means3536- Treat docs as production quality artifacts: they reduce MTTR, enable safe changes, and define expected behavior.37- REQUIRED doc types for reliability and debugging ergonomics:38 - “How to run locally/CI” and “how to test”.39 - Operational runbooks (alerts, common failures, rollback).40 - Service contracts (OpenAPI/AsyncAPI) and schema examples.41 - Known issues and limitations (with workarounds).4243### Coverage Model (Risk-Based)4445- Prioritize docs by impact:46 - P1: externally consumed contracts and failure behavior (OpenAPI/AsyncAPI, auth, error codes, SLOs).47 - P2: internal integration and operational workflows (events, jobs, DB schema, runbooks).48 - P3: developer reference (configs, utilities).4950### Freshness Checks (Prevent Stale Docs)5152- Define owners, review cadence, and a “last verified” field for critical docs.53- CI economics [Inference]:54 - Block PRs only for missing/invalid P1 docs.55 - Warn for P2/P3 gaps; track via backlog.56- Run link checks and linting as fast pre-merge steps.5758### Runbook Testability5960- A runbook is “testable” if a new engineer can follow it and reach a measurable end state.61- Include: prerequisites, exact commands, expected outputs, rollback criteria, and escalation paths.6263### Do / Avoid6465Do:66- Keep docs close to code (same repo) and version them with changes.67- Use contracts and examples as the source of truth for integrations.6869Avoid:70- Large “doc-only” projects with no owners and no CI gates.71- Writing runbooks that cannot be executed in a sandbox/staging environment.7273## Quick Reference7475| Audit Task | Tool/Pattern | Output | Priority |76|------------|--------------|--------|----------|77| **Discover APIs** | `**/*Controller.cs`, `**/routes/**/*.ts` | Component inventory | Use [discovery-patterns.md](resources/discovery-patterns.md) |78| **Calculate Coverage** | Compare inventory vs docs | Coverage report | Use [coverage-report-template.md](templates/coverage-report-template.md) |79| **Prioritize Gaps** | External-facing → P1, Internal → P2, Config → P3 | Documentation backlog | Use [priority-framework.md](resources/priority-framework.md) |80| **Generate Docs** | docs-codebase templates | Documentation files | Use [audit-workflows.md](resources/audit-workflows.md) Phase 3 |81| **Automate Checks** | CI/CD gates, PR templates | Continuous coverage | Use [cicd-integration.md](resources/cicd-integration.md) |8283---8485## Decision Tree: Documentation Audit Workflow8687```text88User needs: [Audit Type]89 ├─ Starting fresh audit?90 │ ├─ Public-facing APIs? → Priority 1: External-Facing (OpenAPI, webhooks, error codes)91 │ ├─ Internal services/events? → Priority 2: Internal Integration (endpoints, schemas, jobs)92 │ └─ Configuration/utilities? → Priority 3: Developer Reference (options, helpers, constants)93 │94 ├─ Found undocumented component?95 │ ├─ API/Controller? → Scan endpoints → Use api-docs-template → Priority 196 │ ├─ Service/Handler? → List responsibilities → Document contracts → Priority 297 │ ├─ Database/Entity? → Generate ER diagram → Document entities → Priority 298 │ ├─ Event/Message? → Map producer/consumer → Schema + examples → Priority 299 │ └─ Config/Utility? → Extract options → Defaults + descriptions → Priority 3100 │101 ├─ Large codebase with many gaps?102 │ └─ Use phase-based approach:103 │ 1. Discovery Scan → Coverage Analysis104 │ 2. Prioritize by impact (P1 → P2 → P3)105 │ 3. Generate docs incrementally (critical first)106 │ 4. Set up maintenance (PR templates, quarterly audits)107 │108 └─ Maintaining existing docs?109 └─ Check for:110 ├─ Outdated docs (code changed, docs didn't) → Update or archive111 ├─ Orphaned docs (references non-existent code) → Remove112 └─ Missing coverage → Add to backlog → Prioritize113```114115---116117## Navigation: Discovery & Analysis118119### Component Discovery120121**Resource**: [resources/discovery-patterns.md](resources/discovery-patterns.md)122123Language-specific patterns for discovering documentable components:124125- .NET/C# codebase (Controllers, Services, DbContexts, Kafka handlers)126- Node.js/TypeScript codebase (Routes, Services, Models, Middleware)127- Python codebase (Views, Models, Tasks, Config)128- Go, Java/Spring, React/Frontend patterns129- Discovery commands (ripgrep, grep, find)130- Cross-reference discovery (Kafka topics, external APIs, webhooks)131132### Priority Framework133134**Resource**: [resources/priority-framework.md](resources/priority-framework.md)135136Framework for prioritizing documentation efforts:137138- Priority 1: External-Facing (public APIs, webhooks, auth) - Must document139- Priority 2: Internal Integration (services, events, database) - Should document140- Priority 3: Developer Reference (config, utilities) - Nice to have141- Prioritization decision tree142- Documentation debt scoring (formula + interpretation)143- Compliance considerations (ISO 27001, GDPR, HIPAA)144145### Audit Workflows146147**Resource**: [resources/audit-workflows.md](resources/audit-workflows.md)148149Systematic workflows for conducting audits:150151- Phase 1: Discovery Scan (identify all components)152- Phase 2: Coverage Analysis (compare against existing docs)153- Phase 3: Generate Documentation (use templates)154- Phase 4: Maintain Coverage (PR templates, CI/CD checks)155- Audit types (full, incremental, targeted)156- Audit checklist (pre-audit, during, post-audit)157- Tools and automation158159### CI/CD Integration160161**Resource**: [resources/cicd-integration.md](resources/cicd-integration.md)162163Automated documentation checks and enforcement:164165- PR template documentation checklists166- CI/CD coverage gates (GitHub Actions, GitLab CI, Jenkins)167- Pre-commit hooks (Git, Husky)168- Documentation linters (markdownlint, Vale, link checkers)169- Automated coverage reports170- Best practices and anti-patterns171172---173174## Navigation: Templates175176### Coverage Report Template177178**Template**: [templates/coverage-report-template.md](templates/coverage-report-template.md)179180Structured coverage report with:181182- Executive summary (coverage %, key findings, recommendations)183- Coverage by category (API, Service, Data, Events, Infrastructure)184- Gap analysis (P1, P2, P3 with impact/effort)185- Outdated documentation tracking186- Documentation debt score187- Action plan (sprints + ongoing)188189### Documentation Backlog Template190191**Template**: [templates/documentation-backlog-template.md](templates/documentation-backlog-template.md)192193Backlog tracking with:194195- Status summary (In Progress, To Do P1/P2/P3, Blocked, Completed)196- Task organization by priority197- Templates reference (quick links)198- Effort estimates (Low < 2h, Medium 2-8h, High > 8h)199- Review cadence (weekly, bi-weekly, monthly, quarterly)200201---202203## Output Artifacts204205After running an audit, produce these artifacts:2062071. **Coverage Report** - `.codex/docs/audit/coverage-report.md`208 - Overall coverage percentage209 - Detailed findings by category210 - Gap analysis with priorities211 - Recommendations and next audit date2122132. **Documentation Backlog** - `.codex/docs/audit/documentation-backlog.md`214 - In Progress items with owners215 - To Do items by priority (P1, P2, P3)216 - Blocked items with resolution path217 - Completed items with dates2182193. **Generated Documentation** - `.codex/docs/` (organized by category)220 - API reference (public/private)221 - Event catalog (Kafka/messaging)222 - Database schema (ER diagrams)223 - Background jobs (runbooks)224225---226227## Integration with Foundation Skills228229This skill works closely with:230231**[docs-codebase](../docs-codebase/SKILL.md)** - Provides templates for:232233- [api-docs-template.md](../docs-codebase/templates/api-reference/api-docs-template.md) - REST API documentation234- [adr-template.md](../docs-codebase/templates/architecture/adr-template.md) - Architecture decisions235- [readme-template.md](../docs-codebase/templates/project-management/readme-template.md) - Project overviews236- [changelog-template.md](../docs-codebase/templates/project-management/changelog-template.md) - Release history237238**Workflow**:2392401. Use **qa-docs-coverage** to discover gaps2412. Use **docs-codebase** templates to fill gaps2423. Use **qa-docs-coverage** CI/CD integration to maintain coverage243244---245246## Anti-Patterns to Avoid247248- **Documenting everything at once** - Prioritize by impact, document incrementally249- **Merging doc drafts without review** - Drafts must be validated by owners and runnable in practice250- **Ignoring outdated docs** - Outdated docs are worse than no docs251- **Documentation without ownership** - Assign owners for each doc area252- **Skipping the audit** - Don't assume you know what's documented253- **Blocking all PRs** - Only block for P1 gaps, warn for P2/P3254255---256257## Optional: AI / Automation258259Do:260- Use AI to draft docs from code and tickets, then require human review and link/command verification.261- Use AI to propose “freshness diffs” and missing doc sections; validate by running the runbook steps.262263Avoid:264- Publishing unverified drafts that include incorrect commands, unsafe advice, or hallucinated endpoints.265266---267268## Success Criteria269270**Immediate (After Audit)**:271272- Coverage report clearly shows gaps with priorities273- Documentation backlog is actionable and assigned274- Critical gaps (P1) identified with owners275276**Short-term (1-2 Sprints)**:277278- All P1 gaps documented279- Documentation coverage > 80% for external-facing components280- Documentation backlog actively managed281282**Long-term (Ongoing)**:283284- Quarterly audits show improving coverage (upward trend)285- PR documentation checklist compliance > 90%286- "How do I" questions in Slack decrease287- Onboarding time for new engineers decreases288289---290291## Related Skills292293- **[docs-codebase](../docs-codebase/SKILL.md)** - Templates for writing documentation (README, ADR, API docs, changelog)294- **[docs-ai-prd](../docs-ai-prd/SKILL.md)** - PRD and tech spec templates for new features295- **[software-code-review](../software-code-review/SKILL.md)** - Code review including documentation standards296297---298299## Usage Notes300301**For Claude**: When auditing a codebase:3023031. **Start with discovery** - Use [resources/discovery-patterns.md](resources/discovery-patterns.md) to find components3042. **Calculate coverage** - Compare discovered components vs existing docs3053. **Prioritize gaps** - Use [resources/priority-framework.md](resources/priority-framework.md) to assign P1/P2/P33064. **Follow workflows** - Use [resources/audit-workflows.md](resources/audit-workflows.md) for systematic approach3075. **Use templates** - Reference docs-codebase for documentation structure3086. **Set up automation** - Use [resources/cicd-integration.md](resources/cicd-integration.md) for ongoing maintenance309310**Remember**: The goal is not 100% coverage, but **useful coverage** for the target audience. Document what developers, operators, and integrators actually need.