文档质量审计覆盖技能 qa-docs-coverage

该技能用于审计代码库中的文档覆盖率、新鲜度和质量,通过自动化工具和最佳实践来发现和修复文档缺口,确保文档作为生产工件,支持QA流程。关键词:文档审计、覆盖率、新鲜度、QA、自动化、CI/CD、运行手册、API文档。

测试 0 次安装 0 次浏览 更新于 3/7/2026

名称: qa-docs-coverage 描述: “文档作为QA:审计文档覆盖率和新鲜度,验证运行手册,并为API、服务、事件和操作工作流维护文档质量门。包括AI辅助审计、可观察性模式和自动化覆盖跟踪。”

QA文档覆盖率(2026年1月) - 发现、新鲜度和运行手册质量

现代最佳实践(2026年1月)

  • 文档作为QA:将文档视为生产工件,具有所有者、审查节奏和CI质量门(链接/样式/合同/新鲜度)
  • 合同优先:在CI中验证OpenAPI/AsyncAPI/JSON模式;使用覆盖工具(Swagger Coverage / OpenAPI Coverage)检测缺口
  • 运行手册可测试性:每个运行手册必须在预发布环境中可执行;通过合成测试和事件演练进行验证
  • 自动化 + 可观察性:通过CI仪表板跟踪覆盖率百分比、新鲜度和漂移;通过PR清单防止回归

此技能提供操作工作流,用于审计现有代码库、识别文档缺口,并系统生成缺失文档。它通过提供发现和分析层来补充文档代码库

核心原则:模板存在于文档代码库中。此技能告诉您要记录什么以及如何找到未记录组件。

核心参考:Diataxis(文档结构)、OpenAPI(REST)、AsyncAPI(事件)。

何时使用

  • 审计现有仓库以查找缺失/过时的文档
  • 向CI/CD添加文档质量门(lint/链接检查/合同/新鲜度)
  • 验证运行手册以准备事件(减少MTTR)

何时避免

  • 在没有组件清单的情况下从头编写新文档(先使用发现)
  • 发布未经人工审查和命令/链接验证的AI生成文档

快速开始

使用渐进式披露:仅加载所需的参考文件。

  1. 发现组件:references/discovery-patterns.md
  2. 衡量覆盖率 + 缺口:references/audit-workflows.md(阶段1-2)和assets/coverage-report-template.md
  3. 优先处理工作:references/priority-framework.md
  4. 创建可操作的待办事项:assets/documentation-backlog-template.md文档代码库中的模板
  5. 防止回归:references/cicd-integration.mdreferences/freshness-tracking.md

可选(推荐脚本;从被审计仓库运行):

  • 本地链接检查:python3 frameworks/shared-skills/skills/qa-docs-coverage/scripts/check_local_links.py docs/
  • 新鲜度报告:python3 frameworks/shared-skills/skills/qa-docs-coverage/scripts/docs_freshness_report.py --docs-root docs/

大型代码库审计(10万-100万行代码)

对于大型代码库,核心原则是:LLM不需要整个代码库 - 它们需要当前任务的正确上下文

阶段0:上下文提取

在开始审计之前,使用工具提取代码库上下文:

工具 命令/URL 用例
gitingest 将“github.com”替换为“gitingest.com 快速完整仓库转储
repo2txt https://github.com/kirill-markin/repo2txt 选择性文件提取
tree `tree -L 3 --dirsfirst -I 'node_modules .git

分层审计策略

对于单体仓库和大型项目,分层审计:

1. 根级别(第1周)
   ├── AGENTS.md / CLAUDE.md 存在?
   ├── README.md 质量
   ├── ARCHITECTURE.md 存在?
   └── docs/ 目录结构

2. 模块级别(第2-3周)
   ├── 每个主要目录有 AGENTS.md?
   ├── API 文档完整?
   └── 服务边界记录?

3. 组件级别(第4周+)
   ├── 单个组件 READMEs
   ├── 代码注释质量
   └── 测试文档

跨平台文档审计

检查多工具兼容性:

[ ] AGENTS.md 存在(跨平台标准)
[ ] CLAUDE.md 存在或符号链接到 AGENTS.md
[ ] GEMINI.md 符号链接(如果使用 Gemini)
[ ] 文件大小小于 300 行(使用 @references 表示深度)
[ ] 每个主要模块的子目录文档

大型代码库覆盖率检查清单

大型代码库审计检查清单

上下文提取:
[ ] 生成代码库转储(gitingest/repo2txt)
[ ] 创建目录结构概述
[ ] 识别主要模块/服务

根文档:
[ ] AGENTS.md / CLAUDE.md 存在且 <300 行
[ ] README.md 包含快速开始
[ ] ARCHITECTURE.md 包含系统概述
[ ] 配置跨平台符号链接

模块文档:
[ ] 每个主要目录有 AGENTS.md
[ ] API 端点记录
[ ] 数据库模式记录
[ ] 事件/消息合同记录

维护:
[ ] 文档所有权分配
[ ] 新鲜度跟踪启用
[ ] CI/CD 检查配置

来源Anthropic Claude 代码最佳实践OpenAI AGENTS.md 指南


核心QA(默认)

“文档作为QA”的含义

  • 将文档视为生产质量工件:它们减少MTTR、支持安全变更,并定义预期行为。
  • 可靠性和调试人体工学所需文档类型:
    • “如何在本地/CI运行”和“如何测试”
    • 操作运行手册(警报、常见故障、回滚)
    • 服务合同(OpenAPI/AsyncAPI)和模式示例
    • 已知问题和限制(附带解决方法)

覆盖率模型(基于风险)

  • 按影响优先级记录文档:
    • P1:外部消费合同和故障行为(OpenAPI/AsyncAPI、身份验证、错误代码、SLOs)。
    • P2:内部集成和操作工作流(事件、作业、数据库模式、运行手册)。
    • P3:开发者参考(配置、实用程序)。

新鲜度检查(防止文档过时)

  • 为关键文档定义所有者、审查节奏和“最后验证”字段。
  • CI经济性:
    • 仅阻止PR缺少/无效的P1文档。
    • 警告P2/P3缺口;通过待办事项跟踪。
  • 运行链接检查和linting作为快速预合并步骤。

运行手册可测试性

  • 如果新工程师可以遵循运行手册并达到可测量的最终状态,则“可测试”。
  • 包括:先决条件、精确命令、预期输出、回滚标准、和升级路径。

要做 / 避免

要做

  • 保持文档接近代码(同一仓库)并与变更一起版本化。
  • 使用合同和示例作为集成的真相来源。

避免

  • 大型“仅文档”项目没有所有者和CI门。
  • 编写无法在沙盒/预发布环境中执行的运行手册。

快速参考

审计任务 工具/模式 输出 参考
发现APIs **/*Controller.cs, **/routes/**/*.ts 组件清单 discovery-patterns.md
计算覆盖率 Swagger Coverage, 手动差异 覆盖率报告 coverage-report-template.md
优先处理缺口 外部 → P1, 内部 → P2, 配置 → P3 文档待办事项 priority-framework.md
生成文档 AI辅助 + 文档代码库模板 文档文件 audit-workflows.md 阶段3
验证合同 Spectral, AsyncAPI CLI, OpenAPI diff Lint报告 cicd-integration.md
跟踪新鲜度 Git blame, 最后修改元数据 陈旧度报告 freshness-tracking.md
自动化检查 GitHub Actions, GitLab CI, PR模板 持续覆盖 cicd-integration.md

决策树:文档审计工作流

用户需求:[审计类型]
    ├─ 开始新审计?
    │   ├─ 公开APIs? → 优先级1:外部面向(OpenAPI、webhooks、错误代码)
    │   ├─ 内部服务/事件? → 优先级2:内部集成(端点、模式、作业)
    │   └─ 配置/实用程序? → 优先级3:开发者参考(选项、助手、常量)
    │
    ├─ 找到未记录组件?
    │   ├─ API/控制器? → 扫描端点 → 使用 api-docs-template → 优先级1
    │   ├─ 服务/处理程序? → 列出职责 → 记录合同 → 优先级2
    │   ├─ 数据库/实体? → 生成ER图 → 记录实体 → 优先级2
    │   ├─ 事件/消息? → 映射生产者/消费者 → 模式 + 示例 → 优先级2
    │   └─ 配置/实用程序? → 提取选项 → 默认值 + 描述 → 优先级3
    │
    ├─ 大型代码库有多个缺口?
    │   └─ 使用基于阶段的方法:
    │       1. 发现扫描 → 覆盖率分析
    │       2. 按影响优先级(P1 → P2 → P3)
    │       3. 增量生成文档(关键优先)
    │       4. 设置维护(PR模板、季度审计)
    │
    └─ 维护现有文档?
        └─ 检查:
            ├─ 过时文档(代码已变,文档未变) → 更新或归档
            ├─ 孤立文档(引用不存在代码) → 删除
            └─ 缺失覆盖率 → 添加到待办事项 → 优先处理

导航:发现与分析

组件发现

资源references/discovery-patterns.md

语言特定模式,用于发现可记录组件:

  • .NET/C# 代码库(控制器、服务、DbContexts、Kafka 处理程序)
  • Node.js/TypeScript 代码库(路由、服务、模型、中间件)
  • Python 代码库(视图、模型、任务、配置)
  • Go、Java/Spring、React/前端模式
  • 发现命令(ripgrep、grep、find)
  • 交叉引用发现(Kafka主题、外部APIs、webhooks)

优先级框架

资源references/priority-framework.md

优先处理文档工作的框架:

  • 优先级1:外部面向(公开APIs、webhooks、身份验证) - 必须记录
  • 优先级2:内部集成(服务、事件、数据库) - 应该记录
  • 优先级3:开发者参考(配置、实用程序) - 好有
  • 优先化决策树
  • 文档债务评分(公式 + 解释)
  • 合规考虑(ISO 27001、GDPR、HIPAA)

审计工作流

资源references/audit-workflows.md

执行审计的系统工作流:

  • 阶段1:发现扫描(识别所有组件)
  • 阶段2:覆盖率分析(与现有文档比较)
  • 阶段3:生成文档(使用模板)
  • 阶段4:维护覆盖率(PR模板、CI/CD检查)
  • 审计类型(完整、增量、目标)
  • 审计检查清单(审计前、期间、后)
  • 工具和自动化

CI/CD集成

资源references/cicd-integration.md

自动化文档检查和执行:

  • PR模板文档检查清单
  • CI/CD覆盖率门(GitHub Actions、GitLab CI、Jenkins)
  • 预提交钩子(Git、Husky)
  • 文档linter(markdownlint、Vale、链接检查器)
  • API合同验证(Spectral、AsyncAPI CLI)
  • 覆盖工具(Swagger Coverage、OpenAPI Coverage)
  • 自动化覆盖率报告
  • 最佳实践和反模式

新鲜度跟踪

资源references/freshness-tracking.md

跟踪文档陈旧度和代码漂移:

  • 新鲜度元数据标准(last_verified、所有者、review_cadence)
  • 基于Git的新鲜度分析脚本
  • 按优先级陈旧度阈值(P1: 30天、P2: 60天、P3: 90天)
  • CI/CD新鲜度门(GitHub Actions、GitLab CI)
  • 可观察性仪表板和指标
  • 自动化文档提醒机器人

导航:模板

覆盖率报告模板

模板assets/coverage-report-template.md

结构化覆盖率报告包含:

  • 执行摘要(覆盖率百分比、关键发现、建议)
  • 按类别覆盖率(API、服务、数据、事件、基础设施)
  • 缺口分析(P1、P2、P3带影响/努力)
  • 过时文档跟踪
  • 文档债务评分
  • 行动计划(冲刺 + 持续)

文档待办事项模板

模板assets/documentation-backlog-template.md

待办事项跟踪包含:

  • 状态摘要(进行中、待办 P1/P2/P3、受阻、完成)
  • 按优先级任务组织
  • 模板参考(快速链接)
  • 努力估计(低 < 2小时、中 2-8小时、高 > 8小时)
  • 审查节奏(每周、双周、每月、季度)

输出工件

运行审计后,产生这些工件:

  1. 覆盖率报告 - .codex/docs/audit/coverage-report.md

    • 整体覆盖率百分比
    • 按类别详细发现
    • 带优先级缺口分析
    • 建议和下个审计日期
  2. 文档待办事项 - .codex/docs/audit/documentation-backlog.md

    • 进行中项目带所有者
    • 待办项目按优先级(P1、P2、P3)
    • 受阻项目带解决路径
    • 完成项目带日期
  3. 生成文档 - .codex/docs/(按类别组织)

    • API参考(公开/私有)
    • 事件目录(Kafka/消息传递)
    • 数据库模式(ER图)
    • 后台作业(运行手册)

与基础技能集成

此技能与以下技能紧密合作:

文档代码库 - 提供模板:

工作流

  1. 使用qa-docs-coverage发现缺口
  2. 使用文档代码库模板填充缺口
  3. 使用qa-docs-coverage CI/CD集成维护覆盖率

要避免的反模式

  • 一次性记录所有内容 - 按影响优先级,增量记录
  • 合并未经审查的文档草稿 - 草稿必须由所有者验证并在实践中可运行
  • 忽略过时文档 - 过时文档比没有文档更糟
  • 文档没有所有者 - 为每个文档区域分配所有者
  • 跳过审计 - 不要假设您知道记录了什么
  • 阻止所有PR - 仅阻止P1缺口,对P2/P3警告

可选:AI / 自动化

要做

  • 使用AI从代码和工单起草文档,然后需要人工审查和链接/命令验证。
  • 使用AI建议“新鲜度差异”和缺失文档部分;通过运行运行手册步骤进行验证。

避免

  • 发布未验证的草稿,包括不正确命令、不安全建议或虚构端点。

成功标准

立即(审计后)

  • 覆盖率报告清晰显示带优先级的缺口
  • 文档待办事项可操作且已分配
  • 关键缺口(P1)已识别带所有者

短期(1-2个冲刺)

  • 所有P1缺口已记录
  • 外部面向组件文档覆盖率 > 80%
  • 文档待办事项积极管理

长期(持续)

  • 季度审计显示覆盖率改善(上升趋势)
  • PR文档检查清单合规性 > 90%
  • Slack中“如何做”问题减少
  • 新工程师入职时间减少

相关技能


使用说明

对于Claude:审计代码库时:

  1. 从发现开始 - 使用references/discovery-patterns.md找到组件
  2. 计算覆盖率 - 比较发现组件与现有文档
  3. 优先处理缺口 - 使用references/priority-framework.md分配P1/P2/P3
  4. 遵循工作流 - 使用references/audit-workflows.md进行系统方法
  5. 使用模板 - 参考文档代码库的文档结构
  6. 设置自动化 - 使用references/cicd-integration.md进行持续维护

记住:目标不是100%覆盖率,而是为目标受众提供有用覆盖率。记录开发者、操作员和集成商实际需要的内容。