Mix all ingredients together in a bowl and refrigerate until ready to serve.
In large bowl beat together cream cheese, butter, sugar and salt until fluffy.
Stir in flour just to blend.
Divide in half; shape into squares. Wrap each half in plastic wrap; refrigerate until firm - about 1 hour.
Meanwhile, in a large skillet, heat half of oil over medium heat; fry mushrooms and 1/4 teaspoon each of the salt and pepper until no liquid remains, about 7 minutes.
Transfer to bowl.
In a saucepan, heat remaining oil over medium heat. Fry onion, garlic and remaining salt and pepper for 3 minutes.
Add rice and 1 cup water; bring to a boil. Cover, reduce heat and simmer until rice is tender and the water is absorbed, about 20 minutes.
Add spinach and dill to rice mixture and fluff with fork. Let cool. (NOTE: It is important to let this mixture cool for as long as possible in order that it does not make the pastry soggy and difficult to work with - I unfortunately know this from experience.).
Line rimmed baking sheet with parchment paper. On lightly floured surface, roll out 1 piece of pastry to 10 inch square and about 1/8 inch thick.
Place on prepared pan. Spoon half of the rice mixture over pastry, leaving a 2 inch border.
Top with 1 salmon fillet; spread with mushroom mixture.
Top with remaining salmon fillet; spoon remaining rice mixture over the top.
Mix egg yolk with 1 tablespoon of water for egg wash; brush over border of pastry.
Roll out remaining pastry to 11 inch square; place on filling, smoothing around edge. Fold bottom edge over top edge, pressing to seal. Flute edges.
Brush egg wash over pastry; cut 4 steam vents on top. Bake in 350°F oven until golden, about 1 hour.
Let stand for 10 minutes. Using serrated knife, cut diagonally into quarters and then cut each quarter into half or thirds. Serve with Sour Cream Dill Sauce.