# translateAll 函数重构 - 实现计划

## [x] Task 1: 实现JSON字节长度预测函数
- **Priority**: P0
- **Depends On**: None
- **Description**: 
  - 实现 estimateJsonSize 函数，预测一批文本转JSON后的字节长度
  - 考虑 srcText 数组的JSON序列化开销
- **Acceptance Criteria Addressed**: [AC-1]
- **Test Requirements**:
  - `programmatic` TR-1.1: 能正确预测简单文本的JSON大小
  - `programmatic` TR-1.2: 预测结果接近实际序列化大小
- **Status**: 已完成

## [x] Task 2: 实现智能分批算法
- **Priority**: P0
- **Depends On**: Task 1
- **Description**: 
  - 实现 smartBatch 函数，根据文本列表智能分批
  - 每批不超过500条，且JSON字节不超过4900
  - 从 texts 依序截取
- **Acceptance Criteria Addressed**: [AC-1]
- **Test Requirements**:
  - `programmatic` TR-2.1: 每批数量不超过500条
  - `programmatic` TR-2.2: 每批JSON大小不超过4900字节
- **Status**: 已完成

## [x] Task 3: 实现并发请求控制
- **Priority**: P0
- **Depends On**: Task 2
- **Description**: 
  - 实现并发请求调度，最多同时发起 this.maxBatchSize 个请求
  - 保持结果顺序与输入一致
- **Acceptance Criteria Addressed**: [AC-2, AC-3]
- **Test Requirements**:
  - `programmatic` TR-3.1: 并发数不超过 this.maxBatchSize
  - `programmatic` TR-3.2: 翻译结果顺序正确
- **Status**: 已完成

## [x] Task 4: 集成测试
- **Priority**: P1
- **Depends On**: Task 3
- **Description**: 
  - 完整测试 translateAll 函数
  - 验证所有功能正常工作
- **Acceptance Criteria Addressed**: [AC-1, AC-2, AC-3]
- **Test Requirements**:
  - `programmatic` TR-4.1: 完整功能测试通过
- **Status**: 已完成
