cloud: increase feature flag polling interval to 10min (from 30s)#7100
cloud: increase feature flag polling interval to 10min (from 30s)#7100christian-byrne merged 2 commits intomainfrom
Conversation
📝 WalkthroughWalkthroughThe polling interval for the cloud remote configuration loader was adjusted from 30 seconds to 10 minutes. The Changes
✨ Finishing touches
🧪 Generate unit tests (beta)
📜 Recent review detailsConfiguration used: CodeRabbit UI Review profile: CHILL Plan: Pro 📒 Files selected for processing (1)
🚧 Files skipped from review as they are similar to previous changes (1)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (4)
Comment |
🎨 Storybook Build Status✅ Build completed successfully! ⏰ Completed at: 12/02/2025, 11:43:47 PM UTC 🔗 Links🎉 Your Storybook is ready for review! |
🎭 Playwright Test Results⏰ Completed at: 12/02/2025, 11:56:27 PM UTC 📈 Summary
📊 Test Reports by Browser
🎉 Click on the links above to view detailed test results for each browser configuration. |
Bundle Size ReportSummary
Category Glance Per-category breakdownApp Entry Points — 3.19 MB (baseline 3.19 MB) • ⚪ 0 BMain entry bundles and manifests
Graph Workspace — 929 kB (baseline 929 kB) • ⚪ 0 BGraph editor runtime, canvas, workflow orchestration
Views & Navigation — 6.54 kB (baseline 6.54 kB) • ⚪ 0 BTop-level views, pages, and routed surfaces
Panels & Settings — 298 kB (baseline 298 kB) • ⚪ 0 BConfiguration panels, inspectors, and settings screens
UI Components — 169 kB (baseline 169 kB) • ⚪ 0 BReusable component library chunks
Data & Services — 12.5 kB (baseline 12.5 kB) • ⚪ 0 BStores, services, APIs, and repositories
Utilities & Hooks — 2.94 kB (baseline 2.94 kB) • ⚪ 0 BHelpers, composables, and utility bundles
Vendor & Third-Party — 8.56 MB (baseline 8.56 MB) • ⚪ 0 BExternal libraries and shared vendor chunks
Other — 3.84 MB (baseline 3.84 MB) • ⚪ 0 BBundles that do not match a named category
|
Co-authored-by: Alexander Brown <drjkl@comfy.org>
) Increases the `/features` endpoint polling interval (runtime config polling) from the current 30 seconds to 10 minutes. ## Background The polling was originally added for two main purposes: 1. Server alert badges 2. Extra assurance that states are synchronized between frontend and backend However, both of these use cases are not critical: - Server alert badges are unlikely to be needed in practice. WebSocket (WS) can be used eventually as an alternative - For synchronization, the system should be redesigned to be explicit about marking client state as stale, or use WebSocket/Server-Sent Events (WS/SSE) on a per-data basis rather than polling for the entire feature flag set ## Motivation The reason to reduce polling frequency is that per-user feature flags are being added, which will make `/features` endpoint handling significantly heavier. The endpoint will no longer just return static JSON with high cache age, making frequent polling more costly. ## Future Considerations - Eventually migrate server alert badges to use WebSocket - Design a system that explicitly marks client state as stale when needed - Consider using WebSocket or Server-Sent Events for targeted data updates instead of polling entire feature flag set ┆Issue is synchronized with this [Notion page](https://www.notion.so/PR-7100-cloud-increase-feature-flag-polling-interval-to-10min-from-30s-2bd6d73d365081dfa8abeec901d0d975) by [Unito](https://www.unito.io) --------- Co-authored-by: Alexander Brown <drjkl@comfy.org>
|
@christian-byrne Successfully backported to #7111 |
…o 10min (from 30s) (#7111) Backport of #7100 to `cloud/1.33` Automatically created by backport workflow. ┆Issue is synchronized with this [Notion page](https://www.notion.so/PR-7111-backport-cloud-1-33-cloud-increase-feature-flag-polling-interval-to-10min-from-30s-2be6d73d3650817ea746fa49eb896a2d) by [Unito](https://www.unito.io) Co-authored-by: Christian Byrne <cbyrne@comfy.org> Co-authored-by: Alexander Brown <drjkl@comfy.org>
) Increases the `/features` endpoint polling interval (runtime config polling) from the current 30 seconds to 10 minutes. ## Background The polling was originally added for two main purposes: 1. Server alert badges 2. Extra assurance that states are synchronized between frontend and backend However, both of these use cases are not critical: - Server alert badges are unlikely to be needed in practice. WebSocket (WS) can be used eventually as an alternative - For synchronization, the system should be redesigned to be explicit about marking client state as stale, or use WebSocket/Server-Sent Events (WS/SSE) on a per-data basis rather than polling for the entire feature flag set ## Motivation The reason to reduce polling frequency is that per-user feature flags are being added, which will make `/features` endpoint handling significantly heavier. The endpoint will no longer just return static JSON with high cache age, making frequent polling more costly. ## Future Considerations - Eventually migrate server alert badges to use WebSocket - Design a system that explicitly marks client state as stale when needed - Consider using WebSocket or Server-Sent Events for targeted data updates instead of polling entire feature flag set ┆Issue is synchronized with this [Notion page](https://www.notion.so/PR-7100-cloud-increase-feature-flag-polling-interval-to-10min-from-30s-2bd6d73d365081dfa8abeec901d0d975) by [Unito](https://www.unito.io) --------- Co-authored-by: Alexander Brown <drjkl@comfy.org>
Increases the
/featuresendpoint polling interval (runtime config polling) from the current 30 seconds to 10 minutes.Background
The polling was originally added for two main purposes:
However, both of these use cases are not critical:
Motivation
The reason to reduce polling frequency is that per-user feature flags are being added, which will make
/featuresendpoint handling significantly heavier. The endpoint will no longer just return static JSON with high cache age, making frequent polling more costly.Future Considerations
┆Issue is synchronized with this Notion page by Unito