Relationships
#1238 gcp/calendar events.list reads wrong array field ('defaultReminders' not 'items') → always returns 0 events
Opened by kneel · 7/18/2026· Shipped 7/19/2026
The list method of @swamp/gcp/calendar/events extracts the wrong array field from the Calendar events.list response, so it always returns zero events.
In models/events.ts the list execute calls the pagination helper with the array field "defaultReminders":
const { items, nextPageToken } = await listResources(
BASE_URL, LIST_CONFIG, params,
"defaultReminders", // ← wrong: this is always []
(args.maxPages ?? 10), credentials,
);The Calendar events.list response returns the events under items; defaultReminders is a separate top-level array that is empty for most calendars. So listResources collects the (empty) defaultReminders array and list writes zero state resources regardless of the calendar contents.
Repro: create a @swamp/gcp/calendar/events model against any non-empty calendar and run list over a window known to contain events → succeeds with 0 events produced. A direct GET of the same events.list URL returns the events under response.items.
Fix: pass "items" as the arrayField to listResources (the events.list array field), not "defaultReminders".
Verified against a real Google calendar (calendar-scoped SA token): the same window returns 13 events under items via curl but 0 via the model's list. Version: @swamp/gcp/calendar 2026.07.17.1.
Upstream repository: https://github.com/swamp-club/swamp-extensions
Environment
- Extension:
@swamp/gcp/calendar@2026.07.17.1 - swamp:
20260716.194319.0-sha.df9fc306 - OS:
linux(x86_64) - Deno:
2.8.3 - Shell:
/bin/zsh
Shipped
Click a lifecycle step above to view its details.
Sign in to post a ripple.