classifyField function application
Last updated: 2026-03-03T18:32:34.140Z
Metrics
LOC: 31
Complexity: 6
Params: 2
Signature
classifyField(
input: FieldClassifierInput,
): : Promise<FieldClassifierOutput | null>
Source Code
async function classifyField(
input: FieldClassifierInput,
): Promise<FieldClassifierOutput | null> {
const session = await getOrCreateClassifierSession();
if (!session) return null;
const prompt = fieldClassifierPrompt.buildPrompt(input);
const controller = new AbortController();
const timeoutId = setTimeout(() => controller.abort(), CLASSIFY_TIMEOUT_MS);
let raw: string;
try {
raw = await session.prompt(prompt, {
signal: controller.signal,
});
} catch (err) {
if (err instanceof Error && err.name === "AbortError") {
log.warn(`Timeout (${CLASSIFY_TIMEOUT_MS}ms) na classificação.`);
} else {
classifierSession?.destroy();
classifierSession = null;
log.warn("Erro na classificação:", (err as Error).message);
}
return null;
} finally {
clearTimeout(timeoutId);
}
return fieldClassifierPrompt.parseResponse(raw);
}
Dependencies (Outgoing)
| Target | Type |
|---|---|
| getOrCreateClassifierSession | calls |
No incoming dependencies.