1.8 KiB
1.8 KiB
id, title, status, wave, depends_on, plan, spec
| id | title | status | wave | depends_on | plan | spec |
|---|---|---|---|---|---|---|
| 01-backend-review-request | Backend review-request contract | done | 1 | plan.md | ../../specs/ui/requirements/github-pr-review-actions.md |
Task 01: Backend review-request contract
Acceptance
- Every GitHub client implementation satisfies a typed reviewer-request method; gh/PAT send the official endpoint and JSON reviewer list.
- The Kandev route validates input, delegates one request, and returns
{"requested": true}on success. - Success evicts only the affected PR feedback/status cache key, and the mock makes the requested reviewer visible on the next feedback fetch.
Verification
cd apps/backend
go test ./internal/github -run 'RequestReview'
go test ./internal/github
Files likely touched
apps/backend/internal/github/client.goapps/backend/internal/github/gh_client.goapps/backend/internal/github/gh_client_test.goapps/backend/internal/github/pat_client.goapps/backend/internal/github/pat_client_test.goapps/backend/internal/github/mock_client.goapps/backend/internal/github/mock_client_test.goapps/backend/internal/github/noop_client.goapps/backend/internal/github/noop_client_test.goapps/backend/internal/github/service_pr.goapps/backend/internal/github/service_request_review_test.goapps/backend/internal/github/controller.goapps/backend/internal/github/controller_test.go
Dependencies
None.
Inputs
- Spec API surface, permissions, failure modes, and first five scenarios.
- Existing
SubmitReviewclient/service/controller path. - Official GitHub request-reviewers endpoint.
Output contract
Report summary, files changed, RED/GREEN/REFACTOR evidence, commands/results,
blockers, risks, and set only this task file's status to done. Do not edit
plan.md.