docs(release): v0.2.0-alpha — CHANGELOG + Release 운영 가이드
- CHANGELOG [0.2.0-alpha] 섹션 (switchboard 스타일, ## [Unreleased] 최상단 정렬, Added/Changed/Fixed/Removed/Internal). publish-gitlab-release.mjs가 Release 노트로 자동 추출. - release-guide.md "Release 페이지 운영" 섹션 추가 (CHANGELOG=Release 노트, 권장 구조, 릴리스 체크리스트, 버전 정책). switchboard 패턴 벤치마크. - project_status: v0.2.0-alpha 릴리스 기록
This commit is contained in:
parent
b1435b0ba5
commit
38a466ea0c
3 changed files with 95 additions and 9 deletions
61
CHANGELOG.md
61
CHANGELOG.md
|
|
@ -5,6 +5,59 @@ All notable changes to D3RO Voice will be documented in this file.
|
|||
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
|
||||
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
||||
|
||||
## [Unreleased]
|
||||
|
||||
### Planned
|
||||
- macOS / Linux support
|
||||
- Additional Whisper model management UI
|
||||
- Cloud-optional backup (encrypted, opt-in)
|
||||
- Plugin system for custom pipelines
|
||||
|
||||
## [0.2.0-alpha] - 2026-07-22
|
||||
|
||||
> **다운로드**: Windows `D3RO-Voice-Setup-0.2.0-alpha-x64.exe` · macOS `D3RO-Voice-0.2.0-alpha-arm64.dmg`
|
||||
> (Release assets 첨부) — 기존 Windows 사용자는 자동 업데이트(4시간 주기)로 수신됩니다.
|
||||
> macOS는 ad-hoc 서명 — Gatekeeper 차단 시 우클릭→열기.
|
||||
|
||||
Midnight Glass v2 전면 재설계 + refactor-wave 대규모 코드 품질 정리. 기능 추가보다 시각·구조 개선 중심.
|
||||
|
||||
### Added
|
||||
- **Midnight Glass v2 전면 리디자인**: 미드나이트 네이비 + 글래스모피즘 카드(헤어라인 그라디언트 + 앰비언트 글로우) + 시안→블루→퍼플→마젠타 그라디언트. 6종 테마(dark/light/nord/solarized/catppuccin/dracula) 전환. 보더리스 UI + 커스텀 TitleBar. Pretendard Variable 폰트 오프라인 번들.
|
||||
- **TiltCard DS**: 커서 추종 3D 틸트 + 스페큘러 빛 반사 (reduced-motion 완전 존중)
|
||||
- **GradientWave / StatRing DS** 신규 (기존 CrtDisplay WebGL 오실로스코프를 그라디언트 스펙트럼 웨이브로 교체)
|
||||
- **실시간 부분 전사**: 받아쓰기 홀드 중 RecordingTip에 interim 전사 표시
|
||||
- **Windows 자동 업데이트**: electron-updater + GitLab Generic Registry feed (4시간 주기, 재시작 다이얼로그)
|
||||
- **멀티플랫폼 배포**: macOS arm64(ad-hoc 서명) + Windows 동시 릴리스. GitLab Package Registry(버전별+latest) + Release 자동 생성
|
||||
- **번들 Ollama v0.32.1**: 온보딩 gemma4:e4b pull 412 실패 해소, GPU 런타임 가지치기로 ~1GB→119MB 슬림화
|
||||
- **gpt-realtime-2.1 라이브 음성 대화** (Premium 백엔드, OpenAI Realtime) — 로컬 파이프라인 자동 fallback
|
||||
- **Whisper large-v3-turbo 기본 STT**: 6배 빠름, 사이드카 백그라운드 다운로드 API
|
||||
|
||||
### Fixed
|
||||
- **한국어 날짜 "TODAY"/"YESTERDAY" 표시 버그** — `date.today/yesterday` 중복 정의(JSON last-wins) 해소
|
||||
- **팝업/렌더러 색상 충돌** — 팝업이 v1 주황(`#f25b29`)으로 렌더되던 것을 파랑(`#3b82f6`)으로 SSOT 정합
|
||||
- **받아쓰기 파이프라인 4버그**: press 액션이 STT 초기화를 await하며 큐 점유→release 지연/유령 세션; 사이드카 crash 루프; RecordingTip hide 타이머 leak; 빈 STT 가드
|
||||
- **온보딩 무진행 구간 UX**: verifying(모델 검증) 단계 피드백 + 중복 실행 가드
|
||||
- **마이크 테스트 조기 종료**: 초기 `level:0`을 종료 신호로 오인하던 버그
|
||||
- **트레이 아이콘 빈 이미지** 버그
|
||||
|
||||
### Changed
|
||||
- **`accent.amber` → `accent.main` 전면 통일** (162건, deprecated 별칭 2곳 제거) — desktop/web/admin/mobile/ui-native 전역. 6 테마 일관.
|
||||
- **IPC 채널 SSOT 일원화**: `ipc-channels.ts`에 9 그룹/키 추가(INSTRUCTION, POPUP_*, CLIPBOARD, APP 등), 하드코딩 채널 문자열 제거, `ipcSuccess/ipcError` 헬퍼 통일, `catch(error)` 패턴 32건
|
||||
- **AppConfig 타입 강화**: 7개 누락 키 추가, `as never` 16건 제거, dynamic `require` → static import
|
||||
- **팝업 i18n**: 4종 팝업(command/history/result/recording-tip) 한국어/영어 하드코딩 → `t()` 키 주입 (`popup.*` 17키)
|
||||
- **매직 리터럴 토큰화**: 인라인 fontSize/fontWeight/borderRadius → `d3roTypo`/`d3roRadius` 토큰 (렌더러 전역)
|
||||
|
||||
### Removed
|
||||
- DS 미사용 3종: **MetalDial, ButtonGroup, CrtDisplay** (barrel export 포함)
|
||||
- **미사용 의존성 8종**: `@mui/icons-material`, `@d3ro/api-client`, `fluent-ffmpeg`(+`@types`), `pdf-parse`, `node-record-lpcm16`(+`.d.ts`), `electron-audio-loopback`, `@electron-toolkit/preload`
|
||||
- **i18n 고아 키 967건** (12 locale) — camelCase license.feature 15키 등 동적 참조는 P1 재검증으로 보존
|
||||
- `services/index.ts` 데드 레지스트리, `electron-builder.yml` Linux 섹션
|
||||
|
||||
### Internal
|
||||
- **refactor-wave Wave 1+2**: 정책(`docs/REFACTOR_POLICY.md`) 수립 → 공격적 감사(106건) → 9 워크스트림 병렬 → 분리 커밋 9개 + 메타 2. 공유 패키지 토큰 SSOT, IPC/타입 정합, 데드코드 대량 제거. 보고서 `docs/REFACTOR_WAVE1_REPORT.md`·`WAVE2_REPORT.md`.
|
||||
|
||||
---
|
||||
|
||||
## [1.0.0] - 2026-04-06
|
||||
|
||||
### Added
|
||||
|
|
@ -116,11 +169,3 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|||
- Supported languages (landing): 10
|
||||
- Test count: 41 unit tests
|
||||
- Build target: Windows x64 NSIS installer
|
||||
|
||||
## [Unreleased]
|
||||
|
||||
### Planned
|
||||
- macOS / Linux support
|
||||
- Additional Whisper model management UI
|
||||
- Cloud-optional backup (encrypted, opt-in)
|
||||
- Plugin system for custom pipelines
|
||||
|
|
|
|||
|
|
@ -68,7 +68,36 @@ latest.yml의 url과 레지스트리 파일명이 어긋나면 업데이트 다
|
|||
| macOS 서명/공증 | ❌ ad-hoc 서명 (`identity=-`, switchboard 검증 조합) — Gatekeeper가 차단하면 우클릭→열기 또는 `xattr -dr com.apple.quarantine "/Applications/D3RO Voice.app"` | Apple Developer 계정($99/년) 확보 시 switchboard의 prepare/cleanup-macos-keychain.mjs + 공증 패턴 이식. 주의: D3RO는 asarUnpack native 모듈 + ollama/sox 바이너리 다중 서명 필요 |
|
||||
| macOS 자동 업데이트 | ❌ 미지원 (Squirrel.Mac이 서명 요구) | 서명 도입 후 latest-mac.yml feed 연결 |
|
||||
| 업데이트 무결성 서명 | latest.yml SHA-512 (electron-builder 기본) | switchboard의 Ed25519 update-policy 매니페스트 체계 이식 검토 |
|
||||
| CHANGELOG | 없음 — Release 노트는 기본 안내문 | `CHANGELOG.md` 작성 시 publish 스크립트가 해당 버전 섹션을 자동 추출 |
|
||||
| CHANGELOG | ✅ v0.2.0-alpha부터 운영 | `publish-gitlab-release.mjs`가 `## [버전]` 섹션을 Release 노트로 자동 추출. CHANGELOG를 풍부하게 = Release 페이지 품질 직결 |
|
||||
|
||||
## Release 페이지 운영 (v0.2.0-alpha부터)
|
||||
|
||||
GitLab Release 페이지는 **CHANGELOG가 단일 진실 원천**이다. 릴리스 품질을 올기려면 CHANGELOG를 잘 쓴다.
|
||||
|
||||
### Release 노트 = CHANGELOG 섹션 (자동)
|
||||
`publish-gitlab-release.mjs`의 `extractChangelogSection(changelog, version)`가 태그 버전(`0.2.0-alpha`)과 매칭되는 `## [0.2.0-alpha]` 섹션을 Release 노트로 추출. **CHANGELOG를 고치면 Release 노트에 자동 반영** — 릴리스 후수정해도 다음 릴리스에 반영되지 않으니 릴리스 "전"에 CHANGELOG를 확정.
|
||||
|
||||
### 권장 섹션 구조 (Keep a Changelog)
|
||||
```
|
||||
## [버전] - YYYY-MM-DD
|
||||
> 다운로드 안내 (Windows exe / macOS dmg 파일명 + 자동업데이트/서명 메모)
|
||||
### Added / Changed / Fixed / Removed / Internal
|
||||
```
|
||||
- 상단 인용 블록(`>`)에 다운로드 파일명·자동업데이트·macOS 서명 안내를 적으면 사용자가 Release 페이지에서 바로 확인.
|
||||
- 내부 작업(refactor-wave 등)은 `### Internal`로 분리 — 사용자 관심사(Added/Fixed)가 위에 오도록.
|
||||
|
||||
### 릴리스 체크리스트
|
||||
1. CHANGELOG `[버전]` 섹션 작성 (위 구조)
|
||||
2. `memory/project_status.md` 최신화 (규칙 13)
|
||||
3. `git tag vX.Y.Z && git push origin vX.Y.Z`
|
||||
4. GitLab 파이프라인 모니터링 (package-windows / package-macos / release-create)
|
||||
5. Release 페이지에서 노트·asset 링크·latest.yml 확인
|
||||
6. (검증) 기존 앱에서 자동 업데이트 수신 확인
|
||||
|
||||
### 버전 정책
|
||||
- `0.x.y-alpha`: 개발 프리릴리스 (현재 단계). 자동업데이트 feed는 alpha 체널.
|
||||
- minor 범프: 대규모 재설계/정리(Midnight Glass v2, refactor-wave). patch: 버그 수정 중심.
|
||||
- alpha→정식 전환은 기능·안정성 기준 충족 시 (별도 합의).
|
||||
| mac x64 (Intel) | 빌드 안 함 (사이드카가 arm64 전용) | 수요 발생 시 Intel Mac runner 추가 |
|
||||
|
||||
## 참고 파일
|
||||
|
|
|
|||
|
|
@ -1,5 +1,17 @@
|
|||
# D3RO-VOICE 프로젝트 현황
|
||||
|
||||
## v0.2.0-alpha 릴리스 (2026-07-22) 🚀
|
||||
|
||||
Midnight Glass v2 + refactor-wave Wave 1/2 + TiltCard 정리를 묶은 첫 마이너 릴리스.
|
||||
|
||||
- **CHANGELOG `[0.2.0-alpha]` 섹션 작성** (switchboard 스타일 — `## [Unreleased]` 최상단 정렬, Added/Changed/Fixed/Removed/Internal). `publish-gitlab-release.mjs`가 Release 노트로 자동 추출.
|
||||
- **release-guide.md 보강**: "Release 페이지 운영" 섹션 추가 (CHANGELOG = Release 노트, 권장 구조, 릴리스 체크리스트, 버전 정책). switchboard(`D:\workspace\agent-switchboard-client`) 패턴 벤치마크.
|
||||
- **포함**: Wave 1(amber 91/i18n 967/IPC SSOT 9그룹/AppConfig 7키/DS 3종 삭제) + Wave 2(web-admin amber 21/ui-native 50/팝업 i18n+토큰/의존성 8/catch 32) + 사용자 노출 버그 3건 해소.
|
||||
- **배포**: `git tag v0.2.0-alpha` + push → GitLab CI (Win NSIS exe + Mac dmg/zip + GitLab Release + Package Registry). Windows 자동업데이트 feed 갱신 → 기존 사용자 4시간 내 수신.
|
||||
- **후속**: switchboard의 `check-release.mjs`/`verify-*-release.mjs` 빌드 검증 스크립트 이식 검토 (D3RO는 publish만 이식 상태).
|
||||
|
||||
---
|
||||
|
||||
## 리팩토링 Wave 2 (2026-07-22 /refactor-wave) ✅
|
||||
|
||||
`/refactor-wave` Wave 2. Wave 1 이월 항목 처리 + 범위 확장(web/admin/site/mobile/ui-native). 5 WS 병렬 → 분리 커밋 5개. 보고서 `docs/REFACTOR_WAVE2_REPORT.md`.
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue