Skip to content

v0.2.2

Choose a tag to compare

@qinxuye qinxuye released this 28 Jun 16:26
7ccd73c

What's new

User identity tracking

  • POST /api/route accepts an optional user_id field — the caller identity is persisted with every routing decision
  • CallStore.record() stores user_id; recent() and count() accept an optional user_id filter for per-user scoping in embedding apps
  • RoutingService.route() accepts and threads user_id through to the call log
  • Migration 0003 adds a nullable user_id VARCHAR(255) column with a composite index (user_id, id); applied automatically on startup

Notes for embedding apps (e.g. Xinference Cloud)

  • Pass the authenticated user's identity via user_id in the route request body
  • Build scoped history endpoints using store.recent(user_id=...) / store.count(user_id=...) behind your own auth layer
  • GET /api/history remains an admin-only endpoint (no user_id filter) to avoid BOLA