From ba44daf7eb8ede18ba059d7d9cc6924c4dc45751 Mon Sep 17 00:00:00 2001 From: Worph Date: Sat, 25 Jul 2026 21:30:14 +0200 Subject: [PATCH] cid rank vector update --- packages/shared/meta-hash/src/tests/cid-rank-vectors.json | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/packages/shared/meta-hash/src/tests/cid-rank-vectors.json b/packages/shared/meta-hash/src/tests/cid-rank-vectors.json index a772ee7..84de7f4 100644 --- a/packages/shared/meta-hash/src/tests/cid-rank-vectors.json +++ b/packages/shared/meta-hash/src/tests/cid-rank-vectors.json @@ -19,6 +19,7 @@ "ladder": { "40": "dag-pb (IPFS block)", "30": "sha2-256 / sha3-256 / sha3-384 - real content digests", + "25": "nzb-posting - content-derived (Message-ID set digest), but not itself fetchable", "20": "BitTorrent infohashes - swarm interop", "10": "midhash256 - the record address", "5": "opaque locators (nzb-release, url) - never outrank a real digest", @@ -56,6 +57,12 @@ "rank": 30, "note": "REAL meta-hash fixture" }, + { + "name": "nzb-posting", + "cid": "bagbsaeraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa", + "rank": 25, + "note": "codec 0x1003 + REAL sha2-256 multihash (0x12) over the normalised, sorted Message-ID set - NOT a locator, so it sits ABOVE tier 5, but it addresses no fetchable block (bitswap can never satisfy a want for it - the digest is over an id set, not over any block's bytes), so it stays BELOW a real content digest (30): once meta-share materialises the media and re-seeds it, that genuine sha2-256 cid must win the canonical election, not this one. Rank MUST match on codec BEFORE falling through to the mh switch, or this scores 30 (same trap as nzb-release/url, in reverse: those need a codec check because their mh is identity 0x00; this needs one because its mh is REAL sha2-256 and would otherwise tie with tier 30)." + }, { "name": "btih-v2-codec-eq-mh", "cid": "bag3sdnzbeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",