You cannot directly populate a Pydantic model of type A with a model of type B, even if they have overlapping or identical fields, unless model B is a subclass of model A or is explicitly cast or unpacked (e.g. via .dict()) into model A.
A Pydantic model instance is an instance of a specific class — like apples and pears: even if they look alike, they are fundamentally different types. They cannot be treated interchangeably, unlike generic types such as dictionaries.
Solution i ended using