Because Booleans are automatically assigned a value of false, if they're
null.
See:
https://github.com/forge/core/blob/master/shell/src/main/java/org/jboss/forge/shell/command/Execution.java#L96

In this case, a Boolean optional would have a value of false, which is not
a safe default. Having true as the default would mean the created
annotation would be like @ManyToOne(optional=true) or
@OneToOne(optional=true) instead of the simpler @ManyToOne or @OneToOne.