Communitygithub.com

1184898069/large-data-safety-review

基于证据的 Codex 技能,用于在数据密集型功能中出现生产事故之前发现大规模风险。

large-data-safety-review 是什么?

该技能专为 Codex 等 AI 编程助手设计,旨在系统性地审查数据密集型功能的全链路数据路径,确保其在生产环境下具有有界行为。它能帮助开发者提前发现潜在的性能瓶颈、资源耗尽、数据损坏等生产级风险,避免其演变为严重事故。技能支持对前端、后端、数据库及 API 等各层进行证据驱动的审查,并提供了一个标准化的分级报告框架。整个工作流程遵循只读原则,通过诊断探针、逐层数据路径跟踪和候选发现验证等步骤,最终生成包含严重性评级和修复建议的结构化报告。

兼容平台~Claude Code✓Codex CLI~Cursor
npx skills add 1184898069/large-data-safety-review

在你喜欢的 AI 中提问

打开一个已预加载此 Agent Skill 的新对话。

文档

大数据安全审查

审查完整数据路径,确保生产行为有界。报告基于证据的发现、已确认的安全路径、缺失的证据以及经过测试或未测试的边界。

操作规则

  • 默认只读。不修改代码、依赖项、数据库、生产设置或外部系统。
  • 不安装依赖项。
  • 绝不将缺失的证据视为安全证明。将受影响的层标记为“未经验证”。
  • 未经运行时、负载测试、查询计划或同等证据,不得声称支持某种规模。
  • 将模式匹配视为候选,而非最终发现。在报告之前,先阅读周围的数据流。
  • 优先使用用户作用域或当前差异。将发现、阅读、命令和输出范围控制在有界之内。

工作流程

1. 确定审查范围

阅读请求、仓库说明、指定文件、当前差异以及直接的生产者和消费者。说明已审查、已排除和缺失的层。

2. 构建规模档案

记录当前数据量、设计限制、请求频率、并发度、增长趋势、数据项大小、交互目标以及资源限制。如果某些值缺失,应在诊断假设中与已确认的值分开标注。

当用户证据缺失时,仅使用以下诊断探针:

  • 10,000,000 存储行。
  • 100,000 匹配行。
  • 100 个并发交互请求。
  • 页面大小 100,硬上限 200。
  • 100,000 逻辑表行,且 DOM 行数有界。
  • 1,000,000 导出或批处理行。
  • 10 倍增长。

3. 跟踪数据路径

跟踪:

数据源 -> 查询/数据访问 -> 服务/任务 -> API/序列化 -> 状态管理 -> 页面/表格/导出

说明哪些层有证据支持。

4. 审查每一层

使用 references/review-checklist.md 进行跨栈审查。

仅当路径包含 Vue、axios、vxe-table、浏览器状态或数据密集型表格渲染时,加载 references/vue2-axios-vxe-table.md。

仅当路径包含 ASP.NET WebAPI、EF Core、LINQ、控制器、服务、仓库、导出或后台任务时,加载 references/dotnet-webapi-efcore.md。

默认不加载所有参考文献。

检查存储/查询范围、物化、投影、索引、稳定分页、负载大小、取消、超时、有界并发、背压、幂等性、重试、状态副本、计算工作量、DOM 大小、加载状态以及降级。

5. 验证候选发现

对于每个候选:

  1. 识别增长的输入或并发维度。
  2. 确认过滤、投影、分页、缓冲或渲染发生的位置。
  3. 检查现有的硬限制及其是否经过测试。
  4. 跟踪取消、超时、重试和错误传播。
  5. 当代码可用时,记录确切的文件及行号证据。
  6. 如果上下文证明路径是有界的,则拒绝该候选。

6. 对证据和严重性进行分类

证据状态:

  • 已确认:直接的代码、SQL、配置、测试、运行时或设计证据。
  • 很可能:路径证据很强,但缺少一个上游或下游的产物。
  • 未经验证:必要材料不可用。

严重性:

  • P0:在可达路径上确认存在数据损坏、生产不可用或不受控制的资源耗尽。
  • P1:在已知或诊断规模下,很可能发生超时、OOM、数据库过载、严重的交互失败或错误结果。
  • P2:随着容量或并发度的增长,出现有意义的性能降级,但存在当前裕量或替代路径。
  • P3:缺少限制、可观测性、测试或可维护性证据,且未展示严重的失败。

不要仅根据诊断假设分配 P0 或 P1。将严重但缺乏支持的风险放在高优先级验证项下。

7. 编写报告

加载 references/output-contract.md 并严格遵循。

每个发现必须包括:

  • 严重性和证据状态。
  • 层及稳定的根因代码。
  • 证据位置。
  • 触发规模。
  • 影响。
  • 最低限度的修复方案。
  • 验证方法。

仅在证据支持时才列出已确认的安全路径。

仓库和输出限制

  • 最多枚举 100,000 条路径作为元数据;超过此数量时,按目录和扩展名缩小范围。
  • 每次内容传递最多扫描 20,000 个源文件或 500 MiB 文本,以先到者为准。
  • 最多保留 500 个候选匹配;其余的聚合记录并注明截断数量。
  • 每次传递最多深入读取 200 个候选文件。
  • 使用 60 秒的默认命令超时;超时后缩小范围。
  • 每个根因最多展开 50 个发现和 5 个代表性的证据位置。
  • 跳过依赖项、生成的输出、归档文件、二进制文件、构建目录和大型压缩文件。
  • 报告每次排除和截断,注明原始数量、保留数量和原因。

缺失证据和失败情况

  • 仅前端:审查前端,并生成一个“未经验证”的后端/API/数据库契约。
  • 仅后端:审查后端,并将消费者渲染和交互标记为“未经验证”。
  • 仓库过大:从差异、路由、客户端、查询、导出和渲染入口点缩小范围。
  • 命令超时:减少批处理或路径范围,而不是反复增加超时。
  • 文档与代码冲突:优先采用代码、测试、查询计划和运行时证据;报告文档偏差。
  • 敏感材料:不重复密码或记录;使用脱敏的位置描述。

相关技能