Files
PlantAI-dev/docs/cleanup_inventory_20260522.md
2026-08-03 18:42:47 +08:00

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_193257
  • apps/cli/run_identify.py.bak_family_allpep_20260504_193257
  • apps/cli/run_interspecies_synteny.py.bak_blast_engine
  • apps/cli/run_interspecies_synteny.py.bak_family_allpep_20260504_193257
  • apps/cli/run_interspecies_synteny.py.bak_highlight_local
  • apps/cli/run_interspecies_synteny.py.bak_pairwise_20260504_165043
  • apps/cli/run_interspecies_synteny.py.bak_species_select
  • apps/cli/run_rnaseq_qc.py.bak.20260430_050459
  • apps/web/pipeline_backend.py.bak_blast_engine
  • apps/web/pipeline_backend.py.bak_species_select
  • apps/web/vue3/index.html.backup.1776015080
  • apps/web/vue3/index.html.backup.1777477761
  • apps/web/vue3/index.html.bak_blast_engine
  • apps/web/vue3/index.html.bak_config_upload
  • apps/web/vue3/index.html.bak_species_select
  • apps/web/vue3/main.py.bak_blast_engine
  • apps/web/vue3/main.py.bak_config_upload
  • apps/web/vue3/main.py.bak_species_select
  • gfa_core/mas/agents/result_parser.py.bak_20250421
  • gfa_core/mas/agents/result_parser.py.before_simple
  • gfa_core/mas/agents/result_parser.py.current_bak
  • gfa_core/mas/tools/stage_tools.py.bak_blast_engine
  • gfa_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.py
  • apps/web/vue3copy0417/rag_integration.py
  • apps/web/vue3copy0417/start_server_7869.sh
  • apps/web/vue3copy0417/test_rag_integration.py
  • gfa_core/mas/agents/planning_v2_current_backup.py
  • scripts/build_faiss.sh
  • scripts/sim_verify_go_only_stage.py
  • scripts/sim_verify_three_stages.py
  • scripts/test_rnaseq_de_to_go_enrich_simulated_full.py
  • scripts/test_rnaseq_enrich_background_recovery_flow.py
  • scripts/test_rnaseq_go_kegg_annotation_agent_flow.py
  • scripts/test_rnaseq_multiagent_linkage.py

可能是手动工具或脚本库,需要人工确认:

  • gfa_core/config_templates.py
  • gfa_core/mas/utility_tasks.py
  • scripts/GeneFamily_stat.py
  • scripts/MOTree.pm
  • scripts/calculate_fpkm_tpm.R
  • scripts/combine_hmm_blast.py
  • scripts/draw_enrich_expression.R
  • scripts/gene_highlight_jcvi.py
  • scripts/get_dataset_color.py
  • scripts/get_dataset_symbol.py
  • scripts/get_mapchart_tandem.py
  • scripts/map_data_ids.py
  • scripts/map_fasta_ids.py
  • scripts/motree_py.py
  • scripts/plot_interspecies_synteny.R
  • scripts/plot_tree.Huihuai.R
  • scripts/prefix_reference_gff.py
  • scripts/promoter_visualization_enhanced.R
  • scripts/promoter_visualization_enhanced_v3.R
  • scripts/promoter_visualization_enhanced_v4.R
  • scripts/sort_fasta_by_ids.py
  • scripts/subfamliy_blast.py
  • scripts/tree_motif_domain_structure.R/motif_plot.R
  • scripts/tree_motif_domain_structure.R/tree_motif_structure.R

建议动作:

  • 不要直接删除第二组;先对每个脚本执行 rg "脚本名" 和一次核心流程冒烟测试。
  • 对保留的手动工具,建议加 README 或移动到 tools/legacy/,避免继续和生产脚本混淆。

测试/演示/临时脚本候选

这些文件更适合进入 tests/ 或 devtools/,其中顶层测试脚本不建议长期放根目录。

  • test_agent_manual.sh
  • test_annotation_skill.sh
  • test_full_integration.sh
  • test_langgraph_state.py
  • test_rnaseq_align.sh
  • test_router.py
  • test_tree_plot.sh
  • run_kaks_manual.sh
  • example_task_with_wechat.py
  • pipeline_backend_patch.py
  • validate_js.py
  • apps/web/test_stage_integration.py
  • apps/web/vue3/static/interpretation-modal-demo.html

建议动作:保留有价值的移入 tests/ 或 devtools/;过期的移入清理清单。

顶层杂项文件候选

需要根据当前是否仍使用微信/通知/会话功能确认:

  • wechat_bot.py
  • wechat_service.py
  • wechat_task_bridge.py
  • wechat_integration.py
  • notify_integration.py
  • get_wechat_id.py
  • start_wechat_bot.sh
  • start_wechat_service.sh
  • WECHAT_INTEGRATION.md
  • enable_persistent_memory.py
  • session_storage.py
  • check_cost.py
  • update_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 不再调用。

建议的后续清理流程

  1. 创建隔离目录,例如 cleanup_candidates/20260522/。
  2. 先移动第一优先级文件:__pycache__、*.pyc、显式 .bak*、apps/web/vue3copy*、backups/。
  3. 运行冒烟测试:启动 apps/web/vue3/main.py,并至少测试 identify、phylogeny、motif/domain/structure、rnaseq_enrich 的 dry-run 或小数据任务。
  4. 再按 job_id 清理 workspace/、input/、reproducibility/、logs/。
  5. 最后处理模型/论文/缓存资源,把路径改为配置项后迁移到项目外。

建议保留的清理策略文件结构

后续如果要真正执行清理,建议生成一个机器可读清单,例如:

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 放本报告第四优先级的脚本,等人工确认后再进入删除或归档清单。