diff --git a/Front/client/src/pages/Home.tsx b/Front/client/src/pages/Home.tsx index da29b96..ea77145 100644 --- a/Front/client/src/pages/Home.tsx +++ b/Front/client/src/pages/Home.tsx @@ -527,6 +527,31 @@ export default function Home() { > {runMeta.status} + {runMeta.filtered_section_ids.length > 0 && ( +
+ + Filtered: {runMeta.filtered_section_ids.length} + +
+ {runMeta.filtered_section_reasons.map((r, i) => ( +
+
{r.section_ids.join(", ")}
+
selection_state: {r.selection_state}
+ {r.merge_type &&
merge_type: {r.merge_type}
} + {r.template_id &&
template_id: {r.template_id}
} + {r.v4_label &&
v4_label: {r.v4_label}
} + {r.phase_z_status &&
phase_z_status: {r.phase_z_status}
} + {r.score !== null &&
score: {r.score}
} + {r.source &&
source: {r.source}
} + {r.position &&
position: {r.position}
} +
    + {r.filter_reasons.map((reason, j) =>
  • {reason}
  • )} +
+
+ ))} +
+
+ )} )} diff --git a/Front/client/src/services/designAgentApi.ts b/Front/client/src/services/designAgentApi.ts index accb166..d7f4a61 100644 --- a/Front/client/src/services/designAgentApi.ts +++ b/Front/client/src/services/designAgentApi.ts @@ -207,6 +207,22 @@ export async function exportSlidePlan(slidePlan: SlidePlan, userSelection: any): // step20_slide_status.json → 최종 상태 (PASS / RENDERED_WITH_VISUAL_REGRESSION / ...) // ───────────────────────────────────────────────────────────────────────────── +// IMP-10 D-1 : verbatim mirror of step20_slide_status.json.data.filtered_section_reasons[] +// schema (src/phase_z2_pipeline.py:2217-2278). `source` / `position` only present on +// the override-uncovered additive variant. Strings rendered verbatim — no enum redefinition. +export interface FilteredSectionReason { + section_ids: string[]; + merge_type: string | null; + template_id: string | null; + v4_label: string | null; + phase_z_status: string | null; + score: number | null; + selection_state: string; + filter_reasons: string[]; + source?: string; + position?: string | null; +} + export interface RunMeta { run_id: string; mdx_path: string; @@ -214,6 +230,8 @@ export interface RunMeta { status: "PASS" | "RENDERED_WITH_VISUAL_REGRESSION" | "PARTIAL_COVERAGE" | "ABORTED" | string; visual_check_passed: boolean; full_mdx_coverage: boolean; + filtered_section_ids: string[]; // step20 filtered_section_ids + filtered_section_reasons: FilteredSectionReason[]; // step20 filtered_section_reasons preview_url: string; // /data/runs/{runId}/preview.png final_html_url: string; // /data/runs/{runId}/final.html layout_candidates: string[]; // step07 layout_candidates list @@ -393,6 +411,8 @@ export async function loadRun(runId: string): Promise { status: slideStatus.data?.overall ?? "UNKNOWN", visual_check_passed: slideStatus.data?.visual_check_passed ?? false, full_mdx_coverage: slideStatus.data?.full_mdx_coverage ?? false, + filtered_section_ids: slideStatus.data?.filtered_section_ids ?? [], + filtered_section_reasons: slideStatus.data?.filtered_section_reasons ?? [], preview_url: `${base}/preview.png`, final_html_url: `${base}/final.html`, layout_candidates: layout.data?.layout_candidates ?? [],