Skip to content

Add HTML meta tag as alternative domain verification method#111

Draft
Copilot wants to merge 4 commits into
mainfrom
copilot/add-meta-tag-verification
Draft

Add HTML meta tag as alternative domain verification method#111
Copilot wants to merge 4 commits into
mainfrom
copilot/add-meta-tag-verification

Conversation

Copy link
Copy Markdown

Copilot AI commented Apr 13, 2026

GitHub Pages users cannot edit DNS records, making TXT-record verification impossible. This adds a meta tag verification path as a second option on /dashboard/verify.

Changes

  • app/dashboard/actions.ts — New checkMetaTagVerification server action:

    • Validates domain URL is http/https before fetching (rejects invalid schemes)
    • Fetches homepage HTML with 10s timeout; validates redirect targets stay on http/https
    • Matches <meta name="uoft-webring" content="<HMAC>"> in any attribute order via two complementary regexes
    • Marks is_verified = true on success, same as DNS path
  • app/dashboard/verify/page.tsx — Restructured verify page:

    • Status card moved to top, always visible
    • Two labelled options shown when unverified: DNS TXT record (existing) and HTML meta tag (new)
    • Meta tag snippet auto-populated with the user's HMAC value for copy/paste
  • app/dashboard/verify/VerifyResult.tsx — Extended props to support reuse across both methods:

    • buttonLabel?: string — defaults to "Verify now"
    • failureMessage?: string — per-method error copy

Meta tag format

Users add the following to the <head> of their homepage:

<meta name="uoft-webring" content="<HMAC-sha256-base64url>" />

The content value is the same HMAC used for DNS TXT verification, keyed on ring_id.

mh-anwar and others added 2 commits April 13, 2026 00:05
Default lazyLoading to true so directory page avatars don't all
compete for bandwidth. Skip DiceBear generation when user has a
custom image. Lower AVIF quality to 0.6 and cap output at 512px.
@vercel
Copy link
Copy Markdown

vercel Bot commented Apr 13, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
webring Ready Ready Preview, Comment Apr 13, 2026 4:28am

Copilot AI changed the title [WIP] Add meta-tag verification for DNS alternative Add HTML meta tag as alternative domain verification method Apr 13, 2026
Copilot AI requested a review from mh-anwar April 13, 2026 04:18
Add SSRF protection, 1MB response body cap, and deferred Supabase
client creation. Remove dead _checkDomainRecordsImpl wrapper. Show
verification records on the verify page even after domain is verified.
@mh-anwar mh-anwar removed their request for review April 13, 2026 04:26
@mh-anwar mh-anwar removed their assignment Apr 13, 2026
@mh-anwar mh-anwar force-pushed the main branch 13 times, most recently from e6f3efa to 91225d3 Compare April 16, 2026 00:55
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.

Adding meta-tag verification

2 participants