chore(CLAUDE.md): release / binary version bump 규약 추가 #100

Merged
altair823 merged 2 commits from chore/claude-md-release-rule into main 2026-05-05 02:44:17 +00:00
Owner

요약

도그푸딩 / 실사용 binary 가 필요할 때 release 버전을 bump 하는 규약을 `CLAUDE.md` 에 명시.

이전엔 first-release (v0.1.0) 시점만 ad-hoc 결정했고, 후속 release cycle 에 대한 일관 규칙 없음. 본 PR 이 그 공백 메움.

추가 내용 (CLAUDE.md "Release / binary version bump" section)

트리거 (셋 중 하나 발생 시 bump + 새 release)

  • 사용자가 새 바이너리로 도그푸딩 / 실사용 을 명시.
  • breaking schema change (V00X migration / wire schema v1→v2 등) 머지 후.
  • frozen design contract (design §X) 변경 머지 후.

절차

  1. `gitea-release v<X.Y.Z>` (gitea-ops skill).
  2. release notes = 도그푸딩-영향 surface 변경 위주.
  3. pre-1.0 (0.x.y): minor = wire additive + surface 변경 누적, patch = bug fix only.

bump 시점 ↔ release 시점

같은 commit. 즉 commit `chore: bump version 0.x → 0.y` 직후 같은 commit 에 tag. v0.1.0 처럼 bump 없이 tag 찍으면 후속 release 가 대상 commit 햇갈림.

검증

CLAUDE.md 만 수정 — 빌드 / 테스트 영향 없음.

## 요약 도그푸딩 / 실사용 binary 가 필요할 때 release 버전을 bump 하는 규약을 \`CLAUDE.md\` 에 명시. 이전엔 first-release (v0.1.0) 시점만 ad-hoc 결정했고, 후속 release cycle 에 대한 일관 규칙 없음. 본 PR 이 그 공백 메움. ## 추가 내용 (CLAUDE.md \"Release / binary version bump\" section) ### 트리거 (셋 중 하나 발생 시 bump + 새 release) - 사용자가 새 바이너리로 **도그푸딩 / 실사용** 을 명시. - **breaking schema change** (V00X migration / wire schema v1→v2 등) 머지 후. - **frozen design contract** (design §X) 변경 머지 후. ### 절차 1. \`gitea-release v<X.Y.Z>\` (gitea-ops skill). 2. release notes = 도그푸딩-영향 surface 변경 위주. 3. pre-1.0 (0.x.y): minor = wire additive + surface 변경 누적, patch = bug fix only. ### bump 시점 ↔ release 시점 같은 commit. 즉 commit \`chore: bump version 0.x → 0.y\` 직후 같은 commit 에 tag. v0.1.0 처럼 bump 없이 tag 찍으면 후속 release 가 대상 commit 햇갈림. ## 검증 CLAUDE.md 만 수정 — 빌드 / 테스트 영향 없음.
altair823 added 1 commit 2026-05-05 02:42:40 +00:00
도그푸딩 / 실사용 binary 가 필요할 때 release 버전을 bump 하는 규약을
명시. 이전엔 first-release 시점만 ad-hoc 결정했지만 후속 cycle 에서
일관성 위해 트리거 / 절차 / pre-1.0 minor vs patch 기준 정리.

트리거:
- 사용자가 새 바이너리로 도그푸딩 / 실사용을 명시.
- breaking schema change (V00X migration / wire v1→v2) 머지 후.
- frozen design contract 변경 머지 후.

절차: `gitea-release v<X.Y.Z>` + 도그푸딩-영향 surface 변경 중심
release notes. pre-1.0 minor = wire additive + surface 변경 누적,
patch = bug fix only.

bump 시점 = release 시점 같은 commit (tag 가 정확히 그 Cargo.toml
version snapshot 가리키도록). v0.1.0 의 bump-없이-tag 패턴은
후속 release 의 대상 commit 혼동 위험.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
claude-reviewer-01 requested changes 2026-05-05 02:43:24 +00:00
claude-reviewer-01 left a comment
Member

회차 1 — 단순 docs 추가지만 release 정책의 영구 기록이라 정확성 우선.

actionable 2건:

  1. 햇갈리게 한글 표기 typo → 헷갈리게.
  2. wire schema 트리거 항목에 minor (additive) vs major (breaking v1→v2) 구분 명시. 현 spec 의 의미 일관 — additive 만으로는 release 트리거 안 됨.

bump-시점-=-release-시점 규약 + pre-1.0 minor/patch 기준 + gitea-release 절차 명시 깔끔. 후속 release cycle 의 일관성 확보.

회차 1 — 단순 docs 추가지만 release 정책의 영구 기록이라 정확성 우선. actionable 2건: 1. `햇갈리게` 한글 표기 typo → `헷갈리게`. 2. wire schema 트리거 항목에 minor (additive) vs major (breaking v1→v2) 구분 명시. 현 spec 의 의미 일관 — additive 만으로는 release 트리거 안 됨. bump-시점-=-release-시점 규약 + pre-1.0 minor/patch 기준 + gitea-release 절차 명시 깔끔. 후속 release cycle 의 일관성 확보.
@@ -68,1 +68,4 @@
## Release / binary version bump
Workspace `Cargo.toml``version` 은 binary release 의 정체성. 다음 트리거 중 하나 발생 시 **bump + 새 release 컷**:

wire schema 항목에 minor vs major 구분이 모호. 현 spec (Wire schema v1 section + design §10) 은 additive (예: IngestReport.unchanged 추가) = minor, 진정한 breaking (필드 제거 / 의미 변경) = major (v1→v2). 본 trigger 의 wire schema v1→v2 는 후자만 의미 — minor (additive) 면 별도 release 트리거 안 됨.

명확화 권장:

- breaking schema change (V00X migration / wire schema major bump v1→v2 등) 머지 후 — 이전 릴리즈 binary 가 새 DB / 새 wire 와 호환 안 됨. wire 의 additive minor 변경 (필드 추가) 은 backward-compat 이라 본 트리거에 해당 안 됨.

additive 추가 만으로 release 안 찍어도 된다는 신호 — 도그푸딩 사이클 비용 절약.

wire schema 항목에 minor vs major 구분이 모호. 현 spec (`Wire schema v1` section + design §10) 은 additive (예: `IngestReport.unchanged` 추가) = minor, 진정한 breaking (필드 제거 / 의미 변경) = major (v1→v2). 본 trigger 의 `wire schema v1→v2` 는 후자만 의미 — minor (additive) 면 별도 release 트리거 안 됨. 명확화 권장: ``` - breaking schema change (V00X migration / wire schema major bump v1→v2 등) 머지 후 — 이전 릴리즈 binary 가 새 DB / 새 wire 와 호환 안 됨. wire 의 additive minor 변경 (필드 추가) 은 backward-compat 이라 본 트리거에 해당 안 됨. ``` additive 추가 만으로 release 안 찍어도 된다는 신호 — 도그푸딩 사이클 비용 절약.
@@ -69,0 +83,4 @@
3. 프리-1.0 (`0.x.y`) 단계: minor bump 시 wire schema additive / surface 변경 누적, patch bump 시 bug fix only.
**bump 시점 = release 시점 같은 commit**. 즉 commit `chore: bump version 0.x → 0.y` 직후 같은 commit 에 tag. v0.1.0 (`2319206`) 처럼 bump 없이 tag 만 찍는 패턴은 후속 release 가 대상 commit 을 햇갈리게 함 — pre-release snapshot 은 SHA reference 로 충분.

typo: "햇갈리게" → "헷갈리게". 표준 한글 표기.

typo: "햇갈리게" → "헷갈리게". 표준 한글 표기.
altair823 added 1 commit 2026-05-05 02:43:50 +00:00
- typo `햇갈리게` → `헷갈리게` (표준 한글 표기).
- wire schema 트리거에 additive (minor) vs breaking (v1→v2 major)
  구분 명시: additive 만으로는 release 트리거 안 됨, 진정한
  breaking 만 트리거. additive 예시로 IngestReport.unchanged 인용.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
claude-reviewer-01 approved these changes 2026-05-05 02:43:58 +00:00
claude-reviewer-01 left a comment
Member

회차 2 — 회차 1 의 2 건 모두 수렴. 한글 표기 + wire additive vs major 구분 모두 정확.

Release 정책의 영구 규약 — 후속 cycle 의 일관성 확보.

머지 동의.

회차 2 — 회차 1 의 2 건 모두 수렴. 한글 표기 + wire additive vs major 구분 모두 정확. Release 정책의 영구 규약 — 후속 cycle 의 일관성 확보. 머지 동의.
@@ -68,1 +68,4 @@
## Release / binary version bump
Workspace `Cargo.toml``version` 은 binary release 의 정체성. 다음 트리거 중 하나 발생 시 **bump + 새 release 컷**:

wire schema additive (IngestReport.unchanged 같은 필드 추가) 가 release 트리거에서 제외된다는 명시 → 도그푸딩 사이클 마다 무용한 release 컷 회피. 명확화 깔끔.

wire schema additive (`IngestReport.unchanged` 같은 필드 추가) 가 release 트리거에서 제외된다는 명시 → 도그푸딩 사이클 마다 무용한 release 컷 회피. 명확화 깔끔.
@@ -69,0 +83,4 @@
3. 프리-1.0 (`0.x.y`) 단계: minor bump 시 wire schema additive / surface 변경 누적, patch bump 시 bug fix only.
**bump 시점 = release 시점 같은 commit**. 즉 commit `chore: bump version 0.x → 0.y` 직후 같은 commit 에 tag. v0.1.0 (`2319206`) 처럼 bump 없이 tag 만 찍는 패턴은 후속 release 가 대상 commit 을 헷갈리게 함 — pre-release snapshot 은 SHA reference 로 충분.

한글 typo 정정. 영구 기록의 정확성.

한글 typo 정정. 영구 기록의 정확성.
altair823 merged commit a68c47124f into main 2026-05-05 02:44:17 +00:00
altair823 deleted branch chore/claude-md-release-rule 2026-05-05 02:44:18 +00:00
Sign in to join this conversation.
No Reviewers
No Label
2 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: altair823-org/kebab#100