9d7b7daf5a4fbde1118e62deefa90a5518efa525
The import feature appended every imported node to the end of the target recipe. That's wrong for the common case — General Processing has Shipping as its last operation, so importing an Electroless Nickel pack should land BEFORE Shipping, not after it. The user would otherwise have to click Move Up dozens of times. Controller: /fp/recipe/node/import_children now accepts insert_before_id: null/missing → append at end (default, unchanged) 0 → insert at the start <positive id> → insert right before that top-level child Implementation reorders target's top-level children in one pass after Phase 1 creates the copies (placeholder sequence=0). Phase 2 splits existing vs. new, finds the anchor index in the existing list, and reassigns sequences 10/20/30/... across the merged list. Collisions on the old max_seq-based append strategy are eliminated. JS: state.importInsertBefore drives a new "Insert:" dropdown in the toolbar with options: — At the end — (default) — At the start — Before <each top-level child name> Smoke on entech (3-case): insert-before-middle, insert-at-start, insert-at-end all produce the expected ordering. fusion_plating → 19.0.7.2.0 Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Description
Odoo 19 custom modules
Languages
Python
55.9%
HTML
26.1%
JavaScript
14.9%
SCSS
1.8%
CSS
0.8%
Other
0.4%