(value: unknown, toolName: string)
| 277 | }; |
| 278 | |
| 279 | const readOptionalOffset = (value: unknown, toolName: string): number | ExecutionToolError => { |
| 280 | if (value === undefined) { |
| 281 | return 0; |
| 282 | } |
| 283 | |
| 284 | if (typeof value !== "number" || !Number.isFinite(value) || value < 0) { |
| 285 | return new ExecutionToolError({ |
| 286 | message: `${toolName} offset must be a non-negative number when provided`, |
| 287 | }); |
| 288 | } |
| 289 | |
| 290 | return Math.floor(value); |
| 291 | }; |
| 292 | |
| 293 | const makeFullInvoker = ( |
| 294 | executor: Executor, |