53 lines
2.9 KiB
Markdown
53 lines
2.9 KiB
Markdown
# TODO.md
|
|
|
|
## TODO
|
|
- Add access control before calling this publish-ready for general users.
|
|
- Current app assumes a trusted LAN/reverse-proxy environment.
|
|
- Decide between built-in login/API sessions or documented reverse-proxy auth.
|
|
- Protect job creation, job deletion, backup deletion, and settings updates.
|
|
- Move long-running destructive deletes to background jobs with progress.
|
|
- Deleting a backup/job currently waits inside the API request while rclone deletes remote objects.
|
|
- Add delete operation records, progress/error reporting, and UI polling so large job deletes do not hit proxy/browser timeouts.
|
|
- Strengthen remote upload verification.
|
|
- Current verification checks that the remote object exists.
|
|
- Also compare remote size from `rclone lsjson` with the local archive size before deleting the local archive.
|
|
- If supported by the remote, optionally record/check hashes.
|
|
- Add backup history pagination and search.
|
|
- Current UI/API can grow noisy as backup records accumulate.
|
|
- Add `limit`, `offset`/cursor, guest filter, state filter, and date range filter.
|
|
- Add a remote/orphan inspection view.
|
|
- Show remote backup folders/files that are not represented in SQLite.
|
|
- Show SQLite records whose remote object is missing.
|
|
- Keep cleanup manual/explicit; do not auto-delete unknown remote objects.
|
|
- Add retention preview/dry-run in the UI.
|
|
- For each job, show which completed backups would be deleted by the current retention rule.
|
|
- Useful before changing retention from days to latest or lowering retention values.
|
|
- Add migration regression tests.
|
|
- Test fresh DB creation.
|
|
- Test upgrading older schemas.
|
|
- Test bad stored timezone repair, including `/UTC`.
|
|
- Replace FastAPI `@app.on_event("startup")` with lifespan handling.
|
|
- Tests currently pass but FastAPI emits deprecation warnings.
|
|
- Add CI/runtime compatibility coverage for supported Python versions.
|
|
- CI currently validates one Python version.
|
|
- Add a small matrix for the supported versions used by common Proxmox/Debian installs.
|
|
- Add clearer setup diagnostics.
|
|
- Surface `pvesh` access errors, missing storage, bad rclone path, missing remote, and remote path test failures separately.
|
|
- Add a setup “test connection” action before saving completed setup.
|
|
- Add restore/export planning.
|
|
- Decide whether the app should support downloading remote archives back locally or only manage backup creation/deletion.
|
|
- If implemented, restore must be explicit and should not auto-overwrite local files.
|
|
|
|
## In Progress
|
|
|
|
|
|
|
|
## Completed
|
|
- Make timezones configureable
|
|
- show a "in xx:xx:xx" counting down to the next backup a bit more
|
|
- when deleting a backup that is already deleted, nuke its metadata row entirely
|
|
- add a better ui for viewing the details of a backup
|
|
- see the id of a backup job in the editor of them
|
|
- add backup job counts to the guests list
|
|
- no "im progress" thing for deleting a backup nor deleting a job and its still hanging on deleting more stuff
|