You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat(GA): close P0-5 (single-instance caps) + P1-2 (unbounded growth)
Lands the two GA-gating launch-readiness items, scoped to the v1
single-instance topology decision.
P0-5 (realtime/feed in-memory, no cluster coordination) — accepted as
single-instance/non-HA for v1 with memory backstops:
- InMemoryFeedAdapter defaults maxItems to DEFAULT_MAX_FEED_ITEMS (100k)
- InMemoryRealtimeAdapter defaults maxSubscriptions to DEFAULT_MAX_SUBSCRIPTIONS (50k)
- 0 = explicit unbounded opt-out; both plugins document the non-HA contract
- HA (Redis realtime adapter + DB feed adapter) recorded as post-GA roadmap
P1-2 (unbounded execution logs / job runs / event log):
- service-job: new JobRunRetention sweeper (mirrors NotificationRetention),
default-on at 30d, swept every 6h via an unref'd timer wired in
JobServicePlugin kernel:ready (DB path); retentionDays:0 disables
- service-messaging: retention flipped default-on (0 -> 90d). Behaviour
change: notification history now auto-prunes at 90d (set 0 to keep forever)
- service-automation: exec-log ring buffer cap made configurable via
AutomationServicePluginOptions.maxLogSize (default unchanged at 1000)
+11 tests across feed/realtime/job/automation; all touched packages build
(incl. DTS) and test green. launch-readiness.md updated (P0-5/P1-2 verified,
topology checkbox, HA roadmap). Changesets included.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
0 commit comments