AgentDecision agent.decision@1

Generated at from openvibe-contracts v0.419.0 and openvibe-sdk v0.161.0.

Version
1.0.0
Owner
actor
Visibility
public
Status
active
Compatibility
backward
Schema
https://openvibe.network/contracts/agent/decision.v1.json

Gate and assessment decision. Inferred work defaults to observe: record ignore with would_accept, never launch. Only an explicit human stop withdraws a mandate.

Fields

FieldTypeRequiredDescriptionConstraints
idstringyes
  • minLength 1
trigger_idsarray of stringyes
  • minItems 1
  • unique items
  • items: minLength 1
policy_versionstringyes
  • minLength 1
decisionenumyes
  • one of "accept", "stop", "ignore", "unavailable"
strengthenumyes
  • one of "explicit", "inferred"
directionobjectyes
  • no other fields
direction.implementation_requestedbooleanyes
direction.target_basisenumyes
  • one of "specified", "existing-standard", "undetermined"
direction.requires_design_decisionbooleanyes
direction.evidencearray of objectyes
  • items: no other fields
direction.evidence[].trigger_idstringyes
  • minLength 1
direction.evidence[].quotestringyes
  • minLength 1
rule_assessmentsarray of objectyes
  • items: no other fields
rule_assessments[].matchedbooleanyes
rule_assessments[].reasonstringyes
  • minLength 1
rule_assessments[].rule_idstringyes
  • minLength 1
reasonstring
  • minLength 1
would_acceptboolean
ignored_from_cardboolean

Examples

From the contract's own test fixtures: valid ones validate, rejected ones must fail.

Valid: example
{
  "id": "dec_1",
  "trigger_ids": [
    "trg_1"
  ],
  "policy_version": "1",
  "decision": "accept",
  "strength": "explicit",
  "direction": {
    "implementation_requested": true,
    "target_basis": "specified",
    "requires_design_decision": false,
    "evidence": [
      {
        "trigger_id": "trg_1",
        "quote": "Fix the bug"
      }
    ]
  },
  "rule_assessments": []
}
Rejected: target-basis
{
  "id": "dec_1",
  "trigger_ids": [
    "trg_1"
  ],
  "policy_version": "1",
  "decision": "accept",
  "strength": "explicit",
  "direction": {
    "implementation_requested": true,
    "target_basis": "guessed",
    "requires_design_decision": false,
    "evidence": [
      {
        "trigger_id": "trg_1",
        "quote": "Fix the bug"
      }
    ]
  },
  "rule_assessments": []
}
Rejected: unknown
{
  "id": "dec_1",
  "trigger_ids": [
    "trg_1"
  ],
  "policy_version": "1",
  "decision": "accept",
  "strength": "explicit",
  "direction": {
    "implementation_requested": true,
    "target_basis": "specified",
    "requires_design_decision": false,
    "evidence": [
      {
        "trigger_id": "trg_1",
        "quote": "Fix the bug"
      }
    ]
  },
  "rule_assessments": [],
  "unexpected": true
}

Validate

const contracts = require('openvibe-contracts');
contracts.validate('agent.decision@1', value);   // { valid, errors: [{ path, message }] }