下载 Markdown
计划版本:v1.0-detailed
日期:2026-03-01
对应 PRD:./mac-tools-prd-tech-spec-v0.3.md
适用仓库:/Users/Zhuanz/work-space/mac-tools
- 单任务闭环:同一时间仅允许 1 个任务处于“进行中”。
- 每个任务完成后必须按顺序执行:
- 更新开发状态跟踪器
- 运行测试并记录结果
- 提交代码(含变更说明)
- 未完成上述三步,不进入下一个任务。
- 所有任务必须有证据(测试输出、截图/日志、commit hash)。
- 开发:1~2 名(Swift/SwiftUI)
- QA:1 名(可兼职)
- 产品/设计:1 名(可兼职)
- 开发环境:macOS 13/14/15 三版本验证机 + 一台笔记本用于电池模块
- 发布:Developer ID + Notarization 通道可用
| 里程碑 |
时间窗口 |
核心目标 |
退出标准 |
| M0 |
2026-03-02 ~ 2026-03-04 |
架构冻结与工程基线 |
schema/状态机/错误码/权限文案冻结 |
| M1 |
2026-03-05 ~ 2026-03-11 |
Monitoring 采集核心 |
CPU/内存/磁盘/网络/电池采集稳定 |
| M2 |
2026-03-12 ~ 2026-03-18 |
Monitoring UI 与告警 |
Dashboard+Detail 可用,告警冷却生效 |
| M3 |
2026-03-19 ~ 2026-03-25 |
Cleaner 扫描器 |
分类扫描、白名单、取消机制完成 |
| M4 |
2026-03-26 ~ 2026-04-02 |
Cleaner 执行与回滚 |
隔离区执行、报告、回滚闭环 |
| M5 |
2026-04-03 ~ 2026-04-11 |
Uninstaller |
App 枚举、残留规则、卸载回滚 |
| M6 |
2026-04-12 ~ 2026-04-18 |
权限/设置/稳定性 |
权限引导、设置完善、性能优化 |
| M7 |
2026-04-19 ~ 2026-04-28 |
QA 回归与发布准备 |
全量用例通过、签名公证、DMG |
| M8 |
2026-04-29 ~ 2026-05-03 |
Beta 收口 |
Beta 反馈修复与 v1.0 发布决策 |
| ID |
任务 |
优先级 |
依赖 |
交付物 |
验收标准 |
| MT-001 |
工程初始化与模块骨架 |
P0 |
无 |
App 导航骨架、目录结构 |
可启动并打开空页面框架 |
| MT-002 |
SQLite schema 与迁移机制 |
P0 |
MT-001 |
建表脚本、迁移版本表 |
可初始化数据库并通过迁移 |
| MT-003 |
统一错误码体系与映射 |
P0 |
MT-001 |
Error 模型、映射表、文档 |
E_* 能映射系统错误 |
| MT-004 |
Scan/Execute/Rollback 状态机定义 |
P0 |
MT-001 |
状态机文档与实现接口 |
支持 cancel/failed/completed |
| MT-005 |
QuarantineManifest 模型设计 |
P0 |
MT-002 |
manifest 表与实体结构 |
可记录原路径与目标路径 |
| MT-006 |
PermissionCenter 设计与文案 |
P0 |
MT-001 |
权限检查模块 + 引导文案 |
无权限时可降级使用 |
| MT-007 |
基准性能脚本与测试数据准备 |
P1 |
MT-001 |
10万文件样本、采样脚本 |
可复现性能测试 |
| MT-008 |
CI 任务(测试/静态检查) |
P1 |
MT-001 |
基础 CI 配置 |
提交后自动执行检查 |
| ID |
任务 |
优先级 |
依赖 |
交付物 |
验收标准 |
| MT-101 |
CPU 采集实现(总量+load) |
P0 |
MT-001 |
CPUCollector |
数值趋势与活动监视器一致 |
| MT-102 |
Memory 采集实现(pressure/swap) |
P0 |
MT-001 |
MemoryCollector |
pressure 颜色状态准确 |
| MT-103 |
Disk 空间采集 |
P0 |
MT-001 |
DiskSpaceCollector |
总量与可用空间准确 |
| MT-104 |
Disk 读写速率采集 |
P0 |
MT-001 |
DiskIOCollector |
实时曲线稳定无跳变异常 |
| MT-105 |
Network 速率与会话累计 |
P0 |
MT-001 |
NetworkCollector |
上下行与累计正确 |
| MT-106 |
Battery 采集(机型自适应) |
P1 |
MT-001 |
BatteryCollector |
台式机自动隐藏电池字段 |
| MT-107 |
Top Processes(CPU) |
P0 |
MT-001 |
ProcessSampler |
排序正确,采样无卡顿 |
| MT-108 |
Top Processes(Memory) |
P0 |
MT-107 |
ProcessSampler 扩展 |
CPU/内存可切换排序 |
| MT-109 |
环形缓冲(30 分钟) |
P0 |
MT-101~108 |
SampleRingBuffer |
30 分钟运行内存稳定 |
| MT-110 |
采样调度器(1s/2s 分层) |
P0 |
MT-109 |
Scheduler |
指标 1s、进程榜 2s 生效 |
| ID |
任务 |
优先级 |
依赖 |
交付物 |
验收标准 |
| MT-201 |
Dashboard 卡片布局 |
P0 |
MT-109 |
MetricCard 页面 |
3 秒内可渲染主界面 |
| MT-202 |
Detail 曲线页(CPU/Memory/Disk/Network) |
P0 |
MT-201 |
LineChart + 切换 |
可查看 1/5/15/30 分钟 |
| MT-203 |
ProcessTable(排序/搜索/TopN) |
P0 |
MT-107 |
进程列表页 |
排序与搜索正确 |
| MT-204 |
告警规则引擎 |
P0 |
MT-110 |
AlertEngine |
阈值触发符合 PRD |
| MT-205 |
告警冷却与恢复阈值 |
P0 |
MT-204 |
冷却策略 |
无 toast 风暴 |
| MT-206 |
告警跳转联动 |
P1 |
MT-205 |
Deeplink 跳转 |
告警可跳到目标页面 |
| MT-207 |
监控设置页接入 |
P1 |
MT-204 |
Settings 绑定 |
刷新频率和告警开关生效 |
| MT-208 |
Monitoring 回归与基准报告 |
P0 |
MT-201~207 |
测试报告 |
CPU 开销达标(<2%) |
| ID |
任务 |
优先级 |
依赖 |
交付物 |
验收标准 |
| MT-301 |
分类规则引擎(Caches/Logs/SavedState/Downloads/Trash) |
P0 |
MT-004 |
RuleEngine(Cleaner) |
分类命中正确 |
| MT-302 |
白名单规则(exact/prefix) |
P0 |
MT-002 |
WhitelistStore + 匹配器 |
白名单项不进入结果 |
| MT-303 |
扫描任务调度(并发上限) |
P0 |
MT-301 |
ScanEngine |
大目录扫描不中断 UI |
| MT-304 |
可取消扫描实现 |
P0 |
MT-303 |
Cancellation 控制 |
取消响应 < 500ms |
| MT-305 |
流式结果产出与 UI 节流刷新 |
P0 |
MT-303 |
批量事件流 |
列表实时更新不卡顿 |
| MT-306 |
目录体积统计缓存 |
P1 |
MT-303 |
SizeCache |
重复扫描耗时下降 |
| MT-307 |
下载大文件阈值配置接入 |
P1 |
MT-302 |
Settings 绑定 |
阈值变化实时生效 |
| MT-308 |
Trash 统计实现 |
P1 |
MT-301 |
TrashStat |
体积统计准确 |
| MT-309 |
扫描结果页(reason/risk/selected) |
P0 |
MT-305 |
Results UI |
每项可解释 |
| MT-310 |
Cleaner 扫描回归测试 |
P0 |
MT-301~309 |
测试报告 |
10 万文件扫描可取消 |
| ID |
任务 |
优先级 |
依赖 |
交付物 |
验收标准 |
| MT-401 |
Quarantine 目录与 batch 结构 |
P0 |
MT-005 |
QuarantineStore |
批次目录可追溯 |
| MT-402 |
move/copy+delete 执行策略 |
P0 |
MT-401 |
ExecutionEngine |
同卷/跨卷均可执行 |
| MT-403 |
Manifest 记录与校验 |
P0 |
MT-401 |
QuarantineManifest 落盘 |
可完整记录路径映射 |
| MT-404 |
回滚实现(逆序恢复) |
P0 |
MT-403 |
RollbackEngine |
一键回滚成功 |
| MT-405 |
回滚冲突策略(skip/overwrite/rename) |
P0 |
MT-404 |
冲突处理 UI/逻辑 |
冲突可选并有日志 |
| MT-406 |
执行中取消语义 |
P0 |
MT-402 |
Cancel 执行状态 |
报告能区分未执行项 |
| MT-407 |
操作报告(成功/失败/建议动作) |
P0 |
MT-003,MT-402 |
ReportStore + UI |
每次执行 100% 产报告 |
| MT-408 |
Quarantine 页面(批次/回滚) |
P1 |
MT-404 |
Quarantine UI |
可按批次回滚 |
| MT-409 |
Cleaner 端到端回归 |
P0 |
MT-401~408 |
E2E 报告 |
清理-报告-回滚闭环 |
| ID |
任务 |
优先级 |
依赖 |
交付物 |
验收标准 |
| MT-501 |
App 枚举(/Applications + ~/Applications) |
P0 |
MT-001 |
AppDiscovery |
列表完整可搜索 |
| MT-502 |
App 元数据采集(icon/version/bundleId/size) |
P0 |
MT-501 |
AppMetadata |
元数据展示正确 |
| MT-503 |
拖入 .app 卸载入口 |
P1 |
MT-501 |
Drag&Drop |
拖入可触发流程 |
| MT-504 |
残留规则引擎(用户级) |
P0 |
MT-301 |
RuleEngine(Uninstaller) |
常见残留可命中 |
| MT-505 |
confidence 计算(exact/strong/fuzzy) |
P0 |
MT-504 |
MatchConfidence |
默认勾选矩阵生效 |
| MT-506 |
Review 页(reason/risk/confidence) |
P0 |
MT-505 |
Review UI |
每项可解释 |
| MT-507 |
卸载执行(本体+残留) |
P0 |
MT-402,MT-506 |
UninstallExecutor |
执行顺序正确 |
| MT-508 |
高风险二次确认(Group/System) |
P0 |
MT-506 |
Confirm UI |
高风险必须确认 |
| MT-509 |
卸载报告与回滚 |
P0 |
MT-407,MT-507 |
Report + Rollback |
报告与回滚可用 |
| MT-510 |
Uninstaller 回归测试 |
P0 |
MT-501~509 |
测试报告 |
本体与低风险残留可回滚 |
| ID |
任务 |
优先级 |
依赖 |
交付物 |
验收标准 |
| MT-601 |
Settings 全量接入与持久化 |
P0 |
MT-207,MT-307 |
SettingsStore |
重启后配置保持 |
| MT-602 |
权限检测页与引导流程 |
P0 |
MT-006 |
Permission UI |
不授权也可降级使用 |
| MT-603 |
受限扫描标识与能力降级 |
P0 |
MT-602 |
降级逻辑 |
UI 明确提示受限状态 |
| MT-604 |
错误详情页与失败复制 |
P1 |
MT-407 |
错误详情组件 |
可复制失败列表 |
| MT-605 |
性能优化(采样/绘图/扫描) |
P0 |
MT-208,MT-310,MT-510 |
优化提交 |
关键 KPI 达标 |
| MT-606 |
崩溃与日志落盘 |
P1 |
MT-001 |
日志策略 |
异常可追踪 |
| MT-607 |
About/隐私/反馈页 |
P1 |
MT-001 |
About UI |
文案与入口齐全 |
| MT-608 |
安全回归(误删防护) |
P0 |
MT-605 |
安全报告 |
高风险默认不勾 |
| MT-609 |
预发布候选构建 |
P0 |
MT-601~608 |
RC 包 |
RC 可安装运行 |
| ID |
任务 |
优先级 |
依赖 |
交付物 |
验收标准 |
| MT-701 |
功能全量回归(11+补充用例) |
P0 |
MT-609 |
QA 报告 |
全部 P0 用例通过 |
| MT-702 |
长稳测试(30 分钟监控/大扫描) |
P0 |
MT-701 |
稳定性报告 |
无明显泄漏/卡顿 |
| MT-703 |
签名与公证流程打通 |
P0 |
MT-609 |
签名脚本/记录 |
DMG 可通过 Gatekeeper |
| MT-704 |
Beta 包分发与反馈收集 |
P1 |
MT-703 |
Beta 发布记录 |
收集有效反馈 |
| MT-705 |
Beta 缺陷修复(P0/P1) |
P0 |
MT-704 |
修复清单 |
P0/P1 清零 |
| MT-706 |
v1.0 发布评审(Go/No-Go) |
P0 |
MT-705 |
评审结论 |
发布门槛满足 |
| MT-707 |
v1.0 Tag 与发布说明 |
P1 |
MT-706 |
Release Note |
版本说明完整 |
- 单任务门禁:功能测试 + 异常路径测试 + 文档更新。
- 里程碑门禁:所有 P0 任务完成,且无未关闭 P0 缺陷。
- 发布门禁:
- KPI 达标(CPU/扫描/报告)
- 回滚演练通过
- 权限降级流程通过
- 签名与公证通过
| 风险ID |
描述 |
影响 |
预防措施 |
触发后应对 |
| R-01 |
监控采样自身开销过高 |
影响用户体验 |
分层采样、环形缓冲 |
降采样频率并优化 collector |
| R-02 |
大扫描卡 UI |
阻塞使用 |
流式扫描 + UI 节流 + 可取消 |
强制降并发并输出中止报告 |
| R-03 |
误删用户重要文件 |
高风险事故 |
默认保守、reason、二次确认 |
立即回滚并导出事故报告 |
| R-04 |
跨卷移动失败 |
执行失败率上升 |
move/copy+delete 双路径 |
自动 fallback 并记录 E_IO |
| R-05 |
权限受限导致“功能不可用”误解 |
用户流失 |
降级提示与权限引导 |
引导页增加能力对照说明 |
| R-06 |
残留匹配误判 |
卸载信任下降 |
confidence 与默认不勾策略 |
fuzzy 全部改手动勾选 |
- 分支前缀:
codex/
- 推荐里程碑分支:
codex/feat-monitoring-core
codex/feat-monitoring-ui-alerts
codex/feat-cleaner-scan
codex/feat-cleaner-quarantine
codex/feat-uninstaller
codex/chore-settings-permissions
codex/release/v1.0-rc
- 提交规范:
type(scope): summary,每个任务至少 1 个可回溯 commit。
- 跟踪器文件:
./mac-tools-v1.0-development-tracker.md
- 每次任务闭环必须更新:
- 状态(未开始/进行中/已完成/阻塞)
- 实际开始/完成时间
- 测试命令与结果
- 提交哈希与备注
- Day 1:MT-001 ~ MT-004
- Day 2:MT-005 ~ MT-008
- Day 3:MT-101 ~ MT-103
- Day 4:MT-104 ~ MT-106
- Day 5:MT-107 ~ MT-110