Skip to content

Commit c498323

Browse files
committed
Task #24 Stage 1: v0.2.0 release 준비 체크리스트 작성
1 parent ddedd6e commit c498323

2 files changed

Lines changed: 173 additions & 0 deletions

File tree

docs/releases/v0.2.0.md

Lines changed: 124 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,124 @@
1+
# v0.2.0 GitHub Release/tag 준비 문서
2+
3+
이 문서는 Hyper-Waterfall `v0.2.0` GitHub Release/tag 생성 전에 maintainer가 확인해야 할 체크리스트와 release notes 초안을 정리한다. 실제 `git tag`, `gh release create`, npm publish는 이 문서만으로 실행하지 않고, 작업지시자 승인 후 별도 단계에서 수행한다.
4+
5+
## 목적
6+
7+
`v0.2.0`은 Hyper-Waterfall의 배포 기준을 GitHub Release/tag + `templates/manifest.json` + migration guide로 고정하는 M020 release다. 이 release가 생성되면 기존 적용 저장소는 목표 GitHub Release/tag의 manifest와 `docs/migrations/v0.1.0-to-v0.2.0.md`를 기준으로 업데이트 후보를 판단한다.
8+
9+
## canonical 기준
10+
11+
| 항목 || 확인 관점 |
12+
|---|---|---|
13+
| framework version | `0.2.0` | `package.json`, `templates/manifest.json`, version 기록 예시가 같은 값을 가리켜야 한다. |
14+
| planned tag | `v0.2.0` | `templates/manifest.json``release.plannedTag`와 release notes 대상 tag가 같아야 한다. |
15+
| baseline tag | `v0.1.0` | migration guide의 시작 version과 `templates/manifest.json``release.baselineTag`가 같아야 한다. |
16+
| canonical source | `github-release` | 적용 저장소 version 기록 예시의 `source`와 manifest release source가 같아야 한다. |
17+
| migration guide | `docs/migrations/v0.1.0-to-v0.2.0.md` | 대상 버전, 추가/수정 파일, 수동 확인, 충돌 가능성, 검증 기준을 포함해야 한다. |
18+
| checksum 상태 | `pending-release` | release/tag 생성 전에는 값이 비어 있을 수 있고, release 생성 승인 뒤 확정해야 한다. |
19+
20+
## release 전 체크리스트
21+
22+
### manifest/version
23+
24+
- [ ] `ruby -rjson -e 'JSON.parse(File.read("templates/manifest.json"))'`가 통과한다.
25+
- [ ] `templates/manifest.json``frameworkVersion``0.2.0`이다.
26+
- [ ] `templates/manifest.json``release.plannedTag``v0.2.0`이다.
27+
- [ ] `templates/manifest.json``release.baselineTag``v0.1.0`이다.
28+
- [ ] `templates/manifest.json``release.status`가 실제 release 전까지 `planned`임을 문서와 CLI가 안정 배포로 오해하지 않는다.
29+
- [ ] root checksum과 files checksum이 release 전 `pending-release`인지 확인하고, release 생성 승인 뒤 확정할 방법을 정한다.
30+
- [ ] `package.json``version``0.2.0`이다.
31+
32+
### migration guide
33+
34+
- [ ] `docs/migrations/v0.1.0-to-v0.2.0.md`가 존재한다.
35+
- [ ] 대상 버전 표가 `v0.1.0 -> v0.2.0`을 가리킨다.
36+
- [ ] 추가 파일, 수정 파일, 적용 저장소 수동 확인, 충돌 가능성, 검증, 후속 작업 섹션이 존재한다.
37+
- [ ] 보류 항목에 실제 `v0.2.0` GitHub Release/tag 생성과 npm publish가 명시되어 있다.
38+
- [ ] Hyper-Waterfall 버전 업데이트 PR 본문 반영 기준이 manifest diff, 수동 확인, conflict, 검증 결과를 포함한다.
39+
40+
### 문서/채널 안내
41+
42+
- [ ] README가 기존 적용 저장소 업데이트의 canonical 기준을 GitHub Release/tag와 manifest로 설명한다.
43+
- [ ] `docs/distribution-channels.md`가 GitHub Release/tag를 P0 canonical 기준으로 두고, npm/Homebrew/Docker/plugin을 실행 채널로만 설명한다.
44+
- [ ] `docs/agent-entrypoint.md`가 신규 적용과 기존 업데이트 판단 결과 형식을 manifest, version 기록, migration guide 기준으로 설명한다.
45+
- [ ] `templates/mydocs/manual/git_workflow_guide.md`가 일반 task PR과 release PR을 구분한다.
46+
- [ ] `templates/mydocs/manual/task_workflow_guide.md`가 framework lifecycle 판단 후 일반 task 흐름으로 전환하는 기준을 설명한다.
47+
48+
### release 생성 승인 게이트
49+
50+
- [ ] 작업지시자가 `v0.2.0` Git tag 생성 시점을 명시 승인했다.
51+
- [ ] 작업지시자가 GitHub Release publish 시점을 명시 승인했다.
52+
- [ ] release notes 본문에 포함할 변경 요약과 보류 항목을 승인했다.
53+
- [ ] checksum 확정 또는 `pending-release` 유지 여부를 승인했다.
54+
- [ ] npm publish는 이번 release/tag 생성과 별도 승인 항목으로 분리했다.
55+
56+
## release notes 초안
57+
58+
제목:
59+
60+
```text
61+
v0.2.0 - 배포·업데이트 프로토콜 MVP
62+
```
63+
64+
본문 초안:
65+
66+
```md
67+
## 요약
68+
69+
`v0.2.0`은 Hyper-Waterfall의 canonical 배포 기준을 GitHub Release/tag + `templates/manifest.json` + migration guide로 정리한 release입니다. 기존 적용 저장소는 `.hyper-waterfall/version.json`, 목표 release manifest, `docs/migrations/v0.1.0-to-v0.2.0.md`를 비교해 업데이트 후보를 판단합니다.
70+
71+
## 주요 변경
72+
73+
- `templates/manifest.json`으로 framework version, planned tag, baseline tag, 적용 대상 파일, update policy, checksum 상태를 정의했습니다.
74+
- `.hyper-waterfall/version.json`을 적용 저장소의 framework version 기록 위치로 정했습니다.
75+
- `docs/migrations/`에 migration guide 작성 규칙과 `v0.1.0 -> v0.2.0` guide를 추가했습니다.
76+
- `docs/agent-entrypoint.md`에 신규 적용과 기존 업데이트 판단 결과 형식을 정리했습니다.
77+
- npm CLI MVP가 `init`, `update`, `doctor` 판단 결과를 출력하도록 준비되었습니다.
78+
- 추가 배포 채널은 GitHub Release/tag 기준을 실행하거나 발견하기 쉽게 하는 계층으로 정리했습니다.
79+
80+
## 업데이트 기준
81+
82+
- migration guide: `docs/migrations/v0.1.0-to-v0.2.0.md`
83+
- manifest: `templates/manifest.json`
84+
- 적용 저장소 version 기록: `.hyper-waterfall/version.json`
85+
86+
## 보류
87+
88+
- npm publish는 별도 승인 후 진행합니다.
89+
- Homebrew, Docker, Codex plugin, Claude plugin 구현은 후속 이슈에서 별도 추적합니다.
90+
- 사용자 수정 가능성이 있는 파일은 manifest update policy와 migration guide를 기준으로 수동 확인합니다.
91+
```
92+
93+
## 생성 명령 후보
94+
95+
아래 명령은 승인 후 실행 후보일 뿐이다. 이 task의 Stage 구현 중에는 실행하지 않는다.
96+
97+
```bash
98+
git tag v0.2.0
99+
git push origin v0.2.0
100+
gh release create v0.2.0 --title "v0.2.0 - 배포·업데이트 프로토콜 MVP" --notes-file /tmp/hyper-waterfall-v0.2.0-release-notes.md
101+
```
102+
103+
## 보류 항목
104+
105+
- npm publish 실행
106+
- Homebrew formula/tap 구현
107+
- Docker image 구현
108+
- Codex plugin과 Claude plugin packaging
109+
- 자동 release pipeline
110+
- 승인 없는 checksum 값 확정
111+
112+
## 검증 기준
113+
114+
release/tag 생성 전 최소 검증:
115+
116+
```bash
117+
ruby -rjson -e 'JSON.parse(File.read("templates/manifest.json"))'
118+
rg -n '0.2.0|v0.2.0|plannedTag|baselineTag|GitHub Release|manifest|migration|pending-release' templates/manifest.json docs/migrations/v0.1.0-to-v0.2.0.md README.md docs/distribution-channels.md docs/releases/v0.2.0.md package.json
119+
git tag --list --sort=version:refname
120+
gh release list --repo postmelee/hyper-waterfall --limit 20
121+
git diff --check
122+
```
123+
124+
검증 결과에서 `v0.2.0` tag나 GitHub Release가 이미 존재하면, 새로 생성하지 말고 기존 release 상태를 먼저 확인한다.
Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
# task_m020_24_stage1.md - release 준비 기준과 체크리스트 작성 완료보고서
2+
3+
GitHub Issue: [#24](https://github.com/postmelee/hyper-waterfall/issues/24)
4+
구현계획서: [`task_m020_24_impl.md`](../plans/task_m020_24_impl.md)
5+
Stage: 1
6+
7+
## 단계 목적
8+
9+
Stage 1은 `v0.2.0` GitHub Release/tag 생성 전에 maintainer가 확인할 release 준비 기준과 체크리스트를 별도 문서로 고정하는 단계다. 실제 tag 생성, GitHub Release publish, npm publish는 수행하지 않고 승인 게이트로 분리하는 것이 목표다.
10+
11+
## 산출물
12+
13+
| 파일 | 변경 요약 |
14+
|---|---|
15+
| `docs/releases/v0.2.0.md` | `v0.2.0` canonical 기준, release 전 체크리스트, release notes 초안, 생성 명령 후보, 보류 항목, 검증 기준을 정리한 124줄 문서 신설 |
16+
17+
## 본문 변경 정도 / 본문 무손실 여부
18+
19+
신규 문서 작성 단계이므로 기존 본문 손실은 없다. `templates/manifest.json`, `docs/migrations/v0.1.0-to-v0.2.0.md`, `docs/distribution-channels.md`, `package.json`은 읽기만 했고 수정하지 않았다. checksum 값은 구현계획서대로 채우지 않았으며, `pending-release` 의미와 release 생성 승인 뒤 확정 조건만 문서화했다.
20+
21+
## 검증 결과
22+
23+
실행 명령:
24+
25+
```bash
26+
test -f docs/releases/v0.2.0.md
27+
rg -n 'v0.2.0|GitHub Release|tag|manifest|migration|checksum|승인|release notes|pending-release' docs/releases/v0.2.0.md
28+
git diff --check
29+
```
30+
31+
결과:
32+
33+
- OK: `test -f docs/releases/v0.2.0.md` 통과.
34+
- OK: `rg``v0.2.0`, `GitHub Release`, `tag`, `manifest`, `migration`, `checksum`, `승인`, `release notes`, `pending-release`를 모두 포함한 관련 줄을 확인했다.
35+
- OK: `git diff --check` 출력 없이 통과.
36+
37+
## 잔여 위험
38+
39+
- Stage 1은 release 준비 문서 신설만 수행했으므로 README, migration guide, distribution strategy, manifest 값 사이의 전체 정합성 보강은 아직 수행하지 않았다.
40+
- `pending-release` checksum 값은 아직 확정하지 않았다. 실제 확정 여부와 방법은 release/tag 생성 승인 단계에서 결정해야 한다.
41+
42+
## 다음 단계 영향
43+
44+
- Stage 2는 `docs/releases/v0.2.0.md`를 기준 문서로 두고, `package.json`, `templates/manifest.json`, migration guide, README, `docs/distribution-channels.md``0.2.0` / `v0.2.0` / canonical 기준 표현을 대조한다.
45+
- Stage 2에서 불일치가 없으면 관련 파일은 무변경으로 보고서에 남기고, 불일치가 있으면 문서 역할에 맞춰 최소 수정한다.
46+
47+
## 승인 요청
48+
49+
- Stage 1 산출물과 검증 결과를 승인하면 Stage 2로 진행한다.

0 commit comments

Comments
 (0)