@jsonstudio/rcc 0.89.1803 → 0.89.1959

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.
Files changed (283) hide show
  1. package/configsamples/config.json +19 -0
  2. package/configsamples/provider/deepseek/config.v1.json +59 -0
  3. package/dist/build-info.js +2 -2
  4. package/dist/cli/commands/claude.d.ts +4 -0
  5. package/dist/cli/commands/claude.js +56 -0
  6. package/dist/cli/commands/claude.js.map +1 -0
  7. package/dist/cli/commands/clock-admin.d.ts +20 -0
  8. package/dist/cli/commands/clock-admin.js +234 -0
  9. package/dist/cli/commands/clock-admin.js.map +1 -0
  10. package/dist/cli/commands/code.d.ts +0 -42
  11. package/dist/cli/commands/code.js +4 -414
  12. package/dist/cli/commands/code.js.map +1 -1
  13. package/dist/cli/commands/codex.d.ts +4 -0
  14. package/dist/cli/commands/codex.js +43 -0
  15. package/dist/cli/commands/codex.js.map +1 -0
  16. package/dist/cli/commands/examples.js +13 -16
  17. package/dist/cli/commands/examples.js.map +1 -1
  18. package/dist/cli/commands/init/basic.d.ts +40 -0
  19. package/dist/cli/commands/init/basic.js +482 -0
  20. package/dist/cli/commands/init/basic.js.map +1 -0
  21. package/dist/cli/commands/init/camoufox.d.ts +7 -0
  22. package/dist/cli/commands/init/camoufox.js +59 -0
  23. package/dist/cli/commands/init/camoufox.js.map +1 -0
  24. package/dist/cli/commands/init/interactive.d.ts +18 -0
  25. package/dist/cli/commands/init/interactive.js +223 -0
  26. package/dist/cli/commands/init/interactive.js.map +1 -0
  27. package/dist/cli/commands/init/shared.d.ts +66 -0
  28. package/dist/cli/commands/init/shared.js +9 -0
  29. package/dist/cli/commands/init/shared.js.map +1 -0
  30. package/dist/cli/commands/init/workflows.d.ts +29 -0
  31. package/dist/cli/commands/init/workflows.js +341 -0
  32. package/dist/cli/commands/init/workflows.js.map +1 -0
  33. package/dist/cli/commands/init.d.ts +2 -26
  34. package/dist/cli/commands/init.js +220 -53
  35. package/dist/cli/commands/init.js.map +1 -1
  36. package/dist/cli/commands/launcher-kernel.d.ts +78 -0
  37. package/dist/cli/commands/launcher-kernel.js +1194 -0
  38. package/dist/cli/commands/launcher-kernel.js.map +1 -0
  39. package/dist/cli/commands/start.js +27 -1
  40. package/dist/cli/commands/start.js.map +1 -1
  41. package/dist/cli/commands/status.d.ts +2 -0
  42. package/dist/cli/commands/status.js +24 -1
  43. package/dist/cli/commands/status.js.map +1 -1
  44. package/dist/cli/commands/stop.d.ts +1 -0
  45. package/dist/cli/commands/stop.js +201 -4
  46. package/dist/cli/commands/stop.js.map +1 -1
  47. package/dist/cli/commands/tmux-inject.d.ts +20 -0
  48. package/dist/cli/commands/tmux-inject.js +212 -0
  49. package/dist/cli/commands/tmux-inject.js.map +1 -0
  50. package/dist/cli/config/init-provider-catalog.js +34 -0
  51. package/dist/cli/config/init-provider-catalog.js.map +1 -1
  52. package/dist/cli/register/claude-command.d.ts +3 -0
  53. package/dist/cli/register/claude-command.js +5 -0
  54. package/dist/cli/register/claude-command.js.map +1 -0
  55. package/dist/cli/register/clock-admin-command.d.ts +3 -0
  56. package/dist/cli/register/clock-admin-command.js +5 -0
  57. package/dist/cli/register/clock-admin-command.js.map +1 -0
  58. package/dist/cli/register/codex-command.d.ts +3 -0
  59. package/dist/cli/register/codex-command.js +5 -0
  60. package/dist/cli/register/codex-command.js.map +1 -0
  61. package/dist/cli/register/status-config-commands.d.ts +2 -0
  62. package/dist/cli/register/status-config-commands.js.map +1 -1
  63. package/dist/cli/register/tmux-inject-command.d.ts +3 -0
  64. package/dist/cli/register/tmux-inject-command.js +5 -0
  65. package/dist/cli/register/tmux-inject-command.js.map +1 -0
  66. package/dist/cli/server/port-utils.d.ts +3 -2
  67. package/dist/cli/server/port-utils.js +171 -32
  68. package/dist/cli/server/port-utils.js.map +1 -1
  69. package/dist/cli.js +45 -6
  70. package/dist/cli.js.map +1 -1
  71. package/dist/client/gemini/gemini-protocol-client.js +56 -5
  72. package/dist/client/gemini/gemini-protocol-client.js.map +1 -1
  73. package/dist/commands/token-daemon.js +59 -7
  74. package/dist/commands/token-daemon.js.map +1 -1
  75. package/dist/commands/validate.js +87 -15
  76. package/dist/commands/validate.js.map +1 -1
  77. package/dist/config/routecodex-config-loader.js +31 -2
  78. package/dist/config/routecodex-config-loader.js.map +1 -1
  79. package/dist/docs/daemon-admin-ui.html +948 -74
  80. package/dist/index.d.ts +1 -0
  81. package/dist/index.js +325 -37
  82. package/dist/index.js.map +1 -1
  83. package/dist/manager/quota/provider-quota-center.js +8 -14
  84. package/dist/manager/quota/provider-quota-center.js.map +1 -1
  85. package/dist/modules/llmswitch/bridge.d.ts +39 -0
  86. package/dist/modules/llmswitch/bridge.js +169 -0
  87. package/dist/modules/llmswitch/bridge.js.map +1 -1
  88. package/dist/modules/pipeline/utils/colored-logger.js +1 -1
  89. package/dist/modules/pipeline/utils/colored-logger.js.map +1 -1
  90. package/dist/providers/auth/deepseek-account-auth.d.ts +39 -0
  91. package/dist/providers/auth/deepseek-account-auth.js +329 -0
  92. package/dist/providers/auth/deepseek-account-auth.js.map +1 -0
  93. package/dist/providers/auth/deepseek-account-token-acquirer.d.ts +15 -0
  94. package/dist/providers/auth/deepseek-account-token-acquirer.js +644 -0
  95. package/dist/providers/auth/deepseek-account-token-acquirer.js.map +1 -0
  96. package/dist/providers/auth/oauth-lifecycle.js +26 -4
  97. package/dist/providers/auth/oauth-lifecycle.js.map +1 -1
  98. package/dist/providers/auth/oauth-repair-cooldown.d.ts +5 -0
  99. package/dist/providers/auth/oauth-repair-cooldown.js +39 -0
  100. package/dist/providers/auth/oauth-repair-cooldown.js.map +1 -1
  101. package/dist/providers/auth/token-scanner/index.d.ts +6 -0
  102. package/dist/providers/auth/token-scanner/index.js +53 -0
  103. package/dist/providers/auth/token-scanner/index.js.map +1 -1
  104. package/dist/providers/core/api/provider-config.d.ts +17 -2
  105. package/dist/providers/core/api/provider-types.d.ts +6 -0
  106. package/dist/providers/core/api/provider-types.js.map +1 -1
  107. package/dist/providers/core/config/camoufox-launcher.d.ts +7 -0
  108. package/dist/providers/core/config/camoufox-launcher.js +68 -21
  109. package/dist/providers/core/config/camoufox-launcher.js.map +1 -1
  110. package/dist/providers/core/config/service-profiles.js +19 -0
  111. package/dist/providers/core/config/service-profiles.js.map +1 -1
  112. package/dist/providers/core/contracts/deepseek-provider-contract.d.ts +34 -0
  113. package/dist/providers/core/contracts/deepseek-provider-contract.js +100 -0
  114. package/dist/providers/core/contracts/deepseek-provider-contract.js.map +1 -0
  115. package/dist/providers/core/runtime/anthropic-http-provider.d.ts +0 -5
  116. package/dist/providers/core/runtime/anthropic-http-provider.js +0 -26
  117. package/dist/providers/core/runtime/anthropic-http-provider.js.map +1 -1
  118. package/dist/providers/core/runtime/deepseek-http-provider.d.ts +35 -0
  119. package/dist/providers/core/runtime/deepseek-http-provider.js +373 -0
  120. package/dist/providers/core/runtime/deepseek-http-provider.js.map +1 -0
  121. package/dist/providers/core/runtime/deepseek-session-pow.d.ts +55 -0
  122. package/dist/providers/core/runtime/deepseek-session-pow.js +422 -0
  123. package/dist/providers/core/runtime/deepseek-session-pow.js.map +1 -0
  124. package/dist/providers/core/runtime/gemini-cli-http-provider.d.ts +0 -3
  125. package/dist/providers/core/runtime/gemini-cli-http-provider.js +0 -72
  126. package/dist/providers/core/runtime/gemini-cli-http-provider.js.map +1 -1
  127. package/dist/providers/core/runtime/gemini-http-provider.d.ts +1 -7
  128. package/dist/providers/core/runtime/gemini-http-provider.js +3 -110
  129. package/dist/providers/core/runtime/gemini-http-provider.js.map +1 -1
  130. package/dist/providers/core/runtime/http-request-executor.d.ts +1 -0
  131. package/dist/providers/core/runtime/http-request-executor.js +4 -0
  132. package/dist/providers/core/runtime/http-request-executor.js.map +1 -1
  133. package/dist/providers/core/runtime/http-transport-provider.d.ts +10 -4
  134. package/dist/providers/core/runtime/http-transport-provider.js +308 -82
  135. package/dist/providers/core/runtime/http-transport-provider.js.map +1 -1
  136. package/dist/providers/core/runtime/iflow-http-provider.d.ts +0 -4
  137. package/dist/providers/core/runtime/iflow-http-provider.js +0 -28
  138. package/dist/providers/core/runtime/iflow-http-provider.js.map +1 -1
  139. package/dist/providers/core/runtime/provider-factory.d.ts +5 -0
  140. package/dist/providers/core/runtime/provider-factory.js +59 -6
  141. package/dist/providers/core/runtime/provider-factory.js.map +1 -1
  142. package/dist/providers/core/runtime/responses-provider.d.ts +0 -2
  143. package/dist/providers/core/runtime/responses-provider.js +0 -11
  144. package/dist/providers/core/runtime/responses-provider.js.map +1 -1
  145. package/dist/providers/core/strategies/oauth-device-flow.js +16 -1
  146. package/dist/providers/core/strategies/oauth-device-flow.js.map +1 -1
  147. package/dist/providers/core/utils/provider-type-utils.js +2 -1
  148. package/dist/providers/core/utils/provider-type-utils.js.map +1 -1
  149. package/dist/providers/profile/families/anthropic-profile.d.ts +2 -0
  150. package/dist/providers/profile/families/anthropic-profile.js +32 -0
  151. package/dist/providers/profile/families/anthropic-profile.js.map +1 -0
  152. package/dist/providers/profile/families/antigravity-profile.d.ts +2 -0
  153. package/dist/providers/profile/families/antigravity-profile.js +109 -0
  154. package/dist/providers/profile/families/antigravity-profile.js.map +1 -0
  155. package/dist/providers/profile/families/glm-profile.d.ts +2 -0
  156. package/dist/providers/profile/families/glm-profile.js +48 -0
  157. package/dist/providers/profile/families/glm-profile.js.map +1 -0
  158. package/dist/providers/profile/families/iflow-profile.d.ts +2 -0
  159. package/dist/providers/profile/families/iflow-profile.js +232 -0
  160. package/dist/providers/profile/families/iflow-profile.js.map +1 -0
  161. package/dist/providers/profile/families/qwen-profile.d.ts +2 -0
  162. package/dist/providers/profile/families/qwen-profile.js +14 -0
  163. package/dist/providers/profile/families/qwen-profile.js.map +1 -0
  164. package/dist/providers/profile/families/responses-profile.d.ts +2 -0
  165. package/dist/providers/profile/families/responses-profile.js +28 -0
  166. package/dist/providers/profile/families/responses-profile.js.map +1 -0
  167. package/dist/providers/profile/profile-contracts.d.ts +74 -0
  168. package/dist/providers/profile/profile-contracts.js +2 -0
  169. package/dist/providers/profile/profile-contracts.js.map +1 -0
  170. package/dist/providers/profile/profile-registry.d.ts +3 -0
  171. package/dist/providers/profile/profile-registry.js +40 -0
  172. package/dist/providers/profile/profile-registry.js.map +1 -0
  173. package/dist/providers/profile/provider-directory.d.ts +2 -0
  174. package/dist/providers/profile/provider-directory.js +55 -0
  175. package/dist/providers/profile/provider-directory.js.map +1 -0
  176. package/dist/providers/profile/provider-profile-loader.js +43 -3
  177. package/dist/providers/profile/provider-profile-loader.js.map +1 -1
  178. package/dist/providers/profile/provider-profile.d.ts +8 -0
  179. package/dist/scripts/deepseek/pow-solver.mjs +146 -0
  180. package/dist/scripts/deepseek/sha3_wasm_bg.7b9ca65ddd.wasm +0 -0
  181. package/dist/server/handlers/config-admin-handler.js +27 -0
  182. package/dist/server/handlers/config-admin-handler.js.map +1 -1
  183. package/dist/server/runtime/http-server/clock-client-registry.d.ts +113 -0
  184. package/dist/server/runtime/http-server/clock-client-registry.js +592 -0
  185. package/dist/server/runtime/http-server/clock-client-registry.js.map +1 -0
  186. package/dist/server/runtime/http-server/clock-client-routes.d.ts +2 -0
  187. package/dist/server/runtime/http-server/clock-client-routes.js +481 -0
  188. package/dist/server/runtime/http-server/clock-client-routes.js.map +1 -0
  189. package/dist/server/runtime/http-server/clock-daemon-inject-config.d.ts +1 -0
  190. package/dist/server/runtime/http-server/clock-daemon-inject-config.js +11 -0
  191. package/dist/server/runtime/http-server/clock-daemon-inject-config.js.map +1 -0
  192. package/dist/server/runtime/http-server/daemon-admin/auth-handler.js +3 -3
  193. package/dist/server/runtime/http-server/daemon-admin/auth-handler.js.map +1 -1
  194. package/dist/server/runtime/http-server/daemon-admin/auth-session.d.ts +1 -0
  195. package/dist/server/runtime/http-server/daemon-admin/auth-session.js +18 -2
  196. package/dist/server/runtime/http-server/daemon-admin/auth-session.js.map +1 -1
  197. package/dist/server/runtime/http-server/daemon-admin/control-handler.js +2 -15
  198. package/dist/server/runtime/http-server/daemon-admin/control-handler.js.map +1 -1
  199. package/dist/server/runtime/http-server/daemon-admin/credentials-handler.js +65 -7
  200. package/dist/server/runtime/http-server/daemon-admin/credentials-handler.js.map +1 -1
  201. package/dist/server/runtime/http-server/executor-metadata.js +37 -1
  202. package/dist/server/runtime/http-server/executor-metadata.js.map +1 -1
  203. package/dist/server/runtime/http-server/executor-provider.js +55 -0
  204. package/dist/server/runtime/http-server/executor-provider.js.map +1 -1
  205. package/dist/server/runtime/http-server/executor-response.js +49 -1
  206. package/dist/server/runtime/http-server/executor-response.js.map +1 -1
  207. package/dist/server/runtime/http-server/index.d.ts +10 -0
  208. package/dist/server/runtime/http-server/index.js +534 -9
  209. package/dist/server/runtime/http-server/index.js.map +1 -1
  210. package/dist/server/runtime/http-server/managed-process-probe.d.ts +6 -0
  211. package/dist/server/runtime/http-server/managed-process-probe.js +294 -0
  212. package/dist/server/runtime/http-server/managed-process-probe.js.map +1 -0
  213. package/dist/server/runtime/http-server/middleware.js +16 -1
  214. package/dist/server/runtime/http-server/middleware.js.map +1 -1
  215. package/dist/server/runtime/http-server/provider-utils.js +6 -2
  216. package/dist/server/runtime/http-server/provider-utils.js.map +1 -1
  217. package/dist/server/runtime/http-server/request-executor.d.ts +1 -0
  218. package/dist/server/runtime/http-server/request-executor.js +360 -35
  219. package/dist/server/runtime/http-server/request-executor.js.map +1 -1
  220. package/dist/server/runtime/http-server/routes.js +95 -3
  221. package/dist/server/runtime/http-server/routes.js.map +1 -1
  222. package/dist/server/runtime/http-server/stats-manager.d.ts +10 -0
  223. package/dist/server/runtime/http-server/stats-manager.js +119 -16
  224. package/dist/server/runtime/http-server/stats-manager.js.map +1 -1
  225. package/dist/server/runtime/http-server/tmux-session-probe.d.ts +3 -0
  226. package/dist/server/runtime/http-server/tmux-session-probe.js +101 -0
  227. package/dist/server/runtime/http-server/tmux-session-probe.js.map +1 -0
  228. package/dist/server/utils/stage-logger.js +21 -5
  229. package/dist/server/utils/stage-logger.js.map +1 -1
  230. package/dist/token-daemon/index.js +59 -10
  231. package/dist/token-daemon/index.js.map +1 -1
  232. package/dist/token-daemon/server-utils.d.ts +1 -0
  233. package/dist/token-daemon/server-utils.js +4 -1
  234. package/dist/token-daemon/server-utils.js.map +1 -1
  235. package/dist/token-daemon/token-daemon.js +38 -4
  236. package/dist/token-daemon/token-daemon.js.map +1 -1
  237. package/dist/token-daemon/token-types.d.ts +1 -1
  238. package/dist/token-daemon/token-types.js +2 -1
  239. package/dist/token-daemon/token-types.js.map +1 -1
  240. package/dist/token-daemon/token-utils.js +5 -2
  241. package/dist/token-daemon/token-utils.js.map +1 -1
  242. package/dist/utils/clock-client-token.d.ts +3 -0
  243. package/dist/utils/clock-client-token.js +54 -0
  244. package/dist/utils/clock-client-token.js.map +1 -0
  245. package/dist/utils/managed-server-pids.d.ts +25 -0
  246. package/dist/utils/managed-server-pids.js +176 -0
  247. package/dist/utils/managed-server-pids.js.map +1 -0
  248. package/dist/utils/process-lifecycle-logger.d.ts +8 -0
  249. package/dist/utils/process-lifecycle-logger.js +151 -0
  250. package/dist/utils/process-lifecycle-logger.js.map +1 -0
  251. package/dist/utils/runtime-exit-forensics.d.ts +30 -0
  252. package/dist/utils/runtime-exit-forensics.js +101 -0
  253. package/dist/utils/runtime-exit-forensics.js.map +1 -0
  254. package/dist/utils/shutdown-caller-context.d.ts +22 -0
  255. package/dist/utils/shutdown-caller-context.js +25 -0
  256. package/dist/utils/shutdown-caller-context.js.map +1 -0
  257. package/docs/PROVIDERS_BUILTIN.md +8 -0
  258. package/docs/PROVIDER_TYPES.md +3 -1
  259. package/docs/SERVERTOOL_PRE_COMMAND_HOOKS.md +85 -0
  260. package/docs/clock-client-daemon-design.md +343 -0
  261. package/docs/daemon-admin-ui.html +948 -74
  262. package/docs/providers/deepseek-web-provider-design.md +192 -0
  263. package/docs/routing-instructions.md +4 -1
  264. package/docs/stop-message-auto.md +4 -3
  265. package/docs/v2-architecture/PROVIDER-V2-CHANGESET-RELEASE-CHECKLIST.md +80 -0
  266. package/docs/v2-architecture/PROVIDER-V2-LAYERING-ADR-DRAFT.md +225 -0
  267. package/docs/v2-architecture/PROVIDER-V2-MIGRATION-MATRIX-DRAFT.md +88 -0
  268. package/docs/v2-architecture/PROVIDER-V2-PHASED-MIGRATION-ROLLBACK-DRAFT.md +164 -0
  269. package/docs/v2-architecture/PROVIDER-V2-PROFILE-API-REGISTRY-DRAFT.md +201 -0
  270. package/docs/v2-architecture/PROVIDER-V2-PROFILE-GEMINI-DRAFT.md +56 -0
  271. package/docs/v2-architecture/PROVIDER-V2-REFACTOR-OVERVIEW-DRAFT.md +102 -0
  272. package/docs/v2-architecture/PROVIDER-V2-VERIFICATION-MATRIX-DRAFT.md +163 -0
  273. package/package.json +10 -9
  274. package/scripts/copy-compat-assets.mjs +18 -0
  275. package/scripts/copy-modules-config.mjs +1 -0
  276. package/scripts/deepseek/pow-solver.mjs +146 -0
  277. package/scripts/deepseek/sha3_wasm_bg.7b9ca65ddd.wasm +0 -0
  278. package/scripts/ensure-cli-executable.mjs +64 -0
  279. package/scripts/install-global.sh +5 -2
  280. package/scripts/install.sh +1 -1
  281. package/scripts/monitor/daemon-kill-watch.mjs +184 -0
  282. package/scripts/monitor/port-kill-watch.sh +74 -0
  283. package/scripts/quick-install.sh +1 -1
@@ -0,0 +1,422 @@
1
+ import { Buffer } from 'node:buffer';
2
+ import { spawn } from 'node:child_process';
3
+ import fs from 'node:fs';
4
+ import path from 'node:path';
5
+ import { fileURLToPath } from 'node:url';
6
+ import { DEEPSEEK_ERROR_CODES } from '../contracts/deepseek-provider-contract.js';
7
+ const DEFAULT_CREATE_SESSION_ENDPOINT = '/api/v0/chat_session/create';
8
+ const DEFAULT_CREATE_POW_ENDPOINT = '/api/v0/chat/create_pow_challenge';
9
+ const DEFAULT_COMPLETION_TARGET_PATH = '/api/v0/chat/completion';
10
+ const DEFAULT_TIMEOUT_MS = 30_000;
11
+ const DEFAULT_POW_TIMEOUT_MS = 15_000;
12
+ const DEFAULT_POW_MAX_ATTEMPTS = 2;
13
+ const DEFAULT_SESSION_REUSE_TTL_MS = 30 * 60 * 1000;
14
+ function normalizeString(value) {
15
+ if (typeof value !== 'string') {
16
+ return undefined;
17
+ }
18
+ const trimmed = value.trim();
19
+ return trimmed.length ? trimmed : undefined;
20
+ }
21
+ function normalizeInteger(value, fallback, min, max) {
22
+ const parsed = typeof value === 'number'
23
+ ? value
24
+ : typeof value === 'string'
25
+ ? Number.parseInt(value, 10)
26
+ : NaN;
27
+ if (!Number.isFinite(parsed)) {
28
+ return fallback;
29
+ }
30
+ const floored = Math.floor(parsed);
31
+ if (floored < min) {
32
+ return min;
33
+ }
34
+ if (floored > max) {
35
+ return max;
36
+ }
37
+ return floored;
38
+ }
39
+ function createDeepSeekSessionPowError(params) {
40
+ const error = new Error(params.message);
41
+ error.code = params.code;
42
+ if (typeof params.statusCode === 'number') {
43
+ error.statusCode = params.statusCode;
44
+ error.status = params.statusCode;
45
+ }
46
+ if (typeof params.upstreamCode === 'string' && params.upstreamCode.trim()) {
47
+ error.upstreamCode = params.upstreamCode.trim();
48
+ }
49
+ if (params.details) {
50
+ error.details = params.details;
51
+ }
52
+ return error;
53
+ }
54
+ function safeParseJson(raw) {
55
+ try {
56
+ return JSON.parse(raw);
57
+ }
58
+ catch {
59
+ return undefined;
60
+ }
61
+ }
62
+ function resolveBuiltInPowSolverPath() {
63
+ const currentDir = path.dirname(fileURLToPath(import.meta.url));
64
+ const candidates = [
65
+ path.resolve(currentDir, '../../../scripts/deepseek/pow-solver.mjs'),
66
+ path.resolve(currentDir, '../../../../scripts/deepseek/pow-solver.mjs'),
67
+ path.resolve(process.cwd(), 'dist/scripts/deepseek/pow-solver.mjs'),
68
+ path.resolve(process.cwd(), 'scripts/deepseek/pow-solver.mjs')
69
+ ];
70
+ return firstExistingPath(candidates);
71
+ }
72
+ function resolveBuiltInPowWasmPath() {
73
+ const currentDir = path.dirname(fileURLToPath(import.meta.url));
74
+ const candidates = [
75
+ path.resolve(currentDir, '../../../scripts/deepseek/sha3_wasm_bg.7b9ca65ddd.wasm'),
76
+ path.resolve(currentDir, '../../../../scripts/deepseek/sha3_wasm_bg.7b9ca65ddd.wasm'),
77
+ path.resolve(process.cwd(), 'dist/scripts/deepseek/sha3_wasm_bg.7b9ca65ddd.wasm'),
78
+ path.resolve(process.cwd(), 'scripts/deepseek/sha3_wasm_bg.7b9ca65ddd.wasm')
79
+ ];
80
+ return firstExistingPath(candidates);
81
+ }
82
+ function firstExistingPath(candidates) {
83
+ for (const candidate of candidates) {
84
+ try {
85
+ if (fs.existsSync(candidate)) {
86
+ return candidate;
87
+ }
88
+ }
89
+ catch {
90
+ // ignore
91
+ }
92
+ }
93
+ return candidates[0];
94
+ }
95
+ export class DeepSeekSessionPowManager {
96
+ baseUrl;
97
+ createSessionEndpoint;
98
+ createPowEndpoint;
99
+ completionTargetPath;
100
+ timeoutMs;
101
+ powTimeoutMs;
102
+ powMaxAttempts;
103
+ sessionReuseTtlMs;
104
+ solverPath;
105
+ wasmPath;
106
+ fetchImpl;
107
+ solvePowOverride;
108
+ logger;
109
+ logId;
110
+ cachedSession = null;
111
+ constructor(options) {
112
+ this.baseUrl = options.baseUrl.replace(/\/+$/, '');
113
+ this.createSessionEndpoint = normalizeString(options.createSessionEndpoint) || DEFAULT_CREATE_SESSION_ENDPOINT;
114
+ this.createPowEndpoint = normalizeString(options.createPowEndpoint) || DEFAULT_CREATE_POW_ENDPOINT;
115
+ this.completionTargetPath = normalizeString(options.completionTargetPath) || DEFAULT_COMPLETION_TARGET_PATH;
116
+ this.timeoutMs = normalizeInteger(options.timeoutMs, DEFAULT_TIMEOUT_MS, 1_000, 300_000);
117
+ this.powTimeoutMs = normalizeInteger(options.powTimeoutMs, DEFAULT_POW_TIMEOUT_MS, 1_000, 300_000);
118
+ this.powMaxAttempts = normalizeInteger(options.powMaxAttempts, DEFAULT_POW_MAX_ATTEMPTS, 1, 10);
119
+ this.sessionReuseTtlMs = normalizeInteger(options.sessionReuseTtlMs, DEFAULT_SESSION_REUSE_TTL_MS, 1_000, 24 * 60 * 60 * 1000);
120
+ this.solverPath =
121
+ normalizeString(options.solverPath) ||
122
+ normalizeString(process.env.ROUTECODEX_DEEPSEEK_POW_SOLVER) ||
123
+ resolveBuiltInPowSolverPath();
124
+ this.wasmPath =
125
+ normalizeString(options.wasmPath) ||
126
+ normalizeString(process.env.ROUTECODEX_DEEPSEEK_POW_WASM) ||
127
+ resolveBuiltInPowWasmPath();
128
+ this.fetchImpl = options.fetchImpl || fetch;
129
+ this.solvePowOverride = options.solvePow;
130
+ this.logger = options.logger;
131
+ this.logId = normalizeString(options.logId) || 'provider:deepseek';
132
+ }
133
+ async ensureChatSession(authHeaders) {
134
+ const now = Date.now();
135
+ if (this.cachedSession && this.cachedSession.expiresAt > now) {
136
+ return this.cachedSession.sessionId;
137
+ }
138
+ const response = await this.postJson(this.createSessionEndpoint, {
139
+ agent: 'chat'
140
+ }, authHeaders, DEEPSEEK_ERROR_CODES.SESSION_CREATE_FAILED);
141
+ const sessionId = normalizeString(response.data?.biz_data?.id);
142
+ if (!sessionId) {
143
+ throw createDeepSeekSessionPowError({
144
+ code: DEEPSEEK_ERROR_CODES.SESSION_CREATE_FAILED,
145
+ message: 'DeepSeek session create returned empty session id',
146
+ statusCode: 502,
147
+ details: {
148
+ response
149
+ }
150
+ });
151
+ }
152
+ this.cachedSession = {
153
+ sessionId,
154
+ expiresAt: now + this.sessionReuseTtlMs
155
+ };
156
+ return sessionId;
157
+ }
158
+ async createPowResponse(authHeaders) {
159
+ let lastError = undefined;
160
+ for (let attempt = 1; attempt <= this.powMaxAttempts; attempt += 1) {
161
+ try {
162
+ const challengeResponse = await this.postJson(this.createPowEndpoint, {
163
+ target_path: this.completionTargetPath
164
+ }, authHeaders, DEEPSEEK_ERROR_CODES.POW_CHALLENGE_FAILED);
165
+ const challenge = challengeResponse.data?.biz_data?.challenge;
166
+ const normalizedChallenge = this.normalizeChallenge(challenge);
167
+ const answer = await this.solvePowChallenge(normalizedChallenge);
168
+ const payload = {
169
+ algorithm: normalizedChallenge.algorithm,
170
+ challenge: normalizedChallenge.challenge,
171
+ salt: normalizedChallenge.salt,
172
+ answer,
173
+ signature: normalizedChallenge.signature,
174
+ target_path: normalizedChallenge.targetPath
175
+ };
176
+ return Buffer.from(JSON.stringify(payload), 'utf8').toString('base64').trim();
177
+ }
178
+ catch (error) {
179
+ lastError = error;
180
+ this.log('deepseek-pow-attempt-failed', {
181
+ attempt,
182
+ message: error instanceof Error ? error.message : String(error)
183
+ });
184
+ }
185
+ }
186
+ if (lastError instanceof Error && lastError.code) {
187
+ throw lastError;
188
+ }
189
+ throw createDeepSeekSessionPowError({
190
+ code: DEEPSEEK_ERROR_CODES.POW_SOLVE_FAILED,
191
+ message: `DeepSeek PoW failed after ${this.powMaxAttempts} attempts`,
192
+ statusCode: 502,
193
+ details: {
194
+ error: lastError instanceof Error ? lastError.message : String(lastError)
195
+ }
196
+ });
197
+ }
198
+ async cleanup() {
199
+ this.cachedSession = null;
200
+ }
201
+ normalizeChallenge(challenge) {
202
+ const algorithm = normalizeString(challenge?.algorithm);
203
+ const challengeToken = normalizeString(challenge?.challenge);
204
+ const salt = normalizeString(challenge?.salt);
205
+ const signature = normalizeString(challenge?.signature);
206
+ const targetPath = normalizeString(challenge?.target_path) || this.completionTargetPath;
207
+ const difficulty = normalizeInteger(challenge?.difficulty, 144_000, 1, 10_000_000);
208
+ const expireAt = normalizeInteger(challenge?.expire_at, Date.now() + 3_600_000, 1, 99_999_999_999_999);
209
+ if (!algorithm || !challengeToken || !salt || !signature) {
210
+ throw createDeepSeekSessionPowError({
211
+ code: DEEPSEEK_ERROR_CODES.POW_CHALLENGE_FAILED,
212
+ message: 'DeepSeek PoW challenge payload is invalid',
213
+ statusCode: 502,
214
+ details: {
215
+ challenge
216
+ }
217
+ });
218
+ }
219
+ return {
220
+ algorithm,
221
+ challenge: challengeToken,
222
+ salt,
223
+ difficulty,
224
+ expireAt,
225
+ signature,
226
+ targetPath
227
+ };
228
+ }
229
+ async postJson(endpoint, body, authHeaders, errorCode) {
230
+ const controller = new AbortController();
231
+ const timeoutHandle = setTimeout(() => controller.abort(), this.timeoutMs);
232
+ try {
233
+ const response = await this.fetchImpl(this.joinUrl(endpoint), {
234
+ method: 'POST',
235
+ headers: {
236
+ ...authHeaders,
237
+ Accept: 'application/json',
238
+ 'Content-Type': 'application/json'
239
+ },
240
+ body: JSON.stringify(body),
241
+ signal: controller.signal
242
+ });
243
+ const responseText = await response.text();
244
+ const parsed = safeParseJson(responseText);
245
+ if (!response.ok) {
246
+ throw createDeepSeekSessionPowError({
247
+ code: errorCode,
248
+ message: `DeepSeek endpoint ${endpoint} failed with HTTP ${response.status}`,
249
+ statusCode: response.status,
250
+ upstreamCode: parsed?.code !== undefined ? String(parsed.code) : undefined,
251
+ details: {
252
+ endpoint,
253
+ response: parsed,
254
+ responseText: responseText.slice(0, 500)
255
+ }
256
+ });
257
+ }
258
+ const apiCode = typeof parsed?.code === 'number' ? parsed.code : 0;
259
+ if (apiCode !== 0) {
260
+ throw createDeepSeekSessionPowError({
261
+ code: errorCode,
262
+ message: `DeepSeek endpoint ${endpoint} returned code=${apiCode}`,
263
+ statusCode: 502,
264
+ upstreamCode: String(apiCode),
265
+ details: {
266
+ endpoint,
267
+ response: parsed,
268
+ responseText: responseText.slice(0, 500)
269
+ }
270
+ });
271
+ }
272
+ return parsed || {};
273
+ }
274
+ catch (error) {
275
+ if (error instanceof Error && error.name === 'AbortError') {
276
+ throw createDeepSeekSessionPowError({
277
+ code: errorCode,
278
+ message: `DeepSeek endpoint ${endpoint} timeout (${this.timeoutMs}ms)`,
279
+ statusCode: 408
280
+ });
281
+ }
282
+ if (error instanceof Error && error.code) {
283
+ throw error;
284
+ }
285
+ throw createDeepSeekSessionPowError({
286
+ code: errorCode,
287
+ message: `DeepSeek endpoint ${endpoint} request failed: ${error instanceof Error ? error.message : String(error)}`,
288
+ statusCode: 502
289
+ });
290
+ }
291
+ finally {
292
+ clearTimeout(timeoutHandle);
293
+ }
294
+ }
295
+ async solvePowChallenge(input) {
296
+ if (this.solvePowOverride) {
297
+ return await this.solvePowOverride(input);
298
+ }
299
+ if (!this.solverPath) {
300
+ throw createDeepSeekSessionPowError({
301
+ code: DEEPSEEK_ERROR_CODES.POW_SOLVE_FAILED,
302
+ message: 'DeepSeek pow solver path is not configured',
303
+ statusCode: 500
304
+ });
305
+ }
306
+ const payload = {
307
+ algorithm: input.algorithm,
308
+ challenge: input.challenge,
309
+ salt: input.salt,
310
+ difficulty: input.difficulty,
311
+ expireAt: input.expireAt
312
+ };
313
+ if (this.wasmPath) {
314
+ payload.wasmPath = this.wasmPath;
315
+ }
316
+ return await this.spawnPowSolver(payload);
317
+ }
318
+ async spawnPowSolver(payload) {
319
+ return await new Promise((resolve, reject) => {
320
+ const child = spawn(process.execPath, [this.solverPath], {
321
+ stdio: ['pipe', 'pipe', 'pipe']
322
+ });
323
+ let stdout = '';
324
+ let stderr = '';
325
+ let settled = false;
326
+ const finish = (error, value) => {
327
+ if (settled) {
328
+ return;
329
+ }
330
+ settled = true;
331
+ if (timeoutHandle) {
332
+ clearTimeout(timeoutHandle);
333
+ }
334
+ if (error) {
335
+ reject(error);
336
+ return;
337
+ }
338
+ resolve(value);
339
+ };
340
+ const timeoutHandle = setTimeout(() => {
341
+ child.kill('SIGKILL');
342
+ finish(createDeepSeekSessionPowError({
343
+ code: DEEPSEEK_ERROR_CODES.POW_SOLVE_FAILED,
344
+ message: `DeepSeek PoW solver timeout (${this.powTimeoutMs}ms)`,
345
+ statusCode: 408
346
+ }));
347
+ }, this.powTimeoutMs);
348
+ child.stdout.setEncoding('utf8');
349
+ child.stdout.on('data', (chunk) => {
350
+ stdout += chunk;
351
+ });
352
+ child.stderr.setEncoding('utf8');
353
+ child.stderr.on('data', (chunk) => {
354
+ stderr += chunk;
355
+ });
356
+ child.on('error', (error) => {
357
+ finish(createDeepSeekSessionPowError({
358
+ code: DEEPSEEK_ERROR_CODES.POW_SOLVE_FAILED,
359
+ message: `DeepSeek PoW solver spawn failed: ${error.message}`,
360
+ statusCode: 500
361
+ }));
362
+ });
363
+ child.on('close', (code) => {
364
+ if (code !== 0) {
365
+ const stderrSnippet = stderr.trim().slice(0, 500);
366
+ const stdoutSnippet = stdout.trim().slice(0, 200);
367
+ finish(createDeepSeekSessionPowError({
368
+ code: DEEPSEEK_ERROR_CODES.POW_SOLVE_FAILED,
369
+ message: `DeepSeek PoW solver failed (code=${code})` +
370
+ (stderrSnippet ? `: ${stderrSnippet}` : ''),
371
+ statusCode: 502,
372
+ details: {
373
+ solverPath: this.solverPath,
374
+ wasmPath: this.wasmPath,
375
+ stderr: stderrSnippet,
376
+ stdout: stdoutSnippet
377
+ }
378
+ }));
379
+ return;
380
+ }
381
+ const parsed = safeParseJson(stdout.trim());
382
+ const answer = typeof parsed?.answer === 'number'
383
+ ? parsed.answer
384
+ : typeof parsed?.answer === 'string'
385
+ ? Number.parseInt(parsed.answer, 10)
386
+ : NaN;
387
+ if (!Number.isFinite(answer)) {
388
+ finish(createDeepSeekSessionPowError({
389
+ code: DEEPSEEK_ERROR_CODES.POW_SOLVE_FAILED,
390
+ message: 'DeepSeek PoW solver returned invalid answer',
391
+ statusCode: 502,
392
+ details: {
393
+ stdout: stdout.slice(0, 500),
394
+ stderr: stderr.slice(0, 500)
395
+ }
396
+ }));
397
+ return;
398
+ }
399
+ finish(undefined, Math.trunc(answer));
400
+ });
401
+ try {
402
+ child.stdin.write(JSON.stringify(payload));
403
+ child.stdin.end();
404
+ }
405
+ catch (error) {
406
+ finish(createDeepSeekSessionPowError({
407
+ code: DEEPSEEK_ERROR_CODES.POW_SOLVE_FAILED,
408
+ message: `DeepSeek PoW solver stdin failed: ${error instanceof Error ? error.message : String(error)}`,
409
+ statusCode: 500
410
+ }));
411
+ }
412
+ });
413
+ }
414
+ joinUrl(endpoint) {
415
+ const suffix = endpoint.startsWith('/') ? endpoint : `/${endpoint}`;
416
+ return `${this.baseUrl}${suffix}`;
417
+ }
418
+ log(stage, details) {
419
+ this.logger?.logModule?.(this.logId, stage, details);
420
+ }
421
+ }
422
+ //# sourceMappingURL=deepseek-session-pow.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deepseek-session-pow.js","sourceRoot":"","sources":["../../../../src/providers/core/runtime/deepseek-session-pow.ts"],"names":[],"mappings":"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"}
@@ -18,13 +18,10 @@ type DataEnvelope = UnknownObject & {
18
18
  export declare class GeminiCLIHttpProvider extends HttpTransportProvider {
19
19
  constructor(config: OpenAIStandardConfig, dependencies: ModuleDependencies);
20
20
  protected sendRequestInternal(request: UnknownObject): Promise<unknown>;
21
- protected buildHttpRequestBody(request: UnknownObject): UnknownObject;
22
21
  private wrapAntigravityHttpErrorAsResponse;
23
- protected applyStreamModeHeaders(headers: Record<string, string>, wantsSse: boolean): Record<string, string>;
24
22
  protected getBaseUrlCandidates(_context: ProviderContext): string[] | undefined;
25
23
  protected preprocessRequest(request: UnknownObject): Promise<UnknownObject>;
26
24
  protected wantsUpstreamSse(request: UnknownObject, context: ProviderContext): boolean;
27
- protected finalizeRequestHeaders(headers: Record<string, string>, request: UnknownObject): Promise<Record<string, string>>;
28
25
  private extractAntigravityAliasFromRuntime;
29
26
  private getAntigravityHeaderMode;
30
27
  protected postprocessResponse(response: unknown, context: ProviderContext): Promise<UnknownObject>;
@@ -14,7 +14,6 @@ import { HttpTransportProvider } from './http-transport-provider.js';
14
14
  import { cacheAntigravitySessionSignature, extractAntigravityGeminiSessionId, getAntigravityLatestSignatureSessionIdForAlias, lookupAntigravitySessionSignatureEntry } from '../../../modules/llmswitch/bridge.js';
15
15
  import { GeminiCLIProtocolClient } from '../../../client/gemini-cli/gemini-cli-protocol-client.js';
16
16
  import { getDefaultProjectId } from '../../auth/gemini-cli-userinfo-helper.js';
17
- import { resolveAntigravityUserAgent } from '../../auth/antigravity-user-agent.js';
18
17
  import { resolveAntigravityApiBaseCandidates } from '../../auth/antigravity-userinfo-helper.js';
19
18
  // Antigravity transport contract: a stable per-process session seed (plugin-style session semantics).
20
19
  const ANTIGRAVITY_PLUGIN_SESSION_ID = `-${randomUUID()}`;
@@ -56,31 +55,6 @@ export class GeminiCLIHttpProvider extends HttpTransportProvider {
56
55
  this.restoreAntigravityRuntimeSessionId();
57
56
  }
58
57
  }
59
- buildHttpRequestBody(request) {
60
- const built = super.buildHttpRequestBody(request);
61
- // Antigravity-Manager alignment: `action` is an internal transport selector (generate vs stream)
62
- // and must never be forwarded to Cloud Code Assist v1internal JSON bodies.
63
- const stripAction = (node) => {
64
- if (!node || typeof node !== 'object')
65
- return;
66
- if (Array.isArray(node)) {
67
- node.forEach(stripAction);
68
- return;
69
- }
70
- const record = node;
71
- if ('action' in record) {
72
- delete record.action;
73
- }
74
- if (record.request && typeof record.request === 'object') {
75
- stripAction(record.request);
76
- }
77
- if (record.data && typeof record.data === 'object') {
78
- stripAction(record.data);
79
- }
80
- };
81
- stripAction(built);
82
- return built;
83
- }
84
58
  wrapAntigravityHttpErrorAsResponse(error) {
85
59
  const err = error;
86
60
  const status = typeof err?.statusCode === 'number'
@@ -120,16 +94,6 @@ export class GeminiCLIHttpProvider extends HttpTransportProvider {
120
94
  data: errorBody
121
95
  };
122
96
  }
123
- applyStreamModeHeaders(headers, wantsSse) {
124
- if (!this.isAntigravityRuntime()) {
125
- return super.applyStreamModeHeaders(headers, wantsSse);
126
- }
127
- if (this.getAntigravityHeaderMode() === 'minimal') {
128
- return { ...headers, Accept: '*/*' };
129
- }
130
- // Antigravity manager alignment: keep standard SSE Accept header behavior.
131
- return super.applyStreamModeHeaders(headers, wantsSse);
132
- }
133
97
  getBaseUrlCandidates(_context) {
134
98
  if (!this.isAntigravityRuntime()) {
135
99
  return undefined;
@@ -259,42 +223,6 @@ export class GeminiCLIHttpProvider extends HttpTransportProvider {
259
223
  this.applyStreamAction(request, wantsStream);
260
224
  return wantsStream;
261
225
  }
262
- async finalizeRequestHeaders(headers, request) {
263
- const finalized = await super.finalizeRequestHeaders(headers, request);
264
- if (this.isAntigravityRuntime()) {
265
- const headerMode = this.getAntigravityHeaderMode();
266
- const deleteHeaderInsensitive = (key) => {
267
- const target = key.toLowerCase();
268
- for (const k of Object.keys(finalized)) {
269
- if (k.toLowerCase() === target) {
270
- delete finalized[k];
271
- }
272
- }
273
- };
274
- const alias = this.extractAntigravityAliasFromRuntime();
275
- finalized['User-Agent'] = await resolveAntigravityUserAgent({ alias });
276
- // Antigravity-Manager alignment: keep headers minimal (no Google client identifiers).
277
- deleteHeaderInsensitive('x-goog-api-client');
278
- deleteHeaderInsensitive('client-metadata');
279
- deleteHeaderInsensitive('accept-encoding');
280
- deleteHeaderInsensitive('originator');
281
- if (headerMode === 'minimal') {
282
- const record = request;
283
- const reqId = typeof record.requestId === 'string' ? record.requestId : undefined;
284
- if (reqId && reqId.trim()) {
285
- finalized.requestId = reqId;
286
- }
287
- const hasImageAttachment = request?.metadata && (request.metadata.hasImageAttachment === true ||
288
- request.metadata.hasImageAttachment === 'true');
289
- finalized.requestType = hasImageAttachment ? 'image_gen' : 'agent';
290
- }
291
- else {
292
- deleteHeaderInsensitive('requestId');
293
- deleteHeaderInsensitive('requestType');
294
- }
295
- }
296
- return finalized;
297
- }
298
226
  extractAntigravityAliasFromRuntime() {
299
227
  const runtime = this.getCurrentRuntimeMetadata();
300
228
  const candidates = [];