Heru Feedback — Self-Healing Platform Architecture (Decided 2026-03-11)

Core Concept

Heru Feedback is NOT just a bug reporting tool. It is a self-healing closed loop:

  • Customer/tester reports technical issue → AI classifies → agent fixes → reporter notified on resolution
  • This is the feature that won million-dollar software deals at the WCR client meeting (2026-03-11)

Two Reporter Types, Same Pipeline

  • Testers (Vision, Quik) — report via develop/TestFlight apps → notification on resolution via Slack DM
  • Customers (real users) — report via production apps → notification on resolution via AWS SES email
  • Both hit the same submitFeedback mutation. Difference is notification channel only.

Closed Loop Flow

  1. Submit feedback (min 50 chars, encourage screenshot/video)
  2. Feedback API → DB + Slack channel + work queue API call to build farm
  3. Haiku classifies severity, groups duplicates, schedules dispatch
  4. Agent fixes bug → marks feedback as resolved
  5. Resolution notification: SES email (customer) or Slack DM (tester)

Email = Marketing Win

  • Customers provide email + consent to receive updates about their issue
  • Optional second opt-in for marketing/promotional emails
  • Every bug report = warm lead (they use the product, they engaged, they gave email)
  • CAN-SPAM compliant — consent checkbox required, unsubscribe link in all emails

Haiku’s Role in Classification

  • Classifies based on: description, screenshots, video, device info
  • Minimum character limit + media encouragement = sender’s obligation to provide good data
  • Groups duplicate/related reports under one dispatch (deduplication via classification, not prevention)
  • Human-readable summaries in plain natural language — no model names, no jargon

Environment Identification (Added 2026-03-11)

  • Tester feedback: SDK auto-detects environment (develop/staging/production) from app config
  • Customer feedback: ALWAYS production — customers only use prod apps
  • Haiku uses environment to determine dispatch urgency: production customer bug = P0, develop tester bug = normal dispatch
  • Backend column: environment enum (develop | staging | production, default: production)

Requirements

  • REQ-10 in .claude/plans/heru-feedback-requirements.md
  • Phase 2 — after S3, video, screenshots, mobile, centralized backend work (REQ 1-9)
  • SDK needs: email field, consent checkbox, min char limit, media nudge, auto-detect environment
  • Backend needs: reporterEmail, emailConsent, marketingConsent, environment columns, status enum, SES integration
  • SES params: /quik-nation/shared/SES_FROM_EMAIL, /quik-nation/shared/SES_REGION

Slack → QuikHuddle Transition

  • Currently all Heru channels are in Slack
  • When QuikHuddle is built, channels migrate there
  • QuikHuddle Support Channel can be integrated into client dashboards later