@wrongstack/cli 1.0.32 → 1.0.35

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 (126) hide show
  1. package/data/providers.json +322 -2
  2. package/dist/{acp-EDGUWU7N.js → acp-T77EAEDB.js} +469 -465
  3. package/dist/{auth-SUHKFFO4.js → auth-M6LXZTDA.js} +4 -4
  4. package/dist/auth-menu/openai-codex-oauth.d.ts +1 -1
  5. package/dist/auth-menu/panel-provider-edits.d.ts +15 -0
  6. package/dist/auth-menu/panel-service.d.ts +1 -1
  7. package/dist/auto-discover-providers-JX346GOM.js +7 -0
  8. package/dist/boot/governance-evidence-candidate.d.ts +1 -2
  9. package/dist/boot/system-prompt-builder.d.ts +1 -1
  10. package/dist/boot/tui-project-spawn.d.ts +0 -1
  11. package/dist/boot/tui-session-resume-contracts.d.ts +95 -0
  12. package/dist/boot/tui-session-resume.d.ts +2 -88
  13. package/dist/boot/tui-settings-read.d.ts +3 -0
  14. package/dist/{boot-auto-thin-K2DHHYIW.js → boot-auto-thin-YMAZI3QL.js} +2 -2
  15. package/dist/boot-launch-choices.d.ts +22 -0
  16. package/dist/boot-provider-gate.d.ts +28 -0
  17. package/dist/boot-subcommand-dispatch.d.ts +24 -0
  18. package/dist/boot.d.ts +1 -1
  19. package/dist/chimera-cascade-evidence.d.ts +1 -1
  20. package/dist/{chunk-TI7KLHYX.js → chunk-2CMMWRQH.js} +81 -80
  21. package/dist/{chunk-3LEFXLAW.js → chunk-6SIUTX75.js} +36 -36
  22. package/dist/{chunk-RQ4UBKYH.js → chunk-6Z6C6ZHH.js} +3 -3
  23. package/dist/{chunk-5EA6OTLJ.js → chunk-AFOH6CHO.js} +2 -2
  24. package/dist/{chunk-WHEYHDIE.js → chunk-AKESWZH5.js} +2 -1
  25. package/dist/{chunk-JHUJUIOH.js → chunk-AT2A7RJZ.js} +4 -16
  26. package/dist/{chunk-U3SS4NRH.js → chunk-BHXAKTBE.js} +1 -1
  27. package/dist/{chunk-MPQCHBDJ.js → chunk-CJSHS2K7.js} +5 -1
  28. package/dist/{chunk-P3GRLV47.js → chunk-GZSKLXYG.js} +208 -141
  29. package/dist/{chunk-4MDRHMX4.js → chunk-KMU7GF7X.js} +3 -26
  30. package/dist/{chunk-WXJH4F6K.js → chunk-LDV4ERNV.js} +4 -4
  31. package/dist/{chunk-LIZXJHZQ.js → chunk-LDXXMPMS.js} +13 -13
  32. package/dist/{chunk-UQUYBDMG.js → chunk-M4G5FO7F.js} +1 -1
  33. package/dist/{chunk-CFHWIFXL.js → chunk-PA4VBCXS.js} +25 -33
  34. package/dist/{chunk-5UZBUV2H.js → chunk-RKU66D2O.js} +6 -4
  35. package/dist/{chunk-PGNERAZL.js → chunk-RWNI5OWT.js} +2 -2
  36. package/dist/chunk-TGSPCFBT.js +1 -0
  37. package/dist/{cli-context-ITHGP2CE.js → cli-context-II57EHD2.js} +1555 -1451
  38. package/dist/cli-initial-tools.d.ts +54 -0
  39. package/dist/{cli-main-TQGLKB6D.js → cli-main-YR2WJCPL.js} +38062 -37035
  40. package/dist/cli-main-boot.d.ts +133 -0
  41. package/dist/cli-main-orchestration.d.ts +170 -0
  42. package/dist/cli-main-state.d.ts +19 -0
  43. package/dist/config-doctor.d.ts +1 -1
  44. package/dist/{config-transfer-UE37X4B5.js → config-transfer-VOIFY7U4.js} +2 -2
  45. package/dist/{execution-C2IECWF7.js → execution-IBAZ2EIU.js} +138 -124
  46. package/dist/fleet/host-director-setup.d.ts +41 -0
  47. package/dist/fleet/host-spawn-types.d.ts +17 -0
  48. package/dist/fleet/host.d.ts +2 -1
  49. package/dist/goal-host-prompts.d.ts +5 -0
  50. package/dist/goal-host-types.d.ts +94 -0
  51. package/dist/goal-host.d.ts +2 -91
  52. package/dist/{hq-KBFDKTDD.js → hq-5OIEKB4V.js} +5 -6
  53. package/dist/hq-server/handle-types.d.ts +1 -1
  54. package/dist/hq-server/routes/auth-handlers.d.ts +1 -1
  55. package/dist/hq-server/routes.d.ts +1 -13
  56. package/dist/hq-server/utils.d.ts +1 -1
  57. package/dist/{hq-server-AVNKZ2PV.js → hq-server-DU3ZH3X7.js} +3 -3
  58. package/dist/{hq-service-FGB7BY2D.js → hq-service-LYZV7EK7.js} +3 -3
  59. package/dist/index.js +4 -4
  60. package/dist/live-settings-input.d.ts +2 -0
  61. package/dist/mailbox-bridge-bootstrap.d.ts +1 -4
  62. package/dist/{modeldiag-PQILD7TN.js → modeldiag-NEPTLFZW.js} +2 -2
  63. package/dist/picker-effort.d.ts +32 -0
  64. package/dist/picker-model-picker.d.ts +13 -2
  65. package/dist/picker-provider-list.d.ts +66 -0
  66. package/dist/picker.d.ts +12 -12
  67. package/dist/{providers-models-W57I3QOA.js → providers-models-37DUV2GW.js} +297 -253
  68. package/dist/repl-suggestions.d.ts +0 -5
  69. package/dist/{sdd-runtime-PTOSPYI4.js → sdd-runtime-PF72WHLO.js} +3 -20
  70. package/dist/services/sdd/task-manager.d.ts +1 -12
  71. package/dist/services/sdd-runtime.d.ts +3 -4
  72. package/dist/services/statusline-config.d.ts +0 -2
  73. package/dist/settings-behavior-sections.d.ts +0 -1
  74. package/dist/short-circuit-flags-EXJBJ5GT.js +10 -0
  75. package/dist/{skill-suggest-L2EVWB6R.js → skill-suggest-THANK3LV.js} +1 -1
  76. package/dist/slash-commands/command-context.d.ts +2 -0
  77. package/dist/slash-commands/fallback-chain-view.d.ts +3 -0
  78. package/dist/slash-commands/fallback-ref-validation.d.ts +34 -0
  79. package/dist/slash-commands/goal-refiner.d.ts +10 -2
  80. package/dist/slash-commands/goals.d.ts +6 -0
  81. package/dist/slash-commands/kanban-task-completion.d.ts +17 -0
  82. package/dist/slash-commands/mcp.d.ts +0 -1
  83. package/dist/slash-commands/memory-purge-domain-terms.d.ts +5 -0
  84. package/dist/slash-commands/nextsteps-mode.d.ts +13 -0
  85. package/dist/slash-commands/session-live-status.d.ts +21 -0
  86. package/dist/slash-commands/session.d.ts +1 -1
  87. package/dist/slash-commands/settings-feature-ui-mutations.d.ts +8 -0
  88. package/dist/slash-commands/settings-hq-autonomy-mutations.d.ts +8 -0
  89. package/dist/slash-commands/settings-persist-deps.d.ts +10 -0
  90. package/dist/slash-commands/settings-runtime-mutations.d.ts +12 -0
  91. package/dist/slash-commands/shadow.d.ts +0 -1
  92. package/dist/slash-commands/tool-auto-thin-commands.d.ts +15 -0
  93. package/dist/subcommands/handlers/acp-agents.d.ts +9 -0
  94. package/dist/subcommands/handlers/acp-server.d.ts +7 -0
  95. package/dist/subcommands/handlers/hq.d.ts +0 -1
  96. package/dist/subcommands/handlers/providers-models-custom.d.ts +33 -0
  97. package/dist/subcommands/handlers/providers-models-visibility.d.ts +29 -0
  98. package/dist/subcommands/handlers/skill-suggest.d.ts +0 -2
  99. package/dist/{subcommands-QO7VYTSS.js → subcommands-DTKBXLPU.js} +2 -2
  100. package/dist/{update-J5WHAFPE.js → update-6OEPAEUV.js} +3 -3
  101. package/dist/utils/win32-cmd.d.ts +1 -1
  102. package/dist/{version-help-ATOKGMTK.js → version-help-JQGRPDJW.js} +2 -2
  103. package/dist/webui-server/host-settings.d.ts +17 -0
  104. package/dist/webui-server/http-bridge.d.ts +32 -0
  105. package/dist/webui-server/instance-registration.d.ts +19 -0
  106. package/dist/webui-server/kanban-services.d.ts +9 -0
  107. package/dist/webui-server/message-router.d.ts +14 -0
  108. package/dist/webui-server/prefs-seeding.d.ts +1 -2
  109. package/dist/webui-server/provider-config.d.ts +0 -1
  110. package/dist/webui-server/provider-plane.d.ts +14 -0
  111. package/dist/webui-server/session-agents.d.ts +18 -0
  112. package/dist/webui-server/session-start-live.d.ts +11 -0
  113. package/dist/webui-server/stream-coalescer.d.ts +1 -1
  114. package/dist/webui-server/transport.d.ts +12 -0
  115. package/dist/{webui-server-GQOVLQS3.js → webui-server-6IC3SLZG.js} +1600 -1435
  116. package/dist/webui-session-maintenance.d.ts +16 -0
  117. package/dist/wiring/brain-and-orchestration.d.ts +1 -1
  118. package/dist/wiring/cli-slash-commands-setup.d.ts +1 -0
  119. package/dist/wiring/command-host-state.d.ts +11 -2
  120. package/dist/wiring/dep-watcher-bridge.d.ts +8 -1
  121. package/dist/wiring/session-command-handlers.d.ts +2 -1
  122. package/dist/worktree-command-host.d.ts +31 -0
  123. package/package.json +30 -30
  124. package/dist/auto-discover-providers-QIL34K3U.js +0 -7
  125. package/dist/chunk-WHOIR577.js +0 -1
  126. package/dist/short-circuit-flags-6LB3EGF7.js +0 -10
@@ -7,6 +7,7 @@ import {
7
7
  import * as fs from "node:fs/promises";
8
8
  import * as path from "node:path";
9
9
  import { decryptConfigSecretsForRewrite, encryptConfigSecrets } from "@wrongstack/core/security";
10
+ import { listInProjectDeniedPaths } from "@wrongstack/core/storage";
10
11
  import { ConfigError, ERROR_CODES, FsError } from "@wrongstack/core/types";
11
12
  import { atomicWrite, deepMerge, withFileLock } from "@wrongstack/core/utils";
12
13
  function resolvePersistPath(deps) {
@@ -86,31 +87,7 @@ var PROJECT_SAFE_FIELDS = /* @__PURE__ */ new Set([
86
87
  "uiLocale",
87
88
  "themePreset"
88
89
  ]);
89
- var PROJECT_DENIED_PATHS = [
90
- "tools.exec.allow",
91
- "tools.exec.danger",
92
- "tools.council",
93
- "skills.extraDirs",
94
- "skills.registryUrl",
95
- "skills.suggest",
96
- "Sage.storage.directory",
97
- "autonomy.yolo",
98
- "autonomy.defaultMode",
99
- "autonomy.yoloConfirm",
100
- "launch.autonomy",
101
- "features.allowOutsideProjectRoot",
102
- "tools.restrictToProjectRoot",
103
- "tools.loopDetection",
104
- "tools.maxIterations",
105
- "tools.autoExtendLimit",
106
- "tools.maxAutoExtensions",
107
- "tools.kanbanGovernance",
108
- "tools.autoThin",
109
- "tools.disabledToolMeta",
110
- "tools.wrongProxy",
111
- "features.mailboxBridge",
112
- "features.pluginsTrust"
113
- ];
90
+ var PROJECT_DENIED_PATHS = listInProjectDeniedPaths();
114
91
  function deleteProjectDeniedPath(target, dotted) {
115
92
  const parts = dotted.split(".");
116
93
  const leaf = parts.pop();
@@ -269,4 +246,4 @@ export {
269
246
  persistTelegramConfig,
270
247
  deriveFsAccessPair
271
248
  };
272
- //# sourceMappingURL=chunk-4MDRHMX4.js.map
249
+ //# sourceMappingURL=chunk-KMU7GF7X.js.map
@@ -1,10 +1,10 @@
1
1
  import {
2
2
  parseArgs
3
- } from "./chunk-MPQCHBDJ.js";
3
+ } from "./chunk-CJSHS2K7.js";
4
4
  import {
5
5
  helpCmd,
6
6
  versionCmd
7
- } from "./chunk-WHEYHDIE.js";
7
+ } from "./chunk-AKESWZH5.js";
8
8
 
9
9
  // src/boot/short-circuit-flags.ts
10
10
  async function handleHelpVersionShortCircuit(argv) {
@@ -22,7 +22,7 @@ async function handleHelpVersionShortCircuit(argv) {
22
22
  }
23
23
  if (earlyFlags["help"] === true) {
24
24
  if (positional.length > 0) {
25
- const { subcommandNames } = await import("./subcommands-QO7VYTSS.js");
25
+ const { subcommandNames } = await import("./subcommands-DTKBXLPU.js");
26
26
  if (subcommandNames.includes(positional[0])) {
27
27
  const first = positional[0];
28
28
  const deep = positional[1];
@@ -43,4 +43,4 @@ async function handleHelpVersionShortCircuit(argv) {
43
43
  export {
44
44
  handleHelpVersionShortCircuit
45
45
  };
46
- //# sourceMappingURL=chunk-WXJH4F6K.js.map
46
+ //# sourceMappingURL=chunk-LDV4ERNV.js.map
@@ -3,24 +3,24 @@
3
3
  var loaders = {
4
4
  automation: async () => (await import("./automation-MCDFCIMV.js")).automationCmd,
5
5
  sandbox: async () => (await import("./sandbox-TYGD6FI2.js")).sandboxCmd,
6
- acp: async () => (await import("./acp-EDGUWU7N.js")).acpCmd,
6
+ acp: async () => (await import("./acp-T77EAEDB.js")).acpCmd,
7
7
  init: async () => (await import("./init-DRMMFG2G.js")).initCmd,
8
- auth: async () => (await import("./auth-SUHKFFO4.js")).authCmd,
9
- update: async () => (await import("./update-J5WHAFPE.js")).updateCmd,
8
+ auth: async () => (await import("./auth-M6LXZTDA.js")).authCmd,
9
+ update: async () => (await import("./update-6OEPAEUV.js")).updateCmd,
10
10
  remote: async () => (await import("./remote-C74BCNND.js")).remoteCmd,
11
11
  sessions: async () => (await import("./sessions-config-VE26SB56.js")).sessionsCmd,
12
12
  config: async () => (await import("./sessions-config-VE26SB56.js")).configCmd,
13
- "config-export": async () => (await import("./config-transfer-UE37X4B5.js")).configExportCmd,
14
- "config-import": async () => (await import("./config-transfer-UE37X4B5.js")).configImportCmd,
13
+ "config-export": async () => (await import("./config-transfer-VOIFY7U4.js")).configExportCmd,
14
+ "config-import": async () => (await import("./config-transfer-VOIFY7U4.js")).configImportCmd,
15
15
  rewind: async () => (await import("./rewind-7AULJS7F.js")).rewindCmd,
16
16
  replay: async () => (await import("./replay-JJ2NOWD6.js")).replayCmd,
17
17
  audit: async () => (await import("./audit-KCBTHUQI.js")).auditCmd,
18
18
  tools: async () => (await import("./tools-skills-33AI6K6S.js")).toolsCmd,
19
19
  skills: async () => (await import("./tools-skills-33AI6K6S.js")).skillsCmd,
20
- "skill-suggest": async () => (await import("./skill-suggest-L2EVWB6R.js")).skillSuggestCmd,
20
+ "skill-suggest": async () => (await import("./skill-suggest-THANK3LV.js")).skillSuggestCmd,
21
21
  typesafe: async () => (await import("./typesafe-NHC322W5.js")).typesafeCmd,
22
- providers: async () => (await import("./providers-models-W57I3QOA.js")).providersCmd,
23
- models: async () => (await import("./providers-models-W57I3QOA.js")).modelsCmd,
22
+ providers: async () => (await import("./providers-models-37DUV2GW.js")).providersCmd,
23
+ models: async () => (await import("./providers-models-37DUV2GW.js")).modelsCmd,
24
24
  mcp: async () => (await import("./mcp-LBS45HWZ.js")).mcpCmd,
25
25
  plugin: async () => (await import("./plugin-usage-3TZGROK7.js")).pluginCmd,
26
26
  plugins: async () => (await import("./plugin-usage-3TZGROK7.js")).pluginCmd,
@@ -29,14 +29,14 @@ var loaders = {
29
29
  "proxy-status": async () => (await import("./diag-doctor-BIZAFIAT.js")).proxyCmd,
30
30
  export: async () => (await import("./export-VVRIOWFV.js")).exportCmd,
31
31
  usage: async () => (await import("./plugin-usage-3TZGROK7.js")).usageCmd,
32
- version: async () => (await import("./version-help-ATOKGMTK.js")).versionCmd,
33
- help: async () => (await import("./version-help-ATOKGMTK.js")).helpCmd,
32
+ version: async () => (await import("./version-help-JQGRPDJW.js")).versionCmd,
33
+ help: async () => (await import("./version-help-JQGRPDJW.js")).helpCmd,
34
34
  projects: async () => (await import("./projects-T4CZCA25.js")).projectsCmd,
35
- modeldiag: async () => (await import("./modeldiag-PQILD7TN.js")).modeldiagCmd,
35
+ modeldiag: async () => (await import("./modeldiag-NEPTLFZW.js")).modeldiagCmd,
36
36
  quick: async () => (await import("./quick-CNB4Z3HS.js")).quickCmd,
37
37
  bench: async () => (await import("./bench-MMZHFHDL.js")).benchCmd,
38
38
  chronicle: async () => (await import("./chronicle-PBJS7BN6.js")).chronicleCmd,
39
- hq: async () => (await import("./hq-KBFDKTDD.js")).hqCmd,
39
+ hq: async () => (await import("./hq-5OIEKB4V.js")).hqCmd,
40
40
  mailbox: async () => (await import("./mailbox-serve-S536N66F.js")).mailboxServeCmd,
41
41
  permissions: async () => (await import("./permissions-PL27UHYD.js")).permissionsCmd,
42
42
  project: async () => (await import("./project-AOQI5XTK.js")).projectCmd,
@@ -58,4 +58,4 @@ export {
58
58
  subcommands,
59
59
  subcommandNames
60
60
  };
61
- //# sourceMappingURL=chunk-LIZXJHZQ.js.map
61
+ //# sourceMappingURL=chunk-LDXXMPMS.js.map
@@ -48,4 +48,4 @@ export {
48
48
  extractBehaviorSettings,
49
49
  mergeBehaviorSettings
50
50
  };
51
- //# sourceMappingURL=chunk-UQUYBDMG.js.map
51
+ //# sourceMappingURL=chunk-M4G5FO7F.js.map
@@ -2,7 +2,12 @@
2
2
  // src/boot/auto-discover-providers.ts
3
3
  import * as fs from "node:fs/promises";
4
4
  import * as path from "node:path";
5
- import { discoverOpenAICompatibleModels, resolveDiscoveryTargets } from "@wrongstack/providers";
5
+ import {
6
+ discoverOpenAICompatibleModels,
7
+ discoveryOverlay,
8
+ pruneDiscoveryCache,
9
+ resolveDiscoveryTargets
10
+ } from "@wrongstack/providers";
6
11
  async function readCache(file) {
7
12
  try {
8
13
  return JSON.parse(await fs.readFile(file, "utf8"));
@@ -25,12 +30,12 @@ async function discoverAndMergeProviders(opts) {
25
30
  baseUrl,
26
31
  apiKey,
27
32
  modelDiscoveryPath,
28
- modelDiscoveryAuthoritative,
29
33
  accountCatalog,
30
34
  copilotCatalog,
31
35
  modelsUrl,
32
36
  headers,
33
- prepareApiKey
37
+ prepareApiKey,
38
+ inheritWireFamily
34
39
  } = target;
35
40
  let failureReason = "model catalog request failed";
36
41
  const provider = await discoverOpenAICompatibleModels(id, {
@@ -42,6 +47,7 @@ async function discoverAndMergeProviders(opts) {
42
47
  modelsUrl,
43
48
  providerName: id,
44
49
  modelDiscoveryPath,
50
+ inheritWireFamily,
45
51
  fetchImpl: opts.fetchImpl,
46
52
  prepareApiKey,
47
53
  onFailure: (reason) => {
@@ -54,15 +60,10 @@ async function discoverAndMergeProviders(opts) {
54
60
  if (accountCatalog) cfg.models = Object.keys(provider.models);
55
61
  const fetchedAt = (/* @__PURE__ */ new Date()).toISOString();
56
62
  cache[cacheKey] = { fetchedAt, provider };
63
+ pruneDiscoveryCache(cache, target);
57
64
  cacheDirty = true;
58
- if (modelDiscoveryAuthoritative) {
59
- opts.registry.mergeOverlay(
60
- { [id]: provider },
61
- { observedAt: fetchedAt, authoritativeProviderIds: [id] }
62
- );
63
- } else {
64
- opts.registry.mergeOverlay({ [id]: provider });
65
- }
65
+ const merge = discoveryOverlay(target, provider, fetchedAt);
66
+ opts.registry.mergeOverlay(merge.payload, merge.options);
66
67
  opts.logger?.info(
67
68
  `auto-discovered ${Object.keys(provider.models).length} models for "${id}" from ${baseUrl}`
68
69
  );
@@ -74,34 +75,25 @@ async function discoverAndMergeProviders(opts) {
74
75
  cache[cacheKey] = cached;
75
76
  cacheDirty = true;
76
77
  }
78
+ if (pruneDiscoveryCache(cache, target)) cacheDirty = true;
77
79
  if (accountCatalog) cfg.models = Object.keys(cached.provider.models);
78
- if (modelDiscoveryAuthoritative) {
79
- opts.registry.mergeOverlay(
80
- { [id]: cached.provider },
81
- { observedAt: cached.fetchedAt, authoritativeProviderIds: [id] }
82
- );
83
- } else {
84
- opts.registry.mergeOverlay({ [id]: cached.provider });
85
- }
80
+ const merge = discoveryOverlay(target, cached.provider, cached.fetchedAt);
81
+ opts.registry.mergeOverlay(merge.payload, merge.options);
86
82
  opts.logger?.warn(
87
83
  `auto-discovery for "${id}" failed; using ${Object.keys(cached.provider.models).length} cached models from ${cached.fetchedAt} (${failureReason})`
88
84
  );
89
85
  } else {
90
86
  if (accountCatalog) {
91
87
  cfg.models = [];
92
- opts.registry.mergeOverlay(
93
- {
94
- [id]: {
95
- id,
96
- name: id,
97
- npm: "@ai-sdk/openai-compatible",
98
- api: baseUrl,
99
- env: [],
100
- models: {}
101
- }
102
- },
103
- { authoritativeProviderIds: [id] }
104
- );
88
+ const merge = discoveryOverlay(target, {
89
+ id,
90
+ name: id,
91
+ npm: "@ai-sdk/openai-compatible",
92
+ api: baseUrl,
93
+ env: [],
94
+ models: {}
95
+ });
96
+ opts.registry.mergeOverlay(merge.payload, merge.options);
105
97
  }
106
98
  opts.logger?.warn(
107
99
  `auto-discovery for "${id}" failed and no cache available (${failureReason}; catalog at ${baseUrl})`
@@ -120,4 +112,4 @@ async function discoverAndMergeProviders(opts) {
120
112
  export {
121
113
  discoverAndMergeProviders
122
114
  };
123
- //# sourceMappingURL=chunk-CFHWIFXL.js.map
115
+ //# sourceMappingURL=chunk-PA4VBCXS.js.map
@@ -89,9 +89,11 @@ function modelDetails(models) {
89
89
  // Documented effort vocabulary, mirroring the gate
90
90
  // `getActiveModelReasoningEffortLevels` applies for the settings
91
91
  // panel: `effortSupported === false` is a documented "no effort
92
- // control", and the picker must not offer a strip for it. An absent
93
- // field stays absent, which the strip reads as "undocumented →
94
- // canonical set".
92
+ // control", and the picker must not offer a strip for it — carried
93
+ // explicitly, because an absent `effortLevels` alone would read as
94
+ // "undocumented → canonical set". An absent field stays absent,
95
+ // which the strip reads as "undocumented → canonical set".
96
+ ...model.reasoningConfig?.effortSupported === false ? { effortControlSupported: false } : {},
95
97
  ...model.reasoningConfig?.effortSupported && model.reasoningConfig.effortLevels?.length ? { effortLevels: [...model.reasoningConfig.effortLevels] } : {},
96
98
  maxContext: model.limit?.context,
97
99
  maxOutput: model.limit?.output,
@@ -111,4 +113,4 @@ export {
111
113
  hasApiKey,
112
114
  buildPickableProviders
113
115
  };
114
- //# sourceMappingURL=chunk-5UZBUV2H.js.map
116
+ //# sourceMappingURL=chunk-RKU66D2O.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  buildWin32CmdShimInvocation
3
- } from "./chunk-U3SS4NRH.js";
3
+ } from "./chunk-BHXAKTBE.js";
4
4
  import {
5
5
  checkForUpdate
6
6
  } from "./chunk-DIOODAYM.js";
@@ -406,4 +406,4 @@ export {
406
406
  detectUpdatePackageManager,
407
407
  detectUpdatePackageName
408
408
  };
409
- //# sourceMappingURL=chunk-PGNERAZL.js.map
409
+ //# sourceMappingURL=chunk-RWNI5OWT.js.map
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=chunk-TGSPCFBT.js.map