Changelog
Release notes per server version (reported by senkani_version). Full detail lives in CHANGELOG.md in the repo — this page is a curated summary.
v0.3.0 (current) — May 2026
- Release-validation passes closed — onboarding-pass (milestones 1-7, banner-disappears contract,
SENKANI_ONBOARDING_MILESTONES=offno-op) and surface-pass (8 surfaces: search-web, sinks, authorship, migrations, schedule, diff-viewer, quant-frontier, paired-numbers). Five release-blocker findings filed and shipped during the passes. - Audit-chain durability hardened — three
CommandStorechain-participating writes (recordCommand,endSession,recordBudgetDecision) flippedqueue.async→queue.syncso short-lived CLI processes (e.g.senkani authorship backfill) commit audit rows before exiting. NewI10invariant inINVARIANTS.md. - T.6 macOS local notifications wired — SenkaniApp now owns a
UNUserNotificationCenter-backedLocalNotifierBridge, requests UN authorization at boot, and the first production producer (OnboardingMilestoneStore.recordonfirstNonzeroSavings) fires the "Save your first tokens" celebrate banner. Opt-out via~/.senkani/notifications.json. - SenkaniApp pane-launch EMFILE crash fixed — boot-time
RLIMIT_NOFILEraise + in-process git-blob hashing (replaces fan-out togit hash-objectsubprocesses) so large indexer runs no longer exhaust the per-process file-descriptor budget. senkani doctorcheck #20: walk-bundle staleness — paired with newsenkani walk rebuild-bundleshared helper. Detects out-of-date walk bundles before they cause silent failures in operator surface passes.senkani onboarding milestonesCLI — read-only verification surface for milestone state (the operator-side inspection gap surfaced during onboarding-pass).senkani uninstallscanner: categories 11 + 12 —appCacheDirectory(~/Library/Caches/dev.senkani.app/) andsavedApplicationState(~/Library/Saved Application State/dev.senkani.app.savedState/) now in the 12-category emit.- Sidebar destructive-action contract — hover-revealed remove
X, tiered-checkbox dialogs for projects and workstreams, create-time disclosure on+ New Workstream. Closes the long-standing "no UI to remove projects/workstreams" gap. - Pane title-bar
Xclose button — right-edge resize handle no longer steals its clicks. claude_session_cursorsschema hardening —PRIMARY KEYsplit to(path, reader)so the realtime watcher + cursor-driven reader stop fighting for the same row; cursors joined the 90-day retention sweep;ClaudeSessionWatchersurvives burst rotation + restart without re-emitting historical token usage.swift buildwarning-clean (debug + release) — 19 sites cleaned across Core / MCP / CLI / SenkaniApp / Package.swift (redundantnonisolated(unsafe), staleawait, WebKit main-actor hop). Unblocks the v0.3.0 promote AC4 zero-warning gate.- Test infrastructure —
swift testfull-suite hang root-cause fix (mig-helper go-barrier + zombie reap); five listener-socketDispatchSourcecancel handlers no longer race mutableself.<fd>; two parallel-mode flakes (fd-baseline + MCPSession savings-debug) closed via set-difference + unique-tool_namefilter patterns. Total tests 2,350 → 3,046.
v0.2.0 — April 2026
- SessionDatabase split closed (April 24) — four-store layout (
CommandStore,TokenEventStore,SandboxStore,ValidationStore) withSessionDatabase.swiftreduced to lifecycle, retained counters, and cross-store composition. PublicSessionDatabase.sharedAPI remains stable. - Ollama: first-class pane + curated LLM catalog (April 20) — new
.ollamaLauncherPaneType with a settings drawer listing 5 curated LLMs (llama3.1, qwen2.5-coder, deepseek-r1, mistral, gemma2). Size disclosed before click; click-to-pull streamsollama pullprogress into the UI and captures the digest. Absent-state deep-links to ollama.com/download. Bounded contexts stay separate: user-facing LLMs live here, senkani-internal ML (minilm / gemma4) stays in Model Manager. - Add-pane gallery redesign (April 20) — categorized pane picker (Shell & Agents / AI & Models / Data & Insights / Docs & Code). Missing Dashboard entry restored.
- Website rebuild — multi-page wiki + tightened landing page. 20 MCP tools + 22 CLI commands + 19 panes each have their own URL. Start here.
- Security hardening (v0.2.0 release) — prompt-injection guard on, SSRF guard on (DNS pre-resolution + redirect re-validation + subresource blocklist), secret detection on (13 families + entropy), socket-auth opt-in, structured JSON logs opt-in with sink redaction, retention scheduler.
- Compound learning + KB master plan — nine-round landing 2026-04-17: H+2b context signals, H+2c instruction/workflow generators with Schneier never-auto-apply, H+2d sprint + quarterly cadence, F+1 Layer-1 rebuild coordinator, F+2 entity tracker, F+3 enrichment validator + KB rollback, F+4 KB timeline, F+5 KB↔learning bridge.
senkani_repo— query any public GitHub repo without cloning. Host-allowlisted, SecretDetector-scanned, TTL-cached.- MLX inference lock — FIFO serialization + macOS memory-pressure-aware model drops across
senkani_embed,senkani_vision, Gemma rationale rewriter. - Sprint Review pane — GUI counterpart to
senkani learn review. Accept/reject staged proposals with stale-applied panel. - Grammar staleness advisory — non-blocking (SKIP not FAIL) to avoid CI false alarms.
See the repo CHANGELOG.md for dated per-feature detail.