Before this commit, 4 different usecases where considered when
computing the value of an x2many field to put in the evalContext:
1) evalContext to evaluate a context used client-side
2) evalContext to evaluate a context used server-side
3) evalContext to evaluate a domain used client-side
4) evalContext to evaluate a domain used server-side
For 1, 3 and 4, the value of the x2many was the list of ids in the
relation (in the case of one2manys, new, virtual, ids were filtered
out). For 2, the value was a list of commands. This doesn't make
much sense, and doesn't appear to be used. This has likely been
encoded when we developped the new views in v11, when we kind of
reverse engineered the specs.
As we are currently rewritting the BasicModel with a new version of
onchange, where the semantics of x2many commands change, this old
spec makes even less sense. Indeed, the new command semantics only
encode what has changed, whereas currently the commands encode the
whole value of an x2many, like if it was recreated from scratch.
We thus decided to simplify the evalContext logic by always
evaluating x2manys to the list of (existing) ids in the relation.
Part of task 3179751
closesodoo/odoo#123439
Signed-off-by: Géry Debongnie <ged@odoo.com>