Add VCS abstraction layer for GitHub support #76
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
Abstract VCS operations behind an interface to support both Gitea and GitHub APIs.
Context
PR #75 adds
.github/workflows and env var fallbacks, but thegitea/package is hardcoded to Gitea API endpoints.Proposed Design
vcs.Clientinterface with common operations (GetPullRequest, PostReview, etc.)vcs/gitea.goadapter wrapping existinggitea.Clientvcs/github.goadapter for GitHub REST APIAPI Differences to Handle
/api/v1//api/v3/or api.github.com/pulls/{n}.diff/issues/{n}/timeline/pulls/comments/{id}/resolveIteration
Superseded by a more detailed execution plan with a canonical architecture document:
Note: runtime URL detection (proposed here) was replaced by an explicit
--provider github|giteaflag.Architecture reference:
docs/DESIGN-vcs-abstraction.mdonfeature/github-support.