Reopening a thread mints committed attachment URLs that change on every request, preventing an existing HTTP cache entry from being reused. This change lets current clients opt in to URL reuse within a five-minute minting window and limits each attachment response’s cache freshness to the token’s remaining lifetime.

The optional `reuseUrl` field extends the asset contract. Current shared clients send it for attachments. Pending attachments and clients that omit the field retain per-mint URLs. Mobile thread images remount after refreshing their URL so a failed load retries even when the refreshed URL is identical. Older mobile clients keep receiving new URLs and retain their retry behavior.

The real-app evidence below verifies URL reuse, browser-process restart persistence, response freshness headers, window-boundary behavior, and the mobile retry path. The previous 2.1 s versus 12.8 s / 6.0× title claim was not reproduced by this run; the measured development-build results are reported with their conditions.

AI-assisted; verified with the tests and tools listed above.
