default(omit) を使うと、未定義の場合にその項目自体の指定が無かったことにできます。
- name: touch files with an optional mode file: dest={{item.path}} state=touch mode={{item.mode|default(omit)}} with_items: - path: /tmp/foo - path: /tmp/bar - path: /tmp/baz mode: "0444"
上記だと、item.modeが定義されていなかった場合、modeの指定自体が無かったことになります。
他に配布するようなRoleだと、結構使いそうです。(指定ができるようにはしておいて、何もなければ処理しない)