Skip to content

Sync only works one direction (not bidirectional) #50

@S4tvara

Description

@S4tvara

Description

The current sync implementation only pulls files from remote to local. It doesn't push local files to remote or perform true bidirectional synchronization.

Current Behavior

vault1 → sync → vault2  (vault2 gets vault1's files)
vault2 → sync → vault1  (vault1 gets vault2's files)

Users must run sync twice (once from each vault) to sync in both directions.

Expected Behavior

vault1 ↔ sync ↔ vault2  (both get each other's files in one operation)

Impact

  • Extra steps required
  • Confusing UX
  • Inefficient (2x the network traffic for full sync)
  • Easy to forget to sync in both directions

Suggested Implementation

  1. Compare manifests in both directions
  2. Identify files unique to each vault
  3. Transfer missing files/chunks in both directions
  4. Add flag: --pull-only for current behavior if needed

Related

Similar to how tools like rsync, syncthing, and git work with bidirectional sync.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions