From fb478f951b2983220b67c021c2edee126108bf02 Mon Sep 17 00:00:00 2001 From: DongHyeonka Date: Fri, 21 Aug 2026 18:10:51 +0900 Subject: [PATCH] fix: say which version a stale validation judged, before showing its errors MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The validation screen presented a report from an earlier version with the same weight as a current one — same status badge, same full error list — and marked the difference with two small words. An author read a version 2 report on a version 5 document and understood those errors as the document's present state. Every error in that list had already been fixed. The report now leads with what it is: which version it judged, that the document has changed since, and where to re-run it. The badge stops claiming a verdict and the issue list recedes, because a judgement about an older version is not a verdict about this one. --- .../studio/components/validation-report.tsx | 21 ++++++++++++++++--- .../presentation/styles/workflow.module.css | 5 +++++ 2 files changed, 23 insertions(+), 3 deletions(-) diff --git a/src/features/tech-log/presentation/studio/components/validation-report.tsx b/src/features/tech-log/presentation/studio/components/validation-report.tsx index c2cbf74..2e93f5c 100644 --- a/src/features/tech-log/presentation/studio/components/validation-report.tsx +++ b/src/features/tech-log/presentation/studio/components/validation-report.tsx @@ -55,11 +55,23 @@ export function ValidationReport({

검증 결과

- {report.status} + {current ? report.status : "지난 결과"} + {/* + 낡은 판정을 현재 것과 같은 모양으로 보여주면 읽는 사람은 지금 상태로 읽는다. 실제로 + 버전 2 때의 오류 목록을 보고 버전 5 가 그렇다고 이해한 일이 있었다 — "이전 결과" 라는 + 작은 글씨 하나로는 그 오해를 막지 못한다. 무엇에 대한 판정인지 먼저 말한다. + */} + {current ? null : ( +

+ 아래는 버전 {report.validatedVersion} 을 검사한 지난 결과입니다. + 그 뒤 문서가 바뀌었으니 지금 상태와 다를 수 있습니다 — 위의 다시 검증을 + 눌러 현재 버전을 확인해 주세요. +

+ )}
대상 버전
{report.validatedVersion}
상태
{current ? "현재" : "이전 결과"}
@@ -67,7 +79,10 @@ export function ValidationReport({
유효 시각
{formatDateTime(report.validUntil)}
{issues.length ? ( -
    +
      {issues.map((issue, index) => (
    1. span:last-child { display: none; } :global(.studio-preview-public-frame .public-record-embedded) { padding: 22px 16px; } } + +/* 지난 판정은 현재 것과 같은 무게로 보이면 안 된다 — 읽는 사람이 지금 상태로 읽는다. */ +:global(.studio-workflow-status--stale) { border-color: var(--line); background: var(--paper); color: var(--muted); } +:global(.studio-workflow-stale-notice) { margin: 0 0 18px; padding: 12px 14px; border: 1px solid var(--line-strong); border-radius: 6px; background: var(--paper); color: var(--muted); font-size: 13px; line-height: 1.6; } +:global(.studio-workflow-issue-list--stale) { opacity: 0.62; }