From 301d7e98866e7f0ffcabfbbefe5e7dcc34498f7a Mon Sep 17 00:00:00 2001 From: Max Date: Thu, 28 May 2026 16:29:30 +0100 Subject: [PATCH] docs(t5): recommend PNG/WebP for logoURI per TIP-1026, not SVG The 'use an SVG for logoURI' note I added in #405 contradicts the actual TIP-1026 spec, which says: Rasterized formats (PNG / WebP / static, single-frame) are recommended over SVG; integrators that accept SVG must follow the SVG-handling guidance in Security Considerations. Flagged by malleshpai on #450 for the TIP-20 spec appendix (fixed in that PR). This PR fixes the same incorrect note on the remaining three pages it shipped to: - protocol/upgrades/t5.mdx (TIP-1026 integration changes section) - guide/issuance/create-a-stablecoin.mdx (Coming with T5 callout) - guide/issuance/manage-stablecoin.mdx (Coming with T5 callout) Each now points at TIP-1026's 'Recommended Formats' section and notes that SVG is allowed by the scheme allowlist but not recommended, mirroring TIP-1026 verbatim. The quickstart/tokenlist.mdx Icon Requirements section is a separate off-chain API contract (the tokenlist serves vector icons via its own /icon endpoint) and is intentionally not changed here. Amp-Thread-ID: https://ampcode.com/threads/T-019e6e22-0805-7628-b3b5-899366ecd1f6 Co-authored-by: Amp --- src/pages/guide/issuance/create-a-stablecoin.mdx | 2 +- src/pages/guide/issuance/manage-stablecoin.mdx | 2 +- src/pages/protocol/upgrades/t5.mdx | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/pages/guide/issuance/create-a-stablecoin.mdx b/src/pages/guide/issuance/create-a-stablecoin.mdx index 2e3d6ff7..880f58d5 100644 --- a/src/pages/guide/issuance/create-a-stablecoin.mdx +++ b/src/pages/guide/issuance/create-a-stablecoin.mdx @@ -16,7 +16,7 @@ TIP-20 tokens are designed specifically for payments with built-in compliance fe and integration with Tempo's payment infrastructure. :::info[Coming with T5] -After the [T5 network upgrade](/protocol/upgrades/t5), the TIP-20 factory exposes a new 7-arg `createToken` overload that accepts an on-chain `logoURI` at creation ([TIP-1026](https://tips.sh/1026)). Wallets and explorers can read the icon directly from the token contract via `logoURI()`, without going through the [tokenlist registry](/quickstart/tokenlist). The previous `createToken` overload is unchanged. Use an SVG for `logoURI` so it renders crisply at any resolution across wallets and explorers (see [tokenlist Icon Requirements](/quickstart/tokenlist#icon-requirements)). See the [Optional logoURI in TIP-20 section of the T5 page](/protocol/upgrades/t5#optional-logouri-in-tip-20-tip-1026) for the full surface area. +After the [T5 network upgrade](/protocol/upgrades/t5), the TIP-20 factory exposes a new 7-arg `createToken` overload that accepts an on-chain `logoURI` at creation ([TIP-1026](https://tips.sh/1026)). Wallets and explorers can read the icon directly from the token contract via `logoURI()`, without going through the [tokenlist registry](/quickstart/tokenlist). The previous `createToken` overload is unchanged. Per [TIP-1026's recommended formats](https://tips.sh/1026#recommended-formats), use a square, single-frame rasterized image (PNG or WebP) for `logoURI`. SVG is allowed by the scheme allowlist but not recommended. See the [Optional logoURI in TIP-20 section of the T5 page](/protocol/upgrades/t5#optional-logouri-in-tip-20-tip-1026) for the full surface area. ::: ## Demo diff --git a/src/pages/guide/issuance/manage-stablecoin.mdx b/src/pages/guide/issuance/manage-stablecoin.mdx index fff826e3..cd165200 100644 --- a/src/pages/guide/issuance/manage-stablecoin.mdx +++ b/src/pages/guide/issuance/manage-stablecoin.mdx @@ -22,7 +22,7 @@ import { Cards, Card } from 'vocs' Configure your stablecoin's permissions, supply limits, and compliance policies after deployment. This guide covers granting roles to manage token operations, setting supply caps, configuring transfer policies, and controlling token transfers through pause/unpause functionality. :::info[Coming with T5] -After the [T5 network upgrade](/protocol/upgrades/t5), an admin holding `DEFAULT_ADMIN_ROLE` can update the on-chain `logoURI` field on any TIP-20 via `setLogoURI(string newLogoURI)` ([TIP-1026](https://tips.sh/1026)). Wallets and explorers can read the icon directly from the token contract via `logoURI()`. Use an SVG for `logoURI` so it renders crisply at any resolution across wallets and explorers (see [tokenlist Icon Requirements](/quickstart/tokenlist#icon-requirements)). See the [Optional logoURI in TIP-20 section of the T5 page](/protocol/upgrades/t5#optional-logouri-in-tip-20-tip-1026) for the full surface area. +After the [T5 network upgrade](/protocol/upgrades/t5), an admin holding `DEFAULT_ADMIN_ROLE` can update the on-chain `logoURI` field on any TIP-20 via `setLogoURI(string newLogoURI)` ([TIP-1026](https://tips.sh/1026)). Wallets and explorers can read the icon directly from the token contract via `logoURI()`. Per [TIP-1026's recommended formats](https://tips.sh/1026#recommended-formats), use a square, single-frame rasterized image (PNG or WebP) for `logoURI`. SVG is allowed by the scheme allowlist but not recommended. See the [Optional logoURI in TIP-20 section of the T5 page](/protocol/upgrades/t5#optional-logouri-in-tip-20-tip-1026) for the full surface area. ::: TIP-20 tokens use a role-based access control system that allows you to delegate different administrative functions to different addresses. For detailed information about the role system, see the [TIP-20 specification](/protocol/tip20/spec#role-based-access-control). diff --git a/src/pages/protocol/upgrades/t5.mdx b/src/pages/protocol/upgrades/t5.mdx index edfb5283..c7992f04 100644 --- a/src/pages/protocol/upgrades/t5.mdx +++ b/src/pages/protocol/upgrades/t5.mdx @@ -67,7 +67,7 @@ Tokens without `logoURI` continue to work. New surface area: `logoURI` is validated on-chain: max 256 bytes (reverts `LogoURITooLong`), and if non-empty must be a syntactically valid URI with a scheme in the allowlist `https`, `http`, `ipfs`, `data` (case-insensitive). Otherwise reverts `InvalidLogoURI`. Empty string is valid and clears the field. -Use an SVG for `logoURI` so it renders crisply at any resolution across wallets and explorers (see [tokenlist Icon Requirements](/quickstart/tokenlist#icon-requirements)). +Per [TIP-1026's recommended formats](https://tips.sh/1026#recommended-formats), use a square, single-frame rasterized image (PNG or WebP) for `logoURI`. SVG is allowed by the scheme allowlist but not recommended — integrators that accept SVG must follow TIP-1026's SVG-handling guidance. ### Witness digest in key authorizations (TIP-1053)