Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
22 commits
Select commit Hold shift + click to select a range
d223872
feat: implement A2A v1 spec models and refactor SDK
rokonec Feb 16, 2026
3ba763c
fix: address v1 commit review findings
rokonec Feb 18, 2026
9e11c78
fix: harden A2AHttpProcessor security and error handling
rokonec Feb 18, 2026
0ebe07a
feat: target net10.0+net8.0, drop net9.0 and netstandard2.0\n\nReplac…
rokonec Feb 19, 2026
ad6e513
feat: redesign server-side architecture with A2AServer, IAgentHandler…
rokonec Feb 21, 2026
2f8e41f
refactor: rename taskManager parameter to requestHandler, add REST ha…
rokonec Feb 21, 2026
9979994
fix: prevent stale task objects after store mutations
rokonec Feb 23, 2026
03328b2
feat: replace ITaskStore with event-sourced ITaskEventStore
rokonec Feb 25, 2026
bb859a1
feat: add FileEventStore sample with flat-file persistence
rokonec Feb 25, 2026
31a57ba
feat: add FileStoreDemo showing data recovery after restart
rokonec Feb 25, 2026
6cc23bb
refactor: separate SubscribeAsync from IEventStore into IEventSubscriber
rokonec Feb 25, 2026
a7df8a6
refactor: replace event sourcing with simple CRUD ITaskStore
rokonec Mar 3, 2026
4cf8a59
fix: move TaskCreatedCount to actual task creation and rename @event …
rokonec Mar 3, 2026
f0bd87e
refactor: rename PersistEventAsync to ApplyEventAsync and remove Auto…
rokonec Mar 3, 2026
752caf0
feat: add metadata support to CancelTaskRequest per spec
rokonec Mar 3, 2026
e1dd2a8
fix: validate negative historyLength in GetTask per spec
rokonec Mar 3, 2026
bba4e39
refactor: rename IsStreaming to StreamingResponse on AgentContext
rokonec Mar 3, 2026
4602462
refactor: rename AgentContext to RequestContext
rokonec Mar 4, 2026
a20e52e
refactor: defer contextId generation from context resolution to task …
rokonec Mar 4, 2026
69a9030
fix: update FileStoreDemo for RequestContext rename and nullable Cont…
rokonec Mar 4, 2026
b9565fe
fix: restore contextId generation per spec, add ClientProvidedContext…
rokonec Mar 4, 2026
a65992c
feat: add MessageResponder helper for agent reply boilerplate
rokonec Mar 4, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,9 @@ ScaffoldingReadMe.txt
*~
CodeCoverage/

# Copilot tracking artifacts
.copilot-tracking/

# MSBuild Binary and Structured Log
*.binlog

Expand Down
49 changes: 49 additions & 0 deletions .vscode/launch.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
{
"version": "0.2.0",
"configurations": [
{
"name": "FileStoreDemo",
"type": "coreclr",
"request": "launch",
"program": "${workspaceFolder}/samples/FileStoreDemo/bin/Debug/net10.0/FileStoreDemo.dll",
"args": [],
"cwd": "${workspaceFolder}/samples/FileStoreDemo",
"console": "integratedTerminal",
"stopAtEntry": false,
"preLaunchTask": "build-filestoreDemo"
},
{
"name": "AgentServer (EchoTasks)",
"type": "coreclr",
"request": "launch",
"program": "${workspaceFolder}/samples/AgentServer/bin/Debug/net10.0/AgentServer.dll",
"args": ["--agent", "echotasks"],
"cwd": "${workspaceFolder}/samples/AgentServer",
"console": "integratedTerminal",
"stopAtEntry": false,
"preLaunchTask": "build-agentServer"
},
{
"name": "AgentServer (SpecCompliance)",
"type": "coreclr",
"request": "launch",
"program": "${workspaceFolder}/samples/AgentServer/bin/Debug/net10.0/AgentServer.dll",
"args": ["--agent", "speccompliance"],
"cwd": "${workspaceFolder}/samples/AgentServer",
"console": "integratedTerminal",
"stopAtEntry": false,
"preLaunchTask": "build-agentServer"
},
{
"name": "AgentServer (FileStore)",
"type": "coreclr",
"request": "launch",
"program": "${workspaceFolder}/samples/AgentServer/bin/Debug/net10.0/AgentServer.dll",
"args": ["--agent", "echotasks", "--store", "file", "--data-dir", "${workspaceFolder}/samples/AgentServer/a2a-data"],
"cwd": "${workspaceFolder}/samples/AgentServer",
"console": "integratedTerminal",
"stopAtEntry": false,
"preLaunchTask": "build-agentServer"
}
]
}
21 changes: 21 additions & 0 deletions .vscode/tasks.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
{
"version": "2.0.0",
"tasks": [
{
"label": "build-filestoreDemo",
"type": "shell",
"command": "dotnet",
"args": ["build", "${workspaceFolder}/samples/FileStoreDemo/FileStoreDemo.csproj"],
"group": "build",
"problemMatcher": ["$msCompile"]
},
{
"label": "build-agentServer",
"type": "shell",
"command": "dotnet",
"args": ["build", "${workspaceFolder}/samples/AgentServer/AgentServer.csproj"],
"group": "build",
"problemMatcher": ["$msCompile"]
}
]
}
2 changes: 2 additions & 0 deletions A2A.slnx
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@
<File Path="src/Directory.Build.props" />
<Project Path="src/A2A.AspNetCore/A2A.AspNetCore.csproj" />
<Project Path="src/A2A/A2A.csproj" />
<Project Path="src/A2A.V0_3/A2A.V0_3.csproj" />
</Folder>
<Folder Name="/Solution Items/">
<File Path=".editorconfig" />
Expand All @@ -31,5 +32,6 @@
<Folder Name="/tests/">
<Project Path="tests/A2A.AspNetCore.UnitTests/A2A.AspNetCore.UnitTests.csproj" />
<Project Path="tests/A2A.UnitTests/A2A.UnitTests.csproj" />
<Project Path="tests/A2A.V0_3.UnitTests/A2A.V0_3.UnitTests.csproj" />
</Folder>
</Solution>
Loading