---
id: ADR-PFM-INT-004
title: One execution outlives its attempts and owns the request identity
product_area: platform
module: integrations
revision: 1
status: proposed
design_intent: confirmed
source_sha:
  services-platform: ad3f6a6582843008ed0f5a17b131878d15829af1
decision: >-
  Keep one execution identity across attempts and send it as the provider idempotency key. A separate
  unpartitioned claim makes the caller key unique within its workspace and capability.
constrains:
  - DOM-PFM-INT-003
  - STATE-PFM-INT-007
  - WF-PFM-INT-011
  - WF-PFM-INT-012
  - SVC-PFM-INT-integrations
alternatives:
  - option: Give each retry a new execution identity.
    why_not: A provider would see separate requests and could repeat the business effect.
  - option: Enforce caller-key uniqueness only on monthly execution partitions.
    why_not: A key could be accepted again in another partition.
consequences:
  - >-
    An unchanged repeat resolves to the admitted execution; a changed request with the same key is refused.
    Provider deduplication still depends on adapter compliance.
  - 'Stored fingerprints do not reconstruct the request, which leaves console retry disabled.'
  - Cancellation before work and specified admission refusals release the claim for a later request.
origin: 'docs/milestones/INTG-M2-calls-through-the-gateway.md#Decisions M2-D4, M2-D5 (Andrew)'
supersedes: []
---

# One execution outlives its attempts and owns the request identity

## Context

Retry history and request identity need different lifetimes from monthly storage partitions.

## Decision

Keep one execution identity across attempts and send it as the provider idempotency key. A separate unpartitioned claim makes the caller key unique within its workspace and capability.

## Alternatives Considered

Give each retry a new execution identity. A provider would see separate requests and could repeat the business effect.

Enforce caller-key uniqueness only on monthly execution partitions. A key could be accepted again in another partition.

## Consequences

An unchanged repeat resolves to the admitted execution; a changed request with the same key is refused. Provider deduplication still depends on adapter compliance.

Stored fingerprints do not reconstruct the request, which leaves console retry disabled.

Cancellation before work and specified admission refusals release the claim for a later request.
