Yes, you're right. I've tried and it doesn't work on 3.1-SNAPSHOT either. The code generator cannot "shake off" the precision and scale information from the original type contained in the database. Forcing the type to NUMBER(20) doesn't work either as the additional precision information is ignored by the code generator.
I have registered #2486 for jOOQ 3.1 to fix this:
This should allow to rewrite a type to a specific other type using optional precision, scale, and length information. For instance:
<forcedType>
<name>NUMBER(20)</name>
<expressions>(?i:(.*?.)?T_AUTHOR.ID)</expressions>
</forcedType>
In the mean time, I'm afraid that you would have to patch AbstractTypedElementDefinition yourself to fix this problem.
Cheers
Lukas