Files
inkling/CHANGELOG.md
altair823 06cfa1c151 chore(release): v0.2.2 — F7 + Quick Capture 스크롤 fix
- F7 (이미 main 병합): AI-primary due_date flow, 다중 후보 추출
- fix(quickcapture): textarea min-height: 0 + .card overflow: hidden 으로 hint 노출 보장

CHANGELOG.md / package.json 0.2.1 → 0.2.2.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-26 23:25:53 +09:00

6.7 KiB

Changelog

본 파일은 Inkling 의 버전별 사용자 영향 변경 사항을 기록한다. 형식은 Keep a Changelog 를 느슨하게 따른다.

0.2.2 — 2026-04-26

v0.2.1 dogfood 중 발견된 F7 (Due Date 합성 표현) + Quick Capture 스크롤 버그를 묶은 패치.

수정

  • F7 — AI-primary due_date flow (#11, 1c72b64·723dccd·579450e): "내일 모레" 가 "내일" 로 잘못 매칭되던 문제. 규칙 파서를 first-match-wins 단일 추출에서 parseAllCandidates 다중 후보 추출로 확장하고, 후보 리스트를 프롬프트 힌트로 주입해 AI 의 dueDate 를 최종값으로 채택. 모호한 합성 표현 ("내일 모레", "다음 주 이번 주") 은 AI 가 null 반환 → 사용자 수동 입력으로 위임. PROMPT_VERSION 3.
  • Quick Capture 창 스크롤 차단: Ctrl+Shift+J 캡처 창에서 입력이 길어지면 textarea 가 flex min-height: auto 때문에 hint (Ctrl+Enter 저장 · Esc 취소 · 이미지 붙여넣기) 를 카드 밖으로 밀어내고 윈도우에 스크롤바가 생기던 문제. textarea { min-height: 0 } + .card/html, body, #root { overflow: hidden } 로 textarea 자체 스크롤로만 동작하도록 격리.

게이트

  • 단위 테스트: 197 → 205 (+8, F7 parseAllCandidates 7 + AiWorker flow flip 1)
  • e2e smoke: 1/1
  • typecheck: 0 errors
  • 신규 npm dependency: 0

업그레이드

v0.2.1 인스톨러 위에 v0.2.2 인스톨러를 같은 위치에 실행하면 in-place 업그레이드. 데이터/마이그레이션 변경 없음 (스키마 v2 그대로).

0.2.1 — 2026-04-26

v0.2.0 dogfood-feedback 8 항목 로드맵 (docs/superpowers/specs/2026-04-26-feedback-roadmap-design.md) 을 한 번에 흡수한 cut.

신규 기능

  • F6-L1 로컬 스냅샷<profileDir>/backups/inkling-YYYY-MM-DD.sqlite 자동 백업 (앱 시작/종료 시) + GFS 로테이션 (14 daily · 5 Mondays · 6 monthly). 트레이 → "지금 백업".
  • F5 마크다운 export — 모든 노트를 frontmatter 마크다운 + index.jsonl + manifest.json + 미디어 트리로 사용자 지정 폴더에 내보내기. RAG 친화 형식. 트레이 → "내보내기...".
  • F6-L3 Import — F5 export 트리를 DB 에 다시 적재. 충돌 정책: id 동일 + raw_text 동일 → skip; id 동일 + raw_text 상이 → 새 uuidv7 (raw_text 불변 invariant 보호); id 신규 → insert. 트레이 → "백업에서 복원...".
  • F1 Due Date 추출 — 한국어 노트 본문에서 마감일 자동 추출 (규칙 파서 14 카테고리 + AI 폴백). NoteCard 에 📅 YYYY-MM-DD 인라인 라벨 + 클릭 편집. 만료 시 회색 + 취소선.
  • F2 태그 클릭 동작 분리 — 칩 텍스트 클릭 = 동일 태그 노트만 필터, 별도 ✕ 버튼이 제거 (5초 undo 토스트).
  • F6-L2 Git sync (MVP) — 트레이 → "지금 동기화" 가 F5 export 트리를 <profileDir>/sync/ 에 쓰고 git add/commit/push. 앱 종료 시 자동 1회. 사용자가 일회 git init && git remote add origin <url> 설정 필요. README 의 "원격 백업" 섹션 참고.
  • F4-C·F cue 강화 — 트레이 tooltip + 메뉴 첫 항목 + Inbox 헤더에 오늘 KST 캡처 카운트 (오늘 N번 잡아뒀다).

카피 변경 (F3 + F4-E)

표면별 자연 한국어로 재배치 — "기억 구출" → 표면별 다른 동사:

표면 이전 신규
트레이: Inbox 구출한 메모 보기 보관한 메모 보기
트레이: 새 메모 기억 구출하기 한 줄 적기
토스트 #2 나중에 찾을 수 있게 보관했습니다. 머릿속에서 꺼내 두었습니다.
토스트 #3 방금 하나의 업무 기억을 구출했습니다. 방금 한 줄 잡아뒀습니다.
Inbox 빈 상태 첫 기억을 구출해보세요. 머릿속에 떠다니는 한 줄을 적어보세요.
QC 힌트 Ctrl+Enter 구출 Ctrl+Enter 저장
제품 표어 local-first 기억 구출 도구 local-first 한 줄 보관 도구

strategy.md §1, §4.1, §9, §11 도 동반 갱신. F4-E (Zeigarnik priming) 효과를 빈 상태 카피에 반영.

데이터 / 마이그레이션

  • Migration v2: notes 테이블에 due_date TEXT, due_date_edited_by_user INTEGER NOT NULL DEFAULT 0 컬럼 추가 (NULL 기본, 비파괴).
  • Pre-migration snapshot: openDb() 가 마이그레이션 직전 <dbFile>.pre-v<N>.bak 생성 (v0.2.0 → v0.2.1 첫 실행 시 자동, 한 번만). 마이그레이션 결함 시 회수 가능 (F6-L1 후속 #4 반영).
  • raw_text 불변 invariant 그대로. F6-L3 import 의 충돌 정책이 이 invariant 를 보호.

시스템 의존

  • git CLI — F6-L2 가 사용자 시스템의 git 을 호출. Windows: Git for Windows + Credential Manager 자동 설정. 이미 README 사전 요구에 포함.

게이트

  • 단위 테스트: 52 → 197 (+145)
  • e2e smoke: 1/1
  • typecheck: 0 errors
  • 신규 npm dependency: 0

Deferred / 후속

다음 기능은 데이터 측정이 필요하여 v0.2.1 dogfood soak 후 별도 brainstorm 으로 이동:

  • F4-A: 잠금/잠금해제 hook (variable interval prompt)
  • F4-B: ambient if-then 온보딩
  • F4-D: 무작위 부드러운 알림

또한 F6-L2 의 Settings UI · safeStorage 토큰 관리 · 자동 conflict resolution · 5분 debounce 등은 MVP 외이며, 데이터 손실 위협 없이 일단 사용 후 우선순위 결정.

업그레이드

v0.2.0 인스톨러 위에 v0.2.1 인스톨러를 같은 위치에 실행하면 in-place 업그레이드. %APPDATA%\Inkling\Inkling\profiles\default\ 데이터 보존. 첫 실행 시 자동 pre-migration snapshot + migration v2 + F6-L1 첫 백업 생성.

권장 절차 (안전):

  1. v0.2.0 트레이 → "지금 백업" 1회
  2. v0.2.0 트레이 → "내보내기..." 1회 (F5 — schema-agnostic 마크다운)
  3. v0.2.0 종료
  4. Inkling Setup 0.2.1.exe 실행 → 같은 폴더에 설치
  5. 첫 실행 시 migration v2 자동 적용

복원 경로 2 가지:

  • (a) <dbFile>.pre-v2.bak 으로 SQLite 자체 복원 (v0.2.0 인스톨러 재설치 필요)
  • (b) F5 export → v0.2.1 의 F6-L3 import 로 schema-agnostic 복원 (더 빠름)

0.2.0 — 2026-04-25

슬라이스 v0.4 — 가장 얇은 종단 경로 (Quick Capture → SQLite → 로컬 Ollama → Inbox) + electron-builder NSIS 인스톨러 + Windows autostart hook + post-slice 마이그레이션 정리. 자세한 결정 이력은 docs/superpowers/specs/2026-04-24-inkling-vertical-slice-design.md 와 git log 참조.