Repository navigation
improvement(deps): shared Standard Webhooks verifier, MCP SDK 1.32.1, tiptap 3.31.4 with the prosemirror paste XSS fix - #9236
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
There was a problem hiding this comment.
All reported issues were addressed across 30 files
This PR changes authentication, authorization, or input validation. Ultrareviews find 2.4x more serious bugs than standard reviews. Comment @cubic-dev-ai ultrareview to run one.
Turn on auto-fix | Re-trigger cubic
[High impact] The PR appears safe to merge; no actionable new issues were found. SummaryConsolidates seven webhook receivers onto
No actionable new issues were found.
|
a884ba9 to
ca7d723
Compare
|
@greptile |
|
@cubic-dev-ai review this PR |
@waleedlatif1 I have started the AI code review. It will take a few minutes to complete. |
…irect handling in our SSRF guard
…to pick up the paste XSS fix
…d make guard-owned redirects the default
|
@greptile |
ca7d723 to
cea7e36
Compare
|
@cubic-dev-ai review this PR |

Summary
verifyStandardWebhookin@sim/security/standard-webhooks(+verifyStandardWebhookRequest401 adapter inlib/webhooks/providers/utils.ts) replaces six hand-rolled copies (Clerk, Resend, Linq, Granola, incident.io, Loops) and thesvixSDK in the AgentMail receiver; dropssvixinbox_idand checks exactly one secretwhsec_/whsec_Adecoded to zero bytes, so anyone could sign a deliveryv1,signatures count, secrets must be base64, timestamps must be plain decimal seconds; Loops keeps its own<prefix>_secret strippingredirectPolicy: 'follow'and the OAuth guarded fetch now owns redirects by default (per-hop SSRF check, cross-origin header stripping, cross-origin 307/308 body replay still refused) — outcomes match 1.31 for metadata, token, registration, refresh, and revoke legs; only the auth-type probe opts back into the caller'sredirect: 'manual'prosemirror-model/view/state/transform, picking up the prosemirror-view paste XSS fix (GHSA-c8x8-7fp4-3x9w, fixed in 1.42.3)parseMarkdownoverrides usethis.parent(3.31 typedthis)text-input-rulewrapper since tiptap now inserts-then-converts natively (it double-inserted); in collaborative editing the first undo now restores the typed Markdown, a second removes it@tiptap/y-tiptapstays at 3.0.7: 3.0.8's move reconciliation drops a peer's concurrent list edits in our two-peer testsType of Change
Testing
standard-webhooks.test.ts(24, incl. the published Standard Webhooks vector, empty-key forgery, tolerance; each guard reverted → red), provider + AgentMail route tests; helper agreed withsvixWebhook.verifyon 3000/3000 randomized deliveries before removaltransport-redirects.server.test.tsover real loopback servers (SSE redirect, OAuth discovery redirect, token 307 refusal; red withoutredirectPolicy/ with the old'caller'default) + 46 MCP-related files (464 tests)check:audits, lint, full tests, and e2e run in CIChecklist
test-auditauthoring gate)