swsd_change_calendar
Display a UTC change and release calendar with shared-CI/group scheduling conflicts, filtering scanned SWSD records by date, state, assignee, group, and name.
Instructions
Show a UTC change/release calendar widget and shared-CI/group scheduling conflicts. Fetches up to max_pages per kind (default 3, maximum 10); ONLY page/per_page are sent to SWSD. All date, state, assignee, group and name-search filters are client-side, over scanned rows only. Defaults to today at UTC midnight through 30 days later. Windows use overlap, with an exclusive end; missing, invalid or non-positive planned ends use start + 1 hour. Rows without a valid planned start are excluded and counted as unscheduled. Conflicts cover only returned items, not the whole tenant. At most 200 conflict details are returned; conflict_count counts all pairs and conflicts_truncated flags omitted details. scan reports pages_fetched per kind, rows_scanned, unscheduled and truncated; when truncated is true, unscanned records may contain more matches or conflicts. No server-side search or date ordering is assumed.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| to | No | Exclusive window end: ISO date (UTC midnight) or datetime with timezone. Defaults to 30 days after from. | |
| from | No | Inclusive window start: ISO date (UTC midnight) or datetime with timezone. Defaults to today at UTC midnight. | |
| kinds | No | Record kinds to scan; duplicates are ignored. | |
| query | No | Client-side case-insensitive substring search on name only. | |
| states | No | Client-side state inclusion (case-insensitive). | |
| per_page | No | ||
| max_pages | No | Maximum pages fetched per kind; the calendar may be incomplete. | |
| state_is_not | No | Client-side state exclusion (case-insensitive). | |
| assignee_email | No | Client-side assignee email equality (case-insensitive). | |
| group_assignee_id | No | Client-side group ID equality. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| days | Yes | ||
| scan | Yes | ||
| items | Yes | ||
| window | Yes | ||
| conflicts | Yes | At most 200 conflict details between returned items. | |
| conflict_count | Yes | Total conflicting pairs between returned items, including omitted details. | |
| applied_filters | Yes | ||
| conflicts_truncated | Yes | True when some conflict details are omitted; aggregate and per-item counts remain complete for returned items. |