Skip to content

feat: tag runtime API keys with request format#614

Closed
SsuJojo wants to merge 6 commits into
devfrom
worktree-api-key-format-selector-from-dev
Closed

feat: tag runtime API keys with request format#614
SsuJojo wants to merge 6 commits into
devfrom
worktree-api-key-format-selector-from-dev

Conversation

@SsuJojo
Copy link
Copy Markdown
Collaborator

@SsuJojo SsuJojo commented May 31, 2026

Summary

  • Add persisted format: "openai" metadata to runtime API keys and normalize legacy keys to OpenAI format.
  • Carry format through API key add/import/export/list flows and submit the disabled OpenAI selector from the dashboard.
  • Route dynamic API key adapters by request format so OpenAI-compatible format uses /chat/completions regardless of provider label.

摘要

  • 为运行时 API keys 增加持久化的 format: "openai" 元数据,并将旧数据默认归一化为 OpenAI 格式。
  • 在 API key 添加、导入、导出、列表流程中传递 format,并让 Dashboard 的禁用 OpenAI 格式选择器实际提交该值。
  • 动态 API key adapter 按请求格式路由,OpenAI-compatible 格式会按 /chat/completions 请求,不再只依赖 provider 标签。

Test Plan

  • npx vitest run tests/unit/auth/api-key-pool.test.ts tests/unit/routes/api-keys.test.ts tests/unit/proxy/adapter-factory.test.ts tests/unit/proxy/upstream-router-apikeys.test.ts web/src/components/ApiKeyManager.test.tsx
  • npm run build:web
  • npm run build
  • git diff --check

@SsuJojo
Copy link
Copy Markdown
Collaborator Author

SsuJojo commented Jun 1, 2026

Superseded by #611. This branch has been reset to latest dev and no longer contains independent changes.

@SsuJojo SsuJojo closed this Jun 1, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant