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
️✅ There are no secrets present in this pull request anymore.If these secrets were true positive and are still valid, we highly recommend you to revoke them. 🦉 GitGuardian detects secrets in your source code to help developers and security teams secure the modern development process. You are seeing this because you or someone else with access to this repository has authorized GitGuardian to scan your pull request. |
|
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 |
@waleedlatif1 I have started the AI code review. It will take a few minutes to complete. |
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)