Deduplicate Mastodon article card content #35

Merged
erik merged 1 commit from task-2494df77-mastodon-card-dedup into main 2026-06-28 01:27:21 -05:00
Owner

Summary

  • make ActivityPub article content URL-only so Mastodon does not duplicate the card title/excerpt in the status body
  • keep language-tagged contentMap to avoid the Translate control
  • keep OpenGraph metadata responsible for the clickable article card title/excerpt/image

Verification

  • npm run typecheck
  • npm test -- --run src/federation/tests/routes.test.ts
  • npm test
  • npm run build

Task: task-2494df77

After release/deploy, redeliver slug-cli-init and verify Chromium shows the URL plus one article card, not duplicated title/excerpt.

## Summary - make ActivityPub article content URL-only so Mastodon does not duplicate the card title/excerpt in the status body - keep language-tagged `contentMap` to avoid the Translate control - keep OpenGraph metadata responsible for the clickable article card title/excerpt/image ## Verification - npm run typecheck - npm test -- --run src/federation/__tests__/routes.test.ts - npm test - npm run build Task: task-2494df77 After release/deploy, redeliver `slug-cli-init` and verify Chromium shows the URL plus one article card, not duplicated title/excerpt.
Author
Owner

Review summary

Approved. The PR makes article ActivityPub content URL-only so Mastodon can render one clean link card from OpenGraph metadata instead of showing title/excerpt in both the status body and the card.

Acceptance criteria coverage

  • Removes duplicated title/excerpt from ActivityPub article status body.
  • Keeps contentMap language metadata so the Translate control remains suppressed.
  • Keeps the article URL in content so Mastodon can still generate a preview card.
  • Leaves OpenGraph metadata responsible for card title, description, and image.
  • Updates outbox tests for URL-only article content/contentMap.

Verification

  • npm run typecheck
  • npm test -- --run src/federation/__tests__/routes.test.ts
  • npm test
  • npm run build

Follow-up gate

After merge/release/deploy, redeliver slug-cli-init and verify in Chromium that Mastodon shows one clickable article card with image and does not duplicate title/excerpt in the status body.

Blocking issues

None.

Verdict

Approved.

## Review summary Approved. The PR makes article ActivityPub content URL-only so Mastodon can render one clean link card from OpenGraph metadata instead of showing title/excerpt in both the status body and the card. ## Acceptance criteria coverage - [x] Removes duplicated title/excerpt from ActivityPub article status body. - [x] Keeps `contentMap` language metadata so the Translate control remains suppressed. - [x] Keeps the article URL in content so Mastodon can still generate a preview card. - [x] Leaves OpenGraph metadata responsible for card title, description, and image. - [x] Updates outbox tests for URL-only article content/contentMap. ## Verification - `npm run typecheck` - `npm test -- --run src/federation/__tests__/routes.test.ts` - `npm test` - `npm run build` ## Follow-up gate After merge/release/deploy, redeliver `slug-cli-init` and verify in Chromium that Mastodon shows one clickable article card with image and does not duplicate title/excerpt in the status body. ## Blocking issues None. ## Verdict Approved.
erik merged commit 7c1e334a0b into main 2026-06-28 01:27:21 -05:00
erik deleted branch task-2494df77-mastodon-card-dedup 2026-06-28 01:27:21 -05:00
Sign in to join this conversation.
No description provided.