ADR-004: Action Humanizer Integration

Status

Accepted

Date

2025-07-13

Context

Piper Morgan’s user-facing messages contained technical action strings (e.g., “investigate_crash”) that were exposed directly to users. This created several problems:

  1. Poor User Experience: Technical jargon confused non-technical users
  2. Inconsistent Messaging: Different parts of the system formatted actions differently
  3. Maintenance Burden: Hardcoded message strings scattered throughout codebase
  4. Limited Flexibility: No easy way to A/B test or improve messaging

Decision

Implement an Action Humanizer system with the following components:

  1. ActionHumanizer Service: Converts technical actions to natural language
  2. Caching Layer: Database-backed cache for performance
  3. TemplateRenderer: Integrates humanization with message templates
  4. Rule-Based Engine: Predictable conversions for common patterns
  5. Usage Tracking: Analytics on which actions are used most

Rationale

Why Caching?

Why Rule-Based?

Why Templates?

Consequences

Positive

Negative

Neutral

Implementation Notes

Phase 1 (Completed)

Phase 2 (Future)

References