I’m thinking that my previous post still doesn’t explain the theory very well.
The idea is that the GPL depends entirely on copyright, and it only comes into play when someone who has obtained the GPL software (which we’ll refer to as GPL_Project) decides to distribute it in any form, or when they derive code (which we’ll refer to as Derived_Project) from it, and distribute that.
First point: If there is no distribution of either code base, the GPL never comes into play.
Now we hire an engineer to reverse engineer GPL_Project. They create documentation with absolutely NO code that describes how one makes a plugin. This documentation is copyrighted, fully and completely, by the engineer who created it, or the company she assigns it to. It does NOT derive from the GPL_Project, and thus is NOT under the GPL. This is what clean room design cases show - that one can create documentation that does not derive, legally, from the object they are documenting. Companies try to build a stopgap by requiring licensees not reverse engineer their product, but even if this was legally defensible, the GPL does not attempt to do that.
Second point: The documentation is not under the GPL.
Now we hire yet another engineer that takes the documentation, and uses it to create an entirely new piece of code that should, when properly installed, interact with GPL_Project correctly. However, it is developed without actually using GPL_Project, only the documentation. This code can be referred to as Novel_Project.
Third point: This Novel_Project is not subject to the GPL. The engineer, or the company he works for, owns the copyright, and it is not derivative of GPL_Project.
Perhaps this engineer sends the Novel_Project down to the first engineer, that does testing, and she sends additional documentation, again with NO CODE, back up to the Novel_Project engineer. This process repeats until both engineers agree the Novel_Project is inter-operating correctly with GPL_Project when installed correctly.
Fourth Point: Novel_Project still is not derivative. Due to the use of clean room engineering, and a clear boundary where only newly generated documentation crosses the barrier up, the Novel_Project is clearly a new work.
Now since ownership of Novel_Project and its copyright clearly belongs to the second engineer, or the company he works for, they can distribute it without worrying about the GPL status of the GPL_Project. The end user who receives a copy of Novel_Project can install it into their GPL_Project instance, and as long as they don’t distribute either piece of code, they are in compliance with the GPL.
This is the theory. Which point do you disbelieve?