mirror of
https://github.com/sol1/rustguac.git
synced 2026-09-10 01:26:06 +00:00
70763932ca
Closes #123 (parts 2 + 3 only; upload disconnect and drag-drop UX postponed for further testing). cleanup_browser hardcoded retention_secs=0 and never consulted cleanup_on_close, so the [drive] config flags were dead code at end-of-session teardown. This was visible to operators as "cleanup_on_close = false has no effect" and "retention_secs = 0 wins over cleanup_on_close = false" - the same root cause for both reports. - cleanup_browser now takes (cleanup_on_close, retention_secs) and only calls drive::cleanup_session_dir when cleanup_on_close = true, passing retention_secs through. session.drive_path is still cleared either way so subsequent reads don't think we still own the dir. - drive_cleanup_settings() centralises the resolution from the optional [drive] config; absent config uses the legacy "always wipe immediately" defaults so installs that never enabled drive keep prior behaviour. - All four cleanup_browser call sites updated (delete, complete, error, pending-timeout). - Three new unit tests covering the resolution helper. - Docs gain a "Cleanup behaviour" subsection in the Drive section explaining the precedence (retention_secs only matters when cleanup_on_close=true) and the per-session UUID subdir model that means files do not persist across sessions even with cleanup disabled. The cross-session "personal drive" model would be a separate feature.