Rework sync conflict handling to stop using timestamp-based last-write-wins and use a single Conflict action. The conflict handler now downloads the remote file and compares SHA-256 checksums: identical content is treated as a false conflict and skipped; when different, the remote version wins and the local task file is recovered as a duplicate with a new UUID and a "[RECOVERED FROM CONFLICT]" prefix. Duplicates are inserted adjacent to the original in .listdata.json; non-task files still use remote-wins without duplication. Removed local_wins() and its tests, simplified action variants to a single Conflict, and updated conflict-related tests and reporting accordingly. |
||
|---|---|---|
| .. | ||
| onyx-cli | ||
| onyx-core | ||