/** * Eligibility Gate * * Responsável por decidir se uma tarefa é "Ralph-ável", * ou seja, se pode ser processada pela metodologia Ralph Wiggum. */ import { NormalizedInput, Criterion } from '../../shared/types/index.js'; /** * Resultado da verificação de elegibilidade */ export interface EligibilityResult { eligible: boolean; score: number; reasons: EligibilityReason[]; suggestions: string[]; } /** * Razão de elegibilidade ou inelegibilidade */ export interface EligibilityReason { type: 'pass' | 'fail' | 'warning'; category: EligibilityCategory; message: string; } /** * Categorias de verificação de elegibilidade */ export type EligibilityCategory = 'criteria' | 'scope' | 'ambiguity' | 'complexity' | 'automation'; /** * Verifica se uma feature é elegível para Ralph Wiggum */ export declare function isEligible(input: NormalizedInput): EligibilityResult; /** * Verifica critérios de sucesso */ export declare function checkCriteria(criteria: Criterion[]): { reasons: EligibilityReason[]; penalty: number; suggestions: string[]; }; /** * Verifica definição de escopo */ export declare function checkScope(input: NormalizedInput): { reasons: EligibilityReason[]; penalty: number; suggestions: string[]; }; /** * Verifica ambiguidade na descrição */ export declare function checkAmbiguity(description: string): { reasons: EligibilityReason[]; penalty: number; suggestions: string[]; }; /** * Gera um relatório de elegibilidade formatado */ export declare function formatEligibilityReport(result: EligibilityResult): string; //# sourceMappingURL=eligibility-gate.d.ts.map