pending.nvim/lua/pending/sync
Barrett Ruth a83f500144 feat(sync): auto-discover backends, per-backend auth, S3 backend
Problem: sync backends were hardcoded in `SYNC_BACKENDS` list in
`init.lua`, auth routed directly through `oauth.google_client`, and
adding a non-OAuth backend required editing multiple files.

Solution: replace hardcoded list with `discover_backends()` that globs
`lua/pending/sync/*.lua` at runtime. Rewrite `M.auth()` to dispatch
to per-backend `auth()` methods with `vim.ui.select` fallback. Add
`lua/pending/sync/s3.lua` with push/pull/sync via AWS CLI, per-task
merge by `_s3_sync_id` (UUID), and `pending.S3Config` type.
2026-03-08 19:50:58 -04:00
..
gcal.lua refactor(sync): extract shared utilities into sync/util.lua 2026-03-08 19:50:04 -04:00
gtasks.lua refactor(sync): extract shared utilities into sync/util.lua 2026-03-08 19:50:04 -04:00
oauth.lua refactor(types): extract inline anonymous types into named classes 2026-03-08 19:47:18 -04:00
s3.lua feat(sync): auto-discover backends, per-backend auth, S3 backend 2026-03-08 19:50:58 -04:00
util.lua feat(sync): auto-discover backends, per-backend auth, S3 backend 2026-03-08 19:50:58 -04:00