Skip to content

v0.15.1

Latest

Choose a tag to compare

@arielbk arielbk released this 20 Jul 08:34
273a856

Sync-fidelity fixes for cloud sync between machines, plus a more eager board sync. All changes are client-side — task rows round-trip through the sync server unchanged, so no server changes are involved.

Fixes

  • Pulled docs keep their real modified times. Doc manifest entries now carry the source machine's file mtime (end-to-end encrypted alongside the file content), and pulling restores it — so the board's "document last modified" and task ordering reflect when a doc was actually edited, not when it was synced. Manifests from older clients still apply cleanly.
  • Pins propagate between machines. Pinning or unpinning a task now bumps the row's last-write-wins clock and rides the sync payload, so a pin made on one machine shows up on the other. Rows from older clients merge as unpinned.
  • Pulled tasks join existing projects by git identity. Task rows now carry their project's git fingerprint (remote URL and root commit), and merging resolves projects by fingerprint before falling back to path matching — a task pushed from ~/a/repo on one machine lands under the existing project for the same repo cloned at ~/b/repo on another, instead of minting a duplicate project.
  • Plugin skills and hooks correctly pin the published CLI again. The 0.14.0 release accidentally shipped skill/hook templates pointing at a local development build path instead of npx @arielbk/trace@<version>; the pins are restored and stamped to 0.15.1.

Improvements

  • The board syncs more eagerly, shrinking the divergence window. While trace serve is running, the board now syncs shortly after board mutations (pin, archive, checkbox…), on mount and window focus, and on a periodic timer while left open — so acting on a freshly-focused board starts from up-to-date rows instead of waiting for the next manual sync. Triggers no-op when logged out and are throttled server-side.

Full changelog: v0.15.0...v0.15.1