
=== 2026-05-12 14:43:49 exec: /usr/bin/python3 /srv/current/3000music-platform-next/services/music-pipeline/scripts/pipeline.py /srv/music-files-platform-next/pipeline/batch-20260512-144349-2dc805/_input.json -o /srv/music-files-platform-next/pipeline/batch-20260512-144349-2dc805 -cg 2 -cs 2 --skip-feishu --profile __runtime_batch-20260512-144349-2dc805 --step1-only ===
[profile] ✅ Loaded profile '__runtime_batch-20260512-144349-2dc805' from /srv/repos/3000music-platform-next/services/music-pipeline/scripts/profiles/__runtime_batch-20260512-144349-2dc805.yaml
[   INFO   ] MusicExtractorSVM: no classifier models were configured by default
[   INFO   ] On connection Flux::flux → IIR::signal:
[   INFO   ] BUFFER SIZE MISMATCH: max=0 - asked for read size 4096
[   INFO   ] resizing buffer to 36040/4505
[   INFO   ] FrameCutter: dropping incomplete frame
[   INFO   ] On connection Flux::flux → IIR::signal:
[   INFO   ] BUFFER SIZE MISMATCH: max=0 - asked for read size 4096
[   INFO   ] resizing buffer to 36040/4505
[   INFO   ] FrameCutter: dropping incomplete frame
/usr/local/lib/python3.13/dist-packages/scipy/cluster/hierarchy.py:810: ClusterWarning: The symmetric non-negative hollow observation matrix looks suspiciously like an uncondensed distance matrix
  return linkage(y, method='ward', metric='euclidean')
/usr/local/lib/python3.13/dist-packages/scipy/cluster/hierarchy.py:810: ClusterWarning: The symmetric non-negative hollow observation matrix looks suspiciously like an uncondensed distance matrix
  return linkage(y, method='ward', metric='euclidean')

======================================================================
music-pipeline3000 v2 | 3 songs
======================================================================
Gemini concurrency: 2 | Suno concurrency: 2
Output: /srv/music-files-platform-next/pipeline/batch-20260512-144349-2dc805
Skip Suno: False | Step1 only: True | Version: v4
======================================================================

[14:43:51] 🏥 Health check...
[14:43:53] ✅ qishui: OK
[14:43:53] ✅ netease: OK
[14:43:53] ✅ qq: OK

[14:43:53] 🔍 [01_Espresso_20260512] Step 0: Fetching...
[14:43:53] 🔍 [02_A Bar Song (Tipsy)_20260512] Step 0: Fetching...
[14:43:53] 🔍 [03_Normal No More_20260512] Step 0: Fetching...
[14:43:57] ✅ [02_A Bar Song (Tipsy)_20260512] Step 0: netease | 2317c lyrics
[14:43:57] ⬇️  [02_A Bar Song (Tipsy)_20260512] Step 0.5: Download from netease...
[14:43:57] ✅ [01_Espresso_20260512] Step 0: netease | 2094c lyrics
[14:43:57] ⬇️  [01_Espresso_20260512] Step 0.5: Download from netease...
[14:43:57] ✅ [03_Normal No More_20260512] Step 0: netease | 1520c lyrics
[14:43:57] ⬇️  [03_Normal No More_20260512] Step 0.5: Download from netease...
[14:44:06] ✅ [01_Espresso_20260512] Step 0.5: 3814928 bytes | 175.5s
[14:44:06] 🔬 [01_Espresso_20260512] Step 0.75: Audio features...
[14:44:06] ✅ [02_A Bar Song (Tipsy)_20260512] Step 0.5: 3504541 bytes | 171.3s
[14:44:06] 🔬 [02_A Bar Song (Tipsy)_20260512] Step 0.75: Audio features...
[14:44:06] ✅ [03_Normal No More_20260512] Step 0.5: 3802772 bytes | 199.6s
[14:44:06] 🔬 [03_Normal No More_20260512] Step 0.75: Audio features...
[14:44:39] ✅ [02_A Bar Song (Tipsy)_20260512] Step 0.75: BPM=162.73 Key=F# minor (32.7s)
[14:44:39] 🧠 [02_A Bar Song (Tipsy)_20260512] Step 1: Gemini (queuing)...
{"__trace__": true, "ts": "2026-05-12T06:44:39.451Z", "trace_id": "batch-20260512-144349-2dc805", "song_key": "02_A Bar Song (Tipsy)_20260512", "step": "step1", "type": "step_start", "inputs": {"audio": "/srv/music-files-platform-next/pipeline/batch-20260512-144349-2dc805/02_A Bar Song (Tipsy)_20260512/song_pgc.mp3", "has_features": true}}
[14:44:39] ✅ [01_Espresso_20260512] Step 0.75: BPM=103.91 Key=A major (33.0s)
[14:44:39] 🧠 [01_Espresso_20260512] Step 1: Gemini (queuing)...
{"__trace__": true, "ts": "2026-05-12T06:44:39.523Z", "trace_id": "batch-20260512-144349-2dc805", "song_key": "01_Espresso_20260512", "step": "step1", "type": "step_start", "inputs": {"audio": "/srv/music-files-platform-next/pipeline/batch-20260512-144349-2dc805/01_Espresso_20260512/song_pgc.mp3", "has_features": true}}
[   INFO   ] On connection Flux::flux → IIR::signal:
[   INFO   ] BUFFER SIZE MISMATCH: max=0 - asked for read size 4096
[   INFO   ] resizing buffer to 36040/4505
[   INFO   ] FrameCutter: dropping incomplete frame
/usr/local/lib/python3.13/dist-packages/scipy/cluster/hierarchy.py:810: ClusterWarning: The symmetric non-negative hollow observation matrix looks suspiciously like an uncondensed distance matrix
  return linkage(y, method='ward', metric='euclidean')
[14:45:02] ✅ [03_Normal No More_20260512] Step 0.75: BPM=94.97 Key=G major (23.3s)
[14:45:02] 🧠 [03_Normal No More_20260512] Step 1: Gemini (queuing)...
{"__trace__": true, "ts": "2026-05-12T06:45:02.815Z", "trace_id": "batch-20260512-144349-2dc805", "song_key": "03_Normal No More_20260512", "step": "step1", "type": "step_start", "inputs": {"audio": "/srv/music-files-platform-next/pipeline/batch-20260512-144349-2dc805/03_Normal No More_20260512/song_pgc.mp3", "has_features": true}}
  📊 Gemini official: 61s | prompt_tokens=9279 completion=1590
{"__trace__": true, "ts": "2026-05-12T06:45:40.920Z", "trace_id": "batch-20260512-144349-2dc805", "song_key": "02_A Bar Song (Tipsy)_20260512", "step": "step1", "type": "api_call", "provider": "gemini", "model": "gemini-2.5-pro", "duration_sec": 61.4, "cost_usd": null, "status": "success"}
{"__trace__": true, "ts": "2026-05-12T06:45:40.920Z", "trace_id": "batch-20260512-144349-2dc805", "song_key": "02_A Bar Song (Tipsy)_20260512", "step": "step1", "type": "step_end", "status": "success", "duration_sec": 61.469}
[14:45:40] ⚠️  [02_A Bar Song (Tipsy)_20260512] Step 1.5: prompt 1158c > 1000c, compressing...
  📏 [02_A Bar Song (Tipsy)_20260512] prompt 1158c → 967c (smart truncate)
[14:45:40] ✅ [02_A Bar Song (Tipsy)_20260512] Step 1.5: prompt compressed 1158c → 967c
[14:45:40] ✅ [02_A Bar Song (Tipsy)_20260512] Step 1: 61.4s | prompt=967c | prompt_ok=True lyrics_ok=True
  📊 Gemini official: 49s | prompt_tokens=9345 completion=1856
{"__trace__": true, "ts": "2026-05-12T06:45:52.161Z", "trace_id": "batch-20260512-144349-2dc805", "song_key": "01_Espresso_20260512", "step": "step1", "type": "api_call", "provider": "gemini", "model": "gemini-2.5-pro", "duration_sec": 49.3, "cost_usd": null, "status": "success"}
{"__trace__": true, "ts": "2026-05-12T06:45:52.161Z", "trace_id": "batch-20260512-144349-2dc805", "song_key": "01_Espresso_20260512", "step": "step1", "type": "step_end", "status": "success", "duration_sec": 72.638}
[exit -15]
