Seeking Clarification on TypeScript Behavior: Adding Incompatible Elements to Array Without Error
I am having trouble understanding this Typescript behavior. Is this documented behavior (a rational explanation or an open bug) or am I misunderstanding something? I have an array
https://www.typescriptlang.org/play?ts=5.5.0-dev.20240412&ssl=39&ssc=59&pln=1&pc=1#code/FAYwNghgzlAEAqsDexawgQgFywHYFcBbAIwFMAnAbmAF9VgAXATwAdTYBBWAXmXQH4c8ANoBdSrGKDYUBuQCWuAOawa1WMAD0m2DoBiEeWCgAaSaRAR8UdgGtSTdLHlwIeImXJncAewZP4UB9cWTw-AH0IcOY2ABMcLl4kdBwAVjNiHAByLNV1LR0ADVgAZQALH3wwWNgAM0MwWAYfHwA6WAA5HybWdmCmsvZY0lrFeQZ5YNNJfH9+hkH0cnIIR2HR3HHJ3CCQ-zckyWzctV3Q3wZI8PxcGNIaw4g0jOO8s-8LyKgEsR5YYU+URud1iZgg4no2l0YUu0DqDTgIB8ywsDDAjgA7oNcE47uhcBcIBN+i50LFhjVasj8X5BuQemx3ugAEwJP7JTKwHJvJF7GFXYG9WLM9kpWDpI5ck7UXnnCLQVmcX68AHy663IXMsHMiEaKHFDjGbplCAsNghWAY8ZlTjLVYAHg4AD4mRAAMyiznc06yj5qwVxD2PZ6S70yqZ+2FQN0JO1MR1Ov6q2HqkFusFu3UFaEAIVmMMt2Ng6zGygG7AgcfQiIjTMBUAALD9REnAamhWCW3Dffl9bAAJL+WI+UiuI2wE1m0g4rHThDOVwM0jePxOcDQb6MXoIEXB9wkChvPEcXd8CDSeDMsQSKQ4WQKMs+iPoVKe15PvltgP3V97iVe6U63lKBUgSK8WxVL8NTiCUIFSLMoR0et4SMGsURANFMSLCAwEaSt2EUJF0IYICU2-WIADZwgARlFJ5YAAdheKUeWfKCQSo09kno-933DT9gIo5tW39aD7io6iVzIsTKPCHVKCAA
A[] to which I add elements of not compatible with A without a type error. Can anyone have a look at it before I hastily add a typescript issue? Thanks!https://www.typescriptlang.org/play?ts=5.5.0-dev.20240412&ssl=39&ssc=59&pln=1&pc=1#code/FAYwNghgzlAEAqsDexawgQgFywHYFcBbAIwFMAnAbmAF9VgAXATwAdTYBBWAXmXQH4c8ANoBdSrGKDYUBuQCWuAOawa1WMAD0m2DoBiEeWCgAaSaRAR8UdgGtSTdLHlwIeImXJncAewZP4UB9cWTw-AH0IcOY2ABMcLl4kdBwAVjNiHAByLNV1LR0ADVgAZQALH3wwWNgAM0MwWAYfHwA6WAA5HybWdmCmsvZY0lrFeQZ5YNNJfH9+hkH0cnIIR2HR3HHJ3CCQ-zckyWzctV3Q3wZI8PxcGNIaw4g0jOO8s-8LyKgEsR5YYU+URud1iZgg4no2l0YUu0DqDTgIB8ywsDDAjgA7oNcE47uhcBcIBN+i50LFhjVasj8X5BuQemx3ugAEwJP7JTKwHJvJF7GFXYG9WLM9kpWDpI5ck7UXnnCLQVmcX68AHy663IXMsHMiEaKHFDjGbplCAsNghWAY8ZlTjLVYAHg4AD4mRAAMyiznc06yj5qwVxD2PZ6S70yqZ+2FQN0JO1MR1Ov6q2HqkFusFu3UFaEAIVmMMt2Ng6zGygG7AgcfQiIjTMBUAALD9REnAamhWCW3Dffl9bAAJL+WI+UiuI2wE1m0g4rHThDOVwM0jePxOcDQb6MXoIEXB9wkChvPEcXd8CDSeDMsQSKQ4WQKMs+iPoVKe15PvltgP3V97iVe6U63lKBUgSK8WxVL8NTiCUIFSLMoR0et4SMGsURANFMSLCAwEaSt2EUJF0IYICU2-WIADZwgARlFJ5YAAdheKUeWfKCQSo09kno-933DT9gIo5tW39aD7io6iVzIsTKPCHVKCAA
