I figured it out from going through the code. I guess hidden groups are deliberately not populated in userGroups. Seems like it'd be helpful to have an extra flag for groups that determines whether or not it's selectable as a title aside from hidden (maybe I don't want the group or list of members to be available publicly but still want to use the associated title) but it might be too much of a corner case for me. For now, I've unhidden the groups that I really needed and made sure to disable join requests on them.
Issue w/ MongoLab?!?
Database running fine...until today. I have reached this delightful error - I'm not sure if MongoLab did an update and the order of authentication is now out of wack with NodeBB, but I'd love some insight. I've tried a number of re-installs and created new DB. Nothing is working.
error: Error creating index not authorized for query on nodebb_west_sand.system.indexes
8/8 19:09  - error: MongoError: not authorized for query on nodebb_west_sand.system.indexes
at Function.MongoError.create (/home/ec2-user/nodebb.2/node_modules/mongodb-core/lib/error.js:31:11)
at queryCallback (/home/ec2-user/nodebb.2/node_modules/mongodb-core/lib/cursor.js:171:34)
at Callbacks.emit (/home/ec2-user/nodebb.2/node_modules/mongodb-core/lib/topologies/server.js:95:3)
at null.messageHandler (/home/ec2-user/nodebb.2/node_modules/mongodb-core/lib/topologies/server.js:246:23)
at Socket.<anonymous> (/home/ec2-user/nodebb.2/node_modules/mongodb-core/lib/connection/connection.js:262:22)
at Socket.emit (events.js:107:17)
at readableAddChunk (_stream_readable.js:163:16)
at Socket.Readable.push (_stream_readable.js:126:10)
at TCP.onread (net.js:538:20)