Package com.xebialabs.xlrelease.a2a.server
package com.xebialabs.xlrelease.a2a.server
-
ClassDescriptionServes Release's A2A Agent Card at the spec's well-known path (
/.well-known/agent-card.json): identity, the JSON-RPC service endpoint, and the currently visible skills.A handoff-contract violation: the caller omitted governance metadata a mutating skill requires (change reference, risk classification, …).Release's A2A server endpoint: JSON-RPC 2.0 over HTTP, implementing the Phase-0 slice of A2A 1.0 —SendMessage(execute a skill synchronously, answer with a completed or failed task) andGetTask(read a recent task back).Push-notification configs external callers registered for release-backed A2A tasks: one config per task (the release id), replaced on re-registration, dropped when the release reaches a terminal state or the map outgrows its bound.One registered webhook.The Phase-1 heart of "Release as an A2A server": a release is an A2A task, live.The one place A2A payloads become JSON on the server side, delegating to the SDK's own mapper.One skill Release advertises on its Agent Card and executes when an external A2A agent sends a message for it.What a skill produced: either an immediate text artifact (the Phase-0 shape — the A2A task is complete the moment the skill returns), or a release the skill started, whose live state IS the A2A task from then on.The live set of skills the A2A server serves: the host's built-in skills (seeded at construction, never removable) plus plugin-contributed ones that come and go with their bundles.Recently answered A2A tasks, so a client that got a task fromSendMessagecan read it back withGetTask.The first built-in A2A skill: a read-only release status summary, so an external agent can ask "where is this release?" and learn — in its own protocol's terms — whether a human is currently in the loop (an active gate or manual task).Starts any Release template as a governed release on behalf of an external agent and tracks it as a live A2A task — the general-purpose counterpart ofRequestDeploymentApprovalSkill's approval-specific contract.The flagship governance skill: an external agent asks Release to run an approval workflow and only seesTASK_STATE_COMPLETEDonce policy — and any humans the workflow pulls in — approve.