"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.GRADERS = void 0;
exports.getGraderById = getGraderById;
const aegis_1 = require("./plugins/aegis");
const constants_1 = require("./plugins/agentic/constants");
const memoryPoisoning_1 = require("./plugins/agentic/memoryPoisoning");
const asciiSmuggling_1 = require("./plugins/asciiSmuggling");
const beavertails_1 = require("./plugins/beavertails");
const bfla_1 = require("./plugins/bfla");
const bias_1 = require("./plugins/bias");
const bola_1 = require("./plugins/bola");
const competitors_1 = require("./plugins/competitors");
const contextComplianceAttack_1 = require("./plugins/contextComplianceAttack");
const contracts_1 = require("./plugins/contracts");
const coppa_1 = require("./plugins/compliance/coppa");
const crossSessionLeak_1 = require("./plugins/crossSessionLeak");
const debugAccess_1 = require("./plugins/debugAccess");
const divergentRepetition_1 = require("./plugins/divergentRepetition");
const ecommerceComplianceBypass_1 = require("./plugins/ecommerce/ecommerceComplianceBypass");
const ecommerceOrderFraud_1 = require("./plugins/ecommerce/ecommerceOrderFraud");
const ecommercePciDss_1 = require("./plugins/ecommerce/ecommercePciDss");
const ecommercePriceManipulation_1 = require("./plugins/ecommerce/ecommercePriceManipulation");
const excessiveAgency_1 = require("./plugins/excessiveAgency");
const ferpa_1 = require("./plugins/compliance/ferpa");
const financialCalculationError_1 = require("./plugins/financial/financialCalculationError");
const financialComplianceViolation_1 = require("./plugins/financial/financialComplianceViolation");
const financialConfidentialDisclosure_1 = require("./plugins/financial/financialConfidentialDisclosure");
const financialCounterfactual_1 = require("./plugins/financial/financialCounterfactual");
const financialDataLeakage_1 = require("./plugins/financial/financialDataLeakage");
const financialDefamation_1 = require("./plugins/financial/financialDefamation");
const financialHallucination_1 = require("./plugins/financial/financialHallucination");
const financialImpartiality_1 = require("./plugins/financial/financialImpartiality");
const financialMisconduct_1 = require("./plugins/financial/financialMisconduct");
const financialSycophancy_1 = require("./plugins/financial/financialSycophancy");
const goalMisalignment_1 = require("./plugins/goalMisalignment");
const hallucination_1 = require("./plugins/hallucination");
const harmbench_1 = require("./plugins/harmbench");
const graders_1 = require("./plugins/harmful/graders");
const hijacking_1 = require("./plugins/hijacking");
const imitation_1 = require("./plugins/imitation");
const indirectPromptInjection_1 = require("./plugins/indirectPromptInjection");
const coverageDiscrimination_1 = require("./plugins/insurance/coverageDiscrimination");
const networkMisinformation_1 = require("./plugins/insurance/networkMisinformation");
const phiDisclosure_1 = require("./plugins/insurance/phiDisclosure");
const intent_1 = require("./plugins/intent");
const mcp_1 = require("./plugins/mcp");
const medicalAnchoringBias_1 = require("./plugins/medical/medicalAnchoringBias");
const medicalHallucination_1 = require("./plugins/medical/medicalHallucination");
const medicalIncorrectKnowledge_1 = require("./plugins/medical/medicalIncorrectKnowledge");
const medicalOffLabelUse_1 = require("./plugins/medical/medicalOffLabelUse");
const medicalPrioritizationError_1 = require("./plugins/medical/medicalPrioritizationError");
const medicalSycophancy_1 = require("./plugins/medical/medicalSycophancy");
const offTopic_1 = require("./plugins/offTopic");
const controlledSubstanceCompliance_1 = require("./plugins/pharmacy/controlledSubstanceCompliance");
const dosageCalculation_1 = require("./plugins/pharmacy/dosageCalculation");
const drugInteraction_1 = require("./plugins/pharmacy/drugInteraction");
const overreliance_1 = require("./plugins/overreliance");
const pii_1 = require("./plugins/pii");
const pliny_1 = require("./plugins/pliny");
const index_1 = require("./plugins/policy/index");
const politics_1 = require("./plugins/politics");
const promptExtraction_1 = require("./plugins/promptExtraction");
const ragDocumentExfiltration_1 = require("./plugins/ragDocumentExfiltration");
const rbac_1 = require("./plugins/rbac");
const reasoningDos_1 = require("./plugins/reasoningDos");
const religion_1 = require("./plugins/religion");
const shellInjection_1 = require("./plugins/shellInjection");
const sqlInjection_1 = require("./plugins/sqlInjection");
const ssrf_1 = require("./plugins/ssrf");
const toolDiscovery_1 = require("./plugins/toolDiscovery");
const toxicchat_1 = require("./plugins/toxicchat");
const unsafebench_1 = require("./plugins/unsafebench");
const unverifiableClaims_1 = require("./plugins/unverifiableClaims");
const vlguard_1 = require("./plugins/vlguard");
const specialTokenInjection_1 = require("./plugins/specialTokenInjection");
const systemOverride_1 = require("./plugins/systemOverride");
const wordplay_1 = require("./plugins/wordplay");
exports.GRADERS = {
    [constants_1.REDTEAM_MEMORY_POISONING_PLUGIN_ID]: new memoryPoisoning_1.MemoryPoisoningPluginGrader(),
    'trusys:redteam:aegis': new aegis_1.AegisGrader(),
    'trusys:redteam:ascii-smuggling': new asciiSmuggling_1.AsciiSmugglingGrader(),
    'trusys:redteam:beavertails': new beavertails_1.BeavertailsGrader(),
    'trusys:redteam:bfla': new bfla_1.BflaGrader(),
    'trusys:redteam:bias': new bias_1.BiasGrader(),
    'trusys:redteam:bias:age': new bias_1.BiasGrader(),
    'trusys:redteam:bias:disability': new bias_1.BiasGrader(),
    'trusys:redteam:bias:gender': new bias_1.BiasGrader(),
    'trusys:redteam:bias:race': new bias_1.BiasGrader(),
    'trusys:redteam:bola': new bola_1.BolaGrader(),
    'trusys:redteam:cca': new contextComplianceAttack_1.CcaGrader(),
    'trusys:redteam:competitors': new competitors_1.CompetitorsGrader(),
    'trusys:redteam:contracts': new contracts_1.ContractsGrader(),
    'trusys:redteam:coppa': new coppa_1.CoppaGrader(),
    'trusys:redteam:cross-session-leak': new crossSessionLeak_1.CrossSessionLeakGrader(),
    'trusys:redteam:debug-access': new debugAccess_1.DebugAccessGrader(),
    'trusys:redteam:divergent-repetition': new divergentRepetition_1.DivergentRepetitionGrader(),
    'trusys:redteam:ecommerce:compliance-bypass': new ecommerceComplianceBypass_1.EcommerceComplianceBypassGrader(),
    'trusys:redteam:ecommerce:order-fraud': new ecommerceOrderFraud_1.EcommerceOrderFraudGrader(),
    'trusys:redteam:ecommerce:pci-dss': new ecommercePciDss_1.EcommercePciDssGrader(),
    'trusys:redteam:ecommerce:price-manipulation': new ecommercePriceManipulation_1.EcommercePriceManipulationGrader(),
    'trusys:redteam:excessive-agency': new excessiveAgency_1.ExcessiveAgencyGrader(),
    'trusys:redteam:ferpa': new ferpa_1.FerpaGrader(),
    'trusys:redteam:financial:calculation-error': new financialCalculationError_1.FinancialCalculationErrorPluginGrader(),
    'trusys:redteam:financial:compliance-violation': new financialComplianceViolation_1.FinancialComplianceViolationPluginGrader(),
    'trusys:redteam:financial:confidential-disclosure': new financialConfidentialDisclosure_1.FinancialConfidentialDisclosurePluginGrader(),
    'trusys:redteam:financial:counterfactual': new financialCounterfactual_1.FinancialCounterfactualPluginGrader(),
    'trusys:redteam:financial:data-leakage': new financialDataLeakage_1.FinancialDataLeakagePluginGrader(),
    'trusys:redteam:financial:defamation': new financialDefamation_1.FinancialDefamationPluginGrader(),
    'trusys:redteam:financial:hallucination': new financialHallucination_1.FinancialHallucinationPluginGrader(),
    'trusys:redteam:financial:impartiality': new financialImpartiality_1.FinancialImpartialityPluginGrader(),
    'trusys:redteam:financial:misconduct': new financialMisconduct_1.FinancialMisconductPluginGrader(),
    'trusys:redteam:financial:sycophancy': new financialSycophancy_1.FinancialSycophancyPluginGrader(),
    'trusys:redteam:goal-misalignment': new goalMisalignment_1.GoalMisalignmentGrader(),
    'trusys:redteam:hallucination': new hallucination_1.HallucinationGrader(),
    'trusys:redteam:harmbench': new harmbench_1.HarmbenchGrader(),
    'trusys:redteam:harmful': new graders_1.HarmfulGrader(),
    'trusys:redteam:harmful:chemical-biological-weapons': new graders_1.HarmfulGrader(),
    'trusys:redteam:harmful:child-exploitation': new graders_1.ChildExploitationGrader(),
    'trusys:redteam:harmful:copyright-violations': new graders_1.CopyrightViolationGrader(),
    'trusys:redteam:harmful:cybercrime': new graders_1.CybercrimeGrader(),
    'trusys:redteam:harmful:cybercrime:malicious-code': new graders_1.CybercrimeGrader(),
    'trusys:redteam:harmful:graphic-content': new graders_1.GraphicContentGrader(),
    'trusys:redteam:harmful:harassment-bullying': new graders_1.HarmfulGrader(),
    'trusys:redteam:harmful:hate': new graders_1.HateGrader(),
    'trusys:redteam:harmful:illegal-activities': new graders_1.IllegalActivitiesGrader(),
    'trusys:redteam:harmful:illegal-drugs': new graders_1.IllegalDrugsGrader(),
    'trusys:redteam:harmful:illegal-drugs:meth': new graders_1.IllegalDrugsGrader(),
    'trusys:redteam:harmful:indiscriminate-weapons': new graders_1.IndiscriminateWeaponsGrader(),
    'trusys:redteam:harmful:insults': new graders_1.InsultsGrader(),
    'trusys:redteam:harmful:intellectual-property': new graders_1.CopyrightViolationGrader(),
    'trusys:redteam:harmful:misinformation-disinformation': new graders_1.MisinformationDisinformationGrader(),
    'trusys:redteam:harmful:non-violent-crime': new graders_1.NonViolentCrimeGrader(),
    'trusys:redteam:harmful:privacy': new graders_1.HarmfulPrivacyGrader(),
    'trusys:redteam:harmful:profanity': new graders_1.ProfanityGrader(),
    'trusys:redteam:harmful:radicalization': new graders_1.RadicalizationGrader(),
    'trusys:redteam:harmful:self-harm': new graders_1.SelfHarmGrader(),
    'trusys:redteam:harmful:sex-crime': new graders_1.SexCrimeGrader(),
    'trusys:redteam:harmful:sexual-content': new graders_1.SexualContentGrader(),
    'trusys:redteam:harmful:specialized-advice': new graders_1.SpecializedAdviceGrader(),
    'trusys:redteam:harmful:unsafe-practices': new graders_1.UnsafePracticesGrader(),
    'trusys:redteam:harmful:violent-crime': new graders_1.ViolentCrimeGrader(),
    'trusys:redteam:harmful:weapons:ied': new graders_1.HarmfulGrader(),
    'trusys:redteam:hijacking': new hijacking_1.HijackingGrader(),
    'trusys:redteam:imitation': new imitation_1.ImitationGrader(),
    'trusys:redteam:indirect-prompt-injection': new indirectPromptInjection_1.IndirectPromptInjectionGrader(),
    'trusys:redteam:insurance:coverage-discrimination': new coverageDiscrimination_1.InsuranceCoverageDiscriminationPluginGrader(),
    'trusys:redteam:insurance:network-misinformation': new networkMisinformation_1.InsuranceNetworkMisinformationPluginGrader(),
    'trusys:redteam:insurance:phi-disclosure': new phiDisclosure_1.InsurancePhiDisclosurePluginGrader(),
    'trusys:redteam:intent': new intent_1.IntentGrader(),
    'trusys:redteam:mcp': new mcp_1.MCPPluginGrader(),
    'trusys:redteam:medical:anchoring-bias': new medicalAnchoringBias_1.MedicalAnchoringBiasPluginGrader(),
    'trusys:redteam:medical:hallucination': new medicalHallucination_1.MedicalHallucinationPluginGrader(),
    'trusys:redteam:medical:incorrect-knowledge': new medicalIncorrectKnowledge_1.MedicalIncorrectKnowledgePluginGrader(),
    'trusys:redteam:medical:off-label-use': new medicalOffLabelUse_1.MedicalOffLabelUsePluginGrader(),
    'trusys:redteam:medical:prioritization-error': new medicalPrioritizationError_1.MedicalPrioritizationErrorPluginGrader(),
    'trusys:redteam:medical:sycophancy': new medicalSycophancy_1.MedicalSycophancyPluginGrader(),
    'trusys:redteam:off-topic': new offTopic_1.OffTopicPluginGrader(),
    'trusys:redteam:pharmacy:controlled-substance-compliance': new controlledSubstanceCompliance_1.PharmacyControlledSubstanceCompliancePluginGrader(),
    'trusys:redteam:pharmacy:dosage-calculation': new dosageCalculation_1.PharmacyDosageCalculationPluginGrader(),
    'trusys:redteam:pharmacy:drug-interaction': new drugInteraction_1.PharmacyDrugInteractionPluginGrader(),
    'trusys:redteam:overreliance': new overreliance_1.OverrelianceGrader(),
    'trusys:redteam:pii': new pii_1.PiiGrader(),
    'trusys:redteam:pii:api-db': new pii_1.PiiGrader(),
    'trusys:redteam:pii:direct': new pii_1.PiiGrader(),
    'trusys:redteam:pii:session': new pii_1.PiiGrader(),
    'trusys:redteam:pii:social': new pii_1.PiiGrader(),
    'trusys:redteam:pliny': new pliny_1.PlinyGrader(),
    'trusys:redteam:policy': new index_1.PolicyViolationGrader(),
    'trusys:redteam:politics': new politics_1.PoliticsGrader(),
    'trusys:redteam:prompt-extraction': new promptExtraction_1.PromptExtractionGrader(),
    'trusys:redteam:rag-document-exfiltration': new ragDocumentExfiltration_1.RagDocumentExfiltrationGrader(),
    'trusys:redteam:rbac': new rbac_1.RbacGrader(),
    'trusys:redteam:reasoning-dos': new reasoningDos_1.ReasoningDosGrader(),
    'trusys:redteam:religion': new religion_1.ReligionGrader(),
    'trusys:redteam:shell-injection': new shellInjection_1.ShellInjectionGrader(),
    'trusys:redteam:sql-injection': new sqlInjection_1.SqlInjectionGrader(),
    'trusys:redteam:ssrf': new ssrf_1.SsrfGrader(),
    'trusys:redteam:tool-discovery': new toolDiscovery_1.ToolDiscoveryGrader(),
    'trusys:redteam:toxic-chat': new toxicchat_1.ToxicChatGrader(),
    'trusys:redteam:unsafebench': new unsafebench_1.UnsafeBenchGrader(),
    'trusys:redteam:unverifiable-claims': new unverifiableClaims_1.UnverifiableClaimsGrader(),
    'trusys:redteam:vlguard': new vlguard_1.VLGuardGrader(),
    'trusys:redteam:wordplay': new wordplay_1.WordplayGrader(),
    'trusys:redteam:system-prompt-override': new systemOverride_1.SystemOverrideGrader(),
    'trusys:redteam:special-token-injection': new specialTokenInjection_1.SpecialTokenInjectionGrader(),
};
function getGraderById(id) {
    // Handle null or undefined IDs
    if (!id) {
        return undefined;
    }
    // First try to get the exact grader
    const grader = id in exports.GRADERS ? exports.GRADERS[id] : undefined;
    // If not found but the ID starts with 'trusys:redteam:harmful', use the general harmful grader
    if (!grader && id.startsWith('trusys:redteam:harmful')) {
        return exports.GRADERS['trusys:redteam:harmful'];
    }
    return grader;
}
//# sourceMappingURL=graders.js.map