Clojure Version of Shield Rush Broken

I’m unable to win in Shield Rush. I’ve tried a bunch of different tactics, but Clojure is just broken. Here are some examples:

This never cleaves more than once:

(dotimes [n 10000]         
    (if (.isReady this "cleave")
        (and (.say this "cleave ready") (.cleave this) )
        (and (.shield this) (.say this "shielded"))
    )
)

This does nothing but kill the player:

(dotimes [n 10000]         
    (if (.isReady this "cleave")
        (let [enemy (.findNearestEnemy this)]
             (if enemy
                (and (.say this "cleave ready") (.cleave this) )
             )
        )
        (and (.shield this) (.say this "shielded"))
    )
)

Sigh…

Logged https://github.com/codecombat/codecombat/issues/2487