When creating an input of type Optional<ISomething>, one cannot connect an instance implementing ISomething directly. You have to use Create (Optional).
One of the big features of VL is that we have a very strong type inference when compared to other languages like C#: You seldomly need to add type annotations.
In your example two things have to happen at the same time. This is one of those examples where you need to place a type annotation to help the type inference system.
By placing the annotation, you help the compiler break down the problem into two steps.
These two features now work isolated:
I understand the desire to have each feature work indepndantly from the other and combine flawlessly with any other feature. However, I know of no sufficiently feature-rich system / language, where each and every feature combines without any further ado. Type inference would just get too complex and resource hungry.
Allowed myself to classify this as a missing feature, not a bug.