#pragma once

// dod_evidence_panel — ImGui panel reutilizable para validar DoD evidence.
//
// Renderiza una tabla con items DoD (Definition of Done) + evidencias
// adjuntas. Cada fila: icono de status, id, kind, expected, preview de
// evidence (screenshot path / log preview / url clickable / cmd output con
// diff vs expected), y botones Validate/Reject que invocan callbacks.
//
// La logica pura (contar status, buscar evidence, mapear icon/color) vive en
// dod_evidence_panel_helpers.{h,cpp} y se testea sin ImGui.
//
// Uso:
//   #include "viz/dod_evidence_panel.h"
//   fn_viz::DodPanelState state;
//   state.run_id = "run_abc123";
//   state.items     = load_dod_items(...);
//   state.evidences = load_dod_evidences(...);
//   state.on_validate = [](const std::string& id) { db.mark_validated(id); };
//   state.on_reject   = [](const std::string& id) { db.mark_failed(id); };
//   fn_viz::render_dod_evidence_panel(state);

#include "dod_evidence_panel_helpers.h"

namespace fn_viz {

// Renderiza el panel inline en el current ImGui window.
// Debe llamarse dentro de un frame ImGui activo (entre NewFrame/Render).
void render_dod_evidence_panel(DodPanelState& state);

}  // namespace fn_viz
