* fix(group-plans): improved member count accuracy
* fix(migration): don't leave server running after completion
* fix(migration): don't update Stripe for non-Stripe methods
Also fixes a linting issue.
* fix(lint): no comma dangle here
* fix(async): put async token in relevant spot
* fix(lint): still more linting
* fix(async): better handling for async and promises
Also adds additional logging where discrepancies are found.
* feat(migration): provide CSV output
* fix(promises): better pause/resume
* fix(migration): don't update already canceled subs
* fix(groups): also address quantity/memberCount discrepancies
* fix(migration): also log quantity issues
* fix(migration): equation was reversed
* refactor(migration): condense logic, add error catch
* fix(migration): fix root cause of failed quantity update??
* fix(lint): gratuitous parens
* fix(test): expect group to be updated db-side
* fix(migration): actually update quantities?
* fix(groups): roll back unneeded Stripe lib change, refactor migration
* Began moving group chat to separate model
* Fixed lint issue
* Updated delete chat with new model
* Updated flag chat to support model
* Updated like chat to use model
* Fixed duplicate code and chat messages
* Added note about concat chat
* Updated clear flags to user new model
* Updated more chat checks when loading get group
* Fixed spell test and back save
* Moved get chat to json method
* Updated flagging with new chat model
* Added missing await
* Fixed chat user styles. Fixed spell group test
* Added new model to quest chat and group plan chat
* Removed extra timestamps. Added limit check for group plans
* Updated tests
* Synced id fields
* Fixed id creation
* Add meta and fixed tests
* Fixed group quest accept test
* Updated puppeteer
* Added migration
* Export vars
* Updated comments
* Added create group migration
* Add migration for unlimited group subscription
* Add migration to update group members with group plans
* Added error catch
* Added comments