From 2f6a92ac61cdbce85b8f3fabf53de18564cdf840 Mon Sep 17 00:00:00 2001 From: Jennie Robinson Faber Date: Wed, 29 Apr 2026 12:11:25 +0100 Subject: [PATCH] refactor(member): replace slackInviteStatus with slackInvitedAt MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Schema change for wave-based Slack onboarding. The string enum slackInviteStatus is replaced with a simple slackInvitedAt: Date — boolean slackInvited is the source of truth, the date records when. Call sites that flip slackInvited:true must stamp slackInvitedAt in the same update (no pre-save hook, per findByIdAndUpdate convention). Sweeps of remaining slackInviteStatus references land in later tasks. --- server/models/member.js | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/server/models/member.js b/server/models/member.js index 3034eb0..0aa2b3d 100644 --- a/server/models/member.js +++ b/server/models/member.js @@ -59,11 +59,7 @@ const memberSchema = new mongoose.Schema({ nextBillingDate: Date, lastCancelledAt: Date, slackInvited: { type: Boolean, default: false }, - slackInviteStatus: { - type: String, - enum: ["pending", "sent", "failed", "accepted", "joined"], - default: "pending", - }, + slackInvitedAt: { type: Date }, slackUserId: String, // Profile fields