Commit 29203bb
committed
ogar-from-ruff: lift Odoo
ruff PR #40 (merged) shipped the is_a input end: a frontend-agnostic
`ruff_spo_triplet::Model.inherits: Vec<String>` populated by the Odoo
frontend from `_inherit` (self-reopen self-edge excluded upstream). The
lift previously consumed only `sti.inherits_from -> Class.parent` (Rails
STI) and dropped Model.inherits, so the Odoo is_a linkage never reached
the Core.
Route it to Class.mixins (extend), the multi-parent Vec shelf the vocab
already designates for it: Class::mixins doc names `_inherit = 'mixin.thread'`,
and Class::inheritance excludes mixins ("a SEPARATE axis ... never folded
in here"). So NOT parent/inheritance (STI single-parent spine) — no parent
widening, no information loss, no vocab-axis violation. Multi-parent handled
natively by the Vec. Frontend-agnostic: only the Odoo frontend populates
Model.inherits, so it is a no-op for Rails (sti) / C++ (bases).
Consequence for LEG 3 (render, D-VCW-3): the FieldMask compose must union
parent U mixins for Odoo inherited fields; render_rows stays concept-local.
Tests: +2 (odoo_inherit_lands_on_mixins_not_parent, empty_inherits_adds_no_mixins);
48 green in ogar-from-ruff, workspace check + clippy clean.
Ledger: docs/DISCOVERY-MAP.md D-OGAR-ODOO-INHERIT-MIXINS._inherit (Model.inherits) onto Class.mixins — transpile-chain LEG 21 parent 75d955b commit 29203bb
2 files changed
Lines changed: 69 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
35 | 35 | | |
36 | 36 | | |
37 | 37 | | |
| 38 | + | |
38 | 39 | | |
39 | 40 | | |
40 | 41 | | |
| |||
177 | 178 | | |
178 | 179 | | |
179 | 180 | | |
| 181 | + | |
| 182 | + | |
| 183 | + | |
| 184 | + | |
| 185 | + | |
| 186 | + | |
| 187 | + | |
| 188 | + | |
| 189 | + | |
180 | 190 | | |
181 | 191 | | |
182 | 192 | | |
| |||
885 | 895 | | |
886 | 896 | | |
887 | 897 | | |
| 898 | + | |
| 899 | + | |
| 900 | + | |
| 901 | + | |
| 902 | + | |
| 903 | + | |
| 904 | + | |
| 905 | + | |
| 906 | + | |
| 907 | + | |
| 908 | + | |
| 909 | + | |
| 910 | + | |
| 911 | + | |
| 912 | + | |
| 913 | + | |
| 914 | + | |
| 915 | + | |
| 916 | + | |
| 917 | + | |
| 918 | + | |
| 919 | + | |
| 920 | + | |
| 921 | + | |
| 922 | + | |
| 923 | + | |
| 924 | + | |
| 925 | + | |
| 926 | + | |
| 927 | + | |
888 | 928 | | |
889 | 929 | | |
890 | 930 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
710 | 710 | | |
711 | 711 | | |
712 | 712 | | |
| 713 | + | |
| 714 | + | |
| 715 | + | |
| 716 | + | |
| 717 | + | |
| 718 | + | |
| 719 | + | |
| 720 | + | |
| 721 | + | |
| 722 | + | |
| 723 | + | |
| 724 | + | |
| 725 | + | |
| 726 | + | |
| 727 | + | |
| 728 | + | |
| 729 | + | |
| 730 | + | |
| 731 | + | |
| 732 | + | |
| 733 | + | |
| 734 | + | |
| 735 | + | |
| 736 | + | |
| 737 | + | |
| 738 | + | |
| 739 | + | |
| 740 | + | |
| 741 | + | |
0 commit comments