fn resolve_placeholders(node: &mut LayoutNode, new_ids: &[String])Expand description
Replace every leaf’s positional placeholder with the corresponding freshly
created block id, in place. A placeholder with no matching entry (should
not happen — new_ids is built 1:1 from the same snapshot’s blocks
array — but tolerated defensively) is left as-is; such a leaf simply won’t
resolve to a real block and the frontend already handles unknown block ids
in a layout leaf as an empty pane, matching how a manually-crafted or
corrupted layout degrades today.