il problema è che la tua funzione freccia utilizza lessicale questo https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions/Arrow_functions
cambia
userSchema.pre("save", (next) => {
const currentDate = new Date
this.updated_at = currentDate.now
next()
})
a
userSchema.pre("save", function (next) {
const currentDate = new Date()
this.updated_at = currentDate.now
next()
})