Closed
Description
🐛 Bug Report
The current implementation of structs does not embed base types, means adding a property to a parent struct (even if optional) is not a breaking change in TS, but is source-breaking in Go, which is bad.
Embedding structs has consequences on the initialisation pattern (struct value literals are coupled to their embedding structure), and interfaces can help alleviate this problem, but this is not perfect.
Relevant links: