# Changelog

All notable user-facing changes to Gitty are documented in this file.

The project uses calendar versions. Displayed release names use `YYYY.MM.DD`;
package metadata uses the equivalent numeric form without leading zeroes where
required by the package manager.

## [2026.07.22] - 2026-07-22

### Added

- AI-assisted commit splitting for staged changes:
  - analyze the staged diff and propose an ordered set of logical commits;
  - generate an editable Conventional Commit message for every group;
  - move files between proposed commits before applying the plan;
  - create all accepted commits sequentially with **Commit all**.
- Support for commit-splitting suggestions through OpenAI, Anthropic, and
  custom OpenAI-compatible endpoints.

### Changed

- The commit-splitting dialog now explains why a plan cannot be applied and
  clearly marks AI-generated commit messages as editable.
- Safety checks prevent applying a stale plan after the staged files change
  and reject files that contain both staged and unstaged changes.

### Fixed

- **Commit all** now passes a plain state snapshot to the commit workflow
  instead of failing silently when cloning a reactive UI proxy.
- Closing the active repository tab no longer allows an in-flight status or
  fetch response to reopen and reactivate the closed repository.

## [2026.07.21] - 2026-07-21

### Added

- Full Git worktree management:
  - create a worktree from an existing branch;
  - create a new branch and worktree together;
  - create a detached worktree at a commit;
  - open a worktree as a repository tab;
  - move, lock, unlock, repair, remove, and prune worktrees.
- A dedicated **Worktrees** entry below **Tags** in the branch panel.
- An **Open in new worktree** action in the local branch context menu.
- Line-level patch selection with Shift-click range selection.
- Stage, unstage, and discard actions for selected lines while retaining the
  existing whole-file and whole-hunk workflows.
- Arch Linux package automation that builds from `PKGBUILD`, publishes the
  `.pkg.tar.zst` artifact, and updates the Pacman repository database on the
  CDN.
- Detailed German and English help for worktrees, line-level staging, Pacman
  installation, and release changes.

### Changed

- Branch deletion now uses a clearer confirmation dialog with more explicit
  branch and upstream information.
- Dialog backdrops blur the application instead of covering it with a nearly
  black background.
- Remote operations and authentication errors provide more actionable
  feedback.
- Build diagnostics and resource handling for the Arch package pipeline are
  more robust.

### Infrastructure

- Added centralized error notifications.
- Added structured, privacy-conscious telemetry.
- Stabilized the Arch Linux container build and `makepkg` workflow.

## [2026.7.20] - 2026-07-13

### Added

- AI-assisted review of staged changes before committing.
- Optional automatic repository refresh.
- Comprehensive German Git documentation in the built-in help.
- Initial `PKGBUILD` and automated package version synchronization.

### Changed

- Redesigned the repository action toolbar and workspace status presentation.
- Improved repository tabs, diff styling, spacing, and panel structure.
- Improved file-history state handling.

[2026.07.22]: https://git.cbsk-tech.de/Christoph/GitLite/releases/tag/2026.7.22
[2026.07.21]: https://git.cbsk-tech.de/Christoph/GitLite/releases/tag/2026.7.21
[2026.7.20]: https://git.cbsk-tech.de/Christoph/GitLite/releases/tag/2026.7.20
