onyx-tasks/crates/onyx-core
Claude 1fcc6e7f6d
fix(sync): purge orphan base entries when both sides deleted
`compute_sync_actions` emits no action for files that are missing from
both local and remote but still tracked in the sync base (the
`(None, None, Some(_))` arm). Nothing else cleaned those entries, so
`.syncstate.json` grew forever every time a file was deleted both
locally and remotely — and on each subsequent sync the same
no-op match fired again.

Add a `prune_orphan_bases` pass that runs before `compute_sync_actions`
in `sync_workspace_inner`, dropping any base entry whose path is in
neither the local nor remote scan. Unit-tested in isolation.
2026-04-24 07:37:39 +00:00
..
src fix(sync): purge orphan base entries when both sides deleted 2026-04-24 07:37:39 +00:00
Cargo.toml Add Google Tasks read-only workspace and sync 2026-04-14 07:02:50 -07:00