только параметры задефайненые в контракте?
потому что: 1. иначе получался backdoor и смысл контракта операции теряется, разработчику не нужно думать что действительно нужно передавать на вход, как валидировать, если есть возможность "что-то чекать, что-то нет". 2. разработчик, который читает операцию, должен иметь возможность посмотреть на контракт и знать что ожидается, естественно, если что-то не описано в контракте это теряется из виду 3. если очень хочется, всегда можно объявить параметр без валидаций (а это может быть и list, и map...) - такой wildcard параметр (но читающий хотя бы будет знать, что он есть и о нем надо знать)
Обсуждают сегодня