Skip to content

Releases: Blockether/vis

v0.1.4

Choose a tag to compare

@github-actions github-actions released this 16 Jul 08:58

What's Changed

  • Revert "build(release): publish ONE canonical com.blockether/vis jar" (a187219)
  • build: publish ONE bundled com.blockether/vis jar instead of sibling packages (c2bde1c)
  • build(release): publish ONE canonical com.blockether/vis jar (8e6385f)
  • feat(attachments): paint vis_attach images inline in the TUI (d3fc1f1)
  • perf(channel-tui): defer whole-bubble clipboard formatting to click time (#24) (7840d0b)
  • fix(shim-matplotlib): accept categorical (string) x/y on bar/barh (7896231)
  • ci(native): drop native-experiment.yml — no Intel/macos-13 build in the matrix (7b595c5)
  • fix(render): drop the 🖼 emoticon placeholder from :img nodes (fed0194)
  • fix(language-surface): park run_tests outside the 30s native tool wall (60d096f)
  • refactor(editing)!: remove the ls tool — find_files/outline/rg supersede it (7aeef72)
  • docs(prompt): enforce full-output access + python/shell narrowing across shell, mcp, bridge fragments (990d9bc)
  • Merge remote-tracking branch 'origin/main' into ci/native-free-runners (b2d60bd)
  • ci(native): probe free macos-13 intel runner + gateway smoke test (c5b3cef)
  • chore(verify): ratchet boxed-math baseline to 0 (43f8b71)
  • fix(persist,ctx): keep realized non-lazy seqs in error :data instead of the {:vis/ref :expr} sentinel (d3c6ed7)
  • perf(boxed-math): eliminate the remaining 127 boxed-math warnings project-wide (f918dc9)
  • ci(native): build macOS arm64 release on free macos-15 runner (5796db1)
  • ci(native): raise arm probe timeout to 240m, drop dead intel/linux probes (0a0fe93)
  • feat(config,search): YAML config tiers + :search :include-gitignored-paths overlay (#23) (8d47c25)
  • fix(provider): retry pre-response TTFT timeouts (b9d4687)
  • feat(bench): add readable Vis transcripts (d8f8c58)
  • fix(channel-tui): stop streaming FULL-frame spin from :scroll identity churn (bd0c5c5)
  • perf(boxed-math): primitive leaves in asr, persistance-sqlite, shim-sqlite3, attachments (15d48cc)
  • perf(boxed-math): coerce primitive leaves in shim-pil, format, foundation-search, file-picker (44b68ad)
  • perf(shims,shell,channel-web,channel-telegram): eliminate boxed math in cold render/format paths (489c0b6)
  • fix(transcript): keep bottom code-bg padding on expanded paste disclosure (ed37efd)
  • ci(native): add linux-x64 probe to native-experiment matrix (cf6fa27)
  • perf(build): restore -Os + interpreter-only GraalPy (accidentally reverted) (ee3ce58)
  • ci(native): trigger experiment on branch push (fc385ea)
  • ci(native): probe free macOS runners + env-tunable builder heap (22b22db)
  • fix(gateway): drain a message queued after Esc as soon as the cancelled turn unwinds (b4afb32)
  • feat(compaction): session_fold receipt carries saved-tokens note and op-card headline (f56fced)
  • fix(theme): hint rel-luminance ^double to kill Math/abs reflection; baseline 1977->395 (a143336)
  • feat(loop): surface the saved-tokens note on fold breadcrumb cards (5b21d98)
  • docs(language-surface): teach manual reload after editing source (no auto-reload) (321c48f)
  • refactor(loop): clarify fold card wording (saved ~tokens / utilization %) (f147366)
  • fix(language-clojure): :only matches fully-qualified var names and errors on no-match (1b897c6)
  • refactor(loop,extension): park the native tool wall during slow setup instead of startup budgets (7cd3e3e)
  • fix(gateway): clear remaining boxed-math warnings in state.clj and server.clj (9b65543)
  • chore(deps): bump svar to 0.7.62 (Responses-API "completed" clean-stop fix) (91fb359)
  • fix(loop,gateway,language-surface): boxed-math cleanup + startup-aware native tool timeouts (8fee45a)
  • fix(loop): fail stuck native tool calls faster (9898894)
  • fix(native): use glibc-compatible FFF (f0d135e)
  • fix(editing): clean boxed math and tighten hashline error data (f019e13)
  • fix(tui): compact provider limit footer resets (c80cf07)
  • fix(language-surface): name the lint target in the LINT_CODE headline (28f6f8a)
  • ci: cache docs site dependencies (a542387)
  • ci: run docs site on java 25 (b5fa21e)
  • ci: upgrade actions to node24 (e0ed752)
  • feat(cli): add vis python standalone interpreter exposing GraalPy sandbox + shims (1afcec0)
  • feat(context): surface reclaimed tokens + live utilization in fold readouts (65cffcf)
  • refactor(channel-tui): move box rule builders to lanterna (600386a)
  • ci: cache classpath dependencies (798dee3)
  • refactor(channel-tui): reuse lanterna clamp and clear table boxed math (afd5ae5)
  • fix(clojure): autostart repl_eval with stale id and dir (212a660)
  • fix(channel-tui): remove duplicate queued prompt echo (e549552)
  • fix(tui): improve project picker selection (3123670)
  • refactor(channel-tui): hoist canonical ^long clamp into primitives, dedup call sites (98d4e62)
  • fix(channel-tui): eliminate all boxed-math warnings across the TUI (2697ef5)
  • feat(shim-paramiko): add server-side API surface (ServerInterface/SFTPServer/…) (48d41c4)
  • chore: ignore prompt regression outputs (958ab10)
  • style: format channel sources (605ed16)
  • chore(lint): exclude generated Telemere vars (8b8cb09)
  • feat(swe-bench): add GLM-5.2 effort parity evaluation (846328a)
  • fixup! fix(native): require tree-sitter platform artifact (12afc4a)
  • test: repair stale UI and editing contracts (8bf435e)
  • feat(eval): add provider-native reasoning effort (c415ef5)
  • fix(native): require tree-sitter platform artifact (e039e4f)
  • feat(editing): strip echo diffs from python_execution stdout for patch/write/struct_patch (571b199)
  • perf(channel-tui): eliminate boxed-math in render pipeline (9c09375)
  • docs(graalpython): document the two Python surfaces (sandbox vs project interpreter) (a4e00cd)
  • perf(loop): drop echo diff from patch/write results on model wire (8653e0c)
  • feat(language-python): run_tests handler with graalpy (default) + project pytest backends (2d4b667)
  • fix(channel-tui): keep a send-during-cancel in the editor, never queued (c6227d9)
  • perf(editing): primitive-hint diff-preview helpers in editing/core.clj (6f879e1)
  • perf(tui): primitive-hint components.clj justify-line/justify-segs (507d832)
  • perf(tui): long-hint provider.clj copilot dialogs + card painters (0bbd7de)
  • feat(shim-pytest): pytest.main([paths]) discovers test files on disk (#19) (4755d28)
  • chore(graal): re-baseline boxed-math ratchet to 2079 (external loop fix +1) (690d36e)
  • refactor(channel-tui): delegate ANSI fold/slice to lanterna 3.1.5-vis.26 (48b24ac)
  • fix(loop): key post-refresh 401 lag detection on recency, not token value (b6de8d5)
  • feat(cat): mark non-contiguous slices with canonical ⋯ divider (7cc5740)
  • perf(tui): primitive-hint provider.clj + dialogs.clj leaf layout helpers (c05d7be)
  • fix(provider-github-copilot): subtract refresh margin on the refresh_in mint branch (#21) (8334a21)
  • refactor(tui): move column layout kernels into lanterna fork (vis.25) (e8bcb2d)
  • chore: update python shims, docs, and tui channel (5444a1f)
  • perf(tui): primitive-hint dialog geometry producers to cut boxed math (e2ed742)
  • refactor(tui): collapse duplicate ellipsize into one lanterna-backed p/ellipsize (9082bf6)
  • perf(tui): move column measurement into lanterna fork (vis.24), delegate primitives (ea6d17d)
  • perf(tui): primitive-hint render.clj input/geometry leaf helpers (296c13c)
  • perf(tui): primitive-hint dialogs.clj leaf layout helpers to cut boxed math (45da5d1)
  • chore(graal): re-baseline boxed-math ratchet to 2270 (pre-existing drift; reflection now 0) (9a17a06)
  • fix(graal): add type hints to silence reflective calls + advertise sandbox shims (4d17b60)
  • Remove the leftovers (709c145)
  • feat(compaction): breadcrumb-canonical fold gist, utilization keeps only the live budget (eec7c97)
  • refactor(sqlite): squash migrations V1..V10 into a single consolidated V1__schema.sql (c089801)
  • chore: sync workspace changes across core, extensions, and docs (9a68ff5)
  • feat(compaction): merge fold ledger into utilization as one-line readout (c35868e)
  • feat(python-extensions): author LLM providers from Python (e370650)
  • feat(env-python): guard against GraalVM/Truffle version mismatch on --jvm (9aaf179)
  • chore: sync workspace changes across core, extensions, and docs (e410b35)
  • perf(channel-tui,git): route footer git through gateway, drop dead client-side walks; sync cache TTL to poll (3e161cb)
  • fix(verify,reflection): make graal gate actually run + zero reflection warnings (001c99f)
  • fix(loop): treat post-refresh 401 as propagation lag, not dead credential (473c0f9)
  • fix(loop): latch dead OAuth credentials gateway-wide to stop 401 refresh storms (f7a251b)
  • fix(clojure): self-heal nrepl eviction and gate test runner on repl liveness (8ee71a2)
  • perf(channel-tui): throttle render-loop scroll-ease to stop streaming CPU spin (1bffb7e)
  • perf(build): shrink native image with -Os + interpreter-only GraalPy (46e006d)
  • fix(build,ci): build native image on every commit for all platforms (793b1ba)
  • perf(channel-tui): input-text fast path + phase-tagged slow-frame logs (fc73837)
  • fix(copilot): honor refresh_in to stop the 401 'IDE token expired' storm (#16) (39635a8)
  • feat(self-docs): add per-page blurbs to vis_docs listing (767f0c9)
  • fix(loop): treat live thread interrupt as user cancel (#13) (aaae74f)
  • fix(gateway): converge auth-token rotation storm, graceful drain, DB-backed turn queue + auto-resume (c16a113)
  • chore(deps): bump com.blockether/svar 0.7.59 -> 0.7.60 (models.dev-backed catalog, slim overlays, canonical :resets-at-ms) (069da8f)
  • feat(gateway): multiplexed /v1/events — ONE SSE stream for many sessions (9594470)
  • perf(gateway/bus,repl-mgr): kill journal-scan churn + reap idle project REPLs (ee1109b)
  • feat(progress/web/tui): surface a live 'Vis is running: …' ticker for coarse activity (0e0280f)
  • fix(tui/render-test): assert the real coalesced flush contract (0de6e6a)
  • fix(tui/shell): green the suite — resume duration bug + stale expectations (bccd7d2)
  • perf(client/gateway...
Read more

v0.1.3

Choose a tag to compare

@github-actions github-actions released this 12 Jul 17:03

What's Changed

  • feat(sessions): owner + session-group folders across sqlite/gateway/tui (3eda330)
  • feat(companion): live SSE tool-card streaming + native iOS TestFlight scaffolding (c10f530)
  • fix(gateway): decode workspace kebab keys at the client boundary so added filesystem roots show (404f4c9)
  • feat(gateway): client-managed daemon self-reap + settings/models API (58cbac1)
  • refactor(companion): drop the clojure extension, rewrite the RN app (b483c96)
  • style(channel-web): use --primary-fg for text on filled primary buttons (0d4262f)
  • fix(editing): treat non-positive expected_mtime as no staleness guard (a97de2d)
  • feat(language): full TypeScript/JavaScript/JSX/TSX support (9327265)
  • test(channel-tui): repair stale state-test setups against current code (1b5c2a3)
  • style(tui,web): bolden dialog titles and warm modal chrome (63ea851)
  • fix(channel-tui): drop the attaching turn from the queued mirror (7b02d0d)
  • chore(companion): trim web dependencies (899e57b)
  • fix(gateway): route provider diagnostics through daemon (1002165)
  • feat(tui): colour the footer git/draft chips like sibling buttons (f50e23d)
  • feat(tui): async magit network verbs + C-x g chord on the footer git button (1c3aa84)
  • bench: tolerate EDN sets and tags in preflight config parser (4ebe1e5)
  • test(python): close matplotlib contexts (7203812)
  • fix(gateway): extend native startup timeout (aacd1e6)
  • feat(tui): magit dialog WIP, hint-bar fitting + F4 log fetch under a timeout (893fe04)
  • fix(repl): make nREPL start truly synchronous + health-aware resources (bb1ce93)
  • fix(tui): bound clipboard helpers with a hard deadline; table wrap via shared lanterna word-wrap (bdd63e3)
  • fix(tui): stop the mid-stream scroll bounce on macOS trackpads (5c00489)
  • fix(tui): wrap markdown table cells inside their columns (4fa8daf)
  • fix(tui): sync session titles live across processes during streaming (6ff45bf)
  • fix(workspace): fresh drafts can never delete HEAD files (d9e743a)
  • feat(workspace): /draft-fresh empty drafts + multi-TUI tab sync merge (a881e23)
  • fix(gateway): synchronize queued turns across channels (19d1721)
  • feat(gateway): canonical wire transcripts + turn traces across channels (3c56c0d)
  • fix(editing): make rg scan phase and parallel sub-loops cancellable (16bed7e)
  • fix(editing): stop runaway rg CPU on cancelled gather (5163a87)
  • fix(gateway): probe entry timeout (98934a5)
  • chore(format): reformat foundation editing and language-surface (12f933a)
  • fix(gateway): release listen socket before resource reap and exit daemon on stop (8010679)
  • feat(language-typescript-bun): refuse monorepo-root REPL with app-dir hint (4722c8e)
  • feat(gateway): kill session background resources on TUI close (614ecf2)
  • chore(deps): bump tree-sitter-language-pack to 1.12.3-blockether.10 (4758ddc)
  • fix(language-surface): advertise dir/timeout_ms on repl_eval, dir/filter on run_tests (ba85059)
  • feat(gateway): route interactive clients through daemon (c23d803)
  • feat(language-typescript-bun): managed Bun REPL + bun test language pack (41b8d21)
  • release: update version files for v0.1.2, bump to next dev version (5503af8)

Package changes

com.blockether/vis

  • feat(sessions): owner + session-group folders across sqlite/gateway/tui (3eda330)
  • fix(gateway): decode workspace kebab keys at the client boundary so added filesystem roots show (404f4c9)
  • feat(gateway): client-managed daemon self-reap + settings/models API (58cbac1)
  • refactor(companion): drop the clojure extension, rewrite the RN app (b483c96)
  • fix(editing): treat non-positive expected_mtime as no staleness guard (a97de2d)
  • feat(language): full TypeScript/JavaScript/JSX/TSX support (9327265)
  • fix(gateway): route provider diagnostics through daemon (1002165)
  • bench: tolerate EDN sets and tags in preflight config parser (4ebe1e5)
  • test(python): close matplotlib contexts (7203812)
  • fix(gateway): extend native startup timeout (aacd1e6)
  • fix(repl): make nREPL start truly synchronous + health-aware resources (bb1ce93)
  • fix(workspace): fresh drafts can never delete HEAD files (d9e743a)
  • feat(workspace): /draft-fresh empty drafts + multi-TUI tab sync merge (a881e23)
  • fix(gateway): synchronize queued turns across channels (19d1721)
  • feat(gateway): canonical wire transcripts + turn traces across channels (3c56c0d)
  • fix(editing): make rg scan phase and parallel sub-loops cancellable (16bed7e)
  • fix(editing): stop runaway rg CPU on cancelled gather (5163a87)
  • fix(gateway): probe entry timeout (98934a5)
  • chore(format): reformat foundation editing and language-surface (12f933a)
  • fix(gateway): release listen socket before resource reap and exit daemon on stop (8010679)
  • feat(gateway): kill session background resources on TUI close (614ecf2)
  • chore(deps): bump tree-sitter-language-pack to 1.12.3-blockether.10 (4758ddc)
  • fix(language-surface): advertise dir/timeout_ms on repl_eval, dir/filter on run_tests (ba85059)
  • feat(gateway): route interactive clients through daemon (c23d803)
  • feat(language-typescript-bun): managed Bun REPL + bun test language pack (41b8d21)
  • release: update version files for v0.1.2, bump to next dev version (5503af8)

com.blockether/vis-channel-tui

  • feat(sessions): owner + session-group folders across sqlite/gateway/tui (3eda330)
  • test(channel-tui): repair stale state-test setups against current code (1b5c2a3)
  • style(tui,web): bolden dialog titles and warm modal chrome (63ea851)
  • fix(channel-tui): drop the attaching turn from the queued mirror (7b02d0d)
  • fix(gateway): route provider diagnostics through daemon (1002165)
  • feat(tui): colour the footer git/draft chips like sibling buttons (f50e23d)
  • feat(tui): async magit network verbs + C-x g chord on the footer git button (1c3aa84)
  • feat(tui): magit dialog WIP, hint-bar fitting + F4 log fetch under a timeout (893fe04)
  • fix(tui): bound clipboard helpers with a hard deadline; table wrap via shared lanterna word-wrap (bdd63e3)
  • fix(tui): stop the mid-stream scroll bounce on macOS trackpads (5c00489)
  • fix(tui): wrap markdown table cells inside their columns (4fa8daf)
  • fix(tui): sync session titles live across processes during streaming (6ff45bf)
  • feat(workspace): /draft-fresh empty drafts + multi-TUI tab sync merge (a881e23)
  • fix(gateway): synchronize queued turns across channels (19d1721)
  • feat(gateway): canonical wire transcripts + turn traces across channels (3c56c0d)
  • feat(gateway): route interactive clients through daemon (c23d803)

com.blockether/vis-channel-web

  • style(channel-web): use --primary-fg for text on filled primary buttons (0d4262f)
  • style(tui,web): bolden dialog titles and warm modal chrome (63ea851)
  • fix(gateway): route provider diagnostics through daemon (1002165)
  • feat(gateway): canonical wire transcripts + turn traces across channels (3c56c0d)
  • feat(gateway): route interactive clients through daemon (c23d803)

com.blockether/vis-foundation-harness

  • feat(gateway): route interactive clients through daemon (c23d803)

com.blockether/vis-language-clojure

  • feat(sessions): owner + session-group folders across sqlite/gateway/tui (3eda330)
  • fix(repl): make nREPL start truly synchronous + health-aware resources (bb1ce93)
  • feat(gateway): route interactive clients through daemon (c23d803)

com.blockether/vis-language-typescript-bun

  • feat(language): full TypeScript/JavaScript/JSX/TSX support (9327265)
  • feat(language-typescript-bun): refuse monorepo-root REPL with app-dir hint (4722c8e)
  • feat(language-typescript-bun): managed Bun REPL + bun test language pack (41b8d21)

com.blockether/vis-persistance-sqlite

  • feat(sessions): owner + session-group folders across sqlite/gateway/tui (3eda330)
  • feat(gateway): canonical wire transcripts + turn traces across channels (3c56c0d)

com.blockether/vis-provider-standard

  • feat(gateway): route interactive clients through daemon (c23d803)

com.blockether/vis-provider-zai

  • feat(gateway): route interactive clients through daemon (c23d803)

Full Changelog: v0.1.2...v0.1.3

v0.1.2

Choose a tag to compare

@github-actions github-actions released this 10 Jul 10:14

What's Changed

  • fix(release): auto-publish extension packages (1408366)
  • fix(editing): treat blank paths entry as "search everything" (484fa5d)
  • release: update version files for v0.1.1, bump to next dev version (9d0764d)

Package changes

com.blockether/vis

  • fix(release): auto-publish extension packages (1408366)
  • fix(editing): treat blank paths entry as "search everything" (484fa5d)
  • release: update version files for v0.1.1, bump to next dev version (9d0764d)

com.blockether/vis-provider-github-copilot

  • fix(release): auto-publish extension packages (1408366)

Full Changelog: v0.1.1...v0.1.2

v0.1.1

Choose a tag to compare

@github-actions github-actions released this 10 Jul 09:17

What's Changed

  • fix(release): publish all vis monorepo packages (68c135d)
  • feat(providers): surface svar 0.7.56 models (fd0e931)
  • fix(editing): coerce stringified array in rg include/query/paths (566f431)
  • feat(provider-github-copilot): allow claude-sonnet-5 in policy models (8a3c1a0)
  • fix(prompt): render every prior answer in full in resume block (d0998af)
  • feat: improve vis tool rendering and resources (9f06e18)
  • Fix markdown fence and comment rendering (a1a519d)
  • docs(agents): note commit message style (e24d814)
  • fix(editing): accept rg include shorthand (cb38da0)
  • fix(transcript): render nested markdown fences (abd943d)
  • fix(editing): delete directory trees (4fe670b)
  • test: fix full suite regressions (199fd27)
  • Update senior SWE benchmark tooling (3e72752)
  • refactor(tui): reuse active turn cleanup helper (f2b348f)
  • Fix TUI workspace root sync (183bf09)
  • fix(tui): reconcile stale in-flight state (6a91062)
  • fix(tui): clear stale cancelling state (32dfac1)
  • fix(loop): close GraalPy context on environment disposal (9d337c1)
  • fix(self-docs): string-key vis_docs payloads (70aad07)
  • fix(clojure-test-runner): empty selectors run everything, not error (8ec775f)
  • feat(attachments): session-level introspection lister (P1) (6e2c5c7)
  • feat(resources): live-tail + paging in background-log viewers (f5ffd79)
  • feat(attachments): storage-offload rail — registry + pure decision + resolver (08f7dea)
  • feat(resources): view background logs in TUI + web (98c1ac1)
  • fix(channel-web): space + chip styling for result summaries (1af06b4)
  • feat(attachments): session_fold collapses vision replay too (640d396)
  • fix(channel-web): harden renderProse against UI-spoofing HTML injection (1c1a1ec)
  • fix(web): strip vis-image fence in DB-restored history; drop comment profanity (1190a1f)
  • fix(tui): collapse same-file edit band to full path shown once (7c92cf2)
  • feat(attachments): V4 unifies both rails into one session_attachment table (b2a1c98)
  • refactor(attachments): self-describing handle ids kill the read-back fallback (ab2ff8c)
  • feat(attachments): unify read-back across tool + user attachments (c99447a)
  • test(loop): update synth oracle for symbol_rename as positional native tool (2228684)
  • feat(attachments): introspection read-back API + misc workspace changes (659280b)
  • feat(editing): promote symbol_rename back to a native tool (0fa53ab)
  • test(attachments): lock down gather->virtual-thread sink conveyance (c92bb4d)
  • clj-ext: format only on :write, not patch/struct_patch (23773de)
  • feat(attachments): $VIS_OUTBOX filesystem tap + rename :images -> :attachments (3a1480e)
  • feat(attachments): vis_attach — generic producer rail for any artifact (11fdd58)
  • feat(attachments): V3 brings session_turn_attachment to V2 payload parity (391306e)
  • feat(attachments): wire iteration-attachment rail to both ends (8cac7cd)
  • refactor(mpl): sink produced images at source, drop stdout-fence parsing (27c54f7)
  • feat(loop): replay generated figures to vision models on the wire (715a0fa)
  • feat(loop): capture matplotlib figure bytes into iteration attachments (e677524)
  • feat(persist): V2 session_iteration_attachment table + store/read (00f2197)
  • tui(navigator): drop empty Modified column, rename Directory -> Dir (c0d9ad8)

Full Changelog: v0.1.0...v0.1.1

v0.1.0

Choose a tag to compare

@github-actions github-actions released this 07 Jul 19:32

What's Changed

  • fix(provider-error): recognize svar 0.7.55 :provider-unavailable single-provider error (af8f187)
  • fix(web+routing): stop main-turn cross-provider fallback, dedupe live-key user bubble & error card (8e07c49)
  • editing: drop symbol_rename/ls/delete_if_exists from native tool surface (b1d855a)
  • fix(mcp): rename MCP tools mcp_* -> mcp__* to clear Anthropic's reserved OAuth prefix (b3778cb)
  • feat(agents): add support for extra filesystem roots in guidance scan feat(core): implement needle filtering for fff to handle quantifiers and brackets test(agents): add tests for extra roots precedence and deduplication test(core): add tests for needle filtering behavior in fff (8c7a332)
  • fix(tui): don't fetch OAuth tokens at TUI startup — defer router build to first turn (7eca2eb)
  • fix(loop): a failing provider must not crash TUI/router startup (2242aa7)
  • deps: svar 0.7.52 — Responses id<=64, zai native anthropic wire, Claude OAuth billing attribution (50e2944)
  • refactor(tools): format_code returns a lean changed? + char-delta ack, not the text (76a4832)
  • fix(tui): keep ANSI colour when truncating collapsed thinking peek rows (58ca916)
  • feat(tui): tint the input frame + show a shell/shell & pill for !cmd / !&cmd (1857022)
  • fix(tui): re-close dangling inline-code span when truncating collapsed cat badge path (5650603)
  • feat(tui,web): quiet no-jump shell-shortcut affordance in the composer (85690c0)
  • docs: document !cmd / !&cmd shell shortcuts in context-and-prompts (6e87408)
  • feat(loop): !cmd / !&cmd shell-sugar turns wired to the shell extension (e788cbc)
  • feat(tui): richer code-fence coloring via tree-sitter query engine (ce7a660)
  • feat(tui): colorize executed form-code band via tree-sitter highlighter (67c4cc8)
  • feat(tui): tree-sitter syntax highlighting for code fences (878402c)
  • feat(matplotlib): inline PNG rendering across TUI + web channels (cfe7e1c)
  • eval: parse plain-JSON content + add verifier timeout multiplier for LM Studio (d914819)
  • chore: gitignore transient agent artifacts (6962ee7)
  • eval: prefer reward_details.json in senior_swe_bench reward resolution (64178c4)
  • deps: bump svar and add mistral.ai provider (528afea)
  • eval: add senior_swe_bench (291385b)
  • fix(native): eliminate reflection on TUI key/mouse input + log path (95cac23)
  • feat(attachments): persist TUI/terminal-drop images as BLOBs in session_turn_attachment (129b6a7)
  • feat(web): multipart image upload through gateway + composer (5e42b85)
  • test(loop): delete write-tmp! temp files in finally, not just deleteOnExit (5d5eb45)
  • test(loop): guard native_tools_results handle regression with real python_execution shape (782a779)
  • fix(loop): only offer native_tools_results handle for a NON-NIL :result (afb4f9f)
  • feat(attachments): thread user attachments through turn submission (327459e)
  • style: normalize zprint formatting on config-drifted files (e082b9c)
  • feat(tui): delegate terminal images to lanterna TerminalImage; add graphical-terminal? (995f941)
  • style(transcript): apply canonical zprint formatting to summary-card files (0227ed1)
  • feat(transcript): full-viewport stat-card grid for session summary (9b0384e)
  • feat(persistance): first-class structured error column on session_turn_state (100119a)
  • fix(web-export): full-width borderless summary, drop title h1 (becb50f)
  • fix(export): CLI --html renders canonical grouped session-summary table (5696a0d)
  • chore(deps): bump svar 0.7.46 -> 0.7.48 (464074d)
  • feat(language-clojure): recursive lint/format + advertise recursion on language surface (06e3095)
  • fix(lint): clean up all 85 clj-kondo warnings across src, test, and extensions (d73934a)
  • feat(language-clojure): add zprint backend with config detection; canonical reformat (9f2cdf6)
  • feat(export): CLI markdown export uses canonical session-summary header (69bf397)
  • feat(tui-cinema): humanize MP4 export playback + document session export (e91af93)
  • fix(clojure-ext): expand ~ in REPL dir so start/stop/eval-by-id agree (16a50c7)
  • chore: gitignore large media (.mp4/.mov) so add -A never stages them (0d687cc)
  • style: reformat whole tree with codestyle/zprint (17c2dec)
  • fix: web slash bubbles render properly; MP4-only session replay with monotonic live-stream scroll (dd67a7b)
  • web: compact sidebar controls, fix label contrast, refine provider priority & tighten chat prose (bfc7df0)
  • web/export: HTML export reuses the web channel's chat rendering (e053e35)
  • fix(web): MCP add-form actions become a bottom full-width footer with themed primary/secondary buttons (c4478ed)
  • transcript: styled HTML export with Prism highlighting; slash boundary fix (6b95684)
  • fix(web): use bundled sprite icons for filesystem picker membership marks (6b69efa)
  • feat(web,tui,mcp): rename resources to Backgrounds, progressive MCP add flow (0dfe0c9)
  • gateway: cross-process event bus so watchers stream in sync (85642bf)
  • perf(persistance): drop 7 dead/forensic iteration columns from V1 schema (af4b6cc)
  • perf(persistance): don't load forensic prompt blobs on session restore (65d5c1e)
  • perf(persistance): parse forensic turn JSON lazily on restore (1aa6780)
  • perf(tui): strip paint sentinels in one StringBuilder pass (71b7f43)
  • feat(bin): add --jfr flag to record a profiling session (49b0a0e)
  • chore: remove measurement scaffolding + trim comment slop (8979e0c)
  • perf(tui): use lanterna vis.21 (cached width) + kill profiled reflection (5c25ba3)
  • perf(mem): let G1 return the idle TUI heap to the OS (~40% less RSS) (03a8ce5)
  • chore(tui): remove the render CPU diagnostics scaffolding (0bb53bb)
  • perf(tui): keep streaming on the cheap partial-live path with background tabs (e9f1f37)
  • perf(tui): async git status, memoize footer usage, kill hot-path reflection (acc3ee1)
  • perf(tui): scroll fast path — repaint only the transcript, not static chrome (6a5a5e9)
  • feat(python-extensions): let vis.extension(ctx=...) contribute to the session bag (fa7569e)
  • refactor(python-extensions): back vis.state with extension_aggregate DB (9359703)
  • TUI: warm-session pool + async new-session; strip slash-command from auto-title (89b1497)
  • tui: coalesce a run of edits by the SAME edit tool into ONE collapsible band (8aab960)
  • tui: emacs-style fold keys (C-x TAB / C-x S-TAB toggle-all) + label overlay polish (8822c3e)
  • tui: coalesce a run of occurrences lookups into ONE collapsible OCCURRENCES band (f52e82b)
  • web: settings scroll-spy + click-to-scroll wired to the real container (109996b)
  • tui: band a parallel GATHER of same-tool calls, not just single-call runs (6f22deb)
  • web: scroll Settings category into its own container, not the page (24fc611)
  • fix(web): vendor DOMPurify, sanitize markdown re-render (fixes DOM-XSS) (63f9e88)
  • fix(security): patch jackson-core CVE + clean up audit doc (d2af404)
  • docs(audit): drop §12 Maintenance & follow-ups (9e1eaef)
  • fix(loop): normalize model-drift colon keys at every depth (5c02080)
  • docs(audit): add repo URL, split security vs GitHub issues, expand commercial services (cfa6b35)
  • docs(audit): restructure — product, Blockether, trademarks, technology, then CVE/footprint/data-governance/commercial (f514722)
  • fix(tui): bulk collapse/expand-all now repaints immediately (a0a908b)
  • tui: coalesce a run of find_files into ONE collapsible FIND_FILES band (c4a7ecb)
  • web: VS Code-style Settings with live search + category rail (10311c2)
  • fix(tui): show hidden directories in filesystem picker (942cb75)
  • feat(tui): render dropped images inline with an Image chip (bc16ea4)
  • fix(slash): dropped absolute file paths are not slash commands (a7de391)
  • chore(deps): bump svar 0.7.45 -> 0.7.46 for anthropic image wire support (0ee89bf)
  • feat(engine): attach dropped image files to the user message (ab50b78)
  • chore(format): cljfmt fix two files failing the baseline format gate (b1b666c)
  • git: a bare add reports what it staged (runs --verbose) (62a5fe6)
  • feat(sandbox): auto-import math as a builtin in every Python sandbox (f4d47c2)
  • feat(matplotlib-shim): beautiful ASCII renderer — Unicode braille canvas + box-drawing frame + optional ANSI color (8e93df3)
  • feat(matplotlib-shim): pure-Python ASCII renderer (plt.show/to_ascii/savefig .txt) (982559b)
  • fix(matplotlib-shim): force AWT headless so macOS never pops a Dock icon/Preview (d7b85a9)
  • feat(matplotlib-shim): OO Figure/Axes API + boxplot/imshow/hlines/vlines/axis, multi-pair plot (d151700)
  • tui: merge consecutive same-file cat reads into ONE deduped card (22739e2)
  • feat(matplotlib-shim): expand pyplot subset + autoload plt/pyplot (76f8805)
  • feat(sandbox): general :ext/sandbox-shims autoload; YAMLStar + Java2D matplotlib shims (23f8f36)
  • ci(audit): flip audit-md.yml to fail-only mode (no bot commits to main) (35b1995)
  • clojure ext + core: drop ports ns, simplify nrepl/repl-manager, rework titling & env_python (a911a53)
  • tui: drop the N-of-M count from Settings search for full parity (9dde731)
  • tui: frame the Settings search input like the command palette (eead318)
  • theme: remap the two loud Solarized roles off magenta to violet (17e8f10)
  • tui: let a narrated git/rg call still join its band (565c936)
  • tui: VS Code-style Settings with left category sidebar (0b83f1f)
  • ci(security): wire NVD/dependency-check scan (nvd-scan job) (7c369f4)
  • test: message-received clears cancel flags regression test (6357ef6)
  • tui: always-on mouse-copy/network/MCP + unified searchable Settings (ece09de)
  • tui: coalesce a run of rg searches into ONE collapsible RG band (848da6b)
  • find: a single match drops the collapse chevron (a7f7777)
  • docs(audit): remove PERSONA scaffolding, restore formal record voice (35358c2)
  • tui: indent nested GIT-band command rows so they read as children (85f700d)
  • docs(audit): rewrite in PERSONA voice — PLAN→EXECUTION→EFFECTS spine, schema-first record shape, strip flattery/adjectives for numbers+paths (62ccd3b)
  • docs(audit): add static §1 Purpose & scope; drop RBI in favour of generic 'regulated environments' (4d6904e...
Read more