清洗管线重构为严格三层架构:
- tango_analyser.py(底层:单词分析)
- task_processor.py(中层:文件 I/O、桶管理)
- workflow.py(顶层:状态机、任务推进)
- 移除旧的 batch_processor.py
新增配置文件系统:
- config.py:TOML 配置,相对路径相对配置文件目录解析
- 查找优先级 --config > cwd > 项目根 > ~ > 默认值
- count=None 语义为处理到文件末尾
项目目录整理:
- 根脚本归档到 scripts/analysis 与 scripts/legacy
- 文档归档到 docs/{design,history,analysis}
- 临时报告移到 reports/(已 gitignore)
文档质量:
- 新增 .markdownlint.json 与 scripts/mdlint.cmd
- 修复全部 14 个 md 文件的 markdownlint 警告
测试:74 passed(8 cleaner + 31 workflow + 6 tango + 15 validator + 14 config)
4.1 KiB
4.1 KiB
项目目录清理总结
已完成的整理
1. 根目录脚本清理 ✅
移动前(4 个独立 py 脚本混在根目录):
japanese/
├── analyze_phonetics.py # 发音规律分析
├── validate_data.py # 数据质量校验
├── apply_corrections.py # 历史修正脚本
├── pipeline.py # 旧流水线
└── ...
```text
**移动后**(分类归档):
```text
japanese/
├── scripts/
│ ├── analysis/ # 未来要集成的分析工具
│ │ ├── README.md
│ │ ├── analyze_phonetics.py (194 行)
│ │ └── validate_data.py (234 行)
│ ├── legacy/ # 已废弃的旧脚本
│ │ ├── README.md
│ │ ├── pipeline.py (443 行,被 jclean 取代)
│ │ └── apply_corrections.py (77 行,历史修正已完成)
│ └── clean.py # 现有的清理脚本
└── (根目录无 py 脚本) ✅
```text
---
### 2. 临时文件清单
根目录还有一些临时生成的文档和报告:
#### **项目文档(保留)**
- `README.md` — 项目总览
- `README_cleaner.md` — jclean 工具文档
- `pyproject.toml` — 项目配置
- `jclean.toml` — jclean 配置文件
- `requirements.txt` — 依赖列表
#### **重构过程文档(可归档)**
- `REFACTOR_SUMMARY.md` — 重构总结
- `WORKFLOW.md` — 工作流设计
- `CONFIG_FILE_DESIGN.md` — 配置文件设计
- `CONFIG_INTEGRATION_COMPLETE.md` — 配置集成完成总结
- `CONFIG_SIMPLIFICATION.md` — 配置简化总结
- `REVIEW_ANALYSIS.md` — Review 桶分析
#### **临时报告(可删除或移动)**
- `phonetics_report.txt` — 发音规律分析结果(由 `analyze_phonetics.py` 生成)
- `validation_report.txt` — 数据质量校验结果(由 `validate_data.py` 生成)
---
## 建议的进一步整理
### 选项 1:归档重构文档到 `docs/` 目录
```text
japanese/
├── docs/
│ ├── design/
│ │ ├── CONFIG_FILE_DESIGN.md
│ │ └── WORKFLOW.md
│ ├── history/
│ │ ├── REFACTOR_SUMMARY.md
│ │ ├── CONFIG_INTEGRATION_COMPLETE.md
│ │ └── CONFIG_SIMPLIFICATION.md
│ └── analysis/
│ └── REVIEW_ANALYSIS.md
├── reports/ # 临时报告输出目录
│ ├── phonetics_report.txt
│ └── validation_report.txt
├── README.md
├── README_cleaner.md
├── pyproject.toml
├── jclean.toml
└── requirements.txt
```text
### 选项 2:只移动临时报告,保留文档在根目录
```text
japanese/
├── reports/ # 新建:临时报告输出
│ ├── phonetics_report.txt
│ └── validation_report.txt
├── (所有 .md 文档保留在根目录)
└── ...
```text
### 选项 3:保持现状
根目录文档较多但都有价值,暂时保留不动。
---
## 脚本整理效果
### 分类清晰
- `scripts/analysis/` — 明确标记为"未来要集成"
- `scripts/legacy/` — 明确标记为"已废弃"
- 每个目录都有 README.md 说明
### 根目录干净
- 无独立 py 脚本(除了 src/ 和 tests/)
- 只保留配置文件和文档
### 未来集成路径明确
```bash
# 当前(独立脚本)
python scripts/analysis/analyze_phonetics.py data/db/vocabulary.txt
# 未来(jclean 子命令)
jclean analyze phonetics --input data/db/vocabulary.txt
jclean validate --input data/db/vocabulary.txt
```text
---
## 完成状态
✅ 4 个根目录脚本已分类移动
✅ 每个目录有 README.md 说明用途
✅ 根目录无 py 脚本污染
⏳ 临时报告文件待处理(可选)
⏳ 重构文档待归档(可选)
---
## 下一步建议
1. **如需进一步整理**:移动临时报告到 `reports/`,移动重构文档到 `docs/`
2. **如无必要**:保持现状,根目录文档作为项目历史记录
3. **未来开发**:将 `scripts/analysis/` 中的工具集成为 `jclean analyze` / `jclean validate` 子命令