From 5ced911c0804dcdb73e911ffa504592564eeac8a Mon Sep 17 00:00:00 2001 From: Jordan Montgomery Date: Thu, 2 Apr 2026 12:03:14 -0400 Subject: [PATCH] Add retry considerations to PR template and design/qa considerations (#42856) **Related issue:** Action items for #40725 postmortem Added in both places because we should consider these things both when working on bugs and drafting new features. #40725 happened because what was thought to be a temporary state had no limits on retries --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- .github/pull_request_template.md | 1 + docs/Contributing/guides/ui/design-qa-considerations.md | 3 +++ 2 files changed, 4 insertions(+) diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md index c483ebf5d8..2ca95542ec 100644 --- a/.github/pull_request_template.md +++ b/.github/pull_request_template.md @@ -9,6 +9,7 @@ If some of the following don't apply, delete the relevant line. See [Changes files](https://github.com/fleetdm/fleet/blob/main/docs/Contributing/guides/committing-changes.md#changes-files) for more information. - [ ] Input data is properly validated, `SELECT *` is avoided, SQL injection is prevented (using placeholders for values in statements), JS inline code is prevented especially for url redirects, and untrusted data interpolated into shell scripts/commands is validated against shell metacharacters. +- [ ] Timeouts are implemented and retries are limited to avoid infinite loops - [ ] If paths of existing endpoints are modified without backwards compatibility, checked the frontend/CLI for any necessary changes ## Testing diff --git a/docs/Contributing/guides/ui/design-qa-considerations.md b/docs/Contributing/guides/ui/design-qa-considerations.md index f4c2dc611f..9dfd708b56 100644 --- a/docs/Contributing/guides/ui/design-qa-considerations.md +++ b/docs/Contributing/guides/ui/design-qa-considerations.md @@ -162,5 +162,8 @@ This is meant to be a helpful checklist of 'events' or 'transactions' to help ca - Global user (Admin, Maintainer, Observer, Observer+, API only) - Fleet-level user (Admin, Maintainer, Observer, Observer+, API only) +## Retries +- Operations with retries have defined limits (time, number of attempts, etc.) to avoid infinite loops and unbounded retrying +