Consolidate integrations into workspace Settings and expose Twitch/YouTube OAuth there #95
Labels
No labels
auth
autorelease: pending
autorelease: tagged
bug
dependencies
devops
docker
documentation
duplicate
enhancement
github_actions
good first issue
help wanted
invalid
javascript
maintenance
question
refactor
ui
wontfix
No milestone
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
gitchegumi/GitchAlerts#95
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Problem
The app currently has multiple competing integrations surfaces:
/dashboard/[channelSlug]/integrationsis linked from the main dashboard navigation and shows manual credential fields./dashboard/settings/integrationscontains the Twitch/YouTube OAuth account-linking cards./dashboard/[channelSlug]/settingsdoes not contain integrations.This is the wrong information architecture. Integrations are workspace settings. They should not be a separate top-level nav item, and they should not appear below destructive actions.
Issues #90 and #91 moved in the right direction but left enough ambiguity that the split architecture remained. This issue should supersede that approach and consolidate integrations into one workspace Settings experience.
Required behavior
Integrations must live directly inside
/dashboard/[channelSlug]/settings.The Settings page should contain clear sections in this order:
Danger Zone must always be last.
Current code paths to reconcile
Integrationspointing at/dashboard/[channelSlug]/integrations./dashboard/[channelSlug]/integrationsrenders the manualIntegrationSettingsForm./dashboard/settings/integrationsrenders the OAuthIntegrationCardUI for Twitch and YouTube./dashboard/[channelSlug]/settingscurrently only renders workspace name and Danger Zone.These should not remain as separate user-facing concepts.
Acceptance criteria
Integrationsfrom the top-level dashboard nav./dashboard/[channelSlug]/integrations./dashboard/settings/integrations.Integrationssection directly to/dashboard/[channelSlug]/settings.OAuth/environment cleanup
The current documentation/configuration appears contradictory:
.env.examplesays platform credentials are configured per workspace from Dashboard -> Settings -> Integrations.auth.tsonly enables Twitch/Google OAuth providers when instance-level env vars exist:TWITCH_CLIENT_IDTWITCH_CLIENT_SECRETGOOGLE_CLIENT_IDGOOGLE_CLIENT_SECRETFix the docs and example env so operators know what is actually required.
Acceptance criteria for this part:
.env.exampleand README.Tests
Add or update tests that confirm:
/dashboard/[channelSlug]/settingsrenders the Integrations section above Danger Zone.Integrations./dashboard/[channelSlug]/settingswhen OAuth providers are configured./dashboard/[channelSlug]/settings#integrationsor are removed intentionally.Notes
Do not solve this by adding another button or another route. The goal is one coherent Settings experience where integrations are first-class settings, not a disconnected page and not something visually buried near destructive actions.