For the deconstruction pattern, i propose to throw a specific error and to not wrap the subclasses of java.lang.Error thrown by the deconstruction pattern.
The wrapper should not be an Error, but I see what you are getting at -- let Error through, wrap everything else. This would allow SOE and OOME to manifest as expected -- and rely on the "well, know its a bad idea to try and catch Error, but they are not as good about runtime exceptions." Worth considering.
