EverOS/tests/unit/test_entrypoints/test_api
zhanghui 21b845bf88 feat(api): serve endpoints under /api/v2, retain /api/v1 as alias
Every business endpoint (memory/*, ome/*, knowledge/*) is now served
under /api/v2, aligning the open-source API with the EverOS Cloud
contract. /api/v1 is retained as a permanent, backward-compatible alias:
the same router objects are mounted under both prefixes, so both resolve
to identical handlers and request/response contracts. Existing /api/v1
integrations keep working unchanged. Infra endpoints (/health, /metrics)
stay unversioned.

Fix the Prometheus request-metric label to build the path from the full
request URL (with path params folded) rather than the route's
router-relative path, so the version prefix is preserved and v1/v2
traffic stays distinguishable.

Docs (docs/api.md, docs/openapi.json), CHANGELOG, and route docstrings
updated to lead with /api/v2. Add test_api_versioning as the parity
guard: every v2 route has an identical v1 twin and vice versa.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-24 13:44:58 +08:00
..
test_lifespans chore(release): update EverOS to 1.1.1 (#327) 2026-07-07 18:30:03 +08:00
test_routes feat(api): serve endpoints under /api/v2, retain /api/v1 as alias 2026-07-24 13:44:58 +08:00
__init__.py chore: initialize EverOS 1.0.0 2026-06-06 07:33:17 +08:00
test_api_versioning.py feat(api): serve endpoints under /api/v2, retain /api/v1 as alias 2026-07-24 13:44:58 +08:00
test_app_metadata.py chore(release): prepare EverOS 1.0.1 (#290) 2026-06-16 21:46:17 +08:00
test_exception_handlers.py chore(release): update EverOS to 1.1.0 (#307) 2026-06-24 23:17:23 +08:00