For what its worth, the Witcher 3's ending wasn't a Deus Ex Machina. Geralt was tasked with finding Ciri and that was the objective of the game, which you accomplished. Dealing with the White Frost was Ciri's task, and they made it very clear that this was Ciri's story and you were basically playing a support character in that story.
But endings, RPG and otherwise, mainly exist to set up franchises these days. Its rare to see an ending that is a full hard stop because they want to leave the story open for you to revisit the world. This is also partially due to a shift in storytelling to the protagonist not being able to solve every problem by the end of the game. Take Dragon Age: Origins. The Blight ended, but the Darkspawn still exist and Blights will still happen in the future, Elves are still treated poorly, mistrust for magic has grown, the dwarves continue to squabble over their city and policy, etc...Back in the day endings were about "happily ever after", but those types of endings contrast to the modern gamer who knows "happily ever after" doesn't exist.