Skip to content

feat(social-controllers): add moderation block methods to SocialService - #10656

Merged
joaosantos15 merged 3 commits into
mainfrom
social-ai-cursor-social-moderation-blocks
Oct 1, 2026
Merged

joaosantos15 merged 3 commits into
mainfrom
social-ai-cursor-social-moderation-blocks

Conversation

@joaosantos15

Copy link
Copy Markdown
Contributor

Explanation

The social API already exposes moderation block endpoints, but @metamask/social-controllers did not wrap them, so clients had no messenger actions for blocking a trader, comment, or reply, or for listing those blocks.

This adds three SocialService methods, each mapping to one endpoint:

  • block calls PUT /api/v1/moderation/block with exactly one of profileId, commentId, or replyId, plus an optional reason. The endpoint returns 204.
  • fetchBlockedProfiles calls GET /api/v1/moderation/blocks/profiles.
  • fetchBlockedContent calls GET /api/v1/moderation/blocks/content.

Both list methods take an optional cursor and return the page plus the next cursor (null on the last page). Responses are validated with superstruct, matching the other social-api methods. These stay on SocialService only; SocialController still stores leaderboard and follow state and does not persist blocks.

References

  • Social API: PUT /api/v1/moderation/block, GET /api/v1/moderation/blocks/profiles, GET /api/v1/moderation/blocks/content

Checklist

  • I've updated the test suite for new or updated code as appropriate
  • I've updated documentation (JSDoc, Markdown, etc.) for new or updated code as appropriate
  • I've communicated my changes to consumers by updating changelogs for packages I've changed
  • I've introduced breaking changes in this PR and have prepared draft pull requests for clients and consumer packages to resolve them
Open in Web Open in Cursor 

cursoragent and others added 2 commits October 1, 2026 12:58
Wrap the social-api block, blocked-profiles, and blocked-content
endpoints so clients can record and list moderation blocks.

Co-authored-by: João Santos <joaosantos15@users.noreply.github.com>
Co-authored-by: João Santos <joaosantos15@users.noreply.github.com>
@joaosantos15
joaosantos15 marked this pull request as ready for review October 1, 2026 13:04
@joaosantos15
joaosantos15 requested review from a team as code owners October 1, 2026 13:04
@joaosantos15

Copy link
Copy Markdown
Contributor Author

@metamaskbot publish-preview

@github-actions

github-actions Bot commented Oct 1, 2026

Copy link
Copy Markdown
Contributor

Preview builds have been published. Learn how to use preview builds in other projects.

Expand for full list of packages and versions.
@metamask-previews/account-tree-controller@11.0.0-preview-c2be02bd4
@metamask-previews/accounts-controller@40.0.0-preview-c2be02bd4
@metamask-previews/address-book-controller@8.0.0-preview-c2be02bd4
@metamask-previews/advanced-chart-core@1.0.0-preview-c2be02bd4
@metamask-previews/ai-controllers@2.0.0-preview-c2be02bd4
@metamask-previews/analytics-controller@3.2.0-preview-c2be02bd4
@metamask-previews/analytics-data-regulation-controller@0.0.0-preview-c2be02bd4
@metamask-previews/announcement-controller@9.0.0-preview-c2be02bd4
@metamask-previews/app-metadata-controller@3.0.0-preview-c2be02bd4
@metamask-previews/approval-controller@10.0.0-preview-c2be02bd4
@metamask-previews/assets-controller@18.0.0-preview-c2be02bd4
@metamask-previews/assets-controllers@112.1.1-preview-c2be02bd4
@metamask-previews/authenticated-user-storage@4.1.0-preview-c2be02bd4
@metamask-previews/base-controller@10.0.0-preview-c2be02bd4
@metamask-previews/base-data-service@2.1.0-preview-c2be02bd4
@metamask-previews/bitcoin-regtest-up@2.0.0-preview-c2be02bd4
@metamask-previews/bridge-controller@82.0.1-preview-c2be02bd4
@metamask-previews/bridge-status-controller@76.3.4-preview-c2be02bd4
@metamask-previews/build-utils@4.0.0-preview-c2be02bd4
@metamask-previews/chain-agnostic-permission@2.0.0-preview-c2be02bd4
@metamask-previews/chomp-api-service@6.0.1-preview-c2be02bd4
@metamask-previews/claims-controller@1.0.2-preview-c2be02bd4
@metamask-previews/client-controller@2.0.0-preview-c2be02bd4
@metamask-previews/client-utils@3.0.4-preview-c2be02bd4
@metamask-previews/compliance-controller@3.0.0-preview-c2be02bd4
@metamask-previews/composable-controller@13.0.0-preview-c2be02bd4
@metamask-previews/config-registry-controller@4.0.0-preview-c2be02bd4
@metamask-previews/connectivity-controller@1.0.0-preview-c2be02bd4
@metamask-previews/controller-utils@13.0.0-preview-c2be02bd4
@metamask-previews/core-backend@12.0.0-preview-c2be02bd4
@metamask-previews/cryptography@1.1.0-preview-c2be02bd4
@metamask-previews/delegation-controller@4.0.0-preview-c2be02bd4
@metamask-previews/earn-controller@13.0.2-preview-c2be02bd4
@metamask-previews/eip-5792-middleware@4.0.1-preview-c2be02bd4
@metamask-previews/eip-7702-internal-rpc-middleware@1.0.0-preview-c2be02bd4
@metamask-previews/eip1193-permission-middleware@3.0.0-preview-c2be02bd4
@metamask-previews/eth-block-tracker@16.0.0-preview-c2be02bd4
@metamask-previews/eth-json-rpc-middleware@25.0.0-preview-c2be02bd4
@metamask-previews/eth-json-rpc-provider@7.0.0-preview-c2be02bd4
@metamask-previews/foundryup@2.0.0-preview-c2be02bd4
@metamask-previews/gas-fee-controller@27.0.0-preview-c2be02bd4
@metamask-previews/gator-permissions-controller@6.0.1-preview-c2be02bd4
@metamask-previews/geolocation-controller@2.0.0-preview-c2be02bd4
@metamask-previews/java-tron-up@2.0.0-preview-c2be02bd4
@metamask-previews/json-rpc-engine@11.0.0-preview-c2be02bd4
@metamask-previews/json-rpc-middleware-stream@9.0.0-preview-c2be02bd4
@metamask-previews/keyring-controller@28.1.0-preview-c2be02bd4
@metamask-previews/kyc-controller@0.6.0-preview-c2be02bd4
@metamask-previews/local-node-utils@2.0.0-preview-c2be02bd4
@metamask-previews/logging-controller@10.0.0-preview-c2be02bd4
@metamask-previews/message-manager@15.0.0-preview-c2be02bd4
@metamask-previews/messenger@3.0.0-preview-c2be02bd4
@metamask-previews/messenger-cli@1.0.0-preview-c2be02bd4
@metamask-previews/money-account-api-data-service@2.1.0-preview-c2be02bd4
@metamask-previews/money-account-balance-service@3.1.2-preview-c2be02bd4
@metamask-previews/money-account-controller@2.0.0-preview-c2be02bd4
@metamask-previews/money-account-upgrade-controller@5.1.0-preview-c2be02bd4
@metamask-previews/money-account-utils@2.1.0-preview-c2be02bd4
@metamask-previews/multichain-account-service@14.1.0-preview-c2be02bd4
@metamask-previews/multichain-api-middleware@5.0.0-preview-c2be02bd4
@metamask-previews/multichain-network-controller@4.0.0-preview-c2be02bd4
@metamask-previews/multichain-transactions-controller@8.0.0-preview-c2be02bd4
@metamask-previews/name-controller@10.0.0-preview-c2be02bd4
@metamask-previews/network-connection-banner-controller@1.0.0-preview-c2be02bd4
@metamask-previews/network-controller@37.0.0-preview-c2be02bd4
@metamask-previews/network-enablement-controller@7.0.1-preview-c2be02bd4
@metamask-previews/notification-services-controller@29.0.2-preview-c2be02bd4
@metamask-previews/passkey-controller@4.1.0-preview-c2be02bd4
@metamask-previews/permission-controller@14.0.0-preview-c2be02bd4
@metamask-previews/permission-log-controller@6.0.0-preview-c2be02bd4
@metamask-previews/perps-controller@19.0.0-preview-c2be02bd4
@metamask-previews/phishing-controller@18.2.0-preview-c2be02bd4
@metamask-previews/platform-api-docs@0.2.1-preview-c2be02bd4
@metamask-previews/polling-controller@17.0.0-preview-c2be02bd4
@metamask-previews/preferences-controller@24.0.0-preview-c2be02bd4
@metamask-previews/profile-controller@1.0.0-preview-c2be02bd4
@metamask-previews/profile-metrics-controller@5.1.2-preview-c2be02bd4
@metamask-previews/profile-sync-controller@33.0.0-preview-c2be02bd4
@metamask-previews/ramps-controller@26.1.0-preview-c2be02bd4
@metamask-previews/rate-limit-controller@8.0.0-preview-c2be02bd4
@metamask-previews/react-data-query@2.0.0-preview-c2be02bd4
@metamask-previews/remote-feature-flag-controller@7.0.0-preview-c2be02bd4
@metamask-previews/sample-controllers@6.0.0-preview-c2be02bd4
@metamask-previews/seedless-onboarding-controller@11.0.1-preview-c2be02bd4
@metamask-previews/selected-network-controller@27.0.0-preview-c2be02bd4
@metamask-previews/sentinel-api-service@2.0.0-preview-c2be02bd4
@metamask-previews/shield-controller@7.0.3-preview-c2be02bd4
@metamask-previews/signature-controller@40.0.0-preview-c2be02bd4
@metamask-previews/smart-transactions-controller@27.0.3-preview-c2be02bd4
@metamask-previews/snap-account-service@4.0.0-preview-c2be02bd4
@metamask-previews/social-controllers@3.5.0-preview-c2be02bd4
@metamask-previews/solana-test-validator-up@2.0.0-preview-c2be02bd4
@metamask-previews/stellar-quickstart-up@0.0.0-preview-c2be02bd4
@metamask-previews/storage-service@2.0.0-preview-c2be02bd4
@metamask-previews/subscription-controller@12.0.0-preview-c2be02bd4
@metamask-previews/transaction-controller@72.1.0-preview-c2be02bd4
@metamask-previews/transaction-pay-controller@30.0.1-preview-c2be02bd4
@metamask-previews/user-operation-controller@42.0.1-preview-c2be02bd4
@metamask-previews/utils@12.0.0-preview-c2be02bd4
@metamask-previews/wallet@16.0.0-preview-c2be02bd4
@metamask-previews/wallet-cli@0.0.0-preview-c2be02bd4

@joaosantos15
joaosantos15 added this pull request to the merge queue Oct 1, 2026
Merged via the queue into main with commit 9dbbef6 Oct 1, 2026
45 checks passed
@joaosantos15
joaosantos15 deleted the social-ai-cursor-social-moderation-blocks branch October 1, 2026 13:43
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.

3 participants