1.7 KiB
1.7 KiB
id, title, status, wave, depends_on, plan, spec
| id | title | status | wave | depends_on | plan | spec |
|---|---|---|---|---|---|---|
| 01-explicit-path-contract | Explicit local path contract | done | 1 | plan.md | ../../specs/workspaces/requirements/local-repositories.md |
Task 01: Explicit Local Path Contract
Acceptance
- Manual validation accepts a real Git repository outside configured discovery roots while automatic discovery remains bounded by those roots.
- Create and update canonicalize and validate non-empty local paths server-side and return 4xx for invalid paths without persisting changes.
- Pathless provider repositories retain their existing behavior.
Verification
From apps/backend:
rtk go test -v ./internal/task/service -run 'Test(ValidateLocalRepositoryPath|CreateRepository|UpdateRepository|DiscoverLocalRepositories)'
rtk go test -race ./internal/task/service
Files Likely Touched
apps/backend/internal/task/service/repository_discovery.goapps/backend/internal/task/service/repository_discovery_test.goapps/backend/internal/task/service/service_resources.goapps/backend/internal/task/service/service_test.goapps/backend/internal/task/handlers/repository_handlers.goapps/backend/internal/task/handlers/repository_handlers_test.goapps/backend/internal/task/dto/dto.go
Dependencies
None.
Inputs
- Spec:
What,API Surface,Failure Modes, and the manual-selection scenarios. - ADR: exact saved repository path is the durable grant; discovery roots govern scans only.
- Existing path canonicalization and Git metadata handling in
repository_discovery.go.
Output Contract
Report changed behavior, files, red/green test evidence, exact commands run, blockers, linked-worktree
risks, and update this task plus plan.md to done.