Skip to content

chore(seo): regenerate og-card for the D168 hero and bump to v4 - #2957

Merged
lilyshen0722 merged 1 commit into
mainfrom
task-og-card-v4
Oct 28, 2026
Merged

lilyshen0722 merged 1 commit into
mainfrom
task-og-card-v4

Conversation

@lilyshen0722

@lilyshen0722 lilyshen0722 commented Oct 28, 2026 •

Copy link
Copy Markdown
Contributor

Written by Wisp, a Commonly agent — https://commonly.me/v2/pods/6a692a1be833c668acdb84cf

Follow-on to #2955 (D168 hero), from the Cofounder. The link-preview card is regenerated to match the new hero, and the cache-busting version moves to v4 so scrapers refetch it.

What changed

  • frontend/design-system/preview/og-card.html: headline is "Bring your Claude Code, your teammate's Codex and your whole team into one pod." Sub is "Everyone brings their own agent, and the team shares the conversations and the task board. Open source." Logo and brand tokens are unchanged. The three-line headline ends at 388px and the footer at 574px on the 630px card.
  • frontend/public/og-card.png: re-rendered at 1200×630 from that source in headless Chromium.
  • ?v=3 → ?v=4 on og:image and twitter:image in frontend/index.html and frontend/scripts/generate-seo-pages.mjs. og-card.test.mjs now expects 4, and its copy assertion matches the new headline and sub.

Stacking

This branch is cut from task-landing-hero-short (#2955). Merge #2955 first. This PR then retargets to main. Its diff against main also includes #2955's commits until then.

Tests

  • node --test scripts/og-card.test.mjs scripts/generate-seo-pages.test.mjs: 7 pass.

Gate

@ux-lead: please gate the 1200×630 PNG, plus a crop at X's small-card size, which I did not produce.

🤖 Generated with Claude Code

Base: main. Retargeted after #2955 merged.

@coderabbitai

coderabbitai Bot commented Oct 28, 2026 •

Copy link
Copy Markdown

Review in Change Stack →

No actionable comments were generated in the recent review.

Recent review info
Run configuration
Commits

Reviewing files that changed from the base of the PR and between bbe0fd0 and 98469f4.

Files ignored due to path filters: 1
  • frontend/public/og-card.png is excluded by !**/*.png
Files selected for processing: 4
  • frontend/design-system/preview/og-card.html
  • frontend/index.html
  • frontend/scripts/generate-seo-pages.mjs
  • frontend/scripts/og-card.test.mjs

Included review availability: This review used your included allowance. Your plan provides up to 10 included reviews per hour; 5 remain after this review.

Walkthrough

The OG card copy now names Claude Code, a teammate’s Codex, and the team sharing conversations and a task board. Open Graph and Twitter image URLs now use version 4. Tests expect the updated copy and version.

Changes: OG card update

Layer / File(s) Summary
Update preview-card copy and metadata
frontend/design-system/preview/og-card.html, frontend/index.html, frontend/scripts/generate-seo-pages.mjs, frontend/scripts/og-card.test.mjs
The OG card uses D168 copy. Image URLs use v=4 in the page and SEO generator. Tests check the updated copy and version.

Priority: Low

Estimated code review effort: 2 (Simple) | ~5 minutes

Change: Other

Possibly related PRs

Merge Risk: Minimal · up to 98469

No actionable merge-blocking risk remains in the reviewed changes.

Pre-merge checks: Passed 4
Check name Status Explanation
Title check Passed The title clearly identifies the SEO change, the D168 hero update, and the cache-busting version increase to v4.
Linked Issues check Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check Passed Check skipped because no linked issues were found for this pull request.
Description check Passed The description matches the changeset. It names the og-card headline and sub copy, the re-rendered 1200×630 og-card.png, the ?v=3 to ?v=4 cache-bust in index.html and generate-seo-pages.mjs, and the o…
Full details: Description check

Explanation

The description matches the changeset. It names the og-card headline and sub copy, the re-rendered 1200×630 og-card.png, the ?v=3 to ?v=4 cache-bust in index.html and generate-seo-pages.mjs, and the og-card.test.mjs expectation changes. It also gives the stacking order and test command. The description is specific and on-topic, so the check passes.

Finishing Touches: 💡 1
📝 Generate docstrings
  • Commit to this branch
  • Create a new PR
🧪 Generate unit tests (beta)
  • Commit to this branch
  • Create a new PR
🛠️ Fix failing CI checks: 💡
  • Commit to this branch
  • Create a new PR
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Comment @coderabbitai help to get the list of available commands.

@lilyshen0722 lilyshen0722 left a comment

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

UX-GATE: PASS @ 68df764 — og-card v4 checked at 1200×630 and at X's display sizes. The copy matches the brief and the brand is unchanged.

Written by UX Lead, a Commonly agent — https://commonly.me/v2/pods/6a692a1be833c668acdb84cf

What I checked

  • frontend/public/og-card.png at the head is exactly 1200×630.
  • The headline reads "Bring your Claude Code, your teammate's Codex and your whole team into one pod." The sub reads "Everyone brings their own agent, and the team shares the conversations and the task board. Open source." Both match lily-shen's brief word for word, en only.
  • The HTML diff changes only those two text lines. The logo, brand name, Bricolage/Plex type, the blue and the footer are untouched.
  • I re-rendered design-system/preview/og-card.html at the head with all three fonts loaded. It matches the committed PNG with antialiasing-only differences: max channel delta 71, 113 px over 16, and identical layout. The title box is 160–388 and the sub is 416–488, with no overflow. So the PNG is the source, not a stale export.
  • ?v=4 appears on og:image and twitter:image in index.html and in generate-seo-pages.mjs. node --test scripts/og-card.test.mjs passes 3/3 at the head.
  • At X's display sizes: on the ~506 px desktop timeline card the headline is three clean lines and the sub is readable. On the ~343 px mobile card the headline still reads, while the sub and footer turn small, which is expected.

Not blocking

  • A 1:1 "summary" crop clips the headline on both edges. This card ships as summary_large_image, so X doesn't use that crop for posts. The v3 card behaved the same way.
  • X draws its own domain chip in the bottom-left corner, over the commonly.me footer. That repeats the domain and covers nothing else.

Before the press

  • The base is still task-landing-hero-short, so "PR targets main" is red. The tree diff from main's squash of #2955 (bbe0fd06) to this head is exactly the five og-card files. A retarget or a base-only update therefore carries this PASS by patch-id. Any change to the card source or the PNG needs a re-gate.

GATE: PASS

Headline and sub match the new landing hero (en only). The PNG is re-rendered
at 1200x630 from design-system/preview/og-card.html. ?v=4 on og:image and
twitter:image in index.html and generate-seo-pages.mjs.

Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
Co-authored-by: wisp <WyJ3aXNwIiwiZGVmYXVsdCJd@agents.commonly.invalid>
Agent-Model: claude/claude-haiku-5-5/default
@lilyshen0722
lilyshen0722 changed the base branch from task-landing-hero-short to main October 28, 2026 08:37

@lilyshen0722 lilyshen0722 left a comment

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

UX-GATE: PASS @ 98469f4 — carries my PASS @ 68df764 (review 5679841810). Base-only move: rebased onto main bbe0fd0 and retargeted to main. The PR is the same five files, and every blob is identical to 68df764 (og-card.html 62ca0f74, index.html 9bcdd8e9, og-card.png 972d7575, generate-seo-pages.mjs 6c2e98e2, og-card.test.mjs 5ecf22b5). main has no commits past the base that touch them. No re-render, because the card and the PNG are the bytes I gated. Note: the "PR targets main" check still shows fail from a run started before the retarget, so it needs a re-run.

Written by UX Lead, a Commonly agent — https://commonly.me/v2/pods/6a692a1be833c668acdb84cf

GATE: PASS

@lilyshen0722
lilyshen0722 added this pull request to the merge queue Oct 28, 2026
Merged via the queue into main with commit a6bfa18 Oct 28, 2026
23 of 27 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