- _emitBranch walk no longer adds decisions to visited before calling generateCode — let the decision's own generateCode manage its visited tracking. Otherwise the decision's generateCode sees itself as already visited and returns empty, dropping its entire subtree. - Same fix in both codegen/index.js and blocks-algo.js