Re-anchored: V1.3.2 points every vector at the draft
Sources cited in this piece · draft-li-rttp-iqa-addressing-02 (40 pp., 2026-11-01, TXT sha256 02491c5a) · iqa.org/challenge/ (frozen vector sets, new pins) · crates.io rttp 1.3.2 · crates.io iqa-org 1.3.2 · PyPI rttp 1.3.2 · PyPI iqa-org 1.3.2 · npm @aicent/rttp 1.3.2 · npm @aicent/iqa 1.3.2 · spec pages rttp.com/URI/ · iqa.org/URI/.
Version numbers usually mean new features. This one means something stricter: V1.3.2 changes where the vectors point, and nothing about the vectors themselves. The two-pillar work — RTTP(rttp://)resolving where and when, IQA(iqa://)stating whether — publishes conformance vectors with every package, and each vector carries a spec_ref saying which document defines the rule it tests. Until 1.3.1 those references pointed at our own site readers, AICENT-002 and AICENT-009. V1.3.2 re-anchors them all to one document: the Internet-Draft draft-li-rttp-iqa-addressing-02, pinned at TXT sha256 02491c5a.
The remap was done the only way that survives an audit: row by row, 87 rows, against the draft's text. 85 rows re-anchor cleanly to the draft's sections — the RTTP families to §§4 and 7.1, the IQA families to §§4.2 and 5, the AE-128 envelope layout to sec. 7.2, which the draft now carries normatively. Inside those 85, two kinds of rows are flagged rather than hidden. One row is a CONFLICT against our own draft: negative-URI case 15 expects a leading hyphen to be rejected, but the draft's §4.1 grammar, read literally, permits it — recorded as a conflict, to be tightened in the next revision. Two rows are WEAK: the AE-128 checks for flags 0x0001 and organ 0xFF are enforced by the vectors but only backed by the field layout in §7.2(1), not by an enumerated MUST-reject — also queued for the next revision. Two rows stay where they were: the Ed25519 attestation-envelope vectors test machinery that exceeds what -02 specifies, so they keep citing AICENT-002/009 — an honest boundary rather than a silent stretch.
Then the release itself: six packages across three ecosystems, all at 1.3.2. crates.io: rttp 1.3.2 and iqa-org 1.3.2. PyPI: rttp 1.3.2 and iqa-org 1.3.2. npm: @aicent/rttp 1.3.2 and @aicent/iqa 1.3.2 — the bare iqa name on npm is blocked by typosquatting protection, so the package lives under the organization scope, same as its sibling. Every published tarball was downloaded back from its registry and compared byte for byte against the locally built artifact before the release was called done.
The self-tests that ship inside the packages were re-run before publication, and per our discipline the numbers travel with the version: rttp 1.3.2 Python self-test 83/83 (80 passed, 3 skipped), Node node --test 21/21; iqa 1.3.2 Python self-test 111/111 (108 passed, 3 skipped), Node node --test 19/19; Rust sides re-run green on their toolchains (rttp 13 unit + 1 doc; iqa 18 + 2 doc, 20 + 2 doc on the ed25519 profile). The JS metadata tests are themselves consumers of the anchors — one of them deep-asserted the old applies_to values and had to be re-anchored with everything else, which is exactly what a real consumer is for.
One more thing moved with this release: the spec pages themselves. The dual-pillar URI reference now lives at rttp.com/URI/ and iqa.org/URI/, and every README in the six packages cites those addresses — with the frozen snapshots and the changelog history left append-only, as history should be.
Why this release matters more than its version number suggests: conformance vectors are promises with addresses. A vector that says “this byte sequence must be rejected, because section such-and-such says so” is only as good as its citation. As of 1.3.2, every published vector for both schemes points at one pinned document — the same draft that is under IETF review, the same bytes anyone can hash and check — and the frozen vector sets themselves are pinned and downloadable at iqa.org/challenge/, so every promise on this page can be replayed without installing anything. When the draft moves to -03, the vectors will say so too, row by row, conflicts included.