What happens here is that the post_process function converts the \commutator{#} argument in the line
{J_{\mu\nu}, P_{\mu}, W_{\mu} }::Depends(\commutator{#}).
to a 0, so that that line becomes
{J_{\mu\nu}, P_{\mu}, W_{\mu} }::Depends(0).
This does not happen on first run, because in that case the function post_process is not defined yet when the above line is encountered.
The problem is that unwrap (which is used in post_process) should have left \commutator{#} untouched.
Thanks for reporting this; will fix in a future update.