可复现分析与工作流管理 - SpiralKernel/bioinfo-wiki GitHub Wiki
可复现分析与工作流管理
更新:2026-10-13;状态:可用;验证范围:人工注释Snakemake9.27.0首次运行、无变化重跑及缺失输出恢复已执行;集群/云未测。
把输入、依赖、参数和产物放进可追踪的运行记录,才能区分计算复现与结果解释。
最低可复现记录
保存代码提交、命令、输入校验值、软件与参考版本、参数、随机种子、日志和输出目录。随机种子并不保证跨软件版本或不同并行实现完全相同,应同时记录环境。
从脚本到依赖图
工作流系统按输入输出依赖调度任务。已运行的最小注释工作流与Snakemake恢复把SnpEff构库、后果注释、bedtools区间与报告连为四条计算规则,代码在项目examples/workflows/annotation。
首次执行四条计算规则;无变化重跑没有任务;删除独立验证目录中的生成后果表后,只重跑注释与报告,数据库和区间结果复用。all显式列出交付表,避免最终报告存在却不恢复缺失表。具体操作与范围见Snakemake规则配置与断点续跑。
本轮验证为本地单核缺失输出恢复,未验证所有崩溃情形、集群或容器。规则声明和数据校验仍需明确编写,不能假定工作流自动识别每一类损坏。
检查点
失败退出不能留下冒充完成的产物,重要任务使用临时文件后原子替换。恢复运行前确认输入和参数是否改变;保留实际使用的配置,不依赖口头记录。
容器固定软件环境,但不固定网络下载内容和数据库版本。大型数据可以用校验值和资源清单管理,不需要全部塞进 Git。