Skip to content

[Streams 🌊] Enforce stream hierarchy depth limit #217951

@tonyghiani

Description

@tonyghiani

📓 Summary

Users can create child streams with unlimited nesting depth, which can lead to overly complex stream hierarchies that are difficult to manage and understand.

To improve system maintainability and user experience, we need to implement a maximum nesting depth limit of 5 levels for stream hierarchies. When users attempt to create child streams beyond this limit, we should prevent the action and provide guidance on alternative approaches to organize their streams. This limitation will be enforced in the routing view where users manage and create routing conditions.

✔️ Acceptance criteria

  • Users should be prevented from creating child streams beyond 5 levels of nesting
  • When attempting to create a stream at level 6 or deeper, users should see a clear error message explaining the limitation
  • The "Create child stream" button should be disabled for streams at the 5th nesting level
  • A helpful message should suggest alternative approaches for organizing streams when the limit is reached
  • The UI should visually indicate the current nesting level of streams in the routing view (currently done by the breadcrumbs in routing)
  • The API should reflect the depth constraints and return an appropriate error.
  • The limitation should be consistently applied across all interfaces where stream creation is possible
  • Existing streams with nesting deeper than 5 levels (if any) should continue to function, but cannot add more children
  • Documentation should be updated to explain the nesting limitation and recommended stream organization practices

🎨 Design

TBD

Metadata

Metadata

Assignees

Labels

Feature:StreamsThis is the label for the Streams ProjectTeam:obs-onboardingObservability Onboarding Team

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions