/** * Agentic QE v3 - QE Guidance Templates * ADR-021: QE ReasoningBank for Pattern Learning * * Domain-specific guidance templates that provide context-aware * recommendations to agents when generating tests or analyzing quality. */ import type { QEDomain, TestFramework, ProgrammingLanguage } from './qe-patterns.js'; /** * Domain guidance configuration */ export interface QEGuidance { /** QE domain this guidance applies to */ readonly domain: QEDomain; /** Priority-ordered best practices */ readonly bestPractices: string[]; /** Common anti-patterns to avoid */ readonly antiPatterns: AntiPattern[]; /** Framework-specific guidance */ readonly frameworkGuidance: Record; /** Language-specific guidance */ readonly languageGuidance: Record; /** Example templates */ readonly examples: GuidanceExample[]; } /** * Anti-pattern to avoid */ export interface AntiPattern { /** Name of the anti-pattern */ readonly name: string; /** Description of what to avoid */ readonly description: string; /** Why it's problematic */ readonly reason: string; /** Better alternative */ readonly alternative: string; /** Detection pattern (regex) */ readonly detection?: string; } /** * Example for guidance */ export interface GuidanceExample { /** Example title */ readonly title: string; /** Description */ readonly description: string; /** Code or content */ readonly content: string; /** Language/framework */ readonly context: { language?: ProgrammingLanguage; framework?: TestFramework; }; } /** * Test Generation Domain Guidance */ export declare const TEST_GENERATION_GUIDANCE: QEGuidance; /** * Coverage Analysis Domain Guidance */ export declare const COVERAGE_ANALYSIS_GUIDANCE: QEGuidance; /** * Mutation Testing Domain Guidance */ export declare const MUTATION_TESTING_GUIDANCE: QEGuidance; /** * API Testing Domain Guidance */ export declare const API_TESTING_GUIDANCE: QEGuidance; /** * Security Testing Domain Guidance */ export declare const SECURITY_TESTING_GUIDANCE: QEGuidance; /** * Visual Testing Domain Guidance */ export declare const VISUAL_TESTING_GUIDANCE: QEGuidance; /** * Accessibility Testing Domain Guidance */ export declare const ACCESSIBILITY_GUIDANCE: QEGuidance; /** * Performance Testing Domain Guidance */ export declare const PERFORMANCE_GUIDANCE: QEGuidance; /** * All domain guidance templates */ export declare const QE_GUIDANCE_REGISTRY: Record; /** * Get guidance for a specific domain */ export declare function getGuidance(domain: QEDomain): QEGuidance; /** * Get framework-specific guidance */ export declare function getFrameworkGuidance(domain: QEDomain, framework: TestFramework): string[]; /** * Get language-specific guidance */ export declare function getLanguageGuidance(domain: QEDomain, language: ProgrammingLanguage): string[]; /** * Get combined guidance for a specific context */ export declare function getCombinedGuidance(domain: QEDomain, context: { framework?: TestFramework; language?: ProgrammingLanguage; includeAntiPatterns?: boolean; }): string[]; /** * Check content against anti-patterns */ export declare function checkAntiPatterns(domain: QEDomain, content: string): AntiPattern[]; /** * Generate Claude-visible guidance context */ export declare function generateGuidanceContext(domain: QEDomain, context: { framework?: TestFramework; language?: ProgrammingLanguage; taskDescription?: string; }): string; //# sourceMappingURL=qe-guidance.d.ts.map