chore: upgrade biome noImplicitAnyLet to error, fix parsed type in schema

Set noImplicitAnyLet to error in biome.json. Fix the violation in
parseCardsJson by typing the parsed variable as unknown. Widen
normalizeCardsPayload to accept unknown (it already handles non-object
input defensively). Remove now-unnecessary cast in provider-parsers.ts.

Change-Id: I57ee46d3179775d5d7c34f35803a44c45061b0ec
This commit is contained in:
fancivez 2026-04-27 13:38:11 +08:00 committed by wujunchen
parent c4f25a7957
commit 5f8b3cfd86
4 changed files with 7 additions and 7 deletions

View file

@ -10,7 +10,7 @@
"suspicious": {
"noExplicitAny": "error",
"noRedundantUseStrict": "off",
"noImplicitAnyLet": "off"
"noImplicitAnyLet": "error"
},
"style": {
"noNonNullAssertion": "warn",

File diff suppressed because one or more lines are too long

View file

@ -55,8 +55,7 @@ export function cardsFromAnthropicToolUse(
const block = content.find((c) => c && c.type === 'tool_use' && c.name === ANTHROPIC_CARD_TOOL_NAME);
if (!block) return null;
if (typeof block.input === 'string') return parseCardsJson(block.input, settings);
if (block.input && typeof block.input === 'object')
return normalizeCardsPayload(block.input as Record<string, unknown>);
if (block.input && typeof block.input === 'object') return normalizeCardsPayload(block.input);
return [];
}

View file

@ -104,7 +104,7 @@ export function repairTruncatedCardsJson(text: string): string | null {
export function parseCardsJson(text: string, settings?: PluginSettings | null): RawCard[] {
const jsonText = extractJson(text);
let parsed;
let parsed: unknown;
try {
parsed = JSON.parse(jsonText);
} catch (_e) {
@ -133,8 +133,9 @@ export function parseCardsJson(text: string, settings?: PluginSettings | null):
return normalizeCardsPayload(parsed);
}
export function normalizeCardsPayload(parsed: { cards?: unknown[] }): RawCard[] {
const raw = parsed && Array.isArray(parsed.cards) ? parsed.cards : [];
export function normalizeCardsPayload(parsed: unknown): RawCard[] {
const obj = parsed as { cards?: unknown[] } | null | undefined;
const raw = obj && Array.isArray(obj.cards) ? obj.cards : [];
return raw
.filter((c): c is Record<string, unknown> => !!c && typeof c === 'object')
.map((c) => ({