Lightning Flow Scanner

Issue #2496 open
Adam Stepanek created an issue

Hi Scott, would you please consider support for a Lightning Flow Scanner? Alongside the PMD it could be used as real time static analyzer for flow. I am thinking something like, when you retrieve a flow, this runs automatically sf flow scan -p path/to/flow, with the json output you could identify exact nodes and display the warning there.

{
  "status": 1,
  "result": {
    "summary": {
      "flowsNumber": 1,
      "results": 3,
      "message": "A total of 3 results have been found in 1 flows.",
      "errorLevelsDetails": {}
    },
    "status": 1,
    "results": [
      {
        "violation": {
          "element": {
            "name": [
              "Update_MC_Send_Status"
            ],
            "label": [
              "Update MC Send Status"
            ],
            "locationX": [
              "242"
            ],
            "locationY": [
              "492"
            ],
            "actionName": [
              "CommunicationEmailStatusUpdateAction"
            ],
            "actionType": [
              "apex"
            ],
            "flowTransactionModel": [
              "CurrentTransaction"
            ],
            "inputParameters": [
              {
                "name": [
                  "record"
                ],
                "value": [
                  {
                    "elementReference": [
                      "$Record"
                    ]
                  }
                ]
              }
            ],
            "nameSegment": [
              "CommunicationEmailStatusUpdateAction"
            ],
            "versionSegment": [
              "1"
            ]
          },
          "subtype": "actionCalls",
          "metaType": "node",
          "connectors": [],
          "name": "Update_MC_Send_Status",
          "locationX": "242",
          "locationY": "492"
        },
        "name": "Update_MC_Send_Status",
        "metaType": "node",
        "type": "actionCalls",
        "details": {
          "locationX": "242",
          "locationY": "492",
          "connectsTo": []
        },
        "ruleDescription": "To maintain the efficiency and manageability of your Flow, it's best to avoid including unconnected elements that are not in use.",
        "rule": "Unconnected Element",
        "flowName": "Communication Update Trigger",
        "flowType": "AutoLaunchedFlow",
        "severity": "error"
      }
    ]
  }
}

Comments (3)

  1. Log in to comment