Commit 60775a5
fix(webhooks): unwrap SNS notification envelope in decode_sns_payload
decode_sns_payload now JSON-parses the SNS HTTP notification envelope
({"Type":"Notification","Message":"..."}) and extracts the inner
Message field before running the SQS pipeline. Falls through to the
pre-extracted Message string when the input is not a JSON envelope so
existing call sites keep working.
Test adds a realistic SNS HTTP notification body fixture and exercises
both the new envelope path and the existing pre-extracted Message path.
Docs updated to show the typical "pass the raw HTTP body" call site.
Co-authored-by: Cursor <cursoragent@cursor.com>1 parent 03849df commit 60775a5
3 files changed
Lines changed: 94 additions & 17 deletions
File tree
- docs/webhooks/webhooks_overview
- stream_chat
- tests
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
141 | 141 | | |
142 | 142 | | |
143 | 143 | | |
144 | | - | |
| 144 | + | |
| 145 | + | |
| 146 | + | |
145 | 147 | | |
146 | 148 | | |
147 | 149 | | |
148 | 150 | | |
149 | 151 | | |
150 | 152 | | |
| 153 | + | |
| 154 | + | |
| 155 | + | |
| 156 | + | |
| 157 | + | |
| 158 | + | |
151 | 159 | | |
| 160 | + | |
| 161 | + | |
152 | 162 | | |
153 | | - | |
154 | | - | |
| 163 | + | |
| 164 | + | |
155 | 165 | | |
156 | 166 | | |
157 | 167 | | |
| |||
164 | 174 | | |
165 | 175 | | |
166 | 176 | | |
167 | | - | |
| 177 | + | |
168 | 178 | | |
169 | 179 | | |
170 | 180 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
115 | 115 | | |
116 | 116 | | |
117 | 117 | | |
| 118 | + | |
| 119 | + | |
| 120 | + | |
| 121 | + | |
| 122 | + | |
| 123 | + | |
| 124 | + | |
| 125 | + | |
| 126 | + | |
| 127 | + | |
| 128 | + | |
| 129 | + | |
| 130 | + | |
| 131 | + | |
| 132 | + | |
| 133 | + | |
118 | 134 | | |
119 | | - | |
| 135 | + | |
120 | 136 | | |
121 | 137 | | |
122 | 138 | | |
123 | | - | |
| 139 | + | |
124 | 140 | | |
125 | 141 | | |
| 142 | + | |
| 143 | + | |
| 144 | + | |
| 145 | + | |
| 146 | + | |
| 147 | + | |
| 148 | + | |
| 149 | + | |
| 150 | + | |
| 151 | + | |
126 | 152 | | |
127 | 153 | | |
128 | 154 | | |
| |||
181 | 207 | | |
182 | 208 | | |
183 | 209 | | |
184 | | - | |
| 210 | + | |
| 211 | + | |
| 212 | + | |
185 | 213 | | |
186 | 214 | | |
187 | 215 | | |
| |||
239 | 267 | | |
240 | 268 | | |
241 | 269 | | |
242 | | - | |
| 270 | + | |
243 | 271 | | |
244 | 272 | | |
245 | 273 | | |
246 | 274 | | |
247 | | - | |
| 275 | + | |
248 | 276 | | |
249 | 277 | | |
250 | 278 | | |
251 | 279 | | |
252 | 280 | | |
253 | 281 | | |
| 282 | + | |
| 283 | + | |
| 284 | + | |
| 285 | + | |
| 286 | + | |
| 287 | + | |
| 288 | + | |
| 289 | + | |
| 290 | + | |
| 291 | + | |
| 292 | + | |
| 293 | + | |
| 294 | + | |
254 | 295 | | |
255 | 296 | | |
256 | 297 | | |
257 | 298 | | |
258 | | - | |
| 299 | + | |
| 300 | + | |
| 301 | + | |
259 | 302 | | |
260 | 303 | | |
261 | 304 | | |
| |||
286 | 329 | | |
287 | 330 | | |
288 | 331 | | |
289 | | - | |
| 332 | + | |
| 333 | + | |
| 334 | + | |
290 | 335 | | |
291 | 336 | | |
292 | 337 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
19 | 19 | | |
20 | 20 | | |
21 | 21 | | |
22 | | - | |
| 22 | + | |
23 | 23 | | |
24 | 24 | | |
25 | 25 | | |
| |||
70 | 70 | | |
71 | 71 | | |
72 | 72 | | |
73 | | - | |
74 | | - | |
75 | | - | |
76 | | - | |
77 | | - | |
| 73 | + | |
| 74 | + | |
| 75 | + | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
| 81 | + | |
| 82 | + | |
| 83 | + | |
| 84 | + | |
| 85 | + | |
| 86 | + | |
| 87 | + | |
| 88 | + | |
| 89 | + | |
| 90 | + | |
| 91 | + | |
| 92 | + | |
| 93 | + | |
| 94 | + | |
| 95 | + | |
| 96 | + | |
| 97 | + | |
| 98 | + | |
| 99 | + | |
78 | 100 | | |
79 | 101 | | |
80 | 102 | | |
| |||
0 commit comments