Skip to content

[app-server] centralize client response analytics#20059

Merged
rhan-oai merged 1 commit intomainfrom
rhan/client-analytics
Apr 29, 2026
Merged

[app-server] centralize client response analytics#20059
rhan-oai merged 1 commit intomainfrom
rhan/client-analytics

Conversation

@rhan-oai
Copy link
Copy Markdown
Collaborator

Why

The precursor PR keeps successful client responses typed until app-server's outgoing response seam. This follow-up uses that seam to move successful client-response analytics out of individual handlers and into the shared sender path, while keeping filtering decisions inside codex-analytics.

What changed

  • Emit successful client-response analytics centrally from OutgoingMessageSender::send_response.
  • Remove duplicate handler-local response tracking for the current thread/turn lifecycle responses.
  • Keep analytics ingestion selective inside AnalyticsEventsClient, so unrelated client traffic is ignored before cloning or boxing.
  • Collapse client-response analytics facts onto one typed path and normalize payloads in the reducer.
  • Add direct client-filter coverage plus sender-level coverage for the centralized forwarding path.

Verification

  • cargo test -p codex-analytics
  • cargo test -p codex-app-server outgoing_message::tests --lib

@rhan-oai rhan-oai force-pushed the rhan/client-analytics branch from 4d09071 to e18fa36 Compare April 28, 2026 19:17
@rhan-oai rhan-oai requested a review from owenlin0 April 28, 2026 21:06
@rhan-oai rhan-oai force-pushed the rhan/client-analytics branch from e18fa36 to ee331bd Compare April 28, 2026 22:31
@rhan-oai rhan-oai force-pushed the rhan/client-response-payload-plumbing branch from f92744f to 5eb6d76 Compare April 28, 2026 22:48
@rhan-oai rhan-oai force-pushed the rhan/client-analytics branch from ee331bd to a66ec81 Compare April 28, 2026 22:52
@rhan-oai rhan-oai force-pushed the rhan/client-response-payload-plumbing branch from 5eb6d76 to 0022641 Compare April 28, 2026 23:12
@rhan-oai rhan-oai force-pushed the rhan/client-analytics branch from a66ec81 to a54d537 Compare April 28, 2026 23:16
@rhan-oai rhan-oai force-pushed the rhan/client-response-payload-plumbing branch from 0022641 to a1caa34 Compare April 28, 2026 23:29
@rhan-oai rhan-oai force-pushed the rhan/client-analytics branch from a54d537 to bd238db Compare April 28, 2026 23:30
@rhan-oai rhan-oai force-pushed the rhan/client-response-payload-plumbing branch from a1caa34 to 6a5df25 Compare April 29, 2026 04:25
@rhan-oai rhan-oai force-pushed the rhan/client-analytics branch from bd238db to 4607729 Compare April 29, 2026 04:29
@rhan-oai rhan-oai force-pushed the rhan/client-response-payload-plumbing branch 2 times, most recently from 7223fa2 to e593ec4 Compare April 29, 2026 05:03
@rhan-oai rhan-oai force-pushed the rhan/client-analytics branch from 4607729 to dd4447b Compare April 29, 2026 05:46
@rhan-oai rhan-oai marked this pull request as ready for review April 29, 2026 06:08
@rhan-oai rhan-oai force-pushed the rhan/client-response-payload-plumbing branch from e593ec4 to 1c6108c Compare April 29, 2026 19:15
@rhan-oai rhan-oai force-pushed the rhan/client-analytics branch from dd4447b to 91ec095 Compare April 29, 2026 19:17
@rhan-oai rhan-oai force-pushed the rhan/client-response-payload-plumbing branch from 1c6108c to 2536ff7 Compare April 29, 2026 20:03
@rhan-oai rhan-oai force-pushed the rhan/client-analytics branch from 91ec095 to 2d8059c Compare April 29, 2026 20:10
Base automatically changed from rhan/client-response-payload-plumbing to main April 29, 2026 20:50
@rhan-oai rhan-oai force-pushed the rhan/client-analytics branch from 2d8059c to 13db003 Compare April 29, 2026 20:57
@rhan-oai rhan-oai enabled auto-merge (squash) April 29, 2026 21:01
@rhan-oai rhan-oai merged commit 72a39e3 into main Apr 29, 2026
25 checks passed
@rhan-oai rhan-oai deleted the rhan/client-analytics branch April 29, 2026 21:22
@github-actions github-actions Bot locked and limited conversation to collaborators Apr 29, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants