Files
HMDesign/docs/sw/sw-viewer-storybook-merge-verification-2026-10-21.md
T
shkim4 a25d2b31c5
Deploy Storybook / deploy (push) Successful in 1m10s
test(sw): approve the SW Viewer Header API and Storybook cleanup baselines
Test-only approval commit after the 34f02bf main merge (sw-test-regression-
baseline section 9); no protected path changes.
- public-api.approved.json from the clean 34f02bf build: 170 exports kept,
  only SWViewerHeader.d.ts changes (7 optional SWViewerHeaderProps).
- approvedMainCommit b4e0771 -> b320a8f; approvedHeaderDeclarations for the
  23d522c Story declarations; withApprovedOrder for the approved SW Header
  first position; storybook-simplification expects SW/Theme hidden.
- Verification report: docs/sw/sw-viewer-storybook-merge-verification-2026-10-21.md
2026-10-21 15:21:30 +09:00

4.8 KiB
Raw Blame History

SW Viewer Header · Storybook 정리 main 병합 검증 (2026-10-21)

1. 병합

항목 값
작업 Commit 23d522c (SW Viewer Header Optional Props, SW Storybook 정리)
선언 승인 기록 34f02bf (approvedHeaderSourceChanges에 23d522c 선언 11개, 브랜치에서 병합 전 기록)
main 병합 46119ea → 34f02bf Fast-forward, 원격 main Push
병합 후 수정 b320a8f Settings Popup Story 높이·배치, VIEWER.md Story 이름
승인 기준 Commit 이 보고서와 같은 테스트 전용 Commit

2. 승인 기준 갱신

  • public-api.approved.json: 깨끗한 34f02bf 빌드(build-info.json dirty false)에서 --snapshot. 170개 Export·42개 선언 파일 유지, 바뀐 값은 approvedCommit과 components/sw-viewer/SWViewerHeader.d.ts 해시뿐입니다. 이 차이는 SWViewerHeaderProps의 Optional Props 7개(logoMenu, logoMenu.items[].icon, documents, activeDocumentId, onDocumentSelect, onDocumentOpen, documentOpenLabel)입니다. logoMenu·icon은 현재 Story·Fixture에서 쓰지 않지만 사용자 지시로 유지합니다.
  • approvedMainCommit: b4e0771 → b320a8f (§9 절차의 테스트 전용 Commit, 보호 경로 변경 없음). Snapshot의 34f02bf는 b320a8f와 HEAD의 조상입니다.
  • approvedHeaderDeclarations: Overview, ResponsiveMore, PropertyPanelComparePage, InteractiveStates, DocumentDropdown → 23d522c (이전 170a5c2 / 2b0e1a2 승인 대체). approvedHeaderSourceChanges의 23d522c 항목(11개)과 같은 승인입니다.
  • withApprovedOrder: 승인된 SW Header 최상단 정렬(sw-header--overview)을 미사용 검사의 순서 비교에 반영합니다. 이름·제목·태그 비교는 그대로입니다.
  • storybook-simplification: 사용자 요청으로 SW/Theme가 사이드바에서 숨겨져 기대 순서를 Header → Footer → Popup → Viewer로 바꿨습니다. Theme Story ID와 직접 URL은 유지됩니다.

3. 검증 결과 (Node 22.23.2, npm run build-storybook 후, 증거는 저장소 밖 임시 폴더)

검사 결과
Public API Guard 7/7 PASS
Typecheck (tsconfig.app.json) 오류 0
check:ai-docs, ai-docs.check.mjs PASS, 46/46 PASS
home-menu-integration 23/23 PASS
overview / overview overlays 54/54, 20/20 PASS
storybook-unused-removal (Source Guard) 93/93 PASS
dropdown-consolidation (Source Guard, Dropdown 숨김·직접 URL) 229/229 PASS
storybook-cleanup-stage1 41/41 PASS
property-panel-comparison 71/71 PASS
storybook-simplification 9/9 PASS
integrated-improvement (options, popup) 90/90 PASS
footer-popup-viewer-refinement 47/47 PASS
keyboard-dismiss 22/22 PASS
text-weight 50/50 PASS
viewer 70/70 PASS
viewer-logo-document-menu 47/47 PASS
theme-inheritance 25/25 PASS (수정 전 24/25, 아래 §4)
detail-buttons verify 103/123, 기존 실패 20 (아래 §5)

4. 병합 후 발견·수정

  • theme-inheritance 회귀 1건(sw-viewer--content-variants@1440): 통합한 Settings Popup Story의 프레임이 870px로 커져 1000px 창보다 페이지가 길어졌고, 전체 페이지 캡처가 Viewport를 바꾸면서 속성 팝업의 실시간 좌표 값 9개가 바뀌었습니다(대조 실행도 같은 9개, 픽셀 차이 0). 상속 구조 문제가 아니라 Story 배치 문제라 b320a8f에서 프레임 760px, 옵션 오른쪽, 축척 지정은 속성 아래로 옮겼습니다. 1200px 기본 열에서 네 팝업이 겹치지 않습니다.
  • packages/sw/ai/VIEWER.md의 Story 이름 Popup Content Variants → SW/Viewer › Settings Popup.

5. 남은 항목

  • detail-buttons의 Header DOM 기준(docs/sw/detail-button-qa/baseline.json, 2026-10-16 fc26afd)은 이후 승인된 Header Commit 18개(글꼴·Bold·More 등) 이전 값이라 overview·k-guide 20건이 이번 변경 전부터 실패합니다(K Guide는 이번에 바뀌지 않음). 기준 갱신은 사용자 승인 후 진행합니다.
  • 시각 회귀(integrated-visual, viewer-regression)는 이전 빌드와 새 빌드를 비교하는 스크립트라 실행하지 않았습니다. 간소화한 SW Story(SW Header·Responsive More·Home Menu·Footer Responsive More·Popup·Viewer Settings Popup·Header + Dropdown)의 스크린샷 차이는 예상된 차이이며 기준 이미지 재승인이 필요합니다. 기준 이미지는 갱신하지 않았습니다.
  • Firefox 계열(range-cross-browser, viewer-logo-document-menu-firefox, hover-stability-firefox)과 hover-stability는 이번에 다시 실행하지 않았습니다.
  • packages/sw/src/components/sw-viewer/types.ts의 collapseBelow / iconOnlyBelow JSDoc은 숫자를 순서로만 쓰는 현재 동작보다 오래된 설명입니다. 수정하면 Public API 선언 해시가 바뀌므로 별도 승인 작업으로 남깁니다.