I currently lean towards Proposal 1. A FlattenOutput option could work if it is resolved before type checking and optimization. However, I would be cautious about allowing platform implementations to override it, since the logical output type should remain platform-independent.
Trino does support the SQL ROW type, so the composite-type approach is interesting. Still, relying on it would require checking connector, JDBC, and cross-platform support, and probably extending Wayang’s type system. For the current scope, a dedicated relational join seems to me the clearest and most practical solution. Best, Jun
