-
traces_event_attribute— match on span event attributes (all runners return nil forevent_attribute) -
traces_link_trace_id— match spans by linked trace ID (all runners return nil forlink_trace_id)
-
compound_all_keep_types— all/none/sample/rate_limit(N/s)/rate_limit(N/m) under one policy set -
compound_rate_limit_most_restrictive— rate_limit vs none precedence; confirms none > rate_limit
-
compound_sampling_interactions— trace sampling with fail_closed contrast, drop (0%) overriding sampling, mixed fail_closed=true/false with missing trace_id
-
compound_regex_edge_cases— character classes, anchoring, alternation, UUID patterns, escaped brackets, case-insensitive regex -
compound_double_negation—exists: false+negate: true(FAILS Go — ENG-229) -
compound_empty_vs_missing— empty string vs null/absent field behavior -
compound_nested_attributes— nested attribute paths across all signal types
-
compound_transform_chain— cross-policy transform visibility (confirmed: transforms applied after all matching) -
compound_scope_isolation— resource/scope attribute transform isolation
-
compound_datapoint_attr_types— datapoint attribute matching across histogram, summary, gauge
— removed; non-zero hash_seed produces different FNV inputs across runnerstraces_sampling_hash_seed— removed;*_no_matchersmatch: []is not a valid policy- ENG-228: Rust evaluates policies in array order instead of alphanumeric (fails
compound_conflicting_keeps) - ENG-229: Go ignores
negateflag on existence checks —exists: false, negate: trueshould mean "field exists" but Go treats it as "field absent" (failscompound_double_negation)