• v0.2.8 b20473a593

    altair823 released this 2026-05-09 06:09:16 +00:00 | 155 commits to main since this release

    v0.2.8 — Cut A (이미지 렌더링 + 앱 아이콘)

    작은 polish cut. F22 (이미지 렌더링 bug) + chore (앱 아이콘 SVG → ICO/ICNS/PNG + builder 통합).

    주요 변경

    • F22 이미지 렌더링: NoteCard 의 회색 placeholder div → 실제 <img>. main process 에 inkling-media:// custom protocol 등록 (path traversal 두 layer 검사). 클릭 시 inbox:open-media IPC → shell.openPath 로 OS 기본 viewer 열기.
    • chore 앱 아이콘: assets/icon.svgelectron-icon-builder + sharp (SVG 변환 fallback) + finalize-icons.mjs (출력 위치 정규화) → build/icon.{ico,icns,png} 산출물 + electron-builder config 통합.

    테스트 / 빌드

    • 단위: 460 → 472 pass (+12), typecheck 0 errors, e2e 1/1 pass
    • 산출물: Inkling-Setup-0.2.8.exe (Windows NSIS x64, signed via signtool)
    • (macOS dmg / Linux AppImage + deb 는 차후 추가)

    다음 (Cut B+)

    v0.2.8+ roadmap:

    • v0.2.9 Cut B — F17 status 4분기 + F18 사유 + F23 Ollama-less wizard
    • v0.2.10 Cut C — F20 raw_text 가변 (revision history)
    • v0.2.11 Cut D — F19 FTS5 search + 회고 view
    • v0.3.0 Cut E — F21 양방향 sync + Configure UI + conflict
    • v0.3.1 Cut F — F24 멀티모달 vision
    • v0.3.2 Cut G — F25 사이드바 + notebook 카테고리
    Downloads
  • v0.2.7 e8cddc7889

    altair823 released this 2026-05-08 15:38:22 +00:00 | 162 commits to main since this release

    v0.2.7 — Cross-Platform 입구 정상화

    Windows 트레이 의존을 끊고 macOS / Linux 사용자에게 동등한 입구 제공.

    주요 변경

    • F15 (축소판): Linux 앱 빌드 추가 (AppImage + deb x64). better-sqlite3 linux-x64 prebuild 가용성 검증 . CLI 부분은 v0.3+ 로 deferred (DB/Ollama race + monorepo 부담).
    • F16: 트레이 13 항목 → 4 (한 줄 적기 / 보관함 / 설정... / 종료) + inbox 안 신규 설정 페이지 (4 섹션: AI 제공자 / 자동 실행 / 백업·복원 / 정보). OllamaSettingsModal 흡수 후 제거.
    • F14: macOS dock 클릭 시 hidden inbox 창 자동 show + focus.
    • F12 deeper fix: 자동 실행 진단 노출 — withArgs vs noArgs / executableWillLaunchAtLogin / Windows registry 직접 조회 + silent fallback. 진단 패널 + mismatch 경고 + 재등록 버튼.

    테스트 / 빌드

    • 단위: 426 → 460 pass, typecheck 0 errors
    • 회귀: -165 lines tray callback dead code 제거
    • 25 commits / 30 files / +2372 / −434

    산출물

    • Inkling-Setup-0.2.7.exe — Windows NSIS x64
    • (macOS dmg / Linux AppImage + deb 는 차후 추가)

    다음

    dogfood 발견은 docs/superpowers/specs/2026-04-25-dogfood-feedback.md## F17. 부터 누적.

    Downloads
  • v0.2.6 a51f241b94

    altair823 released this 2026-05-04 17:17:11 +00:00 | 191 commits to main since this release

    Inkling v0.2.6 — 첫 정식 cut (16 backlog 항목 처리)

    v0.2.5 critical hotfix 후 첫 정식 feature cut. backlog 16건 (4 bug + 12 cleanup → 13 task) 통합 처리. PR #24 머지.

    주요 Bug fixes

    #10 restoreNote — AI 재처리 path 복구 (Critical fix activation)

    trash 도중 AI fail 한 노트 restore 시 ai_status 가 그대로 'failed' 로 남아 영구 fail 상태였음. 이번 cut 에서:

    • NoteRepository.restoreNote 가 failed 노트 시 pending reset + pending_jobs INSERT
    • production path 활성화 (round 1 Critical fix): CaptureService.restoreNote 가 새 메서드 호출 + worker.enqueue(id) 도 추가 (in-memory queue 갱신, 다음 app start 까지 대기 X)

    #12 trashCount 정확화

    휴지통 비우기 dialog 가 200 cap 후 length 사용 → 350개 trash 시 "200개 영구 삭제" 표시되지만 실제 350 모두 삭제. 이번 cut 에서 countTrashed() SQL COUNT 사용 (이미 v0.2.3 #4 에서 fix, tests +2 추가).

    #45 autostart 풀림 (진단 fallback)

    트레이 메뉴 "윈도우 시작 시 자동 실행" 체크 → 종료 → 재실행 → 체크박스 풀려 보이는 버그. 이번 cut 에서:

    • getLoginItemSettings({ args: ['--hidden'] }) 명시 (args 비교 정확도)
    • autostart.state 진단 로그 추가 (withArgs vs noArgs 비교)
    • dogfood verify 후 v0.2.7 deeper fix (Windows registry 분석)

    #46 hidden-start race

    NSIS installer 직후 사용자 클릭 + autostart --hidden 동시 시도 시 second-instance handler 가 무조건 inbox 창 띄우던 race. requestSingleInstanceLock(additionalData) + handler 에서 hidden flag 체크 → 두 번째가 hidden 이면 창 안 띄움.

    Cleanup refactor (12건 → 9 cluster)

    항목 변경
    KST helper 통합 src/shared/util/kstDate.ts 단일 source, 4 callsite migrate
    TrayCallbacks 객체화 10 positional → 1-arg + Partial<TrayState> reactive
    AiFailedReason union zod z.infer 단일 export
    hasNoteId predicate NO_NOTE_ID_KINDS Set + type predicate
    NoteRepository hydrate as Record<string, unknown>[] 통일
    Banner shared component <Banner severity> 4 banner migrate
    stats exhaustiveness else { _: never = ev } 컴파일 가드
    microfixes IPC inbox:trash rename / VOCAB_TOP_N / Modal URL pre-check / 회수율 코멘트

    게이트

    • typecheck: 0
    • 단위: 413 → 426 (+13)
    • e2e: 1/1
    • 빌드: dist/Inkling Setup 0.2.6.exe (NSIS x64, 103.8MB)

    다운로드

    • Windows (x64): Inkling-Setup-0.2.6.exe
    • macOS (Apple Silicon): 별도 빌드 (npm run dist:mac on Mac)

    기존 v0.2.5 위에 그대로 설치 — 데이터 보존됨 (SQLite + settings.json).

    다음 단계 (dogfood)

    1. 설치
    2. 일상 사용 (#10 fix 검증: trash → AI fail → restore 시 자동 재처리)
    3. autostart 토글 후 재시작 → autostart.state 로그 확인 (#45 deeper fix 데이터)
    4. ≥1주 soak → 트레이 "사용 로그 내보내기..." → telemetry 누적
    5. 새 UX 피드백 + 버그 수집
    6. v0.2.7 brainstorm 트리거: 잔여 backlog 24건 (telemetry data-dependent 14 + #45 deeper + 신규 피드백 + deferred minors) 일괄 triage

    v0.2.6 Backlog 정리

    • 처리: 21건 (#10 #12 #45 부분 #46 + 12 cleanup + Critical fix)
    • Stale: 1건 (#1)
    • 잔여: 24건
    Downloads
  • v0.2.5 8f2b9adb3a

    altair823 released this 2026-05-04 15:50:08 +00:00 | 210 commits to main since this release

    Inkling v0.2.5 — Critical hotfix: single-instance lock

    v0.2.4 사용자 즉시 업그레이드 권장 — 데이터 안전 영향.

    문제

    앱 아이콘 클릭 시마다 새 process spawn → 트레이 아이콘 여러 개 + 다음 동시 접근 위험:

    • SQLite WAL 동시 write → DB 손상 가능
    • AiWorker 중복 polling → 같은 pending_jobs 두 process 가 처리 (race)
    • HealthChecker 중복 polling → Ollama 부하 + telemetry 이중 emit
    • settings.json atomic write race → temp/rename 충돌

    원인

    app.requestSingleInstanceLock() 호출 부재. Electron default 가 multi-instance 라 .exe 실행마다 별도 main process.

    Fix

    src/main/index.ts 진입점:

    const gotLock = app.requestSingleInstanceLock();
    if (!gotLock) {
      app.quit();
    } else {
      app.on('second-instance', () => {
        const win = getInboxWindow();
        if (win) {
          if (win.isMinimized()) win.restore();
          if (!win.isVisible()) win.show();
          win.focus();
        } else {
          createInboxWindow();
        }
      });
    }
    
    • 첫 .exe → lock 획득 → 정상
    • 이후 .exe → app.quit() 즉시 종료
    • 첫 instance 의 second-instance event → 기존 inbox 창 restore + show + focus (사용자 의도 = "앱 보기")

    게이트

    • typecheck: 0
    • 단위: 413/413
    • e2e: 1/1
    • 빌드: dist/Inkling Setup 0.2.5.exe (NSIS x64, 103.8MB)

    다운로드

    • Windows (x64): Inkling-Setup-0.2.5.exe
    • macOS (Apple Silicon): 별도 빌드 필요 (npm run dist:mac on Mac)

    기존 v0.2.4 위에 그대로 설치 — 데이터 보존됨 (SQLite + settings.json).

    알려진 후속 (v0.2.6 영역)

    • Hidden-start race: NSIS installer 가 설치 직후 사용자 클릭 + autostart --hidden 두 instance 짧은 간격 시 — 첫 lock 보유자에 따라 visible 여부 race. 매우 드문 시나리오 + lock 자체는 정상 동작. v0.2.6 에서 requestSingleInstanceLockadditionalData arg 로 hidden flag 전달 정책 검토.
    • backlog #45 자동실행 풀림 버그: 별도 cut.

    다음 단계 (dogfood)

    1. 설치
    2. 작업 관리자 에서 Inkling.exe process 1개 / 트레이 아이콘 1개 확인
    3. 시작 메뉴 / 데스크톱 아이콘 / 단축키 다중 클릭 → 새 process X, 기존 inbox 창 focus
    4. 일상 사용 + 트레이 "사용 로그 내보내기..." → telemetry 누적
    5. v0.2.6 brainstorm 트리거: backlog 잔여 39건 + 신규 피드백 + hidden-start race + #45 autostart 버그
    Downloads
  • v0.2.4 49c29f34c3

    altair823 released this 2026-05-04 15:27:35 +00:00 | 212 commits to main since this release

    Inkling v0.2.4 — patch cut (Ollama 설정 in-app + backlog 5건)

    흐름

    • v0.2.3 cut 7/7 (PR #13~#19) — dogfood feedback roadmap
    • v0.2.3.1 attempt — Ollama 설정 in-app UI (PR #21) → 0.2.3.1 semver 4-part X.Y.Z.W electron-builder 거부
    • v0.2.4 — minor bump 우회 + backlog 5건 동봉

    주요 신규 기능

    Ollama 설정 in-app UI (PR #21)

    이전 INKLING_OLLAMA_ENDPOINT env var 의존 → 트레이 메뉴 "Ollama 설정..." / OllamaBanner "설정" 링크에서 직접 endpoint + model 변경. Windows 의 dynamic port 점유 (Hyper-V/WSL2 NAT) 같은 환경 이슈에 즉시 대응.

    • <profileDir>/settings.json JSON 영속화 (atomic write)
    • SettingsService + zod 검증
    • ProviderHolder (mutable) — endpoint 변경 시 in-flight generate abort + 새 provider 즉시 적용
    • precedence: settings > env > default
    • 저장 시 healthCheck 통과 시에만 영속화

    Backlog cleanup (5건)

    • #2 DAY_MS = 24*60*60*1000 → 모듈 상단 const
    • #6 media.gc.run() .catch 누락 fix → backup pattern 통일
    • #13 NoteCard onDeleted optional + trash mode 미전달 (dead-code 청소)
    • #44 트레이 메뉴 "Inkling 정보..." → native About dialog (버전, electron, node, OS, profileDir + "위치 열기" / "정보 복사" 버튼)
    • 0.2.3.1 → 0.2.4 version bump

    게이트

    • typecheck: 0 errors
    • 단위: 413/413 (32 files)
    • e2e: 1/1
    • 빌드: dist/Inkling Setup 0.2.4.exe (NSIS x64, 103.8MB)

    다운로드

    • Windows (x64): Inkling-Setup-0.2.4.exe (NSIS, 103.8MB)
    • macOS (Apple Silicon): Inkling-0.2.4-arm64.dmg (별도 업로드 — Mac 머신 에서 빌드 필요)

    Mac 첫 실행 시 codesign skip 이라 "Apple 이 검증할 수 없음" 경고 → 우클릭 → 열기.

    Windows 11434 포트 막힌 환경 (자주 발생)

    Hyper-V / WSL2 / Docker 사용 머신 에서 Windows 부팅 시 11434 포트가 reserved 될 수 있음. 그럴 때:

    1. 트레이 메뉴 "Ollama 설정..." 클릭
    2. Endpoint 를 http://127.0.0.1:11435 (또는 빈 포트) 로 변경
    3. 별도 PowerShell 에서 $env:OLLAMA_HOST="127.0.0.1:11435"; ollama serve 로 Ollama 시작

    또는 LAN 서버 사용: http://<lan-ip>:11434.

    다음 단계 (dogfood)

    1. ≥1주 soak — 일상 사용 + 트레이 메뉴 "사용 로그 내보내기..." → telemetry 누적
    2. UX 피드백 + 버그 수집
    3. v0.2.5 brainstorm: backlog 잔여 39건 + 신규 피드백 일괄 triage

    v0.2.4 backlog 39건 (잔여)

    처리 완료 (5): #2, #6, #13, #44 + version bump
    별도 cut 예정 (1): #45 (자동실행 풀림 버그 — Windows registry 디버깅 필요)
    잔여 (39): refactor / data-dependent / 기타 cleanup → v0.2.5 brainstorm 영역

    Downloads
  • v0.2.3 5fc694c57b

    altair823 released this 2026-05-02 07:20:13 +00:00 | 235 commits to main since this release

    v0.2.2 dogfood 중 발견된 7항목 + telemetry skeleton 단일 cut. 측정 인프라 (#7) 부터 회상 spike (#6) 까지 7개 PR 머지. Build hotfix 2건 포함.

    머지 항목

    • #7 Telemetry skeleton (PR #13): TelemetryService + 일자별 jsonl rotation + 14일 보존 + privacy invariant zod + 트레이 "사용 로그 내보내기"
    • #4 휴지통 + migration v3 (PR #14): deleted_at soft delete + active 쿼리 일괄 가드 + 휴지통 탭 UI + emptyTrash confirm
    • #5 만료 추천 (PR #15): 만료 노트 일괄 trash 배너 + 멀티선택 + KST 자정 snooze
    • #1 Ollama 회복 polling (PR #16): HealthChecker 60s polling + 트레이/배너 수동 재확인 + downtime telemetry
    • #2 AI retry + 수동 trigger (PR #17): unreachable/timeout 무한 retry (15분 cap), schema/other max 3, 트레이 "지금 AI 처리"
    • #3 태그 vocab + per-tag telemetry (PR #18): getTopUsedTags(20) + prompt vocab 라인 + tag_vocab_hit/miss 분류
    • #6 RecallBanner (PR #19): 7일+ 안 본 노트 1건 추천 배너 + 4종 회상 telemetry (shown/opened/dismissed/snoozed)

    Build hotfixes

    • PR #20: npm run dist 가 ARM Mac 에서도 동작. dist:win / dist:mac 명시적 variant. build.mac 블록 추가.
    • 5fc694c: publish: null — Mac 빌드 시 updateInfoBuilder crash 회피, "Cannot detect repository" 경고 제거.

    게이트

    • typecheck: 0 errors
    • 단위: 403/403 (32 files)
    • e2e: 1/1

    다운로드

    • Windows (x64): Inkling-Setup-0.2.3.exe (NSIS, 103.8 MB)
    • macOS (Apple Silicon): Inkling-0.2.3-arm64.dmg (DMG, codesign skip)
      • 첫 실행 시 macOS 가 "Apple 이 검증할 수 없음" 경고 → 우클릭 → 열기

    다음 단계 (dogfood)

    1. 설치 후 ≥1주 soak
    2. 트레이 메뉴 "사용 로그 내보내기..."events.jsonl + stats.md 폴더 생성
    3. UX 피드백 + telemetry 분석으로 v0.2.4 brainstorm 트리거

    핵심 ratio (stats.md 에서 확인)

    • AI 성공률, 평균 durationMs
    • Ollama uptime / 평균 downtime
    • 휴지통 회수율
    • 만료 trash ratio
    • 태그 vocab 적중률
    • 회상 추천 열림율 + 평균 ageDays
    • AI 수동 재시도 빈도
    Downloads
  • v0.2.2 06cfa1c151

    altair823 released this 2026-04-26 14:29:26 +00:00 | 350 commits to main since this release

    v0.2.1 dogfood 패치.

    수정

    • F7 — AI-primary due_date flow: "내일 모레" → "내일" 오인 문제. 규칙 파서가 후보 리스트만 만들고 AI 가 최종 dueDate 결정. 모호한 합성 표현은 AI 가 null → 사용자 수동 입력으로 위임. PROMPT_VERSION 3.
    • Quick Capture 창 스크롤: Ctrl+Shift+J 캡처 창 입력이 길어지면 hint (Ctrl+Enter 저장 · Esc 취소 · 이미지 붙여넣기) 가 카드 밖으로 밀려나고 윈도우 스크롤바가 뜨던 문제. textarea 자체 스크롤로만 동작하도록 격리.

    게이트

    • 단위 테스트 197 → 205 (+8)
    • e2e smoke 1/1
    • typecheck 0
    • 신규 deps 0
    • 마이그레이션: 없음 (스키마 v2 그대로)

    자산

    • Inkling-Setup-0.2.2.exe — Windows NSIS 인스톨러 (x64, ~99 MB)
    • .sha256 — 무결성 검증

    업그레이드

    v0.2.1 위에 같은 폴더로 in-place 설치. %APPDATA%\Inkling\Inkling\profiles\default\ 데이터 그대로 유지.

    자세한 내역: CHANGELOG.md

    Downloads
  • v0.2.1 a38b6fdeea

    altair823 released this 2026-04-26 02:56:36 +00:00 | 356 commits to main since this release

    v0.2.0 dogfood-feedback 8 항목 로드맵 통합 cut. 자세한 변경 사항은 CHANGELOG.md 참고.

    신규 기능

    • F6-L1 로컬 스냅샷 — 자동 SQLite 백업 (<profileDir>/backups/), GFS 로테이션 (14d · 5w · 6m), 트레이 "지금 백업"
    • F5 마크다운 export — frontmatter + index.jsonl + manifest + 미디어 트리, RAG 친화
    • F6-L3 import — F5 트리에서 DB 복원, raw_text 불변 보호 충돌 정책
    • F1 Due Date — 한국어 마감일 추출 (규칙 14 + AI 폴백), NoteCard 인라인 라벨
    • F2 태그 클릭 분리 — 칩 텍스트=필터, ✕=제거+5초 undo
    • F6-L2 Git sync (MVP)<profileDir>/sync/ 에 git push (사용자 일회 설정 필요)
    • F4-C·F cue 강화 — 트레이 + Inbox 헤더에 오늘 N번 표시

    카피 변경 (F3 + F4-E)

    "기억 구출" 어색함 해소 — 표면별 자연 동사로 분배 (꺼내 두다 / 잡아두다 / 한 줄 적다 / 보관). strategy.md 동반 갱신.

    데이터

    • migration v2 (notes.due_date 컬럼) — non-destructive ALTER
    • pre-migration snapshot 자동 (<dbFile>.pre-v<N>.bak) — 마이그레이션 결함 회수

    게이트

    • 단위 테스트: 52 → 197 (+145)
    • e2e smoke: 1/1
    • typecheck: 0 errors
    • 신규 npm dep: 0 / 시스템 dep: git CLI (이미 README 사전 요구)

    다운로드

    • Inkling Setup 0.2.1.exe — Windows NSIS 인스톨러 (≈100MB)
    • Inkling Setup 0.2.1.exe.sha256 — SHA-256 체크섬

    업그레이드

    v0.2.0 위에 같은 폴더에 설치하면 in-place 업그레이드. 첫 실행 시 자동:

    1. <dbFile>.pre-v2.bak 생성
    2. migration v2 적용 (due_date 컬럼)
    3. 첫 F6-L1 스냅샷

    안전 권장: v0.2.0 종료 직전 트레이 "지금 백업" 1회 + "내보내기..." 1회.

    Deferred

    측정 후 별 brainstorm 으로 이동:

    • F4-A (잠금 hook) · F4-B (ambient if-then 온보딩) · F4-D (random prompt)
    • F6-L2 Settings UI · safeStorage · 자동 conflict 해결 · 5분 debounce
    Downloads