feat(ssh): create pull requests over AGit in ssh-only mode #347
No reviewers
Labels
No labels
breaking
bug
documentation
enhancement
epic
good first issue
help wanted
refactoring
resolution/duplicate
resolution/invalid
resolution/wontfix
security
severity/critical
severity/high
severity/low
severity/medium
status/abandoned
status/blocked
status/needs-decision
status/needs-info
status/needs-verification
testing
upstream
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
sixfold-space/madtea!347
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "issue-327-agit-pr-creation"
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
In ssh-only mode finish creates the PR entirely over SSH via Forgejo's AGit flow - git push HEAD:refs/for/ with push options - instead of degrading at PR-create. The push reuses the token-less SSH transport (no GIT_ASKPASS, no token on the wire). The topic is derived deterministically from the local branch name so every re-push updates the same PR; title and description ride the create push only. The PR number is parsed tolerantly from the push stderr and degrades to a check-the-forge note rather than failing finish if the format shifts. Only topic/title/description/force-push options are emitted, pinned by test. Scope is create/update only: the merge step still needs the REST API and degrades in ssh-only, and a non-fast-forward push teaches the force-push remedy rather than forcing silently. Branch-detected issues are referenced, not closed - the dependency-safety check needs the API ssh-only lacks, so closing blindly could retire an epic with open children; the run prints that it skipped auto-close and an explicit --closes still closes. After an AGit merge there is no topic branch to delete, so the cleanup legs skip with a note. Token and https modes are unchanged.
Closes #327.
Closes #327