[XPTI] Add per-subscriber stream detail level control (#21863)
Introduces a mechanism for subscribers to request different levels of
optional data emission from producers on a per-stream basis, enabling
fine-grained control over tracing overhead:
- Added stream_detail_level_t enum (NONE, BASIC, NORMAL, VERBOSE)
- Added optional xptiQuerySubscriberStreamDetailLevel subscriber
callback
- Added xptiGetEffectiveStreamDetailLevel producer API
- Aggregation rule: effective level = max across all subscribers
Producers can use threshold checks to conditionally emit expensive
optional data based on the effective detail level.
Also add XPTI_HAS_STREAM_DETAIL_LEVEL macro to enable compile-time
feature detection for stream detail level functionality.
This approach allows to stay fully backward compatible: subscribers that
define new xptiQuerySubscriberStreamDetailLevel callback can work with
both old frameworks (that will ignore the callback) and new frameworks
(that will recognize the callback).
Assisted-By: Claude Sonnet 4.5