Expand description
GitHub LivenessProbe impl per ADR-021 §6.
Hits GET /user with the supplied token. The endpoint
authenticates the caller and returns the public profile, so a
200 means the token is live and the response carries enough
detail (login) for doctor to render
“live as alice@github.com”.
Token expiry is reported through the
github-authentication-token-expiration response header
(lowercased per RFC 9110 / hyper conventions). When present
it goes into LivenessResult::expires_at verbatim so the
P9.3 expiry-tracking pass can write it back into the
global index.
Error mapping:
| Status | Mapping |
|---|---|
| 200 | Live (login captured) |
| 401 | Revoked |
| 403 | Revoked (insufficient-permission case still means the token can’t probe) |
| 429 | Throttled (Retry-After if any) |
| other | Error (status + body) |