--- import BaseLayout from '../layouts/BaseLayout.astro'; ---
// CHANGELOG.md

CHANGELOG RELEASE_HISTORY_

Track the evolution of Zaguán Blade. See what's new, what's fixed, and what's coming.

v0.2.0

TBD
Development

Enhancements

  • When selecting a screenshot, added a half-second delay before capturing to allow time for UI elements (like window selection boxes) to disappear.
  • Git performance. Replaced most external git calls with gix for faster, more efficient Git operations.

New Features

  • Brand new App Icon. Redesigned app icon with a fresh, modern look.
  • Git graph visualization. Implemented a Git graph of the 50 latest commits with a details popup for viewing commit information.
  • Ollama Cloud support. Added support for Ollama Cloud. Requires an account at ollama.com.
  • Fixed the Blade Terminal echo bug when the model is using the run_command tool call.
  • Fixed run_command tool calls in AI Chat appearing above already run (or failed) commands instead of below them.
  • Fixed bug in the Ollama and Ollama Cloud implementation that resulted in errors.
  • Diff view showing up on wrong lines. Fixed issue where diff view would appear on incorrect lines due to stale data in the editor. Added proper cleanup and state invalidation when editor content changes. Files: DiffView.tsx, EditorPane.tsx
  • Model selector sluggishness. Reduced avoidable work in the compact selector by memoizing derived lists and selected model. Removed delayed/smooth scroll on open (which can feel laggy) and switched to requestAnimationFrame + instant nearest scroll. Files: CompactModelSelector.tsx
  • History titles missing. Added a resilient fallback title strategy: use conversation.title if present, else use preview, else synthesize from last active timestamp (Conversation X ago). Files: HistoryTab.tsx
  • Natural chat autoscroll + user can interrupt with wheel. Reworked autoscroll to use the real scroll container ref. Split behavior: scroll on new message if user is at bottom / just sent; during streaming, only keep following while user remains at bottom. This preserves manual scroll interruption. Files: ChatPanel.tsx
  • Settings save feels slow. Changed save flow to close modal immediately, then persist in background. Keeps UI responsive while save + model refresh continue asynchronously. Files: SettingsModal.tsx
  • General snappiness + launch flicker. Removed duplicate no-tab editor rendering path that could cause visual churn. Tightened startup flow to show window after first frame and fade out loading overlay immediately (no extra nested delays). Files: Layout.tsx, main.tsx
  • Modernized title bar buttons. Updated window controls to compact rounded buttons with tighter spacing and better active feedback. Files: TitleBar.tsx
  • Terminal too close to sidebar shadow. Increased left padding in terminal content area. Files: TerminalPane.tsx
  • Fixed crash in read_file_range on out-of-bounds slice. Added bounds clamping to prevent panic when requesting lines beyond EOF (e.g., start_line: 350 on a 259-line file). Now returns safe empty output for extreme or inverted ranges instead of crashing.

📦 Dependencies Updated

Comprehensive dependency upgrade across frontend and Rust ecosystem.

Package From To
@codemirror/commands 6.10.1 6.10.2
@codemirror/lint 6.9.2 6.9.3
@codemirror/view 6.39.11 6.39.13
@tauri-apps/api 2.9.1 2.10.1
@tauri-apps/cli 2.9.6 2.10.0
@tauri-apps/plugin-shell 2.3.4 2.3.5
i18next 25.8.0 25.8.4
pdfjs-dist 5.4.530 5.4.624
@types/react 19.2.10 19.2.13
@vitejs/plugin-react 5.1.2 5.1.4

Rust Crates - Safe Updates

Crate From To
clap 4.5.54 4.5.57
regex 1.12.2 1.12.3
tempfile 3.24.0 3.25.0
uuid 1.19.0 1.20.0

Rust Crates - Breaking Updates

  • tauri (2.9.5 → 2.10.2)
    No code changes required. Unblocked plugin support and JavaScript improvements.
  • tree-sitter (0.24 → 0.26)
    Updated node.child(i) to node.child(i as u32) to match new API.
  • notify (6.1.1 → 8.2.0)
    No code changes required. API remains compatible.
  • reqwest (0.12.28 → 0.13.2)
    Removed rustls-tls feature (now default in new version).
  • rusqlite (0.32 → 0.38)
    No code changes required. API remains compatible.
  • tokio-tungstenite (0.21 → 0.28)
    WebSocketConfig now mutable default. Message::Text and Message::Ping take Utf8Bytes and Bytes respectively (converted using .into()).

v0.1.1

February 9, 2026
Latest

New Features

  • PDF support. The editor can now load PDFs natively.
  • Screenshot support. Capture window or select region and attach to chat.
  • Upload image. Upload images directly to chat.
  • Paste image. Paste images from clipboard into chat.

Enhancements

  • Git implementation is now complete. Full Git integration ready for use.
  • Added tooltips on the buttons in the sidebar.
  • Adjustments in the status bar. Improved status bar layout and information.

🐛 Bug Fixes

  • Fixed the Blade Terminal input and output where it used to show escape characters.
  • Fixed issue where the chat would sometimes show garbled response.
  • Hide Search icon because functionality not yet implemented.
  • Open tab now shows the Close button.
  • After closing a tab, go to the previously open tab.
  • Plus many bug fixes.

v0.1.0

February 4, 2026
Initial
🚀

The very first release of Zaguán Blade. This marks the beginning of our journey to create the ultimate AI-native code editor.