Render blockquotes in ActivityPub posts #12

Merged
erik merged 1 commit from task-0e6df329-activitypub-blockquotes into main 2026-07-30 11:30:24 -05:00
Owner

Summary

  • recognize Markdown blockquote lines during ActivityPub post serialization
  • emit semantic <blockquote> markup while preserving the existing escaped paragraph and line-break renderer
  • cover single-line, multi-paragraph, mixed-content, escaping, and federated link-object output

Verification

  • npm run build
  • npm run lint
  • npm test (311 tests)
  • focused ActivityPub outbox tests (4 tests)
## Summary - recognize Markdown blockquote lines during ActivityPub post serialization - emit semantic `<blockquote>` markup while preserving the existing escaped paragraph and line-break renderer - cover single-line, multi-paragraph, mixed-content, escaping, and federated link-object output ## Verification - `npm run build` - `npm run lint` - `npm test` (311 tests) - focused ActivityPub outbox tests (4 tests)
Render blockquotes in federated post content
All checks were successful
CI / build-lint-test (push) Successful in 50s
c2c1047e98
Author
Owner

Review summary

The PR adds a narrow blockquote-aware layer around the existing escaped ActivityPub paragraph renderer. It emits semantic blockquote markup while retaining current paragraph splitting, hard line breaks, HTML escaping, and link-post URL output. Tests verify the helper and the final federated object content with generic domains.

Acceptance criteria

  • Met — Single-line quotes serialize as <blockquote><p>…</p></blockquote>.
  • Met — Quoted blank lines preserve multiple paragraphs within one blockquote.
  • Pending production verification — Mastodon rendering requires merge, release, deployment, and a newly published or updated quoted post.
  • Met — Tests use generic data and cover single-line, multi-paragraph, mixed-content, escaping, and federated link output.
  • Met — Existing paragraph, line-break, escaping, and link behavior remains intact.
  • Met — Build, lint, all 311 tests, and Forgejo CI run 38 passed.

Blocking issues

  • None.

Warnings

  • Production Mastodon rendering must be verified after deployment before task closure.

Verdict

Approved for merge.

### Review summary The PR adds a narrow blockquote-aware layer around the existing escaped ActivityPub paragraph renderer. It emits semantic blockquote markup while retaining current paragraph splitting, hard line breaks, HTML escaping, and link-post URL output. Tests verify the helper and the final federated object content with generic domains. ### Acceptance criteria - **Met** — Single-line quotes serialize as `<blockquote><p>…</p></blockquote>`. - **Met** — Quoted blank lines preserve multiple paragraphs within one blockquote. - **Pending production verification** — Mastodon rendering requires merge, release, deployment, and a newly published or updated quoted post. - **Met** — Tests use generic data and cover single-line, multi-paragraph, mixed-content, escaping, and federated link output. - **Met** — Existing paragraph, line-break, escaping, and link behavior remains intact. - **Met** — Build, lint, all 311 tests, and Forgejo CI run 38 passed. ### Blocking issues - None. ### Warnings - Production Mastodon rendering must be verified after deployment before task closure. ### Verdict Approved for merge.
erik merged commit 6260a7e292 into main 2026-07-30 11:30:24 -05:00
erik deleted branch task-0e6df329-activitypub-blockquotes 2026-07-30 11:30:24 -05:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
erik/erikvancraddock.com!12
No description provided.