Проблема, оказывается, аргумент по умолчанию. Работает следующий код:
Meteor.methods
doSomething : (arg)->
check arg, Match.Maybe(Object)
arg ?= {}
Это похоже на проблему, когда вы используете пустой объект в качестве аргумента по умолчанию. Другие виды аргументов по умолчанию, похоже, работают - я тестировал нуль и список.
Там также разница между вызовом:
Meteor.call "doSomething"
И называют это ...
Meteor.call "doSomething", undefined
В первом случае аргумент неявно определен, и будет установлен по умолчанию. Эта ошибка НЕ происходит.
Во втором случае мы явно пропускаем неопределенные (или null), и мы получаем эту ошибку. Если вы не можете этого сделать, вам не нужно будет изменять ваши настройки по умолчанию.