chore(P14-8): 完成运营化与验收收口
这个提交包含在:
@@ -33,6 +33,7 @@ RUN_AUDIT_REGRESSION=1 RUN_OCR_REGRESSION=1 ./scripts/regression-all.sh --json-r
|
||||
|
||||
## 排障建议
|
||||
|
||||
- 回归失败时优先下载 artifact,检查 `overall.failed` 与 `steps[].status="failed"`。
|
||||
- 若报告未生成,检查回归步骤是否在脚本启动前失败(例如服务未就绪)。
|
||||
- **优先查看 Job Summary**:流水线完成后会自动在 GitHub Actions 运行页面的 Summary 面板输出结构化摘要,可直接看到由于哪些 `steps` 导致阻断失败。
|
||||
- 回归大面积或异常失败时,请优先下载 artifact 中的 `report.json` 进一步比对 `overall.failed` 与具体抛出的退出码。
|
||||
- 若报告未生成,检查回归步骤是否在脚本启动前失败(例如服务未就绪,数据库连不上)。
|
||||
- 若报告字段缺失,优先比对 `server/scripts/lib/regression-report.sh` 与 schema 版本。
|
||||
|
||||
@@ -0,0 +1,21 @@
|
||||
# Testing Strategy
|
||||
|
||||
## Coverage Gate Policy
|
||||
为保障核心系统迭代质量,目前系统配备了渐进式的覆盖率门禁(Coverage Gate)。
|
||||
|
||||
- **阈值标准**:
|
||||
核心关键模块代码行覆盖率要求 >= 70% 才能算作合格。关键模块目前指代:
|
||||
- `src/services/featureFlags`
|
||||
- `src/services/verification`
|
||||
- `src/services/integrations/dispatcher.js`
|
||||
- `src/services/integrations/outbox.js`
|
||||
- `src/services/integrations/erp.js`
|
||||
- `src/utils/workflow.js`
|
||||
|
||||
- **阻断策略**:
|
||||
1. 在**Pull Request (PR)**中,覆盖率达不到门禁要求时系统将挂出 Warn 告警,但不会中断构建进度(即不强制干预协作交付)。
|
||||
2. 在**main 分支**中,低于上述覆盖率标准将抛出致命错误并标记部署失败(Error/Fail Block)。此外,全量域仅采取柔性报告并不强制失败。
|
||||
|
||||
## CI Integration
|
||||
流水线集成了 Vitest `npm run test:coverage` 与 node 自定义的 `scripts/coverage_gate.js` 保障上述策略。执行结果会自动附着于 Actions Job Summary。
|
||||
机房脚本将自动解析 coverage-summary.json 从而提取对应业务模块的 `lines.pct` 并在 GITHUB_REF_NAME 为依据判定通过。
|
||||
@@ -0,0 +1,11 @@
|
||||
# Tracing Strategy
|
||||
|
||||
## OpenTelemetry Integration
|
||||
为了未来能进行细粒度的分布式追踪监控,后台程序目前内嵌了 OpenTelemetry (OTel) 的 `sdk-node` 及自动集成框架 `auto-instrumentations-node`。
|
||||
|
||||
- OTel 的启动是 **Fail-Safe** 的。所有链路追踪功能受环境变量硬闸 `OTEL_TRACES_ENABLED` 控制。
|
||||
- 该环境变量默认情况为关闭。开启 `OTEL_TRACES_ENABLED=true` 时,应用将自动在 Console 输出现行 Span。在将来亦可快速配置通过 OTLP 格式投递到远端拓扑分析平台(如 Jaeger、DataDog 等)。
|
||||
|
||||
## 验证与试运行
|
||||
- 可执行 `cd server && node --check src/observability/tracing.js` 验证基础语法挂载。
|
||||
- 在开发态下,如配置 `OTEL_TRACES_ENABLED=true`启动服务,则客户端发出的接口请求均会在服务端控制台打印包含 Trace ID、Span ID 的追踪结果日志。由此表明 HTTP 拦截器正在正确解析和处理 `traceparent` 协议报文头。
|
||||
在新工单中引用
屏蔽一个用户