chore: migrate to oxlint and oxfmt

Co-authored-by: Christoph Nakazawa <christoph.pojer@gmail.com>
This commit is contained in:
Peter Steinberger
2026-01-14 14:31:43 +00:00
parent 912ebffc63
commit c379191f80
1480 changed files with 28608 additions and 43547 deletions

View File

@@ -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
);
}