{
  "timestamp": "2026-04-30T12:53:01.506276+08:00",
  "batch_dir": "/srv/music-files-platform-next/pipeline/batch-20260430-125242-502fb2",
  "profile": "caoyuan",
  "concurrency": 3,
  "resume_mode": "each",
  "pending_song_count": 1,
  "groups": [
    {
      "group_index": 1,
      "songs": [
        "/srv/music-files-platform-next/pipeline/batch-20260430-125242-502fb2/01_酒醉的蝴蝶_20260430"
      ],
      "success_count": 1,
      "failed_count": 0,
      "results": [
        {
          "status": "success",
          "song_dir": "/srv/music-files-platform-next/pipeline/batch-20260430-125242-502fb2/01_酒醉的蝴蝶_20260430",
          "step2_file": "/srv/music-files-platform-next/pipeline/batch-20260430-125242-502fb2/01_酒醉的蝴蝶_20260430/step2_json_b.json",
          "agent_summary": "API direct: 单着也是一种答案",
          "returncode": 0,
          "stderr": "",
          "attempt": 1,
          "attempts": [
            {
              "status": "success",
              "song_dir": "/srv/music-files-platform-next/pipeline/batch-20260430-125242-502fb2/01_酒醉的蝴蝶_20260430",
              "step2_file": "/srv/music-files-platform-next/pipeline/batch-20260430-125242-502fb2/01_酒醉的蝴蝶_20260430/step2_json_b.json",
              "agent_summary": "API direct: 单着也是一种答案",
              "returncode": 0,
              "stderr": "",
              "attempt": 1
            }
          ]
        }
      ]
    }
  ],
  "resume": {
    "status": "success",
    "returncode": 0,
    "stdout_tail": "\n======================================================================\nmusic-pipeline3000 v2 | 1 songs\n======================================================================\nGemini concurrency: 2 | Suno concurrency: 3\nOutput: /srv/music-files-platform-next/pipeline/batch-20260430-125242-502fb2\nSkip Suno: False | Step1 only: False | Version: v4\n======================================================================\n\n[12:53:50] 🏥 Health check...\n[12:53:52] ✅ qishui: OK\n[12:53:52] ✅ netease: OK\n[12:53:52] ✅ qq: OK\n\n  📝 [01_酒醉的蝴蝶_20260430] lyrics stripped: 2127c → 2121c\n[12:53:52] 🎵 [01_酒醉的蝴蝶_20260430] Step 3: Suno generation (weirdness=50, style_influence=50)...\n[12:53:52] 🎨 [01_酒醉的蝴蝶_20260430] Step 4: SeeDream cover (parallel)...\n  ✅ submitted: ['52c9e85b', 'f4f9a3f8']\n  🎵 52c9e85b... → submitted\n  🎵 f4f9a3f8... → submitted\n  🎵 52c9e85b... → queued\n  🎵 f4f9a3f8... → queued\n  🎵 52c9e85b... → streaming\n  🎵 f4f9a3f8... → streaming\n  🎵 f4f9a3f8... → complete\n  🎵 52c9e85b... → complete\n[12:56:12]    🎧 [01_酒醉的蝴蝶_20260430] Song 1: https://cdn1.suno.ai/52c9e85b-76d0-4107-8ecc-f252c194d2af.mp3\n[12:56:12]    🎧 [01_酒醉的蝴蝶_20260430] Song 2: https://cdn1.suno.ai/f4f9a3f8-fac4-418e-a9f3-6629748c99ba.mp3\n[12:56:12] 🎛️ [01_酒醉的蝴蝶_20260430] Step 3.5: 混音...\n[12:56:30]    🎚️ [01_酒醉的蝴蝶_20260430] Song 1: edm | 低49/中44/高7%\n[12:56:45]    🎚️ [01_酒醉的蝴蝶_20260430] Song 2: edm | 低51/中42/高8%\n[12:56:45] ✅ [01_酒醉的蝴蝶_20260430] Step 3.5: 33.4s | 2 songs mixed\n[12:56:45] ⚠️  [01_酒醉的蝴蝶_20260430] Step 4: http_403 (non-fatal)\n\n======================================================================\nSUMMARY | 174s (2.9min)\n======================================================================\n✅ Done: 1 | ⏳ Awaiting Step 2: 0 | ❌ Failed: 0\n[MasterDB] ✅ 批次 batch-20260430-125242-502fb2 → +1 新增, ~0 更新 | 总计 615 首\n",
    "stderr_tail": "[profile] ✅ Loaded profile 'caoyuan' from /srv/repos/3000music-platform-next/services/music-pipeline/scripts/profiles/caoyuan.yaml\n",
    "summary": {
      "timestamp": "2026-04-30T12:56:45.605222+08:00",
      "wall_clock": 173.5,
      "total": 1,
      "success": 1,
      "awaiting_step2": 0,
      "failed": 0
    }
  },
  "status": "success"
}