Commit cc70685
kai-agent-free
fix: reject request IDs exceeding Number.MAX_SAFE_INTEGER
Adds a validation refinement to RequestIdSchema to reject numeric
request IDs outside the safe integer range. Previously, a single
request with an ID > MAX_SAFE_INTEGER (e.g. 9007199254740992) would
cause the server to hang indefinitely with no error response, as
JSON.parse silently loses precision on large integers.
The fix validates that numeric IDs fall within Number.MIN_SAFE_INTEGER
to Number.MAX_SAFE_INTEGER, causing the Zod parse to fail and return
a proper JSON-RPC error response instead of silently hanging.
Fixes #17651 parent e86b183 commit cc70685
2 files changed
Lines changed: 30 additions & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
119 | 119 | | |
120 | 120 | | |
121 | 121 | | |
122 | | - | |
| 122 | + | |
| 123 | + | |
| 124 | + | |
| 125 | + | |
| 126 | + | |
| 127 | + | |
| 128 | + | |
| 129 | + | |
| 130 | + | |
123 | 131 | | |
124 | 132 | | |
125 | 133 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
| 2 | + | |
2 | 3 | | |
3 | 4 | | |
4 | 5 | | |
| |||
984 | 985 | | |
985 | 986 | | |
986 | 987 | | |
| 988 | + | |
| 989 | + | |
| 990 | + | |
| 991 | + | |
| 992 | + | |
| 993 | + | |
| 994 | + | |
| 995 | + | |
| 996 | + | |
| 997 | + | |
| 998 | + | |
| 999 | + | |
| 1000 | + | |
| 1001 | + | |
| 1002 | + | |
| 1003 | + | |
| 1004 | + | |
| 1005 | + | |
| 1006 | + | |
| 1007 | + | |
0 commit comments