mirror of
https://github.com/tiennm99/ccs.git
synced 2026-08-18 04:26:49 +00:00
fix(proxy): avoid settings override and nested reasoning for openai-compat
This commit is contained in:
+1
-5
@@ -1460,11 +1460,7 @@ async function main(): Promise<void> {
|
|||||||
};
|
};
|
||||||
delete proxyEnv.ANTHROPIC_API_KEY;
|
delete proxyEnv.ANTHROPIC_API_KEY;
|
||||||
|
|
||||||
const launchArgs = [
|
const launchArgs = [...appendThirdPartyWebSearchToolArgs(browserArgs)];
|
||||||
'--settings',
|
|
||||||
expandedSettingsPath,
|
|
||||||
...appendThirdPartyWebSearchToolArgs(browserArgs),
|
|
||||||
];
|
|
||||||
const traceEnv = createWebSearchTraceContext({
|
const traceEnv = createWebSearchTraceContext({
|
||||||
launcher: 'ccs.settings-profile.proxy',
|
launcher: 'ccs.settings-profile.proxy',
|
||||||
args: launchArgs,
|
args: launchArgs,
|
||||||
|
|||||||
@@ -362,7 +362,7 @@ function transformToolChoice(
|
|||||||
function mapThinkingToReasoning(
|
function mapThinkingToReasoning(
|
||||||
thinking: AnthropicThinking | undefined,
|
thinking: AnthropicThinking | undefined,
|
||||||
outputConfig: AnthropicOutputConfig | undefined
|
outputConfig: AnthropicOutputConfig | undefined
|
||||||
): Pick<ProxyOpenAIRequest, 'reasoning' | 'reasoning_effort'> {
|
): Pick<ProxyOpenAIRequest, 'reasoning_effort'> {
|
||||||
if (!thinking || thinking.type === 'disabled') {
|
if (!thinking || thinking.type === 'disabled') {
|
||||||
return {};
|
return {};
|
||||||
}
|
}
|
||||||
@@ -371,10 +371,6 @@ function mapThinkingToReasoning(
|
|||||||
const effort = toOpenAIEffort(resolveOutputConfigEffort(outputConfig) ?? 'high');
|
const effort = toOpenAIEffort(resolveOutputConfigEffort(outputConfig) ?? 'high');
|
||||||
return {
|
return {
|
||||||
reasoning_effort: effort,
|
reasoning_effort: effort,
|
||||||
reasoning: {
|
|
||||||
enabled: true,
|
|
||||||
effort,
|
|
||||||
},
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -389,10 +385,6 @@ function mapThinkingToReasoning(
|
|||||||
|
|
||||||
return {
|
return {
|
||||||
reasoning_effort: effort,
|
reasoning_effort: effort,
|
||||||
reasoning: {
|
|
||||||
enabled: true,
|
|
||||||
effort,
|
|
||||||
},
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -27,7 +27,7 @@ describe('ProxyRequestTransformer regressions', () => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
expect(result.reasoning_effort).toBe('high');
|
expect(result.reasoning_effort).toBe('high');
|
||||||
expect(result.reasoning).toEqual({ enabled: true, effort: 'high' });
|
expect(result.reasoning).toBeUndefined();
|
||||||
});
|
});
|
||||||
|
|
||||||
it('explicitly normalizes anthropic xhigh adaptive effort for OpenAI-compatible upstreams', () => {
|
it('explicitly normalizes anthropic xhigh adaptive effort for OpenAI-compatible upstreams', () => {
|
||||||
@@ -38,7 +38,7 @@ describe('ProxyRequestTransformer regressions', () => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
expect(result.reasoning_effort).toBe('high');
|
expect(result.reasoning_effort).toBe('high');
|
||||||
expect(result.reasoning).toEqual({ enabled: true, effort: 'high' });
|
expect(result.reasoning).toBeUndefined();
|
||||||
});
|
});
|
||||||
|
|
||||||
it('rejects unsupported thinking types instead of silently dropping them', () => {
|
it('rejects unsupported thinking types instead of silently dropping them', () => {
|
||||||
|
|||||||
@@ -28,7 +28,7 @@ describe('ProxyRequestTransformer', () => {
|
|||||||
|
|
||||||
expect(result.stream).toBe(true);
|
expect(result.stream).toBe(true);
|
||||||
expect(result.reasoning_effort).toBe('high');
|
expect(result.reasoning_effort).toBe('high');
|
||||||
expect(result.reasoning).toEqual({ enabled: true, effort: 'high' });
|
expect(result.reasoning).toBeUndefined();
|
||||||
expect(result.max_tokens).toBe(1024);
|
expect(result.max_tokens).toBe(1024);
|
||||||
expect(result.temperature).toBe(0.2);
|
expect(result.temperature).toBe(0.2);
|
||||||
expect(result.top_p).toBe(0.9);
|
expect(result.top_p).toBe(0.9);
|
||||||
|
|||||||
Reference in New Issue
Block a user