# Task Breakdown / 任务拆分

## Overview / 概述

| Status      | Count |
| ----------- | ----- |
| Total       | 8     |
| Done        | 8     |
| In Progress | 0     |
| Pending     | 0     |

## Tasks / 任务列表

### High Priority / 高优先级

- [x] T1: 实现依赖名称验证 (is_valid_dependency_name)
  - 检查非空、无空格
  - 验证 npm 包名格式
  - 支持 scoped packages (@org/pkg)

- [x] T2: 实现错误分类系统 (categorize_error)
  - 网络错误检测 (network, timeout, enotfound)
  - 权限错误检测 (permission, eacces)
  - 依赖冲突检测 (conflict, peer dep)
  - 无效依赖检测 (404, not found)

- [x] T3: 实现升级重试逻辑
  - 最大重试次数 3 次
  - 网络错误时自动重试
  - 渐进式延迟 (2s, 4s, 6s)

- [x] T4: 实现核心升级函数 (execute)
  - 检查 package.json 存在
  - 解析 dependencies 和 devDependencies
  - 根据 prod_only/dev_only 参数过滤
  - 跳过 workspace:\* 依赖

### Medium Priority / 中优先级

- [x] T5: 实现包管理器适配
  - 支持 npm install 命令
  - 支持 yarn add 命令
  - 支持 pnpm add 命令 (-w for workspace)
  - 支持 rush add 命令 (-p 参数)

- [x] T6: 实现输出解析 (parse_upgrade_output)
  - 解析 npm 输出 (added, updated)
  - 解析 yarn 输出 (success)
  - 解析 pnpm 输出 (+, ~)
  - 收集警告信息

- [x] T7: 实现手动命令生成 (generate_manual_command)
  - 根据包管理器类型生成命令
  - 处理 dev 依赖标志
  - Rush 特殊的 -p 参数处理

### Low Priority / 低优先级

- [x] T8: 实现用户友好输出 (display_upgrade_summary)
  - 显示升级计划 (生产/开发依赖数量)
  - 显示进度指示器 (Loading Spinner)
  - 显示升级结果 (成功/失败包列表)
  - 显示警告信息 (最多 3 条)
  - 显示执行的命令
  - 失败时提供修复建议
