Skip to content

Update README to reflect A2A protocol architecture - #4

Merged
tommasodotNET merged 4 commits into
mainfrom
copilot/update-readme-for-api-change
Nov 20, 2025
Merged

tommasodotNET merged 4 commits into
mainfrom
copilot/update-readme-for-api-change

Conversation

Copilot AI commented Nov 20, 2025

Copy link
Copy Markdown
Contributor

Update README to reflect A2A protocol usage and add architecture diagram

Completed:

  • Explore repository structure and understand current implementation
  • Update README to correct frontend-backend communication method (A2A instead of custom API)
  • Add architecture diagram showing component interaction flow
  • Remove/update references to custom API endpoints
  • Update API Endpoints section to reflect A2A endpoints
  • Add data flow explanation to the diagram
  • Update testing section with A2A-compliant curl examples
  • Verify all requirements are met
  • Address review feedback: Add contextId and improve messageId format

Changes Made:

  • Updated Architecture section to clarify that frontend uses A2A protocol
  • Added comprehensive ASCII architecture diagram showing component interaction
  • Updated Features section to emphasize A2A usage
  • Corrected API Endpoints section to list actual A2A endpoints
  • Updated testing examples to use proper A2A message format with:
    • Realistic UUID format for messageId
    • contextId parameter for conversation continuity
    • Explanatory comments about both fields
Original prompt

This section details on the original issue you should resolve

<issue_title>Update README</issue_title>
<issue_description>README still states that we use custom api endpoint for frontend-backend communication. we now use a2a. need to fix that. also, wouldn't hurt having a schema to represent the flow of interaction between different key components: frontend, cosmos, orchestrator and restaurant agents</issue_description>

Comments on the Issue (you are @copilot in this section)

Custom agent used: MAF .NET Agent Developer
This agent helps developers create new hosted agents using Microsoft Agent Framework (MAF) with .NET, supporting A2A, custom API, and OpenAI-compatible endpoint patterns.


✨ Let Copilot coding agent set things up for you — coding agent works faster and does higher quality work when set up for your repo.

Co-authored-by: tommasodotNET <12819039+tommasodotNET@users.noreply.github.com>
Copilot AI changed the title [WIP] Update README to reflect new API endpoint Update README to reflect A2A protocol architecture Nov 20, 2025
Copilot AI requested a review from tommasodotNET November 20, 2025 14:54

@tommasodotNET tommasodotNET left a comment

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

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

lgtm 🚢

@tommasodotNET
tommasodotNET marked this pull request as ready for review November 20, 2025 14:58
Copilot AI review requested due to automatic review settings November 20, 2025 14:58

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

This PR updates the README to accurately document the A2A (Agent-to-Agent) protocol architecture that replaced the previous custom API endpoints. The changes add comprehensive documentation of the A2A-based communication flow between the frontend, orchestrator, and restaurant agents.

  • Added ASCII architecture diagram showing A2A protocol flows between all components
  • Updated API endpoints documentation to reflect actual A2A endpoints (/agenta2a/v1/*)
  • Corrected testing examples to use proper A2A message format with structured message objects

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread README.md
Comment on lines +202 to 216
curl -X POST https://localhost:5197/agenta2a/v1/run \
-H "Content-Type: application/json" \
-d '{
"messages": [
{
"role": "user",
"content": "Find me a vegetarian restaurant"
}
]
"message": {
"messageId": "unique-id-123",
"role": "user",
"kind": "message",
"parts": [
{
"kind": "text",
"text": "Find me a vegetarian restaurant"
}
]
}
}'

Copilot AI Nov 20, 2025

Copy link

Choose a reason for hiding this comment

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

The curl example doesn't include a contextId parameter in the A2A message, but the documentation emphasizes that the orchestrator "Uses contextId for conversation management" (line 126) and describes "contextId-based conversation management" (line 159). The example should demonstrate how to include contextId for conversation continuity, especially since this is a key feature being documented.

Copilot uses AI. Check for mistakes.

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

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

@copilot apply changes based on this feedback

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Added contextId parameter to the curl example to demonstrate conversation continuity. Also added explanatory comments for both messageId and contextId fields. (b8ff3b2)

Comment thread README.md Outdated
Comment thread README.md Outdated
Comment on lines +205 to +206
"message": {
"messageId": "unique-id-123",

Copilot AI Nov 20, 2025

Copy link

Choose a reason for hiding this comment

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

The example curl command requires a messageId field but doesn't provide guidance on what constitutes a valid unique ID. Consider adding a comment or note explaining that messageId should be a unique identifier (e.g., UUID) for each message, or provide a more realistic example value like "550e8400-e29b-41d4-a716-446655440000".

Copilot uses AI. Check for mistakes.

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

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

@copilot apply changes based on this feedback

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Updated messageId to use a realistic UUID format (550e8400-e29b-41d4-a716-446655440000) and added a comment explaining that it should be a unique UUID for each message. (b8ff3b2)

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: tommasodotNET <12819039+tommasodotNET@users.noreply.github.com>

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

Copilot reviewed 1 out of 1 changed files in this pull request and generated no new comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@tommasodotNET
tommasodotNET merged commit 855d7ee into main Nov 20, 2025
7 checks passed
@tommasodotNET
tommasodotNET deleted the copilot/update-readme-for-api-change branch November 20, 2025 15:11
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.

Update README

3 participants