Use unique ActivityPub update ids #36

Merged
erik merged 1 commit from task-2494df77-unique-ap-update-ids into main 2026-06-28 06:25:46 -05:00
Owner

Summary

  • include the post updated timestamp in ActivityPub Update activity IDs
  • avoid Mastodon deduplicating repeated updates with the old constant #update ID
  • update tests to assert timestamped update IDs

Verification

  • npm run typecheck
  • npm test -- --run src/api/tests/posts.test.ts
  • npm test
  • npm run build

Task: task-2494df77

After release/deploy, redeliver slug-cli-init and verify Mastodon applies the URL-only ActivityPub content update.

## Summary - include the post updated timestamp in ActivityPub Update activity IDs - avoid Mastodon deduplicating repeated updates with the old constant `#update` ID - update tests to assert timestamped update IDs ## Verification - npm run typecheck - npm test -- --run src/api/__tests__/posts.test.ts - npm test - npm run build Task: task-2494df77 After release/deploy, redeliver `slug-cli-init` and verify Mastodon applies the URL-only ActivityPub content update.
Author
Owner

Review summary

Approved. The PR fixes repeated ActivityPub Update delivery by making update activity IDs unique per post update timestamp instead of reusing the constant #update ID.

Acceptance criteria coverage

  • Avoids Mastodon deduplicating later updates that use the same Activity ID.
  • Keeps Update IDs deterministic for a specific post revision via post.updatedAt.
  • Preserves existing ActivityPub Update payload behavior.
  • Updates API route test expectations for timestamped update IDs.

Verification

  • npm run typecheck
  • npm test -- --run src/api/__tests__/posts.test.ts
  • npm test
  • npm run build

Follow-up gate

After merge/release/deploy, redeliver slug-cli-init and verify Mastodon applies the URL-only article content update instead of keeping the older title/excerpt body.

Blocking issues

None.

Verdict

Approved.

## Review summary Approved. The PR fixes repeated ActivityPub Update delivery by making update activity IDs unique per post update timestamp instead of reusing the constant `#update` ID. ## Acceptance criteria coverage - [x] Avoids Mastodon deduplicating later updates that use the same Activity ID. - [x] Keeps Update IDs deterministic for a specific post revision via `post.updatedAt`. - [x] Preserves existing ActivityPub Update payload behavior. - [x] Updates API route test expectations for timestamped update IDs. ## Verification - `npm run typecheck` - `npm test -- --run src/api/__tests__/posts.test.ts` - `npm test` - `npm run build` ## Follow-up gate After merge/release/deploy, redeliver `slug-cli-init` and verify Mastodon applies the URL-only article content update instead of keeping the older title/excerpt body. ## Blocking issues None. ## Verdict Approved.
erik merged commit d18c142a1e into main 2026-06-28 06:25:46 -05:00
erik deleted branch task-2494df77-unique-ap-update-ids 2026-06-28 06:25:46 -05:00
erik referenced this pull request from a commit 2026-06-28 06:25:47 -05:00
Sign in to join this conversation.
No description provided.