Summary
- Restore SFTP backup uploads by forwarding the configured server identity to Offen as
SSH_HOST_PUBLIC_KEY, without disabling host-key verification. Missing or invalid pins are rejected before applications stop; Offen rejects a mismatched server identity during upload. - Simplify SFTP setup with automatic discovery for unpinned endpoints, a separate fingerprint preview, and explicit Approve and save. Existing pins are never silently replaced. Add an administrator/write-only API approval endpoint with locked endpoint and previous-identity checks.
- Update follow-redirects, glob and minimatch to address credential-forwarding and denial-of-service advisories. Composer and npm audits reported no known vulnerabilities in locked dependencies during validation; container images and running installations are not covered by these audits.
- Include release notes in all nine supported changelog languages.
Upgrade Notes
- No database migrations are included. Once the release images are published, pull the updated application and agent images and recreate the containers, preserving storage volumes, configuration and
APP_KEY. Running installations are not updated automatically. - For an existing SFTP destination without a saved host key, open Destinations, edit the destination, and let VolumeVault retrieve the server key. Compare its fingerprint through a trusted, independent channel, click Approve and save, test the destination, and retry the backup.
- Discovery is trust on first use, not independent identity verification. Verify any server-key change before approving a replacement. Existing trusted OpenSSH, base64 and SHA256 pins remain supported; advanced manual entry remains available.
- Listing and restore downloads retain their existing optional-pinning behavior. Reload the page to load the updated frontend assets.
Verification
- Feature validation passed the full PHP suite (1,914 passed, 21 optional/environment skips), frontend tests (261 passed), production build, Pint and diff checks. The existing frontend bundle-size warning remains.
- Five opt-in real Offen/SFTP integration tests passed, including successful transfers and incorrect/missing-key rejection. All three PR CI checks passed, including MySQL and PostgreSQL migration recovery.
- Release preparation passed the changelog tests (18 passed, 146 assertions), tagged-release changelog validation, Pint and diff checks.
- All three main-branch CI checks passed on the release commit, including Composer/npm audits, frontend tests/build, PHP tests and MySQL/PostgreSQL migration recovery.
- Container image publication is handled by the tag-triggered GitHub Actions workflow; no running installation is modified by this release.
Full Changelog: v2.0.8...v2.0.9