Web工具交付前的自查Checklist

来自OmicsWiki
Liuhebin讨论 | 贡献2026年7月3日 (五) 07:25的版本 (创建页面,内容为“适用范围:omicscloud metabolite web 工具及同类 Shiny/R 后端分析工具。 <nowiki>##</nowiki> 1. 基础信息 - [ ] 项目 ID 已记录。 - [ ] 用户 ID 已记录。 - [ ] VM app 路径已记录。 - [ ] 项目数据路径已记录。 - [ ] 当前代码版本或文件修改时间已记录。 - [ ] 已明确本次是完整分析重跑还是 report-only 重渲染。 <nowiki>##</nowiki> 2. 代码自查 - [ ] 主脚本可 parse。 ```bash…”)
(差异) ←上一版本 | 最后版本 (差异) | 下一版本→ (差异)
跳到导航 跳到搜索

适用范围:omicscloud metabolite web 工具及同类 Shiny/R 后端分析工具。

## 1. 基础信息

- [ ] 项目 ID 已记录。

- [ ] 用户 ID 已记录。

- [ ] VM app 路径已记录。

- [ ] 项目数据路径已记录。

- [ ] 当前代码版本或文件修改时间已记录。

- [ ] 已明确本次是完整分析重跑还是 report-only 重渲染。

## 2. 代码自查

- [ ] 主脚本可 parse。

```bash

Rscript --vanilla -e "invisible(parse('etc/dep/metabolite_script.r')); cat('parse ok\n')"

```

- [ ] 前端函数可 parse。

```bash

Rscript --vanilla -e "invisible(parse('etc/dep/metabolite_func.r')); cat('parse ok\n')"

```

- [ ] Rmd 模板可 purl/parse。

- [ ] `git diff --check` 无空白错误。

- [ ] 无临时调试代码残留。

- [ ] 无未关闭的强制 `stop()`、`browser()`、`debug()`。

## 4. 输入数据自查

- [ ] 原始数据文件存在。

- [ ] 样本信息表存在。

- [ ] 样本名与原始数据列名可匹配。

- [ ] Condition 非空。

- [ ] QC 标识一致。

- [ ] 单组/纯鉴定项目允许 comparison 为空。

- [ ] 多组差异项目 comparison 定义完整。

- [ ] KEGG/HMDB/LMSD/name/peak/mz/rt 列识别正确。

- [ ] 无把 name/peak/mz/rt 误识别为 KEGG 列。

## 5. 运行日志自查

- [ ] 日志中无 `Execution halted`。

- [ ] 日志中无 `Error in`。

- [ ] 日志中无未处理 `REPORT_RENDER_ERROR`。

- [ ] 如出现 `REPORT_RENDER_WARNING`,已确认是非阻塞 warning。

- [ ] 如出现 `pandoc 137`,已确认 fallback HTML 已生成。

- [ ] 日志中有最终完成状态或报告生成状态。

示例:

```bash

grep -n "Error in\|Execution halted\|REPORT_RENDER_ERROR\|Report render status" "$LOG" | tail -120

```

## 6. 结果文件自查

- [ ] `Report/result.rda` 存在且更新时间正确。

- [ ] `Report/report.html` 存在且非错误页。

- [ ] `Report/report_server.html` 存在且非错误页。

- [ ] `Report/report.docx` 存在且可打开。

- [ ] `Report/report.zip` 存在且可解压。

- [ ] 差异数量统计表存在。

- [ ] 分组对比结果表存在。

- [ ] 差异筛选结果表存在。

- [ ] Venn/UpSet 图片存在。

- [ ] QC 图片存在。

- [ ] PCA/PLS-DA/OPLS-DA 图片和 summary 表存在。

- [ ] KEGG/MSEA 图片和表格按项目类型存在。

- [ ] 物质分类图片和表格存在。

示例:

```bash

ls -lh "$PROJECT_ROOT/Report"/result.rda \

       "$PROJECT_ROOT/Report"/report.html \

       "$PROJECT_ROOT/Report"/report_server.html \

       "$PROJECT_ROOT/Report"/report.docx \

       "$PROJECT_ROOT/Report"/report.zip

```

## 7. 报告内容自查

- [ ] 首页或参数信息完整。

- [ ] `1.2 鉴定信息` 数量正确。

- [ ] `1.3 差异信息` 数量正确。

- [ ] 单离子/双离子显示正确。

- [ ] merge/split/sjtu/omicsolution 路线对应正确。

- [ ] 纯鉴定报告不展示不应存在的差异比较章节。

- [ ] 差异项目报告展示完整差异章节。

- [ ] Venn/UpSet 与差异数量口径一致。

- [ ] 图表没有空白、缺图或错误占位。

- [ ] 表格分页、列名、横向滚动正常。

- [ ] 中文无乱码。

- [ ] HTML 不是 rmarkdown 错误页。

- [ ] docx 不是空白或半截报告。

## 8. 格式排版自查

- [ ] 全文标题层级一致。

- [ ] 字体风格一致。

- [ ] 表格字体、边框、宽度一致。

- [ ] 图片比例正常,无拉伸变形。

- [ ] 图片标题和说明完整。

- [ ] HTML 左侧目录或 tabset 正常。

- [ ] 按钮、分页、搜索框不遮挡正文。

- [ ] 页面宽度和横向滚动符合预期。

## 9. 功能流程自查

- [ ] 上传数据流程可走通。

- [ ] 实验设计页面可保存样本表。

- [ ] 单组纯鉴定可进入下一步。

- [ ] 多组差异项目必须填写 comparison。

- [ ] 分析选项能正确保存。

- [ ] 预处理选项能正确保存。

- [ ] 数据筛选选项能正确保存。

- [ ] Apply Project 后后台任务正常启动。

- [ ] 任务状态能正确更新。

- [ ] 报告入口可访问最新报告。

## 10. 专项回归自查

### 10.1 demo3 split 单离子

- [ ] `raw_feature_num=1483`。

- [ ] `remove_missing_num=1481`。

- [ ] `preprocess_feature_num=1152`。

- [ ] `preprocess_feature_num_name=1073`。

- [ ] 参考 VM 差异数量为 `234/370/370`。

- [ ] Venn/UpSet 与参考 VM 一致。

- [ ] 其余非功能分析结果保持一致。

### 10.2 merge 纯鉴定

- [ ] 单组 Condition 可继续。

- [ ] comparison 可为空。

- [ ] 无 `names attribute [5]` 报错。

- [ ] 报告包含纯鉴定应有章节。

- [ ] 报告不包含不应存在的差异比较错误章节。

### 10.3 报告渲染

- [ ] 正常 pandoc HTML 可生成。

- [ ] pandoc 失败时 fallback HTML 可生成。

- [ ] docx 可生成。

- [ ] zip 可生成。

## 11. 交付自查

- [ ] 修改文件清单已列出。

- [ ] 测试项目 ID 已列出。

- [ ] 日志路径已记录。

- [ ] 报告路径已记录。

- [ ] 已更新问题解决 Excel。

## 12. 技术审核签收表

```text

项目 ID:

检查人:

检查时间:

代码 parse:通过 / 不通过

完整重跑:通过 / 不通过

Error 等级日志:无 / 有

报告文件完整:通过 / 不通过

报告格式排版:通过 / 不通过

zip 可解压:通过 / 不通过

技术审核结论:通过 / 需整改

备注:

```