{
  "project_name": "AI有声书播放器优化",
  "base_config": {
    "backend_port": 3000,
    "frontend_port": 5173,
    "db_host": "localhost",
    "db_port": 3306,
    "auth_enabled": false
  },
  "features": [
    {
      "id": 1,
      "description": "播放器 - 封面旋转动画",
      "backend_test_steps": [],
      "frontend_test_steps": [
        "1. 打开播放器页面",
        "2. 验证封面显示在中央",
        "3. 点击播放按钮",
        "4. 验证封面向右旋转（播放时）",
        "5. 点击暂停按钮",
        "6. 验证封面停止旋转（暂停时）"
      ],
      "status": "done",
      "passes": true
    },
    {
      "id": 2,
      "description": "播放器 - 播放控制（上一首/下一首/播放暂停）",
      "backend_test_steps": [],
      "frontend_test_steps": [
        "1. 打开有多个音频的专辑",
        "2. 点击播放按钮，验证开始播放",
        "3. 点击下一首按钮，验证切换到下一首",
        "4. 点击上一首按钮，验证切换到上一首",
        "5. 验证播放器状态正确更新"
      ],
      "status": "done",
      "passes": true
    },
    {
      "id": 3,
      "description": "播放器 - 进度条拖动",
      "backend_test_steps": [],
      "frontend_test_steps": [
        "1. 打开播放器页面并开始播放",
        "2. 验证进度条显示当前播放位置",
        "3. 拖动进度条到中间位置",
        "4. 验证播放位置跳转到对应时间",
        "5. 验证时间显示同步更新"
      ],
      "status": "done",
      "passes": true
    },
    {
      "id": 4,
      "description": "播放器 - 播放列表展示",
      "backend_test_steps": [],
      "frontend_test_steps": [
        "1. 进入专辑详情页",
        "2. 点击播放全部",
        "3. 验证播放器显示当前播放列表",
        "4. 验证当前播放音频高亮显示",
        "5. 验证列表显示专辑内所有音频"
      ],
      "status": "done",
      "passes": true
    },
    {
      "id": 5,
      "description": "播放器 - 循环模式（列表循环/单曲循环）",
      "backend_test_steps": [],
      "frontend_test_steps": [
        "1. 打开有多个音频的专辑",
        "2. 点击播放全部",
        "3. 点击循环按钮切换模式",
        "4. 验证模式切换：列表循环 → 单曲循环 → 关闭",
        "5. 播放到最后一首时，验证列表循环回到第一首"
      ],
      "status": "done",
      "passes": true
    },
    {
      "id": 6,
      "description": "播放器 - 随机播放",
      "backend_test_steps": [],
      "frontend_test_steps": [
        "1. 打开有多个音频的专辑",
        "2. 点击随机播放按钮",
        "3. 验证随机播放模式开启",
        "4. 点击下一首，验证随机跳转到非连续音频",
        "5. 再次点击随机按钮，关闭随机模式"
      ],
      "status": "done",
      "passes": true
    },
    {
      "id": 7,
      "description": "播放器 - 播放速度控制",
      "backend_test_steps": [],
      "frontend_test_steps": [
        "1. 打开播放器页面",
        "2. 点击播放速度按钮",
        "3. 选择1.5x速度",
        "4. 验证音频以1.5倍速播放",
        "5. 刷新页面，验证速度设置已保存"
      ],
      "status": "done",
      "passes": true
    },
    {
      "id": 8,
      "description": "播放器 - 收藏功能",
      "backend_test_steps": [],
      "frontend_test_steps": [
        "1. 打开播放器页面",
        "2. 点击收藏按钮（空心心形）",
        "3. 验证按钮变为已收藏状态（实心心形）",
        "4. 进入收藏页面",
        "5. 验证当前音频显示在收藏列表中",
        "6. 点击取消收藏，验证从列表移除"
      ],
      "status": "done",
      "passes": true
    },
    {
      "id": 9,
      "description": "播放器 - 定时关闭",
      "backend_test_steps": [],
      "frontend_test_steps": [
        "1. 打开播放器页面并开始播放",
        "2. 点击定时关闭按钮",
        "3. 选择15分钟",
        "4. 验证倒计时显示正确",
        "5. 等待或快进到定时时间",
        "6. 验证播放自动暂停"
      ],
      "status": "done",
      "passes": true
    },
    {
      "id": 10,
      "description": "播放器 - 毛玻璃背景效果",
      "backend_test_steps": [],
      "frontend_test_steps": [
        "1. 打开播放器页面",
        "2. 验证页面背景有模糊效果",
        "3. 播放音频时，验证背景随封面色调变化",
        "4. 切换不同音频，验证背景随之变化"
      ],
      "status": "done",
      "passes": true
    },
    {
      "id": 11,
      "description": "播放器 - 播放列表折叠/展开",
      "backend_test_steps": [],
      "frontend_test_steps": [
        "1. 打开播放器页面",
        "2. 验证播放列表默认收起",
        "3. 点击展开按钮",
        "4. 验证播放列表展开显示所有音频",
        "5. 点击收起按钮",
        "6. 验证播放列表收起"
      ],
      "status": "done",
      "passes": true
    },
    {
      "id": 12,
      "description": "播放器 - 按钮点击动画",
      "backend_test_steps": [],
      "frontend_test_steps": [
        "1. 打开播放器页面",
        "2. 点击播放/暂停按钮",
        "3. 验证按钮有缩放动画反馈",
        "4. 点击上一首/下一首按钮",
        "5. 验证按钮有缩放动画反馈"
      ],
      "status": "done",
      "passes": true
    },
    {
      "id": 13,
      "description": "播放器 - 专辑信息展示优化",
      "backend_test_steps": [],
      "frontend_test_steps": [
        "1. 进入专辑详情页",
        "2. 点击播放某个音频",
        "3. 验证播放器显示专辑名称",
        "4. 验证显示当前集数/总集数（如 2/10）",
        "5. 切换上下首，验证集数正确更新"
      ],
      "status": "done",
      "passes": true
    },
    {
      "id": 14,
      "description": "播放器 - 智能续播提示",
      "backend_test_steps": [],
      "frontend_test_steps": [
        "1. 播放某个音频一段时间后关闭页面",
        "2. 重新打开该音频",
        "3. 验证弹出续播提示",
        "4. 点击继续播放",
        "5. 验证从上次位置继续播放"
      ],
      "status": "done",
      "passes": true
    },
    {
      "id": 15,
      "description": "播放器 - 自动播放下一首",
      "backend_test_steps": [],
      "frontend_test_steps": [
        "1. 打开有多个音频的专辑",
        "2. 点击播放全部",
        "3. 等待当前音频播放完毕",
        "4. 验证自动跳转到下一首播放",
        "5. 验证播放器UI同步更新"
      ],
      "status": "done",
      "passes": true
    }
  ]
}
