{
  "_class" : "org.jenkinsci.plugins.workflow.job.WorkflowRun",
  "actions" : [
    {
      "_class" : "hudson.model.ParametersAction",
      "parameters" : [
        {
          "_class" : "hudson.model.StringParameterValue",
          "name" : "getBranchs",
          "value" : "true"
        },
        {
          "_class" : "hudson.model.StringParameterValue",
          "name" : "deviceChoice",
          "value" : "true"
        },
        {
          "_class" : "hudson.model.StringParameterValue",
          "name" : "commitChoice",
          "value" : "rc_dev"
        },
        {
          "_class" : "hudson.model.StringParameterValue",
          "name" : "msgBranch",
          "value" : "rc_dev_qiangang_config"
        },
        {
          "_class" : "hudson.model.StringParameterValue",
          "name" : "pncBranch",
          "value" : "feat_proto_jinxi"
        },
        {
          "_class" : "hudson.model.StringParameterValue",
          "name" : "hdmapBranch",
          "value" : "rc_dev"
        },
        {
          "_class" : "hudson.model.StringParameterValue",
          "name" : "telediagnosticBranch",
          "value" : "feat_proto"
        },
        {
          "_class" : "hudson.model.StringParameterValue",
          "name" : "hdmapInterfaceBranch",
          "value" : "rc_dev"
        },
        {
          "_class" : "hudson.model.StringParameterValue",
          "name" : "notes",
          "value" : "前港telediagnostic更新"
        },
        {
          "_class" : "hudson.model.StringParameterValue",
          "name" : "users",
          "value" : ""
        }
      ]
    },
    {
      "_class" : "hudson.model.CauseAction",
      "causes" : [
        {
          "_class" : "hudson.model.Cause$UserIdCause",
          "shortDescription" : "Started by user guanxinjie",
          "userId" : "guanxinjie",
          "userName" : "guanxinjie"
        }
      ]
    },
    {
      "_class" : "org.jenkinsci.plugins.workflow.libs.LibrariesAction"
    },
    {
      
    },
    {
      "_class" : "hudson.plugins.git.util.BuildData",
      "buildsByBranchName" : {
        "master" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 279,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "ad388410157fa83ebf64ed28b030927f2518ea82",
            "branch" : [
              {
                "SHA1" : "ad388410157fa83ebf64ed28b030927f2518ea82",
                "name" : "master"
              }
            ]
          },
          "revision" : {
            "SHA1" : "ad388410157fa83ebf64ed28b030927f2518ea82",
            "branch" : [
              {
                "SHA1" : "ad388410157fa83ebf64ed28b030927f2518ea82",
                "name" : "master"
              }
            ]
          }
        }
      },
      "lastBuiltRevision" : {
        "SHA1" : "ad388410157fa83ebf64ed28b030927f2518ea82",
        "branch" : [
          {
            "SHA1" : "ad388410157fa83ebf64ed28b030927f2518ea82",
            "name" : "master"
          }
        ]
      },
      "remoteUrls" : [
        "http://159.27.226.4/weilikang/jenkinslib.git"
      ],
      "scmName" : ""
    },
    {
      
    },
    {
      
    },
    {
      "_class" : "org.jenkinsci.plugins.workflow.cps.EnvActionImpl"
    },
    {
      "_class" : "hudson.plugins.git.util.BuildData",
      "buildsByBranchName" : {
        "refs/remotes/origin/master" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 279,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "24f9c3d3844facdc7af96e1893122383611c270d",
            "branch" : [
              {
                "SHA1" : "24f9c3d3844facdc7af96e1893122383611c270d",
                "name" : "refs/remotes/origin/master"
              }
            ]
          },
          "revision" : {
            "SHA1" : "24f9c3d3844facdc7af96e1893122383611c270d",
            "branch" : [
              {
                "SHA1" : "24f9c3d3844facdc7af96e1893122383611c270d",
                "name" : "refs/remotes/origin/master"
              }
            ]
          }
        }
      },
      "lastBuiltRevision" : {
        "SHA1" : "24f9c3d3844facdc7af96e1893122383611c270d",
        "branch" : [
          {
            "SHA1" : "24f9c3d3844facdc7af96e1893122383611c270d",
            "name" : "refs/remotes/origin/master"
          }
        ]
      },
      "remoteUrls" : [
        "http://159.27.226.4/weilikang/jenkinsfiles.git"
      ],
      "scmName" : ""
    },
    {
      
    },
    {
      
    },
    {
      
    },
    {
      "_class" : "org.jenkinsci.plugins.workflow.cps.view.InterpolatedSecretsAction"
    },
    {
      "_class" : "hudson.plugins.git.util.BuildData",
      "buildsByBranchName" : {
        "origin/rc_dev_93cc60" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 26,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "93cc602576f9f342ff85e9cc672a683b99db923b",
            "branch" : [
              {
                "SHA1" : "93cc602576f9f342ff85e9cc672a683b99db923b",
                "name" : "origin/rc_dev_93cc60"
              }
            ]
          },
          "revision" : {
            "SHA1" : "93cc602576f9f342ff85e9cc672a683b99db923b",
            "branch" : [
              {
                "SHA1" : "93cc602576f9f342ff85e9cc672a683b99db923b",
                "name" : "origin/rc_dev_93cc60"
              }
            ]
          }
        },
        "origin/rc_dev_e53243" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 47,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "e53243a23acd89640afd41301882167071c14022",
            "branch" : [
              {
                "SHA1" : "e53243a23acd89640afd41301882167071c14022",
                "name" : "origin/rc_dev_e53243"
              }
            ]
          },
          "revision" : {
            "SHA1" : "e53243a23acd89640afd41301882167071c14022",
            "branch" : [
              {
                "SHA1" : "e53243a23acd89640afd41301882167071c14022",
                "name" : "origin/rc_dev_e53243"
              }
            ]
          }
        },
        "origin/feat_traffic_ctrl" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 224,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "65f340e067041af839e045dc2a2b56041fcd5072",
            "branch" : [
              {
                "SHA1" : "65f340e067041af839e045dc2a2b56041fcd5072",
                "name" : "origin/feat_traffic_ctrl"
              }
            ]
          },
          "revision" : {
            "SHA1" : "65f340e067041af839e045dc2a2b56041fcd5072",
            "branch" : [
              {
                "SHA1" : "65f340e067041af839e045dc2a2b56041fcd5072",
                "name" : "origin/feat_traffic_ctrl"
              }
            ]
          }
        },
        "origin/rc_dev_baoshishun" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 99,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "1060eccdc1ce393d65d835c0f86b9bb78729960e",
            "branch" : [
              {
                "SHA1" : "1060eccdc1ce393d65d835c0f86b9bb78729960e",
                "name" : "origin/rc_dev_baoshishun"
              }
            ]
          },
          "revision" : {
            "SHA1" : "1060eccdc1ce393d65d835c0f86b9bb78729960e",
            "branch" : [
              {
                "SHA1" : "1060eccdc1ce393d65d835c0f86b9bb78729960e",
                "name" : "origin/rc_dev_baoshishun"
              }
            ]
          }
        },
        "origin/feat_tc_v2_daxie" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 223,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "aed54f80025d95dc2fa58fadb5f26bd1c46d4b0d",
            "branch" : [
              {
                "SHA1" : "aed54f80025d95dc2fa58fadb5f26bd1c46d4b0d",
                "name" : "origin/feat_tc_v2_daxie"
              }
            ]
          },
          "revision" : {
            "SHA1" : "aed54f80025d95dc2fa58fadb5f26bd1c46d4b0d",
            "branch" : [
              {
                "SHA1" : "aed54f80025d95dc2fa58fadb5f26bd1c46d4b0d",
                "name" : "origin/feat_tc_v2_daxie"
              }
            ]
          }
        },
        "origin/rc_dev_xiamen" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 245,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "483fabd931605b5fe19a49de9f1cbbb1097f497b",
            "branch" : [
              {
                "SHA1" : "483fabd931605b5fe19a49de9f1cbbb1097f497b",
                "name" : "origin/rc_dev_xiamen"
              }
            ]
          },
          "revision" : {
            "SHA1" : "483fabd931605b5fe19a49de9f1cbbb1097f497b",
            "branch" : [
              {
                "SHA1" : "483fabd931605b5fe19a49de9f1cbbb1097f497b",
                "name" : "origin/rc_dev_xiamen"
              }
            ]
          }
        },
        "origin/rc_dev_xilian" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 146,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "1e6c6aa34911755a34f4cc4acec03c6c30a2e604",
            "branch" : [
              {
                "SHA1" : "1e6c6aa34911755a34f4cc4acec03c6c30a2e604",
                "name" : "origin/rc_dev_xilian"
              }
            ]
          },
          "revision" : {
            "SHA1" : "1e6c6aa34911755a34f4cc4acec03c6c30a2e604",
            "branch" : [
              {
                "SHA1" : "1e6c6aa34911755a34f4cc4acec03c6c30a2e604",
                "name" : "origin/rc_dev_xilian"
              }
            ]
          }
        },
        "origin/rc_dev_184937" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 73,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "184937840d35a83cb9158067f5fc65458db35e7a",
            "branch" : [
              {
                "SHA1" : "184937840d35a83cb9158067f5fc65458db35e7a",
                "name" : "origin/rc_dev_184937"
              }
            ]
          },
          "revision" : {
            "SHA1" : "184937840d35a83cb9158067f5fc65458db35e7a",
            "branch" : [
              {
                "SHA1" : "184937840d35a83cb9158067f5fc65458db35e7a",
                "name" : "origin/rc_dev_184937"
              }
            ]
          }
        },
        "origin/rc_dev_yangpu" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 255,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "c2b70ca6d50c20019fb03195b32631d2710f18be",
            "branch" : [
              {
                "SHA1" : "c2b70ca6d50c20019fb03195b32631d2710f18be",
                "name" : "origin/rc_dev_yangpu"
              }
            ]
          },
          "revision" : {
            "SHA1" : "c2b70ca6d50c20019fb03195b32631d2710f18be",
            "branch" : [
              {
                "SHA1" : "c2b70ca6d50c20019fb03195b32631d2710f18be",
                "name" : "origin/rc_dev_yangpu"
              }
            ]
          }
        },
        "origin/feat_tc_v2" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 228,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "b34e00e37e0d3a5818ba0ebb75422c11ae3b6b28",
            "branch" : [
              {
                "SHA1" : "b34e00e37e0d3a5818ba0ebb75422c11ae3b6b28",
                "name" : "origin/feat_tc_v2"
              }
            ]
          },
          "revision" : {
            "SHA1" : "b34e00e37e0d3a5818ba0ebb75422c11ae3b6b28",
            "branch" : [
              {
                "SHA1" : "b34e00e37e0d3a5818ba0ebb75422c11ae3b6b28",
                "name" : "origin/feat_tc_v2"
              }
            ]
          }
        },
        "origin/rc_dev_wuhanzhongtielianji" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 276,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "7d594c755e96741c20d32b84dec169d35b599e9c",
            "branch" : [
              {
                "SHA1" : "7d594c755e96741c20d32b84dec169d35b599e9c",
                "name" : "origin/rc_dev_wuhanzhongtielianji"
              }
            ]
          },
          "revision" : {
            "SHA1" : "7d594c755e96741c20d32b84dec169d35b599e9c",
            "branch" : [
              {
                "SHA1" : "7d594c755e96741c20d32b84dec169d35b599e9c",
                "name" : "origin/rc_dev_wuhanzhongtielianji"
              }
            ]
          }
        },
        "origin/rc_dev" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 278,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "f820c4ad43107c56f407831e44f6bc87cbbfff7f",
            "branch" : [
              {
                "SHA1" : "f820c4ad43107c56f407831e44f6bc87cbbfff7f",
                "name" : "origin/rc_dev"
              }
            ]
          },
          "revision" : {
            "SHA1" : "f820c4ad43107c56f407831e44f6bc87cbbfff7f",
            "branch" : [
              {
                "SHA1" : "f820c4ad43107c56f407831e44f6bc87cbbfff7f",
                "name" : "origin/rc_dev"
              }
            ]
          }
        },
        "origin/rc_dev_qiangang" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 258,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "1f1b50411fbad43ef0d16e173acf889b3a413854",
            "branch" : [
              {
                "SHA1" : "1f1b50411fbad43ef0d16e173acf889b3a413854",
                "name" : "origin/rc_dev_qiangang"
              }
            ]
          },
          "revision" : {
            "SHA1" : "1f1b50411fbad43ef0d16e173acf889b3a413854",
            "branch" : [
              {
                "SHA1" : "1f1b50411fbad43ef0d16e173acf889b3a413854",
                "name" : "origin/rc_dev_qiangang"
              }
            ]
          }
        },
        "origin/feat_xiamen_patch" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 90,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "184937840d35a83cb9158067f5fc65458db35e7a",
            "branch" : [
              {
                "SHA1" : "184937840d35a83cb9158067f5fc65458db35e7a",
                "name" : "origin/feat_xiamen_patch"
              }
            ]
          },
          "revision" : {
            "SHA1" : "184937840d35a83cb9158067f5fc65458db35e7a",
            "branch" : [
              {
                "SHA1" : "184937840d35a83cb9158067f5fc65458db35e7a",
                "name" : "origin/feat_xiamen_patch"
              }
            ]
          }
        },
        "origin/feat_yard_lane_change" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 36,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "9c5267888fbed74808f7b7c3fa5beff157057207",
            "branch" : [
              {
                "SHA1" : "9c5267888fbed74808f7b7c3fa5beff157057207",
                "name" : "origin/feat_yard_lane_change"
              }
            ]
          },
          "revision" : {
            "SHA1" : "9c5267888fbed74808f7b7c3fa5beff157057207",
            "branch" : [
              {
                "SHA1" : "9c5267888fbed74808f7b7c3fa5beff157057207",
                "name" : "origin/feat_yard_lane_change"
              }
            ]
          }
        },
        "origin/feat_tc_v2_xiamen" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 232,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "df329f0b0fe1fb2f0213fc2c6e790f48c58253e5",
            "branch" : [
              {
                "SHA1" : "df329f0b0fe1fb2f0213fc2c6e790f48c58253e5",
                "name" : "origin/feat_tc_v2_xiamen"
              }
            ]
          },
          "revision" : {
            "SHA1" : "df329f0b0fe1fb2f0213fc2c6e790f48c58253e5",
            "branch" : [
              {
                "SHA1" : "df329f0b0fe1fb2f0213fc2c6e790f48c58253e5",
                "name" : "origin/feat_tc_v2_xiamen"
              }
            ]
          }
        },
        "origin/rc_dev_qiangang_config" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 279,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "67c580e8acd794024fe0bd156f103127ca70bf90",
            "branch" : [
              {
                "SHA1" : "67c580e8acd794024fe0bd156f103127ca70bf90",
                "name" : "origin/rc_dev_qiangang_config"
              }
            ]
          },
          "revision" : {
            "SHA1" : "67c580e8acd794024fe0bd156f103127ca70bf90",
            "branch" : [
              {
                "SHA1" : "67c580e8acd794024fe0bd156f103127ca70bf90",
                "name" : "origin/rc_dev_qiangang_config"
              }
            ]
          }
        },
        "origin/feat_qiangang_side_pass" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 190,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "0daa1f7f08156df5a55cf90342da631b318e2d3d",
            "branch" : [
              {
                "SHA1" : "0daa1f7f08156df5a55cf90342da631b318e2d3d",
                "name" : "origin/feat_qiangang_side_pass"
              }
            ]
          },
          "revision" : {
            "SHA1" : "0daa1f7f08156df5a55cf90342da631b318e2d3d",
            "branch" : [
              {
                "SHA1" : "0daa1f7f08156df5a55cf90342da631b318e2d3d",
                "name" : "origin/feat_qiangang_side_pass"
              }
            ]
          }
        },
        "origin/rc_dev_jiaxingdongfangtegang" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 264,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "ce4f0766aace66814f2a5f8025e07a3715a56c54",
            "branch" : [
              {
                "SHA1" : "ce4f0766aace66814f2a5f8025e07a3715a56c54",
                "name" : "origin/rc_dev_jiaxingdongfangtegang"
              }
            ]
          },
          "revision" : {
            "SHA1" : "ce4f0766aace66814f2a5f8025e07a3715a56c54",
            "branch" : [
              {
                "SHA1" : "ce4f0766aace66814f2a5f8025e07a3715a56c54",
                "name" : "origin/rc_dev_jiaxingdongfangtegang"
              }
            ]
          }
        },
        "origin/rc_dev_daxie" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 262,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "2d6540ee99dacd1ead24c835cb63c9282bc40ec7",
            "branch" : [
              {
                "SHA1" : "2d6540ee99dacd1ead24c835cb63c9282bc40ec7",
                "name" : "origin/rc_dev_daxie"
              }
            ]
          },
          "revision" : {
            "SHA1" : "2d6540ee99dacd1ead24c835cb63c9282bc40ec7",
            "branch" : [
              {
                "SHA1" : "2d6540ee99dacd1ead24c835cb63c9282bc40ec7",
                "name" : "origin/rc_dev_daxie"
              }
            ]
          }
        },
        "origin/feat_qiangang" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 215,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "289cda308241280b261706930b818b90420fcb5f",
            "branch" : [
              {
                "SHA1" : "289cda308241280b261706930b818b90420fcb5f",
                "name" : "origin/feat_qiangang"
              }
            ]
          },
          "revision" : {
            "SHA1" : "289cda308241280b261706930b818b90420fcb5f",
            "branch" : [
              {
                "SHA1" : "289cda308241280b261706930b818b90420fcb5f",
                "name" : "origin/feat_qiangang"
              }
            ]
          }
        }
      },
      "lastBuiltRevision" : {
        "SHA1" : "67c580e8acd794024fe0bd156f103127ca70bf90",
        "branch" : [
          {
            "SHA1" : "67c580e8acd794024fe0bd156f103127ca70bf90",
            "name" : "origin/rc_dev_qiangang_config"
          }
        ]
      },
      "remoteUrls" : [
        "http://159.27.226.4/shared/shared_msgs.git"
      ],
      "scmName" : ""
    },
    {
      "_class" : "hudson.plugins.git.util.BuildData",
      "buildsByBranchName" : {
        "origin/feat_seg_search" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 93,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "1f2d4bba193c081333753beacba9711942d8d061",
            "branch" : [
              {
                "SHA1" : "1f2d4bba193c081333753beacba9711942d8d061",
                "name" : "origin/feat_seg_search"
              }
            ]
          },
          "revision" : {
            "SHA1" : "1f2d4bba193c081333753beacba9711942d8d061",
            "branch" : [
              {
                "SHA1" : "1f2d4bba193c081333753beacba9711942d8d061",
                "name" : "origin/feat_seg_search"
              }
            ]
          }
        },
        "origin/feat_trajectory_hairun" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 232,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "a6ca52e9398085bbca0b16c0f90752ccf6566234",
            "branch" : [
              {
                "SHA1" : "a6ca52e9398085bbca0b16c0f90752ccf6566234",
                "name" : "origin/feat_trajectory_hairun"
              }
            ]
          },
          "revision" : {
            "SHA1" : "a6ca52e9398085bbca0b16c0f90752ccf6566234",
            "branch" : [
              {
                "SHA1" : "a6ca52e9398085bbca0b16c0f90752ccf6566234",
                "name" : "origin/feat_trajectory_hairun"
              }
            ]
          }
        },
        "origin/dev" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 63,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "b4e0e85ad8402620d84951d23e4bb5650dca1343",
            "branch" : [
              {
                "SHA1" : "b4e0e85ad8402620d84951d23e4bb5650dca1343",
                "name" : "origin/dev"
              }
            ]
          },
          "revision" : {
            "SHA1" : "b4e0e85ad8402620d84951d23e4bb5650dca1343",
            "branch" : [
              {
                "SHA1" : "b4e0e85ad8402620d84951d23e4bb5650dca1343",
                "name" : "origin/dev"
              }
            ]
          }
        },
        "origin/feat_cargo_width" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 99,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "ef323519f4053526ae1bcd20176960964e6c8633",
            "branch" : [
              {
                "SHA1" : "ef323519f4053526ae1bcd20176960964e6c8633",
                "name" : "origin/feat_cargo_width"
              }
            ]
          },
          "revision" : {
            "SHA1" : "ef323519f4053526ae1bcd20176960964e6c8633",
            "branch" : [
              {
                "SHA1" : "ef323519f4053526ae1bcd20176960964e6c8633",
                "name" : "origin/feat_cargo_width"
              }
            ]
          }
        },
        "origin/feat-hdmap" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 19,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "211888f1f4e81f87514411e3bd1e3dc23a4ae046",
            "branch" : [
              {
                "SHA1" : "211888f1f4e81f87514411e3bd1e3dc23a4ae046",
                "name" : "origin/feat-hdmap"
              }
            ]
          },
          "revision" : {
            "SHA1" : "211888f1f4e81f87514411e3bd1e3dc23a4ae046",
            "branch" : [
              {
                "SHA1" : "211888f1f4e81f87514411e3bd1e3dc23a4ae046",
                "name" : "origin/feat-hdmap"
              }
            ]
          }
        },
        "origin/feat_keb_path_opt_task" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 172,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "2b57bede57cae7d46d77ec4338835f46c5ee058b",
            "branch" : [
              {
                "SHA1" : "2b57bede57cae7d46d77ec4338835f46c5ee058b",
                "name" : "origin/feat_keb_path_opt_task"
              }
            ]
          },
          "revision" : {
            "SHA1" : "2b57bede57cae7d46d77ec4338835f46c5ee058b",
            "branch" : [
              {
                "SHA1" : "2b57bede57cae7d46d77ec4338835f46c5ee058b",
                "name" : "origin/feat_keb_path_opt_task"
              }
            ]
          }
        },
        "origin/test_memory" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 252,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "67738e205e39589d6c30703df0efa42be003cb88",
            "branch" : [
              {
                "SHA1" : "67738e205e39589d6c30703df0efa42be003cb88",
                "name" : "origin/test_memory"
              }
            ]
          },
          "revision" : {
            "SHA1" : "67738e205e39589d6c30703df0efa42be003cb88",
            "branch" : [
              {
                "SHA1" : "67738e205e39589d6c30703df0efa42be003cb88",
                "name" : "origin/test_memory"
              }
            ]
          }
        },
        "origin/rc_dev" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 42,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "8a276051045d5bcf8975d9112b951db9f378f977",
            "branch" : [
              {
                "SHA1" : "8a276051045d5bcf8975d9112b951db9f378f977",
                "name" : "origin/rc_dev"
              }
            ]
          },
          "revision" : {
            "SHA1" : "8a276051045d5bcf8975d9112b951db9f378f977",
            "branch" : [
              {
                "SHA1" : "8a276051045d5bcf8975d9112b951db9f378f977",
                "name" : "origin/rc_dev"
              }
            ]
          }
        },
        "origin/feat_qg_ssep" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 54,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "b8183cc524608aa57116151c3a94876104092c1c",
            "branch" : [
              {
                "SHA1" : "b8183cc524608aa57116151c3a94876104092c1c",
                "name" : "origin/feat_qg_ssep"
              }
            ]
          },
          "revision" : {
            "SHA1" : "b8183cc524608aa57116151c3a94876104092c1c",
            "branch" : [
              {
                "SHA1" : "b8183cc524608aa57116151c3a94876104092c1c",
                "name" : "origin/feat_qg_ssep"
              }
            ]
          }
        },
        "origin/ssep-improve-latency" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 70,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "cce2893468756a73fa5c22ce00801cdb263554ac",
            "branch" : [
              {
                "SHA1" : "cce2893468756a73fa5c22ce00801cdb263554ac",
                "name" : "origin/ssep-improve-latency"
              }
            ]
          },
          "revision" : {
            "SHA1" : "cce2893468756a73fa5c22ce00801cdb263554ac",
            "branch" : [
              {
                "SHA1" : "cce2893468756a73fa5c22ce00801cdb263554ac",
                "name" : "origin/ssep-improve-latency"
              }
            ]
          }
        },
        "origin/feat_imv_pull_over" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 146,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "47dd1e17e3b7a1cacfa8af95d3a50e451c387dc1",
            "branch" : [
              {
                "SHA1" : "47dd1e17e3b7a1cacfa8af95d3a50e451c387dc1",
                "name" : "origin/feat_imv_pull_over"
              }
            ]
          },
          "revision" : {
            "SHA1" : "47dd1e17e3b7a1cacfa8af95d3a50e451c387dc1",
            "branch" : [
              {
                "SHA1" : "47dd1e17e3b7a1cacfa8af95d3a50e451c387dc1",
                "name" : "origin/feat_imv_pull_over"
              }
            ]
          }
        },
        "origin/feat_hdmap_dynamic_sidepass" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 26,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "855b734b901f8db3a414b8ccc6e0ebe23af1ad36",
            "branch" : [
              {
                "SHA1" : "855b734b901f8db3a414b8ccc6e0ebe23af1ad36",
                "name" : "origin/feat_hdmap_dynamic_sidepass"
              }
            ]
          },
          "revision" : {
            "SHA1" : "855b734b901f8db3a414b8ccc6e0ebe23af1ad36",
            "branch" : [
              {
                "SHA1" : "855b734b901f8db3a414b8ccc6e0ebe23af1ad36",
                "name" : "origin/feat_hdmap_dynamic_sidepass"
              }
            ]
          }
        },
        "origin/feat_seaside" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 78,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "1c310419f02ccbc4ffe03346ef48e0c1082b2230",
            "branch" : [
              {
                "SHA1" : "1c310419f02ccbc4ffe03346ef48e0c1082b2230",
                "name" : "origin/feat_seaside"
              }
            ]
          },
          "revision" : {
            "SHA1" : "1c310419f02ccbc4ffe03346ef48e0c1082b2230",
            "branch" : [
              {
                "SHA1" : "1c310419f02ccbc4ffe03346ef48e0c1082b2230",
                "name" : "origin/feat_seaside"
              }
            ]
          }
        },
        "origin/feat_new_lka" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 66,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "66a16339c67e3c9b7520db3b4b14164fd32096df",
            "branch" : [
              {
                "SHA1" : "66a16339c67e3c9b7520db3b4b14164fd32096df",
                "name" : "origin/feat_new_lka"
              }
            ]
          },
          "revision" : {
            "SHA1" : "66a16339c67e3c9b7520db3b4b14164fd32096df",
            "branch" : [
              {
                "SHA1" : "66a16339c67e3c9b7520db3b4b14164fd32096df",
                "name" : "origin/feat_new_lka"
              }
            ]
          }
        },
        "origin/feat_daxie" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 182,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "730037190ab095ff3004718347429c4e827549c3",
            "branch" : [
              {
                "SHA1" : "730037190ab095ff3004718347429c4e827549c3",
                "name" : "origin/feat_daxie"
              }
            ]
          },
          "revision" : {
            "SHA1" : "730037190ab095ff3004718347429c4e827549c3",
            "branch" : [
              {
                "SHA1" : "730037190ab095ff3004718347429c4e827549c3",
                "name" : "origin/feat_daxie"
              }
            ]
          }
        },
        "origin/feat_entrance" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 160,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "c1799d647646baf39936e2cd54e0d9300e13c41f",
            "branch" : [
              {
                "SHA1" : "c1799d647646baf39936e2cd54e0d9300e13c41f",
                "name" : "origin/feat_entrance"
              }
            ]
          },
          "revision" : {
            "SHA1" : "c1799d647646baf39936e2cd54e0d9300e13c41f",
            "branch" : [
              {
                "SHA1" : "c1799d647646baf39936e2cd54e0d9300e13c41f",
                "name" : "origin/feat_entrance"
              }
            ]
          }
        },
        "origin/feat_yangpu1" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 205,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "f5b95a7b89d7da92fddc7d2ad89ae3877d53cce3",
            "branch" : [
              {
                "SHA1" : "f5b95a7b89d7da92fddc7d2ad89ae3877d53cce3",
                "name" : "origin/feat_yangpu1"
              }
            ]
          },
          "revision" : {
            "SHA1" : "f5b95a7b89d7da92fddc7d2ad89ae3877d53cce3",
            "branch" : [
              {
                "SHA1" : "f5b95a7b89d7da92fddc7d2ad89ae3877d53cce3",
                "name" : "origin/feat_yangpu1"
              }
            ]
          }
        },
        "origin/feat_yangpu" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 181,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "15e9e4cee79dce43e032ac44ce5a5ee6b43a671e",
            "branch" : [
              {
                "SHA1" : "15e9e4cee79dce43e032ac44ce5a5ee6b43a671e",
                "name" : "origin/feat_yangpu"
              }
            ]
          },
          "revision" : {
            "SHA1" : "15e9e4cee79dce43e032ac44ce5a5ee6b43a671e",
            "branch" : [
              {
                "SHA1" : "15e9e4cee79dce43e032ac44ce5a5ee6b43a671e",
                "name" : "origin/feat_yangpu"
              }
            ]
          }
        },
        "origin/feat_bulk_target" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 24,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "0c20e4b451ce1fc8c5e1601a83aa468afcc7c3d0",
            "branch" : [
              {
                "SHA1" : "0c20e4b451ce1fc8c5e1601a83aa468afcc7c3d0",
                "name" : "origin/feat_bulk_target"
              }
            ]
          },
          "revision" : {
            "SHA1" : "0c20e4b451ce1fc8c5e1601a83aa468afcc7c3d0",
            "branch" : [
              {
                "SHA1" : "0c20e4b451ce1fc8c5e1601a83aa468afcc7c3d0",
                "name" : "origin/feat_bulk_target"
              }
            ]
          }
        },
        "origin/ssep-geometric-searcher-test" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 87,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "a3962d2cff5ec8603a3373cd7ac2c8ac6e52196c",
            "branch" : [
              {
                "SHA1" : "a3962d2cff5ec8603a3373cd7ac2c8ac6e52196c",
                "name" : "origin/ssep-geometric-searcher-test"
              }
            ]
          },
          "revision" : {
            "SHA1" : "a3962d2cff5ec8603a3373cd7ac2c8ac6e52196c",
            "branch" : [
              {
                "SHA1" : "a3962d2cff5ec8603a3373cd7ac2c8ac6e52196c",
                "name" : "origin/ssep-geometric-searcher-test"
              }
            ]
          }
        },
        "origin/feat_sidepass_lattice" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 264,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "7a2af46c413f2efcd3d1c7c4ef3395503baa4b48",
            "branch" : [
              {
                "SHA1" : "7a2af46c413f2efcd3d1c7c4ef3395503baa4b48",
                "name" : "origin/feat_sidepass_lattice"
              }
            ]
          },
          "revision" : {
            "SHA1" : "7a2af46c413f2efcd3d1c7c4ef3395503baa4b48",
            "branch" : [
              {
                "SHA1" : "7a2af46c413f2efcd3d1c7c4ef3395503baa4b48",
                "name" : "origin/feat_sidepass_lattice"
              }
            ]
          }
        },
        "origin/feat_ssep_wbca_2" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 84,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "4e3b89d5e54dc0b2df8c5c0a19e6f3fe2fd01160",
            "branch" : [
              {
                "SHA1" : "4e3b89d5e54dc0b2df8c5c0a19e6f3fe2fd01160",
                "name" : "origin/feat_ssep_wbca_2"
              }
            ]
          },
          "revision" : {
            "SHA1" : "4e3b89d5e54dc0b2df8c5c0a19e6f3fe2fd01160",
            "branch" : [
              {
                "SHA1" : "4e3b89d5e54dc0b2df8c5c0a19e6f3fe2fd01160",
                "name" : "origin/feat_ssep_wbca_2"
              }
            ]
          }
        },
        "origin/feat_target" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 72,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "071cc11c0f0ffd2e6888a6d45578ef6896cf5ae8",
            "branch" : [
              {
                "SHA1" : "071cc11c0f0ffd2e6888a6d45578ef6896cf5ae8",
                "name" : "origin/feat_target"
              }
            ]
          },
          "revision" : {
            "SHA1" : "071cc11c0f0ffd2e6888a6d45578ef6896cf5ae8",
            "branch" : [
              {
                "SHA1" : "071cc11c0f0ffd2e6888a6d45578ef6896cf5ae8",
                "name" : "origin/feat_target"
              }
            ]
          }
        },
        "origin/feat_below_plane_test" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 73,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "922d65d9be387c0451a1e082dd72d6bb314e0db7",
            "branch" : [
              {
                "SHA1" : "922d65d9be387c0451a1e082dd72d6bb314e0db7",
                "name" : "origin/feat_below_plane_test"
              }
            ]
          },
          "revision" : {
            "SHA1" : "922d65d9be387c0451a1e082dd72d6bb314e0db7",
            "branch" : [
              {
                "SHA1" : "922d65d9be387c0451a1e082dd72d6bb314e0db7",
                "name" : "origin/feat_below_plane_test"
              }
            ]
          }
        },
        "origin/feat_trajectory" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 256,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "f8293dba8599ba00452082c32441324eccbb320b",
            "branch" : [
              {
                "SHA1" : "f8293dba8599ba00452082c32441324eccbb320b",
                "name" : "origin/feat_trajectory"
              }
            ]
          },
          "revision" : {
            "SHA1" : "f8293dba8599ba00452082c32441324eccbb320b",
            "branch" : [
              {
                "SHA1" : "f8293dba8599ba00452082c32441324eccbb320b",
                "name" : "origin/feat_trajectory"
              }
            ]
          }
        },
        "origin/feat_below_plane" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 74,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "c9ebfad01a127e5898e2888f4c23c52bf6bd47a5",
            "branch" : [
              {
                "SHA1" : "c9ebfad01a127e5898e2888f4c23c52bf6bd47a5",
                "name" : "origin/feat_below_plane"
              }
            ]
          },
          "revision" : {
            "SHA1" : "c9ebfad01a127e5898e2888f4c23c52bf6bd47a5",
            "branch" : [
              {
                "SHA1" : "c9ebfad01a127e5898e2888f4c23c52bf6bd47a5",
                "name" : "origin/feat_below_plane"
              }
            ]
          }
        },
        "origin/feat_trajectory_daxie" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 211,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "97510c1a0394a537514724012f825fff6cf0f49e",
            "branch" : [
              {
                "SHA1" : "97510c1a0394a537514724012f825fff6cf0f49e",
                "name" : "origin/feat_trajectory_daxie"
              }
            ]
          },
          "revision" : {
            "SHA1" : "97510c1a0394a537514724012f825fff6cf0f49e",
            "branch" : [
              {
                "SHA1" : "97510c1a0394a537514724012f825fff6cf0f49e",
                "name" : "origin/feat_trajectory_daxie"
              }
            ]
          }
        },
        "origin/feat_yard_decider" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 36,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "130e3a5144dfbc78229bfd7f7a285af79da7c0b7",
            "branch" : [
              {
                "SHA1" : "130e3a5144dfbc78229bfd7f7a285af79da7c0b7",
                "name" : "origin/feat_yard_decider"
              }
            ]
          },
          "revision" : {
            "SHA1" : "130e3a5144dfbc78229bfd7f7a285af79da7c0b7",
            "branch" : [
              {
                "SHA1" : "130e3a5144dfbc78229bfd7f7a285af79da7c0b7",
                "name" : "origin/feat_yard_decider"
              }
            ]
          }
        },
        "origin/feat_safety_check" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 41,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "ecac62a3bbf419de26e1ffbed170e0f9662e42d6",
            "branch" : [
              {
                "SHA1" : "ecac62a3bbf419de26e1ffbed170e0f9662e42d6",
                "name" : "origin/feat_safety_check"
              }
            ]
          },
          "revision" : {
            "SHA1" : "ecac62a3bbf419de26e1ffbed170e0f9662e42d6",
            "branch" : [
              {
                "SHA1" : "ecac62a3bbf419de26e1ffbed170e0f9662e42d6",
                "name" : "origin/feat_safety_check"
              }
            ]
          }
        },
        "origin/feat_sidepass_decider" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 253,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "ed38742ac3653b98bffbf6039acd113a38e5c05d",
            "branch" : [
              {
                "SHA1" : "ed38742ac3653b98bffbf6039acd113a38e5c05d",
                "name" : "origin/feat_sidepass_decider"
              }
            ]
          },
          "revision" : {
            "SHA1" : "ed38742ac3653b98bffbf6039acd113a38e5c05d",
            "branch" : [
              {
                "SHA1" : "ed38742ac3653b98bffbf6039acd113a38e5c05d",
                "name" : "origin/feat_sidepass_decider"
              }
            ]
          }
        },
        "origin/feat_wbca" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 77,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "7bf8350f5954a3829f01f545009bf8d270641352",
            "branch" : [
              {
                "SHA1" : "7bf8350f5954a3829f01f545009bf8d270641352",
                "name" : "origin/feat_wbca"
              }
            ]
          },
          "revision" : {
            "SHA1" : "7bf8350f5954a3829f01f545009bf8d270641352",
            "branch" : [
              {
                "SHA1" : "7bf8350f5954a3829f01f545009bf8d270641352",
                "name" : "origin/feat_wbca"
              }
            ]
          }
        },
        "origin/feat_qg_speed_up" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 124,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "b0b5b8e15daf690eea56c5e9ca9ffcbf663c5868",
            "branch" : [
              {
                "SHA1" : "b0b5b8e15daf690eea56c5e9ca9ffcbf663c5868",
                "name" : "origin/feat_qg_speed_up"
              }
            ]
          },
          "revision" : {
            "SHA1" : "b0b5b8e15daf690eea56c5e9ca9ffcbf663c5868",
            "branch" : [
              {
                "SHA1" : "b0b5b8e15daf690eea56c5e9ca9ffcbf663c5868",
                "name" : "origin/feat_qg_speed_up"
              }
            ]
          }
        },
        "origin/feat_trajectory_qiangang" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 230,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "3c014a88a977f1fa72e9a25de08998423c6d4633",
            "branch" : [
              {
                "SHA1" : "3c014a88a977f1fa72e9a25de08998423c6d4633",
                "name" : "origin/feat_trajectory_qiangang"
              }
            ]
          },
          "revision" : {
            "SHA1" : "3c014a88a977f1fa72e9a25de08998423c6d4633",
            "branch" : [
              {
                "SHA1" : "3c014a88a977f1fa72e9a25de08998423c6d4633",
                "name" : "origin/feat_trajectory_qiangang"
              }
            ]
          }
        },
        "origin/feat-ssep-add-hd-map" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 139,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "2620ff25e73f69bcf7bf8357bbf8ebc92dc18676",
            "branch" : [
              {
                "SHA1" : "2620ff25e73f69bcf7bf8357bbf8ebc92dc18676",
                "name" : "origin/feat-ssep-add-hd-map"
              }
            ]
          },
          "revision" : {
            "SHA1" : "2620ff25e73f69bcf7bf8357bbf8ebc92dc18676",
            "branch" : [
              {
                "SHA1" : "2620ff25e73f69bcf7bf8357bbf8ebc92dc18676",
                "name" : "origin/feat-ssep-add-hd-map"
              }
            ]
          }
        },
        "origin/feat_ssep_serialize" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 45,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "8a08b172942144686e0aee3f1e4277f1e1abd54b",
            "branch" : [
              {
                "SHA1" : "8a08b172942144686e0aee3f1e4277f1e1abd54b",
                "name" : "origin/feat_ssep_serialize"
              }
            ]
          },
          "revision" : {
            "SHA1" : "8a08b172942144686e0aee3f1e4277f1e1abd54b",
            "branch" : [
              {
                "SHA1" : "8a08b172942144686e0aee3f1e4277f1e1abd54b",
                "name" : "origin/feat_ssep_serialize"
              }
            ]
          }
        },
        "origin/fix_ssep" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 90,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "739fda6e0362bc7273fae05e70c314ca9232d40d",
            "branch" : [
              {
                "SHA1" : "739fda6e0362bc7273fae05e70c314ca9232d40d",
                "name" : "origin/fix_ssep"
              }
            ]
          },
          "revision" : {
            "SHA1" : "739fda6e0362bc7273fae05e70c314ca9232d40d",
            "branch" : [
              {
                "SHA1" : "739fda6e0362bc7273fae05e70c314ca9232d40d",
                "name" : "origin/fix_ssep"
              }
            ]
          }
        },
        "origin/feat_clear_area" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 168,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "ec60685af092a1b9c7e92fccd81fa260c92c5fa3",
            "branch" : [
              {
                "SHA1" : "ec60685af092a1b9c7e92fccd81fa260c92c5fa3",
                "name" : "origin/feat_clear_area"
              }
            ]
          },
          "revision" : {
            "SHA1" : "ec60685af092a1b9c7e92fccd81fa260c92c5fa3",
            "branch" : [
              {
                "SHA1" : "ec60685af092a1b9c7e92fccd81fa260c92c5fa3",
                "name" : "origin/feat_clear_area"
              }
            ]
          }
        },
        "origin/feat_block_data" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 115,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "db34608a50a96a3b765d3406a955ccc71bdb97cd",
            "branch" : [
              {
                "SHA1" : "db34608a50a96a3b765d3406a955ccc71bdb97cd",
                "name" : "origin/feat_block_data"
              }
            ]
          },
          "revision" : {
            "SHA1" : "db34608a50a96a3b765d3406a955ccc71bdb97cd",
            "branch" : [
              {
                "SHA1" : "db34608a50a96a3b765d3406a955ccc71bdb97cd",
                "name" : "origin/feat_block_data"
              }
            ]
          }
        },
        "origin/feat_hairun" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 254,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "d72976ffcf1198dc889eebc4158ede7ff7a4b7e3",
            "branch" : [
              {
                "SHA1" : "d72976ffcf1198dc889eebc4158ede7ff7a4b7e3",
                "name" : "origin/feat_hairun"
              }
            ]
          },
          "revision" : {
            "SHA1" : "d72976ffcf1198dc889eebc4158ede7ff7a4b7e3",
            "branch" : [
              {
                "SHA1" : "d72976ffcf1198dc889eebc4158ede7ff7a4b7e3",
                "name" : "origin/feat_hairun"
              }
            ]
          }
        },
        "origin/feat_dynamic_hd_map" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 22,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "100e5c373b581d49b582fe53822105c159a4da7c",
            "branch" : [
              {
                "SHA1" : "100e5c373b581d49b582fe53822105c159a4da7c",
                "name" : "origin/feat_dynamic_hd_map"
              }
            ]
          },
          "revision" : {
            "SHA1" : "100e5c373b581d49b582fe53822105c159a4da7c",
            "branch" : [
              {
                "SHA1" : "100e5c373b581d49b582fe53822105c159a4da7c",
                "name" : "origin/feat_dynamic_hd_map"
              }
            ]
          }
        },
        "origin/feat_qiangang" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 216,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "aecf87a4b918714c30dc044500750f6fa06503db",
            "branch" : [
              {
                "SHA1" : "aecf87a4b918714c30dc044500750f6fa06503db",
                "name" : "origin/feat_qiangang"
              }
            ]
          },
          "revision" : {
            "SHA1" : "aecf87a4b918714c30dc044500750f6fa06503db",
            "branch" : [
              {
                "SHA1" : "aecf87a4b918714c30dc044500750f6fa06503db",
                "name" : "origin/feat_qiangang"
              }
            ]
          }
        },
        "origin/feat_trajectory_daxie_1" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 203,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "523d6e9237b447f388f4b65aeea122da2f3acaad",
            "branch" : [
              {
                "SHA1" : "523d6e9237b447f388f4b65aeea122da2f3acaad",
                "name" : "origin/feat_trajectory_daxie_1"
              }
            ]
          },
          "revision" : {
            "SHA1" : "523d6e9237b447f388f4b65aeea122da2f3acaad",
            "branch" : [
              {
                "SHA1" : "523d6e9237b447f388f4b65aeea122da2f3acaad",
                "name" : "origin/feat_trajectory_daxie_1"
              }
            ]
          }
        },
        "origin/feat_error" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 162,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "dc27b02eaf204e5b86844dff5a6fd5a9ba4b011e",
            "branch" : [
              {
                "SHA1" : "dc27b02eaf204e5b86844dff5a6fd5a9ba4b011e",
                "name" : "origin/feat_error"
              }
            ]
          },
          "revision" : {
            "SHA1" : "dc27b02eaf204e5b86844dff5a6fd5a9ba4b011e",
            "branch" : [
              {
                "SHA1" : "dc27b02eaf204e5b86844dff5a6fd5a9ba4b011e",
                "name" : "origin/feat_error"
              }
            ]
          }
        },
        "origin/feat_guide_line" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 62,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "269dc86109fc6f30abb1867a0b5f772fc79d963e",
            "branch" : [
              {
                "SHA1" : "269dc86109fc6f30abb1867a0b5f772fc79d963e",
                "name" : "origin/feat_guide_line"
              }
            ]
          },
          "revision" : {
            "SHA1" : "269dc86109fc6f30abb1867a0b5f772fc79d963e",
            "branch" : [
              {
                "SHA1" : "269dc86109fc6f30abb1867a0b5f772fc79d963e",
                "name" : "origin/feat_guide_line"
              }
            ]
          }
        },
        "origin/feat_qiangang_refactor" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 149,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "34ae0342b5807fc123efc3c6f60c40051b4c790b",
            "branch" : [
              {
                "SHA1" : "34ae0342b5807fc123efc3c6f60c40051b4c790b",
                "name" : "origin/feat_qiangang_refactor"
              }
            ]
          },
          "revision" : {
            "SHA1" : "34ae0342b5807fc123efc3c6f60c40051b4c790b",
            "branch" : [
              {
                "SHA1" : "34ae0342b5807fc123efc3c6f60c40051b4c790b",
                "name" : "origin/feat_qiangang_refactor"
              }
            ]
          }
        },
        "origin/feat_guide_line_lane_change" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 68,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "750928d90c49cdff7aeb05942e4d2ce1f4b60ed6",
            "branch" : [
              {
                "SHA1" : "750928d90c49cdff7aeb05942e4d2ce1f4b60ed6",
                "name" : "origin/feat_guide_line_lane_change"
              }
            ]
          },
          "revision" : {
            "SHA1" : "750928d90c49cdff7aeb05942e4d2ce1f4b60ed6",
            "branch" : [
              {
                "SHA1" : "750928d90c49cdff7aeb05942e4d2ce1f4b60ed6",
                "name" : "origin/feat_guide_line_lane_change"
              }
            ]
          }
        },
        "origin/feat_lock_station" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 91,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "b325409d2045146c3fb5153cf397609bdc8bfaf5",
            "branch" : [
              {
                "SHA1" : "b325409d2045146c3fb5153cf397609bdc8bfaf5",
                "name" : "origin/feat_lock_station"
              }
            ]
          },
          "revision" : {
            "SHA1" : "b325409d2045146c3fb5153cf397609bdc8bfaf5",
            "branch" : [
              {
                "SHA1" : "b325409d2045146c3fb5153cf397609bdc8bfaf5",
                "name" : "origin/feat_lock_station"
              }
            ]
          }
        },
        "origin/feat_pnc_scene_replay_web" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 275,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "d9bd27bd5353cad1c8e06248135cd4845f656dcf",
            "branch" : [
              {
                "SHA1" : "d9bd27bd5353cad1c8e06248135cd4845f656dcf",
                "name" : "origin/feat_pnc_scene_replay_web"
              }
            ]
          },
          "revision" : {
            "SHA1" : "d9bd27bd5353cad1c8e06248135cd4845f656dcf",
            "branch" : [
              {
                "SHA1" : "d9bd27bd5353cad1c8e06248135cd4845f656dcf",
                "name" : "origin/feat_pnc_scene_replay_web"
              }
            ]
          }
        },
        "origin/feat_escape" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 117,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "8b14b47dfe79ba6b02aaec39f789258ce5b8411b",
            "branch" : [
              {
                "SHA1" : "8b14b47dfe79ba6b02aaec39f789258ce5b8411b",
                "name" : "origin/feat_escape"
              }
            ]
          },
          "revision" : {
            "SHA1" : "8b14b47dfe79ba6b02aaec39f789258ce5b8411b",
            "branch" : [
              {
                "SHA1" : "8b14b47dfe79ba6b02aaec39f789258ce5b8411b",
                "name" : "origin/feat_escape"
              }
            ]
          }
        },
        "origin/feat_pnc_status" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 220,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "a0e27a4547573c85a1e22a137a9413f6591bd994",
            "branch" : [
              {
                "SHA1" : "a0e27a4547573c85a1e22a137a9413f6591bd994",
                "name" : "origin/feat_pnc_status"
              }
            ]
          },
          "revision" : {
            "SHA1" : "a0e27a4547573c85a1e22a137a9413f6591bd994",
            "branch" : [
              {
                "SHA1" : "a0e27a4547573c85a1e22a137a9413f6591bd994",
                "name" : "origin/feat_pnc_status"
              }
            ]
          }
        },
        "origin/feat_proto_jinxi" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 279,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "a9134bdaec29e5e572101316101ffe33eb3ab13a",
            "branch" : [
              {
                "SHA1" : "a9134bdaec29e5e572101316101ffe33eb3ab13a",
                "name" : "origin/feat_proto_jinxi"
              }
            ]
          },
          "revision" : {
            "SHA1" : "a9134bdaec29e5e572101316101ffe33eb3ab13a",
            "branch" : [
              {
                "SHA1" : "a9134bdaec29e5e572101316101ffe33eb3ab13a",
                "name" : "origin/feat_proto_jinxi"
              }
            ]
          }
        }
      },
      "lastBuiltRevision" : {
        "SHA1" : "a9134bdaec29e5e572101316101ffe33eb3ab13a",
        "branch" : [
          {
            "SHA1" : "a9134bdaec29e5e572101316101ffe33eb3ab13a",
            "name" : "origin/feat_proto_jinxi"
          }
        ]
      },
      "remoteUrls" : [
        "http://159.27.226.4/pnc/pnc.git"
      ],
      "scmName" : ""
    },
    {
      "_class" : "hudson.plugins.git.util.BuildData",
      "buildsByBranchName" : {
        "origin/rc_dev" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 279,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "a9c2e4d796a63e7fae98439c0d76ee577dfdf98f",
            "branch" : [
              {
                "SHA1" : "a9c2e4d796a63e7fae98439c0d76ee577dfdf98f",
                "name" : "origin/rc_dev"
              }
            ]
          },
          "revision" : {
            "SHA1" : "a9c2e4d796a63e7fae98439c0d76ee577dfdf98f",
            "branch" : [
              {
                "SHA1" : "a9c2e4d796a63e7fae98439c0d76ee577dfdf98f",
                "name" : "origin/rc_dev"
              }
            ]
          }
        },
        "origin/rc_dev_server" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 234,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "a18e8996e071f28b03d50561d4a7a303b05548f2",
            "branch" : [
              {
                "SHA1" : "a18e8996e071f28b03d50561d4a7a303b05548f2",
                "name" : "origin/rc_dev_server"
              }
            ]
          },
          "revision" : {
            "SHA1" : "a18e8996e071f28b03d50561d4a7a303b05548f2",
            "branch" : [
              {
                "SHA1" : "a18e8996e071f28b03d50561d4a7a303b05548f2",
                "name" : "origin/rc_dev_server"
              }
            ]
          }
        },
        "origin/new_temp_branch" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 43,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "40ff437c0c8c21f549e6d7ad8b6491ce2f713a2b",
            "branch" : [
              {
                "SHA1" : "40ff437c0c8c21f549e6d7ad8b6491ce2f713a2b",
                "name" : "origin/new_temp_branch"
              }
            ]
          },
          "revision" : {
            "SHA1" : "40ff437c0c8c21f549e6d7ad8b6491ce2f713a2b",
            "branch" : [
              {
                "SHA1" : "40ff437c0c8c21f549e6d7ad8b6491ce2f713a2b",
                "name" : "origin/new_temp_branch"
              }
            ]
          }
        }
      },
      "lastBuiltRevision" : {
        "SHA1" : "a9c2e4d796a63e7fae98439c0d76ee577dfdf98f",
        "branch" : [
          {
            "SHA1" : "a9c2e4d796a63e7fae98439c0d76ee577dfdf98f",
            "name" : "origin/rc_dev"
          }
        ]
      },
      "remoteUrls" : [
        "http://159.27.226.4/map/hdmap.git"
      ],
      "scmName" : ""
    },
    {
      "_class" : "hudson.plugins.git.util.BuildData",
      "buildsByBranchName" : {
        "origin/feat-backtrace-guideline" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 123,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "d81274a3424a663f175a966b0d268e5324805a6f",
            "branch" : [
              {
                "SHA1" : "d81274a3424a663f175a966b0d268e5324805a6f",
                "name" : "origin/feat-backtrace-guideline"
              }
            ]
          },
          "revision" : {
            "SHA1" : "d81274a3424a663f175a966b0d268e5324805a6f",
            "branch" : [
              {
                "SHA1" : "d81274a3424a663f175a966b0d268e5324805a6f",
                "name" : "origin/feat-backtrace-guideline"
              }
            ]
          }
        },
        "origin/feat_guide_line_params" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 137,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "423841c3ae1b2c94b8819eee1e39f3e49c0c2015",
            "branch" : [
              {
                "SHA1" : "423841c3ae1b2c94b8819eee1e39f3e49c0c2015",
                "name" : "origin/feat_guide_line_params"
              }
            ]
          },
          "revision" : {
            "SHA1" : "423841c3ae1b2c94b8819eee1e39f3e49c0c2015",
            "branch" : [
              {
                "SHA1" : "423841c3ae1b2c94b8819eee1e39f3e49c0c2015",
                "name" : "origin/feat_guide_line_params"
              }
            ]
          }
        },
        "origin/feat-hd-map-guide-line" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 81,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "9fa32a78444314bc6afc91c039f4700425329faf",
            "branch" : [
              {
                "SHA1" : "9fa32a78444314bc6afc91c039f4700425329faf",
                "name" : "origin/feat-hd-map-guide-line"
              }
            ]
          },
          "revision" : {
            "SHA1" : "9fa32a78444314bc6afc91c039f4700425329faf",
            "branch" : [
              {
                "SHA1" : "9fa32a78444314bc6afc91c039f4700425329faf",
                "name" : "origin/feat-hd-map-guide-line"
              }
            ]
          }
        },
        "origin/feat_error" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 144,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "6029ac1075c76d5304a601b10f5c5d138b494a27",
            "branch" : [
              {
                "SHA1" : "6029ac1075c76d5304a601b10f5c5d138b494a27",
                "name" : "origin/feat_error"
              }
            ]
          },
          "revision" : {
            "SHA1" : "6029ac1075c76d5304a601b10f5c5d138b494a27",
            "branch" : [
              {
                "SHA1" : "6029ac1075c76d5304a601b10f5c5d138b494a27",
                "name" : "origin/feat_error"
              }
            ]
          }
        },
        "origin/feat_yangpu1" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 256,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "906d66ed9b1f1d07bace94a7e3a6cfb3fbedc8da",
            "branch" : [
              {
                "SHA1" : "906d66ed9b1f1d07bace94a7e3a6cfb3fbedc8da",
                "name" : "origin/feat_yangpu1"
              }
            ]
          },
          "revision" : {
            "SHA1" : "906d66ed9b1f1d07bace94a7e3a6cfb3fbedc8da",
            "branch" : [
              {
                "SHA1" : "906d66ed9b1f1d07bace94a7e3a6cfb3fbedc8da",
                "name" : "origin/feat_yangpu1"
              }
            ]
          }
        },
        "origin/feat_video" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 220,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "4f6079626fac0814fd86a4226b950e162d200d2a",
            "branch" : [
              {
                "SHA1" : "4f6079626fac0814fd86a4226b950e162d200d2a",
                "name" : "origin/feat_video"
              }
            ]
          },
          "revision" : {
            "SHA1" : "4f6079626fac0814fd86a4226b950e162d200d2a",
            "branch" : [
              {
                "SHA1" : "4f6079626fac0814fd86a4226b950e162d200d2a",
                "name" : "origin/feat_video"
              }
            ]
          }
        },
        "origin/feat-hdmap" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 20,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "a7db98b3c109b4169d7e97f72929274e2274425a",
            "branch" : [
              {
                "SHA1" : "a7db98b3c109b4169d7e97f72929274e2274425a",
                "name" : "origin/feat-hdmap"
              }
            ]
          },
          "revision" : {
            "SHA1" : "a7db98b3c109b4169d7e97f72929274e2274425a",
            "branch" : [
              {
                "SHA1" : "a7db98b3c109b4169d7e97f72929274e2274425a",
                "name" : "origin/feat-hdmap"
              }
            ]
          }
        },
        "origin/feat_proto" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 279,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "5a8afeb4f643aca52931691776c46a13e7431950",
            "branch" : [
              {
                "SHA1" : "5a8afeb4f643aca52931691776c46a13e7431950",
                "name" : "origin/feat_proto"
              }
            ]
          },
          "revision" : {
            "SHA1" : "5a8afeb4f643aca52931691776c46a13e7431950",
            "branch" : [
              {
                "SHA1" : "5a8afeb4f643aca52931691776c46a13e7431950",
                "name" : "origin/feat_proto"
              }
            ]
          }
        },
        "origin/feat-hdmap-tls" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 15,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "efcbf5383594957c399dd24cdcf8fcd0e54b7739",
            "branch" : [
              {
                "SHA1" : "efcbf5383594957c399dd24cdcf8fcd0e54b7739",
                "name" : "origin/feat-hdmap-tls"
              }
            ]
          },
          "revision" : {
            "SHA1" : "efcbf5383594957c399dd24cdcf8fcd0e54b7739",
            "branch" : [
              {
                "SHA1" : "efcbf5383594957c399dd24cdcf8fcd0e54b7739",
                "name" : "origin/feat-hdmap-tls"
              }
            ]
          }
        },
        "origin/test_memory" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 239,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "678787ba9ead9bb6b801a2432779256490486ebd",
            "branch" : [
              {
                "SHA1" : "678787ba9ead9bb6b801a2432779256490486ebd",
                "name" : "origin/test_memory"
              }
            ]
          },
          "revision" : {
            "SHA1" : "678787ba9ead9bb6b801a2432779256490486ebd",
            "branch" : [
              {
                "SHA1" : "678787ba9ead9bb6b801a2432779256490486ebd",
                "name" : "origin/test_memory"
              }
            ]
          }
        },
        "origin/feat_qiangang_refactor" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 264,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "f599bd15490c1a71d53d031f9fde52455d7e1efd",
            "branch" : [
              {
                "SHA1" : "f599bd15490c1a71d53d031f9fde52455d7e1efd",
                "name" : "origin/feat_qiangang_refactor"
              }
            ]
          },
          "revision" : {
            "SHA1" : "f599bd15490c1a71d53d031f9fde52455d7e1efd",
            "branch" : [
              {
                "SHA1" : "f599bd15490c1a71d53d031f9fde52455d7e1efd",
                "name" : "origin/feat_qiangang_refactor"
              }
            ]
          }
        },
        "origin/feat-backtrace-params" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 154,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "c437b710b2a39863e854a56ed4e1dd0ff5908874",
            "branch" : [
              {
                "SHA1" : "c437b710b2a39863e854a56ed4e1dd0ff5908874",
                "name" : "origin/feat-backtrace-params"
              }
            ]
          },
          "revision" : {
            "SHA1" : "c437b710b2a39863e854a56ed4e1dd0ff5908874",
            "branch" : [
              {
                "SHA1" : "c437b710b2a39863e854a56ed4e1dd0ff5908874",
                "name" : "origin/feat-backtrace-params"
              }
            ]
          }
        },
        "origin/feat-dynamic-hd-map" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 94,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "a36f87ad291b4d6514b70f73cfea182fccc6d4d6",
            "branch" : [
              {
                "SHA1" : "a36f87ad291b4d6514b70f73cfea182fccc6d4d6",
                "name" : "origin/feat-dynamic-hd-map"
              }
            ]
          },
          "revision" : {
            "SHA1" : "a36f87ad291b4d6514b70f73cfea182fccc6d4d6",
            "branch" : [
              {
                "SHA1" : "a36f87ad291b4d6514b70f73cfea182fccc6d4d6",
                "name" : "origin/feat-dynamic-hd-map"
              }
            ]
          }
        },
        "origin/feat_record" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 170,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "e97a73494aad16ff90be4c2504e1c879de3ac47e",
            "branch" : [
              {
                "SHA1" : "e97a73494aad16ff90be4c2504e1c879de3ac47e",
                "name" : "origin/feat_record"
              }
            ]
          },
          "revision" : {
            "SHA1" : "e97a73494aad16ff90be4c2504e1c879de3ac47e",
            "branch" : [
              {
                "SHA1" : "e97a73494aad16ff90be4c2504e1c879de3ac47e",
                "name" : "origin/feat_record"
              }
            ]
          }
        },
        "origin/cloud_dev" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 14,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "75e91f1e59f5f53309becad366d945acaa73e8f9",
            "branch" : [
              {
                "SHA1" : "75e91f1e59f5f53309becad366d945acaa73e8f9",
                "name" : "origin/cloud_dev"
              }
            ]
          },
          "revision" : {
            "SHA1" : "75e91f1e59f5f53309becad366d945acaa73e8f9",
            "branch" : [
              {
                "SHA1" : "75e91f1e59f5f53309becad366d945acaa73e8f9",
                "name" : "origin/cloud_dev"
              }
            ]
          }
        },
        "origin/feat_refactor" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 179,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "22b1c689217dc3921dd4cce343fae39f66d7eacc",
            "branch" : [
              {
                "SHA1" : "22b1c689217dc3921dd4cce343fae39f66d7eacc",
                "name" : "origin/feat_refactor"
              }
            ]
          },
          "revision" : {
            "SHA1" : "22b1c689217dc3921dd4cce343fae39f66d7eacc",
            "branch" : [
              {
                "SHA1" : "22b1c689217dc3921dd4cce343fae39f66d7eacc",
                "name" : "origin/feat_refactor"
              }
            ]
          }
        }
      },
      "lastBuiltRevision" : {
        "SHA1" : "5a8afeb4f643aca52931691776c46a13e7431950",
        "branch" : [
          {
            "SHA1" : "5a8afeb4f643aca52931691776c46a13e7431950",
            "name" : "origin/feat_proto"
          }
        ]
      },
      "remoteUrls" : [
        "http://159.27.226.4/pnc/telediagnostic.git"
      ],
      "scmName" : ""
    },
    {
      "_class" : "hudson.plugins.git.util.BuildData",
      "buildsByBranchName" : {
        "origin/new_interface" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 24,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "8e3d73d05b31d968e9d56ef209a74d467338df41",
            "branch" : [
              {
                "SHA1" : "8e3d73d05b31d968e9d56ef209a74d467338df41",
                "name" : "origin/new_interface"
              }
            ]
          },
          "revision" : {
            "SHA1" : "8e3d73d05b31d968e9d56ef209a74d467338df41",
            "branch" : [
              {
                "SHA1" : "8e3d73d05b31d968e9d56ef209a74d467338df41",
                "name" : "origin/new_interface"
              }
            ]
          }
        },
        "origin/temp_interface" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 26,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "f1f32b4fc822b16926742a0ffedd3d014e6bccf5",
            "branch" : [
              {
                "SHA1" : "f1f32b4fc822b16926742a0ffedd3d014e6bccf5",
                "name" : "origin/temp_interface"
              }
            ]
          },
          "revision" : {
            "SHA1" : "f1f32b4fc822b16926742a0ffedd3d014e6bccf5",
            "branch" : [
              {
                "SHA1" : "f1f32b4fc822b16926742a0ffedd3d014e6bccf5",
                "name" : "origin/temp_interface"
              }
            ]
          }
        },
        "origin/rc_dev" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 279,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "baaa7dbe0743898225ca422520bae8e624a4d3e1",
            "branch" : [
              {
                "SHA1" : "baaa7dbe0743898225ca422520bae8e624a4d3e1",
                "name" : "origin/rc_dev"
              }
            ]
          },
          "revision" : {
            "SHA1" : "baaa7dbe0743898225ca422520bae8e624a4d3e1",
            "branch" : [
              {
                "SHA1" : "baaa7dbe0743898225ca422520bae8e624a4d3e1",
                "name" : "origin/rc_dev"
              }
            ]
          }
        },
        "origin/rc_dev_add_lane_name" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 137,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "92e309ac89bf47d56624f14970eb911f54f1049b",
            "branch" : [
              {
                "SHA1" : "92e309ac89bf47d56624f14970eb911f54f1049b",
                "name" : "origin/rc_dev_add_lane_name"
              }
            ]
          },
          "revision" : {
            "SHA1" : "92e309ac89bf47d56624f14970eb911f54f1049b",
            "branch" : [
              {
                "SHA1" : "92e309ac89bf47d56624f14970eb911f54f1049b",
                "name" : "origin/rc_dev_add_lane_name"
              }
            ]
          }
        }
      },
      "lastBuiltRevision" : {
        "SHA1" : "baaa7dbe0743898225ca422520bae8e624a4d3e1",
        "branch" : [
          {
            "SHA1" : "baaa7dbe0743898225ca422520bae8e624a4d3e1",
            "name" : "origin/rc_dev"
          }
        ]
      },
      "remoteUrls" : [
        "http://159.27.226.4/map/hdmap_interface.git"
      ],
      "scmName" : ""
    },
    {
      
    },
    {
      
    },
    {
      
    },
    {
      
    },
    {
      
    },
    {
      
    },
    {
      
    },
    {
      
    },
    {
      
    },
    {
      "_class" : "org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction"
    },
    {
      "_class" : "org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction"
    },
    {
      
    },
    {
      "_class" : "org.jenkinsci.plugins.workflow.job.views.FlowGraphAction"
    },
    {
      
    },
    {
      
    },
    {
      
    }
  ],
  "artifacts" : [
    
  ],
  "building" : false,
  "description" : null,
  "displayName" : "#279",
  "duration" : 1154936,
  "estimatedDuration" : 1461071,
  "executor" : null,
  "fullDisplayName" : "telediagnostic #279",
  "id" : "279",
  "keepLog" : false,
  "number" : 279,
  "queueId" : 1332750,
  "result" : "SUCCESS",
  "timestamp" : 1791425053621,
  "url" : "http://159.27.114.184:8080/jenkins/view/all/job/telediagnostic/279/",
  "changeSets" : [
    {
      "_class" : "hudson.plugins.git.GitChangeSetList",
      "items" : [
        {
          "_class" : "hudson.plugins.git.GitChangeSet",
          "affectedPaths" : [
            "src/org/orin/repoinfoRos2.groovy"
          ],
          "commitId" : "299f4a1da14488e245511feafa2e9e7fe6b4d39c",
          "timestamp" : 1790216116000,
          "author" : {
            "absoluteUrl" : "http://159.27.114.184:8080/jenkins/user/weilikang",
            "fullName" : "weilikang"
          },
          "authorEmail" : "weilikang@senior.auto",
          "comment" : "Update repoinfoRos2.groovy\u000a",
          "date" : "2026-09-24 02:15:16 +0000",
          "id" : "299f4a1da14488e245511feafa2e9e7fe6b4d39c",
          "msg" : "Update repoinfoRos2.groovy",
          "paths" : [
            {
              "editType" : "edit",
              "file" : "src/org/orin/repoinfoRos2.groovy"
            }
          ]
        },
        {
          "_class" : "hudson.plugins.git.GitChangeSet",
          "affectedPaths" : [
            "src/org/orin/orinRos2Choice.groovy"
          ],
          "commitId" : "7c8ef19b25de560705ce7ade95fdb663757f8486",
          "timestamp" : 1790216187000,
          "author" : {
            "absoluteUrl" : "http://159.27.114.184:8080/jenkins/user/weilikang",
            "fullName" : "weilikang"
          },
          "authorEmail" : "weilikang@senior.auto",
          "comment" : "Update orinRos2Choice.groovy\u000a",
          "date" : "2026-09-24 02:16:27 +0000",
          "id" : "7c8ef19b25de560705ce7ade95fdb663757f8486",
          "msg" : "Update orinRos2Choice.groovy",
          "paths" : [
            {
              "editType" : "edit",
              "file" : "src/org/orin/orinRos2Choice.groovy"
            }
          ]
        },
        {
          "_class" : "hudson.plugins.git.GitChangeSet",
          "affectedPaths" : [
            "src/org/orin/orinRos2ModuleChoice.groovy"
          ],
          "commitId" : "f09c021a81971db2896460d64812c58df83cfd1d",
          "timestamp" : 1790216246000,
          "author" : {
            "absoluteUrl" : "http://159.27.114.184:8080/jenkins/user/weilikang",
            "fullName" : "weilikang"
          },
          "authorEmail" : "weilikang@senior.auto",
          "comment" : "Update orinRos2ModuleChoice.groovy\u000a",
          "date" : "2026-09-24 02:17:26 +0000",
          "id" : "f09c021a81971db2896460d64812c58df83cfd1d",
          "msg" : "Update orinRos2ModuleChoice.groovy",
          "paths" : [
            {
              "editType" : "edit",
              "file" : "src/org/orin/orinRos2ModuleChoice.groovy"
            }
          ]
        },
        {
          "_class" : "hudson.plugins.git.GitChangeSet",
          "affectedPaths" : [
            "src/org/orin/orinBuild.groovy"
          ],
          "commitId" : "1ac25fc70c733a4f875503e4020e050ee11ae286",
          "timestamp" : 1790577794000,
          "author" : {
            "absoluteUrl" : "http://159.27.114.184:8080/jenkins/user/weilikang",
            "fullName" : "weilikang"
          },
          "authorEmail" : "weilikang@senior.auto",
          "comment" : "Update orinBuild.groovy\u000a",
          "date" : "2026-09-28 06:43:14 +0000",
          "id" : "1ac25fc70c733a4f875503e4020e050ee11ae286",
          "msg" : "Update orinBuild.groovy",
          "paths" : [
            {
              "editType" : "edit",
              "file" : "src/org/orin/orinBuild.groovy"
            }
          ]
        },
        {
          "_class" : "hudson.plugins.git.GitChangeSet",
          "affectedPaths" : [
            "src/org/orin/orinBuild.groovy"
          ],
          "commitId" : "a2450de5463404adb431da22040e1268ca55f342",
          "timestamp" : 1790578841000,
          "author" : {
            "absoluteUrl" : "http://159.27.114.184:8080/jenkins/user/weilikang",
            "fullName" : "weilikang"
          },
          "authorEmail" : "weilikang@senior.auto",
          "comment" : "Update orinBuild.groovy\u000a",
          "date" : "2026-09-28 07:00:41 +0000",
          "id" : "a2450de5463404adb431da22040e1268ca55f342",
          "msg" : "Update orinBuild.groovy",
          "paths" : [
            {
              "editType" : "edit",
              "file" : "src/org/orin/orinBuild.groovy"
            }
          ]
        },
        {
          "_class" : "hudson.plugins.git.GitChangeSet",
          "affectedPaths" : [
            "src/org/orin/orinBuild.groovy"
          ],
          "commitId" : "318bb29b0e2e2657aa5a1e34351af98425619666",
          "timestamp" : 1790648429000,
          "author" : {
            "absoluteUrl" : "http://159.27.114.184:8080/jenkins/user/weilikang",
            "fullName" : "weilikang"
          },
          "authorEmail" : "weilikang@senior.auto",
          "comment" : "Update orinBuild.groovy\u000a",
          "date" : "2026-09-29 02:20:29 +0000",
          "id" : "318bb29b0e2e2657aa5a1e34351af98425619666",
          "msg" : "Update orinBuild.groovy",
          "paths" : [
            {
              "editType" : "edit",
              "file" : "src/org/orin/orinBuild.groovy"
            }
          ]
        },
        {
          "_class" : "hudson.plugins.git.GitChangeSet",
          "affectedPaths" : [
            "src/org/orin/orinBuild.groovy"
          ],
          "commitId" : "fdec94c27b315bbf30b3ceaaca6996a6b994bd24",
          "timestamp" : 1790650223000,
          "author" : {
            "absoluteUrl" : "http://159.27.114.184:8080/jenkins/user/weilikang",
            "fullName" : "weilikang"
          },
          "authorEmail" : "weilikang@senior.auto",
          "comment" : "Update orinBuild.groovy\u000a",
          "date" : "2026-09-29 02:50:23 +0000",
          "id" : "fdec94c27b315bbf30b3ceaaca6996a6b994bd24",
          "msg" : "Update orinBuild.groovy",
          "paths" : [
            {
              "editType" : "edit",
              "file" : "src/org/orin/orinBuild.groovy"
            }
          ]
        },
        {
          "_class" : "hudson.plugins.git.GitChangeSet",
          "affectedPaths" : [
            "src/org/orin/orinBuild.groovy"
          ],
          "commitId" : "ace93c5f054bd4cdb84fc3599b1d2404865d2923",
          "timestamp" : 1790650516000,
          "author" : {
            "absoluteUrl" : "http://159.27.114.184:8080/jenkins/user/weilikang",
            "fullName" : "weilikang"
          },
          "authorEmail" : "weilikang@senior.auto",
          "comment" : "Update orinBuild.groovy\u000a",
          "date" : "2026-09-29 02:55:16 +0000",
          "id" : "ace93c5f054bd4cdb84fc3599b1d2404865d2923",
          "msg" : "Update orinBuild.groovy",
          "paths" : [
            {
              "editType" : "edit",
              "file" : "src/org/orin/orinBuild.groovy"
            }
          ]
        },
        {
          "_class" : "hudson.plugins.git.GitChangeSet",
          "affectedPaths" : [
            "src/org/orin/orinBuild.groovy"
          ],
          "commitId" : "ad388410157fa83ebf64ed28b030927f2518ea82",
          "timestamp" : 1790651157000,
          "author" : {
            "absoluteUrl" : "http://159.27.114.184:8080/jenkins/user/weilikang",
            "fullName" : "weilikang"
          },
          "authorEmail" : "weilikang@senior.auto",
          "comment" : "Update orinBuild.groovy\u000a",
          "date" : "2026-09-29 03:05:57 +0000",
          "id" : "ad388410157fa83ebf64ed28b030927f2518ea82",
          "msg" : "Update orinBuild.groovy",
          "paths" : [
            {
              "editType" : "edit",
              "file" : "src/org/orin/orinBuild.groovy"
            }
          ]
        }
      ],
      "kind" : "git"
    },
    {
      "_class" : "hudson.plugins.git.GitChangeSetList",
      "items" : [
        {
          "_class" : "hudson.plugins.git.GitChangeSet",
          "affectedPaths" : [
            "orin/orin-ros1-cross.jenkinsfile"
          ],
          "commitId" : "263ab0f4178f76b308cabe4f5f6a126e442c83f0",
          "timestamp" : 1790230955000,
          "author" : {
            "absoluteUrl" : "http://159.27.114.184:8080/jenkins/user/weilikang",
            "fullName" : "weilikang"
          },
          "authorEmail" : "weilikang@senior.auto",
          "comment" : "Add new file\u000a",
          "date" : "2026-09-24 06:22:35 +0000",
          "id" : "263ab0f4178f76b308cabe4f5f6a126e442c83f0",
          "msg" : "Add new file",
          "paths" : [
            {
              "editType" : "add",
              "file" : "orin/orin-ros1-cross.jenkinsfile"
            }
          ]
        },
        {
          "_class" : "hudson.plugins.git.GitChangeSet",
          "affectedPaths" : [
            "orin/orin-ros1-cross.jenkinsfile"
          ],
          "commitId" : "27aca61a22cf3891ae6758351145d6fbdc9d57ae",
          "timestamp" : 1790245718000,
          "author" : {
            "absoluteUrl" : "http://159.27.114.184:8080/jenkins/user/weilikang",
            "fullName" : "weilikang"
          },
          "authorEmail" : "weilikang@senior.auto",
          "comment" : "Update orin-ros1-cross.jenkinsfile\u000a",
          "date" : "2026-09-24 10:28:38 +0000",
          "id" : "27aca61a22cf3891ae6758351145d6fbdc9d57ae",
          "msg" : "Update orin-ros1-cross.jenkinsfile",
          "paths" : [
            {
              "editType" : "edit",
              "file" : "orin/orin-ros1-cross.jenkinsfile"
            }
          ]
        },
        {
          "_class" : "hudson.plugins.git.GitChangeSet",
          "affectedPaths" : [
            "orin/orin-ros1-cross.jenkinsfile"
          ],
          "commitId" : "392cab94ba74e0eb095fadaae7790ddecff77838",
          "timestamp" : 1790246643000,
          "author" : {
            "absoluteUrl" : "http://159.27.114.184:8080/jenkins/user/weilikang",
            "fullName" : "weilikang"
          },
          "authorEmail" : "weilikang@senior.auto",
          "comment" : "Update orin-ros1-cross.jenkinsfile\u000a",
          "date" : "2026-09-24 10:44:03 +0000",
          "id" : "392cab94ba74e0eb095fadaae7790ddecff77838",
          "msg" : "Update orin-ros1-cross.jenkinsfile",
          "paths" : [
            {
              "editType" : "edit",
              "file" : "orin/orin-ros1-cross.jenkinsfile"
            }
          ]
        },
        {
          "_class" : "hudson.plugins.git.GitChangeSet",
          "affectedPaths" : [
            "orin/orin-ros1-cross.jenkinsfile"
          ],
          "commitId" : "ab0addfebacb1fd256702aba6b15722f9c4f4350",
          "timestamp" : 1790246967000,
          "author" : {
            "absoluteUrl" : "http://159.27.114.184:8080/jenkins/user/weilikang",
            "fullName" : "weilikang"
          },
          "authorEmail" : "weilikang@senior.auto",
          "comment" : "Update orin-ros1-cross.jenkinsfile\u000a",
          "date" : "2026-09-24 10:49:27 +0000",
          "id" : "ab0addfebacb1fd256702aba6b15722f9c4f4350",
          "msg" : "Update orin-ros1-cross.jenkinsfile",
          "paths" : [
            {
              "editType" : "edit",
              "file" : "orin/orin-ros1-cross.jenkinsfile"
            }
          ]
        },
        {
          "_class" : "hudson.plugins.git.GitChangeSet",
          "affectedPaths" : [
            "orin/orin-ros1-cross.jenkinsfile"
          ],
          "commitId" : "6d72a2e4dfe7ff8bcccf97ac251c83ee8dfe7519",
          "timestamp" : 1790247100000,
          "author" : {
            "absoluteUrl" : "http://159.27.114.184:8080/jenkins/user/weilikang",
            "fullName" : "weilikang"
          },
          "authorEmail" : "weilikang@senior.auto",
          "comment" : "Update orin-ros1-cross.jenkinsfile\u000a",
          "date" : "2026-09-24 10:51:40 +0000",
          "id" : "6d72a2e4dfe7ff8bcccf97ac251c83ee8dfe7519",
          "msg" : "Update orin-ros1-cross.jenkinsfile",
          "paths" : [
            {
              "editType" : "edit",
              "file" : "orin/orin-ros1-cross.jenkinsfile"
            }
          ]
        },
        {
          "_class" : "hudson.plugins.git.GitChangeSet",
          "affectedPaths" : [
            "module-ros2.jenkinsfile"
          ],
          "commitId" : "1c3baaa120296d1ebb025662a4341bed1270806b",
          "timestamp" : 1790580199000,
          "author" : {
            "absoluteUrl" : "http://159.27.114.184:8080/jenkins/user/weilikang",
            "fullName" : "weilikang"
          },
          "authorEmail" : "weilikang@senior.auto",
          "comment" : "Update module-ros2.jenkinsfile\u000a",
          "date" : "2026-09-28 07:23:19 +0000",
          "id" : "1c3baaa120296d1ebb025662a4341bed1270806b",
          "msg" : "Update module-ros2.jenkinsfile",
          "paths" : [
            {
              "editType" : "edit",
              "file" : "module-ros2.jenkinsfile"
            }
          ]
        },
        {
          "_class" : "hudson.plugins.git.GitChangeSet",
          "affectedPaths" : [
            "module-ros2.jenkinsfile"
          ],
          "commitId" : "10c391a1b686e5b2ada1dbf43f1453acba0113ac",
          "timestamp" : 1790580232000,
          "author" : {
            "absoluteUrl" : "http://159.27.114.184:8080/jenkins/user/weilikang",
            "fullName" : "weilikang"
          },
          "authorEmail" : "weilikang@senior.auto",
          "comment" : "Update module-ros2.jenkinsfile\u000a",
          "date" : "2026-09-28 07:23:52 +0000",
          "id" : "10c391a1b686e5b2ada1dbf43f1453acba0113ac",
          "msg" : "Update module-ros2.jenkinsfile",
          "paths" : [
            {
              "editType" : "edit",
              "file" : "module-ros2.jenkinsfile"
            }
          ]
        },
        {
          "_class" : "hudson.plugins.git.GitChangeSet",
          "affectedPaths" : [
            "module-ros2.jenkinsfile"
          ],
          "commitId" : "f1a40abe825d795c13de58ea3192a7131f125109",
          "timestamp" : 1790581382000,
          "author" : {
            "absoluteUrl" : "http://159.27.114.184:8080/jenkins/user/weilikang",
            "fullName" : "weilikang"
          },
          "authorEmail" : "weilikang@senior.auto",
          "comment" : "Update module-ros2.jenkinsfile\u000a",
          "date" : "2026-09-28 07:43:02 +0000",
          "id" : "f1a40abe825d795c13de58ea3192a7131f125109",
          "msg" : "Update module-ros2.jenkinsfile",
          "paths" : [
            {
              "editType" : "edit",
              "file" : "module-ros2.jenkinsfile"
            }
          ]
        },
        {
          "_class" : "hudson.plugins.git.GitChangeSet",
          "affectedPaths" : [
            "module-ros2.jenkinsfile"
          ],
          "commitId" : "33a01a8377ea3e184ee49aadc4b6880f5d9c10ee",
          "timestamp" : 1790581661000,
          "author" : {
            "absoluteUrl" : "http://159.27.114.184:8080/jenkins/user/weilikang",
            "fullName" : "weilikang"
          },
          "authorEmail" : "weilikang@senior.auto",
          "comment" : "Update module-ros2.jenkinsfile\u000a",
          "date" : "2026-09-28 07:47:41 +0000",
          "id" : "33a01a8377ea3e184ee49aadc4b6880f5d9c10ee",
          "msg" : "Update module-ros2.jenkinsfile",
          "paths" : [
            {
              "editType" : "edit",
              "file" : "module-ros2.jenkinsfile"
            }
          ]
        },
        {
          "_class" : "hudson.plugins.git.GitChangeSet",
          "affectedPaths" : [
            "module-ros2.jenkinsfile"
          ],
          "commitId" : "ee0e39d1ec5209db872bf5d1da1ed8403fe9e667",
          "timestamp" : 1790581688000,
          "author" : {
            "absoluteUrl" : "http://159.27.114.184:8080/jenkins/user/weilikang",
            "fullName" : "weilikang"
          },
          "authorEmail" : "weilikang@senior.auto",
          "comment" : "Update module-ros2.jenkinsfile\u000a",
          "date" : "2026-09-28 07:48:08 +0000",
          "id" : "ee0e39d1ec5209db872bf5d1da1ed8403fe9e667",
          "msg" : "Update module-ros2.jenkinsfile",
          "paths" : [
            {
              "editType" : "edit",
              "file" : "module-ros2.jenkinsfile"
            }
          ]
        },
        {
          "_class" : "hudson.plugins.git.GitChangeSet",
          "affectedPaths" : [
            "module-ros2.jenkinsfile"
          ],
          "commitId" : "a8307dc7c0c05d8222191dffd96bed99f7c6a88f",
          "timestamp" : 1790583426000,
          "author" : {
            "absoluteUrl" : "http://159.27.114.184:8080/jenkins/user/weilikang",
            "fullName" : "weilikang"
          },
          "authorEmail" : "weilikang@senior.auto",
          "comment" : "Update module-ros2.jenkinsfile\u000a",
          "date" : "2026-09-28 08:17:06 +0000",
          "id" : "a8307dc7c0c05d8222191dffd96bed99f7c6a88f",
          "msg" : "Update module-ros2.jenkinsfile",
          "paths" : [
            {
              "editType" : "edit",
              "file" : "module-ros2.jenkinsfile"
            }
          ]
        },
        {
          "_class" : "hudson.plugins.git.GitChangeSet",
          "affectedPaths" : [
            "module-ros2.jenkinsfile"
          ],
          "commitId" : "24f9c3d3844facdc7af96e1893122383611c270d",
          "timestamp" : 1790584275000,
          "author" : {
            "absoluteUrl" : "http://159.27.114.184:8080/jenkins/user/weilikang",
            "fullName" : "weilikang"
          },
          "authorEmail" : "weilikang@senior.auto",
          "comment" : "Update module-ros2.jenkinsfile\u000a",
          "date" : "2026-09-28 08:31:15 +0000",
          "id" : "24f9c3d3844facdc7af96e1893122383611c270d",
          "msg" : "Update module-ros2.jenkinsfile",
          "paths" : [
            {
              "editType" : "edit",
              "file" : "module-ros2.jenkinsfile"
            }
          ]
        }
      ],
      "kind" : "git"
    },
    {
      "_class" : "hudson.plugins.git.GitChangeSetList",
      "items" : [
        {
          "_class" : "hudson.plugins.git.GitChangeSet",
          "affectedPaths" : [
            "Testing/ssep_path_corridor_test.cpp",
            "tasks/plan/keb_utils.cpp",
            "scenarios/task_condition_evaluator.cpp",
            "tasks/plan/keb_utils.hpp"
          ],
          "commitId" : "ebf79838cebf70c654ad674503a1cedbe50bb8c0",
          "timestamp" : 1790185524000,
          "author" : {
            "absoluteUrl" : "http://159.27.114.184:8080/jenkins/user/wuyanjun110",
            "fullName" : "wuyanjun110"
          },
          "authorEmail" : "wuyanjun110@126.com",
          "comment" : "fix: 按任务终点与路口中点选择堆场规划器\u000a\u000a使用当前行驶段剩余距离判断任务终点是否越过进出场路口中点，避免延长引导线和区域提前判定误触发 KEB。终点在中点或之前时按已开启的堆场 PJPO 开关选择 PJPO，超过中点时保留 KEB。\u000a\u000a选择器与 KEB 目标构造共用终点检查，保留缺输入报错及带缓存路口的尾段复用。补充中点边界、规划器切换、换向段终点、无效输入与连续路口回归。分布式编译及 19 项相关测试通过。\u000a",
          "date" : "2026-09-24 01:45:24 +0800",
          "id" : "ebf79838cebf70c654ad674503a1cedbe50bb8c0",
          "msg" : "fix: 按任务终点与路口中点选择堆场规划器",
          "paths" : [
            {
              "editType" : "edit",
              "file" : "Testing/ssep_path_corridor_test.cpp"
            },
            {
              "editType" : "edit",
              "file" : "scenarios/task_condition_evaluator.cpp"
            },
            {
              "editType" : "edit",
              "file" : "tasks/plan/keb_utils.hpp"
            },
            {
              "editType" : "edit",
              "file" : "tasks/plan/keb_utils.cpp"
            }
          ]
        },
        {
          "_class" : "hudson.plugins.git.GitChangeSet",
          "affectedPaths" : [
            "data/config/cfg_env_const.hpp",
            "math/filter/median_filter.hpp",
            "replayer/scene_data/generated/full_custom_cpp_member_inputs.json",
            "data/config/cfg_env_const.cpp",
            "CMakeLists.txt",
            "replayer/scene_data/compact_custom_field_proto_codec.cpp",
            "Testing/scene_replay_foundation_test.cpp",
            "tools/pnc_proto_mapper/audit_full_custom_codecs.py",
            "data/constrain/temporary_stop_data.cpp",
            "replayer/scene_data/generated/plan_frame_encoder.cpp",
            "replayer/scene_data/full_proto_custom_encoder.cpp",
            "docs/pnc_algorithm_replay/plan_frame_persistence_catalog.md",
            "proto/decision.proto",
            "data/constrain/temporary_stop_data.hpp",
            "data/constrain/block_data.cpp",
            "replayer/scene_data/generated/compact_scene_descriptor.pb",
            "replayer/scene_data/generated/plan_frame_field_roles.json",
            "proto/pnc_scene/compact_plan_frame_fields.proto",
            "replayer/scene_data/generated/full_custom_codec_coverage_audit.yaml",
            "proto/config.proto",
            "Testing/disable_stop_regression_test.cpp",
            "replayer/scene_data/generated/compact_typed_field_codec.cpp",
            "replayer/scene_data/config_proto_codec.cpp",
            "replayer/scene_data/compact_numeric_policy.yaml",
            "data/constrain/disable_stop_range.cpp",
            "replayer/scene_data/config_proto_codec.hpp",
            "data/constrain/disable_stop_range.hpp",
            "replayer/scene_data/plan_frame_nested_persistence_review.yaml",
            "docs/pnc_algorithm_replay/plan_frame_field_workflow.md",
            "Testing/disable_stop_queue_test.cpp",
            "replayer/scene_data/plan_frame_full_mapping.yaml",
            "replayer/scene_data/plan_frame_persistence_policy.yaml",
            "data/constrain/disable_stop_queue.hpp",
            "replayer/scene_data/plan_frame_field_roles.csv",
            "data/constrain/block_data.hpp",
            "Testing/CMakeLists.txt",
            "replayer/scene_data/generated/scene_replay_api_descriptor.pb",
            "replayer/scene_data/generated/plan_frame_descriptor.pb"
          ],
          "commitId" : "70146373ee82184f8d33a368003d6fc2f3c8eb94",
          "timestamp" : 1790220559000,
          "author" : {
            "absoluteUrl" : "http://159.27.114.184:8080/jenkins/user/wuyanjun110",
            "fullName" : "wuyanjun110"
          },
          "authorEmail" : "wuyanjun110@126.com",
          "comment" : "fix: 合入禁停队列预测并修正整车范围与缓存退出\u000a\u000a仅合入 6055d1444943aeae3754e02473b6ba418b9ab5cb，保留当前分支的信号灯禁停策略和 can_jump 语义。\u000a\u000a路口与普通禁停区已扩展整车长度，预测匹配避免重复计入；岸桥保留挂车占用判断。通过点锚点缺失时按累计位移推进缓存，并在整段通过后退出。修复连续过期条目清理的迭代器失效。\u000a\u000a按帧复用队列预测结果，保持原前车选择与预测参数；删除 use_func_disable_stop_debug_ 参数及专用日志。\u000a\u000a为新增预测、滤波窗口、保持状态、路口缓存和入口偏移补齐 typed Full/Compact 合同及回放测试；统一显式空 Full codec 的生成与审计语义。\u000a\u000a验证：分布式构建 pnc_node 和两个测试目标成功；routing_map_guard 78 项通过，scene_replay_foundation 288 项通过、2 项因缺可选样本跳过；其中 3 项本地服务测试解除端口沙箱限制后重跑通过。生成检查、Proto breaking 检查和持久化目录检查通过。\u000a",
          "date" : "2026-09-24 11:29:19 +0800",
          "id" : "70146373ee82184f8d33a368003d6fc2f3c8eb94",
          "msg" : "fix: 合入禁停队列预测并修正整车范围与缓存退出",
          "paths" : [
            {
              "editType" : "edit",
              "file" : "replayer/scene_data/generated/compact_typed_field_codec.cpp"
            },
            {
              "editType" : "edit",
              "file" : "replayer/scene_data/generated/plan_frame_descriptor.pb"
            },
            {
              "editType" : "edit",
              "file" : "replayer/scene_data/plan_frame_nested_persistence_review.yaml"
            },
            {
              "editType" : "edit",
              "file" : "replayer/scene_data/config_proto_codec.hpp"
            },
            {
              "editType" : "edit",
              "file" : "replayer/scene_data/generated/full_custom_codec_coverage_audit.yaml"
            },
            {
              "editType" : "edit",
              "file" : "data/constrain/block_data.cpp"
            },
            {
              "editType" : "edit",
              "file" : "replayer/scene_data/generated/compact_scene_descriptor.pb"
            },
            {
              "editType" : "edit",
              "file" : "replayer/scene_data/plan_frame_full_mapping.yaml"
            },
            {
              "editType" : "edit",
              "file" : "docs/pnc_algorithm_replay/plan_frame_field_workflow.md"
            },
            {
              "editType" : "add",
              "file" : "Testing/disable_stop_queue_test.cpp"
            },
            {
              "editType" : "edit",
              "file" : "replayer/scene_data/compact_custom_field_proto_codec.cpp"
            },
            {
              "editType" : "edit",
              "file" : "Testing/CMakeLists.txt"
            },
            {
              "editType" : "edit",
              "file" : "replayer/scene_data/generated/plan_frame_encoder.cpp"
            },
            {
              "editType" : "add",
              "file" : "data/constrain/disable_stop_queue.hpp"
            },
            {
              "editType" : "edit",
              "file" : "data/config/cfg_env_const.cpp"
            },
            {
              "editType" : "add",
              "file" : "Testing/disable_stop_regression_test.cpp"
            },
            {
              "editType" : "edit",
              "file" : "data/constrain/disable_stop_range.hpp"
            },
            {
              "editType" : "edit",
              "file" : "replayer/scene_data/generated/plan_frame_field_roles.json"
            },
            {
              "editType" : "edit",
              "file" : "data/constrain/temporary_stop_data.hpp"
            },
            {
              "editType" : "edit",
              "file" : "replayer/scene_data/full_proto_custom_encoder.cpp"
            },
            {
              "editType" : "edit",
              "file" : "data/constrain/disable_stop_range.cpp"
            },
            {
              "editType" : "edit",
              "file" : "replayer/scene_data/plan_frame_field_roles.csv"
            },
            {
              "editType" : "edit",
              "file" : "replayer/scene_data/generated/scene_replay_api_descriptor.pb"
            },
            {
              "editType" : "edit",
              "file" : "replayer/scene_data/plan_frame_persistence_policy.yaml"
            },
            {
              "editType" : "edit",
              "file" : "tools/pnc_proto_mapper/audit_full_custom_codecs.py"
            },
            {
              "editType" : "edit",
              "file" : "replayer/scene_data/compact_numeric_policy.yaml"
            },
            {
              "editType" : "edit",
              "file" : "Testing/scene_replay_foundation_test.cpp"
            },
            {
              "editType" : "edit",
              "file" : "CMakeLists.txt"
            },
            {
              "editType" : "edit",
              "file" : "math/filter/median_filter.hpp"
            },
            {
              "editType" : "edit",
              "file" : "data/constrain/block_data.hpp"
            },
            {
              "editType" : "edit",
              "file" : "proto/decision.proto"
            },
            {
              "editType" : "edit",
              "file" : "replayer/scene_data/config_proto_codec.cpp"
            },
            {
              "editType" : "edit",
              "file" : "data/config/cfg_env_const.hpp"
            },
            {
              "editType" : "edit",
              "file" : "proto/config.proto"
            },
            {
              "editType" : "edit",
              "file" : "proto/pnc_scene/compact_plan_frame_fields.proto"
            },
            {
              "editType" : "edit",
              "file" : "data/constrain/temporary_stop_data.cpp"
            },
            {
              "editType" : "edit",
              "file" : "docs/pnc_algorithm_replay/plan_frame_persistence_catalog.md"
            },
            {
              "editType" : "edit",
              "file" : "replayer/scene_data/generated/full_custom_cpp_member_inputs.json"
            }
          ]
        },
        {
          "_class" : "hudson.plugins.git.GitChangeSet",
          "affectedPaths" : [
            "docs/pnc_algorithm_replay/proto_generation.md",
            "AGENTS.md",
            "docs/pnc_algorithm_replay/plan_frame_field_workflow.md"
          ],
          "commitId" : "344373f6f048c4464359e98d3c30ed0af1229ce2",
          "timestamp" : 1790221008000,
          "author" : {
            "absoluteUrl" : "http://159.27.114.184:8080/jenkins/user/wuyanjun110",
            "fullName" : "wuyanjun110"
          },
          "authorEmail" : "wuyanjun110@126.com",
          "comment" : "docs: 补充多分支 Proto 兼容与发布规范\u000a\u000a明确固定 baseline 检查无法覆盖并行分支冲突，要求统一核对字段编号、对活跃发布版本检查描述符及双向读写，并记录发布物合同。将流程提醒加入 AGENTS.md，供后续代码修改遵循。\u000a",
          "date" : "2026-09-24 11:36:48 +0800",
          "id" : "344373f6f048c4464359e98d3c30ed0af1229ce2",
          "msg" : "docs: 补充多分支 Proto 兼容与发布规范",
          "paths" : [
            {
              "editType" : "edit",
              "file" : "AGENTS.md"
            },
            {
              "editType" : "edit",
              "file" : "docs/pnc_algorithm_replay/proto_generation.md"
            },
            {
              "editType" : "edit",
              "file" : "docs/pnc_algorithm_replay/plan_frame_field_workflow.md"
            }
          ]
        },
        {
          "_class" : "hudson.plugins.git.GitChangeSet",
          "affectedPaths" : [
            "data/obstacle/cluster_lane_change_safety_test.cpp"
          ],
          "commitId" : "de3f72d5741168549187d530d99818f0700baae7",
          "timestamp" : 1790250243000,
          "author" : {
            "absoluteUrl" : "http://159.27.114.184:8080/jenkins/user/wuyanjun110",
            "fullName" : "wuyanjun110"
          },
          "authorEmail" : "wuyanjun110@126.com",
          "comment" : "test: 适配临时停车范围的障碍物参数\u000a\u000a为凸包换道安全测试补齐 AddDisableRange 新增的障碍物映射参数，恢复测试目标编译。\u000a",
          "date" : "2026-09-24 19:44:03 +0800",
          "id" : "de3f72d5741168549187d530d99818f0700baae7",
          "msg" : "test: 适配临时停车范围的障碍物参数",
          "paths" : [
            {
              "editType" : "edit",
              "file" : "data/obstacle/cluster_lane_change_safety_test.cpp"
            }
          ]
        },
        {
          "_class" : "hudson.plugins.git.GitChangeSet",
          "affectedPaths" : [
            "data/boundary/driving_corridor.cpp",
            "data/boundary/driving_corridor_test.cpp"
          ],
          "commitId" : "67d43604b8c435034219db009741feec09406e3d",
          "timestamp" : 1790250243000,
          "author" : {
            "absoluteUrl" : "http://159.27.114.184:8080/jenkins/user/wuyanjun110",
            "fullName" : "wuyanjun110"
          },
          "authorEmail" : "wuyanjun110@126.com",
          "comment" : "fix: 避免会车准备段过度收缩绕行空间\u000a\u000a会车近侧目标保持在统一 SL 坐标系，移除按源段与当地安全右界差值平移目标的逻辑，避免将远处静态障碍缺口扩大到上游。保留源段可行性和当地完整车宽保护，并补充障碍缺口与借道宽度变化回归。\u000a",
          "date" : "2026-09-24 19:44:03 +0800",
          "id" : "67d43604b8c435034219db009741feec09406e3d",
          "msg" : "fix: 避免会车准备段过度收缩绕行空间",
          "paths" : [
            {
              "editType" : "edit",
              "file" : "data/boundary/driving_corridor_test.cpp"
            },
            {
              "editType" : "edit",
              "file" : "data/boundary/driving_corridor.cpp"
            }
          ]
        },
        {
          "_class" : "hudson.plugins.git.GitChangeSet",
          "affectedPaths" : [
            "replayer/scene_data/generated/compact_scene_descriptor.pb",
            "replayer/scene_data/generated/plan_frame_field_roles.json",
            "data/obstacle/decision/obstacle_decision_test.cpp",
            "replayer/scene_data/generated/full_custom_codec_coverage_audit.yaml",
            "replayer/scene_data/generated/full_custom_cpp_member_inputs.json",
            "data/obstacle/obstacle.hpp",
            "replayer/scene_data/compact_numeric_policy.yaml",
            "tools/pnc_proto_mapper/sync_container_schema.py",
            "data/obstacle/decision/obstacle_decision.hpp",
            "data/obstacle/decision/obstacle_decision.cpp",
            "replayer/scene_data/obstacle_proto_codec.cpp",
            "Testing/compact_driving_corridor_restore_test.cpp",
            "Testing/scene_replay_foundation_test.cpp",
            "docs/pnc_algorithm_replay/plan_frame_field_workflow.md",
            "tools/pnc_proto_mapper/test_container_schema_registration.py",
            "replayer/scene_data/plan_frame_field_roles.csv",
            "replayer/scene_data/generated/container_schema_inputs.json",
            "replayer/scene_data/generated/plan_frame_encoder.cpp",
            "replayer/scene_data/generated/scene_replay_api_descriptor.pb",
            "proto/obstacle.proto",
            "replayer/scene_data/generated/plan_frame_descriptor.pb"
          ],
          "commitId" : "3673d874187d6c64feb572f3f1d9755df30c1caa",
          "timestamp" : 1790250262000,
          "author" : {
            "absoluteUrl" : "http://159.27.114.184:8080/jenkins/user/wuyanjun110",
            "fullName" : "wuyanjun110"
          },
          "authorEmail" : "wuyanjun110@126.com",
          "comment" : "fix: 保留静止障碍物短时漏检后的绕行确认依据\u000a\u000a保存最长 0.5 秒的同 ID 静止确认依据，恢复前核对类型、跟踪年龄、位置、尺寸及原始和滤波运动证据。仅恢复确认计数，绕行策略与承诺仍按当前场景计算，避免 OBJ 与凸包反复切换造成重复等待。\u000a\u000a在 feat_proto_jinxi 登记 ObstaclesProto 字段 8，同步 Full、Compact 和 Candidate 编解码及缺字段默认行为，修复旧容器清单覆盖新字段登记的问题。新增生命周期、运动否决、合同兼容与带宽回归。\u000a\u000a验证：分布式构建 pnc_node、pnc_replayer 及测试目标通过；162 项决策与走廊测试、290 项回放测试通过。453 场景 90 帧回放验证第 41、65、74 帧恢复即允许绕行，初次检测仍等待确认；合同生成及兼容检查通过。\u000a",
          "date" : "2026-09-24 19:44:22 +0800",
          "id" : "3673d874187d6c64feb572f3f1d9755df30c1caa",
          "msg" : "fix: 保留静止障碍物短时漏检后的绕行确认依据",
          "paths" : [
            {
              "editType" : "edit",
              "file" : "data/obstacle/decision/obstacle_decision.hpp"
            },
            {
              "editType" : "edit",
              "file" : "replayer/scene_data/plan_frame_field_roles.csv"
            },
            {
              "editType" : "edit",
              "file" : "replayer/scene_data/generated/full_custom_codec_coverage_audit.yaml"
            },
            {
              "editType" : "edit",
              "file" : "replayer/scene_data/generated/scene_replay_api_descriptor.pb"
            },
            {
              "editType" : "edit",
              "file" : "Testing/scene_replay_foundation_test.cpp"
            },
            {
              "editType" : "edit",
              "file" : "replayer/scene_data/generated/compact_scene_descriptor.pb"
            },
            {
              "editType" : "edit",
              "file" : "replayer/scene_data/obstacle_proto_codec.cpp"
            },
            {
              "editType" : "edit",
              "file" : "replayer/scene_data/generated/container_schema_inputs.json"
            },
            {
              "editType" : "edit",
              "file" : "replayer/scene_data/generated/plan_frame_descriptor.pb"
            },
            {
              "editType" : "edit",
              "file" : "data/obstacle/obstacle.hpp"
            },
            {
              "editType" : "edit",
              "file" : "data/obstacle/decision/obstacle_decision.cpp"
            },
            {
              "editType" : "edit",
              "file" : "proto/obstacle.proto"
            },
            {
              "editType" : "edit",
              "file" : "replayer/scene_data/generated/plan_frame_encoder.cpp"
            },
            {
              "editType" : "edit",
              "file" : "docs/pnc_algorithm_replay/plan_frame_field_workflow.md"
            },
            {
              "editType" : "edit",
              "file" : "Testing/compact_driving_corridor_restore_test.cpp"
            },
            {
              "editType" : "edit",
              "file" : "tools/pnc_proto_mapper/sync_container_schema.py"
            },
            {
              "editType" : "edit",
              "file" : "replayer/scene_data/generated/full_custom_cpp_member_inputs.json"
            },
            {
              "editType" : "edit",
              "file" : "replayer/scene_data/generated/plan_frame_field_roles.json"
            },
            {
              "editType" : "edit",
              "file" : "data/obstacle/decision/obstacle_decision_test.cpp"
            },
            {
              "editType" : "edit",
              "file" : "replayer/scene_data/compact_numeric_policy.yaml"
            },
            {
              "editType" : "add",
              "file" : "tools/pnc_proto_mapper/test_container_schema_registration.py"
            }
          ]
        },
        {
          "_class" : "hudson.plugins.git.GitChangeSet",
          "affectedPaths" : [
            "Testing/task_align_terminal_stop_test.cpp",
            "Testing/CMakeLists.txt",
            "data/app/fsm/task_fsm/task_align_fsm/task_align_fsm.cpp"
          ],
          "commitId" : "e146a0387c90cd0e721513f101f7f0fb507312e6",
          "timestamp" : 1790572026000,
          "author" : {
            "absoluteUrl" : "http://159.27.114.184:8080/jenkins/user/wuyanjun110",
            "fullName" : "wuyanjun110"
          },
          "authorEmail" : "wuyanjun110@126.com",
          "comment" : "fix: 修复一次对准终点停车后未进入锁定状态\u000a\u000a允许车辆已静止且因绝对终点停车进入 STOP_CTRL 时，在正向偏差不超过停车线接管阈值的情况下进入 ALIGN_LOCK，避免约 2 cm 剩余偏差使任务停留在 ALIGN_1ST。保留原有负偏差转换行为，并补充距离边界、静止条件和停车原因回归测试。\u000a",
          "date" : "2026-09-28 13:07:06 +0800",
          "id" : "e146a0387c90cd0e721513f101f7f0fb507312e6",
          "msg" : "fix: 修复一次对准终点停车后未进入锁定状态",
          "paths" : [
            {
              "editType" : "add",
              "file" : "Testing/task_align_terminal_stop_test.cpp"
            },
            {
              "editType" : "edit",
              "file" : "data/app/fsm/task_fsm/task_align_fsm/task_align_fsm.cpp"
            },
            {
              "editType" : "edit",
              "file" : "Testing/CMakeLists.txt"
            }
          ]
        },
        {
          "_class" : "hudson.plugins.git.GitChangeSet",
          "affectedPaths" : [
            "offboard/keb_vis_server/test_heading_diagnostics.js",
            "data/config/cfg_hmi_layer_mapping.yaml",
            "offboard/keb_vis_server/keb_vis_html_template.cc",
            "replayer/scene_data/hmi_layer_manifest.yaml",
            "ssep/offboard/servers/scene_vis_html_template.cc",
            "hmi/widget/pnc_mat_shared.cpp",
            "replayer/scene_data/generated/hmi_layer_catalog.cpp",
            "ssep/offboard/servers/test_heading_diagnostics.js",
            "hmi/draw/draw_all.cpp",
            "hmi/draw/draw_keb_debug.hpp",
            "hmi/draw/keb_heading_deviation.hpp",
            "hmi/draw/draw_keb_debug.cpp",
            "Testing/CMakeLists.txt",
            "Testing/keb_heading_deviation_test.cpp"
          ],
          "commitId" : "1e690475945ef9fb1b162332ff6e4d6e221df555",
          "timestamp" : 1790585514000,
          "author" : {
            "absoluteUrl" : "http://159.27.114.184:8080/jenkins/user/wuyanjun110",
            "fullName" : "wuyanjun110"
          },
          "authorEmail" : "wuyanjun110@126.com",
          "comment" : "feat: 为 KEB 可视化标注最大航向偏差\u000a\u000a在 HMI 的 SSEP/实时 KEB、独立 KEB 网页和场景网页中标注车头与挂车最大角差点、车框、点序号和角度。\u000a按到达方向处理倒车和换向，使用挂车后轴几何；缺挡位时明确采用轴线差，IMV 按 beta 可用性标注。\u000a补充 C++/JavaScript 回归和 HMI 图层登记，覆盖首点未知方向、换向后最大点、零值字段及退化路径。\u000a",
          "date" : "2026-09-28 16:51:54 +0800",
          "id" : "1e690475945ef9fb1b162332ff6e4d6e221df555",
          "msg" : "feat: 为 KEB 可视化标注最大航向偏差",
          "paths" : [
            {
              "editType" : "edit",
              "file" : "replayer/scene_data/generated/hmi_layer_catalog.cpp"
            },
            {
              "editType" : "add",
              "file" : "offboard/keb_vis_server/test_heading_diagnostics.js"
            },
            {
              "editType" : "edit",
              "file" : "Testing/CMakeLists.txt"
            },
            {
              "editType" : "edit",
              "file" : "hmi/draw/draw_keb_debug.hpp"
            },
            {
              "editType" : "edit",
              "file" : "replayer/scene_data/hmi_layer_manifest.yaml"
            },
            {
              "editType" : "add",
              "file" : "hmi/draw/keb_heading_deviation.hpp"
            },
            {
              "editType" : "edit",
              "file" : "ssep/offboard/servers/scene_vis_html_template.cc"
            },
            {
              "editType" : "edit",
              "file" : "hmi/draw/draw_keb_debug.cpp"
            },
            {
              "editType" : "add",
              "file" : "Testing/keb_heading_deviation_test.cpp"
            },
            {
              "editType" : "edit",
              "file" : "data/config/cfg_hmi_layer_mapping.yaml"
            },
            {
              "editType" : "add",
              "file" : "ssep/offboard/servers/test_heading_diagnostics.js"
            },
            {
              "editType" : "edit",
              "file" : "hmi/widget/pnc_mat_shared.cpp"
            },
            {
              "editType" : "edit",
              "file" : "offboard/keb_vis_server/keb_vis_html_template.cc"
            },
            {
              "editType" : "edit",
              "file" : "hmi/draw/draw_all.cpp"
            }
          ]
        },
        {
          "_class" : "hudson.plugins.git.GitChangeSet",
          "affectedPaths" : [
            "ssep/offboard/servers/scene_vis_html_template.cc"
          ],
          "commitId" : "ef78186a4b5cda1ac989eb14077fc05504d3bdf4",
          "timestamp" : 1790585525000,
          "author" : {
            "absoluteUrl" : "http://159.27.114.184:8080/jenkins/user/wuyanjun110",
            "fullName" : "wuyanjun110"
          },
          "authorEmail" : "wuyanjun110@126.com",
          "comment" : "feat: 为场景网页增加搜索起终点车框开关\u000a\u000a在图例中分别控制搜索起点和终点的车头框、挂车框及位置标记，默认保持显示。\u000a兼容 Proto JSON 省略的零值坐标和朝向；已通过浏览器独立隐藏与恢复验证。\u000a",
          "date" : "2026-09-28 16:52:05 +0800",
          "id" : "ef78186a4b5cda1ac989eb14077fc05504d3bdf4",
          "msg" : "feat: 为场景网页增加搜索起终点车框开关",
          "paths" : [
            {
              "editType" : "edit",
              "file" : "ssep/offboard/servers/scene_vis_html_template.cc"
            }
          ]
        },
        {
          "_class" : "hudson.plugins.git.GitChangeSet",
          "affectedPaths" : [
            "ssep/coarse_search/searcher_builders/tractor_trailer_bidirectional_searcher_builder.cc",
            "ssep/scenarios/truck_multi_seg_general_planner.h",
            "ssep/test/coarse_search_stop_clearance_test.cc",
            "ssep/coarse_search/searcher_builders/imv_bidirectional_searcher_builder.h",
            "ssep/test/gpu_collision_disk_packing_test.cc",
            "ssep/scenarios/imv_exit_parking_spot_planner.h",
            "ssep/keb_optimizer/keb_problem.cc",
            "ssep/coarse_search/searcher_builders/truck_reference_following_searcher_builder.cc",
            "ssep/test/keb_normal_extension_test.cc",
            "ssep/scenarios/imv_enter_yard_planner.h",
            "data/config/cfg_lat_plan.cpp",
            "ssep/coarse_search/searcher_builders/tractor_trailer_general_searcher_builder.cc",
            "ssep/test/bidirectional_stop_collision_test.cc",
            "replayer/scene_data/generated/compact_scene_descriptor.pb",
            "ssep/coarse_search/evaluator/trailer_collision_cost_computer.h",
            "ssep/coarse_search/searcher_builders/imv_general_searcher_builder.cc",
            "ssep/keb_optimizer/imv_keb_optimizer.h",
            "ssep/test/gpu_collision_test.cc",
            "ssep/coarse_search/searcher_builders/tractor_trailer_lane_change_searcher_builder.cc",
            "ssep/scenarios/truck_general_planner.h",
            "ssep/coarse_search/gpu_context.cc",
            "tasks/plan/keb_utils_core.hpp",
            "ssep/keb_optimizer/tractor_trailer_keb_optimizer.cc",
            "ssep/coarse_search/bidirectional_hybrid_astar_search_engine.cc",
            "docs/pnc_algorithm_replay/plan_frame_field_workflow.md",
            "ssep/coarse_search/searcher_builders/tractor_trailer_lane_change_searcher_builder.h",
            "ssep/keb_optimizer/keb_problem.h",
            "ssep/coarse_search/searcher_builders/tractor_trailer_single_segment_parking_searcher_builder.h",
            "ssep/scenarios/straddle_carrier_pick_vehicle_planner.h",
            "ssep/keb_optimizer/rigid_truck_keb_optimizer.h",
            "ssep/test/CMakeLists.txt",
            "tasks/plan/keb_path_optimize_task.cpp",
            "ssep/coarse_search/geometric_searcher/bulk_yard_geometric_searcher.cc",
            "ssep/coarse_search/gpu_collision_disk_packing.h",
            "ssep/scenarios/two_stage_planner_composer.h",
            "data/config/cfg_lat_plan.hpp",
            "ssep/scenarios/imv_enter_station_planner.h",
            "ssep/scenarios/tractor_trailer_enter_parking_spot_planner.h",
            "ssep/scenarios/forward_collision_check_params.h",
            "ssep/keb_optimizer/keb_utils.h",
            "ssep/coarse_search/searcher_builders/imv_general_searcher_builder.h",
            "ssep/coarse_search/gpu_context.h",
            "ssep/coarse_search/searcher_builders/imv_bidirectional_searcher_builder.cc",
            "ssep/coarse_search/evaluator/evaluator.h",
            "replayer/scene_data/generated/full_custom_codec_coverage_audit.yaml",
            "ssep/keb_optimizer/rigid_truck_keb_optimizer.cc",
            "ssep/coarse_search/searcher_builders/truck_multi_segment_parking_bidirectional_searcher_builder.h",
            "ssep/scenarios/truck_fuzzy_reversing_planner.h",
            "ssep/scenarios/tractor_trailer_enter_yard_planner.h",
            "ssep/keb_optimizer/imv_keb_optimizer.cc",
            "ssep/coarse_search/evaluator/gpu_collision_cost_computer.cc",
            "ssep/gpu/device_types.h",
            "ssep/coarse_search/searcher_builders/tractor_trailer_multi_segment_parking_bidirectional_searcher_builder.cc",
            "ssep/coarse_search/searcher_builders/tractor_trailer_multi_segment_parking_bidirectional_searcher_builder.h",
            "ssep/scenarios/straddle_carrier_general_planner.h",
            "ssep/coarse_search/multi_stage_hybrid_astar_search_engine.cc",
            "ssep/scenarios/stitching_replanner.h",
            "docs/ssep_stop_collision_extension.md",
            "replayer/scene_data/generated/plan_frame_descriptor.pb",
            "ssep/scenarios/truck_bulk_yark_in_out_planner.cc",
            "ssep/coarse_search/searcher_builders/tractor_trailer_general_searcher_builder.h",
            "replayer/scene_data/generated/full_custom_cpp_member_inputs.json",
            "ssep/scenarios/truck_remote_guided_escape_planner.h",
            "ssep/test/keb_stop_collision_test.cc",
            "ssep/coarse_search/searcher_builders/bulk_yard_in_out_path_searcher_builder.h",
            "ssep/coarse_search/searcher_builders/truck_reference_following_searcher_builder.h",
            "ssep/scenarios/scenario_planner_interface.h",
            "ssep/coarse_search/evaluator/collision_cost_computer.h",
            "ssep/scenarios/tractor_trailer_multi_segment_parking_planner.h",
            "ssep/scenarios/legacy_planner.h",
            "ssep/coarse_search/searcher_builders/truck_multi_segment_parking_bidirectional_searcher_builder.cc",
            "replayer/scene_data/config_proto_codec.cpp",
            "ssep/coarse_search/evaluator/forward_collision_check_lengths.h",
            "ssep/scenarios/truck_accurate_reversing_planner.cc",
            "ssep/scenarios/tractor_trailer_reverse_priority_parking_planner.h",
            "ssep/coarse_search/searcher_builders/tractor_trailer_single_segment_parking_searcher_builder.cc",
            "ssep/ssep_planner.cc",
            "ssep/scenarios/imv_pullover_planner.h",
            "tasks/plan/keb_lane_follow_path_task.cpp",
            "ssep/coarse_search/searcher_builders/imv_multi_segment_parking_bidirectional_searcher_builder.h",
            "Testing/keb_roadside_config_test.cpp",
            "ssep/keb_optimizer/README.md",
            "tasks/plan/keb_utils_core.cpp",
            "ssep/scenarios/tractor_trailer_exit_parking_spot_planner.h",
            "ssep/coarse_search/motion_primitive_sampler/reverse_primitive_decorator.h",
            "ssep/coarse_search/motion_primitive.h",
            "ssep/scenarios/imv_general_planner.h",
            "ssep/coarse_search/searcher_builders/rigid_truck_general_searcher_builder.h",
            "replayer/scene_data/generated/config_schema_inputs.json",
            "ssep/scenarios/truck_u_turn_planner.h",
            "ssep/keb_optimizer/tractor_trailer_keb_optimizer.h",
            "ssep/scenarios/imv_multi_segment_parking_planner.h",
            "ssep/coarse_search/motion_primitive_sampler/dir_change_path_extention_decorator.h",
            "replayer/scene_data/generated/plan_frame_encoder.cpp",
            "ssep/coarse_search/searcher_builders/bulk_yard_in_out_path_searcher_builder.cc",
            "ssep/scenarios/truck_multi_segment_parking_planner.h",
            "ssep/gpu/collision/collision_checker.cuh",
            "proto/config.proto",
            "ssep/coarse_search/searcher_builders/rigid_truck_general_searcher_builder.cc",
            "ssep/scenarios/tractor_trailer_general_planner.h",
            "ssep/scenarios/scenario_planner_factory.h",
            "ssep/scenarios/tractor_trailer_short_distance_planner.h",
            "Testing/keb_gate_filter_test.cpp",
            "ssep/coarse_search/searcher_builders/tractor_trailer_bidirectional_searcher_builder.h",
            "ssep/scenarios/tractor_trailer_lane_change_planner.h",
            "ssep/test/ssep_planner_test.cc",
            "ssep/keb_optimizer/keb_utils.cc",
            "ssep/test/forward_collision_check_params_test.cc",
            "replayer/scene_data/generated/scene_replay_api_descriptor.pb",
            "ssep/scenarios/tractor_trailer_single_segment_parking_planner.h",
            "ssep/coarse_search/searcher_builders/imv_multi_segment_parking_bidirectional_searcher_builder.cc"
          ],
          "commitId" : "7e0f45d37fb930216c00fea5b70932253bc88d4d",
          "timestamp" : 1790599005000,
          "author" : {
            "absoluteUrl" : "http://159.27.114.184:8080/jenkins/user/wuyanjun110",
            "fullName" : "wuyanjun110"
          },
          "authorEmail" : "wuyanjun110@126.com",
          "comment" : "feat: 区分普通点与停车点的前向碰撞检查长度\u000a\u000a为 SSEP 粗搜索、搜索后 KEB 和实时 KEB 分别配置普通点及换向/终点的前向额外长度，停车包络按驶入方向选择，并保留既有场景豁免行为。\u000a\u000a补齐场景参数传播与实时配置回放合同，保留旧消息默认值及显式零值。修复 GPU 圆盘容量越界、长路径尾部截断和 KEB 非法几何/数量转换，拒绝无效参数而不缩小检测范围。\u000a\u000a最终工作树验证：SSEP 229 项测试、6 例场景回归通过；RTX 4060 上 10 项 GPU 测试通过，Compute Sanitizer memcheck 报告 0 errors；主工程及实时配置入口测试通过。\u000a",
          "date" : "2026-09-28 20:36:45 +0800",
          "id" : "7e0f45d37fb930216c00fea5b70932253bc88d4d",
          "msg" : "feat: 区分普通点与停车点的前向碰撞检查长度",
          "paths" : [
            {
              "editType" : "edit",
              "file" : "ssep/keb_optimizer/keb_utils.cc"
            },
            {
              "editType" : "edit",
              "file" : "ssep/scenarios/tractor_trailer_exit_parking_spot_planner.h"
            },
            {
              "editType" : "edit",
              "file" : "ssep/coarse_search/searcher_builders/imv_bidirectional_searcher_builder.cc"
            },
            {
              "editType" : "edit",
              "file" : "ssep/scenarios/two_stage_planner_composer.h"
            },
            {
              "editType" : "edit",
              "file" : "ssep/keb_optimizer/rigid_truck_keb_optimizer.cc"
            },
            {
              "editType" : "edit",
              "file" : "ssep/coarse_search/searcher_builders/truck_reference_following_searcher_builder.cc"
            },
            {
              "editType" : "add",
              "file" : "docs/ssep_stop_collision_extension.md"
            },
            {
              "editType" : "edit",
              "file" : "ssep/coarse_search/evaluator/evaluator.h"
            },
            {
              "editType" : "edit",
              "file" : "ssep/coarse_search/searcher_builders/bulk_yard_in_out_path_searcher_builder.h"
            },
            {
              "editType" : "edit",
              "file" : "ssep/coarse_search/searcher_builders/imv_general_searcher_builder.cc"
            },
            {
              "editType" : "edit",
              "file" : "ssep/keb_optimizer/rigid_truck_keb_optimizer.h"
            },
            {
              "editType" : "edit",
              "file" : "ssep/scenarios/straddle_carrier_pick_vehicle_planner.h"
            },
            {
              "editType" : "edit",
              "file" : "ssep/coarse_search/motion_primitive_sampler/dir_change_path_extention_decorator.h"
            },
            {
              "editType" : "edit",
              "file" : "replayer/scene_data/generated/compact_scene_descriptor.pb"
            },
            {
              "editType" : "edit",
              "file" : "ssep/coarse_search/searcher_builders/imv_bidirectional_searcher_builder.h"
            },
            {
              "editType" : "add",
              "file" : "ssep/test/coarse_search_stop_clearance_test.cc"
            },
            {
              "editType" : "edit",
              "file" : "ssep/scenarios/imv_enter_yard_planner.h"
            },
            {
              "editType" : "edit",
              "file" : "ssep/coarse_search/multi_stage_hybrid_astar_search_engine.cc"
            },
            {
              "editType" : "edit",
              "file" : "ssep/scenarios/truck_fuzzy_reversing_planner.h"
            },
            {
              "editType" : "edit",
              "file" : "data/config/cfg_lat_plan.hpp"
            },
            {
              "editType" : "edit",
              "file" : "ssep/coarse_search/searcher_builders/tractor_trailer_single_segment_parking_searcher_builder.h"
            },
            {
              "editType" : "edit",
              "file" : "ssep/coarse_search/searcher_builders/tractor_trailer_lane_change_searcher_builder.h"
            },
            {
              "editType" : "edit",
              "file" : "Testing/keb_roadside_config_test.cpp"
            },
            {
              "editType" : "edit",
              "file" : "ssep/scenarios/scenario_planner_interface.h"
            },
            {
              "editType" : "edit",
              "file" : "replayer/scene_data/generated/plan_frame_descriptor.pb"
            },
            {
              "editType" : "edit",
              "file" : "ssep/scenarios/truck_general_planner.h"
            },
            {
              "editType" : "edit",
              "file" : "replayer/scene_data/generated/scene_replay_api_descriptor.pb"
            },
            {
              "editType" : "edit",
              "file" : "ssep/coarse_search/searcher_builders/truck_multi_segment_parking_bidirectional_searcher_builder.cc"
            },
            {
              "editType" : "edit",
              "file" : "ssep/coarse_search/motion_primitive_sampler/reverse_primitive_decorator.h"
            },
            {
              "editType" : "add",
              "file" : "ssep/coarse_search/evaluator/forward_collision_check_lengths.h"
            },
            {
              "editType" : "edit",
              "file" : "tasks/plan/keb_utils_core.cpp"
            },
            {
              "editType" : "edit",
              "file" : "ssep/scenarios/tractor_trailer_single_segment_parking_planner.h"
            },
            {
              "editType" : "edit",
              "file" : "ssep/coarse_search/geometric_searcher/bulk_yard_geometric_searcher.cc"
            },
            {
              "editType" : "edit",
              "file" : "ssep/gpu/device_types.h"
            },
            {
              "editType" : "edit",
              "file" : "ssep/scenarios/tractor_trailer_reverse_priority_parking_planner.h"
            },
            {
              "editType" : "edit",
              "file" : "data/config/cfg_lat_plan.cpp"
            },
            {
              "editType" : "add",
              "file" : "ssep/scenarios/forward_collision_check_params.h"
            },
            {
              "editType" : "edit",
              "file" : "ssep/coarse_search/searcher_builders/rigid_truck_general_searcher_builder.h"
            },
            {
              "editType" : "add",
              "file" : "ssep/coarse_search/gpu_collision_disk_packing.h"
            },
            {
              "editType" : "edit",
              "file" : "ssep/coarse_search/searcher_builders/tractor_trailer_general_searcher_builder.cc"
            },
            {
              "editType" : "edit",
              "file" : "ssep/test/ssep_planner_test.cc"
            },
            {
              "editType" : "edit",
              "file" : "ssep/coarse_search/evaluator/collision_cost_computer.h"
            },
            {
              "editType" : "edit",
              "file" : "ssep/coarse_search/searcher_builders/tractor_trailer_multi_segment_parking_bidirectional_searcher_builder.cc"
            },
            {
              "editType" : "edit",
              "file" : "ssep/scenarios/imv_general_planner.h"
            },
            {
              "editType" : "edit",
              "file" : "ssep/coarse_search/searcher_builders/truck_reference_following_searcher_builder.h"
            },
            {
              "editType" : "edit",
              "file" : "ssep/scenarios/legacy_planner.h"
            },
            {
              "editType" : "edit",
              "file" : "ssep/scenarios/tractor_trailer_lane_change_planner.h"
            },
            {
              "editType" : "edit",
              "file" : "replayer/scene_data/config_proto_codec.cpp"
            },
            {
              "editType" : "edit",
              "file" : "ssep/keb_optimizer/keb_problem.cc"
            },
            {
              "editType" : "edit",
              "file" : "ssep/keb_optimizer/keb_utils.h"
            },
            {
              "editType" : "edit",
              "file" : "ssep/keb_optimizer/README.md"
            },
            {
              "editType" : "edit",
              "file" : "ssep/scenarios/scenario_planner_factory.h"
            },
            {
              "editType" : "edit",
              "file" : "ssep/scenarios/tractor_trailer_enter_parking_spot_planner.h"
            },
            {
              "editType" : "edit",
              "file" : "ssep/coarse_search/searcher_builders/tractor_trailer_multi_segment_parking_bidirectional_searcher_builder.h"
            },
            {
              "editType" : "edit",
              "file" : "replayer/scene_data/generated/full_custom_codec_coverage_audit.yaml"
            },
            {
              "editType" : "edit",
              "file" : "ssep/coarse_search/searcher_builders/tractor_trailer_bidirectional_searcher_builder.cc"
            },
            {
              "editType" : "add",
              "file" : "ssep/test/keb_normal_extension_test.cc"
            },
            {
              "editType" : "edit",
              "file" : "ssep/coarse_search/evaluator/trailer_collision_cost_computer.h"
            },
            {
              "editType" : "edit",
              "file" : "ssep/scenarios/truck_bulk_yark_in_out_planner.cc"
            },
            {
              "editType" : "edit",
              "file" : "ssep/keb_optimizer/imv_keb_optimizer.h"
            },
            {
              "editType" : "edit",
              "file" : "ssep/coarse_search/searcher_builders/tractor_trailer_single_segment_parking_searcher_builder.cc"
            },
            {
              "editType" : "edit",
              "file" : "ssep/coarse_search/evaluator/gpu_collision_cost_computer.cc"
            },
            {
              "editType" : "edit",
              "file" : "ssep/coarse_search/searcher_builders/rigid_truck_general_searcher_builder.cc"
            },
            {
              "editType" : "edit",
              "file" : "ssep/coarse_search/gpu_context.cc"
            },
            {
              "editType" : "edit",
              "file" : "ssep/scenarios/imv_enter_station_planner.h"
            },
            {
              "editType" : "edit",
              "file" : "ssep/coarse_search/searcher_builders/imv_multi_segment_parking_bidirectional_searcher_builder.cc"
            },
            {
              "editType" : "edit",
              "file" : "ssep/scenarios/stitching_replanner.h"
            },
            {
              "editType" : "edit",
              "file" : "ssep/scenarios/straddle_carrier_general_planner.h"
            },
            {
              "editType" : "edit",
              "file" : "ssep/scenarios/truck_multi_seg_general_planner.h"
            },
            {
              "editType" : "edit",
              "file" : "ssep/coarse_search/searcher_builders/truck_multi_segment_parking_bidirectional_searcher_builder.h"
            },
            {
              "editType" : "add",
              "file" : "ssep/test/gpu_collision_disk_packing_test.cc"
            },
            {
              "editType" : "edit",
              "file" : "replayer/scene_data/generated/full_custom_cpp_member_inputs.json"
            },
            {
              "editType" : "edit",
              "file" : "ssep/scenarios/truck_u_turn_planner.h"
            },
            {
              "editType" : "edit",
              "file" : "ssep/coarse_search/searcher_builders/imv_general_searcher_builder.h"
            },
            {
              "editType" : "edit",
              "file" : "ssep/keb_optimizer/keb_problem.h"
            },
            {
              "editType" : "edit",
              "file" : "ssep/keb_optimizer/tractor_trailer_keb_optimizer.cc"
            },
            {
              "editType" : "edit",
              "file" : "ssep/scenarios/tractor_trailer_multi_segment_parking_planner.h"
            },
            {
              "editType" : "edit",
              "file" : "ssep/coarse_search/motion_primitive.h"
            },
            {
              "editType" : "edit",
              "file" : "ssep/ssep_planner.cc"
            },
            {
              "editType" : "edit",
              "file" : "replayer/scene_data/generated/config_schema_inputs.json"
            },
            {
              "editType" : "edit",
              "file" : "ssep/scenarios/tractor_trailer_enter_yard_planner.h"
            },
            {
              "editType" : "edit",
              "file" : "ssep/scenarios/imv_multi_segment_parking_planner.h"
            },
            {
              "editType" : "edit",
              "file" : "replayer/scene_data/generated/plan_frame_encoder.cpp"
            },
            {
              "editType" : "edit",
              "file" : "proto/config.proto"
            },
            {
              "editType" : "edit",
              "file" : "ssep/coarse_search/searcher_builders/tractor_trailer_bidirectional_searcher_builder.h"
            },
            {
              "editType" : "edit",
              "file" : "ssep/keb_optimizer/imv_keb_optimizer.cc"
            },
            {
              "editType" : "edit",
              "file" : "tasks/plan/keb_lane_follow_path_task.cpp"
            },
            {
              "editType" : "edit",
              "file" : "tasks/plan/keb_path_optimize_task.cpp"
            },
            {
              "editType" : "edit",
              "file" : "ssep/keb_optimizer/tractor_trailer_keb_optimizer.h"
            },
            {
              "editType" : "edit",
              "file" : "tasks/plan/keb_utils_core.hpp"
            },
            {
              "editType" : "edit",
              "file" : "ssep/coarse_search/searcher_builders/imv_multi_segment_parking_bidirectional_searcher_builder.h"
            },
            {
              "editType" : "edit",
              "file" : "ssep/scenarios/truck_remote_guided_escape_planner.h"
            },
            {
              "editType" : "edit",
              "file" : "docs/pnc_algorithm_replay/plan_frame_field_workflow.md"
            },
            {
              "editType" : "edit",
              "file" : "ssep/coarse_search/bidirectional_hybrid_astar_search_engine.cc"
            },
            {
              "editType" : "edit",
              "file" : "ssep/scenarios/tractor_trailer_general_planner.h"
            },
            {
              "editType" : "edit",
              "file" : "Testing/keb_gate_filter_test.cpp"
            },
            {
              "editType" : "edit",
              "file" : "ssep/coarse_search/searcher_builders/tractor_trailer_general_searcher_builder.h"
            },
            {
              "editType" : "edit",
              "file" : "ssep/scenarios/truck_accurate_reversing_planner.cc"
            },
            {
              "editType" : "edit",
              "file" : "ssep/test/gpu_collision_test.cc"
            },
            {
              "editType" : "edit",
              "file" : "ssep/scenarios/tractor_trailer_short_distance_planner.h"
            },
            {
              "editType" : "edit",
              "file" : "ssep/test/CMakeLists.txt"
            },
            {
              "editType" : "edit",
              "file" : "ssep/scenarios/imv_pullover_planner.h"
            },
            {
              "editType" : "add",
              "file" : "ssep/test/keb_stop_collision_test.cc"
            },
            {
              "editType" : "edit",
              "file" : "ssep/coarse_search/searcher_builders/bulk_yard_in_out_path_searcher_builder.cc"
            },
            {
              "editType" : "edit",
              "file" : "ssep/coarse_search/gpu_context.h"
            },
            {
              "editType" : "edit",
              "file" : "ssep/scenarios/imv_exit_parking_spot_planner.h"
            },
            {
              "editType" : "edit",
              "file" : "ssep/gpu/collision/collision_checker.cuh"
            },
            {
              "editType" : "add",
              "file" : "ssep/test/forward_collision_check_params_test.cc"
            },
            {
              "editType" : "add",
              "file" : "ssep/test/bidirectional_stop_collision_test.cc"
            },
            {
              "editType" : "edit",
              "file" : "ssep/coarse_search/searcher_builders/tractor_trailer_lane_change_searcher_builder.cc"
            },
            {
              "editType" : "edit",
              "file" : "ssep/scenarios/truck_multi_segment_parking_planner.h"
            }
          ]
        },
        {
          "_class" : "hudson.plugins.git.GitChangeSet",
          "affectedPaths" : [
            "ssep/test/CMakeLists.txt",
            "ssep/test/forward_precise_planner_test.cc",
            "ssep/coarse_search/searcher_builders/tractor_trailer_general_searcher_builder.h",
            "data/ssep/forward_ec.cpp",
            "ssep/scenarios/tractor_trailer_general_planner.h",
            "ssep/keb_optimizer/keb_problem.cc",
            "ssep/test/keb_stop_collision_test.cc",
            "ssep/test/forward_precise_routing_test.cc",
            "ssep/keb_optimizer/tractor_trailer_keb_optimizer.cc",
            "docs/ssep_forward_precise_arrival.md",
            "ssep/coarse_search/searcher_builders/tractor_trailer_general_searcher_builder.cc",
            "ssep/keb_optimizer/tractor_trailer_keb_optimizer.h",
            "ssep/scenarios/stitching_replanner.h",
            "ssep/ssep_planner.cc",
            "Testing/ssep_scenario_config_lifecycle_test.cpp"
          ],
          "commitId" : "680f27a422524859d41d0c66d9c02a2c36d2e9a0",
          "timestamp" : 1790599031000,
          "author" : {
            "absoluteUrl" : "http://159.27.114.184:8080/jenkins/user/wuyanjun110",
            "fullName" : "wuyanjun110"
          },
          "authorEmail" : "wuyanjun110@126.com",
          "comment" : "feat: 支持拖挂车单向精确到达与可配置末端直线\u000a\u000a在 TractorTrailerGeneral 中新增可选 ForwardPrecise 策略，沿用单向前进搜索，固定默认 3 m 的可配置尾段并校验精确终点位姿、运动学与连续车身扫掠。\u000a\u000a增加尾段碰撞忽略开关，保留入口与此前路径检查；禁止路径库或历史拼接绕过精确到达约束。实时场景每帧保留显式尾段配置，退出策略后恢复动态距离。\u000a\u000a补充策略、固定尾段、碰撞忽略与配置生命周期回归。津西记录验证终点 x/y、车头与挂车航向误差均为 0，完整 3 m 直线保留，独立扫掠无碰撞。\u000a",
          "date" : "2026-09-28 20:37:11 +0800",
          "id" : "680f27a422524859d41d0c66d9c02a2c36d2e9a0",
          "msg" : "feat: 支持拖挂车单向精确到达与可配置末端直线",
          "paths" : [
            {
              "editType" : "edit",
              "file" : "ssep/ssep_planner.cc"
            },
            {
              "editType" : "edit",
              "file" : "ssep/test/keb_stop_collision_test.cc"
            },
            {
              "editType" : "edit",
              "file" : "ssep/test/CMakeLists.txt"
            },
            {
              "editType" : "edit",
              "file" : "ssep/keb_optimizer/tractor_trailer_keb_optimizer.cc"
            },
            {
              "editType" : "edit",
              "file" : "ssep/scenarios/tractor_trailer_general_planner.h"
            },
            {
              "editType" : "edit",
              "file" : "Testing/ssep_scenario_config_lifecycle_test.cpp"
            },
            {
              "editType" : "edit",
              "file" : "ssep/coarse_search/searcher_builders/tractor_trailer_general_searcher_builder.h"
            },
            {
              "editType" : "edit",
              "file" : "ssep/keb_optimizer/tractor_trailer_keb_optimizer.h"
            },
            {
              "editType" : "add",
              "file" : "ssep/test/forward_precise_planner_test.cc"
            },
            {
              "editType" : "add",
              "file" : "ssep/test/forward_precise_routing_test.cc"
            },
            {
              "editType" : "edit",
              "file" : "ssep/scenarios/stitching_replanner.h"
            },
            {
              "editType" : "add",
              "file" : "docs/ssep_forward_precise_arrival.md"
            },
            {
              "editType" : "edit",
              "file" : "ssep/keb_optimizer/keb_problem.cc"
            },
            {
              "editType" : "edit",
              "file" : "data/ssep/forward_ec.cpp"
            },
            {
              "editType" : "edit",
              "file" : "ssep/coarse_search/searcher_builders/tractor_trailer_general_searcher_builder.cc"
            }
          ]
        },
        {
          "_class" : "hudson.plugins.git.GitChangeSet",
          "affectedPaths" : [
            "ssep/offboard/tools/tractor_trailer_shortest_path_heuristic_generator/generate_tables_batch.py",
            "ssep/coarse_search/motion_primitive_sampler/multi_curvature_motion_primitive_sampler.cc",
            "ssep/test/gpu_collision_test_kernel.cu",
            "ssep/coarse_search/evaluator/trailer_heuristic_metadata.h",
            "ssep/gpu/samplers/multi_curvature_sampler.cuh",
            "ssep/offboard/path_drawing_tool/hermite_path_generator.cc",
            "ssep/coarse_search/motion_primitive_sampler/trailer_heading_motion_primitive_decorator.h",
            "ssep/offboard/tools/tractor_trailer_shortest_path_heuristic_generator/README.md",
            "ssep/param_loader/param.h",
            "ssep/test/gpu_collision_test.cc",
            "ssep/keb_optimizer/keb_utils.cc",
            "ssep/data_structures/type_definition.cc",
            "ssep/keb_optimizer/tractor_trailer_keb_optimizer.cc",
            "ssep/test/tractor_trailer_kinematic_weight_test.cc",
            "ssep/test/gpu_collision_test_kernel.cuh",
            "ssep/test/trailer_heuristic_table_test.cc",
            "ssep/keb_optimizer/cost_features/tractor_trailer_kinematic_constraint.h",
            "ssep/test/tractor_trailer_kinematic_diagnostics_test.cc",
            "ssep/coarse_search/legacy_searchers/hybrid_a_star_tt.cc",
            "ssep/gpu/collision/collision_checker.cuh",
            "ssep/offboard/tools/tractor_trailer_shortest_path_heuristic_generator/test_generate_tables_batch.py",
            "ssep/data_structures/path_utils.h"
          ],
          "commitId" : "fe6ed2265341e86db3400f32d2baa5bab7bab42c",
          "timestamp" : 1790608554000,
          "author" : {
            "absoluteUrl" : "http://159.27.114.184:8080/jenkins/user/wuyanjun110",
            "fullName" : "wuyanjun110"
          },
          "authorEmail" : "wuyanjun110@126.com",
          "comment" : "fix: 统一拖挂车前置铰接点的运动学与碰撞模型\u000a\u000a按铰接点位于后轴前方为正的定义，将 CPU/GPU 搜索、KEB 约束与验收、\u000a路径递推统一为 +h，修正 GPU 碰撞几何并将启发式生成器版本升级为 g2。\u000a补充独立轴心无侧滑、CPU/GPU 一致性及旧模型表拒绝测试。\u000a\u000a验证：CPU 单测和启发表脚本通过；GPU +h 版本此前 12 项及 memcheck 通过。\u000a原预算下 16:08:56 和旧 05:43:31 搜索失败仍保留，未放宽安全验收。\u000a",
          "date" : "2026-09-28 23:15:54 +0800",
          "id" : "fe6ed2265341e86db3400f32d2baa5bab7bab42c",
          "msg" : "fix: 统一拖挂车前置铰接点的运动学与碰撞模型",
          "paths" : [
            {
              "editType" : "edit",
              "file" : "ssep/keb_optimizer/keb_utils.cc"
            },
            {
              "editType" : "edit",
              "file" : "ssep/offboard/tools/tractor_trailer_shortest_path_heuristic_generator/generate_tables_batch.py"
            },
            {
              "editType" : "edit",
              "file" : "ssep/param_loader/param.h"
            },
            {
              "editType" : "edit",
              "file" : "ssep/gpu/collision/collision_checker.cuh"
            },
            {
              "editType" : "edit",
              "file" : "ssep/offboard/tools/tractor_trailer_shortest_path_heuristic_generator/test_generate_tables_batch.py"
            },
            {
              "editType" : "edit",
              "file" : "ssep/coarse_search/evaluator/trailer_heuristic_metadata.h"
            },
            {
              "editType" : "edit",
              "file" : "ssep/coarse_search/legacy_searchers/hybrid_a_star_tt.cc"
            },
            {
              "editType" : "edit",
              "file" : "ssep/coarse_search/motion_primitive_sampler/multi_curvature_motion_primitive_sampler.cc"
            },
            {
              "editType" : "edit",
              "file" : "ssep/gpu/samplers/multi_curvature_sampler.cuh"
            },
            {
              "editType" : "edit",
              "file" : "ssep/test/trailer_heuristic_table_test.cc"
            },
            {
              "editType" : "edit",
              "file" : "ssep/offboard/path_drawing_tool/hermite_path_generator.cc"
            },
            {
              "editType" : "edit",
              "file" : "ssep/coarse_search/motion_primitive_sampler/trailer_heading_motion_primitive_decorator.h"
            },
            {
              "editType" : "edit",
              "file" : "ssep/offboard/tools/tractor_trailer_shortest_path_heuristic_generator/README.md"
            },
            {
              "editType" : "edit",
              "file" : "ssep/test/tractor_trailer_kinematic_weight_test.cc"
            },
            {
              "editType" : "edit",
              "file" : "ssep/keb_optimizer/tractor_trailer_keb_optimizer.cc"
            },
            {
              "editType" : "edit",
              "file" : "ssep/keb_optimizer/cost_features/tractor_trailer_kinematic_constraint.h"
            },
            {
              "editType" : "edit",
              "file" : "ssep/test/tractor_trailer_kinematic_diagnostics_test.cc"
            },
            {
              "editType" : "edit",
              "file" : "ssep/data_structures/type_definition.cc"
            },
            {
              "editType" : "edit",
              "file" : "ssep/data_structures/path_utils.h"
            },
            {
              "editType" : "edit",
              "file" : "ssep/test/gpu_collision_test_kernel.cuh"
            },
            {
              "editType" : "edit",
              "file" : "ssep/test/gpu_collision_test.cc"
            },
            {
              "editType" : "edit",
              "file" : "ssep/test/gpu_collision_test_kernel.cu"
            }
          ]
        },
        {
          "_class" : "hudson.plugins.git.GitChangeSet",
          "affectedPaths" : [
            "ssep/test/tractor_trailer_kinematic_weight_test.cc",
            "ssep/keb_optimizer/keb_problem.cc"
          ],
          "commitId" : "dabfb7aea639e328d03c840c56ff0a2f4e903c42",
          "timestamp" : 1790608563000,
          "author" : {
            "absoluteUrl" : "http://159.27.114.184:8080/jenkins/user/wuyanjun110",
            "fullName" : "wuyanjun110"
          },
          "authorEmail" : "wuyanjun110@126.com",
          "comment" : "fix: 补齐固定尾段入口的三点曲率约束\u000a\u000a将三点中心覆盖到固定尾段入口，保留左侧可变点对连接曲率的约束。\u000a检查右邻点存在，跳过真实换向和全固定三元组；新增入口、换向、\u000a全固定及普通末端边界测试，不改变最终下发曲率验收。\u000a\u000a验证：运动学与权重 75 项、规划 230 项测试通过。\u000a",
          "date" : "2026-09-28 23:16:03 +0800",
          "id" : "dabfb7aea639e328d03c840c56ff0a2f4e903c42",
          "msg" : "fix: 补齐固定尾段入口的三点曲率约束",
          "paths" : [
            {
              "editType" : "edit",
              "file" : "ssep/test/tractor_trailer_kinematic_weight_test.cc"
            },
            {
              "editType" : "edit",
              "file" : "ssep/keb_optimizer/keb_problem.cc"
            }
          ]
        },
        {
          "_class" : "hudson.plugins.git.GitChangeSet",
          "affectedPaths" : [
            "ssep/test/local_regression/tt_heading_cases.json",
            "ssep/test/local_regression/tt_heading_quality.json",
            "ssep/test/local_regression/tt_heading_quality.py",
            "ssep/keb_optimizer/tractor_trailer_kinematic_diagnostics.h",
            "ssep/test/local_regression/README.md",
            "ssep/keb_optimizer/tractor_trailer_keb_optimizer.cc",
            "ssep/test/local_regression/test_tt_heading_quality.py",
            "ssep/scenarios/tractor_trailer_reverse_priority_parking_planner.h",
            "docs/ssep_hitch_model_validation.md",
            "ssep/test/local_regression/run_ssep_regression.py",
            "ssep/test/tractor_trailer_kinematic_diagnostics_test.cc",
            "ssep/test/local_regression/tt_heading_manifest.tsv"
          ],
          "commitId" : "a9134bdaec29e5e572101316101ffe33eb3ab13a",
          "timestamp" : 1790608586000,
          "author" : {
            "absoluteUrl" : "http://159.27.114.184:8080/jenkins/user/wuyanjun110",
            "fullName" : "wuyanjun110"
          },
          "authorEmail" : "wuyanjun110@126.com",
          "comment" : "test: 收录津西航向偏差场景并补充挂车几何诊断\u000a\u000a归档 10 份原始场景，提交相对路径、来源和 SHA-256；保留原始参数和预算。\u000a新增非等距点切向统计及输入有效性测试，角度只观察，不添加拒绝门槛。\u000a补充挂车轴心弦向诊断及失败边日志，记录实验性细化撤回依据和剩余问题。\u000a\u000a撤回未提交的场景归一化、新软约束和多组合重试，保持原三次细化策略。\u000a验证：新集 9/10、旧 TT 3/4、IMV 2/2；312 项 C++ 与 38 项相关 Python\u000a测试通过，pnc_node 编译通过。失败保留为已知问题，不跳过或扩大预算。\u000a",
          "date" : "2026-09-28 23:16:26 +0800",
          "id" : "a9134bdaec29e5e572101316101ffe33eb3ab13a",
          "msg" : "test: 收录津西航向偏差场景并补充挂车几何诊断",
          "paths" : [
            {
              "editType" : "edit",
              "file" : "ssep/test/tractor_trailer_kinematic_diagnostics_test.cc"
            },
            {
              "editType" : "add",
              "file" : "ssep/test/local_regression/tt_heading_quality.py"
            },
            {
              "editType" : "add",
              "file" : "ssep/test/local_regression/tt_heading_cases.json"
            },
            {
              "editType" : "edit",
              "file" : "ssep/keb_optimizer/tractor_trailer_kinematic_diagnostics.h"
            },
            {
              "editType" : "add",
              "file" : "ssep/test/local_regression/tt_heading_quality.json"
            },
            {
              "editType" : "add",
              "file" : "ssep/test/local_regression/test_tt_heading_quality.py"
            },
            {
              "editType" : "edit",
              "file" : "ssep/scenarios/tractor_trailer_reverse_priority_parking_planner.h"
            },
            {
              "editType" : "add",
              "file" : "docs/ssep_hitch_model_validation.md"
            },
            {
              "editType" : "add",
              "file" : "ssep/test/local_regression/tt_heading_manifest.tsv"
            },
            {
              "editType" : "edit",
              "file" : "ssep/keb_optimizer/tractor_trailer_keb_optimizer.cc"
            },
            {
              "editType" : "edit",
              "file" : "ssep/test/local_regression/run_ssep_regression.py"
            },
            {
              "editType" : "edit",
              "file" : "ssep/test/local_regression/README.md"
            }
          ]
        }
      ],
      "kind" : "git"
    }
  ],
  "culprits" : [
    {
      "absoluteUrl" : "http://159.27.114.184:8080/jenkins/user/weilikang",
      "fullName" : "weilikang"
    },
    {
      "absoluteUrl" : "http://159.27.114.184:8080/jenkins/user/wuyanjun110",
      "fullName" : "wuyanjun110"
    }
  ],
  "nextBuild" : null,
  "previousBuild" : {
    "number" : 278,
    "url" : "http://159.27.114.184:8080/jenkins/view/all/job/telediagnostic/278/"
  }
}