@objectstack/service-messaging 9.4.0 → 9.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.cts CHANGED
@@ -26,11 +26,15 @@ interface MessagingServicePluginOptions {
26
26
  mandatoryTopics?: readonly string[];
27
27
  /**
28
28
  * Retention window in days for the notification pipeline (ADR-0030
29
- * hardening). When set (> 0), a periodic sweep prunes events, deliveries,
30
- * inbox materializations and receipts older than this — bounding the
31
- * event-log growth from high-frequency periodic flows. **Opt-in**: unset (or
32
- * ≤ 0) disables retention (default), so no notification data is ever deleted
33
- * without explicit operator policy.
29
+ * hardening). When > 0, a periodic sweep prunes events, deliveries, inbox
30
+ * materializations and receipts older than this — bounding the event-log
31
+ * growth from high-frequency periodic flows.
32
+ *
33
+ * **Default-on** at {@link DEFAULT_NOTIFICATION_RETENTION_DAYS} as of GA
34
+ * (launch-readiness.md P1-2): an unbounded notification log is a slow leak,
35
+ * so retention ships enabled rather than opt-in. Set to `0` to disable
36
+ * retention entirely (notification history kept forever; operator owns
37
+ * cleanup). Raise/lower the number to widen/narrow the window.
34
38
  */
35
39
  retentionDays?: number;
36
40
  /** Retention sweep interval in ms (default 1 hour). Only used when `retentionDays` is set. */
package/dist/index.d.ts CHANGED
@@ -26,11 +26,15 @@ interface MessagingServicePluginOptions {
26
26
  mandatoryTopics?: readonly string[];
27
27
  /**
28
28
  * Retention window in days for the notification pipeline (ADR-0030
29
- * hardening). When set (> 0), a periodic sweep prunes events, deliveries,
30
- * inbox materializations and receipts older than this — bounding the
31
- * event-log growth from high-frequency periodic flows. **Opt-in**: unset (or
32
- * ≤ 0) disables retention (default), so no notification data is ever deleted
33
- * without explicit operator policy.
29
+ * hardening). When > 0, a periodic sweep prunes events, deliveries, inbox
30
+ * materializations and receipts older than this — bounding the event-log
31
+ * growth from high-frequency periodic flows.
32
+ *
33
+ * **Default-on** at {@link DEFAULT_NOTIFICATION_RETENTION_DAYS} as of GA
34
+ * (launch-readiness.md P1-2): an unbounded notification log is a slow leak,
35
+ * so retention ships enabled rather than opt-in. Set to `0` to disable
36
+ * retention entirely (notification history kept forever; operator owns
37
+ * cleanup). Raise/lower the number to widen/narrow the window.
34
38
  */
35
39
  retentionDays?: number;
36
40
  /** Retention sweep interval in ms (default 1 hour). Only used when `retentionDays` is set. */
package/dist/index.js CHANGED
@@ -1874,6 +1874,7 @@ function stableNodeOffset2(nodeId, partitionCount) {
1874
1874
  }
1875
1875
 
1876
1876
  // src/retention.ts
1877
+ var DEFAULT_NOTIFICATION_RETENTION_DAYS = 90;
1877
1878
  var DEFAULT_RETENTION_TARGETS = [
1878
1879
  { object: RECEIPT_OBJECT, tsField: "created_at", format: "iso" },
1879
1880
  { object: INBOX_OBJECT, tsField: "created_at", format: "iso" },
@@ -2447,7 +2448,7 @@ var MessagingServicePlugin = class {
2447
2448
  partitionCount: 8,
2448
2449
  dispatchIntervalMs: 500,
2449
2450
  mandatoryTopics: [],
2450
- retentionDays: 0,
2451
+ retentionDays: DEFAULT_NOTIFICATION_RETENTION_DAYS,
2451
2452
  retentionSweepMs: 36e5,
2452
2453
  ...options
2453
2454
  };