Skip to content

fix: use exact Super Launch badge snippet - #82

Merged
andrewzolotukhin merged 2 commits into
mainfrom
fix/super-launch-badge-snippet
Jul 26, 2026
Merged

fix: use exact Super Launch badge snippet#82
andrewzolotukhin merged 2 commits into
mainfrom
fix/super-launch-badge-snippet

Conversation

@andrewzolotukhin

@andrewzolotukhin andrewzolotukhin commented Jul 26, 2026

Copy link
Copy Markdown
Contributor

Original request

Correct the merged Super Launch footer badge because Super Launch does not recognize the current embed and reports an image URL problem. Start from a freshly pulled origin/main, use the supplied anchor and Next.js <Image> snippet with width="300" and height="300", follow the PR workflow, and do not create a blog post.

What changed

  • Replaced the previous customized Super Launch badge metadata and presentation with the supplied link and Next.js <Image> attributes: exact product URL, image URL, alt text, 300×300 intrinsic attributes, _blank target, and noopener relationship.
  • Removed the old 470×130 metadata, 235px scaling, explicit lazy-loading prop, and wrapper styling from this badge.
  • Added a narrowly scoped Next.js remote-image rule allowing only https://www.superlaun.ch/badge.png with no query string.
  • Added component and Playwright coverage for the exact attributes, decoded remote source, successful image load, responsive aspect ratio, and outbound product link.

The resulting component is the supplied markup, formatted by the repository:

<a href="https://www.superlaun.ch/products/2933" target="_blank" rel="noopener">
  <Image
    src="https://www.superlaun.ch/badge.png"
    alt="Featured on Super Launch"
    width="300"
    height="300"
  />
</a>

Reasoning

The previous implementation adapted the vendor asset with custom dimensions and styling, but Super Launch did not recognize it. This fix follows the supplied Next.js embed contract. Next.js requires an explicit allowlist for a remote <Image>, so the configuration permits only the required HTTPS badge asset.

Blog post

Skipped per the original request. This is a focused compatibility correction to an existing footer badge.

Screenshots / preview evidence

Preview: https://xpenser-pr-082.cleverbrush.com

  • Manually inspected at 390×844 and 1440×900 in both light and dark themes; the badge is visible, intact, and responsive.
  • Verified DOM attributes: href, target, rel, alt, width="300", and height="300" all match the supplied embed.
  • Verified the Next.js optimizer URL decodes to exactly https://www.superlaun.ch/badge.png; the image completed loading at its natural 384×106 ratio and renders at 300px wide without distortion.
  • Verified clicking the badge opens https://www.superlaun.ch/products/2933 in a separate tab.
  • Browser errors and console output were empty after preview QA.

Validation

Local

  • npm run lint
  • npm run typecheck
  • npm test — 95 files, 520 tests passed
  • Focused landing-page component test

GitHub / preview

Telemetry

  • Queried traces, ERROR/FATAL logs, and http.server.duration.count for resource service xpenser-web-pr-82 over the last hour.
  • Rechecked after one ingestion interval (through 2026-07-26T11:32:15Z). The preview service returned no trace rows, no error-log rows, and no request-metric series, so telemetry verification is explicitly skipped as unavailable for this PR environment.

Notification

  • PR-ready notification attempted after all checks and QA. The configured local notifier at 127.0.0.1:8787 refused the connection, so notification is explicitly skipped as unavailable.

Validated against head SHA 40021de2808e75d82928754874fe82a0e954d0c6.

@andrewzolotukhin
andrewzolotukhin temporarily deployed to pr-82 July 26, 2026 11:20 — with GitHub Actions Inactive
@andrewzolotukhin
andrewzolotukhin temporarily deployed to pr-82 July 26, 2026 11:27 — with GitHub Actions Inactive
@andrewzolotukhin
andrewzolotukhin merged commit a191e8f into main Jul 26, 2026
4 checks passed
@andrewzolotukhin
andrewzolotukhin deleted the fix/super-launch-badge-snippet branch July 26, 2026 11:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant