直接の回避策はありません。
デフォルトの値で配列を再作成することはできますが、単一の値しか得られません。
一つの潜在的な作業の周りにソースを再作成し、アレイ
{% assign arr = someValue | split: '' %} <!-- splitting to single chars ? -->
{% assign withDefaults = '' %}
{% for ...%}
{% unless arr[loop.index0] == true %}
{% withDefaults = withDefaults | append : 'defaultValue,' %}
{% else %}
{% withDefaults = withDefaults | append : arr[loop.index0] | append : ',' %}
{% endfor %}
{% assign arr = withDefaults | split: ',' %} <!-- you'll have an extra blank element but that may not matter -->
に、その後、不足しているデフォルトで再分割を埋めることであろう