 			if error.name == "CodedError"
 				logger.warn attrs, error.message, code: error.code
 				return callback {message: error.message, code: error.code}
+			if error.message == 'unexpected arguments'
+				logger.log attrs, 'unexpected arguments'
+				metrics.inc 'unexpected-arguments', 1, { status: method }
+				return callback { message: error.message }
 			if error.message in ["not authorized", "doc updater could not load requested ops", "no project_id found on client"]
 				logger.warn attrs, error.message
 				return callback {message: error.message}

						callback(null, args...)

			client.on "leaveDoc", (doc_id, callback) ->
				WebsocketController.leaveDoc client, doc_id, (err, args...) ->
					if err?
						Router._handleError callback, err, client, "leaveDoc"

						callback()

			client.on "applyOtUpdate", (doc_id, update, callback = (error) ->) ->
				if typeof callback != 'function'
					return Router._handleInvalidArguments(client, 'applyOtUpdate', arguments)

				WebsocketController.applyOtUpdate client, doc_id, update, (err) ->
					if err?
						Router._handleError callback, err, client, "applyOtUpdate", {doc_id, update}
