From 4bde148cdc7e71a648215dea9d122a9efbf68c5a Mon Sep 17 00:00:00 2001 From: altair823 Date: Tue, 5 May 2026 00:09:56 +0900 Subject: [PATCH] =?UTF-8?q?docs(v024):=20patch=20cleanup=20spec=20?= =?UTF-8?q?=E2=80=94=205=20backlog=20=ED=95=AD=EB=AA=A9=20+=20version=20bu?= =?UTF-8?q?mp?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 0.2.3.1 semver 위반 → 0.2.4 minor bump 이용해 backlog risk 낮은 cleanup 5건 + dogfood 가치 #44 묶음 cut. v0.2.4 정식 brainstorm 은 v0.2.5 로 이동. In: #1 (now() 2번), #2 (DAY_MS), #6 (media.gc .catch), #13 (NoteCard onDeleted), #44 (버전 정보 surface), version bump Out: #45 (autostart bug — 별도 cut), #3/#4/#5/#22/#26 (큰 refactor), #39~#43 (PR #21 deferred — v0.2.5 brainstorm) Co-Authored-By: Claude Opus 4.7 (1M context) --- .../2026-05-05-v024-patch-cleanup-design.md | 54 +++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100644 docs/superpowers/specs/2026-05-05-v024-patch-cleanup-design.md diff --git a/docs/superpowers/specs/2026-05-05-v024-patch-cleanup-design.md b/docs/superpowers/specs/2026-05-05-v024-patch-cleanup-design.md new file mode 100644 index 0000000..c3c75c8 --- /dev/null +++ b/docs/superpowers/specs/2026-05-05-v024-patch-cleanup-design.md @@ -0,0 +1,54 @@ +# v0.2.4 Patch Cleanup — Design Spec (Brief) + +> 작성: 2026-05-05 · 0.2.3.1 semver 위반 (`X.Y.Z.W` 4-part) → 0.2.4 minor bump 이용해 backlog 의 simple cleanup 5건 + 사용자 가치 1건 합쳐서 묶음 cut. v0.2.4 정식 brainstorm 은 v0.2.5 로 이동. + +## 1. Goal + +PR #21 머지 후 0.2.3.1 binary 빌드 시도가 electron-builder 의 semver validation 으로 실패. 0.2.4 minor bump 으로 우회. 이번 cut 에는 dogfood unblock 외 backlog 의 risk 낮은 cleanup + 사용자 가치 항목 동봉. + +## 2. Scope (5 backlog 항목 + version bump) + +| backlog # | 항목 | 가치 | 작업량 | +|---|---|---|---| +| #1 | `TelemetryService.emit` 의 `now()` 2번 호출 → 1번 추출 | cosmetic (KST midnight straddle 이론) | 1줄 | +| #2 | `DAY_MS = 24*60*60*1000` magic number → 모듈 상단 상수 | cosmetic | 1줄 | +| #6 | `media.gc.run()` `.catch` 누락 → backup pattern 통일 | consistency | 1줄 | +| #13 | NoteCard `mode='trash'` 의 `onDeleted` dead-code prop 제거 | API 청소 | 작음 | +| #44 | 트레이 메뉴 + Inbox footer 에 "Inkling 0.2.4" 버전 정보 | **사용자 dogfood 가치** | 1 task | +| - | version bump 0.2.3.1 → 0.2.4 | semver 표준 | trivial | + +## 3. Out of scope + +- **#45 (자동실행 버그)**: Windows registry 디버깅 필요, simple X. 별도 cut. +- **#3/#4/#26 (KST 통합 / TrayCallbacks refactor)**: multi-file, 크다. 별도. +- **#5/#22 (Union 통합 / hydrate cleanup)**: repo-wide. +- **#39~#43 (PR #21 deferred)**: telemetry masking 등 의미 있는 결정 필요. v0.2.5 brainstorm 영역. +- 기타 backlog 39건. + +## 4. Architecture changes + +본 cut 은 의미 있는 architecture 변경 없음. 기존 pattern 강화만: +- `TelemetryService.emit` 의 atomic timestamp 보장 (now() 1회) +- 모듈 상단 magic number 상수화 패턴 (다른 파일은 이미 그 패턴, TelemetryService 만 예외) +- `.catch` consistency (backup.runDaily / telemetry.cleanupOldFiles 와 동일 wrapper) +- React props 청소 (현재 호출되지 않는 prop 제거) +- 신규 surface: 트레이 메뉴 "Inkling 정보..." → modal 또는 dialog + +## 5. Tests + +테스트 추가 없음 (모두 cosmetic / refactor). 기존 단위 413/413 회귀 X 확인만. + +#44 의 modal 은 컴포넌트 단위 테스트 X (Inkling 패턴 — store-only). + +## 6. Gates + +- typecheck 0 +- 단위 413/413 (회귀 X) +- e2e 1/1 +- backward compat: 기존 사용자 영향 0 (cosmetic + 새 surface) + +## 7. Roadmap relation + +- 0.2.3 cut 7/7 (PR #13~#19) + 0.2.3.1 patch (PR #21) 누적 후 binary 빌드를 위한 v0.2.4 minor bump +- v0.2.5 brainstorm 트리거: dogfood ≥1주 soak + telemetry export + backlog 39건 (=45-5-1) + 신규 피드백 일괄 triage +- backlog 명명 `v024-backlog.md` → 본 cut 후 `v025-backlog.md` 로 rename 검토 (또는 v024-backlog.md 유지하고 내용만 갱신)