2.7 KiB
2.7 KiB
Release v1.3.2 (2026-02-19)
Summary
Release focuses on stability and data integrity for local configurations. Added configuration revision history, stronger recovery for broken local sync/version states, improved sync self-healing, and clearer API error logging.
Changes
Configuration Revisions
- Added full local configuration revision flow with storage and UI support.
- Introduced revisions page/template and backend plumbing for browsing revisions.
- Prevented duplicate revisions when content did not actually change.
Local Data Integrity and Recovery
- Added migration and snapshot support for local configuration version data.
- Hardened updates for legacy/orphaned configuration rows:
- allow update when project UUID is unchanged even if referenced project is missing locally;
- recover gracefully when
current_version_idis stale or version rows are missing.
- Added regression tests for orphan-project and missing-current-version scenarios.
Sync Reliability
- Added smart self-healing path for sync errors.
- Fixed duplicate-project sync edge cases.
API and Logging
- Improved HTTP error mapping for configuration updates (
404/403instead of generic500in known cases). - Enhanced request logger to capture error responses (status, response body snippet, gin errors) for failed requests.
UI and Export
- Updated project detail and index templates for revisions and related UX improvements.
- Updated export pipeline and tests to align with revisions/project behavior changes.
Breaking Changes
None identified.
Files Changed
- 24 files changed, 2394 insertions(+), 482 deletions(-)
- Main touched areas:
internal/services/local_configuration.gointernal/services/local_configuration_versioning_test.gointernal/localdb/{localdb.go,migrations.go,snapshots.go,local_migrations_test.go}internal/services/export.gocmd/qfs/main.goweb/templates/{config_revisions.html,project_detail.html,index.html,base.html}
Commits Included (v1.3.1..v1.3.2)
b153afb- Add smart self-healing for sync errors8508ee2- Fix sync errors for duplicate projects and add modal scrolling2e973b6- Add configuration revisions system and project variant deletion71f73e2- chore: save current changescbaeafa- Deduplicate configuration revisions and update revisions UI075fc70- Harden local config updates and error logging
Testing
- Targeted tests for local configuration update/version recovery:
go test ./internal/services -run 'TestUpdateNoAuth(AllowsOrphanProjectWhenUUIDUnchanged|RecoversWhenCurrentVersionMissing|KeepsProjectWhenProjectUUIDOmitted)$'
- Full regression suite not run in this release step.