@runfusion/fusion 0.78.0-beta.0 → 0.78.0-beta.1

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 (111) hide show
  1. package/dist/bin.js +256 -297
  2. package/dist/child-process-worker.js +110 -0
  3. package/dist/client/.vite/manifest.json +253 -253
  4. package/dist/client/assets/{AgentDetailView-F5yFQTe3.js → AgentDetailView-CKKjgZYu.js} +1 -1
  5. package/dist/client/assets/{AgentPermissionPolicyEditor-CwkekUNJ.js → AgentPermissionPolicyEditor-CTNl18d-.js} +1 -1
  6. package/dist/client/assets/{AgentsView-CUTYeSRc.js → AgentsView-BCek5wDA.js} +3 -3
  7. package/dist/client/assets/{CommandCenter-tf7tktC6.js → CommandCenter-QHbIiB4r.js} +1 -1
  8. package/dist/client/assets/{DevServerView-C48L7Nt4.js → DevServerView-BbkTkZ8b.js} +1 -1
  9. package/dist/client/assets/{DirectoryPicker-XA4GSUS6.js → DirectoryPicker-DhIrLnTo.js} +1 -1
  10. package/dist/client/assets/{DocumentsView-SQRO_Tkz.js → DocumentsView-D5xzFr0G.js} +1 -1
  11. package/dist/client/assets/{EvalsView-B8Qbvr6H.js → EvalsView-B1hLEQ0m.js} +1 -1
  12. package/dist/client/assets/{ExperimentalAgentOnboardingModal-BmzJDOjP.js → ExperimentalAgentOnboardingModal-s1HNyu3E.js} +1 -1
  13. package/dist/client/assets/{GoalsView-BSl92XVC.js → GoalsView-NDIUSf5u.js} +1 -1
  14. package/dist/client/assets/{InsightsView-DWeMfYaX.js → InsightsView-fvBsZuUm.js} +1 -1
  15. package/dist/client/assets/{MemoryView-BKvCIQXk.js → MemoryView-JVb3eI7s.js} +1 -1
  16. package/dist/client/assets/{PatchnodeView-6eNVVNxB.js → PatchnodeView-KKLK7fwV.js} +1 -1
  17. package/dist/client/assets/{PiExtensionsManager-Bxrd7fTF.js → PiExtensionsManager-CuOY-6G7.js} +1 -1
  18. package/dist/client/assets/{PluginManager-BgZYVGxK.js → PluginManager-BkJRgZYL.js} +1 -1
  19. package/dist/client/assets/{PullRequestView-CrwAiMeQ.js → PullRequestView-BiUOpueN.js} +1 -1
  20. package/dist/client/assets/{ReportModal-DKuvvz-d.js → ReportModal-B-TQI9XZ.js} +1 -1
  21. package/dist/client/assets/{ResearchView-D2AUHxxe.js → ResearchView-DKZqL63I.js} +1 -1
  22. package/dist/client/assets/{SecretsView-Bd6rHdEA.js → SecretsView-BOHQF8RA.js} +1 -1
  23. package/dist/client/assets/{SettingsModal-BuzQA1w9.js → SettingsModal-Bh3QsNGH.js} +1 -1
  24. package/dist/client/assets/{SettingsModal-c_QYi5Hk.js → SettingsModal-_OQ2JnaZ.js} +3 -3
  25. package/dist/client/assets/{SettingsTextareaRow-C2voKaUL.js → SettingsTextareaRow-fursBeF1.js} +1 -1
  26. package/dist/client/assets/{SetupWizardModal-BL9iursd.js → SetupWizardModal-BXxSYb8s.js} +2 -2
  27. package/dist/client/assets/{SkillsView-BkDcle_7.js → SkillsView-DtFG-slt.js} +1 -1
  28. package/dist/client/assets/{WorkflowNodeEditor-aH7i-wxO.js → WorkflowNodeEditor-Qz5oEngG.js} +1 -1
  29. package/dist/client/assets/{agent-import-generation-B-JXVB4V.js → agent-import-generation-6hB5_Mi4.js} +1 -1
  30. package/dist/client/assets/{agentsOrgChartLayout-GnjR7yPV.js → agentsOrgChartLayout-F2rpeHrk.js} +1 -1
  31. package/dist/client/assets/{architectureDiagram-3BPJPVTR-CgvOamBA.js → architectureDiagram-3BPJPVTR-C7I3HvTF.js} +1 -1
  32. package/dist/client/assets/{blockDiagram-GPEHLZMM--2sl4QW3.js → blockDiagram-GPEHLZMM-YqlQ3vXA.js} +1 -1
  33. package/dist/client/assets/{c4Diagram-AAUBKEIU-Cm58o24S.js → c4Diagram-AAUBKEIU-CN5D4Un8.js} +1 -1
  34. package/dist/client/assets/channel-XgphT4tm.js +1 -0
  35. package/dist/client/assets/{chunk-2J33WTMH-D-PKEUwK.js → chunk-2J33WTMH-CSd5Zcsp.js} +1 -1
  36. package/dist/client/assets/{chunk-4BX2VUAB-DptN1WOY.js → chunk-4BX2VUAB-_XbJvpxj.js} +1 -1
  37. package/dist/client/assets/{chunk-55IACEB6-Bdg7vFkj.js → chunk-55IACEB6-DuOlDEOD.js} +1 -1
  38. package/dist/client/assets/{chunk-727SXJPM-CC8OdxMA.js → chunk-727SXJPM-LeGRGeOO.js} +1 -1
  39. package/dist/client/assets/{chunk-AQP2D5EJ-D4xdnSra.js → chunk-AQP2D5EJ-DHR6-2QF.js} +1 -1
  40. package/dist/client/assets/{chunk-FMBD7UC4-CdWGBfv5.js → chunk-FMBD7UC4-CQGB9bi6.js} +1 -1
  41. package/dist/client/assets/{chunk-ND2GUHAM-B4ZCRkBn.js → chunk-ND2GUHAM-CVw67PbT.js} +1 -1
  42. package/dist/client/assets/{chunk-QZHKN3VN-9dx2GI4M.js → chunk-QZHKN3VN-BQynlcS3.js} +1 -1
  43. package/dist/client/assets/classDiagram-4FO5ZUOK-CAIf1xYG.js +1 -0
  44. package/dist/client/assets/classDiagram-v2-Q7XG4LA2-CAIf1xYG.js +1 -0
  45. package/dist/client/assets/{cose-bilkent-S5V4N54A-B0zZL-NY.js → cose-bilkent-S5V4N54A-CLUnYjvM.js} +1 -1
  46. package/dist/client/assets/{dagre-BM42HDAG-B_Do66SM.js → dagre-BM42HDAG-Abrs3MqQ.js} +1 -1
  47. package/dist/client/assets/{dashboard-view-BHOohkzs.js → dashboard-view-Be76iqxq.js} +1 -1
  48. package/dist/client/assets/{dashboard-view-B83wNhDz.js → dashboard-view-BiXS6oR6.js} +1 -1
  49. package/dist/client/assets/{dashboard-view-DspMFFWO.js → dashboard-view-Bz7m0h4g.js} +1 -1
  50. package/dist/client/assets/{dashboard-view-C2_-Yhb9.js → dashboard-view-CniOJNmc.js} +1 -1
  51. package/dist/client/assets/{diagram-2AECGRRQ-U4YtQjm-.js → diagram-2AECGRRQ-yDee1jMn.js} +1 -1
  52. package/dist/client/assets/{diagram-5GNKFQAL-BenyNml8.js → diagram-5GNKFQAL-DrBYLCt7.js} +1 -1
  53. package/dist/client/assets/{diagram-KO2AKTUF-Do_JVRGt.js → diagram-KO2AKTUF-D0yQNb9q.js} +1 -1
  54. package/dist/client/assets/{diagram-LMA3HP47-D79XVYjP.js → diagram-LMA3HP47-1QhC1CRC.js} +1 -1
  55. package/dist/client/assets/{diagram-OG6HWLK6-yq039c2G.js → diagram-OG6HWLK6-DgDBgq4N.js} +1 -1
  56. package/dist/client/assets/{erDiagram-TEJ5UH35-BrQvIAe5.js → erDiagram-TEJ5UH35-CAOoSYWa.js} +1 -1
  57. package/dist/client/assets/{flowDiagram-I6XJVG4X-DqHzxLVv.js → flowDiagram-I6XJVG4X-BWGm9BTF.js} +1 -1
  58. package/dist/client/assets/{folder-open-BTCQ-Yrg.js → folder-open-DNotglxk.js} +1 -1
  59. package/dist/client/assets/{ganttDiagram-6RSMTGT7-C85JqMRZ.js → ganttDiagram-6RSMTGT7-DV3fxLnP.js} +1 -1
  60. package/dist/client/assets/{gitGraphDiagram-PVQCEYII-CXyGA4Mv.js → gitGraphDiagram-PVQCEYII-B43Tpu-I.js} +1 -1
  61. package/dist/client/assets/{index-CskjhVfZ.js → index-irIRFfHe.js} +9 -9
  62. package/dist/client/assets/{infoDiagram-5YYISTIA-CLpWU4w-.js → infoDiagram-5YYISTIA-B5_EV41J.js} +1 -1
  63. package/dist/client/assets/{ishikawaDiagram-YF4QCWOH-D9rVtAJ0.js → ishikawaDiagram-YF4QCWOH-UWtceozx.js} +1 -1
  64. package/dist/client/assets/{journeyDiagram-JHISSGLW-B-kS075N.js → journeyDiagram-JHISSGLW-BWgiil_h.js} +1 -1
  65. package/dist/client/assets/{kanban-definition-UN3LZRKU-BUQCN9L2.js → kanban-definition-UN3LZRKU-BeBbxDbS.js} +1 -1
  66. package/dist/client/assets/{mermaid.core-32vhY4u8.js → mermaid.core-C8O9FTIS.js} +4 -4
  67. package/dist/client/assets/{mindmap-definition-RKZ34NQL-DL40GPWT.js → mindmap-definition-RKZ34NQL-BxhJ2wAd.js} +1 -1
  68. package/dist/client/assets/{pieDiagram-4H26LBE5-CXxmrMuV.js → pieDiagram-4H26LBE5-CAh5rh-F.js} +1 -1
  69. package/dist/client/assets/{puzzle-DdQH0Z8S.js → puzzle-BfQF0hVf.js} +1 -1
  70. package/dist/client/assets/{quadrantDiagram-W4KKPZXB-DZgOOng4.js → quadrantDiagram-W4KKPZXB-7ElVD6Fd.js} +1 -1
  71. package/dist/client/assets/{requirementDiagram-4Y6WPE33-BCfTIB0E.js → requirementDiagram-4Y6WPE33-C3KD_ohK.js} +1 -1
  72. package/dist/client/assets/{sankeyDiagram-5OEKKPKP-eSYlJN-l.js → sankeyDiagram-5OEKKPKP-C3NK4O0L.js} +1 -1
  73. package/dist/client/assets/{sequenceDiagram-3UESZ5HK-DCAkZxHB.js → sequenceDiagram-3UESZ5HK-DtPoahx5.js} +1 -1
  74. package/dist/client/assets/{standing-instructions-template-BvQI812r.js → standing-instructions-template-udDML8F5.js} +1 -1
  75. package/dist/client/assets/{stateDiagram-AJRCARHV-BGvyDonD.js → stateDiagram-AJRCARHV-Dpbha0aZ.js} +1 -1
  76. package/dist/client/assets/{stateDiagram-v2-BHNVJYJU-j7LwsCeB.js → stateDiagram-v2-BHNVJYJU-D0vZJ52D.js} +1 -1
  77. package/dist/client/assets/{timeline-definition-PNZ67QCA-f8eHjODP.js → timeline-definition-PNZ67QCA-DQAutOqO.js} +1 -1
  78. package/dist/client/assets/{upload-Drsmek6w.js → upload-6MpPDZ7Z.js} +1 -1
  79. package/dist/client/assets/{users-B1o2bgbe.js → users-fWJdlvnw.js} +1 -1
  80. package/dist/client/assets/{vennDiagram-CIIHVFJN-g6uky6m8.js → vennDiagram-CIIHVFJN-w2ITZujg.js} +1 -1
  81. package/dist/client/assets/{wardley-L42UT6IY-kTK0gImn.js → wardley-L42UT6IY-BoWaniEr.js} +1 -1
  82. package/dist/client/assets/{wardleyDiagram-YWT4CUSO-DhSfoqYr.js → wardleyDiagram-YWT4CUSO-CPnGK8wK.js} +1 -1
  83. package/dist/client/assets/{xychartDiagram-2RQKCTM6-ehh7Xi08.js → xychartDiagram-2RQKCTM6-Pff19cMs.js} +1 -1
  84. package/dist/client/index.html +1 -1
  85. package/dist/client/version.json +1 -1
  86. package/dist/droid-cli/package.json +1 -1
  87. package/dist/extension.js +110 -0
  88. package/dist/pi-claude-cli/package.json +5 -5
  89. package/dist/plugins/fusion-plugin-acp-runtime/package.json +1 -1
  90. package/dist/plugins/fusion-plugin-claude-runtime/package.json +1 -1
  91. package/dist/plugins/fusion-plugin-cli-printing-press/package.json +1 -1
  92. package/dist/plugins/fusion-plugin-compound-engineering/package.json +1 -1
  93. package/dist/plugins/fusion-plugin-cursor-runtime/package.json +1 -1
  94. package/dist/plugins/fusion-plugin-dependency-graph/package.json +1 -1
  95. package/dist/plugins/fusion-plugin-droid-runtime/bundled.js +2 -2
  96. package/dist/plugins/fusion-plugin-droid-runtime/package.json +1 -1
  97. package/dist/plugins/fusion-plugin-grok-runtime/package.json +1 -1
  98. package/dist/plugins/fusion-plugin-hermes-runtime/package.json +1 -1
  99. package/dist/plugins/fusion-plugin-linear-import/package.json +1 -1
  100. package/dist/plugins/fusion-plugin-omp-runtime/package.json +1 -1
  101. package/dist/plugins/fusion-plugin-openclaw-runtime/package.json +1 -1
  102. package/dist/plugins/fusion-plugin-paperclip-runtime/package.json +1 -1
  103. package/dist/plugins/fusion-plugin-quality/package.json +1 -1
  104. package/dist/plugins/fusion-plugin-reports/package.json +1 -1
  105. package/dist/plugins/fusion-plugin-roadmap/package.json +1 -1
  106. package/dist/plugins/fusion-plugin-todos/package.json +1 -1
  107. package/dist/plugins/fusion-plugin-whatsapp-chat/package.json +1 -1
  108. package/package.json +3 -3
  109. package/dist/client/assets/channel-Dlp-nVvN.js +0 -1
  110. package/dist/client/assets/classDiagram-4FO5ZUOK-Co98EdaQ.js +0 -1
  111. package/dist/client/assets/classDiagram-v2-Q7XG4LA2-Co98EdaQ.js +0 -1
package/dist/bin.js CHANGED
@@ -26851,6 +26851,49 @@ var init_anthropic_models = __esm({
26851
26851
  }
26852
26852
  });
26853
26853
 
26854
+ // ../core/src/ai/claude-code-identity.ts
26855
+ function parseClaudeCodeVersion(value2) {
26856
+ const match = /^(\d+)\.(\d+)\.(\d+)$/.exec(value2);
26857
+ if (!match) return void 0;
26858
+ return [Number(match[1]), Number(match[2]), Number(match[3])];
26859
+ }
26860
+ function compareClaudeCodeVersions(a, b3) {
26861
+ const parsedA = parseClaudeCodeVersion(a);
26862
+ const parsedB = parseClaudeCodeVersion(b3);
26863
+ if (!parsedA || !parsedB) {
26864
+ throw new Error("Claude Code versions must use major.minor.patch format");
26865
+ }
26866
+ for (let index3 = 0; index3 < parsedA.length; index3 += 1) {
26867
+ const difference = parsedA[index3] - parsedB[index3];
26868
+ if (difference !== 0) return difference;
26869
+ }
26870
+ return 0;
26871
+ }
26872
+ function resolveClaudeCodeClientVersion(env = process.env, onWarn = () => {
26873
+ }) {
26874
+ const override = env[CLAUDE_CODE_CLIENT_VERSION_ENV];
26875
+ if (override === void 0) return CLAUDE_CODE_IMPERSONATED_VERSION;
26876
+ if (parseClaudeCodeVersion(override)) return override;
26877
+ onWarn(`Ignoring malformed ${CLAUDE_CODE_CLIENT_VERSION_ENV}; using the bundled Fusion Claude Code identity version.`);
26878
+ return CLAUDE_CODE_IMPERSONATED_VERSION;
26879
+ }
26880
+ function buildAnthropicClaudeCodeIdentityHeaders(input) {
26881
+ if (input.providerId === void 0 || toExecutionModelProviderId(input.providerId) !== ANTHROPIC_PROVIDER_ID || !input.apiKey?.includes("sk-ant-oat")) return {};
26882
+ return { "user-agent": `claude-cli/${resolveClaudeCodeClientVersion(input.env, input.onWarn)}` };
26883
+ }
26884
+ var CLAUDE_CODE_IMPERSONATED_VERSION, CLAUDE_CODE_CLIENT_VERSION_ENV, ANTHROPIC_MODEL_MIN_CLAUDE_CODE_VERSION;
26885
+ var init_claude_code_identity = __esm({
26886
+ "../core/src/ai/claude-code-identity.ts"() {
26887
+ "use strict";
26888
+ init_anthropic_models();
26889
+ CLAUDE_CODE_IMPERSONATED_VERSION = "2.1.251";
26890
+ CLAUDE_CODE_CLIENT_VERSION_ENV = "FUSION_ANTHROPIC_CLAUDE_CODE_VERSION";
26891
+ ANTHROPIC_MODEL_MIN_CLAUDE_CODE_VERSION = {
26892
+ [CLAUDE_FABLE_5_1_MODEL_ID]: "2.1.251"
26893
+ };
26894
+ }
26895
+ });
26896
+
26854
26897
  // ../core/src/ai/openai-models.ts
26855
26898
  function getOpenAiCodexOAuthProvider(registryWithState, registeredProvider) {
26856
26899
  return registeredProvider?.oauth ?? registryWithState.authStorage?.getOAuthProviders?.().find((provider) => provider.id === OPENAI_CODEX_PROVIDER_ID);
@@ -112432,6 +112475,42 @@ var init_model_pricing = __esm({
112432
112475
  cacheWritePer1M: 1.5,
112433
112476
  source: "openai.com/api/pricing"
112434
112477
  },
112478
+ /*
112479
+ * FNXC:ModelCatalog 2026-09-02-22:06:
112480
+ * FN-9244 prices Muse Spark only where Fusion exposes a credentialed provider: OpenRouter
112481
+ * and opencode-go. Plain opencode and vercel-ai-gateway remain intentionally unpriced because
112482
+ * Fusion cannot record their usage today; do not add a fabricated zero rate for the free row.
112483
+ * These are additive keys, not baseline rate edits, so pricingAsOf stays unchanged.
112484
+ */
112485
+ // ── Muse Spark ───────────────────────────────────────────────────────
112486
+ "openrouter:meta/muse-spark-1.1": {
112487
+ inputPer1M: 1.25,
112488
+ outputPer1M: 4.25,
112489
+ cacheReadPer1M: 0.15,
112490
+ cacheWritePer1M: 0,
112491
+ source: "@earendil-works/pi-ai@0.84.4 models/openrouter.ts"
112492
+ },
112493
+ "openrouter:meta/muse-spark-1.2": {
112494
+ inputPer1M: 1.25,
112495
+ outputPer1M: 4.25,
112496
+ cacheReadPer1M: 0.15,
112497
+ cacheWritePer1M: 0,
112498
+ source: "@earendil-works/pi-ai@0.84.4 models/openrouter.ts"
112499
+ },
112500
+ "openrouter:meta/muse-spark-1.2-contributor": {
112501
+ inputPer1M: 0.1,
112502
+ outputPer1M: 0.2,
112503
+ cacheReadPer1M: 2e-3,
112504
+ cacheWritePer1M: 0,
112505
+ source: "@earendil-works/pi-ai@0.84.4 models/openrouter.ts"
112506
+ },
112507
+ "opencode-go:muse-spark-1.2-contributor": {
112508
+ inputPer1M: 0.1,
112509
+ outputPer1M: 0.2,
112510
+ cacheReadPer1M: 2e-3,
112511
+ cacheWritePer1M: 0,
112512
+ source: "@earendil-works/pi-ai@0.84.4 models/opencode-go.ts"
112513
+ },
112435
112514
  // ── Google Gemini ───────────────────────────────────────────────────
112436
112515
  // No distinct cache-write token charge → cacheWrite = input rate.
112437
112516
  "google:gemini-2.5-pro": {
@@ -140204,6 +140283,7 @@ __export(src_exports, {
140204
140283
  AGENT_VALID_TRANSITIONS: () => AGENT_VALID_TRANSITIONS,
140205
140284
  ANTHROPIC_API_KEY_PROVIDER_ID: () => ANTHROPIC_API_KEY_PROVIDER_ID,
140206
140285
  ANTHROPIC_AUTH_PREFERENCES: () => ANTHROPIC_AUTH_PREFERENCES,
140286
+ ANTHROPIC_MODEL_MIN_CLAUDE_CODE_VERSION: () => ANTHROPIC_MODEL_MIN_CLAUDE_CODE_VERSION,
140207
140287
  ANTHROPIC_PROVIDER_ID: () => ANTHROPIC_PROVIDER_ID,
140208
140288
  ANTHROPIC_SUBSCRIPTION_PROVIDER_ID: () => ANTHROPIC_SUBSCRIPTION_PROVIDER_ID,
140209
140289
  APPROVAL_REQUEST_AUDIT_EVENT_TYPES: () => APPROVAL_REQUEST_AUDIT_EVENT_TYPES,
@@ -140272,6 +140352,8 @@ __export(src_exports, {
140272
140352
  BranchWriteProvenanceError: () => BranchWriteProvenanceError,
140273
140353
  CENTRAL_BACKUP_SCHEMAS: () => CENTRAL_BACKUP_SCHEMAS,
140274
140354
  CHAT_FOCUS_FLAG: () => CHAT_FOCUS_FLAG,
140355
+ CLAUDE_CODE_CLIENT_VERSION_ENV: () => CLAUDE_CODE_CLIENT_VERSION_ENV,
140356
+ CLAUDE_CODE_IMPERSONATED_VERSION: () => CLAUDE_CODE_IMPERSONATED_VERSION,
140275
140357
  CLAUDE_FABLE_5_1_MODEL_ID: () => CLAUDE_FABLE_5_1_MODEL_ID,
140276
140358
  CLAUDE_SONNET_5_MODEL_ID: () => CLAUDE_SONNET_5_MODEL_ID,
140277
140359
  CLEAN_COMPLETION_MARKERS: () => CLEAN_COMPLETION_MARKERS,
@@ -140849,6 +140931,7 @@ __export(src_exports, {
140849
140931
  attachFixTaskAsync: () => attachFixTaskAsync,
140850
140932
  autoMergeGateReason: () => autoMergeGateReason,
140851
140933
  boundMissionEventReason: () => boundMissionEventReason,
140934
+ buildAnthropicClaudeCodeIdentityHeaders: () => buildAnthropicClaudeCodeIdentityHeaders,
140852
140935
  buildAutoPauseClearPatch: () => buildAutoPauseClearPatch,
140853
140936
  buildBackupScheduleStatus: () => buildBackupScheduleStatus,
140854
140937
  buildBootstrapPrompt: () => buildBootstrapPrompt,
@@ -140949,6 +141032,7 @@ __export(src_exports, {
140949
141032
  columnHasFlag: () => columnHasFlag,
140950
141033
  columnsWithFlag: () => columnsWithFlag,
140951
141034
  compactMemoryWithAi: () => compactMemoryWithAi,
141035
+ compareClaudeCodeVersions: () => compareClaudeCodeVersions,
140952
141036
  compareMeshWriteReplayOrder: () => compareMeshWriteReplayOrder,
140953
141037
  compareTaskIdNumeric: () => compareTaskIdNumeric,
140954
141038
  compareTaskPriority: () => compareTaskPriority,
@@ -141537,6 +141621,7 @@ __export(src_exports, {
141537
141621
  notifyOperatorOfTaskRecommendations: () => notifyOperatorOfTaskRecommendations,
141538
141622
  overseerAdviceSeverityRank: () => overseerAdviceSeverityRank,
141539
141623
  parseAgentManifest: () => parseAgentManifest,
141624
+ parseClaudeCodeVersion: () => parseClaudeCodeVersion,
141540
141625
  parseCompanyArchive: () => parseCompanyArchive,
141541
141626
  parseCompanyDirectory: () => parseCompanyDirectory,
141542
141627
  parseCompanyManifest: () => parseCompanyManifest,
@@ -141685,6 +141770,7 @@ __export(src_exports, {
141685
141770
  resolveBackendWithOptions: () => resolveBackendWithOptions,
141686
141771
  resolveBackupSettingsMigrationConflict: () => resolveBackupSettingsMigrationConflict,
141687
141772
  resolveCapacityPoolId: () => resolveCapacityPoolId,
141773
+ resolveClaudeCodeClientVersion: () => resolveClaudeCodeClientVersion,
141688
141774
  resolveColumnAdjacency: () => resolveColumnAdjacency,
141689
141775
  resolveColumnAgentBinding: () => resolveColumnAgentBinding,
141690
141776
  resolveColumnCapacity: () => resolveColumnCapacity,
@@ -142045,6 +142131,7 @@ var init_src2 = __esm({
142045
142131
  init_branch_assignment();
142046
142132
  init_custom_provider_key();
142047
142133
  init_anthropic_models();
142134
+ init_claude_code_identity();
142048
142135
  init_openai_models();
142049
142136
  init_update_automation();
142050
142137
  init_update_management();
@@ -179156,6 +179243,28 @@ function attachSessionRoutingHeaders(modelRuntime, sessionId) {
179156
179243
  } : void 0;
179157
179244
  });
179158
179245
  }
179246
+ function attachAnthropicClaudeCodeIdentityHeaders(modelRuntime) {
179247
+ const runtimeWithAuth = modelRuntime;
179248
+ if (typeof runtimeWithAuth.getAuth !== "function") {
179249
+ piLog.warn("attachAnthropicClaudeCodeIdentityHeaders: modelRuntime.getAuth missing; skipping Claude Code identity header wiring");
179250
+ return;
179251
+ }
179252
+ const resolveAuth = modelRuntime.getAuth.bind(modelRuntime);
179253
+ modelRuntime.getAuth = (async (providerOrModel, overrides2) => {
179254
+ const result2 = await resolveAuth(providerOrModel, overrides2);
179255
+ if (!result2) return void 0;
179256
+ const providerId = typeof providerOrModel === "string" ? providerOrModel : providerOrModel?.provider;
179257
+ const identityHeaders = buildAnthropicClaudeCodeIdentityHeaders({
179258
+ providerId,
179259
+ apiKey: result2.auth.apiKey,
179260
+ onWarn: (message) => piLog.warn(message)
179261
+ });
179262
+ return {
179263
+ ...result2,
179264
+ auth: { ...result2.auth, headers: { ...result2.auth.headers, ...identityHeaders } }
179265
+ };
179266
+ });
179267
+ }
179159
179268
  function withMcpPromptOptions(promptOptions, mcpServers) {
179160
179269
  if (!mcpServers || mcpServers.length === 0) return promptOptions;
179161
179270
  if (promptOptions && typeof promptOptions === "object" && !Array.isArray(promptOptions)) {
@@ -179376,6 +179485,7 @@ async function createPiAgentSessionRaw(options) {
179376
179485
  if (sessionRoutingId) {
179377
179486
  attachSessionRoutingHeaders(modelRuntime, sessionRoutingId);
179378
179487
  }
179488
+ attachAnthropicClaudeCodeIdentityHeaders(modelRuntime);
179379
179489
  const createSessionWithModel = async (modelOverride) => {
179380
179490
  let mcpToolset;
179381
179491
  const allowReadonlyMcpTools = options.allowMcpToolsInReadonly === true;
@@ -347473,9 +347583,9 @@ var require_balanced_match = __commonJS({
347473
347583
  }
347474
347584
  });
347475
347585
 
347476
- // ../../node_modules/.pnpm/brace-expansion@2.0.3/node_modules/brace-expansion/index.js
347586
+ // ../../node_modules/.pnpm/brace-expansion@2.1.4/node_modules/brace-expansion/index.js
347477
347587
  var require_brace_expansion = __commonJS({
347478
- "../../node_modules/.pnpm/brace-expansion@2.0.3/node_modules/brace-expansion/index.js"(exports, module) {
347588
+ "../../node_modules/.pnpm/brace-expansion@2.1.4/node_modules/brace-expansion/index.js"(exports, module) {
347479
347589
  "use strict";
347480
347590
  var balanced = require_balanced_match();
347481
347591
  module.exports = expandTop;
@@ -347484,6 +347594,8 @@ var require_brace_expansion = __commonJS({
347484
347594
  var escClose = "\0CLOSE" + Math.random() + "\0";
347485
347595
  var escComma = "\0COMMA" + Math.random() + "\0";
347486
347596
  var escPeriod = "\0PERIOD" + Math.random() + "\0";
347597
+ var EXPANSION_MAX = 1e5;
347598
+ var EXPANSION_MAX_LENGTH = 4e6;
347487
347599
  function numeric2(str) {
347488
347600
  return parseInt(str, 10) == str ? parseInt(str, 10) : str.charCodeAt(0);
347489
347601
  }
@@ -347513,13 +347625,16 @@ var require_brace_expansion = __commonJS({
347513
347625
  parts.push.apply(parts, p2);
347514
347626
  return parts;
347515
347627
  }
347516
- function expandTop(str) {
347628
+ function expandTop(str, options) {
347517
347629
  if (!str)
347518
347630
  return [];
347631
+ options = options || {};
347632
+ var max2 = options.max == null ? EXPANSION_MAX : options.max;
347633
+ var maxLength = options.maxLength == null ? EXPANSION_MAX_LENGTH : options.maxLength;
347519
347634
  if (str.substr(0, 2) === "{}") {
347520
347635
  str = "\\{\\}" + str.substr(2);
347521
347636
  }
347522
- return expand(escapeBraces(str), true).map(unescapeBraces);
347637
+ return expand(escapeBraces(str), max2, maxLength, true).map(unescapeBraces);
347523
347638
  }
347524
347639
  function embrace(str) {
347525
347640
  return "{" + str + "}";
@@ -347533,18 +347648,90 @@ var require_brace_expansion = __commonJS({
347533
347648
  function gte2(i, y) {
347534
347649
  return i >= y;
347535
347650
  }
347536
- function expand(str, isTop) {
347537
- var expansions = [];
347538
- var m2 = balanced("{", "}", str);
347539
- if (!m2) return [str];
347540
- var pre = m2.pre;
347541
- var post = m2.post.length ? expand(m2.post, false) : [""];
347542
- if (/\$$/.test(m2.pre)) {
347543
- for (var k2 = 0; k2 < post.length; k2++) {
347544
- var expansion = pre + "{" + m2.body + "}" + post[k2];
347545
- expansions.push(expansion);
347651
+ function combine(acc, pre, values2, max2, maxLength, dropEmpties) {
347652
+ var out = [];
347653
+ var length = 0;
347654
+ for (var a = 0; a < acc.length; a++) {
347655
+ for (var v2 = 0; v2 < values2.length; v2++) {
347656
+ if (out.length >= max2) return out;
347657
+ var expansion = acc[a] + pre + values2[v2];
347658
+ if (dropEmpties && !expansion) continue;
347659
+ if (length + expansion.length > maxLength) return out;
347660
+ out.push(expansion);
347661
+ length += expansion.length;
347662
+ }
347663
+ }
347664
+ return out;
347665
+ }
347666
+ function expandSequence(body, isAlphaSequence, max2, maxLength) {
347667
+ var n = body.split(/\.\./);
347668
+ var N2 = [];
347669
+ if (n[0] === void 0 || n[1] === void 0) {
347670
+ return N2;
347671
+ }
347672
+ var x = numeric2(n[0]);
347673
+ var y = numeric2(n[1]);
347674
+ var width = Math.max(n[0].length, n[1].length);
347675
+ var incr = n.length === 3 && n[2] !== void 0 ? Math.max(Math.abs(numeric2(n[2])), 1) : 1;
347676
+ var test = lte2;
347677
+ var reverse = y < x;
347678
+ if (reverse) {
347679
+ incr *= -1;
347680
+ test = gte2;
347681
+ }
347682
+ var pad = n.some(isPadded);
347683
+ var length = 0;
347684
+ for (var i = x; test(i, y) && N2.length < max2; i += incr) {
347685
+ var c;
347686
+ if (isAlphaSequence) {
347687
+ c = String.fromCharCode(i);
347688
+ if (c === "\\") {
347689
+ c = "";
347690
+ }
347691
+ } else {
347692
+ c = String(i);
347693
+ if (pad) {
347694
+ var need = width - c.length;
347695
+ if (need > 0) {
347696
+ var z2 = new Array(need + 1).join("0");
347697
+ if (i < 0) {
347698
+ c = "-" + z2 + c.slice(1);
347699
+ } else {
347700
+ c = z2 + c;
347701
+ }
347702
+ }
347703
+ }
347704
+ }
347705
+ if (length + c.length > maxLength) break;
347706
+ N2.push(c);
347707
+ length += c.length;
347708
+ }
347709
+ return N2;
347710
+ }
347711
+ function expand(str, max2, maxLength, isTop) {
347712
+ var acc = [""];
347713
+ var dropEmpties = false;
347714
+ var firstGroup = true;
347715
+ for (; ; ) {
347716
+ const m2 = balanced("{", "}", str);
347717
+ if (!m2) {
347718
+ return combine(acc, str, [""], max2, maxLength, dropEmpties);
347719
+ }
347720
+ const pre = m2.pre;
347721
+ if (/\$$/.test(pre)) {
347722
+ acc = combine(
347723
+ acc,
347724
+ pre + "{" + m2.body + "}",
347725
+ [""],
347726
+ max2,
347727
+ maxLength,
347728
+ dropEmpties && !m2.post.length
347729
+ );
347730
+ firstGroup = false;
347731
+ if (!m2.post.length) break;
347732
+ str = m2.post;
347733
+ continue;
347546
347734
  }
347547
- } else {
347548
347735
  var isNumericSequence = /^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(m2.body);
347549
347736
  var isAlphaSequence = /^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(m2.body);
347550
347737
  var isSequence = isNumericSequence || isAlphaSequence;
@@ -347552,74 +347739,69 @@ var require_brace_expansion = __commonJS({
347552
347739
  if (!isSequence && !isOptions) {
347553
347740
  if (m2.post.match(/,(?!,).*\}/)) {
347554
347741
  str = m2.pre + "{" + m2.body + escClose + m2.post;
347555
- return expand(str);
347742
+ isTop = true;
347743
+ continue;
347556
347744
  }
347557
- return [str];
347745
+ return combine(
347746
+ acc,
347747
+ pre + "{" + m2.body + "}" + m2.post,
347748
+ [""],
347749
+ max2,
347750
+ maxLength,
347751
+ dropEmpties
347752
+ );
347558
347753
  }
347559
- var n;
347754
+ if (firstGroup) {
347755
+ dropEmpties = isTop && !isSequence;
347756
+ firstGroup = false;
347757
+ }
347758
+ var values2;
347560
347759
  if (isSequence) {
347561
- n = m2.body.split(/\.\./);
347760
+ values2 = expandSequence(m2.body, isAlphaSequence, max2, maxLength);
347562
347761
  } else {
347563
- n = parseCommaParts(m2.body);
347564
- if (n.length === 1) {
347565
- n = expand(n[0], false).map(embrace);
347762
+ var n = parseCommaParts(m2.body);
347763
+ if (n.length === 1 && n[0] !== void 0) {
347764
+ n = expand(n[0], max2, maxLength, false).map(embrace);
347566
347765
  if (n.length === 1) {
347567
- return post.map(function(p2) {
347568
- return m2.pre + n[0] + p2;
347569
- });
347766
+ acc = combine(
347767
+ acc,
347768
+ pre + n[0],
347769
+ [""],
347770
+ max2,
347771
+ maxLength,
347772
+ dropEmpties && !m2.post.length
347773
+ );
347774
+ if (!m2.post.length) break;
347775
+ str = m2.post;
347776
+ continue;
347570
347777
  }
347571
347778
  }
347572
- }
347573
- var N2;
347574
- if (isSequence) {
347575
- var x = numeric2(n[0]);
347576
- var y = numeric2(n[1]);
347577
- var width = Math.max(n[0].length, n[1].length);
347578
- var incr = n.length == 3 ? Math.max(Math.abs(numeric2(n[2])), 1) : 1;
347579
- var test = lte2;
347580
- var reverse = y < x;
347581
- if (reverse) {
347582
- incr *= -1;
347583
- test = gte2;
347584
- }
347585
- var pad = n.some(isPadded);
347586
- N2 = [];
347587
- for (var i = x; test(i, y); i += incr) {
347588
- var c;
347589
- if (isAlphaSequence) {
347590
- c = String.fromCharCode(i);
347591
- if (c === "\\")
347592
- c = "";
347593
- } else {
347594
- c = String(i);
347595
- if (pad) {
347596
- var need = width - c.length;
347597
- if (need > 0) {
347598
- var z2 = new Array(need + 1).join("0");
347599
- if (i < 0)
347600
- c = "-" + z2 + c.slice(1);
347601
- else
347602
- c = z2 + c;
347603
- }
347604
- }
347779
+ var dropsEmpties = dropEmpties && !m2.post.length && !pre;
347780
+ for (var d = 0; dropsEmpties && d < acc.length; d++) {
347781
+ if (acc[d]) {
347782
+ dropsEmpties = false;
347605
347783
  }
347606
- N2.push(c);
347607
347784
  }
347608
- } else {
347609
- N2 = [];
347610
- for (var j2 = 0; j2 < n.length; j2++) {
347611
- N2.push.apply(N2, expand(n[j2], false));
347612
- }
347613
- }
347614
- for (var j2 = 0; j2 < N2.length; j2++) {
347615
- for (var k2 = 0; k2 < post.length; k2++) {
347616
- var expansion = pre + N2[j2] + post[k2];
347617
- if (!isTop || isSequence || expansion)
347618
- expansions.push(expansion);
347785
+ values2 = [];
347786
+ var valuesLength = 0;
347787
+ outer: for (var j2 = 0; j2 < n.length; j2++) {
347788
+ var expanded = expand(n[j2], max2, maxLength, false);
347789
+ for (var k2 = 0; k2 < expanded.length; k2++) {
347790
+ var v2 = expanded[k2];
347791
+ if (dropsEmpties && !v2) continue;
347792
+ if (values2.length >= max2 || valuesLength + v2.length > maxLength) {
347793
+ break outer;
347794
+ }
347795
+ values2.push(v2);
347796
+ valuesLength += v2.length;
347797
+ }
347619
347798
  }
347620
347799
  }
347800
+ acc = combine(acc, pre, values2, max2, maxLength, dropEmpties && !m2.post.length);
347801
+ if (!m2.post.length) break;
347802
+ str = m2.post;
347621
347803
  }
347622
- return expansions;
347804
+ return acc;
347623
347805
  }
347624
347806
  }
347625
347807
  });
@@ -360502,229 +360684,6 @@ var require_isPlainObject = __commonJS({
360502
360684
  }
360503
360685
  });
360504
360686
 
360505
- // ../../node_modules/.pnpm/brace-expansion@2.1.4/node_modules/brace-expansion/index.js
360506
- var require_brace_expansion2 = __commonJS({
360507
- "../../node_modules/.pnpm/brace-expansion@2.1.4/node_modules/brace-expansion/index.js"(exports, module) {
360508
- "use strict";
360509
- var balanced = require_balanced_match();
360510
- module.exports = expandTop;
360511
- var escSlash = "\0SLASH" + Math.random() + "\0";
360512
- var escOpen = "\0OPEN" + Math.random() + "\0";
360513
- var escClose = "\0CLOSE" + Math.random() + "\0";
360514
- var escComma = "\0COMMA" + Math.random() + "\0";
360515
- var escPeriod = "\0PERIOD" + Math.random() + "\0";
360516
- var EXPANSION_MAX = 1e5;
360517
- var EXPANSION_MAX_LENGTH = 4e6;
360518
- function numeric2(str) {
360519
- return parseInt(str, 10) == str ? parseInt(str, 10) : str.charCodeAt(0);
360520
- }
360521
- function escapeBraces(str) {
360522
- return str.split("\\\\").join(escSlash).split("\\{").join(escOpen).split("\\}").join(escClose).split("\\,").join(escComma).split("\\.").join(escPeriod);
360523
- }
360524
- function unescapeBraces(str) {
360525
- return str.split(escSlash).join("\\").split(escOpen).join("{").split(escClose).join("}").split(escComma).join(",").split(escPeriod).join(".");
360526
- }
360527
- function parseCommaParts(str) {
360528
- if (!str)
360529
- return [""];
360530
- var parts = [];
360531
- var m2 = balanced("{", "}", str);
360532
- if (!m2)
360533
- return str.split(",");
360534
- var pre = m2.pre;
360535
- var body = m2.body;
360536
- var post = m2.post;
360537
- var p2 = pre.split(",");
360538
- p2[p2.length - 1] += "{" + body + "}";
360539
- var postParts = parseCommaParts(post);
360540
- if (post.length) {
360541
- p2[p2.length - 1] += postParts.shift();
360542
- p2.push.apply(p2, postParts);
360543
- }
360544
- parts.push.apply(parts, p2);
360545
- return parts;
360546
- }
360547
- function expandTop(str, options) {
360548
- if (!str)
360549
- return [];
360550
- options = options || {};
360551
- var max2 = options.max == null ? EXPANSION_MAX : options.max;
360552
- var maxLength = options.maxLength == null ? EXPANSION_MAX_LENGTH : options.maxLength;
360553
- if (str.substr(0, 2) === "{}") {
360554
- str = "\\{\\}" + str.substr(2);
360555
- }
360556
- return expand(escapeBraces(str), max2, maxLength, true).map(unescapeBraces);
360557
- }
360558
- function embrace(str) {
360559
- return "{" + str + "}";
360560
- }
360561
- function isPadded(el) {
360562
- return /^-?0\d/.test(el);
360563
- }
360564
- function lte2(i, y) {
360565
- return i <= y;
360566
- }
360567
- function gte2(i, y) {
360568
- return i >= y;
360569
- }
360570
- function combine(acc, pre, values2, max2, maxLength, dropEmpties) {
360571
- var out = [];
360572
- var length = 0;
360573
- for (var a = 0; a < acc.length; a++) {
360574
- for (var v2 = 0; v2 < values2.length; v2++) {
360575
- if (out.length >= max2) return out;
360576
- var expansion = acc[a] + pre + values2[v2];
360577
- if (dropEmpties && !expansion) continue;
360578
- if (length + expansion.length > maxLength) return out;
360579
- out.push(expansion);
360580
- length += expansion.length;
360581
- }
360582
- }
360583
- return out;
360584
- }
360585
- function expandSequence(body, isAlphaSequence, max2, maxLength) {
360586
- var n = body.split(/\.\./);
360587
- var N2 = [];
360588
- if (n[0] === void 0 || n[1] === void 0) {
360589
- return N2;
360590
- }
360591
- var x = numeric2(n[0]);
360592
- var y = numeric2(n[1]);
360593
- var width = Math.max(n[0].length, n[1].length);
360594
- var incr = n.length === 3 && n[2] !== void 0 ? Math.max(Math.abs(numeric2(n[2])), 1) : 1;
360595
- var test = lte2;
360596
- var reverse = y < x;
360597
- if (reverse) {
360598
- incr *= -1;
360599
- test = gte2;
360600
- }
360601
- var pad = n.some(isPadded);
360602
- var length = 0;
360603
- for (var i = x; test(i, y) && N2.length < max2; i += incr) {
360604
- var c;
360605
- if (isAlphaSequence) {
360606
- c = String.fromCharCode(i);
360607
- if (c === "\\") {
360608
- c = "";
360609
- }
360610
- } else {
360611
- c = String(i);
360612
- if (pad) {
360613
- var need = width - c.length;
360614
- if (need > 0) {
360615
- var z2 = new Array(need + 1).join("0");
360616
- if (i < 0) {
360617
- c = "-" + z2 + c.slice(1);
360618
- } else {
360619
- c = z2 + c;
360620
- }
360621
- }
360622
- }
360623
- }
360624
- if (length + c.length > maxLength) break;
360625
- N2.push(c);
360626
- length += c.length;
360627
- }
360628
- return N2;
360629
- }
360630
- function expand(str, max2, maxLength, isTop) {
360631
- var acc = [""];
360632
- var dropEmpties = false;
360633
- var firstGroup = true;
360634
- for (; ; ) {
360635
- const m2 = balanced("{", "}", str);
360636
- if (!m2) {
360637
- return combine(acc, str, [""], max2, maxLength, dropEmpties);
360638
- }
360639
- const pre = m2.pre;
360640
- if (/\$$/.test(pre)) {
360641
- acc = combine(
360642
- acc,
360643
- pre + "{" + m2.body + "}",
360644
- [""],
360645
- max2,
360646
- maxLength,
360647
- dropEmpties && !m2.post.length
360648
- );
360649
- firstGroup = false;
360650
- if (!m2.post.length) break;
360651
- str = m2.post;
360652
- continue;
360653
- }
360654
- var isNumericSequence = /^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(m2.body);
360655
- var isAlphaSequence = /^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(m2.body);
360656
- var isSequence = isNumericSequence || isAlphaSequence;
360657
- var isOptions = m2.body.indexOf(",") >= 0;
360658
- if (!isSequence && !isOptions) {
360659
- if (m2.post.match(/,(?!,).*\}/)) {
360660
- str = m2.pre + "{" + m2.body + escClose + m2.post;
360661
- isTop = true;
360662
- continue;
360663
- }
360664
- return combine(
360665
- acc,
360666
- pre + "{" + m2.body + "}" + m2.post,
360667
- [""],
360668
- max2,
360669
- maxLength,
360670
- dropEmpties
360671
- );
360672
- }
360673
- if (firstGroup) {
360674
- dropEmpties = isTop && !isSequence;
360675
- firstGroup = false;
360676
- }
360677
- var values2;
360678
- if (isSequence) {
360679
- values2 = expandSequence(m2.body, isAlphaSequence, max2, maxLength);
360680
- } else {
360681
- var n = parseCommaParts(m2.body);
360682
- if (n.length === 1 && n[0] !== void 0) {
360683
- n = expand(n[0], max2, maxLength, false).map(embrace);
360684
- if (n.length === 1) {
360685
- acc = combine(
360686
- acc,
360687
- pre + n[0],
360688
- [""],
360689
- max2,
360690
- maxLength,
360691
- dropEmpties && !m2.post.length
360692
- );
360693
- if (!m2.post.length) break;
360694
- str = m2.post;
360695
- continue;
360696
- }
360697
- }
360698
- var dropsEmpties = dropEmpties && !m2.post.length && !pre;
360699
- for (var d = 0; dropsEmpties && d < acc.length; d++) {
360700
- if (acc[d]) {
360701
- dropsEmpties = false;
360702
- }
360703
- }
360704
- values2 = [];
360705
- var valuesLength = 0;
360706
- outer: for (var j2 = 0; j2 < n.length; j2++) {
360707
- var expanded = expand(n[j2], max2, maxLength, false);
360708
- for (var k2 = 0; k2 < expanded.length; k2++) {
360709
- var v2 = expanded[k2];
360710
- if (dropsEmpties && !v2) continue;
360711
- if (values2.length >= max2 || valuesLength + v2.length > maxLength) {
360712
- break outer;
360713
- }
360714
- values2.push(v2);
360715
- valuesLength += v2.length;
360716
- }
360717
- }
360718
- }
360719
- acc = combine(acc, pre, values2, max2, maxLength, dropEmpties && !m2.post.length);
360720
- if (!m2.post.length) break;
360721
- str = m2.post;
360722
- }
360723
- return acc;
360724
- }
360725
- }
360726
- });
360727
-
360728
360687
  // ../../node_modules/.pnpm/minimatch@9.0.9/node_modules/minimatch/dist/commonjs/assert-valid-pattern.js
360729
360688
  var require_assert_valid_pattern = __commonJS({
360730
360689
  "../../node_modules/.pnpm/minimatch@9.0.9/node_modules/minimatch/dist/commonjs/assert-valid-pattern.js"(exports) {
@@ -361518,7 +361477,7 @@ var require_commonjs = __commonJS({
361518
361477
  };
361519
361478
  Object.defineProperty(exports, "__esModule", { value: true });
361520
361479
  exports.unescape = exports.escape = exports.AST = exports.Minimatch = exports.match = exports.makeRe = exports.braceExpand = exports.defaults = exports.filter = exports.GLOBSTAR = exports.sep = exports.minimatch = void 0;
361521
- var brace_expansion_1 = __importDefault(require_brace_expansion2());
361480
+ var brace_expansion_1 = __importDefault(require_brace_expansion());
361522
361481
  var assert_valid_pattern_js_1 = require_assert_valid_pattern();
361523
361482
  var ast_js_1 = require_ast();
361524
361483
  var escape_js_1 = require_escape2();
@@ -400220,7 +400179,7 @@ function getAdvertisedModelIdsForCredential(providerId, credential, models, apiK
400220
400179
  }
400221
400180
  function deriveSupportedThinkingLevels(model) {
400222
400181
  if (!model.reasoning) return ["off"];
400223
- if (!model.thinkingLevelMap || typeof model.thinkingLevelMap !== "object") return void 0;
400182
+ if (!model.thinkingLevelMap || typeof model.thinkingLevelMap !== "object") return [];
400224
400183
  try {
400225
400184
  const supported = getSupportedThinkingLevels(model);
400226
400185
  return supported.filter((level) => THINKING_LEVELS.includes(level));
@@ -400373,7 +400332,7 @@ var init_register_model_routes = __esm({
400373
400332
  name: m2.name,
400374
400333
  reasoning: m2.reasoning,
400375
400334
  contextWindow: m2.contextWindow,
400376
- ...supportedThinkingLevels ? { supportedThinkingLevels } : {}
400335
+ supportedThinkingLevels
400377
400336
  };
400378
400337
  });
400379
400338
  models = models.filter((model) => model.provider !== ANTHROPIC_SUBSCRIPTION_PROVIDER_ID && model.provider !== ANTHROPIC_API_KEY_PROVIDER_ID);