16 Commits

Author SHA1 Message Date
EugeneTes
fdb0bde798 fix(a2a): review polish 2026-10-07 14:31:35 +00:00
EugeneTes
0d1ddcc4df fix(a2a): unambiguous session scopes and validated context ids 2026-10-07 14:29:50 +00:00
EugeneTes
b53c339bf3 chore(docker): aspnet runtime image, port 8080 and A2A settings 2026-10-07 14:08:11 +00:00
EugeneTes
baddd320c7 fix(a2a): fresh response artifact per run, atomic continuation, sturdier e2e tests
- Each run's first text delta replaces the response artifact (append:false) and a resumed task
  drops the previous run's response, so a failed/canceled continuation never keeps old text.
- Resumed is built from a fresh store read, history chronological (question, then answer),
  timestamps on the TaskUpdater clock.
- Pool.Track refuses a second unfinished run of the same task; the pre-check rejects
  continuations of a running task with UnsupportedOperation.
- Tests: continuation history, streaming continuation, response replacement, concurrent
  continuation; busy test waits for the model call; TimeoutException in waits; push test
  matches TASK_STATE_COMPLETED; harness cleans up on failed start.
2026-10-07 13:38:36 +00:00
EugeneTes
ebdf4a1aa4 test(a2a): push delivery, URL guard and push receiver 2026-10-07 13:25:33 +00:00
EugeneTes
7b044c5437 test(a2a): streaming, input-required, busy contexts, cancel, subscribe, files and hops 2026-10-07 13:25:33 +00:00
EugeneTes
7d4b6ae119 fix(a2a): continuations emit the resumed task, guarded clients bypass proxies
A continued task (input-required -> new message) produced only status updates, so the SDK
answered 'Agent handler did not produce any response events'. The handler now enqueues the
resumed task (caller message and question in history, working) as the first event.
The guarded SocketsHttpHandler sets UseProxy = false: a proxy would make the connection and
skip the ConnectCallback address check.
2026-10-07 13:25:33 +00:00
EugeneTes
098ab9f5ac test(a2a): end-to-end server flows through the SDK client 2026-10-07 13:22:09 +00:00
EugeneTes
0ae8fdd19f fix(a2a): dedicated guarded HTTP clients, context-checked continuations, request-scoped card URL 2026-10-07 13:19:04 +00:00
EugeneTes
9c51c97c93 feat(a2a): per-caller SDK servers behind a key filter, cards and push receiver 2026-10-07 13:10:19 +00:00
EugeneTes
f925eaaafd fix(a2a): track live runs from the start, atomic eviction, token-based cancel and safe final writes 2026-10-07 13:05:06 +00:00
EugeneTes
ab4af2cc21 fix(a2a): reject malformed file part URLs as prompt errors 2026-10-07 12:41:55 +00:00
EugeneTes
ee06e84cd5 feat(a2a): build session prompts from A2A messages, save file parts to the inbox 2026-10-07 12:35:53 +00:00
EugeneTes
2bfa76e0be feat(a2a): per-caller task files with lazy restart recovery 2026-10-07 12:34:01 +00:00
EugeneTes
a2e6a1ac9c feat(a2a): read callers.json from workspaces on every request 2026-10-07 12:18:36 +00:00
EugeneTes
39c9c2467f feat(a2a): scaffold the A2A server library and its tests 2026-10-07 12:18:18 +00:00