I've just stumbled upon this bug too.
The code causing it is something like this
Which works great the first time it's invoked, but all other calls will fail!
store = Ext.getStore(theStoreType);
model = Ext.ModelManager.getModel("MyModel");
Running model.setProxy() causes Ext.factory() to run instance.destroy() - trying to destroy the previous proxy instance, but instead ends up calling the destroy(operation, callback, scope) method that is intended to perform a destroy operation via the proxy!
Maybe the problem is in Model.applyProxy()? If currentProxy was to be removed from that call to Ext.factory() this might work?