Files
headquarter/openspec/changes/git-repo-ssh-clone-check/proposal.md
T
miguel 2525c58471 feat(web): support ssh owner repo clone flow
- Add SSH-only owner/repo clone path for git.commumedia.org
- Preflight remote repository existence with git ls-remote before cloning
- Keep advanced URL paste fallback and blank repository creation
- Add focused backend and frontend coverage plus docs updates

Quality gates: python -m py_compile, vitest run src/components/repositories-settings-tab.test.tsx, npm run typecheck
2026-05-22 19:07:04 +02:00

26 lines
1.3 KiB
Markdown

## Why
Repository creation already supports cloning from a remote URL, but the current UI only accepts a full URL. For the common fixed-provider case (`git.commumedia.org`), users should be able to enter `owner` and `repo` and have the app verify the repository exists before cloning. If the repository does not exist, the app should surface a clear error. Existing blank repository creation must remain available.
## What Changes
- Change the shared repository create dialog to support an SSH-only clone form with `owner` and `repo`
- Build the clone target as `git@git.commumedia.org:{owner}/{repo}.git`
- Preflight clone targets with `git ls-remote` before cloning
- Return a clear error when the repository is missing or inaccessible
- Keep the current full URL paste flow as an advanced fallback
- Keep blank repository creation as a fallback option
## Capabilities
### Modified Capabilities
- `git-repo`: Repository creation UX and clone validation reuse the existing create endpoint and clone path
## Impact
- Frontend: `repository-create-dialog.tsx`, `git-repositories.tsx`, `repositories-settings-tab.tsx`
- Backend: `git_repositories.py` create endpoint clone preflight
- Docs: repository creation guidance must reflect SSH-only owner/repo input
- Tests: add coverage for SSH repo existence checks and fallback URL behavior