diff --git a/features/content-moderation/backend-api/src/knowledge-verification-integration.service.ts b/features/content-moderation/backend-api/src/knowledge-verification-integration.service.ts index 35f377126..17830e439 100755 --- a/features/content-moderation/backend-api/src/knowledge-verification-integration.service.ts +++ b/features/content-moderation/backend-api/src/knowledge-verification-integration.service.ts @@ -193,9 +193,9 @@ export class KnowledgeVerificationIntegrationService { private getRulesForContentType(contentType: string): string[] { switch (contentType) { case 'bio': - return ['economics', 'competitors', 'terminology']; + return ['economics', 'competitors', 'terminology', 'slang']; case 'listing': - return ['economics', 'terminology']; + return ['economics', 'terminology', 'slang']; case 'message': return ['terminology']; case 'review': diff --git a/features/truth-validation/semantic-service/src/truth-rules.yaml b/features/truth-validation/semantic-service/src/truth-rules.yaml index 17c4f0dfb..6b7b5482c 100644 --- a/features/truth-validation/semantic-service/src/truth-rules.yaml +++ b/features/truth-validation/semantic-service/src/truth-rules.yaml @@ -28,3 +28,22 @@ corrections: - "Comparative tables showing multiple platforms side-by-side are informational, not contradictions" - "Use respectful terminology: 'sex worker' not derogatory terms, 'client' not 'john'" - "If no retrieved context is relevant, the paragraph cannot be validated — skip it" + + # Slang and cultural context rules (detection enrichment, not correction) + slang: + - pattern: "\\b(roses|GFE|PSE|BBW|BBBJ|DATY|MSOG)\\b" + flags: gi + replacement: null + reason: "SW industry vocabulary — detect for analytics, never correct" + - pattern: "\\b(incall|outcall|duos|provider|companion|hobbyist|p4p|donation)\\b" + flags: gi + replacement: null + reason: "SW business terminology — normal platform language" + + # Slang LLM evaluation guidance + slang_system_prompt_rules: + - "SW industry vocabulary (roses, GFE, PSE, BBW, incall, outcall) is NORMAL platform language — detect for analytics, never correct or flag" + - "Payment terminology (donation, tribute, roses) is standard business vocabulary on this platform" + - "Coded language detection is for AWARENESS and ANALYTICS — not censorship" + - "Provider safety terms (trafficking signals, doxxing patterns) should be flagged at appropriate severity" + - "LE awareness language should be detected for provider safety — never blocked (legal gray area)"