Да, считается нормальной практикой, инициализировать модели, синхронизацию и модели пробросить в контекст. НО, в случае mongoose лучшей практикой будет инициализовать подключение и вызывать модели в резолвере. В любом случае лишнего оверхеда в контексте не будет, что в одном, что в другом случае. Но плюс использования моделей в резолвере - автокомплит и возможность посмотреть сущность, в контексте ничего такого не будет :)
Моя практика такова, насколько правильна не буду судить:
- В контексте пользователь
- В контексте глобальные вещи (кеш, отправка задач в очередь, логгер)
- В контексте подписки (просто удобно)