// engine/test-spec-generator/labels.ts — Locale-aware labels and edge-case keywords
// Keywords that trigger edge-case scenario generation
export const EDGE_CASE_KEYWORDS = [
    'never',
    'always',
    'only',
    'at least',
    'maximum',
    'minimum',
    'must not',
    'shall not',
    'exactly',
    'no more than',
    'no less than',
];
export function getLabels(locale) {
    if (locale === 'es') {
        return {
            happyPath: 'camino feliz',
            error: 'error',
            edgeCase: 'caso extremo',
            givenSetup: 'un proyecto con la configuración requerida',
            whenExecuted: 'se ejecuta la operación',
            thenCorrect: 'se genera correctamente',
            thenFails: 'falla con un error claro',
            thenEdge: 'se aplica el límite correctamente',
            negatePrefix: 'no',
            defaultSetup: 'el sistema está configurado correctamente',
        };
    }
    if (locale === 'pt') {
        return {
            happyPath: 'caminho feliz',
            error: 'erro',
            edgeCase: 'caso extremo',
            givenSetup: 'um projeto com a configuração necessária',
            whenExecuted: 'a operação é executada',
            thenCorrect: 'é gerado corretamente',
            thenFails: 'falha com um erro claro',
            thenEdge: 'o limite é aplicado corretamente',
            negatePrefix: 'não',
            defaultSetup: 'o sistema está configurado corretamente',
        };
    }
    return {
        happyPath: 'happy path',
        error: 'error',
        edgeCase: 'edge case',
        givenSetup: 'a project with the required configuration',
        whenExecuted: 'the operation is executed',
        thenCorrect: 'is generated correctly',
        thenFails: 'fails with a clear error message',
        thenEdge: 'the boundary is applied correctly',
        negatePrefix: 'not',
        defaultSetup: 'the system is properly configured',
    };
}
export function hasEdgeCaseKeyword(criterion) {
    const lower = criterion.toLowerCase();
    return EDGE_CASE_KEYWORDS.some((kw) => lower.includes(kw));
}
//# sourceMappingURL=labels.js.map