clone: "repository not found" hides the host, the path, and the cause #876
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#876
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
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?
madtea clone forkingrobotfails with only this:That tells me nothing I can act on. I do not know which forge it asked, which path it tried, or why git refused.
What happens
/takes the shorthand path, because it has no://and nogit@(internal/service/git/clone.go:165-167).<forge>/forkingrobot.git, with no owner in the path (internal/service/git/clone.go:190).mapCloneErrorswaps any git message that contains "not found" or "does not exist" for the bare textrepository not found(internal/service/git/clone.go:765-766). The forge host, the path, and git's own reason are all dropped.This breaks a rule I already set: errors name the host and the fix (ADR 0025, section 4). The path in the error must still carry no credential (ADR 0013).
For comparison,
gh repo clone REPOandtea clone REPOboth fill in the logged-in user as the owner when the name has no/(ghpkg/cmd/repo/clone/clone.go:51,151; teacmd/clone.go:77).Acceptance criteria
/, the error says that the owner is missing, and shows theowner/repoform to use.