package com.zioinfo.kintex.module.m5.dto;

import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;

import java.util.Map;

/**
 * RenderJob 발행 요청(SCR-06/12). scene은 PLANNING §6-2 씬 스키마(hall/booth/design/lighting/wiring).
 * 백엔드는 이 payload를 Redis 큐에 발행하고, 나노바나나 Python 워커(tools/nanobanana)가 소비·생성한다.
 *
 * @param shotPreset          S1~S7 (S6는 백엔드 래스터 합성 경로 — 워커가 render_wiring_overlay_raster 사용)
 * @param scene               §6-2 씬 스키마(구조화 데이터)
 * @param referenceImageUrl   구조 보존용 참조 이미지(빈 부스/간이 렌더) URL. 선택
 */
public record RenderJobRequest(
        @NotBlank String shotPreset,
        @NotNull Map<String, Object> scene,
        String referenceImageUrl
) {
}
