I doubt your ZODB is hosed, but it's hard to tell from your description exactly why you're not having luck deleting the object. Are you trying to delete from the management interface or from a script of some sort?
This is all happening within the ZMI. One thing I've noticed is this problem only occurs for items in the root. i.e., I can add items in the root folder but I can't delete them. Anywhere else and nothing goes wrong. It seems weird to me that within OFS.Folder.Folder._getOb, repr(self) is '<Folder instance at b54098>' and repr(aq_base(self)) is '<Folder instance b54098>', so we're dealing with the same object ... but getattr only works for the wrapped object, not the unwrapped one ... hrmmm ...
Acquisition wrappers *look* a lot like the base object. But, as you mentioned in your original message, they're of different types. repr on the wrapper may look like the base object, but it searches that object and all the way up the chain to find the attributes you're looking for.
One other thing that I find interesting is that sprinkling other print '%s' % (self) throughout OFS files mostly show OFS.Application.Application and <Apllication instance at bd92b8> instead of OFS.Folder
The root object is an Application... I'm not sure what that Folder is that you're encountering... Kevin Dangoor Product Development Manager Web Elite http://www.webelite.com