From 0f182048ed812cb7741e1bb504a3e54c8763b73b Mon Sep 17 00:00:00 2001 From: Bil0000 <62337003+Bil0000@users.noreply.github.com> Date: Thu, 29 Oct 2026 16:34:38 +0100 Subject: [PATCH 01/18] feat(claude): Ultracode is a toggle that works with any effort Co-Authored-By: Claude Opus 5.5 --- apps/server/src/claudeModelOptions.test.ts | 20 +++++++++++++ apps/server/src/claudeModelOptions.ts | 12 ++++++-- .../Adapters/ClaudeAdapterV2.test.ts | 5 ++-- .../server/src/provider/ClaudeModelCatalog.ts | 28 +++++++++++++++---- .../textGeneration/ClaudeTextGeneration.ts | 3 +- packages/client-runtime/src/modelTraits.ts | 4 +++ packages/shared/src/model.test.ts | 28 +++++++++++++++++++ packages/shared/src/model.ts | 27 ++++++++++++++++-- 8 files changed, 113 insertions(+), 14 deletions(-) diff --git a/apps/server/src/claudeModelOptions.test.ts b/apps/server/src/claudeModelOptions.test.ts index 4a34d98a796bd..6e1986d7a5b18 100644 --- a/apps/server/src/claudeModelOptions.test.ts +++ b/apps/server/src/claudeModelOptions.test.ts @@ -30,6 +30,26 @@ describe("compileClaudeModelSelection", () => { }); }); + it("runs Ultracode at the chosen effort and reads the old Ultracode effort as xhigh", () => { + expect( + compileClaudeModelSelection( + selection("claude-opus-5-5", [ + { id: "effort", value: "high" }, + { id: "ultracode", value: true }, + ]), + ), + ).toMatchObject({ effort: "high", settings: { ultracode: true } }); + expect( + compileClaudeModelSelection( + selection("claude-opus-5-5", [{ id: "effort", value: "ultracode" }]), + ), + ).toMatchObject({ effort: "xhigh", settings: { ultracode: true } }); + expect( + compileClaudeModelSelection(selection("claude-opus-5-5", [{ id: "effort", value: "high" }])) + .settings, + ).not.toHaveProperty("ultracode"); + }); + it("uses the model default SDK effort alongside prompt-injected effort", () => { expect( compileClaudeModelSelection( diff --git a/apps/server/src/claudeModelOptions.ts b/apps/server/src/claudeModelOptions.ts index 06841da9bdb28..48b6e0d6115a4 100644 --- a/apps/server/src/claudeModelOptions.ts +++ b/apps/server/src/claudeModelOptions.ts @@ -9,7 +9,6 @@ import { import { BUNDLED_CLAUDE_MODEL_CATALOG, getClaudeCatalogModelCapabilities, - isClaudeCatalogUltracodeEffort, normalizeClaudeCatalogEffort, resolveClaudeCatalogApiModelId, resolveClaudeCatalogEffort, @@ -29,7 +28,10 @@ export function compileClaudeModelSelection( catalog: ClaudeModelCatalog = BUNDLED_CLAUDE_MODEL_CATALOG, ): CompiledClaudeModelSelection { const capabilities = getClaudeCatalogModelCapabilities(catalog, selection.model); - const descriptors = getProviderOptionDescriptors({ caps: capabilities }); + const descriptors = getProviderOptionDescriptors({ + caps: capabilities, + selections: selection.options, + }); const supportsBoolean = (id: string) => descriptors.some((descriptor) => descriptor.type === "boolean" && descriptor.id === id); const rawEffort = getModelSelectionStringOptionValue(selection, "effort"); @@ -44,7 +46,11 @@ export function compileClaudeModelSelection( const settings = { ...(typeof thinking === "boolean" ? { alwaysThinkingEnabled: thinking } : {}), ...(typeof fastMode === "boolean" ? { fastMode } : {}), - ...(isClaudeCatalogUltracodeEffort(resolvedEffort) ? { ultracode: true } : {}), + ...(descriptors.some( + (descriptor) => descriptor.id === "ultracode" && descriptor.currentValue === true, + ) + ? { ultracode: true } + : {}), }; const apiModelId = resolveClaudeCatalogApiModelId(catalog, selection); const promptEffort = resolvePromptInjectedEffort(capabilities, rawEffort) ?? undefined; diff --git a/apps/server/src/orchestration-v2/Adapters/ClaudeAdapterV2.test.ts b/apps/server/src/orchestration-v2/Adapters/ClaudeAdapterV2.test.ts index ea5ee249a787f..d9e53bae17b64 100644 --- a/apps/server/src/orchestration-v2/Adapters/ClaudeAdapterV2.test.ts +++ b/apps/server/src/orchestration-v2/Adapters/ClaudeAdapterV2.test.ts @@ -4408,7 +4408,8 @@ describe("ClaudeAdapterV2 background wake turns", () => { turn(3, { ...normal, options: [ - { id: "effort", value: "ultracode" }, + { id: "effort", value: "high" }, + { id: "ultracode", value: true }, { id: "fastMode", value: true }, ], }), @@ -4418,7 +4419,7 @@ describe("ClaudeAdapterV2 background wake turns", () => { yield* settle; assert.deepEqual(harness.liveSelectionChanges, [ { model: "claude-opus-5-5" }, - { effortLevel: "xhigh", fastMode: true, ultracode: true }, + { effortLevel: "high", fastMode: true, ultracode: true }, { model: "claude-sonnet-4-6" }, { effortLevel: "high", fastMode: null, ultracode: null }, ]); diff --git a/apps/server/src/provider/ClaudeModelCatalog.ts b/apps/server/src/provider/ClaudeModelCatalog.ts index f67628efb83a3..dc3adffb14589 100644 --- a/apps/server/src/provider/ClaudeModelCatalog.ts +++ b/apps/server/src/provider/ClaudeModelCatalog.ts @@ -47,8 +47,9 @@ function tryResolveClaudeModelCatalog( const profile = decodeClaudeProfileAdapter(entry.profileAdapter ?? {}); const adapter = decodeClaudeModelAdapter(entry.adapter ?? {}); if (Option.isNone(profile) || Option.isNone(adapter)) return null; + const model = ModelCatalog.catalogServerModel(resolved, entry); models.push({ - model: ModelCatalog.catalogServerModel(resolved, entry), + model: { ...model, capabilities: withUltracodeToggle(model.capabilities) }, runtime: profile.value.claudeCode ?? {}, compatibility: adapter.value.claudeCode ?? {}, }); @@ -59,6 +60,27 @@ function tryResolveClaudeModelCatalog( }; } +// The manifest keeps Ultracode as an effort level because released servers read it from main. +function withUltracodeToggle(capabilities: ModelCapabilities | null): ModelCapabilities | null { + const descriptors = capabilities?.optionDescriptors ?? []; + const effortIndex = descriptors.findIndex( + (descriptor) => + descriptor.id === "effort" && + descriptor.type === "select" && + descriptor.options.some((option) => option.id === "ultracode"), + ); + const effort = descriptors[effortIndex]; + if (effort?.type !== "select") return capabilities; + return { + optionDescriptors: descriptors.toSpliced( + effortIndex, + 1, + { ...effort, options: effort.options.filter((option) => option.id !== "ultracode") }, + { id: "ultracode", label: "Ultracode", type: "boolean" }, + ), + }; +} + /** Resolve the fallback on each read so its new-model badges can expire. */ export function resolveClaudeModelCatalog( catalog: ModelCatalog.ProviderCatalog | undefined, @@ -235,10 +257,6 @@ export function normalizeClaudeCatalogEffort( return effortMap[effort] ?? undefined; } -export function isClaudeCatalogUltracodeEffort(effort: string | null | undefined): boolean { - return effort === "ultracode"; -} - function resolveClaudeCatalogContextWindow( catalog: ClaudeModelCatalog, modelSelection: ModelSelection | undefined, diff --git a/apps/server/src/textGeneration/ClaudeTextGeneration.ts b/apps/server/src/textGeneration/ClaudeTextGeneration.ts index 8fa9ccb1c8094..e26e59bdd0807 100644 --- a/apps/server/src/textGeneration/ClaudeTextGeneration.ts +++ b/apps/server/src/textGeneration/ClaudeTextGeneration.ts @@ -22,7 +22,6 @@ import { BUNDLED_CLAUDE_MODEL_CATALOG, type ClaudeModelCatalog, getClaudeCatalogModelCapabilities, - isClaudeCatalogUltracodeEffort, normalizeClaudeCatalogEffort, resolveClaudeCatalogApiModelId, resolveClaudeCatalogEffort, @@ -159,7 +158,7 @@ export const makeClaudeTextGeneration = Effect.fn("makeClaudeTextGeneration")(fu resolvedEffort, resolvedModelSelection.model, ); - const ultracode = isClaudeCatalogUltracodeEffort(resolvedEffort); + const ultracode = findDescriptor("ultracode")?.currentValue === true; const thinkingDescriptor = findDescriptor("thinking"); const fastModeDescriptor = findDescriptor("fastMode"); // Only a chosen value; otherwise Claude Code's own default applies, as in chat turns. diff --git a/packages/client-runtime/src/modelTraits.ts b/packages/client-runtime/src/modelTraits.ts index 734a84c468aa0..ae8b21a021f45 100644 --- a/packages/client-runtime/src/modelTraits.ts +++ b/packages/client-runtime/src/modelTraits.ts @@ -127,6 +127,10 @@ export function buildTraitsTriggerDisplay(input: { fastModeFallbackLabel = speedLabel ?? "Normal"; continue; } + if (descriptor.id === "ultracode" && descriptor.type === "boolean") { + if (descriptor.currentValue === true) labels.push(descriptor.label); + continue; + } if ( input.provider === "codex" && descriptor.id === "serviceTier" && diff --git a/packages/shared/src/model.test.ts b/packages/shared/src/model.test.ts index 396d4d9c86c26..5de287893e884 100644 --- a/packages/shared/src/model.test.ts +++ b/packages/shared/src/model.test.ts @@ -50,6 +50,34 @@ describe("descriptor helpers", () => { ).toEqual([{ id: "fastMode", value: true }]); }); + it("reads the old Ultracode effort level as xhigh with the Ultracode toggle on", () => { + const caps = createModelCapabilities({ + optionDescriptors: [ + { + id: "effort", + label: "Reasoning", + type: "select", + options: [ + { id: "high", label: "High", isDefault: true }, + { id: "xhigh", label: "Extra High" }, + ], + }, + { id: "ultracode", label: "Ultracode", type: "boolean" }, + ], + }); + const selections = [{ id: "effort", value: "ultracode" }]; + + expect( + buildExplicitProviderOptionSelectionsFromDescriptors( + getProviderOptionDescriptors({ caps, selections }), + selections, + ), + ).toEqual([ + { id: "effort", value: "xhigh" }, + { id: "ultracode", value: true }, + ]); + }); + it("compares complete model selections independent of option ordering", () => { const left = createModelSelection(ProviderInstanceId.make("codex"), "gpt-5.4", [ { id: "reasoningEffort", value: "high" }, diff --git a/packages/shared/src/model.ts b/packages/shared/src/model.ts index 51cc1430321d8..4886680aa951a 100644 --- a/packages/shared/src/model.ts +++ b/packages/shared/src/model.ts @@ -196,12 +196,33 @@ function withDescriptorCurrentValue( }; } +// Ultracode was a Claude effort level before it became its own toggle; that level ran at xhigh. +function withLegacyUltracodeEffort( + descriptors: ReadonlyArray, + selections: ReadonlyArray | null | undefined, +): ReadonlyArray | null | undefined { + if ( + getRawSelectionValueById(selections, "effort") !== "ultracode" || + !descriptors.some( + (descriptor) => descriptor.id === "ultracode" && descriptor.type === "boolean", + ) + ) { + return selections; + } + return [ + ...(selections ?? []).filter(({ id }) => id !== "effort" && id !== "ultracode"), + { id: "effort", value: "xhigh" }, + { id: "ultracode", value: true }, + ]; +} + export function getProviderOptionDescriptors(input: { caps: ModelCapabilities; selections?: ReadonlyArray | null | undefined; }): ReadonlyArray { - const { caps, selections } = input; + const { caps } = input; const baseDescriptors = (caps.optionDescriptors ?? []).map(cloneDescriptor); + const selections = withLegacyUltracodeEffort(baseDescriptors, input.selections); return baseDescriptors.map((descriptor) => withDescriptorCurrentValue( @@ -312,7 +333,9 @@ export function buildExplicitProviderOptionSelectionsFromDescriptors( if (!selections || selections.length === 0) { return undefined; } - const explicitIds = new Set(selections.map((selection) => selection.id)); + const explicitIds = new Set( + (withLegacyUltracodeEffort(descriptors ?? [], selections) ?? []).map(({ id }) => id), + ); const normalized = buildProviderOptionSelectionsFromDescriptors(descriptors)?.filter( (selection) => explicitIds.has(selection.id), ); From 9bbf5c7608f1d77e997de1788f0989f84da42c04 Mon Sep 17 00:00:00 2001 From: Bil0000 <62337003+Bil0000@users.noreply.github.com> Date: Thu, 29 Oct 2026 17:41:00 +0100 Subject: [PATCH 02/18] fix(mcp): old Ultracode effort requests and explicit off still work Co-Authored-By: Claude Opus 5.5 --- .../src/mcp/OrchestratorMcpService.test.ts | 42 ++++++++++++++++--- apps/server/src/mcp/OrchestratorMcpService.ts | 11 +++-- packages/shared/src/model.test.ts | 6 +++ packages/shared/src/model.ts | 5 ++- 4 files changed, 52 insertions(+), 12 deletions(-) diff --git a/apps/server/src/mcp/OrchestratorMcpService.test.ts b/apps/server/src/mcp/OrchestratorMcpService.test.ts index 6450f9acac2cb..d25ec08c8e53d 100644 --- a/apps/server/src/mcp/OrchestratorMcpService.test.ts +++ b/apps/server/src/mcp/OrchestratorMcpService.test.ts @@ -2526,6 +2526,18 @@ describe("OrchestratorMcpService provider resolution", () => { target: { providerInstanceId: peerId, options: { reasoningEffort: "max" } }, expected: { instanceId: peerId, model: inherited.model, options: override }, }, + { + name: "old Ultracode effort level", + target: { model: "ultracode-model", options: { effort: "ultracode" } }, + expected: { + instanceId: codexInstanceId, + model: "ultracode-model", + options: [ + { id: "effort", value: "xhigh" }, + { id: "ultracode", value: true }, + ], + }, + }, ] as const; for (const testCase of cases) { const commands: Array = []; @@ -2567,12 +2579,30 @@ describe("OrchestratorMcpService provider resolution", () => { driver, model: inherited.model, }), - models: [inherited.model, "other-model"].map((model) => ({ - slug: model, - name: model, - isCustom: false, - capabilities: null, - })), + models: [ + ...[inherited.model, "other-model"].map((model) => ({ + slug: model, + name: model, + isCustom: false, + capabilities: null, + })), + { + slug: "ultracode-model", + name: "ultracode-model", + isCustom: false, + capabilities: { + optionDescriptors: [ + { + id: "effort", + label: "Reasoning", + type: "select", + options: [{ id: "xhigh", label: "Extra High" }], + }, + { id: "ultracode", label: "Ultracode", type: "boolean" }, + ], + }, + }, + ], }, providerSnapshot({ instanceId: peerId, driver, model: inherited.model }), ]), diff --git a/apps/server/src/mcp/OrchestratorMcpService.ts b/apps/server/src/mcp/OrchestratorMcpService.ts index d8dacb35a0617..77c077e3b440a 100644 --- a/apps/server/src/mcp/OrchestratorMcpService.ts +++ b/apps/server/src/mcp/OrchestratorMcpService.ts @@ -63,7 +63,7 @@ import { ThreadId, isOrchestrationV2WorkActive, } from "@t3tools/contracts"; -import { getProviderOptionCurrentValue } from "@t3tools/shared/model"; +import { getProviderOptionCurrentValue, withLegacyUltracodeEffort } from "@t3tools/shared/model"; import { runRanAfter } from "@t3tools/shared/orchestrationV2ThreadError"; import { formatThreadLink } from "@t3tools/shared/threadLinks"; import { @@ -1354,10 +1354,13 @@ const make = Effect.gen(function* () { ); } - const requestedOptions = input.target?.options; + const descriptors = provider.models.find((candidate) => candidate.slug === model)?.capabilities + ?.optionDescriptors; + const requestedOptions = + input.target?.options === undefined + ? undefined + : (withLegacyUltracodeEffort(descriptors ?? [], input.target.options) ?? []); if (requestedOptions !== undefined) { - const descriptors = provider.models.find((candidate) => candidate.slug === model) - ?.capabilities?.optionDescriptors; const invalid = invalidOptionSelections(requestedOptions, descriptors); if (invalid.length > 0) { return yield* failure( diff --git a/packages/shared/src/model.test.ts b/packages/shared/src/model.test.ts index 5de287893e884..459f2028b14ad 100644 --- a/packages/shared/src/model.test.ts +++ b/packages/shared/src/model.test.ts @@ -76,6 +76,12 @@ describe("descriptor helpers", () => { { id: "effort", value: "xhigh" }, { id: "ultracode", value: true }, ]); + expect( + getProviderOptionDescriptors({ + caps, + selections: [...selections, { id: "ultracode", value: false }], + }).find(({ id }) => id === "ultracode")?.currentValue, + ).toBe(false); }); it("compares complete model selections independent of option ordering", () => { diff --git a/packages/shared/src/model.ts b/packages/shared/src/model.ts index 4886680aa951a..52ef784126ef4 100644 --- a/packages/shared/src/model.ts +++ b/packages/shared/src/model.ts @@ -197,7 +197,7 @@ function withDescriptorCurrentValue( } // Ultracode was a Claude effort level before it became its own toggle; that level ran at xhigh. -function withLegacyUltracodeEffort( +export function withLegacyUltracodeEffort( descriptors: ReadonlyArray, selections: ReadonlyArray | null | undefined, ): ReadonlyArray | null | undefined { @@ -209,10 +209,11 @@ function withLegacyUltracodeEffort( ) { return selections; } + const ultracode = getRawSelectionValueById(selections, "ultracode"); return [ ...(selections ?? []).filter(({ id }) => id !== "effort" && id !== "ultracode"), { id: "effort", value: "xhigh" }, - { id: "ultracode", value: true }, + { id: "ultracode", value: typeof ultracode === "boolean" ? ultracode : true }, ]; } From 7ac00b9369bd5092ebd1fb515b1971a1d12aab9b Mon Sep 17 00:00:00 2001 From: Bil0000 <62337003+Bil0000@users.noreply.github.com> Date: Thu, 29 Oct 2026 18:54:14 +0100 Subject: [PATCH 03/18] fix(mcp): reject bad Ultracode values and keep it on old parents Keep an explicit ultracode value as given so validation rejects a non-boolean one, and migrate inherited options so an effort-only override keeps Ultracode on. --- .../src/mcp/OrchestratorMcpService.test.ts | 27 ++++++++++++++++--- apps/server/src/mcp/OrchestratorMcpService.ts | 4 ++- packages/shared/src/model.test.ts | 6 +++++ packages/shared/src/model.ts | 12 ++++++--- 4 files changed, 41 insertions(+), 8 deletions(-) diff --git a/apps/server/src/mcp/OrchestratorMcpService.test.ts b/apps/server/src/mcp/OrchestratorMcpService.test.ts index d25ec08c8e53d..6eb736ec7628d 100644 --- a/apps/server/src/mcp/OrchestratorMcpService.test.ts +++ b/apps/server/src/mcp/OrchestratorMcpService.test.ts @@ -2538,8 +2538,26 @@ describe("OrchestratorMcpService provider resolution", () => { ], }, }, + { + name: "effort override on an old Ultracode parent", + parent: { + instanceId: codexInstanceId, + model: "ultracode-model", + options: [{ id: "effort", value: "ultracode" }], + }, + target: { options: { effort: "high" } }, + expected: { + instanceId: codexInstanceId, + model: "ultracode-model", + options: [ + { id: "effort", value: "high" }, + { id: "ultracode", value: true }, + ], + }, + }, ] as const; for (const testCase of cases) { + const parent = "parent" in testCase ? testCase.parent : inherited; const commands: Array = []; const task = { id: taskId, @@ -2559,7 +2577,7 @@ describe("OrchestratorMcpService provider resolution", () => { getThreadRecords: (threadId) => Effect.succeed( threadId === parentThreadId - ? parentProjection(commands.length > 0 ? [task] : [], inherited) + ? parentProjection(commands.length > 0 ? [task] : [], parent) : childProjection, ), dispatch: (command) => @@ -2596,7 +2614,10 @@ describe("OrchestratorMcpService provider resolution", () => { id: "effort", label: "Reasoning", type: "select", - options: [{ id: "xhigh", label: "Extra High" }], + options: [ + { id: "high", label: "High" }, + { id: "xhigh", label: "Extra High" }, + ], }, { id: "ultracode", label: "Ultracode", type: "boolean" }, ], @@ -2615,7 +2636,7 @@ describe("OrchestratorMcpService provider resolution", () => { yield* Effect.gen(function* () { const service = yield* OrchestratorMcpService.OrchestratorMcpService; const capabilities = yield* service.capabilities(scope); - assert.deepEqual(capabilities.inheritedOptions, inherited.options); + assert.deepEqual(capabilities.inheritedOptions, parent.options); yield* service.delegateTask(scope, { task: "Review the change.", target: yield* decodeTarget(testCase.target), diff --git a/apps/server/src/mcp/OrchestratorMcpService.ts b/apps/server/src/mcp/OrchestratorMcpService.ts index 77c077e3b440a..6af669ff06e7f 100644 --- a/apps/server/src/mcp/OrchestratorMcpService.ts +++ b/apps/server/src/mcp/OrchestratorMcpService.ts @@ -1372,7 +1372,9 @@ const make = Effect.gen(function* () { const inheritsOptions = instanceId === inheritedSelection.instanceId && model === inheritedSelection.model; - let options = inheritsOptions ? inheritedSelection.options : undefined; + let options = inheritsOptions + ? (withLegacyUltracodeEffort(descriptors ?? [], inheritedSelection.options) ?? undefined) + : undefined; if (requestedOptions !== undefined) { const selections = new Map( (requestedOptions.length === 0 ? [] : (options ?? [])).map((selection) => [ diff --git a/packages/shared/src/model.test.ts b/packages/shared/src/model.test.ts index 459f2028b14ad..b2a9c67643d7e 100644 --- a/packages/shared/src/model.test.ts +++ b/packages/shared/src/model.test.ts @@ -82,6 +82,12 @@ describe("descriptor helpers", () => { selections: [...selections, { id: "ultracode", value: false }], }).find(({ id }) => id === "ultracode")?.currentValue, ).toBe(false); + expect( + getProviderOptionDescriptors({ + caps, + selections: [...selections, { id: "ultracode", value: "false" }], + }).find(({ id }) => id === "ultracode")?.currentValue, + ).toBeUndefined(); }); it("compares complete model selections independent of option ordering", () => { diff --git a/packages/shared/src/model.ts b/packages/shared/src/model.ts index 52ef784126ef4..9e1fe36721653 100644 --- a/packages/shared/src/model.ts +++ b/packages/shared/src/model.ts @@ -209,11 +209,15 @@ export function withLegacyUltracodeEffort( ) { return selections; } - const ultracode = getRawSelectionValueById(selections, "ultracode"); return [ - ...(selections ?? []).filter(({ id }) => id !== "effort" && id !== "ultracode"), - { id: "effort", value: "xhigh" }, - { id: "ultracode", value: typeof ultracode === "boolean" ? ultracode : true }, + ...(selections ?? []).map((selection) => + selection.id === "effort" && selection.value === "ultracode" + ? { id: "effort", value: "xhigh" } + : selection, + ), + ...(getRawSelectionValueById(selections, "ultracode") === undefined + ? [{ id: "ultracode", value: true }] + : []), ]; } From 9a82e08f0435a8c2ced721b94287cd7b8f4eadfa Mon Sep 17 00:00:00 2001 From: Bil0000 <62337003+Bil0000@users.noreply.github.com> Date: Thu, 29 Oct 2026 18:56:05 +0100 Subject: [PATCH 04/18] feat(web): show a Workflow icon for Ultracode in the composer --- apps/web/src/components/chat/TraitsPicker.tsx | 6 +++++- packages/client-runtime/src/modelTraits.ts | 18 +++++++++++++----- 2 files changed, 18 insertions(+), 6 deletions(-) diff --git a/apps/web/src/components/chat/TraitsPicker.tsx b/apps/web/src/components/chat/TraitsPicker.tsx index 79a29d293dc49..98849cd49ea8e 100644 --- a/apps/web/src/components/chat/TraitsPicker.tsx +++ b/apps/web/src/components/chat/TraitsPicker.tsx @@ -25,7 +25,7 @@ import { normalizeModelSlug, } from "@t3tools/shared/model"; import { memo, type ReactNode, useRef } from "react"; -import { GaugeIcon, ZapIcon } from "lucide-react"; +import { GaugeIcon, WorkflowIcon, ZapIcon } from "lucide-react"; import { Menu, MenuGroup, @@ -586,6 +586,7 @@ export const TraitsPicker = memo(function TraitsPicker({ const { label: triggerLabel, speedLabel, + ultracode, otherLabels, } = buildTraitsTriggerDisplay({ provider, @@ -688,6 +689,9 @@ export const TraitsPicker = memo(function TraitsPicker({ {speedLabel === "Fast" || speedLabel === "Ultrafast" ? ( ) : null} + {ultracode ? ( +