Skip to content

Task #48: v0.4.0 release preparation and Trusted Publishing#49

Merged
postmelee merged 6 commits into
mainfrom
publish/task48
Jul 16, 2026
Merged

Task #48: v0.4.0 release preparation and Trusted Publishing#49
postmelee merged 6 commits into
mainfrom
publish/task48

Conversation

@postmelee

@postmelee postmelee commented Jul 16, 2026

Copy link
Copy Markdown
Owner

요약

  • 대상 타스크: M040: v0.4.0 release preparation and Trusted Publishing #48 M040 v0.4.0 release preparation과 Trusted Publishing 사전 검증
  • 왜: PR #47의 opt-in experimental profile 기능을 npm 사용자에게 제공하려면 version surface와 release gate를 확정해야 합니다.
  • 무엇: 승인된 source/test 9개 파일의 version literal 11곳을 0.4.0으로 일치시키고, package·보안·원격 상태와 post-merge runbook을 검증했습니다.
  • 리뷰 포인트: stable/default 계약과 workflow는 무변경이며 실제 tag·publish·Release는 merge 후 별도 승인까지 PENDING입니다.

변경 내역

  • Stage 1 (08314bc): package, CLI/SDK declaration과 stable/experimental client version surface를 0.4.0으로 갱신했습니다.
  • Stage 2 (2a31b1e): full regression, exact package artifact, README 차이와 advisory preflight를 검증했습니다.
  • Stage 3 (3a47a62): origin/remote state, strict pre-tag 단일 failure, OIDC 경계와 post-merge runbook을 확정했습니다.

영향 영역

영역 변경 리뷰 포인트
Version metadata Package/CLI/SDK/stable·experimental client 0.4.0 승인된 9개 파일의 version literal만 변경
Regression assertions CLI/SDK/client version assertion 갱신 stable/default와 experimental 동작 의미 무변경
Release operation 3단계 검증과 post-merge runbook tag, workflow dispatch, npm publish, GitHub Release 미실행

작업 문서

핵심 리뷰 포인트

  • Product diff가 package.json, version source 4개와 관련 test 4개로만 제한되는지 확인해 주세요.
  • src/index.js, Account Usage/Full Profile runtime·schema, README/docs, CI/publish workflow와 release preflight source는 main 대비 변경이 없습니다.
  • PR merge만으로 release를 실행하지 않습니다. 별도 승인 후 merge SHA tag, strict preflight, tag-ref Trusted Publishing, registry/provenance, GitHub Release 순서로 진행합니다.

검증

자동 검증

주제 검증 방법 결과 근거
Version surface focused Node tests와 version literal allowlist 검사 OK 65개 pass, 승인된 9개 파일의 0.4.0 literal 11곳, 이전 literal 0곳
전체 회귀 strict release-ready preflight 내부 npm test OK 116/116 pass, fail/cancelled/skipped/todo 0
Package artifact isolated cache의 npm dry-run과 required/forbidden assertion OK exact 23 files, 약 29.1 kB, dependency 0, forbidden artifact 0
Security/release boundary workflow marker, forbidden token/provenance pattern과 sensitive scan OK Trusted Publishing gate 통과, 17개 파일 스캔, 장기 token pattern 0
Product diff 경계 origin/main...HEAD allowlist와 protected path diff OK version source/test 9개만 변경, public contract/runtime/docs/workflow diff 0

수동/시나리오 검증

시나리오 확인 절차 결과 자료
No-auth CLI surface --help, --version, profile --help 실행 OK version 0.4.0, account/profile 조회 없이 종료
Source와 published README 차이 source marker 7개 및 npm 0.3.0 README의 M040 marker 부재 확인 OK 0.4.0 publish 필요성과 package README 포함 범위 확인
Strict pre-tag 상태 release-ready preflight의 FAIL line allowlist 확인 OK v0.4.0 tag is not present 한 건만 expected FAIL

CI/원격 검증

항목 결과 근거
최신 main 포함 OK PR 게시 직전 HEAD..origin/main 0, origin/main ancestor 확인
npm registry baseline OK 2026-07-17 KST 기준 version/latest 0.3.0
Release mutation 부재 OK local/remote v0.4.0 tag, GitHub Release와 tag publish dispatch 모두 0개
Dependabot same-file 상태 OK PR #40/#41 OPEN, 두 PR 모두 CI/publish workflow 변경으로 이 PR 범위에서 제외
PR checks OK test, CodeQL, Analyze (actions), Analyze (javascript-typescript) 모두 SUCCESS

검증 한계

  • Actual Account Usage/Profile command는 민감정보 비노출 원칙에 따라 실행하지 않았습니다.
  • npm 0.4.0, public npx, signature/provenance와 GitHub Release는 merge 및 별도 release 실행 승인 전이라 검증하지 않았습니다.

관련 이슈

후속 이슈 제안

남은 리스크

  • Dependabot 또는 다른 workflow/main 변경이 tag 전에 병합되면 merge SHA와 OIDC security boundary를 다시 확인해야 합니다.
  • Experimental Full Profile은 unsupported private endpoint와 identity-bearing data를 사용하는 opt-in 기능이라는 기존 위험을 유지합니다.
  • Release preparation PR merge 직후에도 Issue #48과 task branch는 유지하며, 모든 release gate가 통과한 뒤 정리합니다.

@postmelee
postmelee merged commit 3d95690 into main Jul 16, 2026
4 checks passed
@postmelee
postmelee deleted the publish/task48 branch July 16, 2026 15:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant