Changelog

What's shipping on rd Relay. The list is curated to what retailers, brands, and distributors actually see — internal infrastructure work lives in the repo history.

2026-08-14
All

A pass over what our own pages claim

We had a brand read the public site cold and tell us where it overstated itself. Four things are fixed. The brand directory said no brands were listed while verified brands were in it, and now shows them. The security page said your barcode registry and lab-result PDFs export at any time; only the audit-log CSV is genuinely self-serve, so it now says that and says the rest comes on request. The Shopify auto-attach app was written as though it already existed — it does not yet, and the page now says so and points at the paste-one-line guide instead. And the status page reported the COA resolver as Degraded at healthy speeds, because a throughput floor was calibrated against a much larger file than the one it measures.

2026-08-14
All

Sample records never hand out a certificate

Our demo products carry fabricated lab results, which is normal for a demo and a problem the moment one is indistinguishable from a real certificate. Every public surface now labels them as demonstration data and withholds the document itself — the record page, the lookup card, the lookup PDF endpoint, and the example on our own homepage. A downloaded PDF carries none of the page's disclosure, so gating the button alone would not have been enough. No real product is affected: certificates for real barcodes resolve exactly as before.

2026-08-11
Retailers

Correction: the metafield is custom.coa

Our retailer integration doc named the wrong Shopify metafield. The field live storefronts actually read is namespace custom, key coa, type URL, set per variant — not rdlabs.coa_url, which is what an unreleased Shopify app would have written. The doc is corrected and the link form in it is now rdrelay.com/c/{barcode}. If you wired a storefront from the old instructions, the value you set is fine; only the field name it lives under needs to change.

2026-04-25
Brands

Brand directory is live

Browse every brand publishing through Labs from a single page. Each card shows product count, top categories, and recency of activity, and links to the brand's storefront. New brand signups appear automatically.

2026-04-25
Retailers

Three states for /c/{barcode}, including offboarded

When a Lab Results link can't resolve, the page now tells you why: not found (barcode never registered), pending (registered but no COA yet), or offboarded (was here, brand removed it — returns 410 Gone). Each state has a brand-aligned page with a useful next step for whoever scanned it.

2026-04-24
Retailers

Mobile camera barcode scanner

Open /lookup on a phone, hit Scan, point at a UPC. Resolves through the same registry as typed lookups. Native BarcodeDetector where available, ZXing fallback elsewhere. Camera permission is per-tab and gesture-gated.

2026-04-25
Brands

View-COA link for brand-hosted PDFs

When a brand publishes a COA at their own URL (no PDF on Labs storage), the lookup result now surfaces a direct View COA link. Brands can keep hosting wherever; retailers and consumers reach the same document.

2026-04-25
Retailers

Retailer integration mechanics, documented

How the Shopify metafield wiring actually works — variant-level scope, the contract for the rdlabs.coa_url field, the three failure modes a retailer should expect, and the smoke test to verify a connection. Written for a retailer's tech team, not for marketing.

Want to know when something specific ships? Brand and distributor plans include email notifications on releases that affect your integration. Until then, check back here or watch rad-dad-alt on GitHub.