AgentStepEndedPayload agent.step.ended@1
Generated at from
openvibe-contracts v0.419.0 and
openvibe-sdk v0.161.0.
- Version
- 1.0.0
- Owner
- actor
- Visibility
- first-party
- Status
- active
- Compatibility
- backward
- Schema
https://openvibe.network/contracts/events/payloads/agent.step.ended.v1.json
agent.step.ended v1 (design 2026-11-07 §2). A step ended: it is done, it failed, or the person stopped it. Envelope: source the mode that ran it, subject the person it is for, visibility internal. The payload is common.agent-step@1: titles, outcomes and links only, never a prompt or a diff.
Fields
This schema has no named fields.
Examples
From the contract's own test fixtures: valid ones validate, rejected ones must fail.
Valid: done
{
"step_id": "tsk_01JAB2C3D4E5F6G7H8J9K0MNPS",
"mode": "code",
"product": "codes",
"ref": "tsk_01JAB2C3D4E5F6G7H8J9K0MNPS",
"title": "Running the checkout tests",
"status": "done",
"started_at": "2026-11-07T09:00:00.000Z",
"ended_at": "2026-11-07T09:04:00.000Z",
"placement": {
"where": "On your desktop",
"why": "it needs your files and your Claude sign-in, and it is free"
},
"cost_usd": 0.42,
"link": "https://codes.openvibe.network/tasks/tsk_01JAB2C3D4E5F6G7H8J9K0MNPS",
"reason": null,
"transition": null,
"approval": null
}Rejected: unknown-status
{
"step_id": "tsk_01JAB2C3D4E5F6G7H8J9K0MNPS",
"mode": "code",
"product": "codes",
"ref": "tsk_01JAB2C3D4E5F6G7H8J9K0MNPS",
"title": "Running the checkout tests",
"status": "maybe",
"started_at": "2026-11-07T09:00:00.000Z",
"ended_at": null,
"placement": {
"where": "On your desktop",
"why": "it needs your files and your Claude sign-in, and it is free"
},
"cost_usd": null,
"link": "https://codes.openvibe.network/tasks/tsk_01JAB2C3D4E5F6G7H8J9K0MNPS",
"reason": null,
"transition": null,
"approval": null
}Validate
const contracts = require('openvibe-contracts');
contracts.validate('agent.step.ended@1', value); // { valid, errors: [{ path, message }] }