Files
kandev/docs/plans/azure-devops-integration/task-02-rest-client.md
T
2026-08-24 11:09:03 +00:00

38 lines
1.2 KiB
Markdown

---
id: "02-rest-client"
title: "REST client"
status: done
wave: 1
depends_on: ["01-workspace-configuration"]
plan: "plan.md"
spec: "../../specs/integrations/requirements/azure-devops-integration.md"
---
# Task 02: REST Client
## Acceptance
- A PAT-authenticated HTTP client reads projects, repositories, WIQL results, work-item batches, PRs, reviewers, threads, linked work items, and policy evaluations.
- Requests are context-aware and bounded; credentials and upstream response bodies are redacted from user-visible errors.
- WIQL hydration preserves result order, batches at 200, and tolerates omitted work items.
## Verification
- `rtk go test ./internal/azuredevops/... -run 'TestRESTClient'` from `apps/backend`.
## Files Likely Touched
- `apps/backend/internal/azuredevops/client.go`
- `apps/backend/internal/azuredevops/rest_client.go`
- `apps/backend/internal/azuredevops/client_models.go`
- Corresponding `*_test.go` files.
## Inputs
- Spec: API Surface and Failure Modes.
- Patterns: `internal/gitlab/pat_client.go` and its `httptest` coverage.
## Output Contract
Report endpoints implemented, files changed, RED/GREEN commands, API-version exceptions, blockers, and set this task plus its plan checkbox to done.