Warm olive oil in a large pot over medium-high heat. After 90 seconds when the oil is hot, add the onion and cook for 5-6 minutes, stirring occasionally, until softened.
Add the ginger, garlic, coriander, thyme, cinnamon, black pepper, and sage. Cook for 2 minutes, stirring often until fragrant.
Add the rice and cook for 2 minutes, stirring frequently, until lightly toasted. Pour in the wine and cook for 3 minutes, stirring often, until mostly absorbed.
Pour in 1 cup of vegetable stock and stir continuously until the liquid is mostly absorbed, about 5 minutes. Continue adding the remaining stock 1 cup at a time, stirring often, allowing each addition to absorb before adding the next. This will take 20–25 minutes.
Once all the stock has been absorbed and the rice is tender, stir in the pumpkin purée and salt. Cook for 3 minutes, stirring often, until heated through. Remove from the heat.
For the optional (but recommended) topping, mix the olive oil, cranberries, brown sugar, sage leaves, hazelnuts, and salt together in a bowl.
Transfer to a parchment-lined baking pan and roast at 375°F (190°C) for 7-8 minutes, just until the sage is crisp.
Top the risotto with the cranberry mixture, toasted hazelnuts, and crisp sage leaves. Serve immediately.