| 214 | |
| 215 | try { |
| 216 | const parseOptionalNumber = (value: unknown): number | undefined => { |
| 217 | if (typeof value === 'number' && Number.isFinite(value)) return value |
| 218 | if (typeof value === 'string' && value.trim() !== '') { |
| 219 | const parsed = Number.parseInt(value, 10) |
| 220 | return Number.isFinite(parsed) ? parsed : undefined |
| 221 | } |
| 222 | return undefined |
| 223 | } |
| 224 | const offset = parseOptionalNumber(params.offset) |
| 225 | const limit = parseOptionalNumber(params.limit) |
| 226 | const applyWindow = <T extends { content: string; totalLines: number }>(result: T): T => { |