Cream the butter, sugar, and salt using a whisk attachment until fully combined, for 3-5 minutes. Add the egg and mix for 1-2 minutes.
Add the flour, lukewarm milk (35-40 degrees Celsius), and instant yeast and mix using a spoon or spatula until the dough starts to come together.
If you are using a stand mixer, switch to the dough hook attachment. If not, use your hands to start kneading the dough. The dough will be sticky and wet at first but should become smooth, soft, and not sticky by the end. The kneading process can take up to 20 minutes if done by hand. If the dough is still very sticky after 5 minutes of kneading, add 15 to 20 grams of flour to the dough, a little at a time.
Test if the dough is done by doing the windowpane test – cut a small piece of the dough and stretch it using your fingers. The dough should be able to stretch to paper thinness and be translucent without breaking. If the dough breaks during the test, knead it for a few more minutes.
Lightly oil a bowl, place the finished dough inside and turn it around so that all sides of the dough are lightly coated with oil. Cover with cling film and let it rise in a warm place for 1.5 to 2 hours until it doubles in size.
Make the caramel sauce: In a saucepan, place the unsalted butter, brown sugar, honey, and sea salt. Cook on medium heat until everything melts, then whisk until the ingredients are fully incorporated and form a silky smooth caramel sauce.
Place a baking paper at the bottom of the baking pan to stop the sauce from sticking. Pour the caramel sauce on top of the baking paper and add a few whole and half pistachios and walnuts.
Make the filling: Place the softened butter, brown sugar, and cinnamon in a bowl and mix together using a spoon or spatula until they form a thick paste. Mix the ground nuts and set them aside.
Punch the dough, then place a baking sheet on the surface and transfer the dough to it. Lightly flour the rolling pin and roll the dough into a rectangle (around 14×18 inches). Don't roll the dough too thin; keep the thickness to around 1/2-2/3rd inch. If the dough is too thin, the rolls will be tough and chewy rather than soft and fluffy.
Spread a layer of the cinnamon butter on the dough, then sprinkle the ground nut mixture on top.
Roll the dough horizontally (breadth-wise) slowly, making sure you are tightly tucking it in, and roll it all the way through until it forms a cigar shape. If it does not work in the first go, unravel it and do it again.
Place the roll seam side down and slice it with a string of floss. Mark the dough with roughly equal sizes across the roll, then place the floss string underneath the roll, making sure there is enough overhang on both sides. Bring the overhang up using both hands, then cross it across the dough roll the way you do while trying a string. (For make-ahead instructions, check the notes at the end to follow after this step)
Place the cut rolls on top of the caramel sauce in the baking pan, stuffing them close to each other and leaving just enough space for each roll to rise.. Cover the rolls lightly with cling film, and let them proof and rise for another 1.5 to 2 hours until they are doubled in size.
Once the rolls have doubled in size, preheat the oven to 160℃ and bake for 20-25 minutes until fully cooked from the centers. Let them cool down for 20-30 minutes, then flip them on a plate and peel the baking paper off. Enjoy warm.