@jsonstudio/rcc 0.89.683 → 0.89.873
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/build-info.js +2 -2
- package/dist/cli.js +164 -116
- package/dist/cli.js.map +1 -1
- package/dist/client/anthropic/anthropic-protocol-client.js +42 -1
- package/dist/client/anthropic/anthropic-protocol-client.js.map +1 -1
- package/dist/client/gemini-cli/gemini-cli-protocol-client.js +4 -1
- package/dist/client/gemini-cli/gemini-cli-protocol-client.js.map +1 -1
- package/dist/commands/camoufox-backfill.d.ts +2 -0
- package/dist/commands/camoufox-backfill.js +33 -0
- package/dist/commands/camoufox-backfill.js.map +1 -0
- package/dist/commands/camoufox-fp.d.ts +2 -0
- package/dist/commands/camoufox-fp.js +86 -0
- package/dist/commands/camoufox-fp.js.map +1 -0
- package/dist/commands/oauth.d.ts +2 -0
- package/dist/commands/oauth.js +170 -0
- package/dist/commands/oauth.js.map +1 -0
- package/dist/commands/provider-update.js +439 -2
- package/dist/commands/provider-update.js.map +1 -1
- package/dist/commands/quota-status.d.ts +2 -0
- package/dist/commands/quota-status.js +80 -0
- package/dist/commands/quota-status.js.map +1 -0
- package/dist/commands/token-daemon.js +12 -1
- package/dist/commands/token-daemon.js.map +1 -1
- package/dist/config/provider-v2-loader.d.ts +16 -0
- package/dist/config/provider-v2-loader.js +84 -0
- package/dist/config/provider-v2-loader.js.map +1 -0
- package/dist/config/routecodex-config-loader.js +27 -4
- package/dist/config/routecodex-config-loader.js.map +1 -1
- package/dist/config/system-prompts/codex-cli.txt +1 -0
- package/dist/config/virtual-router-builder.d.ts +9 -0
- package/dist/config/virtual-router-builder.js +34 -0
- package/dist/config/virtual-router-builder.js.map +1 -0
- package/dist/config/virtual-router-types.d.ts +25 -0
- package/dist/config/virtual-router-types.js +30 -0
- package/dist/config/virtual-router-types.js.map +1 -0
- package/dist/manager/index.d.ts +10 -0
- package/dist/manager/index.js +27 -0
- package/dist/manager/index.js.map +1 -0
- package/dist/manager/modules/health/index.d.ts +22 -0
- package/dist/manager/modules/health/index.js +82 -0
- package/dist/manager/modules/health/index.js.map +1 -0
- package/dist/manager/modules/quota/index.d.ts +57 -0
- package/dist/manager/modules/quota/index.js +426 -0
- package/dist/manager/modules/quota/index.js.map +1 -0
- package/dist/manager/modules/routing/index.d.ts +17 -0
- package/dist/manager/modules/routing/index.js +61 -0
- package/dist/manager/modules/routing/index.js.map +1 -0
- package/dist/manager/modules/token/index.d.ts +10 -0
- package/dist/manager/modules/token/index.js +58 -0
- package/dist/manager/modules/token/index.js.map +1 -0
- package/dist/manager/storage/base-store.d.ts +6 -0
- package/dist/manager/storage/base-store.js +2 -0
- package/dist/manager/storage/base-store.js.map +1 -0
- package/dist/manager/storage/file-store.d.ts +25 -0
- package/dist/manager/storage/file-store.js +117 -0
- package/dist/manager/storage/file-store.js.map +1 -0
- package/dist/manager/types.d.ts +9 -0
- package/dist/manager/types.js +2 -0
- package/dist/manager/types.js.map +1 -0
- package/dist/message-center/index.d.ts +5 -0
- package/dist/message-center/index.js +6 -0
- package/dist/message-center/index.js.map +1 -0
- package/dist/message-center/message-center.d.ts +93 -0
- package/dist/message-center/message-center.js +189 -0
- package/dist/message-center/message-center.js.map +1 -0
- package/dist/providers/auth/antigravity-userinfo-helper.d.ts +2 -0
- package/dist/providers/auth/antigravity-userinfo-helper.js +102 -0
- package/dist/providers/auth/antigravity-userinfo-helper.js.map +1 -1
- package/dist/providers/auth/iflow-cookie-auth.d.ts +27 -0
- package/dist/providers/auth/iflow-cookie-auth.js +209 -0
- package/dist/providers/auth/iflow-cookie-auth.js.map +1 -0
- package/dist/providers/auth/oauth-lifecycle.js +29 -22
- package/dist/providers/auth/oauth-lifecycle.js.map +1 -1
- package/dist/providers/auth/token-scanner/index.js +16 -1
- package/dist/providers/auth/token-scanner/index.js.map +1 -1
- package/dist/providers/core/config/camoufox-launcher.d.ts +16 -0
- package/dist/providers/core/config/camoufox-launcher.js +314 -0
- package/dist/providers/core/config/camoufox-launcher.js.map +1 -0
- package/dist/providers/core/config/oauth-flows.d.ts +9 -0
- package/dist/providers/core/config/oauth-flows.js +50 -19
- package/dist/providers/core/config/oauth-flows.js.map +1 -1
- package/dist/providers/core/config/provider-oauth-configs.d.ts +6 -0
- package/dist/providers/core/config/provider-oauth-configs.js +12 -0
- package/dist/providers/core/config/provider-oauth-configs.js.map +1 -1
- package/dist/providers/core/config/service-profiles.js +26 -3
- package/dist/providers/core/config/service-profiles.js.map +1 -1
- package/dist/providers/core/runtime/antigravity-quota-client.d.ts +10 -0
- package/dist/providers/core/runtime/antigravity-quota-client.js +88 -0
- package/dist/providers/core/runtime/antigravity-quota-client.js.map +1 -0
- package/dist/providers/core/runtime/base-provider.d.ts +2 -1
- package/dist/providers/core/runtime/base-provider.js +93 -34
- package/dist/providers/core/runtime/base-provider.js.map +1 -1
- package/dist/providers/core/runtime/gemini-cli-http-provider.js +42 -10
- package/dist/providers/core/runtime/gemini-cli-http-provider.js.map +1 -1
- package/dist/providers/core/runtime/http-request-executor.js +24 -0
- package/dist/providers/core/runtime/http-request-executor.js.map +1 -1
- package/dist/providers/core/runtime/http-transport-provider.d.ts +0 -3
- package/dist/providers/core/runtime/http-transport-provider.js +32 -136
- package/dist/providers/core/runtime/http-transport-provider.js.map +1 -1
- package/dist/providers/core/runtime/provider-error-classifier.js +18 -10
- package/dist/providers/core/runtime/provider-error-classifier.js.map +1 -1
- package/dist/providers/core/runtime/rate-limit-manager.d.ts +6 -0
- package/dist/providers/core/runtime/rate-limit-manager.js +23 -0
- package/dist/providers/core/runtime/rate-limit-manager.js.map +1 -1
- package/dist/providers/core/strategies/oauth-auth-code-flow.d.ts +1 -0
- package/dist/providers/core/strategies/oauth-auth-code-flow.js +3 -2
- package/dist/providers/core/strategies/oauth-auth-code-flow.js.map +1 -1
- package/dist/providers/core/strategies/oauth-device-flow.d.ts +1 -0
- package/dist/providers/core/strategies/oauth-device-flow.js +3 -2
- package/dist/providers/core/strategies/oauth-device-flow.js.map +1 -1
- package/dist/providers/core/strategies/oauth-hybrid-flow.d.ts +1 -0
- package/dist/providers/core/strategies/oauth-hybrid-flow.js +3 -2
- package/dist/providers/core/strategies/oauth-hybrid-flow.js.map +1 -1
- package/dist/providers/core/utils/http-client.js +43 -1
- package/dist/providers/core/utils/http-client.js.map +1 -1
- package/dist/providers/mock/mock-provider-runtime.js +4 -4
- package/dist/providers/mock/mock-provider-runtime.js.map +1 -1
- package/dist/providers/profile/provider-profile-loader.js +13 -1
- package/dist/providers/profile/provider-profile-loader.js.map +1 -1
- package/dist/providers/profile/provider-profile.d.ts +5 -0
- package/dist/scripts/camoufox/gen-fingerprint-env.py +171 -0
- package/dist/scripts/camoufox/launch-auth.mjs +617 -0
- package/dist/server/runtime/http-server/executor-provider.d.ts +1 -0
- package/dist/server/runtime/http-server/executor-provider.js +26 -0
- package/dist/server/runtime/http-server/executor-provider.js.map +1 -1
- package/dist/server/runtime/http-server/executor-response.d.ts +16 -0
- package/dist/server/runtime/http-server/executor-response.js +164 -0
- package/dist/server/runtime/http-server/executor-response.js.map +1 -0
- package/dist/server/runtime/http-server/index.d.ts +1 -0
- package/dist/server/runtime/http-server/index.js +88 -53
- package/dist/server/runtime/http-server/index.js.map +1 -1
- package/dist/server/runtime/http-server/request-executor.js +5 -19
- package/dist/server/runtime/http-server/request-executor.js.map +1 -1
- package/dist/server/runtime/http-server/routes.d.ts +2 -0
- package/dist/server/runtime/http-server/routes.js +33 -1
- package/dist/server/runtime/http-server/routes.js.map +1 -1
- package/dist/server/runtime/http-server/types.d.ts +1 -0
- package/dist/server/utils/client-connection-state.d.ts +8 -0
- package/dist/server/utils/client-connection-state.js +52 -0
- package/dist/server/utils/client-connection-state.js.map +1 -0
- package/dist/server/utils/request-id-manager.js +21 -3
- package/dist/server/utils/request-id-manager.js.map +1 -1
- package/dist/token-daemon/history-store.d.ts +2 -0
- package/dist/token-daemon/history-store.js +6 -2
- package/dist/token-daemon/history-store.js.map +1 -1
- package/dist/token-daemon/index.js +36 -5
- package/dist/token-daemon/index.js.map +1 -1
- package/dist/token-daemon/leader-lock.d.ts +11 -0
- package/dist/token-daemon/leader-lock.js +79 -0
- package/dist/token-daemon/leader-lock.js.map +1 -0
- package/dist/token-daemon/message-bus-integrator.d.ts +98 -0
- package/dist/token-daemon/message-bus-integrator.js +144 -0
- package/dist/token-daemon/message-bus-integrator.js.map +1 -0
- package/dist/token-daemon/provider-registry.d.ts +22 -0
- package/dist/token-daemon/provider-registry.js +201 -0
- package/dist/token-daemon/provider-registry.js.map +1 -0
- package/dist/token-daemon/token-daemon.d.ts +8 -0
- package/dist/token-daemon/token-daemon.js +196 -11
- package/dist/token-daemon/token-daemon.js.map +1 -1
- package/dist/token-portal/local-token-portal.d.ts +1 -0
- package/dist/token-portal/local-token-portal.js +18 -0
- package/dist/token-portal/local-token-portal.js.map +1 -1
- package/dist/token-portal/render.js +1 -0
- package/dist/token-portal/render.js.map +1 -1
- package/dist/tools/error-log.d.ts +31 -0
- package/dist/tools/error-log.js +117 -0
- package/dist/tools/error-log.js.map +1 -0
- package/dist/tools/stats-request-events.d.ts +2 -0
- package/dist/tools/stats-request-events.js +16 -0
- package/dist/tools/stats-request-events.js.map +1 -0
- package/dist/tools/stats-usage.d.ts +31 -0
- package/dist/tools/stats-usage.js +206 -0
- package/dist/tools/stats-usage.js.map +1 -0
- package/package.json +8 -4
- package/scripts/analyze-codex-error-failures.mjs +109 -0
- package/scripts/camoufox/gen-fingerprint-env.py +171 -0
- package/scripts/camoufox/launch-auth.mjs +617 -0
- package/scripts/classify-codex-samples.mjs +251 -0
- package/scripts/cleanup-codex-error-samples.mjs +88 -0
- package/scripts/compare-codex-rccx.mjs +268 -0
- package/scripts/copy-compat-assets.mjs +18 -0
- package/scripts/install-release.sh +1 -1
- package/scripts/local-replay-openai-response.mjs +1 -2
- package/scripts/pack-mode.mjs +16 -6
- package/scripts/replay-codex-sample.mjs +24 -2
- package/scripts/responses-compare-server.mjs +119 -0
- package/scripts/verify-apply-patch.mjs +28 -17
- package/scripts/verify-codex-error-samples.mjs +99 -0
- package/scripts/verify-e2e-toolcall.mjs +19 -4
- package/scripts/virtual-router-shadow-v2-real.mjs +143 -0
- package/scripts/virtual-router-shadow-v2.mjs +122 -0
|
@@ -0,0 +1,164 @@
|
|
|
1
|
+
import { mapProviderProtocol, asRecord } from './provider-utils.js';
|
|
2
|
+
import { extractAnthropicToolAliasMap } from './anthropic-tool-alias.js';
|
|
3
|
+
import { convertProviderResponse as bridgeConvertProviderResponse, createSnapshotRecorder as bridgeCreateSnapshotRecorder } from '../../../modules/llmswitch/bridge.js';
|
|
4
|
+
import { applyClientConnectionStateToContext } from '../../utils/client-connection-state.js';
|
|
5
|
+
function extractClientModelId(metadata, originalRequest) {
|
|
6
|
+
const candidates = [
|
|
7
|
+
metadata.clientModelId,
|
|
8
|
+
metadata.originalModelId,
|
|
9
|
+
(metadata.target && typeof metadata.target === 'object'
|
|
10
|
+
? metadata.target.clientModelId
|
|
11
|
+
: undefined),
|
|
12
|
+
originalRequest && typeof originalRequest === 'object'
|
|
13
|
+
? originalRequest.model
|
|
14
|
+
: undefined,
|
|
15
|
+
originalRequest && typeof originalRequest === 'object'
|
|
16
|
+
? originalRequest.originalModelId
|
|
17
|
+
: undefined
|
|
18
|
+
];
|
|
19
|
+
for (const candidate of candidates) {
|
|
20
|
+
if (typeof candidate === 'string' && candidate.trim()) {
|
|
21
|
+
return candidate.trim();
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
return undefined;
|
|
25
|
+
}
|
|
26
|
+
export async function convertProviderResponseIfNeeded(options, deps) {
|
|
27
|
+
if (options.processMode === 'passthrough') {
|
|
28
|
+
return options.response;
|
|
29
|
+
}
|
|
30
|
+
const entry = (options.entryEndpoint || '').toLowerCase();
|
|
31
|
+
const needsAnthropicConversion = entry.includes('/v1/messages');
|
|
32
|
+
const needsResponsesConversion = entry.includes('/v1/responses');
|
|
33
|
+
const needsChatConversion = entry.includes('/v1/chat/completions');
|
|
34
|
+
if (!needsAnthropicConversion && !needsResponsesConversion && !needsChatConversion) {
|
|
35
|
+
return options.response;
|
|
36
|
+
}
|
|
37
|
+
const body = options.response.body;
|
|
38
|
+
if (!body || typeof body !== 'object') {
|
|
39
|
+
return options.response;
|
|
40
|
+
}
|
|
41
|
+
try {
|
|
42
|
+
const providerProtocol = mapProviderProtocol(options.providerType);
|
|
43
|
+
const metadataBag = asRecord(options.pipelineMetadata);
|
|
44
|
+
const aliasMap = extractAnthropicToolAliasMap(metadataBag);
|
|
45
|
+
const originalModelId = extractClientModelId(metadataBag ?? {}, options.originalRequest);
|
|
46
|
+
const baseContext = {
|
|
47
|
+
...(metadataBag ?? {})
|
|
48
|
+
};
|
|
49
|
+
if (typeof metadataBag?.routeName === 'string') {
|
|
50
|
+
baseContext.routeId = metadataBag.routeName;
|
|
51
|
+
}
|
|
52
|
+
baseContext.requestId = options.requestId;
|
|
53
|
+
baseContext.entryEndpoint = options.entryEndpoint || entry;
|
|
54
|
+
baseContext.providerProtocol = providerProtocol;
|
|
55
|
+
baseContext.originalModelId = originalModelId;
|
|
56
|
+
applyClientConnectionStateToContext(metadataBag, baseContext);
|
|
57
|
+
const adapterContext = baseContext;
|
|
58
|
+
if (aliasMap) {
|
|
59
|
+
adapterContext.anthropicToolNameMap = aliasMap;
|
|
60
|
+
}
|
|
61
|
+
const stageRecorder = await bridgeCreateSnapshotRecorder(adapterContext, typeof adapterContext.entryEndpoint === 'string'
|
|
62
|
+
? adapterContext.entryEndpoint
|
|
63
|
+
: entry);
|
|
64
|
+
const providerInvoker = async (invokeOptions) => {
|
|
65
|
+
if (invokeOptions.routeHint) {
|
|
66
|
+
const carrier = invokeOptions.payload;
|
|
67
|
+
const existingMeta = carrier.metadata && typeof carrier.metadata === 'object'
|
|
68
|
+
? carrier.metadata
|
|
69
|
+
: {};
|
|
70
|
+
carrier.metadata = {
|
|
71
|
+
...existingMeta,
|
|
72
|
+
routeHint: existingMeta.routeHint ?? invokeOptions.routeHint
|
|
73
|
+
};
|
|
74
|
+
}
|
|
75
|
+
const nestedInput = {
|
|
76
|
+
entryEndpoint: options.entryEndpoint || entry,
|
|
77
|
+
method: 'POST',
|
|
78
|
+
requestId: options.requestId,
|
|
79
|
+
headers: {},
|
|
80
|
+
query: {},
|
|
81
|
+
body: invokeOptions.payload,
|
|
82
|
+
metadata: {
|
|
83
|
+
...(metadataBag ?? {}),
|
|
84
|
+
direction: 'request',
|
|
85
|
+
stage: 'provider.invoke'
|
|
86
|
+
}
|
|
87
|
+
};
|
|
88
|
+
const nestedResult = await deps.executeNested(nestedInput);
|
|
89
|
+
const nestedBody = nestedResult.body && typeof nestedResult.body === 'object'
|
|
90
|
+
? nestedResult.body
|
|
91
|
+
: nestedResult;
|
|
92
|
+
return { providerResponse: nestedBody };
|
|
93
|
+
};
|
|
94
|
+
const reenterPipeline = async (reenterOpts) => {
|
|
95
|
+
const nestedEntry = reenterOpts.entryEndpoint || options.entryEndpoint || entry;
|
|
96
|
+
const nestedExtra = asRecord(reenterOpts.metadata) ?? {};
|
|
97
|
+
const nestedEntryLower = nestedEntry.toLowerCase();
|
|
98
|
+
const nestedMetadata = {
|
|
99
|
+
...(metadataBag ?? {}),
|
|
100
|
+
...nestedExtra,
|
|
101
|
+
entryEndpoint: nestedEntry,
|
|
102
|
+
direction: 'request',
|
|
103
|
+
stage: 'inbound'
|
|
104
|
+
};
|
|
105
|
+
if (nestedEntryLower.includes('/v1/chat/completions')) {
|
|
106
|
+
nestedMetadata.providerProtocol = 'openai-chat';
|
|
107
|
+
}
|
|
108
|
+
else if (nestedEntryLower.includes('/v1/responses')) {
|
|
109
|
+
nestedMetadata.providerProtocol = 'openai-responses';
|
|
110
|
+
}
|
|
111
|
+
else if (nestedEntryLower.includes('/v1/messages')) {
|
|
112
|
+
nestedMetadata.providerProtocol = 'anthropic-messages';
|
|
113
|
+
}
|
|
114
|
+
const nestedInput = {
|
|
115
|
+
entryEndpoint: nestedEntry,
|
|
116
|
+
method: 'POST',
|
|
117
|
+
requestId: reenterOpts.requestId,
|
|
118
|
+
headers: {},
|
|
119
|
+
query: {},
|
|
120
|
+
body: reenterOpts.body,
|
|
121
|
+
metadata: nestedMetadata
|
|
122
|
+
};
|
|
123
|
+
const nestedResult = await deps.executeNested(nestedInput);
|
|
124
|
+
const nestedBody = nestedResult.body && typeof nestedResult.body === 'object'
|
|
125
|
+
? nestedResult.body
|
|
126
|
+
: undefined;
|
|
127
|
+
return { body: nestedBody };
|
|
128
|
+
};
|
|
129
|
+
const converted = await bridgeConvertProviderResponse({
|
|
130
|
+
providerProtocol,
|
|
131
|
+
providerResponse: body,
|
|
132
|
+
context: adapterContext,
|
|
133
|
+
entryEndpoint: options.entryEndpoint || entry,
|
|
134
|
+
wantsStream: options.wantsStream,
|
|
135
|
+
providerInvoker,
|
|
136
|
+
stageRecorder,
|
|
137
|
+
reenterPipeline
|
|
138
|
+
});
|
|
139
|
+
if (converted.__sse_responses) {
|
|
140
|
+
return {
|
|
141
|
+
...options.response,
|
|
142
|
+
body: { __sse_responses: converted.__sse_responses }
|
|
143
|
+
};
|
|
144
|
+
}
|
|
145
|
+
return {
|
|
146
|
+
...options.response,
|
|
147
|
+
body: converted.body ?? body
|
|
148
|
+
};
|
|
149
|
+
}
|
|
150
|
+
catch (error) {
|
|
151
|
+
const err = error;
|
|
152
|
+
const message = err instanceof Error ? err.message : String(err ?? 'Unknown error');
|
|
153
|
+
const providerProtocol = mapProviderProtocol(options.providerType);
|
|
154
|
+
const isSseConvertFailure = typeof message === 'string' &&
|
|
155
|
+
message.toLowerCase().includes('failed to convert sse payload');
|
|
156
|
+
if (providerProtocol === 'gemini-chat' && isSseConvertFailure) {
|
|
157
|
+
console.error('[RequestExecutor] Fatal SSE decode error for Gemini provider, bubbling as HTTP error', error);
|
|
158
|
+
throw error;
|
|
159
|
+
}
|
|
160
|
+
console.error('[RequestExecutor] Failed to convert provider response via llmswitch-core', error);
|
|
161
|
+
throw error;
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
//# sourceMappingURL=executor-response.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"executor-response.js","sourceRoot":"","sources":["../../../../src/server/runtime/http-server/executor-response.ts"],"names":[],"mappings":"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"}
|
|
@@ -37,6 +37,7 @@ export declare class RouteCodexHttpServer {
|
|
|
37
37
|
private errorHandlingShim;
|
|
38
38
|
private routeErrorHub;
|
|
39
39
|
private readonly coloredLogger;
|
|
40
|
+
private managerDaemon;
|
|
40
41
|
constructor(config: ServerConfigV2);
|
|
41
42
|
private resolveVirtualRouterInput;
|
|
42
43
|
private getModuleDependencies;
|
|
@@ -15,7 +15,6 @@ import { attachProviderRuntimeMetadata } from '../../../providers/core/runtime/p
|
|
|
15
15
|
import { extractAnthropicToolAliasMap } from './anthropic-tool-alias.js';
|
|
16
16
|
import { AuthFileResolver } from '../../../config/auth-file-resolver.js';
|
|
17
17
|
import { buildProviderProfiles } from '../../../providers/profile/provider-profile-loader.js';
|
|
18
|
-
import { emitProviderError } from '../../../providers/core/utils/provider-error-reporter.js';
|
|
19
18
|
import { isStageLoggingEnabled, logPipelineStage } from '../../utils/stage-logger.js';
|
|
20
19
|
import { registerDefaultMiddleware } from './middleware.js';
|
|
21
20
|
import { registerHttpRoutes, registerOAuthPortalRoute } from './routes.js';
|
|
@@ -28,6 +27,11 @@ import { writeClientSnapshot } from '../../../providers/core/utils/snapshot-writ
|
|
|
28
27
|
import { createServerColoredLogger } from './colored-logger.js';
|
|
29
28
|
import { formatValueForConsole } from '../../../utils/logger.js';
|
|
30
29
|
import { QuietErrorHandlingCenter } from '../../../error-handling/quiet-error-handling-center.js';
|
|
30
|
+
import { hasVirtualRouterSeriesCooldown } from './executor-provider.js';
|
|
31
|
+
import { ManagerDaemon } from '../../../manager/index.js';
|
|
32
|
+
import { HealthManagerModule } from '../../../manager/modules/health/index.js';
|
|
33
|
+
import { RoutingStateManagerModule } from '../../../manager/modules/routing/index.js';
|
|
34
|
+
import { TokenManagerModule } from '../../../manager/modules/token/index.js';
|
|
31
35
|
/**
|
|
32
36
|
* RouteCodex Server V2
|
|
33
37
|
*
|
|
@@ -56,6 +60,7 @@ export class RouteCodexHttpServer {
|
|
|
56
60
|
errorHandlingShim = null;
|
|
57
61
|
routeErrorHub = null;
|
|
58
62
|
coloredLogger = createServerColoredLogger();
|
|
63
|
+
managerDaemon = null;
|
|
59
64
|
constructor(config) {
|
|
60
65
|
this.config = config;
|
|
61
66
|
this.app = express();
|
|
@@ -307,6 +312,26 @@ export class RouteCodexHttpServer {
|
|
|
307
312
|
// 初始化错误处理
|
|
308
313
|
await this.errorHandling.initialize();
|
|
309
314
|
await this.initializeRouteErrorHub();
|
|
315
|
+
// 初始化 ManagerDaemon 骨架(当前模块为占位实现,不改变行为)
|
|
316
|
+
if (!this.managerDaemon) {
|
|
317
|
+
const serverId = `${this.config.server.host}:${this.config.server.port}`;
|
|
318
|
+
const daemon = new ManagerDaemon({ serverId });
|
|
319
|
+
daemon.registerModule(new TokenManagerModule());
|
|
320
|
+
daemon.registerModule(new RoutingStateManagerModule());
|
|
321
|
+
daemon.registerModule(new HealthManagerModule());
|
|
322
|
+
// Quota manager(当前仅用于 antigravity/gemini-cli 等需要配额信息的 Provider)
|
|
323
|
+
try {
|
|
324
|
+
const mod = (await import('../../../manager/modules/quota/index.js'));
|
|
325
|
+
if (typeof mod.QuotaManagerModule === 'function') {
|
|
326
|
+
daemon.registerModule(new mod.QuotaManagerModule());
|
|
327
|
+
}
|
|
328
|
+
}
|
|
329
|
+
catch {
|
|
330
|
+
// 可选模块,缺失时忽略
|
|
331
|
+
}
|
|
332
|
+
await daemon.start();
|
|
333
|
+
this.managerDaemon = daemon;
|
|
334
|
+
}
|
|
310
335
|
// registerDefaultMiddleware and registerOAuthPortalRoute already called in constructor
|
|
311
336
|
// Register remaining HTTP routes
|
|
312
337
|
registerHttpRoutes({
|
|
@@ -314,7 +339,20 @@ export class RouteCodexHttpServer {
|
|
|
314
339
|
config: this.config,
|
|
315
340
|
buildHandlerContext: () => this.buildHandlerContext(),
|
|
316
341
|
getPipelineReady: () => this.isPipelineReady(),
|
|
317
|
-
handleError: (error, context) => this.handleError(error, context)
|
|
342
|
+
handleError: (error, context) => this.handleError(error, context),
|
|
343
|
+
getHealthSnapshot: () => {
|
|
344
|
+
const healthModule = this.managerDaemon?.getModule('health');
|
|
345
|
+
return healthModule?.getCurrentSnapshot() ?? null;
|
|
346
|
+
},
|
|
347
|
+
getRoutingState: (sessionId) => {
|
|
348
|
+
const routingModule = this.managerDaemon?.getModule('routing');
|
|
349
|
+
const store = routingModule?.getRoutingStateStore();
|
|
350
|
+
if (!store) {
|
|
351
|
+
return null;
|
|
352
|
+
}
|
|
353
|
+
const key = sessionId && sessionId.trim() ? `session:${sessionId.trim()}` : '';
|
|
354
|
+
return key ? store.loadSync(key) : null;
|
|
355
|
+
}
|
|
318
356
|
});
|
|
319
357
|
this._isInitialized = true;
|
|
320
358
|
console.log('[RouteCodexHttpServer] Initialization completed successfully');
|
|
@@ -355,6 +393,15 @@ export class RouteCodexHttpServer {
|
|
|
355
393
|
await this.disposeProviders();
|
|
356
394
|
}
|
|
357
395
|
catch { /* ignore */ }
|
|
396
|
+
try {
|
|
397
|
+
if (this.managerDaemon) {
|
|
398
|
+
await this.managerDaemon.stop();
|
|
399
|
+
this.managerDaemon = null;
|
|
400
|
+
}
|
|
401
|
+
}
|
|
402
|
+
catch {
|
|
403
|
+
// ignore manager shutdown failures
|
|
404
|
+
}
|
|
358
405
|
await this.errorHandling.destroy();
|
|
359
406
|
console.log('[RouteCodexHttpServer] Server stopped');
|
|
360
407
|
resolve();
|
|
@@ -433,8 +480,21 @@ export class RouteCodexHttpServer {
|
|
|
433
480
|
const bootstrapArtifacts = await this.bootstrapVirtualRouter(routerInput);
|
|
434
481
|
this.currentRouterArtifacts = bootstrapArtifacts;
|
|
435
482
|
const hubCtor = await this.ensureHubPipelineCtor();
|
|
483
|
+
const hubConfig = {
|
|
484
|
+
virtualRouter: bootstrapArtifacts.config
|
|
485
|
+
};
|
|
486
|
+
const healthModule = this.managerDaemon?.getModule('health');
|
|
487
|
+
const healthStore = healthModule?.getHealthStore();
|
|
488
|
+
if (healthStore) {
|
|
489
|
+
hubConfig.healthStore = healthStore;
|
|
490
|
+
}
|
|
491
|
+
const routingModule = this.managerDaemon?.getModule('routing');
|
|
492
|
+
const routingStateStore = routingModule?.getRoutingStateStore();
|
|
493
|
+
if (routingStateStore) {
|
|
494
|
+
hubConfig.routingStateStore = routingStateStore;
|
|
495
|
+
}
|
|
436
496
|
if (!this.hubPipeline) {
|
|
437
|
-
this.hubPipeline = new hubCtor(
|
|
497
|
+
this.hubPipeline = new hubCtor(hubConfig);
|
|
438
498
|
}
|
|
439
499
|
else {
|
|
440
500
|
this.hubPipeline.updateVirtualRouterConfig(bootstrapArtifacts.config);
|
|
@@ -512,6 +572,7 @@ export class RouteCodexHttpServer {
|
|
|
512
572
|
const auth = runtime.auth || { type: 'apikey' };
|
|
513
573
|
const authRecord = auth;
|
|
514
574
|
const authType = this.normalizeAuthType(auth.type);
|
|
575
|
+
const rawType = typeof auth.rawType === 'string' ? auth.rawType.trim().toLowerCase() : '';
|
|
515
576
|
const pickString = (...candidates) => {
|
|
516
577
|
for (const candidate of candidates) {
|
|
517
578
|
if (typeof candidate === 'string') {
|
|
@@ -543,6 +604,9 @@ export class RouteCodexHttpServer {
|
|
|
543
604
|
return undefined;
|
|
544
605
|
};
|
|
545
606
|
if (authType === 'apikey') {
|
|
607
|
+
if (rawType === 'iflow-cookie') {
|
|
608
|
+
return { ...auth, type: 'apikey', rawType: auth.rawType ?? 'iflow-cookie' };
|
|
609
|
+
}
|
|
546
610
|
const value = await this.resolveApiKeyValue(runtime, auth);
|
|
547
611
|
return { ...auth, type: 'apikey', value };
|
|
548
612
|
}
|
|
@@ -630,8 +694,9 @@ export class RouteCodexHttpServer {
|
|
|
630
694
|
const pipelineLabel = 'hub';
|
|
631
695
|
let iterationMetadata = initialMetadata;
|
|
632
696
|
let followupTriggered = false;
|
|
633
|
-
|
|
634
|
-
|
|
697
|
+
// Provider 级别不再在单个 HTTP 请求内执行重复尝试,
|
|
698
|
+
// 429/配额/熔断逻辑统一交由 llmswitch-core VirtualRouter 处理。
|
|
699
|
+
const maxAttempts = 1;
|
|
635
700
|
let attempt = 0;
|
|
636
701
|
const originalBodySnapshot = this.cloneRequestPayload(input.body);
|
|
637
702
|
const excludedProviderKeys = new Set();
|
|
@@ -782,53 +847,6 @@ export class RouteCodexHttpServer {
|
|
|
782
847
|
model: providerModel,
|
|
783
848
|
providerLabel
|
|
784
849
|
});
|
|
785
|
-
const runtimeMetadata = {
|
|
786
|
-
requestId: input.requestId,
|
|
787
|
-
providerKey: target.providerKey,
|
|
788
|
-
providerId: handle.providerId,
|
|
789
|
-
providerType: handle.providerType,
|
|
790
|
-
providerProtocol,
|
|
791
|
-
routeName: pipelineResult.routingDecision?.routeName,
|
|
792
|
-
pipelineId: target.providerKey,
|
|
793
|
-
runtimeKey,
|
|
794
|
-
target
|
|
795
|
-
};
|
|
796
|
-
runtimeMetadata.providerFamily = handle.providerFamily;
|
|
797
|
-
emitProviderError({
|
|
798
|
-
error,
|
|
799
|
-
stage: 'provider.send',
|
|
800
|
-
runtime: runtimeMetadata,
|
|
801
|
-
dependencies: this.getModuleDependencies()
|
|
802
|
-
});
|
|
803
|
-
const err = error;
|
|
804
|
-
const statusCode = typeof err?.status === 'number'
|
|
805
|
-
? err.status
|
|
806
|
-
: typeof err?.statusCode === 'number'
|
|
807
|
-
? err.statusCode
|
|
808
|
-
: typeof err?.response?.status === 'number'
|
|
809
|
-
? err.response.status
|
|
810
|
-
: undefined;
|
|
811
|
-
const retryable = err?.retryable === true;
|
|
812
|
-
// 对可恢复的 429 错误在同一 HTTP 请求内执行透明重试:
|
|
813
|
-
// - 依赖 providerErrorCenter 已更新 VirtualRouter 的健康状态(短冷静期);
|
|
814
|
-
// - 将当前 providerKey 记录到本次请求的排除列表中,下一轮选路时显式跳过;
|
|
815
|
-
// - 再次调用 HubPipeline 时,让 VirtualRouter 在最新健康状态 + 排除集下选择其它可用 key;
|
|
816
|
-
// - 若超过最大重试次数或错误不可恢复,则将错误抛出,由上层 HTTP 处理。
|
|
817
|
-
if (retryable && statusCode === 429 && attempt < maxAttempts) {
|
|
818
|
-
this.logStage('provider.send.retry', input.requestId, {
|
|
819
|
-
providerKey: target.providerKey,
|
|
820
|
-
attempt,
|
|
821
|
-
status: statusCode
|
|
822
|
-
});
|
|
823
|
-
// 本次请求内,将当前 providerKey 标记为已尝试,下一轮路由会自动跳过。
|
|
824
|
-
if (typeof target.providerKey === 'string' && target.providerKey.trim()) {
|
|
825
|
-
excludedProviderKeys.add(target.providerKey.trim());
|
|
826
|
-
}
|
|
827
|
-
// 下一轮沿用当前 pipeline metadata(包含路由决策等),让 VirtualRouter
|
|
828
|
-
// 在最新健康状态下重新选择 provider。
|
|
829
|
-
iterationMetadata = { ...mergedMetadata };
|
|
830
|
-
continue;
|
|
831
|
-
}
|
|
832
850
|
throw error;
|
|
833
851
|
}
|
|
834
852
|
}
|
|
@@ -880,7 +898,7 @@ export class RouteCodexHttpServer {
|
|
|
880
898
|
: inboundOriginator;
|
|
881
899
|
const routeHint = this.extractRouteHint(input) ?? userMeta.routeHint;
|
|
882
900
|
const processMode = userMeta.processMode || 'chat';
|
|
883
|
-
|
|
901
|
+
const metadata = {
|
|
884
902
|
...userMeta,
|
|
885
903
|
entryEndpoint: input.entryEndpoint,
|
|
886
904
|
processMode,
|
|
@@ -891,6 +909,23 @@ export class RouteCodexHttpServer {
|
|
|
891
909
|
...(resolvedUserAgent ? { userAgent: resolvedUserAgent } : {}),
|
|
892
910
|
...(resolvedOriginator ? { clientOriginator: resolvedOriginator } : {})
|
|
893
911
|
};
|
|
912
|
+
// 在 Host 入口统一解析会话标识,后续 HubPipeline / servertool 等模块仅依赖
|
|
913
|
+
// sessionId / conversationId 字段,不再重复解析 clientHeaders。
|
|
914
|
+
try {
|
|
915
|
+
// eslint-disable-next-line @typescript-eslint/no-var-requires
|
|
916
|
+
const { extractSessionIdentifiersFromMetadata } = require('../../../../sharedmodule/llmswitch-core/dist/conversion/hub/pipeline/session-identifiers.js');
|
|
917
|
+
const identifiers = extractSessionIdentifiersFromMetadata(metadata);
|
|
918
|
+
if (identifiers.sessionId) {
|
|
919
|
+
metadata.sessionId = identifiers.sessionId;
|
|
920
|
+
}
|
|
921
|
+
if (identifiers.conversationId) {
|
|
922
|
+
metadata.conversationId = identifiers.conversationId;
|
|
923
|
+
}
|
|
924
|
+
}
|
|
925
|
+
catch {
|
|
926
|
+
// best-effort:解析失败时不影响主流程
|
|
927
|
+
}
|
|
928
|
+
return metadata;
|
|
894
929
|
}
|
|
895
930
|
extractHeaderValue(headers, name) {
|
|
896
931
|
if (!headers) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/server/runtime/http-server/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/server/runtime/http-server/index.ts"],"names":[],"mappings":"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"}
|