Kinsta Sync 1.1.5
Internal hardening, tests, and cleanup — no user-facing behavior changes.
Tests
- Added unit tests for the previously-untested main modules:
kinstaApi.ts
(backup slot management, operation polling, cache clearing, retry interceptor),
config.ts(sync history, API-key storage, legacy migration), and
localPaths.ts(binary/phar resolution). Test count: 73 → 102.
Hardening (from an adversarial code review — all low-severity, defensive)
- The rsync paths are derived inside the sync try-block so an unexpected throw
can't leave a site's sync flag stuck (it always unregisters). - Backup creation now fails fast instead of polling for 10 minutes if Kinsta
ever omits an operation id. - The pull drawer filters progress events by mode; a successful push no longer
depends solely on the final progress event to leave the spinner.
Cleanup
- Migrated the link drawer to the shared Kinsta icon (~230 fewer lines) and
centralized its accent color; removed orphaned compiled artifacts.
Verified with 102 unit/integration tests, a clean build, and the prior release's
real pull + push against Kinsta staging.