Skip to content

Bug2020962 session impl#840

Draft
travis79 wants to merge 3 commits intomainfrom
Bug2020962-Session-Impl
Draft

Bug2020962 session impl#840
travis79 wants to merge 3 commits intomainfrom
Bug2020962-Session-Impl

Conversation

@travis79
Copy link
Copy Markdown
Member

Pull Request checklist

  • Quality: This PR builds and tests run cleanly
    • make test runs without emitting any warnings
    • make lint runs without emitting any errors
  • Tests: This PR includes thorough tests or an explanation of why it does not
  • Changelog: This PR includes a changelog entry to CHANGELOG.md or an explanation of why it does not need one
    • Any breaking changes to language binding APIs are noted explicitly

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 travis79 force-pushed the Bug2020962-Session-Impl branch from 79101f5 to 5105cfa Compare April 16, 2026 13:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant