After setting FCV to 3.6, the response received from the repro is as follows:
WriteResult({
"nMatched" : 0,
"nUpserted" : 0,
"nModified" : 0,
"writeError" : {
"code" : 12,
"errmsg" : "Don't know how to handle unexpected SafeNum type"
}
})
The message given is vague and likely should not be reflected externally.