Skip to content

fix(release): npm publish 가 GitHub Release 를 막지 않도록 마지막으로 이동 - #49

Merged
BoxLogoDev merged 1 commit into
mainfrom
fix/release-npm-not-gating
Aug 20, 2026
Merged

fix(release): npm publish 가 GitHub Release 를 막지 않도록 마지막으로 이동#49
BoxLogoDev merged 1 commit into
mainfrom
fix/release-npm-not-gating

Conversation

@BoxLogoDev

Copy link
Copy Markdown
Owner

Summary

v2.4.1 릴리스가 세 번째로 멈췄다. Windows 설치파일 빌드는 처음으로 통과했는데, release 잡이 Publish MCP to npm 에서 죽으면서 그 뒤의 Create GitHub Release 가 통째로 skip 됐다.

npm error code E404
npm error 404 Not Found - PUT https://registry.npmjs.org/@boxlogodev%2fsapstack-mcp

패키지는 npm 에 이미 존재한다(2.4.0, 2026-06-18 발행). 즉 스코프 문제가 아니라 토큰이 만료됐거나 권한을 잃은 것이다 — npm 은 권한 부족에도 403 대신 404 를 준다.

문제는 그게 아니라 구조다. 통제 밖의 외부 의존(npm) 하나가 우리가 통제하는 산출물(데스크톱 설치파일 + latest.yml = 자동 업데이트 경로)의 배포를 막았다. 발행 스텝을 Create GitHub Release 뒤로 옮겨 cascade 에서 분리한다.

continue-on-error: true 는 일부러 쓰지 않았다. 그것을 붙이면 run 이 초록으로 보고돼 미발행을 놓친다(과거 retro 에서 실제로 겪은 함정). 마지막에 두면 릴리스는 나가고 실패는 빨간불로 남는다.

남은 사용자 작업

npm 재발행은 NPM_TOKEN secret 갱신이 필요하다 (Automation 토큰). 이 PR 은 그걸 고치지 않는다 — 그 실패가 데스크톱 릴리스까지 끌고 내려가던 구조만 고친다.

Test Plan

  • js-yaml 파싱 + 스텝 순서 확인: Create GitHub ReleasePublish MCP to npm
  • 태그 재푸시 → Release 에 .exelatest.yml 이 붙는지 확인 (npm 스텝은 여전히 빨갛게 실패할 것)
  • 사전 검증 완료: eval gate ✅ · bump-version.sh --check ✅ (2.4.1 일치) · generate-release-notes.sh 2.4.1

결정 레코드: decisions/active/2026-08-19-workflow-owns-release-upload.md

v2.4.1 릴리스가 세 번째로 멈췄다. Windows 설치파일 빌드는 처음으로 통과했는데,
release 잡이 'Publish MCP to npm' 에서 E404 로 죽으면서 그 뒤의
'Create GitHub Release' 가 통째로 skip 됐다. 결과적으로 데스크톱 설치파일과
latest.yml 이 배포되지 못했다 — npm 토큰 하나가 자동 업데이트 경로를 막은 것이다.

npm 은 우리가 통제하지 못하는 외부 의존이다(토큰 만료·2FA·레지스트리 장애).
발행 스텝을 'Create GitHub Release' 뒤로 옮겨 릴리스 cascade 에서 분리한다.

continue-on-error 는 쓰지 않았다. 그것을 붙이면 run 이 초록으로 보고돼
미발행을 놓친다(과거 retro 에서 실제로 겪음). 마지막에 두면 릴리스는 나가고
실패는 빨간불로 남는다.

npm 토큰 자체는 여전히 만료 상태다 — 재발행하려면 Automation 토큰을 새로 발급해
NPM_TOKEN secret 을 갱신해야 한다. 이 커밋이 고치는 것은 그 실패가
데스크톱 릴리스까지 끌고 내려가던 구조다.

결정 레코드: decisions/active/2026-08-19-workflow-owns-release-upload.md

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@BoxLogoDev
BoxLogoDev merged commit f5e6174 into main Aug 20, 2026
8 checks passed
@BoxLogoDev
BoxLogoDev deleted the fix/release-npm-not-gating branch August 20, 2026 07:18
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