انتقل إلى المحتوى الرئيسي

Variable: STREAM_RETENTIONS

const STREAM_RETENTIONS: readonly ["limits", "work-queue"]

Defined in: packages/contracts/src/permissions/table.ts:426

How long a stream keeps a message:

  • limits: until the stream's bounds push it out (age, count or size), whether or not anyone has read it. A history: a consumer added later can read from the start;
  • work-queue: until its one consumer acknowledges it, and then it is gone. A queue: the stream holds the backlog and nothing else.

The difference decides what a message cap means. Under limits a cap of N is N messages per retention period, read or not, so with discard: New a full stream refuses legitimate publishes until old messages age out. Under work-queue the same cap is N messages nobody has handled yet, which is what a cap against a flood is for.

JetStream's third policy, interest, is not offered: nothing in the estate needs it.