Skip to content

Document IDataConsumer UID filtering - #10740

Merged
Amaury Levé (Evangelink) merged 1 commit into
mainfrom
dev/amauryleve/document-idataconsumer-uid-rules
Aug 25, 2026
Merged

Document IDataConsumer UID filtering#10740
Amaury Levé (Evangelink) merged 1 commit into
mainfrom
dev/amauryleve/document-idataconsumer-uid-rules

Conversation

@Evangelink

Copy link
Copy Markdown
Member

Clarifies that the Microsoft.Testing.Platform message bus does not dispatch data to an IDataConsumer when the producer and consumer share the same IExtension.Uid.

The API documentation now explains that producer and consumer registrations communicating through the message bus need distinct UIDs, while self-produced data should be processed directly.

Fixes #4588

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 469109f6-5c6d-4ebb-af75-24785643dc56
Copilot AI balanced review requested due to automatic review settings August 25, 2026 15:29
@Evangelink Amaury Levé (Evangelink) added the state/needs-review Awaiting review from the team. label Aug 25, 2026
@Evangelink
Amaury Levé (Evangelink) enabled auto-merge (squash) August 25, 2026 15:30

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Note

🤖 Automated review by GitHub Copilot. Generated by the Expert Code Review workflow. To request a follow-up action, reply by tagging @copilot directly.

Review Summary

This is a documentation-only change adding XML doc <remarks> to IDataConsumer and IMessageBus.PublishAsync to document the same-UID skip behavior.

Dimension Verdict
Accuracy ✅ Verified — AsyncConsumerDataProcessor (line 90) and BlockingConsumerDataProcessor (line 55) both check dataProducer.Uid == DataConsumer.Uid and skip dispatch when they match.
Clarity ✅ Clear and concise
Consistency ✅ Matches existing XML doc style in the codebase
Completeness ✅ Both the consumer interface and the publish method are annotated
Public API surface ✅ No new public API — doc comments only

No issues found. The documented behavior accurately reflects the implementation.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Documents message-bus UID filtering to clarify why consumers do not receive self-produced data.

Changes:

  • Documents same-UID filtering on IMessageBus.PublishAsync.
  • Advises IDataConsumer implementations to process self-produced data directly.
Show a summary per file
File Description
IMessageBus.cs Documents publish-time UID filtering.
IDataConsumer.cs Explains UID requirements and self-processing guidance.

Review details

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

  • Files reviewed: 2/2 changed files
  • Comments generated: 0
  • Review effort level: Balanced

@Evangelink
Amaury Levé (Evangelink) merged commit 86e88e3 into main Aug 25, 2026
29 checks passed
@Evangelink
Amaury Levé (Evangelink) deleted the dev/amauryleve/document-idataconsumer-uid-rules branch August 25, 2026 17:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

state/needs-review Awaiting review from the team.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Testing Platform] IDataConsumer is never invoked

3 participants