Feedback Manager Integration
Feedback Manager is the external integration pipeline for collecting user feedback and persisting it through provider implementations.
The current production provider is Google Sheets. This is an implementation choice, not a platform limit. New providers can be added by implementing the shared FeedbackProvider interface and wiring provider selection in the factory.
Scope
Feedback Manager owns:
- Feedback submission flow from client payload to provider write call
- Server-side enrichment of feedback with trusted context fields
- Provider selection via
FEEDBACK_PROVIDER - Provider-specific persistence and response mapping
Feedback Manager does not own:
- Form UX and local validation details beyond the integration boundary
- Product analytics eventing
- Reporting and analysis dashboards over stored feedback
End-To-End Flow

Runtime path:
ShareFeedbackModulesubmitsFeedbackClientContextthroughFeedbackService.submit.- The API route validates auth and site cookies, then enriches payload into
FeedbackContext. getFeedbackProviderresolves provider implementation fromFEEDBACK_PROVIDER.- Provider
writepersists data and returnsFeedbackResponse. - API route returns provider result to client.
Provider Model
Provider behavior is interface-driven:
- Common contract:
FeedbackProvider.write(data) - Selection point:
src/lib/external/FeedbackManager/provider/factory.ts - Current provider:
google-sheets
Provider configuration is isolated per implementation:
- Shared selector:
FEEDBACK_PROVIDER - Provider-owned env vars: defined and validated inside each provider implementation
- Provider docs layout: one file per provider under
providers/
Sources
src/lib/external/FeedbackManager/core/types.tssrc/lib/external/FeedbackManager/provider/factory.tssrc/lib/external/FeedbackManager/provider/google-sheets/provider.tssrc/app/api/platform/feedback/route.tssrc/services/FeedbackService.ts
In This Section
| Doc | Covers |
|---|---|
| Architecture | Runtime layering, responsibility split, provider lifecycle, retry semantics |
| Contracts | Type boundaries, enums, provider interface, extension checklist |
| Google Sheets Provider | Provider-specific env vars, GCP setup, mapping, failure handling |
| Operations | Diagnostics, failure modes, incident runbook |