Commit f2fb031
fix(core): send an error response when a request handler rejects with a nullish reason
Protocol's inbound-request error path read error['code'] directly. When a
handler rejects with null/undefined (a bare reject() or throw null), that
indexing throws a TypeError inside the rejection callback, which
propagates to the outer .catch — so no JSON-RPC error response is ever
sent and the requester hangs until its own timeout.
Coalesce the reason to a safe object before reading the code/message/data,
so a -32603 Internal error response is always returned.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01N6RtoHuxrDqTUo9Mw9h4Cv1 parent f130e1a commit f2fb031
3 files changed
Lines changed: 37 additions & 3 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1138 | 1138 | | |
1139 | 1139 | | |
1140 | 1140 | | |
1141 | | - | |
| 1141 | + | |
| 1142 | + | |
| 1143 | + | |
| 1144 | + | |
| 1145 | + | |
| 1146 | + | |
1142 | 1147 | | |
1143 | 1148 | | |
1144 | 1149 | | |
1145 | 1150 | | |
1146 | 1151 | | |
1147 | | - | |
1148 | | - | |
| 1152 | + | |
| 1153 | + | |
1149 | 1154 | | |
1150 | 1155 | | |
1151 | 1156 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
135 | 135 | | |
136 | 136 | | |
137 | 137 | | |
| 138 | + | |
| 139 | + | |
| 140 | + | |
| 141 | + | |
| 142 | + | |
| 143 | + | |
| 144 | + | |
| 145 | + | |
| 146 | + | |
| 147 | + | |
| 148 | + | |
| 149 | + | |
| 150 | + | |
| 151 | + | |
| 152 | + | |
| 153 | + | |
| 154 | + | |
| 155 | + | |
| 156 | + | |
| 157 | + | |
| 158 | + | |
| 159 | + | |
| 160 | + | |
| 161 | + | |
138 | 162 | | |
139 | 163 | | |
140 | 164 | | |
| |||
0 commit comments