11 KiB
HMDesign OrgChart P9 — Storybook 디자인 보완 보고
RESULT: PASS — P9 변경 범위. Overview와 Fixed의 표·관계사 내부 디자인을 공유하고 Department Colors 카드 미리보기 행을 정렬했다. 기존 Guard FAIL·미검증과 접근성 잔여 이슈를 별도로 보존한다. P10은 시작하지 않았다.
작업 기준과 시간
- 폴더:
D:\디자인시스템\HMDesign-OrgChart - 브랜치:
feature/orgchart-package - 시작·완료 HEAD:
7614507583927a25a270963a74ff044be0557b9f - origin:
https://gitea.hmac.kr/b25027/HMDesign.git - 범위:
STORYBOOK_ONLY, 실제 React Storybook, 기존 P7·P8 미커밋 변경 보존. - Started At:
2026-10-13 10:13:21 KST - Completed At:
2026-10-13 10:28:23 KST - Actual Duration:
15분 2초 - Estimated Duration:
35–50분— 분석 10분 / 최소 수정 15–20분 / 통합 검증·보고 10–20분 - Variance:
예상보다 19분 58초–34분 58초 짧음
요청 항목별 결과
| 항목 | 결과와 근거 |
|---|---|
| Overview 제목 3개 | 관계사·회사 로고 / 조직·직위별 인원 현황 / 관계사별 인원 현황. 기존 외부 제목 두 곳을 요청한 정확한 명칭으로 보완. |
| 조직·직위별 인원 표 | PASS. Fixed와 동일한 제목·7개 조직 행·5개 직위 열·소계·합계 41명. 각 행·직위 합계 검산, 실제 DOM 및 computed Typography·배경·Border·Height·Padding·정렬·줄바꿈·Radius·Shadow·폰트 동일. |
| Fixed Summary 재사용 | 기존 createOrganizationTotals와 createAffiliationBar를 Story 전용 선택형 presentation="workdesk"로 호출. 동일 org-chart-p3-summary.css selector를 공유. 표 디자인 중복 CSS 및 Fixed 절대 좌표 복사 없음. 기본 standalone Presenter와 공개 API는 유지. |
| 관계사별 인원 현황 | PASS. 동일 로고·회사명·인원수·총계 41명·내부 Typography·Border·배경·Radius·Shadow 재사용. Overview 제목 유지. 페이지 폭에 따른 wrapping과 높이만 독립 조정하며 모바일 줄 구분선은 숨김. |
| 로고 영역 | PASS. 기존 승인 로고 7개 모두 로드, 원본 자산·색·비율 및 object-fit:contain 보존. 로고 자체에 새 배경·Border·Shadow 추가 없음. 기존 외부 견본 컨테이너 유지. |
| Department Colors | PASS. 기존 Fixed 조직색 6개·HEX·SVG 카드·폰트 보존. CSS subgrid로 같은 행의 제목·설명·컬러 legend 블록·카드·대비 안내 시작점을 정렬. 1920/1440에서 같은 행 카드 preview Y가 정확히 일치. 390에서는 단일 열·잘림 없음. 카드 종류별 146×68/108×52 및 대표자 146×74 유지. |
| Full Composition | PASS. 수정 전후 원본 1920×915, Stage DOM SHA-256 및 검사한 모든 표·관계사·카드 computed 값 동일. 확정 배경·카드·허브·화살표·장식·파견/휴직·통계·하단 바 보존. 3개 화면에서 전체 bounds·비례 축소·휠 후 내부 offset 0, 문서 가로/세로 스크롤 없음. Fixed 레이아웃/JS 수정 없음. |
| Expanded OrgChart | PASS. TB/LR/Hybrid를 1920×1080·1440×900·390×844에서 확인. 기존 20명 fixture·Fit·연결선·방향별 Border·7회사 색·흰 제목 유지. 대표 그룹 Hover·Focus·Collapsed·Expanded 흰색 확인. 카드 원래 외형과 Placeholder 유지. |
| HMDesign UI Dialog | PASS. 실제 공개 Export Dialog와 DialogContent 등 사용. 직원 카드 클릭→단일 HM Portal·identity·focus, Core native popup 중복 없음, Tab 유지·ESC·닫기 버튼·카드 focus 복귀, 390px 표시 확인. React/Fixed/Vanilla 연결 소스 변경 없음. Fixed/Vanilla native 경로는 기존 P7·P8 PASS와 동일 소스 근거 재사용. |
| 공통 Storybook 스타일 | PASS. 기존 StoryPage / StoryPageHeader / StorySection 및 공통 CSS 유지. 4페이지 실제 제목·설명·섹션 Typography/Border 동일. 페이지 envelope/gutter 설정 소스 보존. Core Shadow DOM 독립 Scope 유지. 코드 예제 형식 변경 없음. |
| 메뉴·ID | PASS. 공개 4페이지·기존 ID/URL 유지. 독립 OrgChart root·Patterns 다음 순서·내부 숨김 정책은 변경하지 않은 P8 설정/CSF 및 기존 manager PASS 재사용. 내부 Story 삭제 없음. |
| 변경 범위 검사 | 본 브라우저 85/85 PASS, 누락된 Expanded 1920px만 추가 10/10 PASS. 서로 다른 실행의 중복 오류 체크를 합산한 전체 고유 검사 수는 주장하지 않음. Core/Story 타입 검사·Core/Storybook production build·diff 검사 PASS. |
| 신규 콘솔 오류 | 두 실행 모두 0, pageerror/console error 없음. |
| 기존 검증 재사용 | P7 데이터 정책·2,100명·Zoom/Pan·독립 옵션·회사색/상태, P8 메뉴 위치/공통 frame/최소 기능 PASS를 관련 소스 동일 근거와 함께 재사용. 전체 과거 suite·2,100명 성능 검사 재실행 없음. |
| Git 보호 | Stage·Commit·Push·Merge·main checkout·Pull·Reset·Rebase·Force Push·PR 모두 미진행. staged 파일 0, branch/HEAD 동일. 기존 809개 authored 파일 중 P9 대상 4개만 변경, 805개 hash 동일. 신규 authored 파일은 runner와 이 보고서 2개. |
수정 범위와 검증
| P9 파일 | 변경 |
|---|---|
src/org-chart/org-chart-page-previews.tsx |
Overview 정확한 제목, Fixed Summary Presenter 선택, 설명 정합화 |
src/org-chart/core-component-preview.tsx |
Story-only 선택형 Workdesk Presenter, 기본 독립 Summary 유지 |
packages/org-chart/src/styles/org-chart-p3-summary.css |
기존 Fixed 스타일 selector 공유, Overview 흐름·wrapping만 보완 |
packages/org-chart/src/styles/org-chart-content.css |
Department Colors 5개 콘텐츠 블록 행 정렬 |
examples/org-chart/verify-p9.mjs |
P9 표·집계·스타일 동등성/반응형/보존/Dialog/메뉴 검증 |
docs/org-chart/implementation-report-p9.md |
이 보고서 |
집계 selector·fixture·회사색·승인 이미지·독립 Summary API·Fixed 좌표/레이아웃·Auto 알고리즘·React Dialog·공통 Theme·StoryPage·메뉴 설정은 변경하지 않았다.
P8 helper의 다른 페이지 구현은 유지하고 Overview 부분만 수정했다.
packages/*/dist 및 test-results/org-chart-p9는 기존 ignore 정책의 생성 산출물이며 Stage하지 않았다.
| 실행 | 결과 |
|---|---|
npm.cmd run typecheck:org-chart |
PASS, JS/API 변경 없이 공유 Core CSS의 패키지 계약 확인 |
npm.cmd run build:org-chart |
PASS, 최종 CSS specificity 보완 반영 |
node node_modules/typescript/bin/tsc -p test-results/org-chart-p9/story-tsconfig.json |
PASS, 수정 Story/helper 및 전체 관련 CSF 포함 |
| Storybook 최종 production build | PASS, 최종 log. 기존 500kB chunk-size 경고와 bundler plugin timing 진단, build 오류 없음. |
| P9 실제 브라우저 | 85/85 raw, 1920 Expanded 추가 10/10 raw. Chrome 155.0.8059.39, 기존 Playwright 사용, 패키지 설치/업데이트 없음. |
| 독립 Summary 최소 회귀 | 원래 internal Story의 상세 직접/하위 포함/합계 및 Affiliation 카드 layout 유지 확인. |
| 소스 보존·Git | baseline, 최종 audit, git diff --check PASS. |
동일 조건의 성공 검사를 반복하지 않았다. 최초 캡처에서 Overview bar wrapping의 CSS specificity 충돌을 발견해 preview-only selector를 보완했다. 해당 CSS 보완으로 기존 build가 무효화됐으므로 영향을 받는 Core/Storybook build만 갱신했다. 소스 변경이 없는 타입 검사는 반복하지 않았다. 브라우저 85개 검사 이후 누락된 1920px Expanded 9개 모드/스타일 검사와 오류 검사를 추가했으며 기존 폭 검사는 반복하지 않았다.
Guard·NOT VERIFIED·P10 잔여
Guard 원본의 status/staticStatus FAIL / runtimeStatus NOT VERIFIED를 보존한다. 범위 분류에서 P8 기존 TOKEN-001 10 FAIL / TOKEN-002 10 NOT VERIFIED가 모두 동일함을 확인했다. 신규 FAIL 0이다. 선택한 Core CSS 두 파일에는 SCOPE-001 2 NOT VERIFIED가 추가된다. 패키지 stylesheet는 Storybook 정적 import graph 밖이므로 Core build와 실제 브라우저 동등성/보존 결과를 별도 증거로 연결한다. 이를 Guard PASS로 덮어쓰지 않았다.
- Guard styleEvidence: STATIC PASS / RUNTIME NOT VERIFIED / DESIGN_INTENT NOT VERIFIED / FINAL NOT VERIFIED.
- 결합
styleVerification은 생성하지 않았으며 NOT VERIFIED. 기록한 실제 computed PASS는 전체 CSS/임의 외부 props의 인증 또는 사용자 디자인 의도 승인이 아니다. - 기존 삼안·장헌산업 흰색 제목의 일반 텍스트 대비 미달 진단 유지. 확정 회사색·흰색을 임의 변경하지 않았다.
- Compact NOT SUPPORTED, 전체 옵션 조합·스크린리더·다른 브라우저·실기기·SSR/hydration·API/배포·장시간 2,100명은 기존 상태 유지/이번 NOT VERIFIED.
- P10에서 사용자 최종 디자인 검토, 접근성 대비 해결 정책과 Guard 패키지 CSS 근거 범위를 우선 확정할 수 있다. 새 기능/Compact/API/Docker/알고리즘 수정은 별도 범위 확정이 필요하다.
- P10 및 Git 작업은 사용자 검토를 기다린다.
실제 화면
- Overview 1920px, 1440px, 390px
- Department Colors 1440px, 390px, 모바일 상세
- Full Composition 1920px, 1440px, 390px
- Expanded TB 1920px, LR 1920px, Hybrid 1920px, LR 390px, 원래 크기 카드
- 실제 HM Dialog 1440px, 390px
현재 미리보기: Overview, Department Colors, Full Composition, Expanded OrgChart.