From 5c997f3a7e00617d1f5a02640a9b509dd4889bde Mon Sep 17 00:00:00 2001 From: DongHyeonka Date: Tue, 18 Aug 2026 08:44:35 +0900 Subject: [PATCH] docs: correct the test:visual root-cause attribution in the alignment record MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Fix round 1 on Task 12's evidence. The design doc and task-12-report.md attributed all 18 test:visual failures to Task 9 and described them as uniformly taller. Independently re-derived from git log/git diff instead of re-asserting the review's numbers on trust: - 7 of 18 (both Public tests + 5 Studio preview/snapshot tests) render shorter, by 93-94px, caused by 79e9aa8 ("fix: align TechLog article content widths") — already on main, an ancestor of this branch's merge-base 9e5fbd1. case-body-renderer.tsx/evidence-figure.tsx are byte-identical across 9e5fbd1..HEAD; the golden PNGs were last written at 3a7c5de, before 79e9aa8. Pre-existing at the merge-base, not caused by this branch; refresh belongs against 79e9aa8 on main. - 6 of 18 (Studio editor surfaces) render taller, from this branch's sanctioned Asset Picker/upload UI (Task 10) — the only failures this branch actually produced. - Condition-1's citation (check:architecture/check:registries) didn't support a Public-render claim; replaced with the actual evidence (empty renderer diff) plus the main-inherited visual failure. - Softened test:coverage's "no new code is under-covered" — risk-coverage has zero tech-log entries, so its silence isn't evidence either way; stated the global thresholds that are actually cleared instead. No code changed; no gates re-run. --- .../specs/2026-08-17-techlog-backend-alignment-design.md | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/docs/superpowers/specs/2026-08-17-techlog-backend-alignment-design.md b/docs/superpowers/specs/2026-08-17-techlog-backend-alignment-design.md index e35308c..d0830b3 100644 --- a/docs/superpowers/specs/2026-08-17-techlog-backend-alignment-design.md +++ b/docs/superpowers/specs/2026-08-17-techlog-backend-alignment-design.md @@ -18,7 +18,7 @@ | # | 완료 조건 | 판정 | 근거 | |---|---|---|---| -| 1 | 현재 Public UI·라우트가 변경되지 않는다 | 충족 | `check:architecture`, `check:registries` PASS; Public 화면 테스트(`public-document-screens.test.tsx` 등) 무변경 통과 | +| 1 | 현재 Public UI·라우트가 변경되지 않는다 | 충족 | Public 화면 테스트(`public-document-screens.test.tsx` 등) 무변경 통과; `case-body-renderer.tsx`/`evidence-figure.tsx`는 `9e5fbd1..HEAD` 사이 diff가 비어 있어 렌더러 코드에 변경이 없다(`check:architecture`/`check:registries`는 import 그래프·레지스트리 정합만 보고 Public 렌더 출력을 관찰하지 않으므로 이 판정의 근거가 아니다). `test:visual`의 Public 스냅샷 실패는 이 브랜치가 아니라 `main`의 `79e9aa8`에서 물려받은 것이다(아래 §Task 12 참고) | | 2 | 현재 Studio 작업 흐름이 변경되지 않는다 | 충족 | 기본 `MOCK`에서 `test:tech-log`(36 files/303 tests) 전부 PASS; `tech-log-studio-workflow.spec.ts` chromium 2/2 PASS | | 3 | Studio 계약이 canonical에서 생성되고 digest 고정·drift 게이트 동작 | 충족 | `check:tech-log-contract`: "in sync: @tech-log/studio-contract@2.0.0 (ce2e748), 19 operations" | | 4 | `StudioGateway` 전체 operation이 HTTP 어댑터로 구현·MSW 검증 | 충족 | `test:unit`/`test:integration`의 HTTP·MSW 계약 스위트 PASS (환경 요인 실패 1건 제외, 아래 참고) | @@ -40,7 +40,11 @@ - `tests/unit/ci-artifact-contract.test.ts` 16개 테스트가 `bwrap: loopback: Failed RTM_NEWADDR: Operation not permitted` 샌드박스 제약으로 실패한다. 브랜치 분기점 `9e5fbd1`에서도 동일하게 재현되는 환경 문제이며 이번 작업과 무관하다. - `test:coverage`는 위 환경 실패 때문에 vitest가 non-zero로 종료해 `check-risk-coverage.ts`까지 도달하지 못한다(vitest 기본값 `coverage.reportOnFailure: false`). 그 파일만 제외한 진단 실행에서는 `src/application/policies/compatibility.ts`(re-export전용, 계측 가능한 statement 0개)와 `reference-http-gateway.ts`(statements 86.95%/branches 85%, 임계값 90%) 2건이 걸리는데, 둘 다 병합 지점(`9e5fbd1`) 이후 이 브랜치가 건드리지 않은 파일이다. -- `test:visual`(chromium)에서 130개 중 18개가 실패한다. Studio 문서/미리보기/게시 화면과 일부 Public Case 화면의 스냅샷 높이가 커졌다(예: 1440×2706 → 1440×2999) — evidence figure가 이제 실제 backend Asset 크기로 렌더되기 때문으로 보이며(Task 9), 골든 스냅샷 갱신 여부는 리뷰 판단이 필요해 이번 Task에서 임의로 갱신하지 않았다. +- `test:visual`(chromium)에서 130개 중 18개가 실패하며, 원인은 두 가지로 서로 무관하다. + - **원인 A — 이 브랜치 이전부터 존재(사전 존재)**: Public 테스트 2개(동일 라우트, 서로 다른 describe 블록)와 Studio preview/snapshot 계열 5개, 총 7개는 스냅샷 높이가 **줄었다**(예: 1440×6506 → 1440×6412, 1440×1904 → 1440×1811) — 커진 게 아니다. 원인은 `main`에 이미 있고 이 브랜치의 merge-base `9e5fbd1`의 조상인 `79e9aa8`("fix: align TechLog article content widths")로, `.evidence-figure`의 CSS 폭을 `min(61rem, calc(100% + 15rem))`(≈912px)에서 `min(var(--body-copy), 100%)`(672px, 비율 73.6%)로 바꿨다. `case-body-renderer.tsx`/`evidence-figure.tsx`는 `9e5fbd1..HEAD` diff가 비어 있고, golden PNG는 `79e9aa8`보다 앞선 `3a7c5de`에서 마지막으로 기록됐다 — 이 브랜치가 만든 회귀가 아니라 merge-base 시점에 이미 깨져 있던 기준선이다. 갱신은 이 브랜치가 아니라 `main`의 `79e9aa8`에 대해 기록해야 한다. + - **원인 B — 이 브랜치의 승인된 작업**: Studio 편집 화면 6개는 실제로 스냅샷보다 **커졌다**(예: 1440×2706 → 1440×2999, 360×1000 → 360×1130) — Task 10이 Case 편집기에 추가한 Asset Picker·업로드 다이얼로그가 원인이다. + - 나머지 5개는 크기 변화 없이 픽셀 단위 차이만 있다(추가 조사하지 않음). + - 골든 스냅샷 갱신 여부는 두 원인 각각 별도의 리뷰 판단이 필요해 이번 Task에서 임의로 갱신하지 않았다. - `test:e2e`/`test:a11y`는 chromium에서 전부 통과하고, firefox/webkit 실패는 이 환경의 브라우저 의존성 문제다(firefox: Pretendard 폰트의 "name records not sorted" 경고를 strict 콘솔 검사가 실패로 잡음; webkit: 호스트에 필요한 시스템 라이브러리 없음 — `playwright install-deps` 필요). 전체 명령·원문 출력은 `.superpowers/sdd/2026-08-17-techlog-backend-alignment/task-12-report.md`에 기록했다.