@stigmer/react 3.38.2 → 3.38.3

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.
@@ -8,6 +8,7 @@ import { Switch } from "../switch/Switch.js";
8
8
  import { useModelRegistry } from "./useModelRegistry.js";
9
9
  import { HARNESS_META, HARNESS_OPTIONS } from "./harness.js";
10
10
  import { FAST_SERVICE_TIER } from "./service-tier.js";
11
+ import { thinkingLocked, thinkingSelectable } from "./thinking-mode.js";
11
12
  const COST_TIER_LABEL = {
12
13
  economy: "$",
13
14
  standard: "$$",
@@ -19,16 +20,6 @@ const SPEED_TIER_LABEL = {
19
20
  balanced: "Balanced",
20
21
  slow: "Powerful",
21
22
  };
22
- /**
23
- * Whether the thinking switch may act on this model (stigmer/stigmer#772):
24
- * the registry declares the capability AND the model is cursor-harness —
25
- * the only harness with a thinking translation in v1. Native models
26
- * truthfully declare the capability too, but selecting it there would be
27
- * refused at create time, so the control never renders for them.
28
- */
29
- function supportsThinking(model) {
30
- return model.harness === "cursor" && model.thinkingCapable === true;
31
- }
32
23
  /**
33
24
  * Combined harness + model picker with a compact trigger button.
34
25
  *
@@ -56,7 +47,8 @@ function supportsThinking(model) {
56
47
  * **Thinking mode (#772).** The same options-area pattern for the second
57
48
  * variant dimension: opting in via
58
49
  * {@link ModelSelectorProps.onThinkingModeChange} renders a "Thinking"
59
- * switch for cursor-harness models declaring the thinking capability.
50
+ * switch for models declaring a thinking form, on either harness, shown on
51
+ * and locked for a model that always thinks.
60
52
  * Capability-gated rather than priced-variant-gated — thinking bills at
61
53
  * base per-token rates and costs more only through extra reasoning
62
54
  * (output) tokens. Persistence and reset rules mirror the fast tier's.
@@ -172,11 +164,11 @@ export function ModelSelector({ value, onValueChange, harness, initialHarness, o
172
164
  onServiceTierChange("standard");
173
165
  }
174
166
  // The identical persistence rule for the thinking mode (#772):
175
- // survives between thinking-capable cursor models, resets only
176
- // where the selection would be refused at create time.
167
+ // survives between thinking-capable models, resets only where the
168
+ // selection would be refused at create time.
177
169
  if (thinkingMode === "enabled"
178
170
  && onThinkingModeChange
179
- && !supportsThinking(model)) {
171
+ && !thinkingSelectable(model)) {
180
172
  onThinkingModeChange("disabled");
181
173
  }
182
174
  setOpen(false);
@@ -235,9 +227,13 @@ export function ModelSelector({ value, onValueChange, harness, initialHarness, o
235
227
  // gated on the capability instead of a priced variant (#772).
236
228
  const showThinkingToggle = onThinkingModeChange !== undefined
237
229
  && selectedModel !== undefined
238
- && supportsThinking(selectedModel);
239
- const thinkingActive = thinkingMode === "enabled"
240
- && (selectedModel !== undefined && supportsThinking(selectedModel));
230
+ && thinkingSelectable(selectedModel);
231
+ // A model that always thinks shows the switch on and locked: what the
232
+ // switch shows is what the model does.
233
+ const thinkingIsLocked = selectedModel !== undefined && thinkingLocked(selectedModel);
234
+ const thinkingActive = thinkingIsLocked
235
+ || (thinkingMode === "enabled"
236
+ && (selectedModel !== undefined && thinkingSelectable(selectedModel)));
241
237
  const usingPlaceholder = !value && placeholderLabel !== undefined;
242
238
  const triggerLabel = usingPlaceholder
243
239
  ? placeholderLabel
@@ -261,7 +257,9 @@ export function ModelSelector({ value, onValueChange, harness, initialHarness, o
261
257
  handleHarnessChange(h);
262
258
  setHarnessOpen(false);
263
259
  }, children: [_jsx("span", { className: "stg:flex-1 stg:text-left", children: HARNESS_META[h].label }), isActive && _jsx(CheckIcon, { className: "stg:shrink-0 stg:text-primary" })] }, h));
264
- }) }))] }), showServiceTierToggle && (_jsxs("div", { className: "stg:flex stg:items-center stg:justify-between stg:border-b stg:border-border stg:px-3 stg:py-2", children: [_jsxs("div", { className: "stg:flex stg:flex-col", children: [_jsx("span", { className: "stg:text-xs stg:text-foreground", children: "Fast tier" }), _jsx("span", { className: "stg:text-[0.65rem] stg:text-muted-foreground", children: "Faster responses at higher per-token rates" })] }), _jsx(Switch, { checked: fastActive, onCheckedChange: (next) => onServiceTierChange?.(next ? "fast" : "standard"), "aria-label": "Fast tier" })] })), showThinkingToggle && (_jsxs("div", { className: "stg:flex stg:items-center stg:justify-between stg:border-b stg:border-border stg:px-3 stg:py-2", children: [_jsxs("div", { className: "stg:flex stg:flex-col", children: [_jsx("span", { className: "stg:text-xs stg:text-foreground", children: "Thinking" }), _jsx("span", { className: "stg:text-[0.65rem] stg:text-muted-foreground", children: "Extended reasoning; uses more output tokens" })] }), _jsx(Switch, { checked: thinkingActive, onCheckedChange: (next) => onThinkingModeChange?.(next ? "enabled" : "disabled"), "aria-label": "Thinking" })] })), _jsx("div", { className: "stg:border-b stg:border-border stg:px-3 stg:py-1.5", children: _jsx("input", { ref: searchRef, role: "searchbox", "aria-label": "Search models", placeholder: "Search models\u2026", value: searchQuery, onChange: (e) => setSearchQuery(e.target.value), onKeyDown: handleKeyDown, className: cn("stg:w-full stg:bg-transparent stg:text-xs stg:text-foreground stg:placeholder:text-muted-foreground", "stg:outline-none") }) }), _jsxs("div", { ref: listRef, role: "listbox", "aria-label": "Available models", className: "stg:max-h-72 stg:overflow-y-auto stg:p-1", children: [visibleModels.length === 0 && isLoading && (_jsxs("div", { className: "stg:flex stg:items-center stg:justify-center stg:gap-2 stg:px-2 stg:py-3", children: [_jsx("div", { className: "stg:size-3 stg:animate-spin stg:rounded-full stg:border stg:border-muted stg:border-t-primary" }), _jsx("span", { className: "stg:text-xs stg:text-muted-foreground", children: "Loading models\u2026" })] })), visibleModels.length === 0 && !isLoading && error != null && (_jsxs("div", { className: "stg:flex stg:flex-col stg:items-center stg:gap-1.5 stg:px-2 stg:py-3", children: [_jsx("span", { className: "stg:text-xs stg:text-muted-foreground", children: "Failed to load models" }), _jsx("button", { type: "button", className: cn("stg:rounded-md stg:border stg:border-border stg:bg-background stg:px-2.5 stg:py-1 stg:text-xs stg:text-foreground", "stg:hover:bg-accent-hover stg:transition-colors stg:cursor-pointer"), onClick: refetch, children: "Retry" })] })), visibleModels.length === 0 && !isLoading && error == null && (_jsx("div", { className: "stg:px-2 stg:py-3 stg:text-center stg:text-xs stg:text-muted-foreground", children: "No models found" })), groupedModels ? (Array.from(groupedModels.entries()).map(([group, groupModels]) => (_jsxs("div", { children: [_jsx("div", { className: "stg:px-2 stg:pb-0.5 stg:pt-2 stg:text-[0.6rem] stg:font-medium stg:uppercase stg:tracking-wider stg:text-muted-foreground", children: group }), groupModels.map((model) => (_jsx(ModelRow, { model: model, isSelected: model.modelId === selectedModel?.modelId, showDescription: false, showSpeedBadge: showSpeedBadge, onClick: () => selectModel(model) }, model.modelId)))] }, group)))) : (visibleModels.map((model, idx) => (_jsx(ModelRow, { model: model, isSelected: model.modelId === selectedModel?.modelId, isHighlighted: idx === highlightIdx, showDescription: showDescriptions && !compact && !isSearching && !showAll, showSpeedBadge: showSpeedBadge, onClick: () => selectModel(model), onMouseEnter: () => setHighlightIdx(idx) }, model.modelId)))), showShowAllButton && (_jsx("button", { type: "button", className: cn("stg:mt-1 stg:flex stg:w-full stg:items-center stg:justify-center stg:rounded-md stg:border stg:border-dashed stg:border-border", "stg:px-2 stg:py-1.5 stg:text-xs stg:text-muted-foreground", "stg:hover:bg-accent-hover stg:hover:text-foreground stg:transition-colors stg:cursor-pointer"), onClick: () => setShowAll(true), children: "Show all models" }))] })] }) }) })] }));
260
+ }) }))] }), showServiceTierToggle && (_jsxs("div", { className: "stg:flex stg:items-center stg:justify-between stg:border-b stg:border-border stg:px-3 stg:py-2", children: [_jsxs("div", { className: "stg:flex stg:flex-col", children: [_jsx("span", { className: "stg:text-xs stg:text-foreground", children: "Fast tier" }), _jsx("span", { className: "stg:text-[0.65rem] stg:text-muted-foreground", children: "Faster responses at higher per-token rates" })] }), _jsx(Switch, { checked: fastActive, onCheckedChange: (next) => onServiceTierChange?.(next ? "fast" : "standard"), "aria-label": "Fast tier" })] })), showThinkingToggle && (_jsxs("div", { className: "stg:flex stg:items-center stg:justify-between stg:border-b stg:border-border stg:px-3 stg:py-2", children: [_jsxs("div", { className: "stg:flex stg:flex-col", children: [_jsx("span", { className: "stg:text-xs stg:text-foreground", children: "Thinking" }), _jsx("span", { className: "stg:text-[0.65rem] stg:text-muted-foreground", children: thinkingIsLocked
261
+ ? "This model always reasons before it answers"
262
+ : "Extended reasoning; uses more output tokens" })] }), _jsx(Switch, { checked: thinkingActive, disabled: thinkingIsLocked, onCheckedChange: (next) => onThinkingModeChange?.(next ? "enabled" : "disabled"), "aria-label": "Thinking" })] })), _jsx("div", { className: "stg:border-b stg:border-border stg:px-3 stg:py-1.5", children: _jsx("input", { ref: searchRef, role: "searchbox", "aria-label": "Search models", placeholder: "Search models\u2026", value: searchQuery, onChange: (e) => setSearchQuery(e.target.value), onKeyDown: handleKeyDown, className: cn("stg:w-full stg:bg-transparent stg:text-xs stg:text-foreground stg:placeholder:text-muted-foreground", "stg:outline-none") }) }), _jsxs("div", { ref: listRef, role: "listbox", "aria-label": "Available models", className: "stg:max-h-72 stg:overflow-y-auto stg:p-1", children: [visibleModels.length === 0 && isLoading && (_jsxs("div", { className: "stg:flex stg:items-center stg:justify-center stg:gap-2 stg:px-2 stg:py-3", children: [_jsx("div", { className: "stg:size-3 stg:animate-spin stg:rounded-full stg:border stg:border-muted stg:border-t-primary" }), _jsx("span", { className: "stg:text-xs stg:text-muted-foreground", children: "Loading models\u2026" })] })), visibleModels.length === 0 && !isLoading && error != null && (_jsxs("div", { className: "stg:flex stg:flex-col stg:items-center stg:gap-1.5 stg:px-2 stg:py-3", children: [_jsx("span", { className: "stg:text-xs stg:text-muted-foreground", children: "Failed to load models" }), _jsx("button", { type: "button", className: cn("stg:rounded-md stg:border stg:border-border stg:bg-background stg:px-2.5 stg:py-1 stg:text-xs stg:text-foreground", "stg:hover:bg-accent-hover stg:transition-colors stg:cursor-pointer"), onClick: refetch, children: "Retry" })] })), visibleModels.length === 0 && !isLoading && error == null && (_jsx("div", { className: "stg:px-2 stg:py-3 stg:text-center stg:text-xs stg:text-muted-foreground", children: "No models found" })), groupedModels ? (Array.from(groupedModels.entries()).map(([group, groupModels]) => (_jsxs("div", { children: [_jsx("div", { className: "stg:px-2 stg:pb-0.5 stg:pt-2 stg:text-[0.6rem] stg:font-medium stg:uppercase stg:tracking-wider stg:text-muted-foreground", children: group }), groupModels.map((model) => (_jsx(ModelRow, { model: model, isSelected: model.modelId === selectedModel?.modelId, showDescription: false, showSpeedBadge: showSpeedBadge, onClick: () => selectModel(model) }, model.modelId)))] }, group)))) : (visibleModels.map((model, idx) => (_jsx(ModelRow, { model: model, isSelected: model.modelId === selectedModel?.modelId, isHighlighted: idx === highlightIdx, showDescription: showDescriptions && !compact && !isSearching && !showAll, showSpeedBadge: showSpeedBadge, onClick: () => selectModel(model), onMouseEnter: () => setHighlightIdx(idx) }, model.modelId)))), showShowAllButton && (_jsx("button", { type: "button", className: cn("stg:mt-1 stg:flex stg:w-full stg:items-center stg:justify-center stg:rounded-md stg:border stg:border-dashed stg:border-border", "stg:px-2 stg:py-1.5 stg:text-xs stg:text-muted-foreground", "stg:hover:bg-accent-hover stg:hover:text-foreground stg:transition-colors stg:cursor-pointer"), onClick: () => setShowAll(true), children: "Show all models" }))] })] }) }) })] }));
265
263
  }
266
264
  function ModelRow({ model, isSelected, isHighlighted, showDescription, showSpeedBadge, onClick, onMouseEnter, }) {
267
265
  return (_jsxs("button", { "data-model-option": "", role: "option", "aria-selected": isSelected, type: "button", className: cn("stg:flex stg:w-full stg:cursor-pointer stg:flex-col stg:rounded-md stg:px-2 stg:py-1.5 stg:text-xs stg:outline-none", "stg:transition-colors", isHighlighted && "stg:bg-accent stg:text-accent-foreground", !isHighlighted && "stg:hover:bg-accent-hover"), onClick: onClick, onMouseEnter: onMouseEnter, children: [_jsxs("div", { className: "stg:flex stg:w-full stg:items-center stg:gap-2", children: [_jsx("span", { className: "stg:flex-1 stg:truncate stg:text-left stg:font-medium", children: model.displayName }), model.visionCapability === false && (_jsxs("span", { className: "stg:flex stg:shrink-0 stg:items-center stg:gap-0.5 stg:text-[0.6rem] stg:text-muted-foreground", children: [_jsx(NoImageInputIcon, {}), "No image input"] })), _jsx("span", { className: "stg:shrink-0 stg:text-[0.6rem] stg:text-muted-foreground", children: showSpeedBadge
@@ -1 +1 @@
1
- {"version":3,"file":"ModelSelector.js","sourceRoot":"","sources":["../src/models/ModelSelector.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ModelSelector.js","sourceRoot":"","sources":["../src/models/ModelSelector.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAC1E,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,EAAE,EAAE,MAAM,gBAAgB,CAAC;AACpC,OAAO,EAAE,yBAAyB,EAAE,MAAM,wBAAwB,CAAC;AACnE,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEzD,OAAO,EAAE,YAAY,EAAE,eAAe,EAAsB,MAAM,cAAc,CAAC;AACjF,OAAO,EAAE,iBAAiB,EAA0B,MAAM,mBAAmB,CAAC;AAC9E,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAA2B,MAAM,oBAAoB,CAAC;AAEjG,MAAM,eAAe,GAA6B;IAChD,OAAO,EAAE,GAAG;IACZ,QAAQ,EAAE,IAAI;IACd,OAAO,EAAE,KAAK;CACf,CAAC;AAEF,MAAM,gBAAgB,GAA8B;IAClD,OAAO,EAAE,SAAS;IAClB,IAAI,EAAE,MAAM;IACZ,QAAQ,EAAE,UAAU;IACpB,IAAI,EAAE,UAAU;CACjB,CAAC;AAyGF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0CG;AACH,MAAM,UAAU,aAAa,CAAC,EAC5B,KAAK,EACL,aAAa,EACb,OAAO,EACP,cAAc,EACd,eAAe,EACf,iBAAiB,EACjB,kBAAkB,EAClB,aAAa,EACb,OAAO,GAAG,UAAU,EACpB,cAAc,GAAG,IAAI,EACrB,gBAAgB,GAAG,IAAI,EACvB,OAAO,GAAG,KAAK,EACf,SAAS,EACT,QAAQ,EACR,gBAAgB,EAChB,WAAW,GAAG,UAAU,EACxB,mBAAmB,EACnB,YAAY,GAAG,UAAU,EACzB,oBAAoB,GACD;IACnB,MAAM,eAAe,GAAG,yBAAyB,EAAE,CAAC;IAEpD,MAAM,eAAe,GAAG,OAAO,KAAK,SAAS,CAAC;IAC9C,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAG,QAAQ,CACpD,OAAO,IAAI,cAAc,IAAI,QAAQ,CACtC,CAAC;IACF,MAAM,aAAa,GAAG,OAAO,IAAI,eAAe,CAAC;IAEjD,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,eAAe,IAAI,cAAc,KAAK,SAAS,EAAE,CAAC;YACrD,kBAAkB,CAAC,cAAc,CAAC,CAAC;QACrC,CAAC;IACH,CAAC,EAAE,CAAC,cAAc,EAAE,eAAe,CAAC,CAAC,CAAC;IAEtC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,QAAQ,EAAE,UAAU,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,gBAAgB,CAC1G,EAAE,OAAO,EAAE,aAAa,EAAE,CAC3B,CAAC;IAEF,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACxC,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACtD,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IACnD,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC9C,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;IAErD,MAAM,SAAS,GAAG,MAAM,CAAmB,IAAI,CAAC,CAAC;IACjD,MAAM,OAAO,GAAG,MAAM,CAAiB,IAAI,CAAC,CAAC;IAE7C,MAAM,iBAAiB,GAAG,OAAO,CAAC,GAAG,EAAE;QACrC,IAAI,kBAAkB;YAAE,OAAO,kBAAkB,CAAC;QAClD,mFAAmF;QACnF,gFAAgF;QAChF,OAAO,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,QAAQ,CAAC,CAAC;IACzE,CAAC,EAAE,CAAC,kBAAkB,CAAC,CAAC,CAAC;IAEzB,MAAM,aAAa,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,YAAY,IAAI,SAAS,CAAC;IAEzF,MAAM,WAAW,GAAG,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC;IAC3C,MAAM,UAAU,GAAG,WAAW,CAAC,WAAW,EAAE,CAAC;IAE7C,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,EAAE;QAC9B,IAAI,aAAa;YAAE,OAAO,IAAI,GAAG,CAAC,aAAa,CAAC,CAAC;QACjD,OAAO,IAAI,CAAC;IACd,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC;IAEpB,MAAM,cAAc,GAAG,OAAO,CAAC,GAAG,EAAE;QAClC,IAAI,UAAU,EAAE,CAAC;YACf,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;QACzD,CAAC;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAC;IAEnC,MAAM,aAAa,GAAyB,OAAO,CAAC,GAAG,EAAE;QACvD,IAAI,WAAW,EAAE,CAAC;YAChB,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CACzB,CAAC,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC;mBAC7C,CAAC,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC;mBAC5C,CAAC,CAAC,gBAAgB,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,CACzD,CAAC;QACJ,CAAC;QACD,IAAI,OAAO;YAAE,OAAO,MAAM,CAAC;QAC3B,OAAO,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,MAAM,CAAC;IAC7D,CAAC,EAAE,CAAC,MAAM,EAAE,cAAc,EAAE,WAAW,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC;IAE/D,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,EAAE;QACjC,IAAI,CAAC,OAAO,IAAI,OAAO,KAAK,MAAM,IAAI,WAAW;YAAE,OAAO,IAAI,CAAC;QAC/D,MAAM,MAAM,GAAG,IAAI,GAAG,EAAuB,CAAC;QAC9C,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,MAAM,GAAG,GAAG,OAAO,KAAK,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC;YACrE,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAC9B,IAAI,KAAK,EAAE,CAAC;gBACV,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACpB,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;YAC3B,CAAC;QACH,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC;IAE5C,SAAS,CAAC,GAAG,EAAE;QACb,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC;IACtB,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC;IAEpB,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,cAAc,CAAC,EAAE,CAAC,CAAC;YACnB,UAAU,CAAC,KAAK,CAAC,CAAC;YAClB,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC;YACpB,cAAc,CAAC,KAAK,CAAC,CAAC;QACxB,CAAC;IACH,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IAEX,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,IAAI,EAAE,CAAC;YACT,qBAAqB,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;QAC1D,CAAC;IACH,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IAEX,MAAM,mBAAmB,GAAG,WAAW,CACrC,CAAC,UAAyB,EAAE,EAAE;QAC5B,kBAAkB,CAAC,UAAU,CAAC,CAAC;QAC/B,eAAe,EAAE,CAAC,UAAU,CAAC,CAAC;QAC9B,iBAAiB,EAAE,CAAC,UAAU,CAAC,CAAC;QAChC,UAAU,CAAC,KAAK,CAAC,CAAC;QAClB,cAAc,CAAC,EAAE,CAAC,CAAC;IACrB,CAAC,EACD,CAAC,eAAe,EAAE,iBAAiB,CAAC,CACrC,CAAC;IAEF,MAAM,WAAW,GAAG,WAAW,CAC7B,CAAC,KAAgB,EAAE,EAAE;QACnB,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAC7B,sEAAsE;QACtE,oEAAoE;QACpE,qEAAqE;QACrE,mEAAmE;QACnE,2DAA2D;QAC3D,IACE,WAAW,KAAK,MAAM;eACnB,mBAAmB;eACnB,CAAC,KAAK,CAAC,YAAY,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAClD,CAAC;YACD,mBAAmB,CAAC,UAAU,CAAC,CAAC;QAClC,CAAC;QACD,+DAA+D;QAC/D,kEAAkE;QAClE,6CAA6C;QAC7C,IACE,YAAY,KAAK,SAAS;eACvB,oBAAoB;eACpB,CAAC,kBAAkB,CAAC,KAAK,CAAC,EAC7B,CAAC;YACD,oBAAoB,CAAC,UAAU,CAAC,CAAC;QACnC,CAAC;QACD,OAAO,CAAC,KAAK,CAAC,CAAC;IACjB,CAAC,EACD,CAAC,aAAa,EAAE,WAAW,EAAE,mBAAmB,EAAE,YAAY,EAAE,oBAAoB,CAAC,CACtF,CAAC;IAEF,MAAM,uBAAuB,GAAG,WAAW,CAAC,CAAC,GAAW,EAAE,EAAE;QAC1D,MAAM,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC;QAClC,IAAI,CAAC,SAAS;YAAE,OAAO;QACvB,MAAM,KAAK,GAAG,SAAS,CAAC,gBAAgB,CAAc,qBAAqB,CAAC,CAAC;QAC7E,KAAK,CAAC,GAAG,CAAC,EAAE,cAAc,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;IACnD,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,aAAa,GAAG,WAAW,CAC/B,CAAC,CAAwC,EAAE,EAAE;QAC3C,MAAM,GAAG,GAAG,aAAa,CAAC,MAAM,CAAC;QACjC,IAAI,GAAG,KAAK,CAAC;YAAE,OAAO;QAEtB,QAAQ,CAAC,CAAC,GAAG,EAAE,CAAC;YACd,KAAK,WAAW,CAAC,CAAC,CAAC;gBACjB,CAAC,CAAC,cAAc,EAAE,CAAC;gBACnB,MAAM,IAAI,GAAG,YAAY,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC3D,eAAe,CAAC,IAAI,CAAC,CAAC;gBACtB,uBAAuB,CAAC,IAAI,CAAC,CAAC;gBAC9B,MAAM;YACR,CAAC;YACD,KAAK,SAAS,CAAC,CAAC,CAAC;gBACf,CAAC,CAAC,cAAc,EAAE,CAAC;gBACnB,MAAM,IAAI,GAAG,YAAY,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC;gBAC3D,eAAe,CAAC,IAAI,CAAC,CAAC;gBACtB,uBAAuB,CAAC,IAAI,CAAC,CAAC;gBAC9B,MAAM;YACR,CAAC;YACD,KAAK,OAAO,CAAC,CAAC,CAAC;gBACb,CAAC,CAAC,cAAc,EAAE,CAAC;gBACnB,MAAM,MAAM,GAAG,YAAY,IAAI,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;gBAClF,IAAI,MAAM;oBAAE,WAAW,CAAC,MAAM,CAAC,CAAC;gBAChC,MAAM;YACR,CAAC;YACD,KAAK,QAAQ;gBACX,CAAC,CAAC,cAAc,EAAE,CAAC;gBACnB,OAAO,CAAC,KAAK,CAAC,CAAC;gBACf,MAAM;QACV,CAAC;IACH,CAAC,EACD,CAAC,aAAa,EAAE,YAAY,EAAE,WAAW,EAAE,uBAAuB,CAAC,CACpE,CAAC;IAEF,MAAM,iBAAiB,GAAG,CAAC,WAAW,IAAI,CAAC,OAAO,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,IAAI,cAAc,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;IAEzH,yEAAyE;IACzE,oEAAoE;IACpE,gEAAgE;IAChE,MAAM,qBAAqB,GACzB,mBAAmB,KAAK,SAAS;WAC9B,aAAa,KAAK,SAAS;WAC3B,aAAa,CAAC,YAAY,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC;IAC5D,uEAAuE;IACvE,2DAA2D;IAC3D,MAAM,UAAU,GACd,WAAW,KAAK,MAAM;WACnB,CAAC,aAAa,EAAE,YAAY,CAAC,QAAQ,CAAC,iBAAiB,CAAC,IAAI,KAAK,CAAC,CAAC;IACxE,oEAAoE;IACpE,8DAA8D;IAC9D,MAAM,kBAAkB,GACtB,oBAAoB,KAAK,SAAS;WAC/B,aAAa,KAAK,SAAS;WAC3B,kBAAkB,CAAC,aAAa,CAAC,CAAC;IACvC,sEAAsE;IACtE,uCAAuC;IACvC,MAAM,gBAAgB,GAAG,aAAa,KAAK,SAAS,IAAI,cAAc,CAAC,aAAa,CAAC,CAAC;IACtF,MAAM,cAAc,GAClB,gBAAgB;WACb,CAAC,YAAY,KAAK,SAAS;eACzB,CAAC,aAAa,KAAK,SAAS,IAAI,kBAAkB,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;IAE3E,MAAM,gBAAgB,GAAG,CAAC,KAAK,IAAI,gBAAgB,KAAK,SAAS,CAAC;IAClE,MAAM,YAAY,GAAG,gBAAgB;QACnC,CAAC,CAAC,gBAAgB;QAClB,CAAC,CAAC,CAAC,aAAa,EAAE,WAAW,IAAI,cAAc,CAAC,CAAC;IACnD,MAAM,cAAc,GAClB,CAAC,eAAe,IAAI,CAAC,gBAAgB;QACnC,CAAC,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC,KAAK;QACnC,CAAC,CAAC,SAAS,CAAC;IAEhB,OAAO,CACL,MAAC,OAAO,CAAC,IAAI,IAAC,IAAI,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,aAC7C,MAAC,OAAO,CAAC,OAAO,IACd,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,EAAE,CACX,0FAA0F,EAC1F,yEAAyE,EACzE,+GAA+G,EAC/G,0DAA0D,EAC1D,kEAAkE,EAClE,SAAS,CACV,aAEA,cAAc,IAAI,CACjB,eAAM,SAAS,EAAC,wCAAwC,YAAE,cAAc,GAAQ,CACjF,EACA,cAAc,IAAI,CACjB,eAAM,SAAS,EAAC,8BAA8B,4CAAqB,CACpE,EACD,eAAM,SAAS,EAAC,cAAc,YAAE,YAAY,GAAQ,EACnD,UAAU,IAAI,CACb,gBACE,SAAS,EAAE,EAAE,CACX,+HAA+H,EAC/H,qFAAqF,CACtF,aAED,KAAC,QAAQ,KAAG,YAEP,CACR,EACA,cAAc,IAAI,CACjB,eACE,SAAS,EAAE,EAAE,CACX,+HAA+H,EAC/H,qFAAqF,CACtF,yBAGI,CACR,EACD,KAAC,WAAW,KAAG,IACC,EAElB,KAAC,OAAO,CAAC,MAAM,IAAC,SAAS,EAAE,eAAe,YACxC,KAAC,OAAO,CAAC,UAAU,IAAC,UAAU,EAAE,CAAC,YAC/B,MAAC,OAAO,CAAC,KAAK,IACZ,IAAI,EAAC,QAAQ,gBACF,gBAAgB,EAC3B,SAAS,EAAE,EAAE,CACX,iGAAiG,EACjG,6BAA6B,CAC9B,aAGD,eAAK,SAAS,EAAC,6GAA6G,aAC1H,eAAM,SAAS,EAAC,uCAAuC,wBAAe,EACtE,kBACE,IAAI,EAAC,QAAQ,mBACC,SAAS,mBACR,WAAW,gBACf,gBAAgB,EAC3B,QAAQ,EAAE,eAAe,EACzB,SAAS,EAAE,EAAE,CACX,0FAA0F,EAC1F,yEAAyE,EACzE,uBAAuB,EACvB,qFAAqF,EACrF,eAAe;4CACb,CAAC,CAAC,uCAAuC;4CACzC,CAAC,CAAC,2BAA2B,CAChC,EACD,OAAO,EAAE,GAAG,EAAE;4CACZ,IAAI,CAAC,eAAe;gDAAE,cAAc,CAAC,CAAC,WAAW,CAAC,CAAC;wCACrD,CAAC,EACD,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE;4CACf,IAAI,CAAC,CAAC,GAAG,KAAK,QAAQ,IAAI,WAAW,EAAE,CAAC;gDACtC,CAAC,CAAC,eAAe,EAAE,CAAC;gDACpB,cAAc,CAAC,KAAK,CAAC,CAAC;4CACxB,CAAC;wCACH,CAAC,aAED,yBAAO,YAAY,CAAC,aAAa,CAAC,CAAC,KAAK,GAAQ,EAC/C,CAAC,eAAe,IAAI,KAAC,WAAW,KAAG,IAC7B,EAER,CAAC,eAAe,IAAI,WAAW,IAAI,CAClC,cACE,IAAI,EAAC,SAAS,gBACH,qBAAqB,EAChC,SAAS,EAAE,EAAE,CACX,yHAAyH,EACzH,8BAA8B,CAC/B,YAEA,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;4CAC3B,MAAM,QAAQ,GAAG,CAAC,KAAK,aAAa,CAAC;4CACrC,OAAO,CACL,kBAEE,IAAI,EAAC,QAAQ,EACb,IAAI,EAAC,QAAQ,mBACE,QAAQ,EACvB,SAAS,EAAE,EAAE,CACX,wGAAwG,EACxG,2BAA2B,EAC3B,QAAQ,IAAI,iBAAiB,CAC9B,EACD,OAAO,EAAE,GAAG,EAAE;oDACZ,mBAAmB,CAAC,CAAC,CAAC,CAAC;oDACvB,cAAc,CAAC,KAAK,CAAC,CAAC;gDACxB,CAAC,aAED,eAAM,SAAS,EAAC,0BAA0B,YAAE,YAAY,CAAC,CAAC,CAAC,CAAC,KAAK,GAAQ,EACxE,QAAQ,IAAI,KAAC,SAAS,IAAC,SAAS,EAAC,+BAA+B,GAAG,KAf/D,CAAC,CAgBC,CACV,CAAC;wCACJ,CAAC,CAAC,GACE,CACP,IACG,EAOL,qBAAqB,IAAI,CACxB,eAAK,SAAS,EAAC,gGAAgG,aAC7G,eAAK,SAAS,EAAC,uBAAuB,aACpC,eAAM,SAAS,EAAC,iCAAiC,0BAAiB,EAClE,eAAM,SAAS,EAAC,8CAA8C,2DAEvD,IACH,EACN,KAAC,MAAM,IACL,OAAO,EAAE,UAAU,EACnB,eAAe,EAAE,CAAC,IAAI,EAAE,EAAE,CACxB,mBAAmB,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,gBAExC,WAAW,GACtB,IACE,CACP,EAEA,kBAAkB,IAAI,CACrB,eAAK,SAAS,EAAC,gGAAgG,aAC7G,eAAK,SAAS,EAAC,uBAAuB,aACpC,eAAM,SAAS,EAAC,iCAAiC,yBAAgB,EACjE,eAAM,SAAS,EAAC,8CAA8C,YAC3D,gBAAgB;oDACf,CAAC,CAAC,6CAA6C;oDAC/C,CAAC,CAAC,6CAA6C,GAC5C,IACH,EACN,KAAC,MAAM,IACL,OAAO,EAAE,cAAc,EACvB,QAAQ,EAAE,gBAAgB,EAC1B,eAAe,EAAE,CAAC,IAAI,EAAE,EAAE,CACxB,oBAAoB,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,gBAE5C,UAAU,GACrB,IACE,CACP,EAGD,cAAK,SAAS,EAAC,oDAAoD,YACjE,gBACE,GAAG,EAAE,SAAS,EACd,IAAI,EAAC,WAAW,gBACL,eAAe,EAC1B,WAAW,EAAC,qBAAgB,EAC5B,KAAK,EAAE,WAAW,EAClB,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAC/C,SAAS,EAAE,aAAa,EACxB,SAAS,EAAE,EAAE,CACX,qGAAqG,EACrG,kBAAkB,CACnB,GACD,GACE,EAGN,eACE,GAAG,EAAE,OAAO,EACZ,IAAI,EAAC,SAAS,gBACH,kBAAkB,EAC7B,SAAS,EAAC,0CAA0C,aAEnD,aAAa,CAAC,MAAM,KAAK,CAAC,IAAI,SAAS,IAAI,CAC1C,eAAK,SAAS,EAAC,0EAA0E,aACvF,cAAK,SAAS,EAAC,+FAA+F,GAAG,EACjH,eAAM,SAAS,EAAC,uCAAuC,qCAAuB,IAC1E,CACP,EAEA,aAAa,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,SAAS,IAAI,KAAK,IAAI,IAAI,IAAI,CAC5D,eAAK,SAAS,EAAC,sEAAsE,aACnF,eAAM,SAAS,EAAC,uCAAuC,sCAA6B,EACpF,iBACE,IAAI,EAAC,QAAQ,EACb,SAAS,EAAE,EAAE,CACX,mHAAmH,EACnH,oEAAoE,CACrE,EACD,OAAO,EAAE,OAAO,sBAGT,IACL,CACP,EAEA,aAAa,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,SAAS,IAAI,KAAK,IAAI,IAAI,IAAI,CAC5D,cAAK,SAAS,EAAC,yEAAyE,gCAElF,CACP,EAGA,aAAa,CAAC,CAAC,CAAC,CACf,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,WAAW,CAAC,EAAE,EAAE,CAAC,CAChE,0BACE,cAAK,SAAS,EAAC,2HAA2H,YACvI,KAAK,GACF,EACL,WAAW,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAC1B,KAAC,QAAQ,IAEP,KAAK,EAAE,KAAK,EACZ,UAAU,EAAE,KAAK,CAAC,OAAO,KAAK,aAAa,EAAE,OAAO,EACpD,eAAe,EAAE,KAAK,EACtB,cAAc,EAAE,cAAc,EAC9B,OAAO,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,KAAK,CAAC,IAL5B,KAAK,CAAC,OAAO,CAMlB,CACH,CAAC,KAbM,KAAK,CAcT,CACP,CAAC,CACH,CAAC,CAAC,CAAC,CACF,aAAa,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,CAAC,CAChC,KAAC,QAAQ,IAEP,KAAK,EAAE,KAAK,EACZ,UAAU,EAAE,KAAK,CAAC,OAAO,KAAK,aAAa,EAAE,OAAO,EACpD,aAAa,EAAE,GAAG,KAAK,YAAY,EACnC,eAAe,EAAE,gBAAgB,IAAI,CAAC,OAAO,IAAI,CAAC,WAAW,IAAI,CAAC,OAAO,EACzE,cAAc,EAAE,cAAc,EAC9B,OAAO,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,KAAK,CAAC,EACjC,YAAY,EAAE,GAAG,EAAE,CAAC,eAAe,CAAC,GAAG,CAAC,IAPnC,KAAK,CAAC,OAAO,CAQlB,CACH,CAAC,CACH,EAGA,iBAAiB,IAAI,CACpB,iBACE,IAAI,EAAC,QAAQ,EACb,SAAS,EAAE,EAAE,CACX,gIAAgI,EAChI,2DAA2D,EAC3D,8FAA8F,CAC/F,EACD,OAAO,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,gCAGxB,CACV,IACG,IACQ,GACG,GACN,IACJ,CAChB,CAAC;AACJ,CAAC;AAYD,SAAS,QAAQ,CAAC,EAChB,KAAK,EACL,UAAU,EACV,aAAa,EACb,eAAe,EACf,cAAc,EACd,OAAO,EACP,YAAY,GACE;IACd,OAAO,CACL,uCACoB,EAAE,EACpB,IAAI,EAAC,QAAQ,mBACE,UAAU,EACzB,IAAI,EAAC,QAAQ,EACb,SAAS,EAAE,EAAE,CACX,qHAAqH,EACrH,uBAAuB,EACvB,aAAa,IAAI,0CAA0C,EAC3D,CAAC,aAAa,IAAI,2BAA2B,CAC9C,EACD,OAAO,EAAE,OAAO,EAChB,YAAY,EAAE,YAAY,aAE1B,eAAK,SAAS,EAAC,gDAAgD,aAC7D,eAAM,SAAS,EAAC,uDAAuD,YAAE,KAAK,CAAC,WAAW,GAAQ,EAMjG,KAAK,CAAC,gBAAgB,KAAK,KAAK,IAAI,CACnC,gBAAM,SAAS,EAAC,gGAAgG,aAC9G,KAAC,gBAAgB,KAAG,sBAEf,CACR,EAED,eAAM,SAAS,EAAC,0DAA0D,YACvE,cAAc;4BACb,CAAC,CAAC,GAAG,gBAAgB,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,eAAe,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE;4BAC3E,CAAC,CAAC,eAAe,CAAC,KAAK,CAAC,QAAQ,CAAC,GAC9B,EAEN,UAAU,IAAI,KAAC,SAAS,IAAC,SAAS,EAAC,+BAA+B,GAAG,IAClE,EAEL,eAAe,IAAI,KAAK,CAAC,gBAAgB,IAAI,CAC5C,eAAM,SAAS,EAAC,iFAAiF,YAC9F,KAAK,CAAC,gBAAgB,GAClB,CACR,IACM,CACV,CAAC;AACJ,CAAC;AAED,SAAS,WAAW;IAClB,OAAO,CACL,cACE,SAAS,EAAC,wCAAwC,EAClD,KAAK,EAAC,IAAI,EACV,MAAM,EAAC,IAAI,EACX,OAAO,EAAC,WAAW,EACnB,IAAI,EAAC,MAAM,EACX,MAAM,EAAC,cAAc,EACrB,WAAW,EAAC,KAAK,EACjB,aAAa,EAAC,OAAO,EACrB,cAAc,EAAC,OAAO,YAEtB,eAAM,CAAC,EAAC,2BAA2B,GAAG,GAClC,CACP,CAAC;AACJ,CAAC;AAED,SAAS,SAAS,CAAC,EAAE,SAAS,EAA0B;IACtD,OAAO,CACL,cACE,SAAS,EAAE,SAAS,EACpB,KAAK,EAAC,IAAI,EACV,MAAM,EAAC,IAAI,EACX,OAAO,EAAC,WAAW,EACnB,IAAI,EAAC,MAAM,EACX,MAAM,EAAC,cAAc,EACrB,WAAW,EAAC,GAAG,EACf,aAAa,EAAC,OAAO,EACrB,cAAc,EAAC,OAAO,YAEtB,eAAM,CAAC,EAAC,eAAe,GAAG,GACtB,CACP,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,SAAS,gBAAgB;IACvB,OAAO,CACL,eACE,KAAK,EAAC,IAAI,EACV,MAAM,EAAC,IAAI,EACX,OAAO,EAAC,WAAW,EACnB,IAAI,EAAC,MAAM,EACX,MAAM,EAAC,cAAc,EACrB,WAAW,EAAC,KAAK,EACjB,aAAa,EAAC,OAAO,EACrB,cAAc,EAAC,OAAO,kCAGtB,eAAM,CAAC,EAAC,KAAK,EAAC,CAAC,EAAC,GAAG,EAAC,KAAK,EAAC,GAAG,EAAC,MAAM,EAAC,GAAG,EAAC,EAAE,EAAC,KAAK,GAAG,EACpD,eAAM,CAAC,EAAC,wBAAwB,GAAG,EACnC,iBAAQ,EAAE,EAAC,KAAK,EAAC,EAAE,EAAC,KAAK,EAAC,CAAC,EAAC,KAAK,EAAC,IAAI,EAAC,cAAc,EAAC,MAAM,EAAC,MAAM,GAAG,EACtE,eAAM,CAAC,EAAC,YAAY,GAAG,IACnB,CACP,CAAC;AACJ,CAAC;AAED,SAAS,QAAQ;IACf,OAAO,CACL,cACE,SAAS,EAAC,cAAc,EACxB,KAAK,EAAC,GAAG,EACT,MAAM,EAAC,IAAI,EACX,OAAO,EAAC,UAAU,EAClB,IAAI,EAAC,cAAc,iCAGnB,eAAM,CAAC,EAAC,mDAAmD,GAAG,GAC1D,CACP,CAAC;AACJ,CAAC"}
package/models/index.d.ts CHANGED
@@ -13,6 +13,6 @@ export { DEFAULT_HARNESS, HARNESS_LABELS, HARNESS_META, HARNESS_OPTIONS, toProto
13
13
  export type { HarnessOption, HarnessDisplayInfo } from "./harness.js";
14
14
  export { FAST_SERVICE_TIER, toProtoServiceTier, fromProtoServiceTier } from "./service-tier.js";
15
15
  export type { ServiceTierOption } from "./service-tier.js";
16
- export { toProtoThinkingMode, fromProtoThinkingMode } from "./thinking-mode.js";
16
+ export { toProtoThinkingMode, fromProtoThinkingMode, thinkingSelectable, thinkingLocked } from "./thinking-mode.js";
17
17
  export type { ThinkingModeOption } from "./thinking-mode.js";
18
18
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/models/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,kBAAkB,EAAE,QAAQ,EAAE,aAAa,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,0BAA0B,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACxO,YAAY,EAAE,cAAc,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAChG,YAAY,EAAE,SAAS,EAAE,qBAAqB,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AACnH,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,YAAY,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAC7F,OAAO,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAC1F,YAAY,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,YAAY,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,YAAY,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,YAAY,EAAE,eAAe,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChI,YAAY,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AACtE,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAChG,YAAY,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAChF,YAAY,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/models/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,kBAAkB,EAAE,QAAQ,EAAE,aAAa,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,0BAA0B,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACxO,YAAY,EAAE,cAAc,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAChG,YAAY,EAAE,SAAS,EAAE,qBAAqB,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AACnH,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,YAAY,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAC7F,OAAO,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAC1F,YAAY,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,YAAY,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,YAAY,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,YAAY,EAAE,eAAe,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChI,YAAY,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AACtE,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAChG,YAAY,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpH,YAAY,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC"}
package/models/index.js CHANGED
@@ -5,5 +5,5 @@ export { ModelSelector } from "./ModelSelector.js";
5
5
  export { HarnessSelector } from "./HarnessSelector.js";
6
6
  export { DEFAULT_HARNESS, HARNESS_LABELS, HARNESS_META, HARNESS_OPTIONS, toProtoHarness, fromProtoHarness } from "./harness.js";
7
7
  export { FAST_SERVICE_TIER, toProtoServiceTier, fromProtoServiceTier } from "./service-tier.js";
8
- export { toProtoThinkingMode, fromProtoThinkingMode } from "./thinking-mode.js";
8
+ export { toProtoThinkingMode, fromProtoThinkingMode, thinkingSelectable, thinkingLocked } from "./thinking-mode.js";
9
9
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/models/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,kBAAkB,EAAE,QAAQ,EAAE,aAAa,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,0BAA0B,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAGxO,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEzD,OAAO,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAE1F,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAEnD,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAEvD,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,YAAY,EAAE,eAAe,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAEhI,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAEhG,OAAO,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/models/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,kBAAkB,EAAE,QAAQ,EAAE,aAAa,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,0BAA0B,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAGxO,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEzD,OAAO,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAE1F,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAEnD,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAEvD,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,YAAY,EAAE,eAAe,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAEhI,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAEhG,OAAO,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC"}
@@ -101,20 +101,30 @@ export interface ModelInfo {
101
101
  readonly visionCapability?: boolean;
102
102
  /**
103
103
  * Tri-state thinking capability from the registry's `capabilities` block
104
- * (stigmer/stigmer#772), the same absence convention as
105
- * {@link visionCapability}:
104
+ * (stigmer/stigmer#772, stigmer/stigmer#1280), the same absence
105
+ * convention as {@link visionCapability}:
106
106
  *
107
- * - `true` — the model declares an extended-reasoning (thinking) variant;
108
- * the thinking switch in the model popover's options area may render
109
- * - `false` — explicitly assessed as having none
107
+ * - `true` — the model can be asked to think: its entry declares a
108
+ * thinking form, a fixed budget (`thinking`) or adaptive depth
109
+ * (`adaptiveThinking`); the thinking switch in the model popover's
110
+ * options area may render
111
+ * - `false` — explicitly assessed as having neither
110
112
  * - `undefined` — never assessed; **stay silent, never treat as false**
111
113
  *
112
114
  * Capability-gated, not pricing-gated (unlike {@link serviceTiers}):
113
115
  * thinking bills at base per-token rates, so no priced variant exists to
114
- * key on. v1 honors the selection on the cursor harness only — gate any
115
- * control on `harness === "cursor"` as well as this flag.
116
+ * key on. The entry is per harness, so the flag already describes the
117
+ * harness this model runs on; `thinkingSelectable` is the gate to use.
116
118
  */
117
119
  readonly thinkingCapable?: boolean;
120
+ /**
121
+ * Tri-state: `true` for a model that always thinks and refuses a request
122
+ * to turn thinking off (the server refuses an explicit "disabled" for
123
+ * it), `false` for one that may turn it off, `undefined` when never
124
+ * assessed. A control shows thinking on and locked for a `true` model
125
+ * (`thinkingLocked`); absence is never read as `false`.
126
+ */
127
+ readonly thinkingRequired?: boolean;
118
128
  }
119
129
  /**
120
130
  * Document-level vision byte budget advertised by the registry
@@ -1 +1 @@
1
- {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../src/models/registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../src/models/registry.ts"],"names":[],"mappings":"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"}
@@ -55,15 +55,31 @@ function parseVisionCapability(capabilities) {
55
55
  return typeof vision === "boolean" ? vision : undefined;
56
56
  }
57
57
  /**
58
- * Extract `capabilities.thinking` with the same tri-state convention as
59
- * {@link parseVisionCapability} (stigmer/stigmer#772): a missing or
60
- * malformed `capabilities` block stays `undefined`, never coerced to false.
58
+ * Whether the model can be asked to think: `capabilities.thinking` (a fixed
59
+ * budget) or `capabilities.adaptiveThinking` (adaptive depth), with the
60
+ * same tri-state convention as {@link parseVisionCapability}
61
+ * (stigmer/stigmer#772): a missing or malformed `capabilities` block, or
62
+ * one stating neither flag as a boolean, stays `undefined`, never coerced
63
+ * to false.
61
64
  */
62
65
  function parseThinkingCapability(capabilities) {
63
66
  if (!capabilities || typeof capabilities !== "object")
64
67
  return undefined;
65
- const thinking = capabilities.thinking;
66
- return typeof thinking === "boolean" ? thinking : undefined;
68
+ const { thinking, adaptiveThinking } = capabilities;
69
+ if (thinking === true || adaptiveThinking === true)
70
+ return true;
71
+ return typeof thinking === "boolean" || typeof adaptiveThinking === "boolean" ? false : undefined;
72
+ }
73
+ /**
74
+ * Extract `capabilities.thinkingRequired`, tri-state: only a boolean
75
+ * states it. The runner reads the same flag (`shared/model-registry.ts`);
76
+ * both sides must agree that absence means "never assessed".
77
+ */
78
+ function parseThinkingRequired(capabilities) {
79
+ if (!capabilities || typeof capabilities !== "object")
80
+ return undefined;
81
+ const required = capabilities.thinkingRequired;
82
+ return typeof required === "boolean" ? required : undefined;
67
83
  }
68
84
  /**
69
85
  * Parse the document-level `limits.vision` block. Returns `undefined` for
@@ -116,6 +132,7 @@ export function parseRegistryDocument(data) {
116
132
  .map((m) => {
117
133
  const visionCapability = parseVisionCapability(m.capabilities);
118
134
  const thinkingCapable = parseThinkingCapability(m.capabilities);
135
+ const thinkingRequired = parseThinkingRequired(m.capabilities);
119
136
  return {
120
137
  modelId: m.id,
121
138
  provider: m.provider,
@@ -132,6 +149,7 @@ export function parseRegistryDocument(data) {
132
149
  // (tri-state absence, not an explicit undefined).
133
150
  ...(visionCapability !== undefined ? { visionCapability } : {}),
134
151
  ...(thinkingCapable !== undefined ? { thinkingCapable } : {}),
152
+ ...(thinkingRequired !== undefined ? { thinkingRequired } : {}),
135
153
  };
136
154
  });
137
155
  const visionLimits = parseVisionLimits(root);
@@ -1 +1 @@
1
- {"version":3,"file":"registry.js","sourceRoot":"","sources":["../src/models/registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"registry.js","sourceRoot":"","sources":["../src/models/registry.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import { ThinkingMode } from "@stigmer/protos/ai/stigmer/agentic/agentexecution/v1/enum_pb";
2
+ import type { ModelInfo } from "./registry.js";
2
3
  /**
3
4
  * String form of the thinking mode for component props and hook inputs
4
5
  * (stigmer/stigmer#772). Mirrors {@link ServiceTierOption}: components
@@ -24,4 +25,20 @@ export declare function toProtoThinkingMode(mode: ThinkingModeOption): ThinkingM
24
25
  * account default).
25
26
  */
26
27
  export declare function fromProtoThinkingMode(mode: ThinkingMode | undefined): ThinkingModeOption | undefined;
28
+ /**
29
+ * Whether the thinking switch may act on this model: the model's registry
30
+ * entry declares a thinking form ({@link ModelInfo.thinkingCapable}). The
31
+ * entry belongs to the harness the model runs on, so the answer holds on
32
+ * either harness; there is no separate harness check. The one gate every
33
+ * control and submit path uses, so a switch never renders where the server
34
+ * would refuse the selection.
35
+ */
36
+ export declare function thinkingSelectable(model: ModelInfo): boolean;
37
+ /**
38
+ * Whether the model always thinks ({@link ModelInfo.thinkingRequired}):
39
+ * its switch shows on and cannot be turned off, and a submit carries
40
+ * "enabled" for it, never "disabled", which the server refuses for such a
41
+ * model.
42
+ */
43
+ export declare function thinkingLocked(model: ModelInfo): boolean;
27
44
  //# sourceMappingURL=thinking-mode.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"thinking-mode.d.ts","sourceRoot":"","sources":["../src/models/thinking-mode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,8DAA8D,CAAC;AAE5F;;;;;;;;;;GAUG;AACH,MAAM,MAAM,kBAAkB,GAAG,UAAU,GAAG,SAAS,CAAC;AAExD;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,kBAAkB,GAAG,YAAY,CAQ1E;AAED;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,YAAY,GAAG,SAAS,GAC7B,kBAAkB,GAAG,SAAS,CAShC"}
1
+ {"version":3,"file":"thinking-mode.d.ts","sourceRoot":"","sources":["../src/models/thinking-mode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,8DAA8D,CAAC;AAE5F,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE/C;;;;;;;;;;GAUG;AACH,MAAM,MAAM,kBAAkB,GAAG,UAAU,GAAG,SAAS,CAAC;AAExD;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,kBAAkB,GAAG,YAAY,CAQ1E;AAED;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,YAAY,GAAG,SAAS,GAC7B,kBAAkB,GAAG,SAAS,CAShC;AAED;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAE5D;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAExD"}
@@ -29,4 +29,24 @@ export function fromProtoThinkingMode(mode) {
29
29
  return undefined;
30
30
  }
31
31
  }
32
+ /**
33
+ * Whether the thinking switch may act on this model: the model's registry
34
+ * entry declares a thinking form ({@link ModelInfo.thinkingCapable}). The
35
+ * entry belongs to the harness the model runs on, so the answer holds on
36
+ * either harness; there is no separate harness check. The one gate every
37
+ * control and submit path uses, so a switch never renders where the server
38
+ * would refuse the selection.
39
+ */
40
+ export function thinkingSelectable(model) {
41
+ return model.thinkingCapable === true;
42
+ }
43
+ /**
44
+ * Whether the model always thinks ({@link ModelInfo.thinkingRequired}):
45
+ * its switch shows on and cannot be turned off, and a submit carries
46
+ * "enabled" for it, never "disabled", which the server refuses for such a
47
+ * model.
48
+ */
49
+ export function thinkingLocked(model) {
50
+ return model.thinkingRequired === true;
51
+ }
32
52
  //# sourceMappingURL=thinking-mode.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"thinking-mode.js","sourceRoot":"","sources":["../src/models/thinking-mode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,8DAA8D,CAAC;AAe5F;;GAEG;AACH,MAAM,UAAU,mBAAmB,CAAC,IAAwB;IAC1D,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,SAAS;YACZ,OAAO,YAAY,CAAC,OAAO,CAAC;QAC9B,KAAK,UAAU,CAAC;QAChB;YACE,OAAO,YAAY,CAAC,QAAQ,CAAC;IACjC,CAAC;AACH,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,qBAAqB,CACnC,IAA8B;IAE9B,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,YAAY,CAAC,QAAQ;YACxB,OAAO,UAAU,CAAC;QACpB,KAAK,YAAY,CAAC,OAAO;YACvB,OAAO,SAAS,CAAC;QACnB;YACE,OAAO,SAAS,CAAC;IACrB,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"thinking-mode.js","sourceRoot":"","sources":["../src/models/thinking-mode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,8DAA8D,CAAC;AAiB5F;;GAEG;AACH,MAAM,UAAU,mBAAmB,CAAC,IAAwB;IAC1D,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,SAAS;YACZ,OAAO,YAAY,CAAC,OAAO,CAAC;QAC9B,KAAK,UAAU,CAAC;QAChB;YACE,OAAO,YAAY,CAAC,QAAQ,CAAC;IACjC,CAAC;AACH,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,qBAAqB,CACnC,IAA8B;IAE9B,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,YAAY,CAAC,QAAQ;YACxB,OAAO,UAAU,CAAC;QACpB,KAAK,YAAY,CAAC,OAAO;YACvB,OAAO,SAAS,CAAC;QACnB;YACE,OAAO,SAAS,CAAC;IACrB,CAAC;AACH,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,kBAAkB,CAAC,KAAgB;IACjD,OAAO,KAAK,CAAC,eAAe,KAAK,IAAI,CAAC;AACxC,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,cAAc,CAAC,KAAgB;IAC7C,OAAO,KAAK,CAAC,gBAAgB,KAAK,IAAI,CAAC;AACzC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@stigmer/react",
3
- "version": "3.38.2",
3
+ "version": "3.38.3",
4
4
  "description": "React provider and client hook for the Stigmer platform SDK",
5
5
  "license": "Apache-2.0",
6
6
  "type": "module",
@@ -37,8 +37,8 @@
37
37
  "dependencies": {
38
38
  "@bufbuild/protovalidate": "^1.1.1",
39
39
  "@dagrejs/dagre": "^1.1.4",
40
- "@stigmer/plugin-package": "3.38.2",
41
- "@stigmer/theme": "3.38.2",
40
+ "@stigmer/plugin-package": "3.38.3",
41
+ "@stigmer/theme": "3.38.3",
42
42
  "diff": "^8.0.3",
43
43
  "fflate": "^0.8.2",
44
44
  "hast-util-to-jsx-runtime": "^2.3.6",
@@ -61,8 +61,8 @@
61
61
  "@codemirror/state": "^6.0.0",
62
62
  "@codemirror/view": "^6.0.0",
63
63
  "@lezer/highlight": "^1.0.0",
64
- "@stigmer/protos": "3.38.2",
65
- "@stigmer/sdk": "3.38.2",
64
+ "@stigmer/protos": "3.38.3",
65
+ "@stigmer/sdk": "3.38.3",
66
66
  "@tanstack/react-table": "^8.20.0",
67
67
  "@xyflow/react": "^12.0.0",
68
68
  "elkjs": "^0.9.0",
@@ -8,7 +8,7 @@ import { ComposerToolbar } from "./ComposerToolbar.js";
8
8
  import { type ConfigureMenuItem } from "./ConfigureMenu.js";
9
9
  import type { HarnessOption } from "../models/harness.js";
10
10
  import { FAST_SERVICE_TIER, type ServiceTierOption } from "../models/service-tier.js";
11
- import type { ThinkingModeOption } from "../models/thinking-mode.js";
11
+ import { thinkingLocked, thinkingSelectable, type ThinkingModeOption } from "../models/thinking-mode.js";
12
12
  import type { InteractionModeOption } from "./InteractionModePicker.js";
13
13
  import { parseModelKey } from "../models/registry.js";
14
14
  import { useModelRegistry } from "../models/useModelRegistry.js";
@@ -843,12 +843,12 @@ const SessionComposerInner = forwardRef<SessionComposerHandle, SessionComposerPr
843
843
  : "standard";
844
844
 
845
845
  // "enabled" rides under the identical rule, keyed on the capability
846
- // (cursor-harness models only — v1 has no native thinking mapping, #772).
846
+ // (#772, #1280). A model that always thinks submits "enabled", what
847
+ // its locked switch shows; "disabled" is refused for it at create.
847
848
  const effectiveThinkingMode: ThinkingModeOption =
848
- thinkingMode === "enabled"
849
- && effectiveModel !== undefined
850
- && effectiveModel.harness === "cursor"
851
- && effectiveModel.thinkingCapable === true
849
+ effectiveModel !== undefined
850
+ && (thinkingLocked(effectiveModel)
851
+ || (thinkingMode === "enabled" && thinkingSelectable(effectiveModel)))
852
852
  ? "enabled"
853
853
  : "disabled";
854
854
 
@@ -143,12 +143,14 @@ export interface SharedAgentExecutionFields {
143
143
  * Thinking mode for this execution's model calls (stigmer/stigmer#772).
144
144
  *
145
145
  * - `"disabled"` (default): the model's base variant, pinned explicitly —
146
- * never the provider account default.
146
+ * never the provider account default. Refused for a model that always
147
+ * thinks (`ModelInfo.thinkingRequired`); leave the mode unset or send
148
+ * `"enabled"` for it.
147
149
  * - `"enabled"`: the model's extended-reasoning variant, billed at base
148
150
  * per-token rates (reasoning tokens bill as output). Valid only for
149
- * cursor-harness models whose registry entry declares the thinking
150
- * capability — the backend refuses the create otherwise, so gate the
151
- * option on `ModelInfo.thinkingCapable`.
151
+ * models whose registry entry, on the harness the execution runs on,
152
+ * declares a thinking form — the backend refuses the create otherwise,
153
+ * so gate the option on `thinkingSelectable(model)`.
152
154
  *
153
155
  * Maps to `ExecutionConfig.thinking_mode` in the proto.
154
156
  */
package/src/index.ts CHANGED
@@ -62,6 +62,8 @@ export {
62
62
  HARNESS_LABELS,
63
63
  toProtoHarness,
64
64
  fromProtoHarness,
65
+ thinkingSelectable,
66
+ thinkingLocked,
65
67
  } from "./models/index.js";
66
68
  export type {
67
69
  ModelInfo,
@@ -9,7 +9,7 @@ import { useModelRegistry } from "./useModelRegistry.js";
9
9
  import type { ModelInfo, CostTier, SpeedTier } from "./registry.js";
10
10
  import { HARNESS_META, HARNESS_OPTIONS, type HarnessOption } from "./harness.js";
11
11
  import { FAST_SERVICE_TIER, type ServiceTierOption } from "./service-tier.js";
12
- import type { ThinkingModeOption } from "./thinking-mode.js";
12
+ import { thinkingLocked, thinkingSelectable, type ThinkingModeOption } from "./thinking-mode.js";
13
13
 
14
14
  const COST_TIER_LABEL: Record<CostTier, string> = {
15
15
  economy: "$",
@@ -24,17 +24,6 @@ const SPEED_TIER_LABEL: Record<SpeedTier, string> = {
24
24
  slow: "Powerful",
25
25
  };
26
26
 
27
- /**
28
- * Whether the thinking switch may act on this model (stigmer/stigmer#772):
29
- * the registry declares the capability AND the model is cursor-harness —
30
- * the only harness with a thinking translation in v1. Native models
31
- * truthfully declare the capability too, but selecting it there would be
32
- * refused at create time, so the control never renders for them.
33
- */
34
- function supportsThinking(model: ModelInfo): boolean {
35
- return model.harness === "cursor" && model.thinkingCapable === true;
36
- }
37
-
38
27
  /** Props for {@link ModelSelector}. */
39
28
  export interface ModelSelectorProps {
40
29
  /** Currently selected model ID. */
@@ -116,10 +105,11 @@ export interface ModelSelectorProps {
116
105
  /**
117
106
  * Called when the user toggles extended reasoning. Providing this enables
118
107
  * the "Thinking" switch as a sibling of the fast-tier switch in the
119
- * popover's options area, which renders ONLY while the selected model is
120
- * a cursor-harness model declaring the thinking capability
121
- * ({@link ModelInfo.thinkingCapable}) — no dead controls, and v1 honors
122
- * the selection on the cursor harness only.
108
+ * popover's options area, which renders ONLY while the selected model
109
+ * declares a thinking form ({@link ModelInfo.thinkingCapable}), on either
110
+ * harness — no dead controls. For a model that always thinks
111
+ * ({@link ModelInfo.thinkingRequired}) the switch shows on and disabled,
112
+ * whatever `thinkingMode` holds; the callback is not called for it.
123
113
  *
124
114
  * The same persistence rule as the fast tier: an active thinking mode
125
115
  * survives switches between thinking-capable models (trigger badge +
@@ -164,7 +154,8 @@ export interface ModelSelectorProps {
164
154
  * **Thinking mode (#772).** The same options-area pattern for the second
165
155
  * variant dimension: opting in via
166
156
  * {@link ModelSelectorProps.onThinkingModeChange} renders a "Thinking"
167
- * switch for cursor-harness models declaring the thinking capability.
157
+ * switch for models declaring a thinking form, on either harness, shown on
158
+ * and locked for a model that always thinks.
168
159
  * Capability-gated rather than priced-variant-gated — thinking bills at
169
160
  * base per-token rates and costs more only through extra reasoning
170
161
  * (output) tokens. Persistence and reset rules mirror the fast tier's.
@@ -324,12 +315,12 @@ export function ModelSelector({
324
315
  onServiceTierChange("standard");
325
316
  }
326
317
  // The identical persistence rule for the thinking mode (#772):
327
- // survives between thinking-capable cursor models, resets only
328
- // where the selection would be refused at create time.
318
+ // survives between thinking-capable models, resets only where the
319
+ // selection would be refused at create time.
329
320
  if (
330
321
  thinkingMode === "enabled"
331
322
  && onThinkingModeChange
332
- && !supportsThinking(model)
323
+ && !thinkingSelectable(model)
333
324
  ) {
334
325
  onThinkingModeChange("disabled");
335
326
  }
@@ -399,10 +390,14 @@ export function ModelSelector({
399
390
  const showThinkingToggle =
400
391
  onThinkingModeChange !== undefined
401
392
  && selectedModel !== undefined
402
- && supportsThinking(selectedModel);
393
+ && thinkingSelectable(selectedModel);
394
+ // A model that always thinks shows the switch on and locked: what the
395
+ // switch shows is what the model does.
396
+ const thinkingIsLocked = selectedModel !== undefined && thinkingLocked(selectedModel);
403
397
  const thinkingActive =
404
- thinkingMode === "enabled"
405
- && (selectedModel !== undefined && supportsThinking(selectedModel));
398
+ thinkingIsLocked
399
+ || (thinkingMode === "enabled"
400
+ && (selectedModel !== undefined && thinkingSelectable(selectedModel)));
406
401
 
407
402
  const usingPlaceholder = !value && placeholderLabel !== undefined;
408
403
  const triggerLabel = usingPlaceholder
@@ -563,11 +558,14 @@ export function ModelSelector({
563
558
  <div className="stg:flex stg:flex-col">
564
559
  <span className="stg:text-xs stg:text-foreground">Thinking</span>
565
560
  <span className="stg:text-[0.65rem] stg:text-muted-foreground">
566
- Extended reasoning; uses more output tokens
561
+ {thinkingIsLocked
562
+ ? "This model always reasons before it answers"
563
+ : "Extended reasoning; uses more output tokens"}
567
564
  </span>
568
565
  </div>
569
566
  <Switch
570
567
  checked={thinkingActive}
568
+ disabled={thinkingIsLocked}
571
569
  onCheckedChange={(next) =>
572
570
  onThinkingModeChange?.(next ? "enabled" : "disabled")
573
571
  }