Drop one-shot tmp/axe scripts and agent i18n scratch so the Gitea tree is deployable.
2.5 KiB
2.5 KiB
API surface smoke - admin, health, docs, public v1
When: 2026-08-04 03:03:48 +02:00
API: http://127.0.0.1:8080
Web: http://localhost:5174
Demo: demo@descrybe.local / DemoPass123! (is_platform_admin=true)
Demo API key: dk_demo_local_descrybe_test_key_v1 (Platform Demo after seed-demo; not A1)
Note (isolation): Historical matrix rows below may still say Local Demo Co / A1 — treat as outdated. Canonical identity: safe-test-fixtures.md.
Summary
| Metric | Value |
|---|---|
| PASS | 20 |
| FAIL | 0 |
| Overall | PASS |
Matrix
| Check | Result | Detail |
|---|---|---|
| demo is_platform_admin | PASS | db=true |
| login demo platform admin | PASS | True |
| GET /api/auth/me platform admin | PASS | Local Demo Co |
| GET /api/admin/users | PASS | status=200 |
| GET /api/admin/companies | PASS | status=200 |
| GET /api/admin/analytics | PASS | status=200 |
| GET /api/admin/jobs | PASS | status=200 |
| GET /healthz | PASS | status=200 |
| GET /readyz | PASS | status=200 |
| GET /docs (web) | PASS | status=200 |
| GET /api/v1/openapi.yaml | PASS | status=200 |
| OpenAPI has auth + localhost server | PASS | clarity text present |
| v1 GET /products?limit=1 (demo key) | PASS | status=200 |
| v1 GET /categories?limit=1 (demo key) | PASS | status=200 |
| v1 GET /attributes?limit=1 (demo key) | PASS | status=200 |
| v1 GET /feeds (demo key) | PASS | status=200 |
| v1 GET /export-feeds (demo key) | PASS | status=200 |
| v1 GET /process (demo key) | PASS | status=200 |
| v1 GET /health (demo key) | PASS | status=200 |
| v1 products without key -> 401 | PASS | status=401 |
Fixes applied this run
- OpenAPI clarity (
apps/api/internal/httpapi/v1_openapi.go): expandedinfo.descriptionwith auth headers, curl example, base path notes; addedhttp://localhost:8080/api/v1server; ASCII-safe Bearer scheme description. - Docs page clarity (
apps/web/src/routes/docs/+page.svelte): header link (OpenAPI YAML), loading/error/retry for RapiDoc, theme viamarketingTheme.
Notes
GET /healthz/GET /readyzare on the API host; Vite proxies them from the web origin in local dev.- Interactive docs:
http://localhost:5174/docs(RapiDoc); raw spec:/api/v1/openapi.yaml. - Public
/api/v1/*is API-key only; dashboard/api/*is session + CSRF. - Related: demo-user.md, qa-local-demo.md, local-smoke-results.md.