Skip to content

Commit 3d6ad78

Browse files
committed
fix(google_maps): guard against NaN days in Pollen forecast
Address Cursor Bugbot: a non-numeric `days` input parsed to NaN and was forwarded as `days=NaN` (the tool's `?? 1` only catches undefined, not NaN), breaking the forecast call. The block now coerces invalid input to undefined, and the tool defaults to 1 unless `days` is a finite number.
1 parent 53fe0d3 commit 3d6ad78

2 files changed

Lines changed: 4 additions & 2 deletions

File tree

apps/sim/blocks/blocks/google_maps.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -539,7 +539,8 @@ export const GoogleMapsBlock: BlockConfig = {
539539

540540
let days: number | undefined
541541
if (params.days) {
542-
days = Number.parseInt(params.days, 10)
542+
const parsedDays = Number.parseInt(params.days, 10)
543+
days = Number.isNaN(parsedDays) ? undefined : parsedDays
543544
}
544545

545546
let plantsDescription: boolean | undefined

apps/sim/tools/google_maps/pollen.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -90,7 +90,8 @@ export const googleMapsPollenTool: ToolConfig<GoogleMapsPollenParams, GoogleMaps
9090
const url = new URL('https://pollen.googleapis.com/v1/forecast:lookup')
9191
url.searchParams.set('location.latitude', params.lat.toString())
9292
url.searchParams.set('location.longitude', params.lng.toString())
93-
url.searchParams.set('days', (params.days ?? 1).toString())
93+
const days = typeof params.days === 'number' && Number.isFinite(params.days) ? params.days : 1
94+
url.searchParams.set('days', days.toString())
9495
if (params.languageCode) {
9596
url.searchParams.set('languageCode', params.languageCode.trim())
9697
}

0 commit comments

Comments
 (0)