44.3 User consent and transparency UX

Overview and links for this section of the guide.

Disclosure

Users should know when they're talking to AI:

  • Clear labeling: "AI Assistant" not "Sarah"
  • Capability disclosure: What can/can't it do
  • Data disclosure: What data is processed
// consent-types.ts
interface ConsentConfig {
  // Required for any AI processing
  basicAI: boolean;
  
  // Optional - improves experience
  conversationHistory: boolean;
  personalization: boolean;
  analytics: boolean;
}

// Granular consent
const defaultConsent: ConsentConfig = {
  basicAI: true,            // Required to use the feature
  conversationHistory: false, // Opt-in
  personalization: false,    // Opt-in
  analytics: false           // Opt-in
};

UI Examples

// Good disclosure UI
┌────────────────────────────────────────────┐
│ 🤖 AI Assistant                            │
│                                            │
│ This chat is powered by AI. Your messages  │
│ are processed to generate responses.       │
│                                            │
│ [Learn more] [Privacy settings]            │
└────────────────────────────────────────────┘

// Bad disclosure (hidden, misleading)
┌────────────────────────────────────────────┐
│ Chat with Sarah                            │  ❌ Misleading name
│                                            │
│ [Start chatting]                           │  ❌ No disclosure
└────────────────────────────────────────────┘

Where to go next