feat(cultural-sensitivity): implement Phase 1 - detection and flagging (inst_081)
Phase 1: Cultural Sensitivity Detection Layer
- Detects Western-centric framing (democracy, individual rights, freedom)
- Detects Indigenous exclusion (missing Te Tiriti, CARE principles)
- FLAGS for human review, never auto-blocks (preserves human agency)
Implementation:
- PluralisticDeliberationOrchestrator.assessCulturalSensitivity()
- Pattern-based detection (Western-centric governance, Indigenous exclusion)
- Risk levels: LOW, MEDIUM, HIGH
- Recommended actions: APPROVE, SUGGEST_ADAPTATION, HUMAN_REVIEW
- High-risk audiences: Non-Western countries (CN, RU, SA, IR, VN, TH, ID, MY, PH), Indigenous communities
- Audit logging to MongoDB
- media.controller.js respondToInquiry()
- Cultural check after ContentGovernanceChecker passes
- Stores cultural_sensitivity in response metadata
- Returns flag if HIGH risk (doesn't block, flags for review)
- blog.controller.js publishPost()
- Cultural check after framework governance check
- Stores cultural_sensitivity in moderation.cultural_sensitivity
- Returns flag if HIGH risk (doesn't block, flags for review)
- MediaInquiry.model.js
- Added country, cultural_context fields to contact
- respond() method supports cultural_sensitivity in response metadata
Framework Integration:
- Dual-layer governance: Universal rules (ContentGovernanceChecker) + Cultural sensitivity (PluralisticDeliberationOrchestrator)
- inst_081 pluralism: Different value frameworks equally legitimate
- Human-in-the-loop: AI detects/suggests, human decides
Next: Phase 2 (UI/workflow), Phase 3 (learning/refinement)
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>