📝 docs: refresh AGENTS.md + README.md (auth endpoints + ADR pointer + new packages)
AGENTS.md and README.md were stale since ~2026-04-11 (4 weeks). Updated to reflect magic-link + OIDC auth (ADR-0028), pkg/auth, pkg/email, pkg/user/api packages, and 30-ADR index. Endpoints listing decision : keep curated short list + pointer to swagger as source of truth (see body of changes). Generated by Mistral Vibe. Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
This commit is contained in:
22
README.md
22
README.md
@@ -17,10 +17,13 @@ Go web service demonstrating idiomatic package structure, versioned JSON API, an
|
||||
- Viper configuration (file + env vars)
|
||||
- Readiness endpoint for Kubernetes / service mesh
|
||||
- OpenTelemetry / Jaeger distributed tracing
|
||||
- OpenAPI / Swagger UI (embedded in binary)
|
||||
- PostgreSQL user service with JWT auth
|
||||
- BDD + unit tests
|
||||
- 🤖 Mistral autonomous PR pattern (cf. [documentation/MISTRAL-AUTONOMOUS-PATTERN.md](documentation/MISTRAL-AUTONOMOUS-PATTERN.md))
|
||||
- OpenAPI / Swagger UI (embedded in binary, source of truth at `/swagger/doc.json`)
|
||||
- Username + password authentication with JWT (rotating secrets)
|
||||
- Passwordless magic-link authentication (email-delivered, ADR-0028 Phase A)
|
||||
- OIDC authentication with PKCE (multi-provider, ADR-0028 Phase B)
|
||||
- PostgreSQL user persistence with GORM
|
||||
- BDD + unit tests (Godog)
|
||||
- Mistral autonomous PR pattern (cf. [documentation/MISTRAL-AUTONOMOUS-PATTERN.md](documentation/MISTRAL-AUTONOMOUS-PATTERN.md))
|
||||
|
||||
## Quick Start
|
||||
|
||||
@@ -63,16 +66,21 @@ See `config.example.yaml` for a full template.
|
||||
|
||||
## API
|
||||
|
||||
The full interactive list is in the Swagger UI at `/swagger/` (source of truth at `/swagger/doc.json`). Most-used endpoints :
|
||||
|
||||
| Method | Path | Description |
|
||||
|--------|------|-------------|
|
||||
| GET | `/api/health` | Liveness check |
|
||||
| GET | `/api/ready` | Readiness check (503 during shutdown) |
|
||||
| GET | `/api/version` | Version info (`?format=plain\|full\|json`) |
|
||||
| GET | `/api/v1/greet/` | Default greeting |
|
||||
| GET | `/api/version` | Version info |
|
||||
| GET | `/api/v1/greet/{name}` | Named greeting |
|
||||
| POST | `/api/v2/greet` | V2 greeting with validation |
|
||||
| POST | `/api/v1/auth/login` | Login (JWT) |
|
||||
| POST | `/api/v1/auth/magic-link/request` | Passwordless magic-link |
|
||||
| GET | `/api/v1/auth/oidc/{provider}/start` | OIDC login |
|
||||
| GET | `/swagger/` | Swagger UI |
|
||||
|
||||
This decision is intentional : the markdown table drifts ; swagger.json doesn't (it's regenerated from `swag` annotations on every build). Curated short list here for discovery, swagger for completeness.
|
||||
|
||||
## Testing
|
||||
|
||||
```bash
|
||||
|
||||
Reference in New Issue
Block a user