Seal verifier
Every verdict SOLVET reaches is sealed before the outcome is known. Once an hour all new verdicts are hashed into one fingerprint (a Merkle root) and posted in the public channel, which stamps the time. Here your own browser recomputes that fingerprint. You do not have to take our word for it.
And what it does not
Proves
The listed verdicts existed in exactly this form when the seal was made, and none was changed or removed afterwards. A changed record would produce a different fingerprint.
Does not prove
That a verdict was right. It only shows what SOLVET said and when. How often verdicts held up is on the track record, misses included.
The last step is yours
Compare the fingerprint shown here with the one posted in the public channel. This page cannot do that for you, because the channel is the independent witness.
Same rules, any language
leaf = sha256("L" + JSON array of the record, no spaces); node = sha256("N" + left + right); an odd last node moves up unchanged. The few lines below do the same in Python.
import hashlib, json, urllib.request
n = 42 # seal number
s = json.load(urllib.request.urlopen("https://solvent-backend-production.up.railway.app/api/proof/%d" % n))
H = lambda x: hashlib.sha256(x.encode()).hexdigest()
L = [H("L" + json.dumps([r["m"], r["v"], r["b"], r["h"], r["j"], r["t"]], separators=(",", ":"))) for r in s["records"]]
while len(L) > 1:
L = [H("N" + L[i] + L[i+1]) if i+1 < len(L) else L[i] for i in range(0, len(L), 2)]
print(L[0] == s["root"], len(s["records"]) == s["count"])