Μετάβαση στο περιεχόμενο

IdempotencyRecord

Αυτό το περιεχόμενο δεν είναι ακόμη διαθέσιμο στη γλώσσα σου.

Defined in: packages/pipeline-idempotency/src/interfaces/idempotency-record.interface.ts:23

The durable record stored under an idempotency key. While a handler runs the record is in_progress; once it succeeds the record flips to completed and carries the captured response for replay.

optional claimId?: string

Defined in: packages/pipeline-idempotency/src/interfaces/idempotency-record.interface.ts:37

Unique owner token for the execution that claimed this record. Every claim IdempotencyBehavior makes sets it, and completeIfOwned and deleteIfOwned compare against it. It may be absent from a record written through the unconditional set or claimed outside the behavior; such a record can still be read and replayed, but no owner check matches it.


optional completedAt?: string

Defined in: packages/pipeline-idempotency/src/interfaces/idempotency-record.interface.ts:59

ISO-8601 timestamp the original request completed, when applicable.


createdAt: string

Defined in: packages/pipeline-idempotency/src/interfaces/idempotency-record.interface.ts:57

ISO-8601 timestamp the key was first claimed.


optional fingerprint?: string

Defined in: packages/pipeline-idempotency/src/interfaces/idempotency-record.interface.ts:42

Stable hash of the original request payload. Used to detect a key being reused with a different body (a client bug or replay attack).


key: string

Defined in: packages/pipeline-idempotency/src/interfaces/idempotency-record.interface.ts:25

The idempotency key this record is stored under.


optional replayScope?: string

Defined in: packages/pipeline-idempotency/src/interfaces/idempotency-record.interface.ts:53

Digest of the authorization scope the original execution ran under, when the behavior is configured with a replayScopeFactory.

Replay compares this against the current caller’s scope and refuses on a mismatch, so a response authorized under one set of permissions is never returned to a caller who no longer holds them. It is deliberately not part of the key: a key that changed with permissions would let the same side effect execute again.


requestName: string

Defined in: packages/pipeline-idempotency/src/interfaces/idempotency-record.interface.ts:29

The request type name, e.g. CreateUserCommand.


optional response?: JsonValue

Defined in: packages/pipeline-idempotency/src/interfaces/idempotency-record.interface.ts:55

JSON snapshot of the handler response, captured once completed.


status: IdempotencyStatus

Defined in: packages/pipeline-idempotency/src/interfaces/idempotency-record.interface.ts:27

Whether the original request is still running or has completed.