v0.7.46
What's changed in v0.7.46
- fix(repo-intelligence,v0.7.46): narrow rename retry to lock-contention codes only (8cc2446)
- docs(changelog,v0.7.46): note repo-intelligence atomic-write EPERM retry fix (04b8658)
- fix(repo-intelligence,v0.7.46): retry transient EPERM on atomic-write rename (Windows lock flake) (5db74c9)
- fix(repl,v0.7.46): F7 + F8 SDK consumer audit follow-ups (load() noise + ambiguity null-return) (2c7e701)
- docs(changelog): retarget gitRoot-no-project-intent fix 0.7.47 → 0.7.46 (cdb623c)
- fix(repl,coding,v0.7.47): storage.list() no auto-cwd filter when caller signals no project intent (1bce8c1)
- docs(changelog,v0.7.46): stamp release date 2026-06-07 (74b2c84)
- docs(changelog,v0.7.46): add MCP session-id persistence fix + estimateTokens cache (25dcb17)
- refactor(repl,agent): import agent-layer symbols from @kodax-ai/agent canonical source (7eb6b0c)
- test/chore(v0.7.46): converge fs-integration timeout flakes + per-project session corpus reader (bdc8d86)
- refactor(repl,v0.7.46): FEATURE_219 — import session-lineage from @kodax-ai/agent (f2df13c)
- chore(v0.7.46): release prep — version bump + CHANGELOG + SDK migration-gap + Windows test (66d45e1)
- docs(v0.7.46): FEATURE_219 — record shipped state (Phase 1-4 + review hardening) (76e9259)
- fix(repl,v0.7.46): FEATURE_219 code-review hardening (5f86493)
- feat(repl,v0.7.46): FEATURE_219 Phase 4 — whole-session archive (archived/ + SDK) (ab34e72)
- feat(repl,v0.7.46): FEATURE_219 Phase 3 — island sidecar .archive.jsonl → .islands.jsonl (34a1dfa)
- feat(repl,v0.7.46): FEATURE_219 Phase 2 — auto-migration (locked + journaled + non-destructive) (d114ca1)
- feat(repl,v0.7.46): FEATURE_219 Phase 1 — per-project session storage + id-only locator (af57cac)
- docs(repl,v0.7.46): FEATURE_219 — per-project session storage 设计 (ADR-038) (a24de28)
- fix(repl,v0.7.46): FEATURE_214 — inline bottom-anchored cursor + atomic IME-safe repaint (fc73e73)
- feat(repl,v0.7.46): FEATURE_214 — bounded inline live frame + scrollback ledger (default ON) (95a8db7)
- docs(changelog,v0.7.46): retarget SDK session listing fixes 0.7.45 → 0.7.46 (9d12d87)
- fix(repl,v0.7.45): SDK session listing — fast/slow path parity + 5 in-process embedder footguns (2e72a26)
- docs(v0.7.46): FEATURE_214 — inline ledger final state (flag-on code complete) (a98e90b)
- feat(repl,v0.7.46): FEATURE_214 — inline ledger code-complete (empty-rebuild clear + re-entry forceRebuild + model gate) (d93b0eb)
- fix(repl,v0.7.46): FEATURE_214 — inline ledger failure path never advances/keeps wasActive on a commit that didn't land (a98a635)
- feat(repl,v0.7.46): FEATURE_214 — flag-gated inline scrollback ledger wiring (KODAX_INLINE_LEDGER) (3965824)
- fix(repl,v0.7.46): FEATURE_214 — forward commitInlineScrollback through the renderer handle (exposure chain) (369818c)
- feat(repl,v0.7.46): FEATURE_214 — offline section->scrollback text renderer (reuses React path) + tests (56ca483)
- feat(repl,v0.7.46): FEATURE_214 — engine commitInlineScrollback primitive + exposure (inline ledger backend) (be1e42d)
- feat(repl,v0.7.46): FEATURE_214 ledger Step 2a — identifyTranscriptSection bridge + tests (cc8442e)
- docs(repl,v0.7.46): FEATURE_214 — clarify inline scrollHeight is live-frame-only by design (review follow-up) (76b6301)
- feat(repl,v0.7.46): FEATURE_214 ledger Step 1 — source-backed inline scrollback ledger (pure core + tests) (137ef18)
- refactor(repl,v0.7.46): FEATURE_214 — remove redundant committedCount scrollback queue (147de1a)
- feat(repl,v0.7.46): FEATURE_214 Phase 2b — inline prompt un-materializes; finalized commits to scrollback once (cdd1d50)
- chore: sync package-lock versions (0ea8f94)
- docs(v0.7.46): FEATURE_214 Phase 2 root verified = materialize, not re-emit (9d62ce3)
- docs: 版本重排 — v0.7.46 仅留 FEATURE_214,105/211/215/217 迁 v0.7.51,47/49 规划后移 52/53/54 (750b100)
- fix(agent): persist MCP streamable HTTP session id (c0260d2)
- feat(repl,v0.7.46): FEATURE_214 Phase 2 core — commit-once scrollback queue (TDD) (2c3ba1f)
- fix(repl,v0.7.46): self-heal auto-in-project permission alias instead of nagging on startup (4adee00)
- fix(repl,v0.7.46): FEATURE_214 review fixes — retire dead cursor code + cover raw-write paths (f037fac)
- test(repl,v0.7.46): FEATURE_214 — formalize Frame.inputCursor + cursor regression tests (21cdd68)
- fix(repl,v0.7.46): FEATURE_214 — inline input cursor via displayCursor model (e84274f)
- feat(repl,v0.7.46): FEATURE_214 Step 1 — renderer-side input cursor capture (codex-style) (aac1fd1)
- feat(repl,v0.7.46): FEATURE_214 Phase 1 — inline mixed-shell policy (6604180)
- docs(v0.7.46): FEATURE_214 codex-style inline viewport rebuild plan (b710f48)
- fix(repl,v0.7.46): DECSTBM hardware-scroll default OFF all platforms (459bce4)
- docs: correct ADR render performance analysis (be1fe60)
- fix(repl,v0.7.46): no black-flash on submit (synchronized-output reset) (c4d51f1)
- perf(repl,v0.7.46): cache per-item transcript rows + drop per-render disk read (dc1b121)
- perf(agent,v0.7.46): per-message WeakMap cache for estimateTokens (98487c3)
- fix(coding,v0.7.45): saveSessionSnapshot gitRoot — patch 6th call site auto-reroute.ts (review follow-up) (58bdec7)
- fix(coding,v0.7.45): saveSessionSnapshot honors options.context.gitRoot (in-process embedder bug) (161936b)
- fix(llm,v0.7.45): FEATURE_216 review fixes — 2 H + 3 M + 2 SEC findings (03d41f8)
- feat(llm,v0.7.45): FEATURE_216 verifyProviderCredential + per-provider strategy (9ecd756)
- docs(feature_216,v0.7.45): renumber Provider Credential Verification 212→216 (silent ID collision) (4388c48)
- fix(repl): render colored inline diff for file edits in live transcript (b9fcac1)
- docs: surface MiniMax-M3 + full M2.x lineup in minimax-coding row (64d1a6a)
- docs(v0.7.46): FEATURE_215 generic LLM-judged stop-hook primitive 下沉 @kodax-ai/agent (7111848)
- docs(feature_212,v0.7.45): file Provider Credential Verification API (5381aa5)
- docs(v0.7.46): FEATURE_105 正文按当前架构重写 + 代码核对修正 (8f3aefb)
- fix(repl,v0.7.46): FEATURE_214 — reset bypass offset on DOM-readback commit (review catch) (cc87468)
- feat(repl,v0.7.46): FEATURE_214 A.activate — fullscreen overscan opt-in (KODAX_SCROLL_OVERSCAN=1) (5d271fa)
- feat(repl,v0.7.46): FEATURE_214 A.ScrollBox — React-bypass scrollBy (inert) (585faa3)
- feat(repl,v0.7.46): FEATURE_214 A.ScrollBox — overscan-block window capability (inert) (f3bf941)
- feat(repl,v0.7.46): FEATURE_214 A.overscan — pure global→block window math (4f1bcb6)
- feat(repl,v0.7.46): FEATURE_214 A.ScrollBox — React-bypass render-trigger primitive (0050dba)
- feat(repl,v0.7.46): FEATURE_214 A.render-node — windowed-overscan in-block translation (66ec7d7)
- refactor(repl,v0.7.46): FEATURE_214 A.gate — extract pure computeScrollState + unit gate (33a43b0)
- docs(v0.7.46): FEATURE_214 §8 — full claudecode scroll mechanism (3-agent verified) + KodaX gap + port spec (eb212b8)
- test(repl,v0.7.46): FEATURE_214 Phase A gate — scroll→window coalescing contract (bde1ee1)
- docs(v0.7.46): FEATURE_214 — concrete implementation blueprint after source deep-read (7ce5b87)
Downloads
Each archive contains the kodax executable and a sidecar builtin/ directory.
Extract anywhere and run ./kodax (or kodax.exe on Windows). No Node.js required.
Verify integrity with the matching .sha256 file or the aggregated SHA256SUMS.