{
  "tool_id": "art-152-mcp-task-lifecycle-validator",
  "note": "golden_hash empty until first `node golden-parity.test.mjs --update`.",
  "vectors": [
    {
      "name": "valid-working-to-completed",
      "policy_parameters": {
        "transitions": [
          {
            "from": "working",
            "to": "working"
          },
          {
            "from": "working",
            "to": "input_required"
          },
          {
            "from": "input_required",
            "to": "working"
          },
          {
            "from": "working",
            "to": "completed"
          }
        ]
      },
      "output_payload": {
        "lifecycle_valid": true,
        "transition_count": 4,
        "illegal_transitions": []
      },
      "golden_hash": "d57f487be9194eb65a3e1b583983b5c8b1ac6c20e1faf2ea8c15510fe0f5d88e"
    },
    {
      "name": "invalid-completed-to-working",
      "policy_parameters": {
        "transitions": [
          {
            "from": "working",
            "to": "completed"
          },
          {
            "from": "completed",
            "to": "working"
          }
        ]
      },
      "output_payload": {
        "lifecycle_valid": false,
        "transition_count": 2,
        "illegal_transitions": [
          {
            "index": 1,
            "from": "completed",
            "to": "working"
          }
        ]
      },
      "golden_hash": "2d2b4764ecefccaa15420b94f1b7bd6a35c02a9b52e2b1d39980b1bba7c76ba3"
    },
    {
      "name": "valid-working-to-cancelled",
      "policy_parameters": {
        "transitions": [
          {
            "from": "working",
            "to": "input_required"
          },
          {
            "from": "input_required",
            "to": "cancelled"
          }
        ]
      },
      "output_payload": {
        "lifecycle_valid": true,
        "transition_count": 2,
        "illegal_transitions": []
      },
      "golden_hash": "075f1365d24f03667642a2a9b75e4e5be94208fdde0f8eab6588e3b362a3964a"
    }
  ]
}
