Line an 8×8-inch pan with parchment paper, leaving overhang on the sides.
In a saucepan over very low heat, melt white chocolate chips, condensed milk, and butter, stirring constantly until smooth.
Remove from heat and stir in vanilla extract, pudding mix, and salt until fully incorporated.
Spread the vanilla mixture evenly into the prepared pan.
Refrigerate for 45–60 minutes until set but slightly soft.
Place semi-sweet chocolate chips in a heatproof bowl.
Heat heavy cream and butter until just steaming, then pour over chocolate chips.
Let sit 1–2 minutes, then stir until smooth and glossy.
Pour ganache evenly over the vanilla layer and smooth the top.
Refrigerate until fully set, then lift out and slice into squares.