背景
当前前端入口文件 src/main.ts 承载了大量类型、状态、页面逻辑和功能入口。随着端口管理、MySQL 修复、Python 分析、安全声明、功能说明、环境可靠性等功能继续增强,单文件复杂度会持续上升。
风险
- 小改动容易引发大范围回归。
- Codex 修改时容易在同一大文件里冲突或改坏。
- 白屏问题定位困难。
- 组件测试困难。
- 类型定义、API 调用、UI 渲染耦合严重。
修复目标
在不重写 UI 的前提下,做一次低风险模块化拆分。
建议目录结构
src/types/
src/api/
src/components/
src/pages/
src/features/ports/
src/features/mysql/
src/features/python/
src/features/safety/
src/features/environment/
src/features/runtime/
src/features/cleanup/
拆分原则
- 不重做视觉风格。
- 不一次性大重构业务逻辑。
- 每次移动一个功能区,保证可编译。
- 类型先拆到
src/types。
- Tauri invoke 封装到
src/api。
- 端口管理相关放到
features/ports。
- MySQL 相关放到
features/mysql。
- Python 分析相关放到
features/python。
- 安全声明、功能说明、风险徽章放到
features/safety 或 components。
必须优先拆分的模块
- PortRecord / PortHistory / 端口 UI。
- MySqlRepairReport / MySqlRepairPlan / MySQL UI。
- PythonAnalysis / PythonRepairPlan / Python UI。
- FeatureRiskInfo / safety disclaimer / feature help。
- EnvReliabilitySnapshot。
测试要求
验收标准
main.ts 明显减小,只保留应用启动、顶层路由和少量全局状态。
- 核心 feature 有独立文件夹。
npm run build 通过。
docs/release-v1.5.2.md 记录该可维护性改进。
背景
当前前端入口文件
src/main.ts承载了大量类型、状态、页面逻辑和功能入口。随着端口管理、MySQL 修复、Python 分析、安全声明、功能说明、环境可靠性等功能继续增强,单文件复杂度会持续上升。风险
修复目标
在不重写 UI 的前提下,做一次低风险模块化拆分。
建议目录结构
拆分原则
src/types。src/api。features/ports。features/mysql。features/python。features/safety或components。必须优先拆分的模块
测试要求
npm run build每一步都通过。验收标准
main.ts明显减小,只保留应用启动、顶层路由和少量全局状态。npm run build通过。docs/release-v1.5.2.md记录该可维护性改进。