2525c58471
- 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
26 lines
1.3 KiB
Markdown
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
|