Add support for the `in_session` boolean field on metric definitions. When `in_session: true` is set on an event metric, the parser sets `out_of_session: false` on the metric object for code generation. - Schema: add `in_session` property to metrics 2-0-0 schema with a validation rule that rejects `in_session: true` on non-event types - Model: Event.__init__ pops `in_session` and sets `out_of_session`; Event.serialize strips `out_of_session` so it doesn't round-trip back into YAML validation - Util: add `out_of_session` to `common_metric_args` so Kotlin, Swift, and JavaScript templates pick it up automatically via their existing iteration over that list
The Rust template hardcodes CommonMetricData fields rather than iterating common_metric_args like Kotlin/Swift/JS, so it needs an explicit addition to emit `out_of_session` when defined.
- Model tests: verify in_session on events sets out_of_session, default omits it, non-event with in_session: true is rejected, non-event with in_session: false is accepted - Output tests: verify generated Rust, Kotlin, and Swift code contains outOfSession/out_of_session when in_session: true - Test data: add in_session: true to the event in all_metrics.yaml
travis79 deleted the Bug2020962-Session-Impl branch
June 5, 2026 12:36