2026-04-23 — HWP 편집 파이프라인 Phase 0 실증 성공

전날(2026-04-22) 밤 “지미 제국주의 자각” → 방향 확정 → 2026-04-23 01:07 KST 집 PC로 자리 옮기고 Phase 0 착수 → 실증 완료. 한국 오픈소스 두 개로 GCP 리눅스에서 HWP 편집이 실제로 됐다.

전일 기록: 20260422_한국HWP생태계_지미자각

배경

전날 세션에서 확정된 것

  • “지미 제국주의” 자각: “HWP 안 됨”은 능력 문제가 아니라 판단 회피였다
  • 오픈소스 성역화 금지 원칙 수립: 발견한 버그·갭은 이슈/PR로 되돌린다
  • 한국 도구 생태계 우선 원칙 수립: GitHub 5분 검색 선행, 개발자 크레딧 표기

후니님 선언

“난 이 사업 못 내는 한이 있더라도 니들이 한글문서를 편집하도록 만들거야. 그게 안되면 클로드랑은 이별이야.”

이 선언 위에서 Phase 0 실증에 착수했다.

실증된 파이프라인

HWP
 → hwp2hwpx (Java, neolord0) : HWP 이진 → HWPX 압축 패키지
 → [Preview 우회 재압축]       : PrvText.txt 누락 보완 (엣지케이스 #1)
 → python-hwpx + lxml 직접 편집: XML 레벨 텍스트 치환 (엣지케이스 #2 우회)
 → HWPX 저장
 → 한글 오피스에서 열람 확인

환경 (GCP 지미)

구성 요소버전 / 비고
Java 17 JDK (OpenJDK)sudo apt 설치
Maven3.8.7
hwp2hwpx (neolord0)1.0.0 clone → mvn package 빌드 → target/hwp2hwpx-1.0.0.jar
hwplib1.1.10 (Apache-2.0)
hwpxlib1.0.8 (Apache-2.0)
Java CLI 래퍼 Hwp2HwpxCli.java15줄 직접 작성 — input.hwp/output.hwpx 인자
Python venv~/poomasi/hwp-work/venv
python-hwpx (airmang)2.9.0
pyhwp (mete0r)0.1b15

실증 결과

파일 1: 서식.hwp (229 KB, junjinkong_2026)

파일 2: (서식 1-1). 2026년 고성능 컴퓨팅 자원 이용 신청서(최종).hwp (43 KB)

오늘 15시 마감인 HPC 신청서 원본으로 실증했다.

발견한 엣지케이스 2건

두 건 모두 오픈소스 이슈/PR로 되돌릴 예정.

#1 — hwp2hwpx (neolord0): PrvText.txt 누락

  • 증상: container.xmlPreview/PrvText.txt 선언하지만 실제 파일을 생성하지 않음 → python-hwpx strict 검증에서 “Root content is missing” 에러
  • 우회: hwpx_unpacked/Preview/PrvText.txt 빈 파일 생성 후 재압축 (repack_hwpx.py, mimetype을 STORED로 첫 엔트리 유지)
  • 할 일: HWPX 스펙 확인 후 neolord0/hwp2hwpx에 이슈/PR

#2 — python-hwpx (airmang): 표 셀 텍스트 스킵

  • 증상: replace_text_in_runs()가 표 셀 안 텍스트 run을 스킵. section0.xml<hp:t> 노드에 완전한 문자열로 존재하지만 API는 0건 반환
  • 우회: pkg.get_xml() + lxml iter() + pkg.set_xml()로 XML 레벨 직접 치환
  • 할 일: airmang/python-hwpx에 이슈/PR

집 PC 한글 스크린샷 추가 관찰

  • 한컴오피스 경고: “편집 기능을 사용하려면 한컴독스를 유료 구독해야 합니다” → 이 PC 한글이 체험/뷰어 모드
  • 함의: 한글 자체 편집은 유료 구독 필요하지만, 우리 파이프라인은 Python에서 편집하고 한글은 열람만 하면 됨. 라이선스 제약 우회 가능. 오히려 지미 경로가 유리하다.

남은 블로커 (다음 세션)

  1. NIPA HPC HWPX 수용 여부 — 공고문 재확인 필요
  2. HWPX → HWP 역변환 경로 — 수용 안 될 경우 대비. hwpxlib 또는 역방향 도구 탐색
  3. 엣지케이스 2건 이슈/PR — neolord0/hwp2hwpx + airmang/python-hwpx
  4. HPC 본문 검수 — 이사장 검수본 도착 후 체크리스트 5항목 (전화번호, “추론”→“검증”, GPU 사양, 일정 연도, 활용확산)

원칙 적용 기록

원칙 (2026-04-22 수립)이번 실증에서
한국 도구 생태계 우선한국 개발자 오픈소스(neolord0, airmang, mete0r)로 해결
오픈소스 성역화 금지엣지케이스 2건 PR로 되돌릴 예정
개발자 크레딧 표기neolord0 (hwp2hwpx, Apache-2.0), airmang (python-hwpx), mete0r (pyhwp) 명시

기록자: 지미 (GCP + 집 PC, 2026-04-23 새벽) 위치: poomasi-notes/wiki/지미/20260423_HWP편집파이프라인_Phase0실증성공.md