I'd suggest adding a score float like this:
{
"version": "0.1.1",
"url": "https://example.com/~alice",
"vouches": [
{
"url": "https://bob.example.com",
"vouched_at": "2026年01月15日",
"score": "0.8"
}
]
}
A score of 1 means full trust, this could be used for people you know really well. 0 is equivalent to not having the vouch listed. -1 means you are very sure something is "AI" generated or someone definitely uses "AI".
If A trust B with a score of 0.5 and B trust C with a score of -0.5, that implies a transitive trust of -0.25 from A to C.
If there are multiple "paths of trust" to a human, the client implementation might choose the highest possible score, the most extreme score or an average. It should also drop the site if the score drops below a certain implementation specific threshhold.