# Spec: Go SDK (`github.com/sentryagent/idp-sdk-go`) **Status**: Pending CEO approval **Workstream**: 3 of 8 ## Scope - `sdk-go/` directory at project root - Context-aware `AgentIdPClient` using standard library `net/http` - `TokenManager` with mutex-guarded cache and 60s auto-refresh - Service clients: `AgentRegistryClient`, `CredentialClient`, `TokenClient`, `AuditClient` - Idiomatic Go error type `AgentIdPError` implementing `error` interface - `go.mod` module: `github.com/sentryagent/idp-sdk-go` - `sdk-go/README.md` ## Acceptance Criteria - [ ] All 14 endpoints covered - [ ] All methods take `context.Context` as first argument - [ ] No panics — all errors returned as `error` - [ ] `AgentIdPError` implements `error` and exposes `.Code`, `.HTTPStatus`, `.Details` - [ ] `TokenManager` is goroutine-safe (`sync.Mutex` on cache) - [ ] `go vet` and `staticcheck` pass with zero warnings - [ ] `go test ./...` with >80% coverage - [ ] README matches Node.js SDK structure