fn actualLogic(param, param, param) ...
switch (some Condition) { case a: actualLogic(Foo, bar) ; case b: actualLogic(bar, Foo) ; ... }
It might be expressed with if statements, pattern matching, function calls etc., but most of the code is boilerplate.
From my experience in a C# codebase most of the code which completes correctly is this boilerplate.
O3/Sonnet/Gemini are able to write actual logic in chat/agent mode sometimes but then the problem is that they rewrite too much, which would count as AI generated code.
These two factors probably play a huge role in the 30% if it's counted in any accurate way.