mirror of
https://github.com/openclaw/openclaw.git
synced 2026-05-09 05:17:40 +00:00
chore: migrate to oxlint and oxfmt
Co-authored-by: Christoph Nakazawa <christoph.pojer@gmail.com>
This commit is contained in:
@@ -105,15 +105,9 @@ function scoreFuzzyMatch(params: {
|
||||
score += 30;
|
||||
}
|
||||
|
||||
const fragmentVariants = FUZZY_VARIANT_TOKENS.filter((token) =>
|
||||
fragment.includes(token),
|
||||
);
|
||||
const modelVariants = FUZZY_VARIANT_TOKENS.filter((token) =>
|
||||
modelLower.includes(token),
|
||||
);
|
||||
const variantMatchCount = fragmentVariants.filter((token) =>
|
||||
modelLower.includes(token),
|
||||
).length;
|
||||
const fragmentVariants = FUZZY_VARIANT_TOKENS.filter((token) => fragment.includes(token));
|
||||
const modelVariants = FUZZY_VARIANT_TOKENS.filter((token) => modelLower.includes(token));
|
||||
const variantMatchCount = fragmentVariants.filter((token) => modelLower.includes(token)).length;
|
||||
const variantCount = modelVariants.length;
|
||||
if (fragmentVariants.length === 0 && variantCount > 0) {
|
||||
score -= variantCount * 30;
|
||||
@@ -123,8 +117,7 @@ function scoreFuzzyMatch(params: {
|
||||
}
|
||||
|
||||
const defaultProvider = normalizeProviderId(params.defaultProvider);
|
||||
const isDefault =
|
||||
provider === defaultProvider && model === params.defaultModel;
|
||||
const isDefault = provider === defaultProvider && model === params.defaultModel;
|
||||
if (isDefault) score += 20;
|
||||
|
||||
return {
|
||||
@@ -139,9 +132,7 @@ function scoreFuzzyMatch(params: {
|
||||
|
||||
export async function createModelSelectionState(params: {
|
||||
cfg: ClawdbotConfig;
|
||||
agentCfg:
|
||||
| NonNullable<NonNullable<ClawdbotConfig["agents"]>["defaults"]>
|
||||
| undefined;
|
||||
agentCfg: NonNullable<NonNullable<ClawdbotConfig["agents"]>["defaults"]> | undefined;
|
||||
sessionEntry?: SessionEntry;
|
||||
sessionStore?: Record<string, SessionEntry>;
|
||||
sessionKey?: string;
|
||||
@@ -166,13 +157,9 @@ export async function createModelSelectionState(params: {
|
||||
let provider = params.provider;
|
||||
let model = params.model;
|
||||
|
||||
const hasAllowlist =
|
||||
agentCfg?.models && Object.keys(agentCfg.models).length > 0;
|
||||
const hasStoredOverride = Boolean(
|
||||
sessionEntry?.modelOverride || sessionEntry?.providerOverride,
|
||||
);
|
||||
const needsModelCatalog =
|
||||
params.hasModelDirective || hasAllowlist || hasStoredOverride;
|
||||
const hasAllowlist = agentCfg?.models && Object.keys(agentCfg.models).length > 0;
|
||||
const hasStoredOverride = Boolean(sessionEntry?.modelOverride || sessionEntry?.providerOverride);
|
||||
const needsModelCatalog = params.hasModelDirective || hasAllowlist || hasStoredOverride;
|
||||
|
||||
let allowedModelKeys = new Set<string>();
|
||||
let allowedModelCatalog: ModelCatalog = [];
|
||||
@@ -192,8 +179,7 @@ export async function createModelSelectionState(params: {
|
||||
}
|
||||
|
||||
if (sessionEntry && sessionStore && sessionKey && hasStoredOverride) {
|
||||
const overrideProvider =
|
||||
sessionEntry.providerOverride?.trim() || defaultProvider;
|
||||
const overrideProvider = sessionEntry.providerOverride?.trim() || defaultProvider;
|
||||
const overrideModel = sessionEntry.modelOverride?.trim();
|
||||
if (overrideModel) {
|
||||
const key = modelKey(overrideProvider, overrideModel);
|
||||
@@ -221,15 +207,8 @@ export async function createModelSelectionState(params: {
|
||||
}
|
||||
}
|
||||
|
||||
if (
|
||||
sessionEntry &&
|
||||
sessionStore &&
|
||||
sessionKey &&
|
||||
sessionEntry.authProfileOverride
|
||||
) {
|
||||
const { ensureAuthProfileStore } = await import(
|
||||
"../../agents/auth-profiles.js"
|
||||
);
|
||||
if (sessionEntry && sessionStore && sessionKey && sessionEntry.authProfileOverride) {
|
||||
const { ensureAuthProfileStore } = await import("../../agents/auth-profiles.js");
|
||||
const store = ensureAuthProfileStore(undefined, {
|
||||
allowKeychainPrompt: false,
|
||||
});
|
||||
@@ -259,9 +238,7 @@ export async function createModelSelectionState(params: {
|
||||
catalog: catalogForThinking,
|
||||
});
|
||||
defaultThinkingLevel =
|
||||
resolved ??
|
||||
(agentCfg?.thinkingDefault as ThinkLevel | undefined) ??
|
||||
"off";
|
||||
resolved ?? (agentCfg?.thinkingDefault as ThinkLevel | undefined) ?? "off";
|
||||
return defaultThinkingLevel;
|
||||
};
|
||||
|
||||
@@ -283,21 +260,15 @@ export function resolveModelDirectiveSelection(params: {
|
||||
aliasIndex: ModelAliasIndex;
|
||||
allowedModelKeys: Set<string>;
|
||||
}): { selection?: ModelDirectiveSelection; error?: string } {
|
||||
const { raw, defaultProvider, defaultModel, aliasIndex, allowedModelKeys } =
|
||||
params;
|
||||
const { raw, defaultProvider, defaultModel, aliasIndex, allowedModelKeys } = params;
|
||||
|
||||
const rawTrimmed = raw.trim();
|
||||
const rawLower = rawTrimmed.toLowerCase();
|
||||
|
||||
const pickAliasForKey = (
|
||||
provider: string,
|
||||
model: string,
|
||||
): string | undefined => aliasIndex.byKey.get(modelKey(provider, model))?.[0];
|
||||
const pickAliasForKey = (provider: string, model: string): string | undefined =>
|
||||
aliasIndex.byKey.get(modelKey(provider, model))?.[0];
|
||||
|
||||
const buildSelection = (
|
||||
provider: string,
|
||||
model: string,
|
||||
): ModelDirectiveSelection => {
|
||||
const buildSelection = (provider: string, model: string): ModelDirectiveSelection => {
|
||||
const alias = pickAliasForKey(provider, model);
|
||||
return {
|
||||
provider,
|
||||
@@ -320,13 +291,9 @@ export function resolveModelDirectiveSelection(params: {
|
||||
if (slash <= 0) continue;
|
||||
const provider = normalizeProviderId(key.slice(0, slash));
|
||||
const model = key.slice(slash + 1);
|
||||
if (params.provider && provider !== normalizeProviderId(params.provider))
|
||||
continue;
|
||||
if (params.provider && provider !== normalizeProviderId(params.provider)) continue;
|
||||
const haystack = `${provider}/${model}`.toLowerCase();
|
||||
if (
|
||||
haystack.includes(fragment) ||
|
||||
model.toLowerCase().includes(fragment)
|
||||
) {
|
||||
if (haystack.includes(fragment) || model.toLowerCase().includes(fragment)) {
|
||||
candidates.push({ provider, model });
|
||||
}
|
||||
}
|
||||
@@ -344,11 +311,7 @@ export function resolveModelDirectiveSelection(params: {
|
||||
for (const match of aliasMatches) {
|
||||
const key = modelKey(match.provider, match.model);
|
||||
if (!allowedModelKeys.has(key)) continue;
|
||||
if (
|
||||
!candidates.some(
|
||||
(c) => c.provider === match.provider && c.model === match.model,
|
||||
)
|
||||
) {
|
||||
if (!candidates.some((c) => c.provider === match.provider && c.model === match.model)) {
|
||||
candidates.push(match);
|
||||
}
|
||||
}
|
||||
@@ -378,10 +341,8 @@ export function resolveModelDirectiveSelection(params: {
|
||||
if (a.isDefault !== b.isDefault) return a.isDefault ? -1 : 1;
|
||||
if (a.variantMatchCount !== b.variantMatchCount)
|
||||
return b.variantMatchCount - a.variantMatchCount;
|
||||
if (a.variantCount !== b.variantCount)
|
||||
return a.variantCount - b.variantCount;
|
||||
if (a.modelLength !== b.modelLength)
|
||||
return a.modelLength - b.modelLength;
|
||||
if (a.variantCount !== b.variantCount) return a.variantCount - b.variantCount;
|
||||
if (a.modelLength !== b.modelLength) return a.modelLength - b.modelLength;
|
||||
return a.key.localeCompare(b.key);
|
||||
});
|
||||
|
||||
@@ -410,9 +371,7 @@ export function resolveModelDirectiveSelection(params: {
|
||||
selection: {
|
||||
provider: resolved.ref.provider,
|
||||
model: resolved.ref.model,
|
||||
isDefault:
|
||||
resolved.ref.provider === defaultProvider &&
|
||||
resolved.ref.model === defaultModel,
|
||||
isDefault: resolved.ref.provider === defaultProvider && resolved.ref.model === defaultModel,
|
||||
alias: resolved.alias,
|
||||
},
|
||||
};
|
||||
@@ -438,14 +397,10 @@ export function resolveModelDirectiveSelection(params: {
|
||||
}
|
||||
|
||||
export function resolveContextTokens(params: {
|
||||
agentCfg:
|
||||
| NonNullable<NonNullable<ClawdbotConfig["agents"]>["defaults"]>
|
||||
| undefined;
|
||||
agentCfg: NonNullable<NonNullable<ClawdbotConfig["agents"]>["defaults"]> | undefined;
|
||||
model: string;
|
||||
}): number {
|
||||
return (
|
||||
params.agentCfg?.contextTokens ??
|
||||
lookupContextTokens(params.model) ??
|
||||
DEFAULT_CONTEXT_TOKENS
|
||||
params.agentCfg?.contextTokens ?? lookupContextTokens(params.model) ?? DEFAULT_CONTEXT_TOKENS
|
||||
);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user