fix(ca): send stayLobbyTime with lobby exit event#4744
fix(ca): send stayLobbyTime with lobby exit event#4744jor-row wants to merge 4 commits intowebex:nextfrom
Conversation
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: e81a969c8c
ℹ️ About Codex in GitHub
Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".
...ages/@webex/internal-plugin-metrics/src/call-diagnostic/call-diagnostic-metrics-latencies.ts
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 8b6b720b00
ℹ️ About Codex in GitHub
Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".
| if (ignoreMissingEndEvent && !this.latencyTimestamps.get('client.lobby.exited')) { | ||
| this.saveTimestamp({ | ||
| key: 'client.lobby.exited', | ||
| }); |
There was a problem hiding this comment.
Avoid persisting synthetic lobby-exit timestamp
This branch mutates shared latency state by writing client.lobby.exited = now when the event timestamp is missing, which can happen when queued/retried client.lobby.exited items are prepared after latencies were cleared (fresh evidence: batcher.js re-invokes prepareItem() in rerequest(), and prepareDiagnosticMetricItem() calls getStayLobbyTime(true) for that event). Once this synthetic timestamp is stored, later calls like getTotalMediaJMT()/getInterstitialToMediaOKJMT() can subtract an unrelated lobby duration and report clamped/incorrect media latencies for subsequent meetings.
Useful? React with 👍 / 👎.
COMPLETES https://jira-eng-gpk2.cisco.com/jira/browse/SPARK-603148
This pull request addresses
stayLobbyTime being sent before lobby is exited
by making the following changes
only send this latency with client.lobby.exited event. this means it will only be populated on join result if lobby was actually entered.
Change Type
The following scenarios were tested
< ENUMERATE TESTS PERFORMED, WHETHER MANUAL OR AUTOMATED >
The GAI Coding Policy And Copyright Annotation Best Practices
I certified that
Make sure to have followed the contributing guidelines before submitting.