This could be thought of as similar to http://merb.devjavu.com/ticket/438, but this one's definitely a bug, not a feature request.
Try the following in a partial that has a local or two:
1) run this: Merb.logger.info "Local Variables A:\n" + @_merb_partial_locals.map {|k,v| ":#{k} => #{v.inspect}"}.join("\n")
2) then, include another partial with locals: partial 'somepartial', :with => some_var
3) last, run this: Merb.logger.info "Local Variables B:\n" + @_merb_partial_locals.map {|k,v| ":#{k} => #{v.inspect}"}.join("\n")
In my experience, the second list returns what should be true INSIDE 'somepartial', and my old locals are gone.