> There is not a technical solution to any of this.
I don't quite agree with that. In general, our best means of knowing with reasonable confidence whether some event being reported on is true is our confidence in the person telling us of the event. If it's someone we know personally, that's best. In a world of billions of people, that's not possible for most world events, so we can think of trust as being transitive. I can put more confidence in something that's reported by someone who is personally vouched for by a friend of mine, than something that's three steps removed, and so on.
The trouble is that our human brains are incapable of understanding social networks with more than a hundred or so people (i.e. Dunbar's number) and even those we have very imperfect understanding of. Computers don't have that limitation. Supposing you have a directed graph of every human who is willing to publicly vouch for the credibility of some other human, you can run something like PageRank on that to determine the degree to which you should trust some random reporter.
Better yet would be something like PageRank, but modified to handle anti-endorsements as well. There are ways to handle distrust in PageRank-like systems, but that's a little outside the scope of the point I'm trying to make.
Of course, collecting this directed graph of endorsements is outside the ability of a normal human, but sites like Facebook and LinkedIn have something like it. If they wanted to re-use that to create a news filtering service they probably could. On the other hand, the rest of us users would have no particular reason to believe they don't have their thumb on the scale, promoting news that serves their interests, or that they were paid to promote. So, I wouldn't say what I'm suggesting is purely a "technical solution", there are social and cultural aspects to it as well, but the one aspect of the problem -- that are human brains can't cope with large social networks -- is one that we can use computers to solve, if we have the right data.