---
id: ADR-PFM-QRY-007
title: Retry transient failures and retain external effects
product_area: platform
module: queries
revision: 1
status: proposed
design_intent: confirmed
source_sha:
  services-platform: ad3f6a6582843008ed0f5a17b131878d15829af1
  react-console: baf6dae382d6f41dce976c7f848667ccc37e076f
decision: >-
  Known request refusals settle queued file and delivery work promptly, infrastructure errors use
  the configured retries, and completed external deliveries have no recall compensation.
constrains:
  - WF-PFM-QRY-006
  - WF-PFM-QRY-007
  - WF-PFM-QRY-008
  - STATE-PFM-QRY-006
  - STATE-PFM-QRY-008
  - SVC-PFM-QRY-queries
origin: docs/migrations/query-scheduling-exports/README.md D12
alternatives:
  - option: Retry all failures alike
    why_not: Unchangeable refusals would delay useful failure feedback.
  - option: Recall every delivered link or message on failure
    why_not: An opened file or delivered message cannot be recovered from its recipient.
consequences:
  - Failure feedback distinguishes actionable refusals from exhausted infrastructure retries.
  - Five consecutive failed deliveries pause the schedule.
  - Multipart upload cleanup and download refusal do not undo messages already delivered.
supersedes: []
evidence:
  - >-
    services-platform at ad3f6a6: modules/queries/services/exports/run-query-export.ts;
    services/schedules/scheduled-delivery.ts
---

# Retry transient failures and retain external effects

## Context

An access refusal cannot be repaired by repeatedly executing the same request. Infrastructure interruptions can be temporary.

## Decision

Known request refusals settle queued file and delivery work promptly, infrastructure errors use the configured retries, and completed external deliveries have no recall compensation.

## Alternatives Considered

Retry all failures alike: Unchangeable refusals would delay useful failure feedback.

Recall every delivered link or message on failure: An opened file or delivered message cannot be recovered from its recipient.

## Consequences

Failure feedback distinguishes actionable refusals from exhausted infrastructure retries. Five consecutive failed deliveries pause the schedule. Multipart upload cleanup and download refusal do not undo messages already delivered.
