pending.nvim/spec
Barrett Ruth 0033b26e38 refactor(forge): extract ForgeBackend class and registry
Problem: adding a new forge required touching 5 lookup tables
(`FORGE_HOSTS`, `FORGE_CLI`, `FORGE_AUTH_CMD`, `SHORTHAND_PREFIX`,
`_warned_forges`) and every branching site in `_api_args`,
`fetch_metadata`, and `parse_ref`.

Solution: introduce a `ForgeBackend` class with `parse_url`,
`api_args`, and `parse_state` methods, plus a `register()` /
`backends()` registry. New forges (Gitea, Forgejo) are a single
`register()` call via the `gitea_backend()` convenience constructor.
2026-03-10 22:11:37 -04:00
..
archive_spec.lua fix(sync): normalize log prefixes and S3 prompt UX (#115) 2026-03-08 20:56:22 -04:00
complete_spec.lua refactor(config): remove legacy gcal top-level config key (#51) 2026-02-26 22:53:51 -05:00
diff_spec.lua fix(diff): preserve due/rec when absent from buffer line (#68) 2026-03-05 12:46:54 -05:00
edit_spec.lua refactor: organize tests and dry (#49) 2026-02-26 20:03:42 -05:00
filter_spec.lua refactor: organize tests and dry (#49) 2026-02-26 20:03:42 -05:00
forge_spec.lua refactor(forge): extract ForgeBackend class and registry 2026-03-10 22:11:37 -04:00
gtasks_spec.lua feat(sync): diff metadata preservation, auth unification, and sync quality improvements (#74) 2026-03-05 22:40:19 -05:00
helpers.lua test: add store, parse, and diff specs 2026-02-24 15:10:09 -05:00
icons_spec.lua refactor(icons): ascii defaults, checkbox overlays, and cleanup (#57) 2026-03-04 18:44:41 -05:00
oauth_spec.lua fix(sync): auto-trigger auth flow on unauthenticated sync actions (#120) (#123) 2026-03-10 11:37:16 -04:00
parse_spec.lua feat(archive): duration syntax and confirmation prompt (#113) 2026-03-08 20:28:06 -04:00
recur_spec.lua feat: omnifunc completion, recurring tasks, expanded date syntax (#27) 2026-02-25 13:27:52 -05:00
s3_spec.lua fix(sync): auto-trigger auth flow on unauthenticated sync actions (#120) (#123) 2026-03-10 11:37:16 -04:00
status_spec.lua refactor: organize tests and dry (#49) 2026-02-26 20:03:42 -05:00
store_spec.lua feat(buffer): persist fold state across sessions (#94) 2026-03-07 20:18:34 -05:00
sync_spec.lua feat: auth backend (#111) 2026-03-08 19:53:42 -04:00
sync_util_spec.lua feat(sync): s3 backend (#112) 2026-03-08 20:20:16 -04:00
textobj_spec.lua feat: text objects and motions for the pending buffer (#39) 2026-02-26 16:28:58 -05:00
views_spec.lua feat: auth backend (#111) 2026-03-08 19:53:42 -04:00