makecindy / makecindy/cindy

Bug: Codex Orca Worker using deepseek/deepseek-v4-flash falls back to ChatGPT credentials and always fails

Open
#2,889 2 comments 0 reactions 0 assignees View on GitHub
bug
Dominant language
TypeScript
Stars
2.7k
Forks
401
Avg merge
21h 48m
Merged PRs (30d)
776

Description

**提交人**: 匿名
**客户端版本**: 0.1.52

---

## 现象

当 Codex Lead 使用 Cindy AI(`xd`)路由的 `deepseek/deepseek-v4-flash` 时,通过 Orca 语义创建 Codex Worker,Worker 会稳定创建为同一模型,但未保留 `xd` 的供应商路由。随后 Worker 实际使用 ChatGPT account 的 Codex 凭证发起请求,被 OpenAI 以 HTTP 400 拒绝,导致 Worker 完全无法工作。

## 复现步骤

1. 在 Cindy 中创建一个使用 Codex 的 Lead 会话。
2. 将 Lead 的模型设为 `deepseek/deepseek-v4-flash`,供应商为 Cindy AI / `xd`。
3. 开启 Orca 协同。
4. 通过自然语言如【开协同委托,跟DeepSeek V4 Flash聊天】或 `create_worker` 创建一个 Codex Worker;不为 Worker 显式指定 `providerId`。
5. 向该 Worker 派发任意简单任务,例如“讲一个笑话”。

## 期望行为

Worker 应继承或可靠解析与所选模型匹配的 `xd` / Cindy AI 路由,并使用该路由的凭证正常执行任务。

如果运行时无法确定模型对应的供应商路由,创建阶段应明确失败并提示用户选择供应商,而不是创建一个会回退到 ChatGPT account 的不可用 Worker。

## 实际行为

Worker 创建成功,但每次派发都会立即失败,错误为:

```text
The 'deepseek/deepseek-v4-flash' model is not supported when using Codex with a ChatGPT account.
```

## 复现频率

每次复现。对同一 Worker 连续派发 5 次,均立即得到相同 HTTP 400 错误,未产生 token 使用量。

## 已尝试

- 重复向已创建的 Worker 派发不同的简单任务:均失败。
- 确认 Lead 本身使用同一模型和 `xd` 路由;问题只发生在 Orca 创建的 Codex Worker。

## 脱敏诊断摘要

- Lead:`agent_kind=codex`,`model=deepseek/deepseek-v4-flash`,`provider_id=xd`。
- Worker:`agent_kind=codex`,`orca_role=worker`,`model=deepseek/deepseek-v4-flash`,但 `provider_id=null`。
- 这使 Codex 的凭证模式无法从 `deepseek/...` 模型名推导;运行时回退到已登录的 ChatGPT OAuth / ChatGPT account,随后由 OpenAI 拒绝 DeepSeek 模型。
- 期望创建链路在模型路由已解析为 `xd` 时持久化 `provider_id=xd`,或在来源无法确定时 fail closed,避免静默回退到不兼容的 ChatGPT 订阅路径。
---
**版本区域**: CN
**OS**: win32 x64 (10.0.26100)
**界面语言**: zh-CN

Contributor guide

Open the contributing guide

Research direction

Start by tracing the Orca `create_worker` path for Codex agents, focusing on how the Lead's model and `provider_id` are passed into and persisted for the Worker. Reproduce the DeepSeek-through-`xd` case and verify that the Worker retains `provider_id=xd`, or that creation fails clearly when routing cannot be resolved instead of falling back to ChatGPT credentials.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
ai, backend
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.