Skip to content

Fix: restore Mac hero download CTA and guard against regression - #44

Merged
masarray merged 3 commits into
mainfrom
fix/restore-mac-hero-cta
Sep 12, 2026
Merged

masarray merged 3 commits into
mainfrom
fix/restore-mac-hero-cta

Conversation

@masarray

Copy link
Copy Markdown
Owner

Problem

The performance cleanup in #43 removed the runtime-only hero Mac CTA together with other dynamic UI work. The landing still advertised Windows + macOS and retained the lower Mac package, but the primary hero showed only the Windows download button.

Fix

  • Restore the hero Download free for Mac / Unduh gratis untuk Mac action in the lightweight deferred loader, before the larger release runtime is scheduled for browser idle.
  • Keep a useful #download fallback immediately so the Mac action never disappears because release metadata is slow or temporarily unavailable.
  • Upgrade that hero action to the exact reviewed macDmgUrl from same-origin release.json when the idle release runtime resolves.
  • Reuse the existing emerald Mac CTA visual treatment and Apple glyph, so there is no new CSS payload or third-party dependency.
  • Add a regression contract to the already-running P0 Pages validator. CI now fails if the Windows hero CTA disappears, the EN/ID Mac CTA bootstrap disappears, the Mac CTA is hidden, the runtime stops binding the reviewed DMG URL, the fallback disappears, the Mac styling disappears, or the macOS release manifest contract is lost.

Performance / SEO safety

  • No title, description, schema, canonical, hreflang, sitemap, release metadata, legal text or binaries are changed.
  • The Mac CTA bootstrap is tiny and runs from the existing deferred lightweight loader; the larger release runtime remains browser-idle.
  • No GitHub API request is reintroduced. Release enrichment remains same-origin manifest-first.

Regression root cause

Before #43, site-v6-core.js created #mac-dmg-link-hero dynamically and showed it when a Mac DMG existed. #43 correctly removed the heavy dynamic release-panel/schema work, but removed that hero CTA creation without replacing the user-facing action. This PR restores only that product-critical behavior and locks it in CI.

@masarray
masarray merged commit 87827f2 into main Sep 12, 2026
4 checks passed
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