Verwenden von set_facts und with_items zusammen in Ansible

Ich verwende derzeit Ansible 1.7.2. Ich habe das folgende Test-Playbook:

---
- hosts: localhost
  tasks:
  - name: set fact 1
    set_fact: foo="[ 'zero' ]"

  - name: set fact 2
    set_fact: foo="{{ foo }} + [ 'one' ]"

  - name: set fact 3
    set_fact: foo="{{ foo }} + [ 'two', 'three' ]"

  - name: set fact 4
    set_fact: foo="{{ foo }} + [ '{{ item }}' ]"
    with_items:
      - four
      - five
      - six

  - debug: var=foo

Die erste Aufgabe legt eine Tatsache fest, die eine Liste mit einem Element enthält. Die nachfolgenden Aufgaben werden mit weiteren Werten an diese Liste angehängt. Die ersten drei Aufgaben funktionieren wie erwartet, die letzte jedoch nicht. Hier ist die Ausgabe, wenn ich das ausführe:

PLAY [localhost] **************************************************************

GATHERING FACTS ***************************************************************
ok: [localhost]

TASK: [set fact 1] ************************************************************
ok: [localhost]

TASK: [set fact 2] ************************************************************
ok: [localhost]

TASK: [set fact 3] ************************************************************
ok: [localhost]

TASK: [set fact 4] ************************************************************
ok: [localhost] => (item=four)
ok: [localhost] => (item=five)
ok: [localhost] => (item=six)

TASK: [debug var=foo] *********************************************************
ok: [localhost] => {
    "foo": [
        "zero",
        "one",
        "two",
        "three",
        "six"
    ]
}

PLAY RECAP ********************************************************************
localhost                  : ok=6    changed=0    unreachable=0    failed=0

enn ich die with_items in Task 4 und die Tatsache, dass in der Ausgabe die Task ordnungsgemäß über die Elemente in dieser Liste iteriert wird, gegeben hätte, hätte ich erwartet, dass das Ergebnis alle Zahlen von null bis sechs enthält. Aber diese letzte Aufgabe scheint nur zu sein, set_fact mit dem letzten Element in der Liste auszuwerten. Ist dies möglicherweise ein Fehler in Ansible?

Edit: Ich habe dies auch gerade auf Ansible 1.8 getestet und die Ausgabe war identisch.