ghostguild-org/server
Jennie Robinson Faber 55029e7eb7 feat(activation): wire autoFlagPreExistingSlackAccess into self-serve paths
Replaces the per-file inviteToSlack helpers with a single auto-flag
call. Self-serve activation paths now check for pre-existing workspace
membership (silent on miss) instead of attempting an admin-only invite.

- helcim/subscription.post.js: removed local inviteToSlack; both
  free- and paid-tier activation branches now call the helper, then
  notifyNewMember with the canonical 'manual_invitation_required' arg.
- members/create.post.js: same shape — helper + canonical notify arg.
- invite/accept.post.js (free-tier branch): added the helper call after
  member creation. Free-tier had no prior Slack call (audit confirmed);
  paid-tier remains untouched and activates via the Helcim webhook.

Admin-created and CSV-imported members intentionally do NOT call the
helper — admins flip the flag manually after sending the invite.

Test stub for autoFlagPreExistingSlackAccess added to server setup.
2026-04-29 12:21:12 +01:00
..
api feat(activation): wire autoFlagPreExistingSlackAccess into self-serve paths 2026-04-29 12:21:12 +01:00
config feat(contributions): rewrite server config as preset-based helpers 2026-04-19 18:12:44 +01:00
emails feat(payments): add upsertPaymentFromHelcim helper with idempotent insert 2026-04-20 13:15:38 +01:00
middleware refactor(rate-limit): delegate auth limiting to handlers, add dev bypass 2026-04-27 19:18:34 +01:00
migrations refactor(community): rename Community Connections → Community Ecology 2026-04-09 09:07:15 +01:00
models refactor(member): replace slackInviteStatus with slackInvitedAt 2026-04-29 12:11:25 +01:00
plugins refactor(env): unify required-env validation through useRuntimeConfig 2026-04-26 14:47:02 +01:00
routes refactor(env): unify required-env validation through useRuntimeConfig 2026-04-26 14:47:02 +01:00
utils feat(slack): autoFlagPreExistingSlackAccess helper 2026-04-29 12:13:59 +01:00