release

star 159

hwpjs 배포 플로우. 버전 범프, 빌드, 커밋, PR 생성, npm 배포, GitHub 릴리즈까지 전체 과정을 수행한다.

ohah By ohah schedule Updated 3/15/2026

name: release description: hwpjs 배포 플로우. 버전 범프, 빌드, 커밋, PR 생성, npm 배포, GitHub 릴리즈까지 전체 과정을 수행한다. disable-model-invocation: true allowed-tools: Bash, Read, Write, Edit, Glob, Grep, Agent argument-hint: [version (예: 0.1.0-rc.10)]

hwpjs 배포 플로우

$ARGUMENTS 버전으로 배포를 진행한다.

1. 버전 업데이트

아래 파일들의 버전을 $ARGUMENTS로 변경한다:

  • packages/hwpjs/package.json
    • version 필드
    • optionalDependencies의 모든 @ohah/hwpjs-* 패키지 버전
  • packages/hwpjs/npm/*/package.json (7개 플랫폼 패키지)
    • darwin-arm64, darwin-x64, linux-x64-gnu, wasm32-wasi, win32-arm64-msvc, win32-ia32-msvc, win32-x64-msvc
  • bun.lock@ohah/hwpjs 관련 버전

2. 릴리스 빌드

cd packages/hwpjs && bun run build:release

이 명령은 다음을 수행한다:

  • 모든 플랫폼 네이티브 바이너리 빌드 (build:node:all)
  • WASM 파일 리네임 (postbuild:node:all)
  • npm 디렉토리 생성 (prepare:artifacts)
  • 빌드 아티팩트를 npm 디렉토리로 복사 (artifacts)
  • prepublish dry-run (prepublishOnly)

3. 빌드 검증

빌드 완료 후 아래 아티팩트가 존재하는지 확인한다:

  • packages/hwpjs/dist/hwpjs.*.node (6개 플랫폼)
  • packages/hwpjs/dist/hwpjs.wasm32-wasi.wasm
  • packages/hwpjs/dist/index.js
  • packages/hwpjs/npm/*/hwpjs.*.node (6개)
  • packages/hwpjs/npm/wasm32-wasi/hwpjs.wasm32-wasi.wasm
  • packages/hwpjs/dist/react-native/ (index.cjs, index.mjs)

4. 커밋 및 PR

  1. main 브랜치에서 chore/bump-version-{suffix} 브랜치 생성 (예: chore/bump-version-rc10)
  2. 변경된 모든 파일을 커밋: chore: bump version to $ARGUMENTS
  3. 리모트에 push 후 PR 생성
  4. PR 본문 형식:
## Summary
- 모든 npm 패키지 버전을 `{이전버전}` → `$ARGUMENTS`로 업데이트
- 로컬 빌드(`build:release`) 실행하여 빌드 아티팩트 포함

## 변경 파일
- `packages/hwpjs/package.json` (version + optionalDependencies)
- `packages/hwpjs/npm/*/package.json` (각 플랫폼 패키지 버전)
- `packages/hwpjs/dist/` (빌드 바이너리)
- `packages/hwpjs/npm/*/hwpjs.*.node` (플랫폼별 네이티브 바이너리)

5. 머지 후 릴리즈

PR이 머지된 후 진행한다:

  1. main 브랜치 최신화: git checkout main && git pull origin main --rebase
  2. 이전 버전과 비교하여 커밋 목록 확인: git log --oneline {이전태그}..HEAD
  3. GitHub 릴리즈 생성 (gh release create)
    • 태그: @ohah/hwpjs@$ARGUMENTS
    • 릴리즈 노트에 Features / Bug Fixes / Chores 카테고리로 분류

6. npm 배포

cd packages/hwpjs && bash scripts/publish.sh --tag latest

배포 후 확인:

npm view @ohah/hwpjs dist-tags
npx @ohah/hwpjs@latest --version

사용자 확인 포인트

각 단계 사이에 반드시 사용자에게 확인을 받고 다음 단계로 넘어간다:

  1. 버전 업데이트 후 → 변경된 파일 목록을 보여주고 빌드 진행 여부 확인
  2. 빌드 완료 후 → 아티팩트 검증 결과를 보여주고 커밋/PR 진행 여부 확인
  3. PR 생성 후 → PR 링크를 공유하고 멈춤. 머지는 사용자가 직접 수행
  4. 머지 확인 후 → 사용자가 머지했다고 알려주면 릴리즈 노트 초안을 보여주고 확인
  5. 릴리즈 생성 후 → npm 배포 진행 여부와 태그(latest/next) 확인
  6. 배포 완료 후npm viewnpx --version 결과를 보여주고 최종 확인

절대 사용자 확인 없이 다음 단계로 자동 진행하지 않는다.

주의사항

  • 배포(publish)는 사용자가 명시적으로 요청한 경우에만 수행한다
  • PR 머지는 리베이스 머지를 사용한다
  • pre-release 버전(rc, beta, alpha)도 사용자가 --tag latest를 요청하면 latest로 배포한다
Install via CLI
npx skills add https://github.com/ohah/hwpjs --skill release
Repository Details
star Stars 159
call_split Forks 23
navigation Branch main
article Path SKILL.md
More from Creator