#!/bin/zsh
# 3a canary: background_render(star anchor ON) 완료 감지 → input_image_ids 엣지 검증.
export PGPASSWORD=theroad_dev_2026
EP="286f3ba4-5738-49b7-a7e4-ce0295fd4352"
sleep 20
for i in $(seq 1 200); do
  st=$(psql -h localhost -U theroad -d theroad -t -c "SELECT status FROM step_run WHERE step_id='background_render' ORDER BY updated_at DESC LIMIT 1;" | tr -d ' \n')
  if [ "$st" = "completed" ] || [ "$st" = "failed" ] || [ "$st" = "partial" ]; then echo "DONE status=$st after ${i} polls"; break; fi
  sleep 30
done
echo "=== L04 bg input_image_ids (2개면 [fp,anchor] star 성공) ==="
psql -h localhost -U theroad -d theroad -c "
SELECT a.variant_type,
       jsonb_array_length(a.input_image_ids::jsonb) AS n_inputs,
       src1.variant_type AS in0, src1.pipeline_role AS in0_role,
       src2.variant_type AS in1, src2.pipeline_role AS in1_role,
       a.pipeline_metadata_json::jsonb->>'anchor_bg_id' AS anchor
FROM image_asset a
LEFT JOIN image_asset src1 ON src1.id::text = (a.input_image_ids::jsonb->>0)
LEFT JOIN image_asset src2 ON src2.id::text = (a.input_image_ids::jsonb->>1)
WHERE a.episode_id='$EP' AND a.pipeline_role='background_render'
  AND a.variant_type LIKE 'L04B0%'
ORDER BY a.variant_type;"
echo "=== 전체 bg chained(input 2+) 통계 ==="
psql -h localhost -U theroad -d theroad -t -c "SELECT count(*) FILTER (WHERE jsonb_array_length(input_image_ids::jsonb)>=2) AS chained, count(*) AS total FROM image_asset WHERE episode_id='$EP' AND pipeline_role='background_render' AND input_image_ids IS NOT NULL AND input_image_ids::text!='[]';"
echo "=== L04 bg 파일경로(육안용) ==="
psql -h localhost -U theroad -d theroad -t -c "SELECT variant_type, file_path FROM image_asset WHERE episode_id='$EP' AND pipeline_role='background_render' AND variant_type IN ('L04B01','L04B02','L04B03') ORDER BY variant_type;"
