I think that the right behavior here is to get a weak ref to the underlying native if the object passed in is a wrapper and the native object supports weak references. Blake, Bobby?
Yeah, I think the current behavior is a bug. Please do fix it.
Created attachment 593069 [details] [diff] [review]
There is one tricky bit here, which is that after doing weakref.get() you need to QI whatever interfaces you want again. I don't know that there's an easy way to fix that.