/** * @fileoverview Check result processor for fitness recipe execution * * Processes individual check results (success or error), updates session state, * builds check summaries, and determines whether execution should stop. */ import { type CheckMemoryProfile } from '../framework/memory-profiler.js'; import type { FitnessRecipeServiceCallbacks, FitnessRecipeSession } from './service-types.js'; import type { FitnessRecipe, RecipeCheckResult } from './types.js'; import type { CheckResult } from '../types/findings.js'; /** Input data for processing a successful check result */ export interface ProcessSuccessInput { checkId: string; checkSlug: string; tags: readonly string[]; checkIndex: number; totalChecks: number; result: CheckResult; durationMs: number; memoryBeforeMB: number; } /** Input data for processing a failed or timed-out check result */ export interface ProcessErrorInput { checkId: string; checkSlug: string; checkIndex: number; totalChecks: number; error: unknown; durationMs: number; memoryBeforeMB: number; timedOut: boolean; timeoutMs?: number; } /** Context required by the result processor (session, callbacks, recipe) */ export interface ProcessorContext { session: FitnessRecipeSession; callbacks: FitnessRecipeServiceCallbacks; recipe: FitnessRecipe; } /** Output from processing a check result, including whether execution should stop */ export interface ProcessResultOutput { checkResult: RecipeCheckResult; memoryProfile: CheckMemoryProfile; shouldStop: boolean; } /** Process a successful check result: update session, invoke callbacks, and determine stop condition */ export declare function processSuccessResult(ctx: ProcessorContext, input: ProcessSuccessInput): ProcessResultOutput; /** Process a failed check result: update session, invoke callbacks, and determine stop condition */ export declare function processErrorResult(ctx: ProcessorContext, input: ProcessErrorInput): ProcessResultOutput; //# sourceMappingURL=check-result-processor.d.ts.map