hermes-android/CHANGELOG.md
2026-08-24 22:50:59 +07:00

39 lines
2.5 KiB
Markdown

# Changelog
All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
## [Unreleased]
### Added
- **Version Catalog**: Centralized dependency management via `gradle/libs.versions.toml`.
- **Dependabot**: Automated weekly dependency update checks for Gradle and Cargo.
- **CI Release Automation**: Automated GitHub Actions job building Windows (`hermes-pair-windows-x86_64.exe`) and Linux (`hermes-pair-linux-x86_64`) binaries on tag push (`v*`) with automated `SHA256SUMS.txt` generation.
- **Repository Documentation**: Added `SECURITY.md`, `CONTRIBUTING.md`, `CHANGELOG.md`, and `LICENSE` tracking.
- **Gradle Optimizations**: Parallel execution, build caching, 4GB JVM heap, and non-final resource IDs in `gradle.properties`.
### Changed
- **Binary Hygiene**: Removed tracked binary distribution files (`hermes-pair/dist/**`) from git repository tracking; updated `.gitignore` and `README.md` to instruct downloading from GitHub Releases or building from source.
## [0.1.0] - 2026-08-24
### Added
- **Task 01 (Transport & LAN Reachability)**:
- Multi-host connection management with independent WebSocket reconnect loops.
- Automatic LAN IPv4 discovery and host health probing (`/api/status`).
- Auth token and WebSocket ticket exchange protocol (`/auth/native/token`).
- **Task 02 (Persistence Integrity & Timeline Ordering)**:
- Room database persistence for `UnifiedSession`, `HostSessionBinding`, and `UnifiedMessage`.
- Monotonic chronological timeline ordering (`createdAt ASC, id ASC`).
- Defensive data copying and atomic transaction handling in repositories and DAOs.
- **Task 03 (Critical UX & Lifecycle Scoping)**:
- Compose UI state scoping with lifecycle-aware subscriptions.
- CameraX QR scanning with lifecycle binding, runtime permission handling, and camera resource release.
- Host-targeted approval and confirmation dialog routing.
- **Task 04 (CI Workflow & Test Harness)**:
- GitHub Actions CI pipeline running Android unit tests, lint, assemble, Rust cargo test/clippy, and emulator instrumented tests.
- Thread-safe fake DAOs (`FakeUnifiedSessionDao`, `FakeHostDao`) with lock synchronization.
- Deterministic test synchronization replacing sleep-based polling.
- E2E contract scenario test verifying end-to-end multi-host messaging, tool calling, and approval lifecycle.