japanese/docs/history/CLEANUP_SUMMARY.md
panli ef3df73166 refactor: 三层架构重构 + 配置文件 + 项目目录整理
清洗管线重构为严格三层架构:
- 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)
2026-08-19 19:40:02 +08:00

149 lines
4.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 项目目录清理总结
## 已完成的整理
### 1. 根目录脚本清理 ✅
**移动前**4 个独立 py 脚本混在根目录):
```text
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` 子命令