Deploy the adapter fix and document the four outcomes
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
@@ -42,3 +42,22 @@ completed task is the wrong shape for "a human has to look at this".
|
|||||||
|
|
||||||
One skill per instance, deliberately. A second one is a card change, which is
|
One skill per instance, deliberately. A second one is a card change, which is
|
||||||
the moment to ask whether the agent has quietly become a data proxy.
|
the moment to ask whether the agent has quietly become a data proxy.
|
||||||
|
|
||||||
|
## Four outcomes, and only one of them completes
|
||||||
|
|
||||||
|
HTTP 200 from n8n does not mean the workflow answered. It returns 200 with an
|
||||||
|
**empty body** when a node throws before the Respond node runs — a refused token
|
||||||
|
exchange is the common way in. The adapter used to read that as a completed task
|
||||||
|
carrying "(the workflow returned nothing)", which told the caller the task had
|
||||||
|
succeeded: the one thing certainly false.
|
||||||
|
|
||||||
|
| `Outcome` | A2A task state |
|
||||||
|
|---|---|
|
||||||
|
| `ANSWERED` — the contract, `escalate: false` | `completed` |
|
||||||
|
| `ESCALATED` — the contract, `escalate: true` | `failed` |
|
||||||
|
| `SILENT` — 200 with an empty body | `failed` |
|
||||||
|
| `OFF_CONTRACT` — a body that is not `{"answer", "escalate"}` | `failed` |
|
||||||
|
|
||||||
|
Off contract is returned **raw** so a workflow that has drifted is visible — but
|
||||||
|
never as agreement. Escalation is `failed` for the older reason: an autonomous
|
||||||
|
agent meeting a rule that needs approval must fail cleanly, never decide.
|
||||||
|
|||||||
@@ -25,7 +25,7 @@ spec:
|
|||||||
type: RuntimeDefault
|
type: RuntimeDefault
|
||||||
containers:
|
containers:
|
||||||
- name: adapter
|
- name: adapter
|
||||||
image: gitea.sttlab.eu/stt/a2a-n8n-adapter:v0.1.0
|
image: gitea.sttlab.eu/stt/a2a-n8n-adapter:v0.2.0
|
||||||
ports:
|
ports:
|
||||||
- name: http
|
- name: http
|
||||||
containerPort: 8080
|
containerPort: 8080
|
||||||
|
|||||||
Reference in New Issue
Block a user