Skip to content

[7445] 개인정보 분석 편람 HWPX 전체 피델리티 #7720

Closed

Description

@jangster77

대표 이슈와 범위

대표 이슈: #7445

개인정보 분석 편람 HWPX 전체 피델리티의 원본·독립 PDF·검증 근거와 후속 결과를 한곳에서 추적합니다. 2026-10-10 사용자 요청에 따라 #7445의 첫 본문과 전체 코멘트를 문제별 하위 이슈로 정리했습니다. 아래 기록은 원문의 링크·수치·명령·정정 내용을 보존한 인용입니다.

현재 추적 상태

기존 기록에 따른 후속 검증 대상입니다. 아래의 수치·완료 표현은 해당 작성 시점의 관측이며 이번 구조 변경으로 재검증한 결과가 아닙니다.

후속 확인 기준

  • 실제 수정은 해당 기록의 원본과 독립 한컴 Print PDF로 원인·적용 경로를 확인합니다.
  • 렌더링 회귀 추가·기대값 보정은 관련 전체 범위 Native/fresh WASM의 최저90% 이상과 직접 review 판독 후 진행합니다.
  • 원본 보존과 회귀 검사 처리 범위를 구분하고, 정확한 기존 검사를 문서 미달만으로 일괄 제외하지 않습니다.
  • 완료 여부는 이 하위 이슈의 실제 보정·검증·통합 증거로 갱신합니다. 과거 기록의 조건·범위는 아래 작성 시점을 기준으로 읽습니다.

원문과 후속 기록

기존 코멘트 4 — jangster77, 2026-09-28T11:09:12Z

출처: #7445 (comment)

추가 대상: 개인정보 분석 편람 75544_pii_bunseok.hwpx

메인터너 회귀 검토에서 이 문서의 전체 피델리티 미달을 확인했습니다. 사용자께서 승인하신 “실패한 회귀 문서의 Visual Sweep이90%미만이면 이 이슈에 등록한 뒤 관련 검사를 제거” 절차로 이관합니다. 제거를 렌더링 결함 해결이나 승인으로 판단하지 않습니다.

입력과 독립 기준

  • 원본 samples/task2097/75544_pii_bunseok.hwpx: 162,611byte, SHA-256 f429768ec02e5a849d08c06678cbee029fdc8618ca9e2bdcdbba485087fe71f1. 원본은 바이트 동일하게 mydocs/pr/assets/issue7445/75544_pii_bunseok.hwpx에 보존합니다.
  • 독립 기준 pdf/task2097/75544_pii_bunseok-hwpx-2020.pdf: 한컴PDF66쪽, 777,176byte, SHA-256 0fef38f44b3825f1c97869c2720112536504eaf30cec2a2d2af6d4399ffe8770. 실제Creator는Hwp2022이며 파일명만으로 엔진을 판단하지 않았습니다. 기존 75544_pii_bunseok-2020.pdf는cairo출력이므로 이번 독립 비교에는 사용하지 않았으며 파일은 보존합니다.
  • 검토head 8672401774d5a173ddcc681ceb844124dad5cf62, production source는 b7436944b81d20ad799edcd59ead3b94621902b3 이후 불변입니다. 봉인Native실행기 SHA-256 ad4f63371a5b205b3696d4e653526cfbda9ec894748ba9de24c5f35f463f14c7와 설치된 검증 글꼴을 사용했습니다.

실패와 실제 출력

  • body partition0: 해당 문서의 본문바닥 초과가1→2건으로 증가했습니다. 22쪽 표3.2533px,46쪽 표4.0267px이며 현재70쪽/기준66쪽입니다.
  • 기존 [renderer] 셀 안 중첩 표가 부모 셀을 넘어 용지 밖까지 그려진다 — 59쪽에서 549자 소실, 본문 하한 +678.7px (75544, 저장소 안 재현) #5846 전용 함수는 개별1FAIL(exit100): 기대66쪽/실제70쪽에서 실패했습니다. 검사 원인을 통과로 바꾸지 않습니다.
  • Native22·46·59·60쪽을 동일 입력/기준 PDF로비교했습니다. 46쪽65.56940%,59쪽30.66565%,60쪽30.63875%이며 pr_review_gate=re_review_required입니다. 46쪽의 표높이/내용흐름과59쪽의 실제 페이지내용소유 차이를 review/overlay에서 직접 확인했습니다. 글꼴예외는 적용하지 않았습니다.
  • 최저값90%미만이라는 부정 증거를 근거로 이관합니다. 전체66쪽 및fresh WASM비교는 미실행이며, 그 범위의 통과를 주장하지 않습니다.

검사 제거와 이후 작업

  • 문서전용 issue_5846_cut_fragment_defers_partial_nested_tail_row와 해당 문서의body-overflow/off-canvas/text-overlap/overflow-cell/쪽수oracle/render-page 원장 행만 제거합니다. 자동corpus에서 빠지도록 원본을 이슈자산으로 이동하며 generic 검사함수와 다른 문서·공차는 유지합니다.
  • char_shapes의 정적IR추출 스냅샷/직렬화계약은 렌더링 승인과 관계없는 자료이므로 유지합니다.
  • 로컬증적은 output/pr-review/planet6897-7382-20260926/stage73-pii75544/visual-native/pii75544/에 보관합니다. 대표PNG/검증JSON은 이슈자산에 커밋하고 이후 제출PR에서 공개경로를 연결하겠습니다. 로그/임시SVG는 커밋하지 않습니다.
  • 후속 전체피델리티개선에서는 표 분할·페이지내용소유·본문점유/뒤내용과70→66쪽 문제를 수정한 뒤, 원본 전체Native/fresh WASM각쪽90%이상 및 직접판독을 확인하고 독립 기대값에 근거한 유효 회귀 검사를 재구축합니다.

사용자 범위 정정 후 #5846 한 함수 재판정

PR #7382를 실제 막는 검사만 처리하라는 사용자 지시에 따라 보정106~112에서 정상 함수를 복원하고 원문을 samples/task2097/75544_pii_bunseok.hwpx에도 복원했습니다. 위 문서 전체 검사 제외 표현은 현재 범위가 아닙니다.

복원 후 실제 실패한 issue_5846_cut_fragment_defers_partial_nested_tail_row를 현재 후보에서 단독 재현했습니다: 1FAIL, 현재70쪽/독립 한컴PDF66쪽입니다. 기존 함수 주석이 가리킨 75544_pii_bunseok-2020.pdf는 cairo 출력이어서 독립 정답지가 아닙니다. 정상 75544_pii_bunseok-hwpx-2020.pdf는66쪽이고 실제 Creator는Hwp2022입니다. 정상59쪽은 자동화평가 안내서식이며 주석의 신용도판단정보 표 전제를 독립 정답으로 인정할 수 없습니다. 첫 쪽수 계약과 뒤 내용 소유 계약의 근거를 구분합니다.

같은 원문/PDF/생산 Native binary 해시 및 보정69 대비 빈 src diff를 확인했습니다. 기존 선택4쪽 부정 증거의 최저60쪽30.63875%,59쪽30.66565%로90% 수용 기준에 미달합니다. 59쪽 review와60쪽 standalone overlay를 직접 다시 확인했으며 현재 법령 본문과 정상 서식의 페이지 소유가 다릅니다. 전체70쪽 또는 fresh WASM 비교 완료를 주장하지 않습니다.

이번에는 위 한 함수와 전용 helper만 보류하고 #3595 두 함수, #2097 한 함수와 원문/PDF 및 모든 다른 corpus 축을 유지하겠습니다. 기존 실제 실패로 보류된 body/oracle 축의 범위는 유지합니다. 기대값을 현재70으로 완화하지 않습니다. 이관은 피델리티 해결이나 전체 회귀 통과가 아니며 정상 한컴 출력과 최소90%를 맞춘 뒤 함수의 쪽수 및 내용 기대를 독립 근거로 재구성해야 합니다. 근거는 mydocs/pr/assets/issue7445/pii5846_blocking_scope_validation.json에 남기겠습니다.

유지 검사에서 확인한 추가 차단 항목

남긴 #3595 두 함수는 PASS입니다. #2097의 여러 문서 쪽수 검사 함수는 같은 PII 입력의70/66으로 실제 FAIL했습니다. 따라서 #2097 함수와 다른5개 문서 항목은 유지하고 PII의 이 쪽수 항목1개만 같은 부정시각증거로 추가 보류하겠습니다. 함수 전체나 문서의 정상 내용검사를 제거하지 않습니다. 수정 후 유지3함수 및 필수 lint/정책을 다시 실행하겠습니다.

좁은 보류 후 재검증 결과

코드 71610682efde6fa4c0681228caf1f981f78e5d9b에서 #5846 한 함수와 #2097의 PII 항목 한 개만 보류했습니다. #3595 두 함수와 #2097 함수는3PASS/407SKIP이며 #2097의 나머지5개 문서를 모두 실행했습니다. 필수8단계exit0, 기대값·공차·생산동작·새함수 변경은 없습니다. 근거는 mydocs/pr/assets/issue7445/pii5846_blocking_scope_validation.json입니다. 원문과 정상 한컴PDF 및 다른 corpus 축은 유지했고 최종전체검증/PR준비 완료는 아닙니다.

2026-10-08 로컬 개선 완료 — 전체 66쪽과 중요 회귀 복원

기존 제목·요청·이관 이력과 첫 줄을 그대로 보존하고, 이번 완료 결과를 코멘트 마지막에 기록합니다. 위 ‘좁은 보류 후 재검증’은 과거 이력이며 현재 완료 근거로 사용하지 않습니다.

  • 원본 samples/task2097/75544_pii_bunseok.hwpx와 독립 한컴 Print 기준 pdf/task2097/75544_pii_bunseok-hwpx-2020.pdf의 바이트/해시는 위 기록과 그대로입니다. 원본은 samples에도 보존했습니다. Cairo 사본으로 비교하지 않았습니다.
  • 반복 머리행/이어받기 물리 프레임, 단일 셀의 종료 공간, 저장 문단 앵커, 마지막 내부 행의 실제 내용 컷과 물리 높이를 개선했습니다. 이미 그리지 않은 밴드를 소비한 것으로 빼거나, 제목과 첫 표만 사후 이동시키는 원인을 바로잡았습니다. 최종 검증 코드 커밋은 d5ed053fc8bb433b8b08f056c3ce8d0a9f75800f이며 분석·개선·단계별 결과는 같은 브랜치 기록에 보존했습니다.
  • Native SVG와 실제 Chrome fresh WASM을 전체 66쪽 독립 PDF와 비교했습니다. 두 경로 모두 최저 66쪽 90.30272%, 90% 미만 0쪽, 쪽수 66/66/66입니다. Native/fresh 원시 SVG·PNG·TSV가 전쪽 바이트 동일합니다. Mac fresh --no-opt는 로컬 대체 빌드이며 Docker 최적화 검증으로 주장하지 않습니다.
  • 주요 차이였던 4346쪽은 98.02580 / 99.13318 / 99.14630 / 99.62224%, 5760쪽은 99.98577 / 99.56892 / 98.16518 / 99.49920%입니다. 59쪽 안내서식·채무불이행정보와 60쪽 단기연체정보·금융질서문란정보·작성 요령·서명의 쪽 소속과 순서/누락/중복을 확인했습니다. 60쪽 Native/fresh 및 최저 66쪽 review를 직접 판독했으며, 미세한 글자 폭/경계의 완전 화소 일치를 주장하지 않습니다.
  • 보류했던 issue_5846_cut_fragment_defers_partial_nested_tail_row를 같은 이름으로 복원했습니다. 절대 px/캐시 높이/컷 유닛 번호 대신 쪽·행·셀 소유, 첫 표→다음 항목→다음 표 순서, 작성 요령/서명의 셀 내부 포함을 검사합니다. 이전 Source 2a692a82d에서 ‘다음 항목이 첫 표 안으로 올라가면 안 됨’으로 1 FAIL(exit 100), 최종 코드에서 PASS를 확인했습니다. #2097의 PII 66쪽 항목도 복원해 다른 5개 항목과 함께 실행했습니다.
  • 최종 관련 nextest는 24 PASS / 0 FAIL / 1515 필터·skip, 실행 1.086초, threads 8입니다. Native·WASM32·workspace all-target Clippy, workspace build, fmt, 고정 base manifest/unit-tiers도 모두 exit 0입니다. export-pdf: '직인' 텍스트박스 위치 이탈 + 페이지 하단 용지규격 문구 소실 #3308 정상 대조 9쪽 출력 보존과 실제 포함 검사, perf(renderer): 분할 표 컷 높이 평가 mixed_nested_flow_extra_from_cut가 O(P×U) 재스캔 — 거대 셀 115-fragment 문서 open에서 paginate 16.9s #4129 스캔 예산 검사를 확인했습니다.
  • 정본: mydocs/pr/assets/issue7445/resolution-20261005/pii5846-restored-relations-validation.json, 같은 접두어의 60쪽 Native/fresh review·Native overlay와 66쪽 fresh review입니다. 전체 TSV는 output/issue7445/20261005/stage236-pii-native-scores/silhouette.tsv, stage236-pii-fresh-scores/silhouette.tsv이고, 명령·Source·이전 실패·재검증 로그도 ignored output에 보존했습니다. 신규 PR 제출 시 해당 커밋의 공개 증적 경로를 연결하겠습니다. 현재 remote push/PR/CI/병합 완료를 주장하지 않습니다.

이 코멘트의 개인정보 문서는 전쪽 90% 이상과 중요 관계형 회귀 복원까지 로컬 개선을 완료했습니다. #7445 전체, 다른 실패 문서와 이후 코멘트, 최종 전체 nextest/Skia 및 이전 완료 문서의 영향 검증은 계속 진행합니다. 새 코멘트를 만들지 않았습니다.

Activity

  1. self-assigned this
    on Oct 10, 2026
  2. added
    bugSomething isn't working
    layout문서 레이아웃/페이지네이션: 표·그림 배치, float/anchor, 줄·행 높이, 겹침·클리핑
    renderingSVG/Canvas/PDF 등 렌더 출력과 시각 표시: 그리기, 표시 누락, bbox, paint 정합성
    testregression test
    on Oct 10, 2026
  3. jangster77 commented on Oct 24, 2026

    @jangster77
    CollaboratorAuthor

    PR #8191 병합 후 완료 기록

    PR #8191을 병합했습니다. 이 하위 이슈의 동일 원본 범위에서 전쪽 비교·내용 보존 회귀와 확대 판독을 확인하여 완료 처리합니다. 대표 #7445 전체 해결을 뜻하지 않습니다.

    • merge: 60972534680a0c5e51e54ec189b92e252e81a867, 검증 code: 8ba0980feb5995dffbfdb84601e53085b49f810d, trailing: 8310b925b699277f355deeae58456db898117eef
    • 코드 Full CI와 최종 head CI의 실제 성공·재사용 판정을 확인했습니다.
    • 현재 전체 nextest 11,766 PASS / 0 FAIL / 45 skip, Native/fresh WASM 필수 게이트와 실제 소비를 통과했습니다. Mac WASM은 locked wrapper의 --no-opt 로컬 대체 빌드이며 Docker 최적화 통과가 아닙니다.
    조건 독립/후보 쪽수 Native 최저 raw fresh WASM 최저 raw
    pii66-declared 66 96.57165% 96.56850%
    pii66-default 66 96.57165% 96.56850%

    해당 전쪽에서90% 미달·누락/중복·후보 쪽수 불일치가 없으며 내용 소속·순서·보존을 정식 회귀와 독립 Print로 확인했습니다. source77/base e7 PNG의 원래 producer/build/font hash를 감사하여 현재196 TSV를 다시 산출했습니다. 이를8ba 전쪽 재캡처로 쓰지 않으며, 새8ba 실제 소비72관측·API/셀 편집·전체 회귀를 별도로 검증했습니다.

    입력과 독립 기준

    • 입력: f429768ec02e5a849d08c06678cbee029fdc8618ca9e2bdcdbba485087fe71f1
    • 독립 한컴 Print PDF: 0fef38f44b3825f1c97869c2720112536504eaf30cec2a2d2af6d4399ffe8770
    • 입력: f429768ec02e5a849d08c06678cbee029fdc8618ca9e2bdcdbba485087fe71f1
    • 독립 한컴 Print PDF: 0fef38f44b3825f1c97869c2720112536504eaf30cec2a2d2af6d4399ffe8770

    현재 전체 회귀에서 실제 PASS를 확인한 검사

    입력·전쪽 TSV 원문은 과거50조건 원장을 보존한 것입니다. 현재49조건과195개 동일 TSV 및1개 최신 base 원문은 PR 본문에서 구분했습니다. 현재 셀프 리뷰와 판독·잔여 기록을 함께 확인하실 수 있습니다.

    Visual Sweep 비교 방법을 따랐습니다. raw는 사람의 판정 정확도가 아니라 내용 실루엣의 자동 일치율 보조값입니다. 얇은 선·안티앨리어싱·미세 획/간격 잔여가 있으며 RGB·원 글꼴의 완전 동일성을 주장하지 않습니다. 과거 미완료/이관 기록은 당시 이력으로 보존하며 이 동일 입력의 현재 개선과 구분합니다.

    native pii66-declared review

    native pii66-declared overlay

    wasm pii66-declared review

    wasm pii66-declared overlay

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

bugSomething isn't workinglayout문서 레이아웃/페이지네이션: 표·그림 배치, float/anchor, 줄·행 높이, 겹침·클리핑renderingSVG/Canvas/PDF 등 렌더 출력과 시각 표시: 그리기, 표시 누락, bbox, paint 정합성testregression test

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions