12 KiB
Executable File
bbav5 项目清理候选清单
生成时间:2026-05-22
范围:/home/xia-lab/wutx/00test/bbav5_0502_Yang_Tihuan.7880
说明:本文件是只读扫描后的清理候选汇总,不代表已经删除任何文件。当前目录不是 Git 仓库,因此“是否使用”主要依据静态引用扫描、入口注册表、文件名模式和目录用途判断。真正清理前建议先整体归档或移动到隔离目录,再跑核心流程冒烟测试。
结论摘要
可以优先整理的低风险类别:
- Python 缓存:所有
__pycache__/和*.pyc。 - 显式备份/历史副本:
*.bak*、*.backup.*、*.before_*、*_backup*、apps/web/vue3copy0416/、apps/web/vue3copy0417/、backups/。 - 历史运行产物:
workspace/、input/、final/、reproducibility/、logs/、cost_logs/中的旧 job、日志和 manifest 归档。 - 明显实验/演示/手动测试脚本:顶层
test_*.sh、test_*.py、example_*、pipeline_backend_patch.py等。 - 大体量资源和资料:
paper/、models/、scripts/bge-m3-model/、memory_storage/,这些不一定无用,但更适合放到外部资料/缓存目录,不建议混在代码根目录。
不建议直接清理的核心代码:
apps/cli/run_*.py中大多数仍被apps/web/pipeline_backend.py或gfa_core/mas/tools/stage_tools.py调用。gfa_core/mas/、gfa_core/pipelines/、gfa_core/api_clients/下当前无备份后缀的源码。skills/*/run.py、skills/*/SKILL.md、skills/*/config.yaml,这些是阶段封装的一部分。scripts/下被 CLI 调用的 R/Python 工具脚本,例如绘图、FASTA/GFF 处理、motif/domain/tree 相关工具。
入口和仍在使用的文件依据
主要运行入口:
- 前端/后端:
apps/web/vue3/main.py - 后端阶段执行:
apps/web/pipeline_backend.py - Agent 阶段注册:
gfa_core/mas/tools/stage_tools.py - 阶段目录和依赖:
gfa_core/mas/stage_catalog.py - Celery 任务:
tasks.py、celery_app.py
明确注册或调用的 CLI 脚本包括:
- 核心基因家族阶段:
run_identify.py、run_phylogeny.py、run_motif.py、run_domain.py、run_structure.py、run_promoter.py、run_synteny.py、run_interspecies_synteny.py、run_karyotype.py、run_combo.py、run_ppi.py、run_ppi_v2.py、run_expression.py、run_pep.py、run_kaks_v2.py、run_ortholog.py、run_summary.py。 - 准备/辅助阶段:
run_genome_prepare.py、run_prepare_substep.py、run_ncbi_fetch_sequences.py、run_sequence_extract_by_id.py、run_msa_region_plot.py、run_reference_classification.py、run_subfamily_confirm.py、run_identify_refine.py。 - RNA-seq 阶段:
run_rnaseq_qc.py、run_rnaseq_align.py、run_rnaseq_quant.py、run_rnaseq_sample_qc.py、run_rnaseq_de.py、run_rnaseq_enrich.py、run_rnaseq_fgsea.py、run_rnaseq_wgcna.py、run_rnaseq_candidate_family.py。 - 其他 API/配置入口:
run_annotation.py、run_config_autofill.py、run_samples_autofill.py。
注意:apps/cli/run_rnaseq_enrich_v2.py 在 AGENTS.md 中被描述为 RNA-seq 富集入口,但当前 pipeline_backend.py 和 stage_tools.py 实际调用的是 run_rnaseq_enrich.py。该文件不建议立即删除,建议先确认是否是兼容入口或历史入口。
第一优先级:低风险清理候选
这些文件/目录通常可以进入“待清理隔离清单”,清理风险最低。
Python 缓存
模式:
__pycache__/*.pyc
扫描到的主要位置:
apps/cli/__pycache__/apps/web/__pycache__/apps/web/vue3/__pycache__/gfa_core/**/__pycache__/scripts/__pycache__/skills/*/__pycache__/tests/**/__pycache__/
建议动作:可直接移入清理清单,运行时会自动重新生成。
显式备份文件
代表性文件:
apps/cli/run_genome_prepare.py.bak_family_allpep_20260504_193257apps/cli/run_identify.py.bak_family_allpep_20260504_193257apps/cli/run_interspecies_synteny.py.bak_blast_engineapps/cli/run_interspecies_synteny.py.bak_family_allpep_20260504_193257apps/cli/run_interspecies_synteny.py.bak_highlight_localapps/cli/run_interspecies_synteny.py.bak_pairwise_20260504_165043apps/cli/run_interspecies_synteny.py.bak_species_selectapps/cli/run_rnaseq_qc.py.bak.20260430_050459apps/web/pipeline_backend.py.bak_blast_engineapps/web/pipeline_backend.py.bak_species_selectapps/web/vue3/index.html.backup.1776015080apps/web/vue3/index.html.backup.1777477761apps/web/vue3/index.html.bak_blast_engineapps/web/vue3/index.html.bak_config_uploadapps/web/vue3/index.html.bak_species_selectapps/web/vue3/main.py.bak_blast_engineapps/web/vue3/main.py.bak_config_uploadapps/web/vue3/main.py.bak_species_selectgfa_core/mas/agents/result_parser.py.bak_20250421gfa_core/mas/agents/result_parser.py.before_simplegfa_core/mas/agents/result_parser.py.current_bakgfa_core/mas/tools/stage_tools.py.bak_blast_enginegfa_core/mas/tools/stage_tools.py.bak_species_select
建议动作:优先移动到 cleanup_candidates/backups/ 或外部归档目录;确认当前无回滚需求后删除。
备份目录和复制目录
目录:
backups/apps/cli/_backup_unused_scripts/apps/web/vue3/backups/apps/web/vue3copy0416/apps/web/vue3copy0417/gfa_core/mas/agents/backup/
判断依据:
- 目录名明确为
backup、backups、copy0416、copy0417或_backup_unused_scripts。 - 当前主入口使用
apps/web/vue3/main.py、apps/web/vue3/index.html、apps/web/pipeline_backend.py,不是vue3copy0416或vue3copy0417。 _backup_unused_scripts名称已经标注为未使用备份。
建议动作:整体作为历史快照归档。若需要保留,建议移出项目代码根目录。
第二优先级:运行产物和缓存
这些不是源码,建议按保留策略清理,例如仅保留最近 N 个 job 或最近 7-30 天。
目录:
workspace/input/final/reproducibility/logs/cost_logs/memory_storage/memory/
扫描计数参考:
workspace/:约 6497 个文件。input/:约 532 个文件。reproducibility/:约 52 个文件。logs/:约 14 个文件。cost_logs/:约 18 个文件。memory_storage/:约 124 个文件。
建议动作:
workspace/和input/:按 job_id 分组,仅保留仍需复查的 job;已交付结果建议导出后归档。reproducibility/:保留正式分析对应的 job,删除测试 job 或过期 job。logs/和cost_logs/:可按日期保留最近 30 天。memory_storage/、memory/:如果是会话记忆,不属于代码,建议移到外部状态目录。
第三优先级:资料、模型和外部缓存
这些不一定无用,但不应长期混放在代码项目根目录。
目录:
paper/models/scripts/bge-m3-model/data/rag_db/data/kegg_pathway_cache/data/kegg_species_cache/data/go/go-basic.obo
判断依据:
paper/是论文资料库,不是运行代码。models/和scripts/bge-m3-model/是模型权重/ONNX/HuggingFace 缓存,体量通常大且可复用。data/*cache*是可重建或可外置的缓存。
建议动作:
- 建议迁移到统一资源目录,例如
~/wutx/shared_resources/或项目外部缓存目录。 - 代码中若硬编码路径,需要先统一配置化再移动。
第四优先级:疑似未被引用的代码文件
以下来自静态“文件名被其他文本引用”扫描。它们未在当前代码/文档中通过文件名直接引用,但不代表一定无用,可能是手动工具、命令行工具或通过动态路径调用。
高疑似历史/实验文件:
apps/web/vue3/main_new_funcs.pyapps/web/vue3copy0417/rag_integration.pyapps/web/vue3copy0417/start_server_7869.shapps/web/vue3copy0417/test_rag_integration.pygfa_core/mas/agents/planning_v2_current_backup.pyscripts/build_faiss.shscripts/sim_verify_go_only_stage.pyscripts/sim_verify_three_stages.pyscripts/test_rnaseq_de_to_go_enrich_simulated_full.pyscripts/test_rnaseq_enrich_background_recovery_flow.pyscripts/test_rnaseq_go_kegg_annotation_agent_flow.pyscripts/test_rnaseq_multiagent_linkage.py
可能是手动工具或脚本库,需要人工确认:
gfa_core/config_templates.pygfa_core/mas/utility_tasks.pyscripts/GeneFamily_stat.pyscripts/MOTree.pmscripts/calculate_fpkm_tpm.Rscripts/combine_hmm_blast.pyscripts/draw_enrich_expression.Rscripts/gene_highlight_jcvi.pyscripts/get_dataset_color.pyscripts/get_dataset_symbol.pyscripts/get_mapchart_tandem.pyscripts/map_data_ids.pyscripts/map_fasta_ids.pyscripts/motree_py.pyscripts/plot_interspecies_synteny.Rscripts/plot_tree.Huihuai.Rscripts/prefix_reference_gff.pyscripts/promoter_visualization_enhanced.Rscripts/promoter_visualization_enhanced_v3.Rscripts/promoter_visualization_enhanced_v4.Rscripts/sort_fasta_by_ids.pyscripts/subfamliy_blast.pyscripts/tree_motif_domain_structure.R/motif_plot.Rscripts/tree_motif_domain_structure.R/tree_motif_structure.R
建议动作:
- 不要直接删除第二组;先对每个脚本执行
rg "脚本名"和一次核心流程冒烟测试。 - 对保留的手动工具,建议加 README 或移动到
tools/legacy/,避免继续和生产脚本混淆。
测试/演示/临时脚本候选
这些文件更适合进入 tests/ 或 devtools/,其中顶层测试脚本不建议长期放根目录。
test_agent_manual.shtest_annotation_skill.shtest_full_integration.shtest_langgraph_state.pytest_rnaseq_align.shtest_router.pytest_tree_plot.shrun_kaks_manual.shexample_task_with_wechat.pypipeline_backend_patch.pyvalidate_js.pyapps/web/test_stage_integration.pyapps/web/vue3/static/interpretation-modal-demo.html
建议动作:保留有价值的移入 tests/ 或 devtools/;过期的移入清理清单。
顶层杂项文件候选
需要根据当前是否仍使用微信/通知/会话功能确认:
wechat_bot.pywechat_service.pywechat_task_bridge.pywechat_integration.pynotify_integration.pyget_wechat_id.pystart_wechat_bot.shstart_wechat_service.shWECHAT_INTEGRATION.mdenable_persistent_memory.pysession_storage.pycheck_cost.pyupdate_prompts.py
判断:这些是外围集成,不是核心 13 个分析阶段。若当前系统仍依赖微信通知或会话记忆,则不要删除;若只保留基因家族分析执行系统,可归档到 integrations/wechat/ 或清理候选目录。
不建议清理或需谨慎清理
AGENTS.md、CLAUDE.md、pytest.ini:项目/测试配置。apps/web/vue3/main.py、apps/web/vue3/index.html、apps/web/pipeline_backend.py:当前服务主路径。tasks.py、celery_app.py、start_celery*.sh:当前 Celery 队列相关。gfa_core/schemas/:阶段契约和 manifest schema。gfa_core/mas/stage_catalog.py、gfa_core/mas/tools/stage_tools.py、gfa_core/mas/core/、gfa_core/mas/agents/中无备份后缀的文件。skills/*中无缓存后缀的SKILL.md、run.py、config.yaml、templates/。scripts/plot_*.R、scripts/*structure*.R、scripts/*motif*.R、scripts/*promoter*.R等绘图脚本,除非确认当前 CLI 不再调用。
建议的后续清理流程
- 创建隔离目录,例如
cleanup_candidates/20260522/。 - 先移动第一优先级文件:
__pycache__、*.pyc、显式.bak*、apps/web/vue3copy*、backups/。 - 运行冒烟测试:启动
apps/web/vue3/main.py,并至少测试identify、phylogeny、motif/domain/structure、rnaseq_enrich的 dry-run 或小数据任务。 - 再按 job_id 清理
workspace/、input/、reproducibility/、logs/。 - 最后处理模型/论文/缓存资源,把路径改为配置项后迁移到项目外。
建议保留的清理策略文件结构
后续如果要真正执行清理,建议生成一个机器可读清单,例如:
cleanup_candidates/
20260522/
delete_low_risk.txt
archive_backups.txt
archive_runtime_jobs.txt
review_manual_tools.txt
keep_core.txt
其中 delete_low_risk.txt 只放缓存和明确备份;review_manual_tools.txt 放本报告第四优先级的脚本,等人工确认后再进入删除或归档清单。