<workflowRun _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='org.jenkinsci.plugins.workflow.support.steps.build.BuildUpstreamCause'><shortDescription>Started by upstream project "orin-module-slave32" build number 5,377</shortDescription><upstreamBuild>5377</upstreamBuild><upstreamProject>orin-module-slave32</upstreamProject><upstreamUrl>job/orin-module-slave32/</upstreamUrl></cause></action><action></action><action _class='hudson.model.ParametersAction'><parameter _class='hudson.model.StringParameterValue'><name>msgBranch</name><value>rc_dev_jiningliangshangang</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>pncBranch</name><value>feat_daxie_proto</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>hdmapBranch</name><value>no</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>hdmapInterfaceBranch</name><value>rc_dev</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>notes</name><value>pncreplayer更新</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>info</name><value>orin-module-slave32: #5377</value></parameter></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'><library></library></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><master _class='hudson.plugins.git.util.Build'><buildNumber>2178</buildNumber><marked><SHA1>6ec4c73f16769d31c660c5020d0f9d715ab0b1b7</SHA1><branch><SHA1>6ec4c73f16769d31c660c5020d0f9d715ab0b1b7</SHA1><name>master</name></branch></marked><revision><SHA1>6ec4c73f16769d31c660c5020d0f9d715ab0b1b7</SHA1><branch><SHA1>6ec4c73f16769d31c660c5020d0f9d715ab0b1b7</SHA1><name>master</name></branch></revision></master></buildsByBranchName><lastBuiltRevision><SHA1>6ec4c73f16769d31c660c5020d0f9d715ab0b1b7</SHA1><branch><SHA1>6ec4c73f16769d31c660c5020d0f9d715ab0b1b7</SHA1><name>master</name></branch></lastBuiltRevision><remoteUrl>http://159.27.226.4/weilikang/jenkinslib.git</remoteUrl><scmName></scmName></action><action></action><action></action><action _class='org.jenkinsci.plugins.workflow.cps.EnvActionImpl'><environment></environment></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>2178</buildNumber><marked><SHA1>da346d05dedce5efb0c0437192f29599ceeab71b</SHA1><branch><SHA1>da346d05dedce5efb0c0437192f29599ceeab71b</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>da346d05dedce5efb0c0437192f29599ceeab71b</SHA1><branch><SHA1>da346d05dedce5efb0c0437192f29599ceeab71b</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>da346d05dedce5efb0c0437192f29599ceeab71b</SHA1><branch><SHA1>da346d05dedce5efb0c0437192f29599ceeab71b</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>http://159.27.226.4/weilikang/jenkinsfiles.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.workflow.cps.view.InterpolatedSecretsAction'><warning></warning><warning></warning><warning></warning><warning></warning><warning></warning><warning></warning></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><originrc_dev_d0713c _class='hudson.plugins.git.util.Build'><buildNumber>514</buildNumber><marked><SHA1>d0713c65fd86b2ac53ed036ec66b90521c2ef97c</SHA1><branch><SHA1>d0713c65fd86b2ac53ed036ec66b90521c2ef97c</SHA1><name>origin/rc_dev_d0713c</name></branch></marked><revision><SHA1>d0713c65fd86b2ac53ed036ec66b90521c2ef97c</SHA1><branch><SHA1>d0713c65fd86b2ac53ed036ec66b90521c2ef97c</SHA1><name>origin/rc_dev_d0713c</name></branch></revision></originrc_dev_d0713c><originrc_dev_xinjiang_kaiwo _class='hudson.plugins.git.util.Build'><buildNumber>1244</buildNumber><marked><SHA1>6858447f1f5c9e880a747d653217350f3c4ea0a0</SHA1><branch><SHA1>6858447f1f5c9e880a747d653217350f3c4ea0a0</SHA1><name>origin/rc_dev_xinjiang_kaiwo</name></branch></marked><revision><SHA1>6858447f1f5c9e880a747d653217350f3c4ea0a0</SHA1><branch><SHA1>6858447f1f5c9e880a747d653217350f3c4ea0a0</SHA1><name>origin/rc_dev_xinjiang_kaiwo</name></branch></revision></originrc_dev_xinjiang_kaiwo><originfeat_multiple_path _class='hudson.plugins.git.util.Build'><buildNumber>104</buildNumber><marked><SHA1>d54cf8742b0d6a6d1d6ad06beb448f37152ca1d8</SHA1><branch><SHA1>d54cf8742b0d6a6d1d6ad06beb448f37152ca1d8</SHA1><name>origin/feat_multiple_path</name></branch></marked><revision><SHA1>d54cf8742b0d6a6d1d6ad06beb448f37152ca1d8</SHA1><branch><SHA1>d54cf8742b0d6a6d1d6ad06beb448f37152ca1d8</SHA1><name>origin/feat_multiple_path</name></branch></revision></originfeat_multiple_path><originfeat-peripheral_qiangang _class='hudson.plugins.git.util.Build'><buildNumber>405</buildNumber><marked><SHA1>47370a9f329d90e5e5d59e53f6173a21ad880678</SHA1><branch><SHA1>47370a9f329d90e5e5d59e53f6173a21ad880678</SHA1><name>origin/feat-peripheral_qiangang</name></branch></marked><revision><SHA1>47370a9f329d90e5e5d59e53f6173a21ad880678</SHA1><branch><SHA1>47370a9f329d90e5e5d59e53f6173a21ad880678</SHA1><name>origin/feat-peripheral_qiangang</name></branch></revision></originfeat-peripheral_qiangang><originfeat_tc_v2_weihai _class='hudson.plugins.git.util.Build'><buildNumber>1910</buildNumber><marked><SHA1>db51c891fddcf73babce98115f7526d2860bd6c4</SHA1><branch><SHA1>db51c891fddcf73babce98115f7526d2860bd6c4</SHA1><name>origin/feat_tc_v2_weihai</name></branch></marked><revision><SHA1>db51c891fddcf73babce98115f7526d2860bd6c4</SHA1><branch><SHA1>db51c891fddcf73babce98115f7526d2860bd6c4</SHA1><name>origin/feat_tc_v2_weihai</name></branch></revision></originfeat_tc_v2_weihai><originyouyiguan_add_trailer_info _class='hudson.plugins.git.util.Build'><buildNumber>1294</buildNumber><marked><SHA1>062de51109603913f092d421e259df68b3b57f8f</SHA1><branch><SHA1>062de51109603913f092d421e259df68b3b57f8f</SHA1><name>origin/youyiguan_add_trailer_info</name></branch></marked><revision><SHA1>062de51109603913f092d421e259df68b3b57f8f</SHA1><branch><SHA1>062de51109603913f092d421e259df68b3b57f8f</SHA1><name>origin/youyiguan_add_trailer_info</name></branch></revision></originyouyiguan_add_trailer_info><originrcdev_0a13c34 _class='hudson.plugins.git.util.Build'><buildNumber>231</buildNumber><marked><SHA1>0a13c3462eee863b32a43ea2e82612f649af702a</SHA1><branch><SHA1>0a13c3462eee863b32a43ea2e82612f649af702a</SHA1><name>origin/rcdev_0a13c34</name></branch></marked><revision><SHA1>0a13c3462eee863b32a43ea2e82612f649af702a</SHA1><branch><SHA1>0a13c3462eee863b32a43ea2e82612f649af702a</SHA1><name>origin/rcdev_0a13c34</name></branch></revision></originrcdev_0a13c34><originrc_dev _class='hudson.plugins.git.util.Build'><buildNumber>2006</buildNumber><marked><SHA1>7d594c755e96741c20d32b84dec169d35b599e9c</SHA1><branch><SHA1>7d594c755e96741c20d32b84dec169d35b599e9c</SHA1><name>origin/rc_dev</name></branch></marked><revision><SHA1>7d594c755e96741c20d32b84dec169d35b599e9c</SHA1><branch><SHA1>7d594c755e96741c20d32b84dec169d35b599e9c</SHA1><name>origin/rc_dev</name></branch></revision></originrc_dev><originfeat_v2x _class='hudson.plugins.git.util.Build'><buildNumber>97</buildNumber><marked><SHA1>818081a723d83abf39efe236cb6ab488aef53bba</SHA1><branch><SHA1>818081a723d83abf39efe236cb6ab488aef53bba</SHA1><name>origin/feat_v2x</name></branch></marked><revision><SHA1>818081a723d83abf39efe236cb6ab488aef53bba</SHA1><branch><SHA1>818081a723d83abf39efe236cb6ab488aef53bba</SHA1><name>origin/feat_v2x</name></branch></revision></originfeat_v2x><originrc_dev_qiangang _class='hudson.plugins.git.util.Build'><buildNumber>1897</buildNumber><marked><SHA1>1f1b50411fbad43ef0d16e173acf889b3a413854</SHA1><branch><SHA1>1f1b50411fbad43ef0d16e173acf889b3a413854</SHA1><name>origin/rc_dev_qiangang</name></branch></marked><revision><SHA1>1f1b50411fbad43ef0d16e173acf889b3a413854</SHA1><branch><SHA1>1f1b50411fbad43ef0d16e173acf889b3a413854</SHA1><name>origin/rc_dev_qiangang</name></branch></revision></originrc_dev_qiangang><originfeat_xiamen_patch _class='hudson.plugins.git.util.Build'><buildNumber>1606</buildNumber><marked><SHA1>5edde714fd5009dce8a08067bfa73d09adf298d6</SHA1><branch><SHA1>5edde714fd5009dce8a08067bfa73d09adf298d6</SHA1><name>origin/feat_xiamen_patch</name></branch></marked><revision><SHA1>5edde714fd5009dce8a08067bfa73d09adf298d6</SHA1><branch><SHA1>5edde714fd5009dce8a08067bfa73d09adf298d6</SHA1><name>origin/feat_xiamen_patch</name></branch></revision></originfeat_xiamen_patch><originrc_dev_taiyang _class='hudson.plugins.git.util.Build'><buildNumber>1547</buildNumber><marked><SHA1>7b898979876c3089d42c8ecbfbeef3da821c694b</SHA1><branch><SHA1>7b898979876c3089d42c8ecbfbeef3da821c694b</SHA1><name>origin/rc_dev_taiyang</name></branch></marked><revision><SHA1>7b898979876c3089d42c8ecbfbeef3da821c694b</SHA1><branch><SHA1>7b898979876c3089d42c8ecbfbeef3da821c694b</SHA1><name>origin/rc_dev_taiyang</name></branch></revision></originrc_dev_taiyang><originfeat-peripheral_op_state _class='hudson.plugins.git.util.Build'><buildNumber>239</buildNumber><marked><SHA1>f0a5167416f0fec86262fc7b9f86b98b8c9f1580</SHA1><branch><SHA1>f0a5167416f0fec86262fc7b9f86b98b8c9f1580</SHA1><name>origin/feat-peripheral_op_state</name></branch></marked><revision><SHA1>f0a5167416f0fec86262fc7b9f86b98b8c9f1580</SHA1><branch><SHA1>f0a5167416f0fec86262fc7b9f86b98b8c9f1580</SHA1><name>origin/feat-peripheral_op_state</name></branch></revision></originfeat-peripheral_op_state><originfeat_mandula_udp _class='hudson.plugins.git.util.Build'><buildNumber>830</buildNumber><marked><SHA1>d261c50491fbc8a11349b8ab65a8076d75ebdc08</SHA1><branch><SHA1>d261c50491fbc8a11349b8ab65a8076d75ebdc08</SHA1><name>origin/feat_mandula_udp</name></branch></marked><revision><SHA1>d261c50491fbc8a11349b8ab65a8076d75ebdc08</SHA1><branch><SHA1>d261c50491fbc8a11349b8ab65a8076d75ebdc08</SHA1><name>origin/feat_mandula_udp</name></branch></revision></originfeat_mandula_udp><originfeat-peripheral_op_state-chassis_err _class='hudson.plugins.git.util.Build'><buildNumber>377</buildNumber><marked><SHA1>3fed282b426dddc8539eed2eac1b7bc368431e71</SHA1><branch><SHA1>3fed282b426dddc8539eed2eac1b7bc368431e71</SHA1><name>origin/feat-peripheral_op_state-chassis_err</name></branch></marked><revision><SHA1>3fed282b426dddc8539eed2eac1b7bc368431e71</SHA1><branch><SHA1>3fed282b426dddc8539eed2eac1b7bc368431e71</SHA1><name>origin/feat-peripheral_op_state-chassis_err</name></branch></revision></originfeat-peripheral_op_state-chassis_err><originrc_dev_shanqihuanwei _class='hudson.plugins.git.util.Build'><buildNumber>1589</buildNumber><marked><SHA1>f5a740650e27555efc2c844e135111515679ba9d</SHA1><branch><SHA1>f5a740650e27555efc2c844e135111515679ba9d</SHA1><name>origin/rc_dev_shanqihuanwei</name></branch></marked><revision><SHA1>f5a740650e27555efc2c844e135111515679ba9d</SHA1><branch><SHA1>f5a740650e27555efc2c844e135111515679ba9d</SHA1><name>origin/rc_dev_shanqihuanwei</name></branch></revision></originrc_dev_shanqihuanwei><originfeat_tc_v2_yantai _class='hudson.plugins.git.util.Build'><buildNumber>1862</buildNumber><marked><SHA1>bdb5ae48b5cbb4cf8ba76eba652e4f20aeff253d</SHA1><branch><SHA1>bdb5ae48b5cbb4cf8ba76eba652e4f20aeff253d</SHA1><name>origin/feat_tc_v2_yantai</name></branch></marked><revision><SHA1>bdb5ae48b5cbb4cf8ba76eba652e4f20aeff253d</SHA1><branch><SHA1>bdb5ae48b5cbb4cf8ba76eba652e4f20aeff253d</SHA1><name>origin/feat_tc_v2_yantai</name></branch></revision></originfeat_tc_v2_yantai><originrc_dev_e53243 _class='hudson.plugins.git.util.Build'><buildNumber>651</buildNumber><marked><SHA1>e53243a23acd89640afd41301882167071c14022</SHA1><branch><SHA1>e53243a23acd89640afd41301882167071c14022</SHA1><name>origin/rc_dev_e53243</name></branch></marked><revision><SHA1>e53243a23acd89640afd41301882167071c14022</SHA1><branch><SHA1>e53243a23acd89640afd41301882167071c14022</SHA1><name>origin/rc_dev_e53243</name></branch></revision></originrc_dev_e53243><originrc_dev_zhoushan _class='hudson.plugins.git.util.Build'><buildNumber>1472</buildNumber><marked><SHA1>96ed1f1aae62978d865c3acf62e16756e9530773</SHA1><branch><SHA1>96ed1f1aae62978d865c3acf62e16756e9530773</SHA1><name>origin/rc_dev_zhoushan</name></branch></marked><revision><SHA1>96ed1f1aae62978d865c3acf62e16756e9530773</SHA1><branch><SHA1>96ed1f1aae62978d865c3acf62e16756e9530773</SHA1><name>origin/rc_dev_zhoushan</name></branch></revision></originrc_dev_zhoushan><originfeat_tc_v2_daxie _class='hudson.plugins.git.util.Build'><buildNumber>1815</buildNumber><marked><SHA1>aed54f80025d95dc2fa58fadb5f26bd1c46d4b0d</SHA1><branch><SHA1>aed54f80025d95dc2fa58fadb5f26bd1c46d4b0d</SHA1><name>origin/feat_tc_v2_daxie</name></branch></marked><revision><SHA1>aed54f80025d95dc2fa58fadb5f26bd1c46d4b0d</SHA1><branch><SHA1>aed54f80025d95dc2fa58fadb5f26bd1c46d4b0d</SHA1><name>origin/feat_tc_v2_daxie</name></branch></revision></originfeat_tc_v2_daxie><originrc_dev_dongfen _class='hudson.plugins.git.util.Build'><buildNumber>1702</buildNumber><marked><SHA1>6858447f1f5c9e880a747d653217350f3c4ea0a0</SHA1><branch><SHA1>6858447f1f5c9e880a747d653217350f3c4ea0a0</SHA1><name>origin/rc_dev_dongfen</name></branch></marked><revision><SHA1>6858447f1f5c9e880a747d653217350f3c4ea0a0</SHA1><branch><SHA1>6858447f1f5c9e880a747d653217350f3c4ea0a0</SHA1><name>origin/rc_dev_dongfen</name></branch></revision></originrc_dev_dongfen><originfeat_daxie_patch _class='hudson.plugins.git.util.Build'><buildNumber>1246</buildNumber><marked><SHA1>762ac69a8087af8a7d2988094ab4943f538e8a04</SHA1><branch><SHA1>762ac69a8087af8a7d2988094ab4943f538e8a04</SHA1><name>origin/feat_daxie_patch</name></branch></marked><revision><SHA1>762ac69a8087af8a7d2988094ab4943f538e8a04</SHA1><branch><SHA1>762ac69a8087af8a7d2988094ab4943f538e8a04</SHA1><name>origin/feat_daxie_patch</name></branch></revision></originfeat_daxie_patch><originfeat_speed_lmt _class='hudson.plugins.git.util.Build'><buildNumber>433</buildNumber><marked><SHA1>510f3a0d45ae6290a9448ecf012dfe501b504a15</SHA1><branch><SHA1>510f3a0d45ae6290a9448ecf012dfe501b504a15</SHA1><name>origin/feat_speed_lmt</name></branch></marked><revision><SHA1>510f3a0d45ae6290a9448ecf012dfe501b504a15</SHA1><branch><SHA1>510f3a0d45ae6290a9448ecf012dfe501b504a15</SHA1><name>origin/feat_speed_lmt</name></branch></revision></originfeat_speed_lmt><originfeat_tc_v2_yangpu _class='hudson.plugins.git.util.Build'><buildNumber>1804</buildNumber><marked><SHA1>549daf0fc4e7c8f469ba1807acf334525ddb939b</SHA1><branch><SHA1>549daf0fc4e7c8f469ba1807acf334525ddb939b</SHA1><name>origin/feat_tc_v2_yangpu</name></branch></marked><revision><SHA1>549daf0fc4e7c8f469ba1807acf334525ddb939b</SHA1><branch><SHA1>549daf0fc4e7c8f469ba1807acf334525ddb939b</SHA1><name>origin/feat_tc_v2_yangpu</name></branch></revision></originfeat_tc_v2_yangpu><originrc_dev_xiasha _class='hudson.plugins.git.util.Build'><buildNumber>2076</buildNumber><marked><SHA1>fca3a20dd978a00f0568bbb02a49aff6fc1ffeb1</SHA1><branch><SHA1>fca3a20dd978a00f0568bbb02a49aff6fc1ffeb1</SHA1><name>origin/rc_dev_xiasha</name></branch></marked><revision><SHA1>fca3a20dd978a00f0568bbb02a49aff6fc1ffeb1</SHA1><branch><SHA1>fca3a20dd978a00f0568bbb02a49aff6fc1ffeb1</SHA1><name>origin/rc_dev_xiasha</name></branch></revision></originrc_dev_xiasha><originfeat_yard_lane_change _class='hudson.plugins.git.util.Build'><buildNumber>525</buildNumber><marked><SHA1>9c5267888fbed74808f7b7c3fa5beff157057207</SHA1><branch><SHA1>9c5267888fbed74808f7b7c3fa5beff157057207</SHA1><name>origin/feat_yard_lane_change</name></branch></marked><revision><SHA1>9c5267888fbed74808f7b7c3fa5beff157057207</SHA1><branch><SHA1>9c5267888fbed74808f7b7c3fa5beff157057207</SHA1><name>origin/feat_yard_lane_change</name></branch></revision></originfeat_yard_lane_change><originfeat_tc_v2_xiamen _class='hudson.plugins.git.util.Build'><buildNumber>2176</buildNumber><marked><SHA1>df329f0b0fe1fb2f0213fc2c6e790f48c58253e5</SHA1><branch><SHA1>df329f0b0fe1fb2f0213fc2c6e790f48c58253e5</SHA1><name>origin/feat_tc_v2_xiamen</name></branch></marked><revision><SHA1>df329f0b0fe1fb2f0213fc2c6e790f48c58253e5</SHA1><branch><SHA1>df329f0b0fe1fb2f0213fc2c6e790f48c58253e5</SHA1><name>origin/feat_tc_v2_xiamen</name></branch></revision></originfeat_tc_v2_xiamen><originrcdev_c9969b7 _class='hudson.plugins.git.util.Build'><buildNumber>289</buildNumber><marked><SHA1>24a5a27ac09f5c6d866b65ecdc9fee463be597cf</SHA1><branch><SHA1>24a5a27ac09f5c6d866b65ecdc9fee463be597cf</SHA1><name>origin/rcdev_c9969b7</name></branch></marked><revision><SHA1>24a5a27ac09f5c6d866b65ecdc9fee463be597cf</SHA1><branch><SHA1>24a5a27ac09f5c6d866b65ecdc9fee463be597cf</SHA1><name>origin/rcdev_c9969b7</name></branch></revision></originrcdev_c9969b7><originrc_dev_suxi _class='hudson.plugins.git.util.Build'><buildNumber>2172</buildNumber><marked><SHA1>19e0f13735cd065dc0507a9516ad10727decfb29</SHA1><branch><SHA1>19e0f13735cd065dc0507a9516ad10727decfb29</SHA1><name>origin/rc_dev_suxi</name></branch></marked><revision><SHA1>19e0f13735cd065dc0507a9516ad10727decfb29</SHA1><branch><SHA1>19e0f13735cd065dc0507a9516ad10727decfb29</SHA1><name>origin/rc_dev_suxi</name></branch></revision></originrc_dev_suxi><originrc_dev_taiyang_ctrl _class='hudson.plugins.git.util.Build'><buildNumber>1771</buildNumber><marked><SHA1>4ba1d6d39371013ba90023bb6ab4d337e8aa18a2</SHA1><branch><SHA1>4ba1d6d39371013ba90023bb6ab4d337e8aa18a2</SHA1><name>origin/rc_dev_taiyang_ctrl</name></branch></marked><revision><SHA1>4ba1d6d39371013ba90023bb6ab4d337e8aa18a2</SHA1><branch><SHA1>4ba1d6d39371013ba90023bb6ab4d337e8aa18a2</SHA1><name>origin/rc_dev_taiyang_ctrl</name></branch></revision></originrc_dev_taiyang_ctrl><originrc_dev_qingdaodagang _class='hudson.plugins.git.util.Build'><buildNumber>1260</buildNumber><marked><SHA1>6858447f1f5c9e880a747d653217350f3c4ea0a0</SHA1><branch><SHA1>6858447f1f5c9e880a747d653217350f3c4ea0a0</SHA1><name>origin/rc_dev_qingdaodagang</name></branch></marked><revision><SHA1>6858447f1f5c9e880a747d653217350f3c4ea0a0</SHA1><branch><SHA1>6858447f1f5c9e880a747d653217350f3c4ea0a0</SHA1><name>origin/rc_dev_qingdaodagang</name></branch></revision></originrc_dev_qingdaodagang><originrc_dev_baoshishun _class='hudson.plugins.git.util.Build'><buildNumber>2130</buildNumber><marked><SHA1>b080c3140afa34324a990cf86e60f3a92affb918</SHA1><branch><SHA1>b080c3140afa34324a990cf86e60f3a92affb918</SHA1><name>origin/rc_dev_baoshishun</name></branch></marked><revision><SHA1>b080c3140afa34324a990cf86e60f3a92affb918</SHA1><branch><SHA1>b080c3140afa34324a990cf86e60f3a92affb918</SHA1><name>origin/rc_dev_baoshishun</name></branch></revision></originrc_dev_baoshishun><originfeat-xilian _class='hudson.plugins.git.util.Build'><buildNumber>381</buildNumber><marked><SHA1>95f15a0454380530b0bf028c6917a34abaa43378</SHA1><branch><SHA1>95f15a0454380530b0bf028c6917a34abaa43378</SHA1><name>origin/feat-xilian</name></branch></marked><revision><SHA1>95f15a0454380530b0bf028c6917a34abaa43378</SHA1><branch><SHA1>95f15a0454380530b0bf028c6917a34abaa43378</SHA1><name>origin/feat-xilian</name></branch></revision></originfeat-xilian><originrc_dev_youyiguan _class='hudson.plugins.git.util.Build'><buildNumber>1977</buildNumber><marked><SHA1>1be039cfa092298ec02479636537b6550f1b9152</SHA1><branch><SHA1>1be039cfa092298ec02479636537b6550f1b9152</SHA1><name>origin/rc_dev_youyiguan</name></branch></marked><revision><SHA1>1be039cfa092298ec02479636537b6550f1b9152</SHA1><branch><SHA1>1be039cfa092298ec02479636537b6550f1b9152</SHA1><name>origin/rc_dev_youyiguan</name></branch></revision></originrc_dev_youyiguan><originrc_dev_tangshanjinxi _class='hudson.plugins.git.util.Build'><buildNumber>2175</buildNumber><marked><SHA1>1b306566b5e66a524235d5f2635d6ef234fcc6a8</SHA1><branch><SHA1>1b306566b5e66a524235d5f2635d6ef234fcc6a8</SHA1><name>origin/rc_dev_tangshanjinxi</name></branch></marked><revision><SHA1>1b306566b5e66a524235d5f2635d6ef234fcc6a8</SHA1><branch><SHA1>1b306566b5e66a524235d5f2635d6ef234fcc6a8</SHA1><name>origin/rc_dev_tangshanjinxi</name></branch></revision></originrc_dev_tangshanjinxi><originrc_dev_xiamen _class='hudson.plugins.git.util.Build'><buildNumber>1840</buildNumber><marked><SHA1>483fabd931605b5fe19a49de9f1cbbb1097f497b</SHA1><branch><SHA1>483fabd931605b5fe19a49de9f1cbbb1097f497b</SHA1><name>origin/rc_dev_xiamen</name></branch></marked><revision><SHA1>483fabd931605b5fe19a49de9f1cbbb1097f497b</SHA1><branch><SHA1>483fabd931605b5fe19a49de9f1cbbb1097f497b</SHA1><name>origin/rc_dev_xiamen</name></branch></revision></originrc_dev_xiamen><originrc_dev_weiqiao _class='hudson.plugins.git.util.Build'><buildNumber>2165</buildNumber><marked><SHA1>77e314b6ec1f478bfb91514c971c5d2c05d05744</SHA1><branch><SHA1>77e314b6ec1f478bfb91514c971c5d2c05d05744</SHA1><name>origin/rc_dev_weiqiao</name></branch></marked><revision><SHA1>77e314b6ec1f478bfb91514c971c5d2c05d05744</SHA1><branch><SHA1>77e314b6ec1f478bfb91514c971c5d2c05d05744</SHA1><name>origin/rc_dev_weiqiao</name></branch></revision></originrc_dev_weiqiao><originrc_dev_xilian _class='hudson.plugins.git.util.Build'><buildNumber>2102</buildNumber><marked><SHA1>f820c4ad43107c56f407831e44f6bc87cbbfff7f</SHA1><branch><SHA1>f820c4ad43107c56f407831e44f6bc87cbbfff7f</SHA1><name>origin/rc_dev_xilian</name></branch></marked><revision><SHA1>f820c4ad43107c56f407831e44f6bc87cbbfff7f</SHA1><branch><SHA1>f820c4ad43107c56f407831e44f6bc87cbbfff7f</SHA1><name>origin/rc_dev_xilian</name></branch></revision></originrc_dev_xilian><originfeat_monitor_frame _class='hudson.plugins.git.util.Build'><buildNumber>331</buildNumber><marked><SHA1>ca7c2a8369584e2797d47ddc5bcee2e7bc94013a</SHA1><branch><SHA1>ca7c2a8369584e2797d47ddc5bcee2e7bc94013a</SHA1><name>origin/feat_monitor_frame</name></branch></marked><revision><SHA1>ca7c2a8369584e2797d47ddc5bcee2e7bc94013a</SHA1><branch><SHA1>ca7c2a8369584e2797d47ddc5bcee2e7bc94013a</SHA1><name>origin/feat_monitor_frame</name></branch></revision></originfeat_monitor_frame><originrc_dev_yantaigunzhuang _class='hudson.plugins.git.util.Build'><buildNumber>2174</buildNumber><marked><SHA1>45405ae4f7f78b275cc6e9dd8f36cc2a220f9e37</SHA1><branch><SHA1>45405ae4f7f78b275cc6e9dd8f36cc2a220f9e37</SHA1><name>origin/rc_dev_yantaigunzhuang</name></branch></marked><revision><SHA1>45405ae4f7f78b275cc6e9dd8f36cc2a220f9e37</SHA1><branch><SHA1>45405ae4f7f78b275cc6e9dd8f36cc2a220f9e37</SHA1><name>origin/rc_dev_yantaigunzhuang</name></branch></revision></originrc_dev_yantaigunzhuang><originrc_dev_wuhanzhongtielianji _class='hudson.plugins.git.util.Build'><buildNumber>2166</buildNumber><marked><SHA1>548659540c3568147388dbcf79627429cb5288eb</SHA1><branch><SHA1>548659540c3568147388dbcf79627429cb5288eb</SHA1><name>origin/rc_dev_wuhanzhongtielianji</name></branch></marked><revision><SHA1>548659540c3568147388dbcf79627429cb5288eb</SHA1><branch><SHA1>548659540c3568147388dbcf79627429cb5288eb</SHA1><name>origin/rc_dev_wuhanzhongtielianji</name></branch></revision></originrc_dev_wuhanzhongtielianji><originrc_dev_weihai _class='hudson.plugins.git.util.Build'><buildNumber>2144</buildNumber><marked><SHA1>40c221ec332fa1e028f30da761372becdb391501</SHA1><branch><SHA1>40c221ec332fa1e028f30da761372becdb391501</SHA1><name>origin/rc_dev_weihai</name></branch></marked><revision><SHA1>40c221ec332fa1e028f30da761372becdb391501</SHA1><branch><SHA1>40c221ec332fa1e028f30da761372becdb391501</SHA1><name>origin/rc_dev_weihai</name></branch></revision></originrc_dev_weihai><originrc_dev_mandula _class='hudson.plugins.git.util.Build'><buildNumber>1348</buildNumber><marked><SHA1>fe3fc1534c53f91f596b9458776afd6d2364f0a2</SHA1><branch><SHA1>fe3fc1534c53f91f596b9458776afd6d2364f0a2</SHA1><name>origin/rc_dev_mandula</name></branch></marked><revision><SHA1>fe3fc1534c53f91f596b9458776afd6d2364f0a2</SHA1><branch><SHA1>fe3fc1534c53f91f596b9458776afd6d2364f0a2</SHA1><name>origin/rc_dev_mandula</name></branch></revision></originrc_dev_mandula><originfeat_suxi_oldtmp _class='hudson.plugins.git.util.Build'><buildNumber>2037</buildNumber><marked><SHA1>69d9a06f8c7221ce10c5d955a81fc9684aa206c3</SHA1><branch><SHA1>69d9a06f8c7221ce10c5d955a81fc9684aa206c3</SHA1><name>origin/feat_suxi_oldtmp</name></branch></marked><revision><SHA1>69d9a06f8c7221ce10c5d955a81fc9684aa206c3</SHA1><branch><SHA1>69d9a06f8c7221ce10c5d955a81fc9684aa206c3</SHA1><name>origin/feat_suxi_oldtmp</name></branch></revision></originfeat_suxi_oldtmp><originrc_dev_daxie _class='hudson.plugins.git.util.Build'><buildNumber>2158</buildNumber><marked><SHA1>5b4fc8786cda625874e52841a77c7984f7ec0e70</SHA1><branch><SHA1>5b4fc8786cda625874e52841a77c7984f7ec0e70</SHA1><name>origin/rc_dev_daxie</name></branch></marked><revision><SHA1>5b4fc8786cda625874e52841a77c7984f7ec0e70</SHA1><branch><SHA1>5b4fc8786cda625874e52841a77c7984f7ec0e70</SHA1><name>origin/rc_dev_daxie</name></branch></revision></originrc_dev_daxie><originfeat_qiangang _class='hudson.plugins.git.util.Build'><buildNumber>1184</buildNumber><marked><SHA1>289cda308241280b261706930b818b90420fcb5f</SHA1><branch><SHA1>289cda308241280b261706930b818b90420fcb5f</SHA1><name>origin/feat_qiangang</name></branch></marked><revision><SHA1>289cda308241280b261706930b818b90420fcb5f</SHA1><branch><SHA1>289cda308241280b261706930b818b90420fcb5f</SHA1><name>origin/feat_qiangang</name></branch></revision></originfeat_qiangang><originfeat-peripheral_op_state_aee7704c _class='hudson.plugins.git.util.Build'><buildNumber>109</buildNumber><marked><SHA1>aee7704cc51112ff34a8ad6cd572c220a21952d0</SHA1><branch><SHA1>aee7704cc51112ff34a8ad6cd572c220a21952d0</SHA1><name>origin/feat-peripheral_op_state_aee7704c</name></branch></marked><revision><SHA1>aee7704cc51112ff34a8ad6cd572c220a21952d0</SHA1><branch><SHA1>aee7704cc51112ff34a8ad6cd572c220a21952d0</SHA1><name>origin/feat-peripheral_op_state_aee7704c</name></branch></revision></originfeat-peripheral_op_state_aee7704c><originrc_dev_93cc60 _class='hudson.plugins.git.util.Build'><buildNumber>385</buildNumber><marked><SHA1>93cc602576f9f342ff85e9cc672a683b99db923b</SHA1><branch><SHA1>93cc602576f9f342ff85e9cc672a683b99db923b</SHA1><name>origin/rc_dev_93cc60</name></branch></marked><revision><SHA1>93cc602576f9f342ff85e9cc672a683b99db923b</SHA1><branch><SHA1>93cc602576f9f342ff85e9cc672a683b99db923b</SHA1><name>origin/rc_dev_93cc60</name></branch></revision></originrc_dev_93cc60><originfeat_mandula _class='hudson.plugins.git.util.Build'><buildNumber>742</buildNumber><marked><SHA1>da90fef6f7663bb03c4bdfcf266c45b4ec60499a</SHA1><branch><SHA1>da90fef6f7663bb03c4bdfcf266c45b4ec60499a</SHA1><name>origin/feat_mandula</name></branch></marked><revision><SHA1>da90fef6f7663bb03c4bdfcf266c45b4ec60499a</SHA1><branch><SHA1>da90fef6f7663bb03c4bdfcf266c45b4ec60499a</SHA1><name>origin/feat_mandula</name></branch></revision></originfeat_mandula><originfeat_suxi_patch _class='hudson.plugins.git.util.Build'><buildNumber>985</buildNumber><marked><SHA1>762ac69a8087af8a7d2988094ab4943f538e8a04</SHA1><branch><SHA1>762ac69a8087af8a7d2988094ab4943f538e8a04</SHA1><name>origin/feat_suxi_patch</name></branch></marked><revision><SHA1>762ac69a8087af8a7d2988094ab4943f538e8a04</SHA1><branch><SHA1>762ac69a8087af8a7d2988094ab4943f538e8a04</SHA1><name>origin/feat_suxi_patch</name></branch></revision></originfeat_suxi_patch><originfeat_tc_v2_qiangang _class='hudson.plugins.git.util.Build'><buildNumber>1793</buildNumber><marked><SHA1>bcbc5de637a9a70f2d4a3f32247a71a67dbfd4a0</SHA1><branch><SHA1>bcbc5de637a9a70f2d4a3f32247a71a67dbfd4a0</SHA1><name>origin/feat_tc_v2_qiangang</name></branch></marked><revision><SHA1>bcbc5de637a9a70f2d4a3f32247a71a67dbfd4a0</SHA1><branch><SHA1>bcbc5de637a9a70f2d4a3f32247a71a67dbfd4a0</SHA1><name>origin/feat_tc_v2_qiangang</name></branch></revision></originfeat_tc_v2_qiangang><originfeat_tc_v2_suxi _class='hudson.plugins.git.util.Build'><buildNumber>1812</buildNumber><marked><SHA1>eadbbf60c2f42f9cc816ea239eb5310f19bef058</SHA1><branch><SHA1>eadbbf60c2f42f9cc816ea239eb5310f19bef058</SHA1><name>origin/feat_tc_v2_suxi</name></branch></marked><revision><SHA1>eadbbf60c2f42f9cc816ea239eb5310f19bef058</SHA1><branch><SHA1>eadbbf60c2f42f9cc816ea239eb5310f19bef058</SHA1><name>origin/feat_tc_v2_suxi</name></branch></revision></originfeat_tc_v2_suxi><originrc_dev_jiningliangshangang _class='hudson.plugins.git.util.Build'><buildNumber>2178</buildNumber><marked><SHA1>531313779621ea1cd882137e13ebc7f5f5e007e2</SHA1><branch><SHA1>531313779621ea1cd882137e13ebc7f5f5e007e2</SHA1><name>origin/rc_dev_jiningliangshangang</name></branch></marked><revision><SHA1>531313779621ea1cd882137e13ebc7f5f5e007e2</SHA1><branch><SHA1>531313779621ea1cd882137e13ebc7f5f5e007e2</SHA1><name>origin/rc_dev_jiningliangshangang</name></branch></revision></originrc_dev_jiningliangshangang><originfeat-peripheral_qiangang_d5b225 _class='hudson.plugins.git.util.Build'><buildNumber>327</buildNumber><marked><SHA1>d5b2257a0fb952d19ad035f23b88df52bd27e9ff</SHA1><branch><SHA1>d5b2257a0fb952d19ad035f23b88df52bd27e9ff</SHA1><name>origin/feat-peripheral_qiangang_d5b225</name></branch></marked><revision><SHA1>d5b2257a0fb952d19ad035f23b88df52bd27e9ff</SHA1><branch><SHA1>d5b2257a0fb952d19ad035f23b88df52bd27e9ff</SHA1><name>origin/feat-peripheral_qiangang_d5b225</name></branch></revision></originfeat-peripheral_qiangang_d5b225><originrc_dev_shenqi _class='hudson.plugins.git.util.Build'><buildNumber>1450</buildNumber><marked><SHA1>31f70a912caef9f3c2e3745c0e9b19467b7ca967</SHA1><branch><SHA1>31f70a912caef9f3c2e3745c0e9b19467b7ca967</SHA1><name>origin/rc_dev_shenqi</name></branch></marked><revision><SHA1>31f70a912caef9f3c2e3745c0e9b19467b7ca967</SHA1><branch><SHA1>31f70a912caef9f3c2e3745c0e9b19467b7ca967</SHA1><name>origin/rc_dev_shenqi</name></branch></revision></originrc_dev_shenqi><originfeat_youyiguan_pnc_status _class='hudson.plugins.git.util.Build'><buildNumber>1630</buildNumber><marked><SHA1>b338fbf811a4f2c0c39e71ee62f18c35757f0b1d</SHA1><branch><SHA1>b338fbf811a4f2c0c39e71ee62f18c35757f0b1d</SHA1><name>origin/feat_youyiguan_pnc_status</name></branch></marked><revision><SHA1>b338fbf811a4f2c0c39e71ee62f18c35757f0b1d</SHA1><branch><SHA1>b338fbf811a4f2c0c39e71ee62f18c35757f0b1d</SHA1><name>origin/feat_youyiguan_pnc_status</name></branch></revision></originfeat_youyiguan_pnc_status><origindev_ros2 _class='hudson.plugins.git.util.Build'><buildNumber>2177</buildNumber><marked><SHA1>09e25f72706b8350a7a15258d8e2613a6e2d1a2b</SHA1><branch><SHA1>09e25f72706b8350a7a15258d8e2613a6e2d1a2b</SHA1><name>origin/dev_ros2</name></branch></marked><revision><SHA1>09e25f72706b8350a7a15258d8e2613a6e2d1a2b</SHA1><branch><SHA1>09e25f72706b8350a7a15258d8e2613a6e2d1a2b</SHA1><name>origin/dev_ros2</name></branch></revision></origindev_ros2><originrc_dev_youyiguan_test _class='hudson.plugins.git.util.Build'><buildNumber>1220</buildNumber><marked><SHA1>f62c9602eebae4706b4494e12452559212efb66a</SHA1><branch><SHA1>f62c9602eebae4706b4494e12452559212efb66a</SHA1><name>origin/rc_dev_youyiguan_test</name></branch></marked><revision><SHA1>f62c9602eebae4706b4494e12452559212efb66a</SHA1><branch><SHA1>f62c9602eebae4706b4494e12452559212efb66a</SHA1><name>origin/rc_dev_youyiguan_test</name></branch></revision></originrc_dev_youyiguan_test><originfeat_xilian_patch _class='hudson.plugins.git.util.Build'><buildNumber>1477</buildNumber><marked><SHA1>1e6c6aa34911755a34f4cc4acec03c6c30a2e604</SHA1><branch><SHA1>1e6c6aa34911755a34f4cc4acec03c6c30a2e604</SHA1><name>origin/feat_xilian_patch</name></branch></marked><revision><SHA1>1e6c6aa34911755a34f4cc4acec03c6c30a2e604</SHA1><branch><SHA1>1e6c6aa34911755a34f4cc4acec03c6c30a2e604</SHA1><name>origin/feat_xilian_patch</name></branch></revision></originfeat_xilian_patch><originrc_dev_184937 _class='hudson.plugins.git.util.Build'><buildNumber>876</buildNumber><marked><SHA1>184937840d35a83cb9158067f5fc65458db35e7a</SHA1><branch><SHA1>184937840d35a83cb9158067f5fc65458db35e7a</SHA1><name>origin/rc_dev_184937</name></branch></marked><revision><SHA1>184937840d35a83cb9158067f5fc65458db35e7a</SHA1><branch><SHA1>184937840d35a83cb9158067f5fc65458db35e7a</SHA1><name>origin/rc_dev_184937</name></branch></revision></originrc_dev_184937><originrc_dev_yangpu _class='hudson.plugins.git.util.Build'><buildNumber>2171</buildNumber><marked><SHA1>542b54142a97e21788a87fd638595d7b8f85e37f</SHA1><branch><SHA1>542b54142a97e21788a87fd638595d7b8f85e37f</SHA1><name>origin/rc_dev_yangpu</name></branch></marked><revision><SHA1>542b54142a97e21788a87fd638595d7b8f85e37f</SHA1><branch><SHA1>542b54142a97e21788a87fd638595d7b8f85e37f</SHA1><name>origin/rc_dev_yangpu</name></branch></revision></originrc_dev_yangpu><originfeat_tc_v2 _class='hudson.plugins.git.util.Build'><buildNumber>1938</buildNumber><marked><SHA1>b34e00e37e0d3a5818ba0ebb75422c11ae3b6b28</SHA1><branch><SHA1>b34e00e37e0d3a5818ba0ebb75422c11ae3b6b28</SHA1><name>origin/feat_tc_v2</name></branch></marked><revision><SHA1>b34e00e37e0d3a5818ba0ebb75422c11ae3b6b28</SHA1><branch><SHA1>b34e00e37e0d3a5818ba0ebb75422c11ae3b6b28</SHA1><name>origin/feat_tc_v2</name></branch></revision></originfeat_tc_v2><originrc_dev_weifang_container _class='hudson.plugins.git.util.Build'><buildNumber>2170</buildNumber><marked><SHA1>546ecdbcea2f86ee501ec1340a052e5751657754</SHA1><branch><SHA1>546ecdbcea2f86ee501ec1340a052e5751657754</SHA1><name>origin/rc_dev_weifang_container</name></branch></marked><revision><SHA1>546ecdbcea2f86ee501ec1340a052e5751657754</SHA1><branch><SHA1>546ecdbcea2f86ee501ec1340a052e5751657754</SHA1><name>origin/rc_dev_weifang_container</name></branch></revision></originrc_dev_weifang_container><originrc_dev_qiangang_config _class='hudson.plugins.git.util.Build'><buildNumber>2173</buildNumber><marked><SHA1>45ef1220ae218999449b078d0af2c8c9d4ea57bc</SHA1><branch><SHA1>45ef1220ae218999449b078d0af2c8c9d4ea57bc</SHA1><name>origin/rc_dev_qiangang_config</name></branch></marked><revision><SHA1>45ef1220ae218999449b078d0af2c8c9d4ea57bc</SHA1><branch><SHA1>45ef1220ae218999449b078d0af2c8c9d4ea57bc</SHA1><name>origin/rc_dev_qiangang_config</name></branch></revision></originrc_dev_qiangang_config><originrc_dev_luojing _class='hudson.plugins.git.util.Build'><buildNumber>2022</buildNumber><marked><SHA1>32334d000675a8e9faa66ac5b3334a4eb573a3fb</SHA1><branch><SHA1>32334d000675a8e9faa66ac5b3334a4eb573a3fb</SHA1><name>origin/rc_dev_luojing</name></branch></marked><revision><SHA1>32334d000675a8e9faa66ac5b3334a4eb573a3fb</SHA1><branch><SHA1>32334d000675a8e9faa66ac5b3334a4eb573a3fb</SHA1><name>origin/rc_dev_luojing</name></branch></revision></originrc_dev_luojing><originfeat_qiangang_side_pass _class='hudson.plugins.git.util.Build'><buildNumber>1676</buildNumber><marked><SHA1>0daa1f7f08156df5a55cf90342da631b318e2d3d</SHA1><branch><SHA1>0daa1f7f08156df5a55cf90342da631b318e2d3d</SHA1><name>origin/feat_qiangang_side_pass</name></branch></marked><revision><SHA1>0daa1f7f08156df5a55cf90342da631b318e2d3d</SHA1><branch><SHA1>0daa1f7f08156df5a55cf90342da631b318e2d3d</SHA1><name>origin/feat_qiangang_side_pass</name></branch></revision></originfeat_qiangang_side_pass><originrc_dev_jiaxingdongfangtegang _class='hudson.plugins.git.util.Build'><buildNumber>2168</buildNumber><marked><SHA1>f81898909167f9f8c7dee4f7367c611c2268d138</SHA1><branch><SHA1>f81898909167f9f8c7dee4f7367c611c2268d138</SHA1><name>origin/rc_dev_jiaxingdongfangtegang</name></branch></marked><revision><SHA1>f81898909167f9f8c7dee4f7367c611c2268d138</SHA1><branch><SHA1>f81898909167f9f8c7dee4f7367c611c2268d138</SHA1><name>origin/rc_dev_jiaxingdongfangtegang</name></branch></revision></originrc_dev_jiaxingdongfangtegang></buildsByBranchName><lastBuiltRevision><SHA1>531313779621ea1cd882137e13ebc7f5f5e007e2</SHA1><branch><SHA1>531313779621ea1cd882137e13ebc7f5f5e007e2</SHA1><name>origin/rc_dev_jiningliangshangang</name></branch></lastBuiltRevision><remoteUrl>http://159.27.226.4/shared/shared_msgs.git</remoteUrl><scmName></scmName></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><originfeat_truck_reverse_old _class='hudson.plugins.git.util.Build'><buildNumber>649</buildNumber><marked><SHA1>c3c62c1259448726e4fed5ee5e7696969b460623</SHA1><branch><SHA1>c3c62c1259448726e4fed5ee5e7696969b460623</SHA1><name>origin/feat_truck_reverse_old</name></branch></marked><revision><SHA1>c3c62c1259448726e4fed5ee5e7696969b460623</SHA1><branch><SHA1>c3c62c1259448726e4fed5ee5e7696969b460623</SHA1><name>origin/feat_truck_reverse_old</name></branch></revision></originfeat_truck_reverse_old><origintest_chongqing _class='hudson.plugins.git.util.Build'><buildNumber>2098</buildNumber><marked><SHA1>67db1a9a49b520b3867908ded72f67324ab3d22f</SHA1><branch><SHA1>67db1a9a49b520b3867908ded72f67324ab3d22f</SHA1><name>origin/test_chongqing</name></branch></marked><revision><SHA1>67db1a9a49b520b3867908ded72f67324ab3d22f</SHA1><branch><SHA1>67db1a9a49b520b3867908ded72f67324ab3d22f</SHA1><name>origin/test_chongqing</name></branch></revision></origintest_chongqing><originfeat_safety_check_xl _class='hudson.plugins.git.util.Build'><buildNumber>517</buildNumber><marked><SHA1>eba85868178acebed483c2d7c3fcfcc2836073d4</SHA1><branch><SHA1>eba85868178acebed483c2d7c3fcfcc2836073d4</SHA1><name>origin/feat_safety_check_xl</name></branch></marked><revision><SHA1>eba85868178acebed483c2d7c3fcfcc2836073d4</SHA1><branch><SHA1>eba85868178acebed483c2d7c3fcfcc2836073d4</SHA1><name>origin/feat_safety_check_xl</name></branch></revision></originfeat_safety_check_xl><origindev_log _class='hudson.plugins.git.util.Build'><buildNumber>92</buildNumber><marked><SHA1>7dfda59c1971723325dedb18473b9707099fc64f</SHA1><branch><SHA1>7dfda59c1971723325dedb18473b9707099fc64f</SHA1><name>origin/dev_log</name></branch></marked><revision><SHA1>7dfda59c1971723325dedb18473b9707099fc64f</SHA1><branch><SHA1>7dfda59c1971723325dedb18473b9707099fc64f</SHA1><name>origin/dev_log</name></branch></revision></origindev_log><originremote_control _class='hudson.plugins.git.util.Build'><buildNumber>106</buildNumber><marked><SHA1>f2659e2c7ebfe5acd5ce2af20af2985c13183208</SHA1><branch><SHA1>f2659e2c7ebfe5acd5ce2af20af2985c13183208</SHA1><name>origin/remote_control</name></branch></marked><revision><SHA1>f2659e2c7ebfe5acd5ce2af20af2985c13183208</SHA1><branch><SHA1>f2659e2c7ebfe5acd5ce2af20af2985c13183208</SHA1><name>origin/remote_control</name></branch></revision></originremote_control><originfeat_xl_park _class='hudson.plugins.git.util.Build'><buildNumber>190</buildNumber><marked><SHA1>b328ff7f08dfeea96983be75d14da25ce62380b5</SHA1><branch><SHA1>b328ff7f08dfeea96983be75d14da25ce62380b5</SHA1><name>origin/feat_xl_park</name></branch></marked><revision><SHA1>b328ff7f08dfeea96983be75d14da25ce62380b5</SHA1><branch><SHA1>b328ff7f08dfeea96983be75d14da25ce62380b5</SHA1><name>origin/feat_xl_park</name></branch></revision></originfeat_xl_park><origindev _class='hudson.plugins.git.util.Build'><buildNumber>888</buildNumber><marked><SHA1>bd6730672469a4c0ff0d9e2de8c3e7dffec58f45</SHA1><branch><SHA1>bd6730672469a4c0ff0d9e2de8c3e7dffec58f45</SHA1><name>origin/dev</name></branch></marked><revision><SHA1>bd6730672469a4c0ff0d9e2de8c3e7dffec58f45</SHA1><branch><SHA1>bd6730672469a4c0ff0d9e2de8c3e7dffec58f45</SHA1><name>origin/dev</name></branch></revision></origindev><originfeat_cargo_width _class='hudson.plugins.git.util.Build'><buildNumber>1323</buildNumber><marked><SHA1>f0087f099cc51505e90abfe5eadc282c256aeb3d</SHA1><branch><SHA1>f0087f099cc51505e90abfe5eadc282c256aeb3d</SHA1><name>origin/feat_cargo_width</name></branch></marked><revision><SHA1>f0087f099cc51505e90abfe5eadc282c256aeb3d</SHA1><branch><SHA1>f0087f099cc51505e90abfe5eadc282c256aeb3d</SHA1><name>origin/feat_cargo_width</name></branch></revision></originfeat_cargo_width><originfeat-path _class='hudson.plugins.git.util.Build'><buildNumber>337</buildNumber><marked><SHA1>a9ed65d4cecf986ce0901c28f2bb2ade49e25316</SHA1><branch><SHA1>a9ed65d4cecf986ce0901c28f2bb2ade49e25316</SHA1><name>origin/feat-path</name></branch></marked><revision><SHA1>a9ed65d4cecf986ce0901c28f2bb2ade49e25316</SHA1><branch><SHA1>a9ed65d4cecf986ce0901c28f2bb2ade49e25316</SHA1><name>origin/feat-path</name></branch></revision></originfeat-path><origintmp _class='hudson.plugins.git.util.Build'><buildNumber>364</buildNumber><marked><SHA1>343e9a939958ff74a579dbb08fa1f3dda8b14480</SHA1><branch><SHA1>343e9a939958ff74a579dbb08fa1f3dda8b14480</SHA1><name>origin/tmp</name></branch></marked><revision><SHA1>343e9a939958ff74a579dbb08fa1f3dda8b14480</SHA1><branch><SHA1>343e9a939958ff74a579dbb08fa1f3dda8b14480</SHA1><name>origin/tmp</name></branch></revision></origintmp><origintemp_hfsm _class='hudson.plugins.git.util.Build'><buildNumber>103</buildNumber><marked><SHA1>ddee85ec821243f9bd15fd2307b5e74763b61f78</SHA1><branch><SHA1>ddee85ec821243f9bd15fd2307b5e74763b61f78</SHA1><name>origin/temp_hfsm</name></branch></marked><revision><SHA1>ddee85ec821243f9bd15fd2307b5e74763b61f78</SHA1><branch><SHA1>ddee85ec821243f9bd15fd2307b5e74763b61f78</SHA1><name>origin/temp_hfsm</name></branch></revision></origintemp_hfsm><originfeat_daxie_1 _class='hudson.plugins.git.util.Build'><buildNumber>1114</buildNumber><marked><SHA1>3ad7410fd050bad1ba844127c2ac1869c3b9e96e</SHA1><branch><SHA1>3ad7410fd050bad1ba844127c2ac1869c3b9e96e</SHA1><name>origin/feat_daxie_1</name></branch></marked><revision><SHA1>3ad7410fd050bad1ba844127c2ac1869c3b9e96e</SHA1><branch><SHA1>3ad7410fd050bad1ba844127c2ac1869c3b9e96e</SHA1><name>origin/feat_daxie_1</name></branch></revision></originfeat_daxie_1><originfeat_keb_offboard_html _class='hudson.plugins.git.util.Build'><buildNumber>2130</buildNumber><marked><SHA1>f2008e75ef78e35e6a63d1c338ecb00f141d2769</SHA1><branch><SHA1>f2008e75ef78e35e6a63d1c338ecb00f141d2769</SHA1><name>origin/feat_keb_offboard_html</name></branch></marked><revision><SHA1>f2008e75ef78e35e6a63d1c338ecb00f141d2769</SHA1><branch><SHA1>f2008e75ef78e35e6a63d1c338ecb00f141d2769</SHA1><name>origin/feat_keb_offboard_html</name></branch></revision></originfeat_keb_offboard_html><origindaxie_lane_change _class='hudson.plugins.git.util.Build'><buildNumber>705</buildNumber><marked><SHA1>c38300b97f751a000c01dac554ddc08079b115a5</SHA1><branch><SHA1>c38300b97f751a000c01dac554ddc08079b115a5</SHA1><name>origin/daxie_lane_change</name></branch></marked><revision><SHA1>c38300b97f751a000c01dac554ddc08079b115a5</SHA1><branch><SHA1>c38300b97f751a000c01dac554ddc08079b115a5</SHA1><name>origin/daxie_lane_change</name></branch></revision></origindaxie_lane_change><originfeat_qg_ssep _class='hudson.plugins.git.util.Build'><buildNumber>615</buildNumber><marked><SHA1>f6a4cff1ffa71f8fcb152307b12550b9beb14457</SHA1><branch><SHA1>f6a4cff1ffa71f8fcb152307b12550b9beb14457</SHA1><name>origin/feat_qg_ssep</name></branch></marked><revision><SHA1>f6a4cff1ffa71f8fcb152307b12550b9beb14457</SHA1><branch><SHA1>f6a4cff1ffa71f8fcb152307b12550b9beb14457</SHA1><name>origin/feat_qg_ssep</name></branch></revision></originfeat_qg_ssep><originfeat_yp_LD _class='hudson.plugins.git.util.Build'><buildNumber>1464</buildNumber><marked><SHA1>5096ef765bd12a34104c0eaface2ed4771e89c42</SHA1><branch><SHA1>5096ef765bd12a34104c0eaface2ed4771e89c42</SHA1><name>origin/feat_yp_LD</name></branch></marked><revision><SHA1>5096ef765bd12a34104c0eaface2ed4771e89c42</SHA1><branch><SHA1>5096ef765bd12a34104c0eaface2ed4771e89c42</SHA1><name>origin/feat_yp_LD</name></branch></revision></originfeat_yp_LD><originfeat_xilian_speed_limit _class='hudson.plugins.git.util.Build'><buildNumber>328</buildNumber><marked><SHA1>0880da9730cce8b9668b50ca9ea83254e6342878</SHA1><branch><SHA1>0880da9730cce8b9668b50ca9ea83254e6342878</SHA1><name>origin/feat_xilian_speed_limit</name></branch></marked><revision><SHA1>0880da9730cce8b9668b50ca9ea83254e6342878</SHA1><branch><SHA1>0880da9730cce8b9668b50ca9ea83254e6342878</SHA1><name>origin/feat_xilian_speed_limit</name></branch></revision></originfeat_xilian_speed_limit><origintest_movestep_safe _class='hudson.plugins.git.util.Build'><buildNumber>1957</buildNumber><marked><SHA1>a9e7e536dc43036d73cdf31b265021a8721d55b6</SHA1><branch><SHA1>a9e7e536dc43036d73cdf31b265021a8721d55b6</SHA1><name>origin/test_movestep_safe</name></branch></marked><revision><SHA1>a9e7e536dc43036d73cdf31b265021a8721d55b6</SHA1><branch><SHA1>a9e7e536dc43036d73cdf31b265021a8721d55b6</SHA1><name>origin/test_movestep_safe</name></branch></revision></origintest_movestep_safe><originfeat_hdmap_dynamic_sidepass _class='hudson.plugins.git.util.Build'><buildNumber>387</buildNumber><marked><SHA1>42ac720f59648f1626e92b9897cf793e3f34f893</SHA1><branch><SHA1>42ac720f59648f1626e92b9897cf793e3f34f893</SHA1><name>origin/feat_hdmap_dynamic_sidepass</name></branch></marked><revision><SHA1>42ac720f59648f1626e92b9897cf793e3f34f893</SHA1><branch><SHA1>42ac720f59648f1626e92b9897cf793e3f34f893</SHA1><name>origin/feat_hdmap_dynamic_sidepass</name></branch></revision></originfeat_hdmap_dynamic_sidepass><originfeat_seaside _class='hudson.plugins.git.util.Build'><buildNumber>855</buildNumber><marked><SHA1>32572e0a5cf080be0a5f9b0166321401a2c65b60</SHA1><branch><SHA1>32572e0a5cf080be0a5f9b0166321401a2c65b60</SHA1><name>origin/feat_seaside</name></branch></marked><revision><SHA1>32572e0a5cf080be0a5f9b0166321401a2c65b60</SHA1><branch><SHA1>32572e0a5cf080be0a5f9b0166321401a2c65b60</SHA1><name>origin/feat_seaside</name></branch></revision></originfeat_seaside><originfeat_remote _class='hudson.plugins.git.util.Build'><buildNumber>1257</buildNumber><marked><SHA1>82b6c62336e681fa911b2f8b86cb34bbcf29642f</SHA1><branch><SHA1>82b6c62336e681fa911b2f8b86cb34bbcf29642f</SHA1><name>origin/feat_remote</name></branch></marked><revision><SHA1>82b6c62336e681fa911b2f8b86cb34bbcf29642f</SHA1><branch><SHA1>82b6c62336e681fa911b2f8b86cb34bbcf29642f</SHA1><name>origin/feat_remote</name></branch></revision></originfeat_remote><originfeat_destination_type _class='hudson.plugins.git.util.Build'><buildNumber>135</buildNumber><marked><SHA1>b51cc7e3e3d9d3aa46f780b17d3a38e68a9d43b5</SHA1><branch><SHA1>b51cc7e3e3d9d3aa46f780b17d3a38e68a9d43b5</SHA1><name>origin/feat_destination_type</name></branch></marked><revision><SHA1>b51cc7e3e3d9d3aa46f780b17d3a38e68a9d43b5</SHA1><branch><SHA1>b51cc7e3e3d9d3aa46f780b17d3a38e68a9d43b5</SHA1><name>origin/feat_destination_type</name></branch></revision></originfeat_destination_type><originfeat_new_lka _class='hudson.plugins.git.util.Build'><buildNumber>725</buildNumber><marked><SHA1>a5ddf2bf4bb5d3d6c0645f5dc27979824425bfbf</SHA1><branch><SHA1>a5ddf2bf4bb5d3d6c0645f5dc27979824425bfbf</SHA1><name>origin/feat_new_lka</name></branch></marked><revision><SHA1>a5ddf2bf4bb5d3d6c0645f5dc27979824425bfbf</SHA1><branch><SHA1>a5ddf2bf4bb5d3d6c0645f5dc27979824425bfbf</SHA1><name>origin/feat_new_lka</name></branch></revision></originfeat_new_lka><originfeat_chassis_err _class='hudson.plugins.git.util.Build'><buildNumber>257</buildNumber><marked><SHA1>1b3a0efd43c6f5750340d80aad3f191373ddf48f</SHA1><branch><SHA1>1b3a0efd43c6f5750340d80aad3f191373ddf48f</SHA1><name>origin/feat_chassis_err</name></branch></marked><revision><SHA1>1b3a0efd43c6f5750340d80aad3f191373ddf48f</SHA1><branch><SHA1>1b3a0efd43c6f5750340d80aad3f191373ddf48f</SHA1><name>origin/feat_chassis_err</name></branch></revision></originfeat_chassis_err><originfeat_entrance _class='hudson.plugins.git.util.Build'><buildNumber>1211</buildNumber><marked><SHA1>c7d55549d1fa29cc760a8efdb29a40e01d6d9147</SHA1><branch><SHA1>c7d55549d1fa29cc760a8efdb29a40e01d6d9147</SHA1><name>origin/feat_entrance</name></branch></marked><revision><SHA1>c7d55549d1fa29cc760a8efdb29a40e01d6d9147</SHA1><branch><SHA1>c7d55549d1fa29cc760a8efdb29a40e01d6d9147</SHA1><name>origin/feat_entrance</name></branch></revision></originfeat_entrance><originfeat_yangpu1 _class='hudson.plugins.git.util.Build'><buildNumber>1852</buildNumber><marked><SHA1>fcb1fdf1c53233f194b8e9f1689ec363d96b4305</SHA1><branch><SHA1>fcb1fdf1c53233f194b8e9f1689ec363d96b4305</SHA1><name>origin/feat_yangpu1</name></branch></marked><revision><SHA1>fcb1fdf1c53233f194b8e9f1689ec363d96b4305</SHA1><branch><SHA1>fcb1fdf1c53233f194b8e9f1689ec363d96b4305</SHA1><name>origin/feat_yangpu1</name></branch></revision></originfeat_yangpu1><origincl_action_type _class='hudson.plugins.git.util.Build'><buildNumber>239</buildNumber><marked><SHA1>e6a438b106a2477add9de57f4f989471f7f9cbc3</SHA1><branch><SHA1>e6a438b106a2477add9de57f4f989471f7f9cbc3</SHA1><name>origin/cl_action_type</name></branch></marked><revision><SHA1>e6a438b106a2477add9de57f4f989471f7f9cbc3</SHA1><branch><SHA1>e6a438b106a2477add9de57f4f989471f7f9cbc3</SHA1><name>origin/cl_action_type</name></branch></revision></origincl_action_type><originfeat_qg_LD _class='hudson.plugins.git.util.Build'><buildNumber>1074</buildNumber><marked><SHA1>e57fe3ca793b6a61fc10de0c24e2ccf524d99813</SHA1><branch><SHA1>e57fe3ca793b6a61fc10de0c24e2ccf524d99813</SHA1><name>origin/feat_qg_LD</name></branch></marked><revision><SHA1>e57fe3ca793b6a61fc10de0c24e2ccf524d99813</SHA1><branch><SHA1>e57fe3ca793b6a61fc10de0c24e2ccf524d99813</SHA1><name>origin/feat_qg_LD</name></branch></revision></originfeat_qg_LD><originfeat_bulk_target _class='hudson.plugins.git.util.Build'><buildNumber>380</buildNumber><marked><SHA1>0c20e4b451ce1fc8c5e1601a83aa468afcc7c3d0</SHA1><branch><SHA1>0c20e4b451ce1fc8c5e1601a83aa468afcc7c3d0</SHA1><name>origin/feat_bulk_target</name></branch></marked><revision><SHA1>0c20e4b451ce1fc8c5e1601a83aa468afcc7c3d0</SHA1><branch><SHA1>0c20e4b451ce1fc8c5e1601a83aa468afcc7c3d0</SHA1><name>origin/feat_bulk_target</name></branch></revision></originfeat_bulk_target><originfeat_truck_reverse_tmp _class='hudson.plugins.git.util.Build'><buildNumber>711</buildNumber><marked><SHA1>a1c5943493421474ff3e42146b128ba57c28b486</SHA1><branch><SHA1>a1c5943493421474ff3e42146b128ba57c28b486</SHA1><name>origin/feat_truck_reverse_tmp</name></branch></marked><revision><SHA1>a1c5943493421474ff3e42146b128ba57c28b486</SHA1><branch><SHA1>a1c5943493421474ff3e42146b128ba57c28b486</SHA1><name>origin/feat_truck_reverse_tmp</name></branch></revision></originfeat_truck_reverse_tmp><originfeat_pnc_target _class='hudson.plugins.git.util.Build'><buildNumber>672</buildNumber><marked><SHA1>1a53d5a00fd45c684e78b66d519f642beee50fb7</SHA1><branch><SHA1>1a53d5a00fd45c684e78b66d519f642beee50fb7</SHA1><name>origin/feat_pnc_target</name></branch></marked><revision><SHA1>1a53d5a00fd45c684e78b66d519f642beee50fb7</SHA1><branch><SHA1>1a53d5a00fd45c684e78b66d519f642beee50fb7</SHA1><name>origin/feat_pnc_target</name></branch></revision></originfeat_pnc_target><originfeat_task _class='hudson.plugins.git.util.Build'><buildNumber>2030</buildNumber><marked><SHA1>dbfe05f83bac1eb0159e06d9a0382522d3afa3d0</SHA1><branch><SHA1>dbfe05f83bac1eb0159e06d9a0382522d3afa3d0</SHA1><name>origin/feat_task</name></branch></marked><revision><SHA1>dbfe05f83bac1eb0159e06d9a0382522d3afa3d0</SHA1><branch><SHA1>dbfe05f83bac1eb0159e06d9a0382522d3afa3d0</SHA1><name>origin/feat_task</name></branch></revision></originfeat_task><originfeat_ssep_wbca_2 _class='hudson.plugins.git.util.Build'><buildNumber>869</buildNumber><marked><SHA1>031678cb50ea58b10b2d14e027c86a97487b8a20</SHA1><branch><SHA1>031678cb50ea58b10b2d14e027c86a97487b8a20</SHA1><name>origin/feat_ssep_wbca_2</name></branch></marked><revision><SHA1>031678cb50ea58b10b2d14e027c86a97487b8a20</SHA1><branch><SHA1>031678cb50ea58b10b2d14e027c86a97487b8a20</SHA1><name>origin/feat_ssep_wbca_2</name></branch></revision></originfeat_ssep_wbca_2><originfeat_target _class='hudson.plugins.git.util.Build'><buildNumber>812</buildNumber><marked><SHA1>a713ad7789ccfa7445b4d39ed2eea3948aa5cd31</SHA1><branch><SHA1>a713ad7789ccfa7445b4d39ed2eea3948aa5cd31</SHA1><name>origin/feat_target</name></branch></marked><revision><SHA1>a713ad7789ccfa7445b4d39ed2eea3948aa5cd31</SHA1><branch><SHA1>a713ad7789ccfa7445b4d39ed2eea3948aa5cd31</SHA1><name>origin/feat_target</name></branch></revision></originfeat_target><originfeat_qianggang_refactor_base _class='hudson.plugins.git.util.Build'><buildNumber>1347</buildNumber><marked><SHA1>85b0e015f22a97ba8a1152c12fed667f3f594ac4</SHA1><branch><SHA1>85b0e015f22a97ba8a1152c12fed667f3f594ac4</SHA1><name>origin/feat_qianggang_refactor_base</name></branch></marked><revision><SHA1>85b0e015f22a97ba8a1152c12fed667f3f594ac4</SHA1><branch><SHA1>85b0e015f22a97ba8a1152c12fed667f3f594ac4</SHA1><name>origin/feat_qianggang_refactor_base</name></branch></revision></originfeat_qianggang_refactor_base><originfeat_align _class='hudson.plugins.git.util.Build'><buildNumber>424</buildNumber><marked><SHA1>ebbef1a1b30c3bae3cbffdcfbdf64dc7fe22a736</SHA1><branch><SHA1>ebbef1a1b30c3bae3cbffdcfbdf64dc7fe22a736</SHA1><name>origin/feat_align</name></branch></marked><revision><SHA1>ebbef1a1b30c3bae3cbffdcfbdf64dc7fe22a736</SHA1><branch><SHA1>ebbef1a1b30c3bae3cbffdcfbdf64dc7fe22a736</SHA1><name>origin/feat_align</name></branch></revision></originfeat_align><originfeat_below_plane_test _class='hudson.plugins.git.util.Build'><buildNumber>801</buildNumber><marked><SHA1>5c08d2adecb053192a885f7a03148f9254fe0db9</SHA1><branch><SHA1>5c08d2adecb053192a885f7a03148f9254fe0db9</SHA1><name>origin/feat_below_plane_test</name></branch></marked><revision><SHA1>5c08d2adecb053192a885f7a03148f9254fe0db9</SHA1><branch><SHA1>5c08d2adecb053192a885f7a03148f9254fe0db9</SHA1><name>origin/feat_below_plane_test</name></branch></revision></originfeat_below_plane_test><originfeat_trajectory _class='hudson.plugins.git.util.Build'><buildNumber>2011</buildNumber><marked><SHA1>779b6d5d34b3277c91752798ba87f7f422e9db60</SHA1><branch><SHA1>779b6d5d34b3277c91752798ba87f7f422e9db60</SHA1><name>origin/feat_trajectory</name></branch></marked><revision><SHA1>779b6d5d34b3277c91752798ba87f7f422e9db60</SHA1><branch><SHA1>779b6d5d34b3277c91752798ba87f7f422e9db60</SHA1><name>origin/feat_trajectory</name></branch></revision></originfeat_trajectory><originfeat_below_plane _class='hudson.plugins.git.util.Build'><buildNumber>821</buildNumber><marked><SHA1>4b71eab7a509abe41326ffcf34f7fa8b9c6e5171</SHA1><branch><SHA1>4b71eab7a509abe41326ffcf34f7fa8b9c6e5171</SHA1><name>origin/feat_below_plane</name></branch></marked><revision><SHA1>4b71eab7a509abe41326ffcf34f7fa8b9c6e5171</SHA1><branch><SHA1>4b71eab7a509abe41326ffcf34f7fa8b9c6e5171</SHA1><name>origin/feat_below_plane</name></branch></revision></originfeat_below_plane><originfeat_ros2_raw _class='hudson.plugins.git.util.Build'><buildNumber>2069</buildNumber><marked><SHA1>d5c2906f9643bbd187a340e0c7d97ab36c06f008</SHA1><branch><SHA1>d5c2906f9643bbd187a340e0c7d97ab36c06f008</SHA1><name>origin/feat_ros2_raw</name></branch></marked><revision><SHA1>d5c2906f9643bbd187a340e0c7d97ab36c06f008</SHA1><branch><SHA1>d5c2906f9643bbd187a340e0c7d97ab36c06f008</SHA1><name>origin/feat_ros2_raw</name></branch></revision></originfeat_ros2_raw><originfeat_error_2 _class='hudson.plugins.git.util.Build'><buildNumber>1702</buildNumber><marked><SHA1>dc5ce83a9372df1190690218ce64fd1058bcc3f3</SHA1><branch><SHA1>dc5ce83a9372df1190690218ce64fd1058bcc3f3</SHA1><name>origin/feat_error_2</name></branch></marked><revision><SHA1>dc5ce83a9372df1190690218ce64fd1058bcc3f3</SHA1><branch><SHA1>dc5ce83a9372df1190690218ce64fd1058bcc3f3</SHA1><name>origin/feat_error_2</name></branch></revision></originfeat_error_2><originfeat_RVM_expanding _class='hudson.plugins.git.util.Build'><buildNumber>57</buildNumber><marked><SHA1>6c5ba460a973c6efb925c1b8ac0c0c66ae67382d</SHA1><branch><SHA1>6c5ba460a973c6efb925c1b8ac0c0c66ae67382d</SHA1><name>origin/feat_RVM_expanding</name></branch></marked><revision><SHA1>6c5ba460a973c6efb925c1b8ac0c0c66ae67382d</SHA1><branch><SHA1>6c5ba460a973c6efb925c1b8ac0c0c66ae67382d</SHA1><name>origin/feat_RVM_expanding</name></branch></revision></originfeat_RVM_expanding><originfeat_xilian _class='hudson.plugins.git.util.Build'><buildNumber>1786</buildNumber><marked><SHA1>d97fcd10176d05afcd939eb6c9b52410b911ec04</SHA1><branch><SHA1>d97fcd10176d05afcd939eb6c9b52410b911ec04</SHA1><name>origin/feat_xilian</name></branch></marked><revision><SHA1>d97fcd10176d05afcd939eb6c9b52410b911ec04</SHA1><branch><SHA1>d97fcd10176d05afcd939eb6c9b52410b911ec04</SHA1><name>origin/feat_xilian</name></branch></revision></originfeat_xilian><originfeat_remote_open_space _class='hudson.plugins.git.util.Build'><buildNumber>1223</buildNumber><marked><SHA1>890fc6e47593fa42eabdbfd10df1090d3e21670d</SHA1><branch><SHA1>890fc6e47593fa42eabdbfd10df1090d3e21670d</SHA1><name>origin/feat_remote_open_space</name></branch></marked><revision><SHA1>890fc6e47593fa42eabdbfd10df1090d3e21670d</SHA1><branch><SHA1>890fc6e47593fa42eabdbfd10df1090d3e21670d</SHA1><name>origin/feat_remote_open_space</name></branch></revision></originfeat_remote_open_space><originfix_creep _class='hudson.plugins.git.util.Build'><buildNumber>298</buildNumber><marked><SHA1>40037b22796a0a57a1a9532f8dee6f81a1dea48c</SHA1><branch><SHA1>40037b22796a0a57a1a9532f8dee6f81a1dea48c</SHA1><name>origin/fix_creep</name></branch></marked><revision><SHA1>40037b22796a0a57a1a9532f8dee6f81a1dea48c</SHA1><branch><SHA1>40037b22796a0a57a1a9532f8dee6f81a1dea48c</SHA1><name>origin/fix_creep</name></branch></revision></originfix_creep><origindevel_ex_obj _class='hudson.plugins.git.util.Build'><buildNumber>161</buildNumber><marked><SHA1>784da86120c574a6c6eadaf2a1363b0bdd7ddd85</SHA1><branch><SHA1>784da86120c574a6c6eadaf2a1363b0bdd7ddd85</SHA1><name>origin/devel_ex_obj</name></branch></marked><revision><SHA1>784da86120c574a6c6eadaf2a1363b0bdd7ddd85</SHA1><branch><SHA1>784da86120c574a6c6eadaf2a1363b0bdd7ddd85</SHA1><name>origin/devel_ex_obj</name></branch></revision></origindevel_ex_obj><originfeat_trajectory_daxie _class='hudson.plugins.git.util.Build'><buildNumber>1726</buildNumber><marked><SHA1>97510c1a0394a537514724012f825fff6cf0f49e</SHA1><branch><SHA1>97510c1a0394a537514724012f825fff6cf0f49e</SHA1><name>origin/feat_trajectory_daxie</name></branch></marked><revision><SHA1>97510c1a0394a537514724012f825fff6cf0f49e</SHA1><branch><SHA1>97510c1a0394a537514724012f825fff6cf0f49e</SHA1><name>origin/feat_trajectory_daxie</name></branch></revision></originfeat_trajectory_daxie><originfeat_wbca_qp_search _class='hudson.plugins.git.util.Build'><buildNumber>664</buildNumber><marked><SHA1>a4f845451bbc421516777aa6574936377cfe8d52</SHA1><branch><SHA1>a4f845451bbc421516777aa6574936377cfe8d52</SHA1><name>origin/feat_wbca_qp_search</name></branch></marked><revision><SHA1>a4f845451bbc421516777aa6574936377cfe8d52</SHA1><branch><SHA1>a4f845451bbc421516777aa6574936377cfe8d52</SHA1><name>origin/feat_wbca_qp_search</name></branch></revision></originfeat_wbca_qp_search><originfeat_new_lka_v2 _class='hudson.plugins.git.util.Build'><buildNumber>798</buildNumber><marked><SHA1>72c21aeb73707ea3f17e9ad2a4180f5b6643bfdc</SHA1><branch><SHA1>72c21aeb73707ea3f17e9ad2a4180f5b6643bfdc</SHA1><name>origin/feat_new_lka_v2</name></branch></marked><revision><SHA1>72c21aeb73707ea3f17e9ad2a4180f5b6643bfdc</SHA1><branch><SHA1>72c21aeb73707ea3f17e9ad2a4180f5b6643bfdc</SHA1><name>origin/feat_new_lka_v2</name></branch></revision></originfeat_new_lka_v2><originfeat_youyiguan _class='hudson.plugins.git.util.Build'><buildNumber>1397</buildNumber><marked><SHA1>110f4bfd572e283acf213ad889de68e09a12e780</SHA1><branch><SHA1>110f4bfd572e283acf213ad889de68e09a12e780</SHA1><name>origin/feat_youyiguan</name></branch></marked><revision><SHA1>110f4bfd572e283acf213ad889de68e09a12e780</SHA1><branch><SHA1>110f4bfd572e283acf213ad889de68e09a12e780</SHA1><name>origin/feat_youyiguan</name></branch></revision></originfeat_youyiguan><originfeat_daxie_proto _class='hudson.plugins.git.util.Build'><buildNumber>2178</buildNumber><marked><SHA1>5a689e5d0921a7169f949608927e47d038b4136f</SHA1><branch><SHA1>5a689e5d0921a7169f949608927e47d038b4136f</SHA1><name>origin/feat_daxie_proto</name></branch></marked><revision><SHA1>5a689e5d0921a7169f949608927e47d038b4136f</SHA1><branch><SHA1>5a689e5d0921a7169f949608927e47d038b4136f</SHA1><name>origin/feat_daxie_proto</name></branch></revision></originfeat_daxie_proto><origintmp_LD4_snapshot _class='hudson.plugins.git.util.Build'><buildNumber>124</buildNumber><marked><SHA1>726604b957bcad12703a6eee4ae7a0acbf96ae28</SHA1><branch><SHA1>726604b957bcad12703a6eee4ae7a0acbf96ae28</SHA1><name>origin/tmp_LD4_snapshot</name></branch></marked><revision><SHA1>726604b957bcad12703a6eee4ae7a0acbf96ae28</SHA1><branch><SHA1>726604b957bcad12703a6eee4ae7a0acbf96ae28</SHA1><name>origin/tmp_LD4_snapshot</name></branch></revision></origintmp_LD4_snapshot><origintest_pedestrian_alarm _class='hudson.plugins.git.util.Build'><buildNumber>1909</buildNumber><marked><SHA1>79cd4db36725f9448b1958bbd064348b81c5045b</SHA1><branch><SHA1>79cd4db36725f9448b1958bbd064348b81c5045b</SHA1><name>origin/test_pedestrian_alarm</name></branch></marked><revision><SHA1>79cd4db36725f9448b1958bbd064348b81c5045b</SHA1><branch><SHA1>79cd4db36725f9448b1958bbd064348b81c5045b</SHA1><name>origin/test_pedestrian_alarm</name></branch></revision></origintest_pedestrian_alarm><originfeat_sq_LD _class='hudson.plugins.git.util.Build'><buildNumber>1450</buildNumber><marked><SHA1>f5b7dfe8a9ee3b369eca07ed87fafb8f866ec2a4</SHA1><branch><SHA1>f5b7dfe8a9ee3b369eca07ed87fafb8f866ec2a4</SHA1><name>origin/feat_sq_LD</name></branch></marked><revision><SHA1>f5b7dfe8a9ee3b369eca07ed87fafb8f866ec2a4</SHA1><branch><SHA1>f5b7dfe8a9ee3b369eca07ed87fafb8f866ec2a4</SHA1><name>origin/feat_sq_LD</name></branch></revision></originfeat_sq_LD><originfeat_sidepass_decider _class='hudson.plugins.git.util.Build'><buildNumber>2092</buildNumber><marked><SHA1>5e850185f8ec461f7475603e6a0859aeb500a014</SHA1><branch><SHA1>5e850185f8ec461f7475603e6a0859aeb500a014</SHA1><name>origin/feat_sidepass_decider</name></branch></marked><revision><SHA1>5e850185f8ec461f7475603e6a0859aeb500a014</SHA1><branch><SHA1>5e850185f8ec461f7475603e6a0859aeb500a014</SHA1><name>origin/feat_sidepass_decider</name></branch></revision></originfeat_sidepass_decider><originfeat_block _class='hudson.plugins.git.util.Build'><buildNumber>331</buildNumber><marked><SHA1>2bd196c123c11d415e32023df4f795f28a62e2db</SHA1><branch><SHA1>2bd196c123c11d415e32023df4f795f28a62e2db</SHA1><name>origin/feat_block</name></branch></marked><revision><SHA1>2bd196c123c11d415e32023df4f795f28a62e2db</SHA1><branch><SHA1>2bd196c123c11d415e32023df4f795f28a62e2db</SHA1><name>origin/feat_block</name></branch></revision></originfeat_block><originfeat_bend_decider _class='hudson.plugins.git.util.Build'><buildNumber>150</buildNumber><marked><SHA1>a723f7f5bcc15bc8b355c7460f5023308b438b98</SHA1><branch><SHA1>a723f7f5bcc15bc8b355c7460f5023308b438b98</SHA1><name>origin/feat_bend_decider</name></branch></marked><revision><SHA1>a723f7f5bcc15bc8b355c7460f5023308b438b98</SHA1><branch><SHA1>a723f7f5bcc15bc8b355c7460f5023308b438b98</SHA1><name>origin/feat_bend_decider</name></branch></revision></originfeat_bend_decider><originfeat_lattice_ref_speed _class='hudson.plugins.git.util.Build'><buildNumber>1977</buildNumber><marked><SHA1>bf1d65551bf9244e374ab05672fb4a86190c2958</SHA1><branch><SHA1>bf1d65551bf9244e374ab05672fb4a86190c2958</SHA1><name>origin/feat_lattice_ref_speed</name></branch></marked><revision><SHA1>bf1d65551bf9244e374ab05672fb4a86190c2958</SHA1><branch><SHA1>bf1d65551bf9244e374ab05672fb4a86190c2958</SHA1><name>origin/feat_lattice_ref_speed</name></branch></revision></originfeat_lattice_ref_speed><originfeat_wbca _class='hudson.plugins.git.util.Build'><buildNumber>826</buildNumber><marked><SHA1>54df14224af0595694e9cbb8bf44e084f28e8a3f</SHA1><branch><SHA1>54df14224af0595694e9cbb8bf44e084f28e8a3f</SHA1><name>origin/feat_wbca</name></branch></marked><revision><SHA1>54df14224af0595694e9cbb8bf44e084f28e8a3f</SHA1><branch><SHA1>54df14224af0595694e9cbb8bf44e084f28e8a3f</SHA1><name>origin/feat_wbca</name></branch></revision></originfeat_wbca><originfeat_qg_speed_up _class='hudson.plugins.git.util.Build'><buildNumber>1253</buildNumber><marked><SHA1>b0b5b8e15daf690eea56c5e9ca9ffcbf663c5868</SHA1><branch><SHA1>b0b5b8e15daf690eea56c5e9ca9ffcbf663c5868</SHA1><name>origin/feat_qg_speed_up</name></branch></marked><revision><SHA1>b0b5b8e15daf690eea56c5e9ca9ffcbf663c5868</SHA1><branch><SHA1>b0b5b8e15daf690eea56c5e9ca9ffcbf663c5868</SHA1><name>origin/feat_qg_speed_up</name></branch></revision></originfeat_qg_speed_up><originfeat_hfsm_direction _class='hudson.plugins.git.util.Build'><buildNumber>126</buildNumber><marked><SHA1>b868d7ee8d7704e71abb1bdcb62055b3c100abca</SHA1><branch><SHA1>b868d7ee8d7704e71abb1bdcb62055b3c100abca</SHA1><name>origin/feat_hfsm_direction</name></branch></marked><revision><SHA1>b868d7ee8d7704e71abb1bdcb62055b3c100abca</SHA1><branch><SHA1>b868d7ee8d7704e71abb1bdcb62055b3c100abca</SHA1><name>origin/feat_hfsm_direction</name></branch></revision></originfeat_hfsm_direction><originfeat_trajectory_qiangang _class='hudson.plugins.git.util.Build'><buildNumber>1832</buildNumber><marked><SHA1>3c014a88a977f1fa72e9a25de08998423c6d4633</SHA1><branch><SHA1>3c014a88a977f1fa72e9a25de08998423c6d4633</SHA1><name>origin/feat_trajectory_qiangang</name></branch></marked><revision><SHA1>3c014a88a977f1fa72e9a25de08998423c6d4633</SHA1><branch><SHA1>3c014a88a977f1fa72e9a25de08998423c6d4633</SHA1><name>origin/feat_trajectory_qiangang</name></branch></revision></originfeat_trajectory_qiangang><originfix_action_type _class='hudson.plugins.git.util.Build'><buildNumber>260</buildNumber><marked><SHA1>2a0f28492aeed5bc862a8d6f6c02f7b07e5d4248</SHA1><branch><SHA1>2a0f28492aeed5bc862a8d6f6c02f7b07e5d4248</SHA1><name>origin/fix_action_type</name></branch></marked><revision><SHA1>2a0f28492aeed5bc862a8d6f6c02f7b07e5d4248</SHA1><branch><SHA1>2a0f28492aeed5bc862a8d6f6c02f7b07e5d4248</SHA1><name>origin/fix_action_type</name></branch></revision></originfix_action_type><originfeat_ssep_imv_enter_station _class='hudson.plugins.git.util.Build'><buildNumber>1122</buildNumber><marked><SHA1>2282c6f06407cbfb5d8ef37f429013e6637ef2d4</SHA1><branch><SHA1>2282c6f06407cbfb5d8ef37f429013e6637ef2d4</SHA1><name>origin/feat_ssep_imv_enter_station</name></branch></marked><revision><SHA1>2282c6f06407cbfb5d8ef37f429013e6637ef2d4</SHA1><branch><SHA1>2282c6f06407cbfb5d8ef37f429013e6637ef2d4</SHA1><name>origin/feat_ssep_imv_enter_station</name></branch></revision></originfeat_ssep_imv_enter_station><originfeat_boundary_type _class='hudson.plugins.git.util.Build'><buildNumber>326</buildNumber><marked><SHA1>1a4a5729ae509db04578d9bae14c96c86988bd04</SHA1><branch><SHA1>1a4a5729ae509db04578d9bae14c96c86988bd04</SHA1><name>origin/feat_boundary_type</name></branch></marked><revision><SHA1>1a4a5729ae509db04578d9bae14c96c86988bd04</SHA1><branch><SHA1>1a4a5729ae509db04578d9bae14c96c86988bd04</SHA1><name>origin/feat_boundary_type</name></branch></revision></originfeat_boundary_type><originfeat_wbca_truck_dp _class='hudson.plugins.git.util.Build'><buildNumber>594</buildNumber><marked><SHA1>2a2a8d71f190459fe1ad30bef5c2cce424ed05b6</SHA1><branch><SHA1>2a2a8d71f190459fe1ad30bef5c2cce424ed05b6</SHA1><name>origin/feat_wbca_truck_dp</name></branch></marked><revision><SHA1>2a2a8d71f190459fe1ad30bef5c2cce424ed05b6</SHA1><branch><SHA1>2a2a8d71f190459fe1ad30bef5c2cce424ed05b6</SHA1><name>origin/feat_wbca_truck_dp</name></branch></revision></originfeat_wbca_truck_dp><originfeat_taiyang _class='hudson.plugins.git.util.Build'><buildNumber>1771</buildNumber><marked><SHA1>2481bf3bbb2d9ac0e03d6e3360bf006b8eee72c5</SHA1><branch><SHA1>2481bf3bbb2d9ac0e03d6e3360bf006b8eee72c5</SHA1><name>origin/feat_taiyang</name></branch></marked><revision><SHA1>2481bf3bbb2d9ac0e03d6e3360bf006b8eee72c5</SHA1><branch><SHA1>2481bf3bbb2d9ac0e03d6e3360bf006b8eee72c5</SHA1><name>origin/feat_taiyang</name></branch></revision></originfeat_taiyang><originfeat_clear_area _class='hudson.plugins.git.util.Build'><buildNumber>1561</buildNumber><marked><SHA1>ec60685af092a1b9c7e92fccd81fa260c92c5fa3</SHA1><branch><SHA1>ec60685af092a1b9c7e92fccd81fa260c92c5fa3</SHA1><name>origin/feat_clear_area</name></branch></marked><revision><SHA1>ec60685af092a1b9c7e92fccd81fa260c92c5fa3</SHA1><branch><SHA1>ec60685af092a1b9c7e92fccd81fa260c92c5fa3</SHA1><name>origin/feat_clear_area</name></branch></revision></originfeat_clear_area><originfeat_block_data _class='hudson.plugins.git.util.Build'><buildNumber>1258</buildNumber><marked><SHA1>e4b53590f63add07d6ac719a8faa70eafb610f6c</SHA1><branch><SHA1>e4b53590f63add07d6ac719a8faa70eafb610f6c</SHA1><name>origin/feat_block_data</name></branch></marked><revision><SHA1>e4b53590f63add07d6ac719a8faa70eafb610f6c</SHA1><branch><SHA1>e4b53590f63add07d6ac719a8faa70eafb610f6c</SHA1><name>origin/feat_block_data</name></branch></revision></originfeat_block_data><originfeat_hairun _class='hudson.plugins.git.util.Build'><buildNumber>1962</buildNumber><marked><SHA1>d72976ffcf1198dc889eebc4158ede7ff7a4b7e3</SHA1><branch><SHA1>d72976ffcf1198dc889eebc4158ede7ff7a4b7e3</SHA1><name>origin/feat_hairun</name></branch></marked><revision><SHA1>d72976ffcf1198dc889eebc4158ede7ff7a4b7e3</SHA1><branch><SHA1>d72976ffcf1198dc889eebc4158ede7ff7a4b7e3</SHA1><name>origin/feat_hairun</name></branch></revision></originfeat_hairun><originfeat_dynamic_hd_map _class='hudson.plugins.git.util.Build'><buildNumber>382</buildNumber><marked><SHA1>d979069f193b3278b4bf5456cb737987424a7075</SHA1><branch><SHA1>d979069f193b3278b4bf5456cb737987424a7075</SHA1><name>origin/feat_dynamic_hd_map</name></branch></marked><revision><SHA1>d979069f193b3278b4bf5456cb737987424a7075</SHA1><branch><SHA1>d979069f193b3278b4bf5456cb737987424a7075</SHA1><name>origin/feat_dynamic_hd_map</name></branch></revision></originfeat_dynamic_hd_map><originfeat_qiangang _class='hudson.plugins.git.util.Build'><buildNumber>1756</buildNumber><marked><SHA1>aecf87a4b918714c30dc044500750f6fa06503db</SHA1><branch><SHA1>aecf87a4b918714c30dc044500750f6fa06503db</SHA1><name>origin/feat_qiangang</name></branch></marked><revision><SHA1>aecf87a4b918714c30dc044500750f6fa06503db</SHA1><branch><SHA1>aecf87a4b918714c30dc044500750f6fa06503db</SHA1><name>origin/feat_qiangang</name></branch></revision></originfeat_qiangang><originfeat_straddle_v2 _class='hudson.plugins.git.util.Build'><buildNumber>1951</buildNumber><marked><SHA1>aa5f11053bb9e7f5934ae5fc73f0c52f703b4583</SHA1><branch><SHA1>aa5f11053bb9e7f5934ae5fc73f0c52f703b4583</SHA1><name>origin/feat_straddle_v2</name></branch></marked><revision><SHA1>aa5f11053bb9e7f5934ae5fc73f0c52f703b4583</SHA1><branch><SHA1>aa5f11053bb9e7f5934ae5fc73f0c52f703b4583</SHA1><name>origin/feat_straddle_v2</name></branch></revision></originfeat_straddle_v2><refsremotesorigintangwenqingssep-improve-latency _class='hudson.plugins.git.util.Build'><buildNumber>738</buildNumber><marked><SHA1>520fbf85a0b49395abf72d0cbe1c7457c23e0743</SHA1><branch><SHA1>520fbf85a0b49395abf72d0cbe1c7457c23e0743</SHA1><name>refs/remotes/origin/tangwenqing/ssep-improve-latency</name></branch></marked><revision><SHA1>520fbf85a0b49395abf72d0cbe1c7457c23e0743</SHA1><branch><SHA1>520fbf85a0b49395abf72d0cbe1c7457c23e0743</SHA1><name>refs/remotes/origin/tangwenqing/ssep-improve-latency</name></branch></revision></refsremotesorigintangwenqingssep-improve-latency><originfeat_traffic _class='hudson.plugins.git.util.Build'><buildNumber>1348</buildNumber><marked><SHA1>65d8f7ddfa0eeffffdbfc3fd27e9651adf92796c</SHA1><branch><SHA1>65d8f7ddfa0eeffffdbfc3fd27e9651adf92796c</SHA1><name>origin/feat_traffic</name></branch></marked><revision><SHA1>65d8f7ddfa0eeffffdbfc3fd27e9651adf92796c</SHA1><branch><SHA1>65d8f7ddfa0eeffffdbfc3fd27e9651adf92796c</SHA1><name>origin/feat_traffic</name></branch></revision></originfeat_traffic><originfix_deadlock_restart _class='hudson.plugins.git.util.Build'><buildNumber>1925</buildNumber><marked><SHA1>587046e144b1050a05158d807de24b47911d0e60</SHA1><branch><SHA1>587046e144b1050a05158d807de24b47911d0e60</SHA1><name>origin/fix_deadlock_restart</name></branch></marked><revision><SHA1>587046e144b1050a05158d807de24b47911d0e60</SHA1><branch><SHA1>587046e144b1050a05158d807de24b47911d0e60</SHA1><name>origin/fix_deadlock_restart</name></branch></revision></originfix_deadlock_restart><originfeat_truck_bulk _class='hudson.plugins.git.util.Build'><buildNumber>667</buildNumber><marked><SHA1>e6f4362ba18bbaa85f57f5aa474137f7dc879165</SHA1><branch><SHA1>e6f4362ba18bbaa85f57f5aa474137f7dc879165</SHA1><name>origin/feat_truck_bulk</name></branch></marked><revision><SHA1>e6f4362ba18bbaa85f57f5aa474137f7dc879165</SHA1><branch><SHA1>e6f4362ba18bbaa85f57f5aa474137f7dc879165</SHA1><name>origin/feat_truck_bulk</name></branch></revision></originfeat_truck_bulk><originfeat_qiangang_refactor _class='hudson.plugins.git.util.Build'><buildNumber>1369</buildNumber><marked><SHA1>34ae0342b5807fc123efc3c6f60c40051b4c790b</SHA1><branch><SHA1>34ae0342b5807fc123efc3c6f60c40051b4c790b</SHA1><name>origin/feat_qiangang_refactor</name></branch></marked><revision><SHA1>34ae0342b5807fc123efc3c6f60c40051b4c790b</SHA1><branch><SHA1>34ae0342b5807fc123efc3c6f60c40051b4c790b</SHA1><name>origin/feat_qiangang_refactor</name></branch></revision></originfeat_qiangang_refactor><originfeat_sq_LD_test _class='hudson.plugins.git.util.Build'><buildNumber>1514</buildNumber><marked><SHA1>6255cb9d52b61dded26f200866c3300e49fd5424</SHA1><branch><SHA1>6255cb9d52b61dded26f200866c3300e49fd5424</SHA1><name>origin/feat_sq_LD_test</name></branch></marked><revision><SHA1>6255cb9d52b61dded26f200866c3300e49fd5424</SHA1><branch><SHA1>6255cb9d52b61dded26f200866c3300e49fd5424</SHA1><name>origin/feat_sq_LD_test</name></branch></revision></originfeat_sq_LD_test><originfeat_guide_line_lane_change _class='hudson.plugins.git.util.Build'><buildNumber>747</buildNumber><marked><SHA1>06bac4dbce1e7b82a7efc46cc23444dd23328d1d</SHA1><branch><SHA1>06bac4dbce1e7b82a7efc46cc23444dd23328d1d</SHA1><name>origin/feat_guide_line_lane_change</name></branch></marked><revision><SHA1>06bac4dbce1e7b82a7efc46cc23444dd23328d1d</SHA1><branch><SHA1>06bac4dbce1e7b82a7efc46cc23444dd23328d1d</SHA1><name>origin/feat_guide_line_lane_change</name></branch></revision></originfeat_guide_line_lane_change><originfeat_wh_trailer _class='hudson.plugins.git.util.Build'><buildNumber>2061</buildNumber><marked><SHA1>84f69b576855adcc7054f1dbe0b4cb63279f60c6</SHA1><branch><SHA1>84f69b576855adcc7054f1dbe0b4cb63279f60c6</SHA1><name>origin/feat_wh_trailer</name></branch></marked><revision><SHA1>84f69b576855adcc7054f1dbe0b4cb63279f60c6</SHA1><branch><SHA1>84f69b576855adcc7054f1dbe0b4cb63279f60c6</SHA1><name>origin/feat_wh_trailer</name></branch></revision></originfeat_wh_trailer><originfeat_trajectory_weihai _class='hudson.plugins.git.util.Build'><buildNumber>1882</buildNumber><marked><SHA1>0be2c6867114557a6eacfb0078192153c83c83a5</SHA1><branch><SHA1>0be2c6867114557a6eacfb0078192153c83c83a5</SHA1><name>origin/feat_trajectory_weihai</name></branch></marked><revision><SHA1>0be2c6867114557a6eacfb0078192153c83c83a5</SHA1><branch><SHA1>0be2c6867114557a6eacfb0078192153c83c83a5</SHA1><name>origin/feat_trajectory_weihai</name></branch></revision></originfeat_trajectory_weihai><originfeat_proto_jinxi _class='hudson.plugins.git.util.Build'><buildNumber>2139</buildNumber><marked><SHA1>a9134bdaec29e5e572101316101ffe33eb3ab13a</SHA1><branch><SHA1>a9134bdaec29e5e572101316101ffe33eb3ab13a</SHA1><name>origin/feat_proto_jinxi</name></branch></marked><revision><SHA1>a9134bdaec29e5e572101316101ffe33eb3ab13a</SHA1><branch><SHA1>a9134bdaec29e5e572101316101ffe33eb3ab13a</SHA1><name>origin/feat_proto_jinxi</name></branch></revision></originfeat_proto_jinxi><originfeat_weifang_aacreep _class='hudson.plugins.git.util.Build'><buildNumber>2171</buildNumber><marked><SHA1>9765986feb718c3dbdb57379e8120a4b455aae4d</SHA1><branch><SHA1>9765986feb718c3dbdb57379e8120a4b455aae4d</SHA1><name>origin/feat_weifang_aacreep</name></branch></marked><revision><SHA1>9765986feb718c3dbdb57379e8120a4b455aae4d</SHA1><branch><SHA1>9765986feb718c3dbdb57379e8120a4b455aae4d</SHA1><name>origin/feat_weifang_aacreep</name></branch></revision></originfeat_weifang_aacreep><originfeat_ros2_platoon_mpc _class='hudson.plugins.git.util.Build'><buildNumber>2084</buildNumber><marked><SHA1>0d27b36cc302441a7459936d3fbfd470973ec750</SHA1><branch><SHA1>0d27b36cc302441a7459936d3fbfd470973ec750</SHA1><name>origin/feat_ros2_platoon_mpc</name></branch></marked><revision><SHA1>0d27b36cc302441a7459936d3fbfd470973ec750</SHA1><branch><SHA1>0d27b36cc302441a7459936d3fbfd470973ec750</SHA1><name>origin/feat_ros2_platoon_mpc</name></branch></revision></originfeat_ros2_platoon_mpc><originfeat_seg_search _class='hudson.plugins.git.util.Build'><buildNumber>982</buildNumber><marked><SHA1>468bc74cb13dfad5a2e4aba6998983e2b3a9c202</SHA1><branch><SHA1>468bc74cb13dfad5a2e4aba6998983e2b3a9c202</SHA1><name>origin/feat_seg_search</name></branch></marked><revision><SHA1>468bc74cb13dfad5a2e4aba6998983e2b3a9c202</SHA1><branch><SHA1>468bc74cb13dfad5a2e4aba6998983e2b3a9c202</SHA1><name>origin/feat_seg_search</name></branch></revision></originfeat_seg_search><originfeat_proto_jinxi_2 _class='hudson.plugins.git.util.Build'><buildNumber>2150</buildNumber><marked><SHA1>6efb8024714d3063693e857288df97d676d9991b</SHA1><branch><SHA1>6efb8024714d3063693e857288df97d676d9991b</SHA1><name>origin/feat_proto_jinxi_2</name></branch></marked><revision><SHA1>6efb8024714d3063693e857288df97d676d9991b</SHA1><branch><SHA1>6efb8024714d3063693e857288df97d676d9991b</SHA1><name>origin/feat_proto_jinxi_2</name></branch></revision></originfeat_proto_jinxi_2><originfeat_wbca_backup _class='hudson.plugins.git.util.Build'><buildNumber>480</buildNumber><marked><SHA1>f479f95d1e31bfc01963fe22cb3ab6efcc3b23d1</SHA1><branch><SHA1>f479f95d1e31bfc01963fe22cb3ab6efcc3b23d1</SHA1><name>origin/feat_wbca_backup</name></branch></marked><revision><SHA1>f479f95d1e31bfc01963fe22cb3ab6efcc3b23d1</SHA1><branch><SHA1>f479f95d1e31bfc01963fe22cb3ab6efcc3b23d1</SHA1><name>origin/feat_wbca_backup</name></branch></revision></originfeat_wbca_backup><originfeat_sc_v2_old _class='hudson.plugins.git.util.Build'><buildNumber>1694</buildNumber><marked><SHA1>39340b8d50e9c4bfa92967b6eea2d93ef9b617ad</SHA1><branch><SHA1>39340b8d50e9c4bfa92967b6eea2d93ef9b617ad</SHA1><name>origin/feat_sc_v2_old</name></branch></marked><revision><SHA1>39340b8d50e9c4bfa92967b6eea2d93ef9b617ad</SHA1><branch><SHA1>39340b8d50e9c4bfa92967b6eea2d93ef9b617ad</SHA1><name>origin/feat_sc_v2_old</name></branch></revision></originfeat_sc_v2_old><originfeat_trajectory_hairun _class='hudson.plugins.git.util.Build'><buildNumber>1883</buildNumber><marked><SHA1>335cb0c3d0d91a66a22e0ac78648d592ecc58b56</SHA1><branch><SHA1>335cb0c3d0d91a66a22e0ac78648d592ecc58b56</SHA1><name>origin/feat_trajectory_hairun</name></branch></marked><revision><SHA1>335cb0c3d0d91a66a22e0ac78648d592ecc58b56</SHA1><branch><SHA1>335cb0c3d0d91a66a22e0ac78648d592ecc58b56</SHA1><name>origin/feat_trajectory_hairun</name></branch></revision></originfeat_trajectory_hairun><originfeat-hdmap _class='hudson.plugins.git.util.Build'><buildNumber>363</buildNumber><marked><SHA1>211888f1f4e81f87514411e3bd1e3dc23a4ae046</SHA1><branch><SHA1>211888f1f4e81f87514411e3bd1e3dc23a4ae046</SHA1><name>origin/feat-hdmap</name></branch></marked><revision><SHA1>211888f1f4e81f87514411e3bd1e3dc23a4ae046</SHA1><branch><SHA1>211888f1f4e81f87514411e3bd1e3dc23a4ae046</SHA1><name>origin/feat-hdmap</name></branch></revision></originfeat-hdmap><originfeat_keb_path_opt_task _class='hudson.plugins.git.util.Build'><buildNumber>1572</buildNumber><marked><SHA1>03b3cf39f7b16511a2dbe122e5ad34392670a516</SHA1><branch><SHA1>03b3cf39f7b16511a2dbe122e5ad34392670a516</SHA1><name>origin/feat_keb_path_opt_task</name></branch></marked><revision><SHA1>03b3cf39f7b16511a2dbe122e5ad34392670a516</SHA1><branch><SHA1>03b3cf39f7b16511a2dbe122e5ad34392670a516</SHA1><name>origin/feat_keb_path_opt_task</name></branch></revision></originfeat_keb_path_opt_task><originrc_dev _class='hudson.plugins.git.util.Build'><buildNumber>1267</buildNumber><marked><SHA1>1f83b21901518f710c4d73ce9d08d6571ce026d0</SHA1><branch><SHA1>1f83b21901518f710c4d73ce9d08d6571ce026d0</SHA1><name>origin/rc_dev</name></branch></marked><revision><SHA1>1f83b21901518f710c4d73ce9d08d6571ce026d0</SHA1><branch><SHA1>1f83b21901518f710c4d73ce9d08d6571ce026d0</SHA1><name>origin/rc_dev</name></branch></revision></originrc_dev><origintmp_djk_ssep _class='hudson.plugins.git.util.Build'><buildNumber>447</buildNumber><marked><SHA1>f03ed133cbf84976d6cf099761bf25345c7e8945</SHA1><branch><SHA1>f03ed133cbf84976d6cf099761bf25345c7e8945</SHA1><name>origin/tmp_djk_ssep</name></branch></marked><revision><SHA1>f03ed133cbf84976d6cf099761bf25345c7e8945</SHA1><branch><SHA1>f03ed133cbf84976d6cf099761bf25345c7e8945</SHA1><name>origin/tmp_djk_ssep</name></branch></revision></origintmp_djk_ssep><originfeat_wbca_truck_dp_dev _class='hudson.plugins.git.util.Build'><buildNumber>766</buildNumber><marked><SHA1>fbcec908efd6c586d1a9ac07492d1916c2761543</SHA1><branch><SHA1>fbcec908efd6c586d1a9ac07492d1916c2761543</SHA1><name>origin/feat_wbca_truck_dp_dev</name></branch></marked><revision><SHA1>fbcec908efd6c586d1a9ac07492d1916c2761543</SHA1><branch><SHA1>fbcec908efd6c586d1a9ac07492d1916c2761543</SHA1><name>origin/feat_wbca_truck_dp_dev</name></branch></revision></originfeat_wbca_truck_dp_dev><origintest_hr _class='hudson.plugins.git.util.Build'><buildNumber>787</buildNumber><marked><SHA1>1e10c9b364546121e29573c0300e3c48b67611a4</SHA1><branch><SHA1>1e10c9b364546121e29573c0300e3c48b67611a4</SHA1><name>origin/test_hr</name></branch></marked><revision><SHA1>1e10c9b364546121e29573c0300e3c48b67611a4</SHA1><branch><SHA1>1e10c9b364546121e29573c0300e3c48b67611a4</SHA1><name>origin/test_hr</name></branch></revision></origintest_hr><originfeat_side_pass _class='hudson.plugins.git.util.Build'><buildNumber>483</buildNumber><marked><SHA1>b20d7c381eeb7f624660868c8ef35a9e5c80b0b7</SHA1><branch><SHA1>b20d7c381eeb7f624660868c8ef35a9e5c80b0b7</SHA1><name>origin/feat_side_pass</name></branch></marked><revision><SHA1>b20d7c381eeb7f624660868c8ef35a9e5c80b0b7</SHA1><branch><SHA1>b20d7c381eeb7f624660868c8ef35a9e5c80b0b7</SHA1><name>origin/feat_side_pass</name></branch></revision></originfeat_side_pass><originssep-improve-latency _class='hudson.plugins.git.util.Build'><buildNumber>779</buildNumber><marked><SHA1>efaa88b8102251d8b12cc172176c6965ba05c41f</SHA1><branch><SHA1>efaa88b8102251d8b12cc172176c6965ba05c41f</SHA1><name>origin/ssep-improve-latency</name></branch></marked><revision><SHA1>efaa88b8102251d8b12cc172176c6965ba05c41f</SHA1><branch><SHA1>efaa88b8102251d8b12cc172176c6965ba05c41f</SHA1><name>origin/ssep-improve-latency</name></branch></revision></originssep-improve-latency><originfeat_LS_deviation _class='hudson.plugins.git.util.Build'><buildNumber>910</buildNumber><marked><SHA1>561b9666baea1c45219fec16ec74d0d0c62bd819</SHA1><branch><SHA1>561b9666baea1c45219fec16ec74d0d0c62bd819</SHA1><name>origin/feat_LS_deviation</name></branch></marked><revision><SHA1>561b9666baea1c45219fec16ec74d0d0c62bd819</SHA1><branch><SHA1>561b9666baea1c45219fec16ec74d0d0c62bd819</SHA1><name>origin/feat_LS_deviation</name></branch></revision></originfeat_LS_deviation><originfeat_wbca_truck _class='hudson.plugins.git.util.Build'><buildNumber>515</buildNumber><marked><SHA1>aba8c06c86955a34d5d6debb8e114385f0259633</SHA1><branch><SHA1>aba8c06c86955a34d5d6debb8e114385f0259633</SHA1><name>origin/feat_wbca_truck</name></branch></marked><revision><SHA1>aba8c06c86955a34d5d6debb8e114385f0259633</SHA1><branch><SHA1>aba8c06c86955a34d5d6debb8e114385f0259633</SHA1><name>origin/feat_wbca_truck</name></branch></revision></originfeat_wbca_truck><originfeat_imv_pull_over _class='hudson.plugins.git.util.Build'><buildNumber>1266</buildNumber><marked><SHA1>47dd1e17e3b7a1cacfa8af95d3a50e451c387dc1</SHA1><branch><SHA1>47dd1e17e3b7a1cacfa8af95d3a50e451c387dc1</SHA1><name>origin/feat_imv_pull_over</name></branch></marked><revision><SHA1>47dd1e17e3b7a1cacfa8af95d3a50e451c387dc1</SHA1><branch><SHA1>47dd1e17e3b7a1cacfa8af95d3a50e451c387dc1</SHA1><name>origin/feat_imv_pull_over</name></branch></revision></originfeat_imv_pull_over><originfeat_sqjb _class='hudson.plugins.git.util.Build'><buildNumber>1119</buildNumber><marked><SHA1>3527a793f3ade81518ceb5c982fa3e1c89b02711</SHA1><branch><SHA1>3527a793f3ade81518ceb5c982fa3e1c89b02711</SHA1><name>origin/feat_sqjb</name></branch></marked><revision><SHA1>3527a793f3ade81518ceb5c982fa3e1c89b02711</SHA1><branch><SHA1>3527a793f3ade81518ceb5c982fa3e1c89b02711</SHA1><name>origin/feat_sqjb</name></branch></revision></originfeat_sqjb><originfeat_qiangang_ssep_heatnet _class='hudson.plugins.git.util.Build'><buildNumber>1284</buildNumber><marked><SHA1>043c59ce1faa06b6a3ab6e6ea7887783b567751e</SHA1><branch><SHA1>043c59ce1faa06b6a3ab6e6ea7887783b567751e</SHA1><name>origin/feat_qiangang_ssep_heatnet</name></branch></marked><revision><SHA1>043c59ce1faa06b6a3ab6e6ea7887783b567751e</SHA1><branch><SHA1>043c59ce1faa06b6a3ab6e6ea7887783b567751e</SHA1><name>origin/feat_qiangang_ssep_heatnet</name></branch></revision></originfeat_qiangang_ssep_heatnet><originrebase_jinxi2_keb_html _class='hudson.plugins.git.util.Build'><buildNumber>2166</buildNumber><marked><SHA1>39f8e722a5af1d53d54bdf136357b3235457c2a4</SHA1><branch><SHA1>39f8e722a5af1d53d54bdf136357b3235457c2a4</SHA1><name>origin/rebase_jinxi2_keb_html</name></branch></marked><revision><SHA1>39f8e722a5af1d53d54bdf136357b3235457c2a4</SHA1><branch><SHA1>39f8e722a5af1d53d54bdf136357b3235457c2a4</SHA1><name>origin/rebase_jinxi2_keb_html</name></branch></revision></originrebase_jinxi2_keb_html><originfeat_truck_reverse _class='hudson.plugins.git.util.Build'><buildNumber>853</buildNumber><marked><SHA1>2527849cf681e0804ef5561c1b564dd434a5fe20</SHA1><branch><SHA1>2527849cf681e0804ef5561c1b564dd434a5fe20</SHA1><name>origin/feat_truck_reverse</name></branch></marked><revision><SHA1>2527849cf681e0804ef5561c1b564dd434a5fe20</SHA1><branch><SHA1>2527849cf681e0804ef5561c1b564dd434a5fe20</SHA1><name>origin/feat_truck_reverse</name></branch></revision></originfeat_truck_reverse><originfeat_sink_snapshot _class='hudson.plugins.git.util.Build'><buildNumber>270</buildNumber><marked><SHA1>396ad3472e9618a78105fe71a4271cbec91ddd2f</SHA1><branch><SHA1>396ad3472e9618a78105fe71a4271cbec91ddd2f</SHA1><name>origin/feat_sink_snapshot</name></branch></marked><revision><SHA1>396ad3472e9618a78105fe71a4271cbec91ddd2f</SHA1><branch><SHA1>396ad3472e9618a78105fe71a4271cbec91ddd2f</SHA1><name>origin/feat_sink_snapshot</name></branch></revision></originfeat_sink_snapshot><originfeat_stacker _class='hudson.plugins.git.util.Build'><buildNumber>488</buildNumber><marked><SHA1>f93b3e4bf900c1582854ede8fb00b1d43f66cf12</SHA1><branch><SHA1>f93b3e4bf900c1582854ede8fb00b1d43f66cf12</SHA1><name>origin/feat_stacker</name></branch></marked><revision><SHA1>f93b3e4bf900c1582854ede8fb00b1d43f66cf12</SHA1><branch><SHA1>f93b3e4bf900c1582854ede8fb00b1d43f66cf12</SHA1><name>origin/feat_stacker</name></branch></revision></originfeat_stacker><originfeat_daxie _class='hudson.plugins.git.util.Build'><buildNumber>1643</buildNumber><marked><SHA1>730037190ab095ff3004718347429c4e827549c3</SHA1><branch><SHA1>730037190ab095ff3004718347429c4e827549c3</SHA1><name>origin/feat_daxie</name></branch></marked><revision><SHA1>730037190ab095ff3004718347429c4e827549c3</SHA1><branch><SHA1>730037190ab095ff3004718347429c4e827549c3</SHA1><name>origin/feat_daxie</name></branch></revision></originfeat_daxie><originfeat_change_1 _class='hudson.plugins.git.util.Build'><buildNumber>306</buildNumber><marked><SHA1>2b9b5a487bfbd20ca64e0ba010e5657d4ab2bbef</SHA1><branch><SHA1>2b9b5a487bfbd20ca64e0ba010e5657d4ab2bbef</SHA1><name>origin/feat_change_1</name></branch></marked><revision><SHA1>2b9b5a487bfbd20ca64e0ba010e5657d4ab2bbef</SHA1><branch><SHA1>2b9b5a487bfbd20ca64e0ba010e5657d4ab2bbef</SHA1><name>origin/feat_change_1</name></branch></revision></originfeat_change_1><originfeat_yangpu _class='hudson.plugins.git.util.Build'><buildNumber>1727</buildNumber><marked><SHA1>1b8232a1c296987edf855d048e610da85a01131e</SHA1><branch><SHA1>1b8232a1c296987edf855d048e610da85a01131e</SHA1><name>origin/feat_yangpu</name></branch></marked><revision><SHA1>1b8232a1c296987edf855d048e610da85a01131e</SHA1><branch><SHA1>1b8232a1c296987edf855d048e610da85a01131e</SHA1><name>origin/feat_yangpu</name></branch></revision></originfeat_yangpu><originfeat_block_data_switch _class='hudson.plugins.git.util.Build'><buildNumber>980</buildNumber><marked><SHA1>671f8b9fb2418043687a2820a1a575a98cf71312</SHA1><branch><SHA1>671f8b9fb2418043687a2820a1a575a98cf71312</SHA1><name>origin/feat_block_data_switch</name></branch></marked><revision><SHA1>671f8b9fb2418043687a2820a1a575a98cf71312</SHA1><branch><SHA1>671f8b9fb2418043687a2820a1a575a98cf71312</SHA1><name>origin/feat_block_data_switch</name></branch></revision></originfeat_block_data_switch><originssep-geometric-searcher-test _class='hudson.plugins.git.util.Build'><buildNumber>894</buildNumber><marked><SHA1>a3962d2cff5ec8603a3373cd7ac2c8ac6e52196c</SHA1><branch><SHA1>a3962d2cff5ec8603a3373cd7ac2c8ac6e52196c</SHA1><name>origin/ssep-geometric-searcher-test</name></branch></marked><revision><SHA1>a3962d2cff5ec8603a3373cd7ac2c8ac6e52196c</SHA1><branch><SHA1>a3962d2cff5ec8603a3373cd7ac2c8ac6e52196c</SHA1><name>origin/ssep-geometric-searcher-test</name></branch></revision></originssep-geometric-searcher-test><originfeat_sidepass_lattice _class='hudson.plugins.git.util.Build'><buildNumber>2095</buildNumber><marked><SHA1>7b28a9cf19d4fe474fff3e76fed2eb528b46681d</SHA1><branch><SHA1>7b28a9cf19d4fe474fff3e76fed2eb528b46681d</SHA1><name>origin/feat_sidepass_lattice</name></branch></marked><revision><SHA1>7b28a9cf19d4fe474fff3e76fed2eb528b46681d</SHA1><branch><SHA1>7b28a9cf19d4fe474fff3e76fed2eb528b46681d</SHA1><name>origin/feat_sidepass_lattice</name></branch></revision></originfeat_sidepass_lattice><originfeat_yard_name _class='hudson.plugins.git.util.Build'><buildNumber>1072</buildNumber><marked><SHA1>fb3eb46878509f760b66cb36617be19d9d610c79</SHA1><branch><SHA1>fb3eb46878509f760b66cb36617be19d9d610c79</SHA1><name>origin/feat_yard_name</name></branch></marked><revision><SHA1>fb3eb46878509f760b66cb36617be19d9d610c79</SHA1><branch><SHA1>fb3eb46878509f760b66cb36617be19d9d610c79</SHA1><name>origin/feat_yard_name</name></branch></revision></originfeat_yard_name><origintmp_lon_decision_4 _class='hudson.plugins.git.util.Build'><buildNumber>96</buildNumber><marked><SHA1>71e064bede15f180450ac4b5db9d91c14b212d4c</SHA1><branch><SHA1>71e064bede15f180450ac4b5db9d91c14b212d4c</SHA1><name>origin/tmp_lon_decision_4</name></branch></marked><revision><SHA1>71e064bede15f180450ac4b5db9d91c14b212d4c</SHA1><branch><SHA1>71e064bede15f180450ac4b5db9d91c14b212d4c</SHA1><name>origin/tmp_lon_decision_4</name></branch></revision></origintmp_lon_decision_4><origintmp_lon_decision_3 _class='hudson.plugins.git.util.Build'><buildNumber>70</buildNumber><marked><SHA1>3369d60699427ed500ebc0fe4212e0198acbcfa3</SHA1><branch><SHA1>3369d60699427ed500ebc0fe4212e0198acbcfa3</SHA1><name>origin/tmp_lon_decision_3</name></branch></marked><revision><SHA1>3369d60699427ed500ebc0fe4212e0198acbcfa3</SHA1><branch><SHA1>3369d60699427ed500ebc0fe4212e0198acbcfa3</SHA1><name>origin/tmp_lon_decision_3</name></branch></revision></origintmp_lon_decision_3><origintest_lon_decision _class='hudson.plugins.git.util.Build'><buildNumber>688</buildNumber><marked><SHA1>d975905da5fa9e032aca5e5548151f50dca472f5</SHA1><branch><SHA1>d975905da5fa9e032aca5e5548151f50dca472f5</SHA1><name>origin/test_lon_decision</name></branch></marked><revision><SHA1>d975905da5fa9e032aca5e5548151f50dca472f5</SHA1><branch><SHA1>d975905da5fa9e032aca5e5548151f50dca472f5</SHA1><name>origin/test_lon_decision</name></branch></revision></origintest_lon_decision><originfeat_baoshishun _class='hudson.plugins.git.util.Build'><buildNumber>1763</buildNumber><marked><SHA1>bd980a9f7945cff4fe8ab5e4c52a872b9928a648</SHA1><branch><SHA1>bd980a9f7945cff4fe8ab5e4c52a872b9928a648</SHA1><name>origin/feat_baoshishun</name></branch></marked><revision><SHA1>bd980a9f7945cff4fe8ab5e4c52a872b9928a648</SHA1><branch><SHA1>bd980a9f7945cff4fe8ab5e4c52a872b9928a648</SHA1><name>origin/feat_baoshishun</name></branch></revision></originfeat_baoshishun><originfeat_trajectory_suxi _class='hudson.plugins.git.util.Build'><buildNumber>1812</buildNumber><marked><SHA1>0195fa8bcb664f03f392909747fde1257aa0c480</SHA1><branch><SHA1>0195fa8bcb664f03f392909747fde1257aa0c480</SHA1><name>origin/feat_trajectory_suxi</name></branch></marked><revision><SHA1>0195fa8bcb664f03f392909747fde1257aa0c480</SHA1><branch><SHA1>0195fa8bcb664f03f392909747fde1257aa0c480</SHA1><name>origin/feat_trajectory_suxi</name></branch></revision></originfeat_trajectory_suxi><originfeat_straddle _class='hudson.plugins.git.util.Build'><buildNumber>1292</buildNumber><marked><SHA1>4fda3dd5ddbb3047e946022e8b4517405439390d</SHA1><branch><SHA1>4fda3dd5ddbb3047e946022e8b4517405439390d</SHA1><name>origin/feat_straddle</name></branch></marked><revision><SHA1>4fda3dd5ddbb3047e946022e8b4517405439390d</SHA1><branch><SHA1>4fda3dd5ddbb3047e946022e8b4517405439390d</SHA1><name>origin/feat_straddle</name></branch></revision></originfeat_straddle><origintmp_reversing_truck _class='hudson.plugins.git.util.Build'><buildNumber>437</buildNumber><marked><SHA1>fabd257bdea6f4c65211f0552d027c2d48d67ff1</SHA1><branch><SHA1>fabd257bdea6f4c65211f0552d027c2d48d67ff1</SHA1><name>origin/tmp_reversing_truck</name></branch></marked><revision><SHA1>fabd257bdea6f4c65211f0552d027c2d48d67ff1</SHA1><branch><SHA1>fabd257bdea6f4c65211f0552d027c2d48d67ff1</SHA1><name>origin/tmp_reversing_truck</name></branch></revision></origintmp_reversing_truck><originlower_safe_thr_region _class='hudson.plugins.git.util.Build'><buildNumber>254</buildNumber><marked><SHA1>63e3449599733e81768584360442037f700bd130</SHA1><branch><SHA1>63e3449599733e81768584360442037f700bd130</SHA1><name>origin/lower_safe_thr_region</name></branch></marked><revision><SHA1>63e3449599733e81768584360442037f700bd130</SHA1><branch><SHA1>63e3449599733e81768584360442037f700bd130</SHA1><name>origin/lower_safe_thr_region</name></branch></revision></originlower_safe_thr_region><originfeat_reverse_lane _class='hudson.plugins.git.util.Build'><buildNumber>197</buildNumber><marked><SHA1>6806fd45934e755534dbaa5e7ab1c0c26c03c41c</SHA1><branch><SHA1>6806fd45934e755534dbaa5e7ab1c0c26c03c41c</SHA1><name>origin/feat_reverse_lane</name></branch></marked><revision><SHA1>6806fd45934e755534dbaa5e7ab1c0c26c03c41c</SHA1><branch><SHA1>6806fd45934e755534dbaa5e7ab1c0c26c03c41c</SHA1><name>origin/feat_reverse_lane</name></branch></revision></originfeat_reverse_lane><originfeat_yard_decider _class='hudson.plugins.git.util.Build'><buildNumber>451</buildNumber><marked><SHA1>ceaec1a86e5cc4dfd017f0ec608a229ad757c437</SHA1><branch><SHA1>ceaec1a86e5cc4dfd017f0ec608a229ad757c437</SHA1><name>origin/feat_yard_decider</name></branch></marked><revision><SHA1>ceaec1a86e5cc4dfd017f0ec608a229ad757c437</SHA1><branch><SHA1>ceaec1a86e5cc4dfd017f0ec608a229ad757c437</SHA1><name>origin/feat_yard_decider</name></branch></revision></originfeat_yard_decider><originfeat_safety_check _class='hudson.plugins.git.util.Build'><buildNumber>504</buildNumber><marked><SHA1>f13057435427785612a0be829f74facb9b66884f</SHA1><branch><SHA1>f13057435427785612a0be829f74facb9b66884f</SHA1><name>origin/feat_safety_check</name></branch></marked><revision><SHA1>f13057435427785612a0be829f74facb9b66884f</SHA1><branch><SHA1>f13057435427785612a0be829f74facb9b66884f</SHA1><name>origin/feat_safety_check</name></branch></revision></originfeat_safety_check><originfeat_sc_mpc _class='hudson.plugins.git.util.Build'><buildNumber>2174</buildNumber><marked><SHA1>e1da74b409b7416c478723fbae98925a4349b9e4</SHA1><branch><SHA1>e1da74b409b7416c478723fbae98925a4349b9e4</SHA1><name>origin/feat_sc_mpc</name></branch></marked><revision><SHA1>e1da74b409b7416c478723fbae98925a4349b9e4</SHA1><branch><SHA1>e1da74b409b7416c478723fbae98925a4349b9e4</SHA1><name>origin/feat_sc_mpc</name></branch></revision></originfeat_sc_mpc><originfeat_motion_recover _class='hudson.plugins.git.util.Build'><buildNumber>726</buildNumber><marked><SHA1>ba1dab660729e472f5dcc5e8d37358ad42f034e8</SHA1><branch><SHA1>ba1dab660729e472f5dcc5e8d37358ad42f034e8</SHA1><name>origin/feat_motion_recover</name></branch></marked><revision><SHA1>ba1dab660729e472f5dcc5e8d37358ad42f034e8</SHA1><branch><SHA1>ba1dab660729e472f5dcc5e8d37358ad42f034e8</SHA1><name>origin/feat_motion_recover</name></branch></revision></originfeat_motion_recover><originfeat_wh_trailer_cpu _class='hudson.plugins.git.util.Build'><buildNumber>1947</buildNumber><marked><SHA1>22442cbd365130db54193a6fff806c3569c410b3</SHA1><branch><SHA1>22442cbd365130db54193a6fff806c3569c410b3</SHA1><name>origin/feat_wh_trailer_cpu</name></branch></marked><revision><SHA1>22442cbd365130db54193a6fff806c3569c410b3</SHA1><branch><SHA1>22442cbd365130db54193a6fff806c3569c410b3</SHA1><name>origin/feat_wh_trailer_cpu</name></branch></revision></originfeat_wh_trailer_cpu><originfeat_change _class='hudson.plugins.git.util.Build'><buildNumber>287</buildNumber><marked><SHA1>79b13f045e397ecfd25eef421479015c3bd736ba</SHA1><branch><SHA1>79b13f045e397ecfd25eef421479015c3bd736ba</SHA1><name>origin/feat_change</name></branch></marked><revision><SHA1>79b13f045e397ecfd25eef421479015c3bd736ba</SHA1><branch><SHA1>79b13f045e397ecfd25eef421479015c3bd736ba</SHA1><name>origin/feat_change</name></branch></revision></originfeat_change><originfeat_error_pnc_status _class='hudson.plugins.git.util.Build'><buildNumber>1669</buildNumber><marked><SHA1>7488347a486bc1348df9d3f239f9f43ce79ba4d4</SHA1><branch><SHA1>7488347a486bc1348df9d3f239f9f43ce79ba4d4</SHA1><name>origin/feat_error_pnc_status</name></branch></marked><revision><SHA1>7488347a486bc1348df9d3f239f9f43ce79ba4d4</SHA1><branch><SHA1>7488347a486bc1348df9d3f239f9f43ce79ba4d4</SHA1><name>origin/feat_error_pnc_status</name></branch></revision></originfeat_error_pnc_status><originfeat-ssep-add-hd-map _class='hudson.plugins.git.util.Build'><buildNumber>1295</buildNumber><marked><SHA1>fb03da3117413c1798e25a770b131d40e8eae298</SHA1><branch><SHA1>fb03da3117413c1798e25a770b131d40e8eae298</SHA1><name>origin/feat-ssep-add-hd-map</name></branch></marked><revision><SHA1>fb03da3117413c1798e25a770b131d40e8eae298</SHA1><branch><SHA1>fb03da3117413c1798e25a770b131d40e8eae298</SHA1><name>origin/feat-ssep-add-hd-map</name></branch></revision></originfeat-ssep-add-hd-map><originfeat_trajectory_fix _class='hudson.plugins.git.util.Build'><buildNumber>2055</buildNumber><marked><SHA1>01d91db117eb92069cdd33846ea3c62e855b5490</SHA1><branch><SHA1>01d91db117eb92069cdd33846ea3c62e855b5490</SHA1><name>origin/feat_trajectory_fix</name></branch></marked><revision><SHA1>01d91db117eb92069cdd33846ea3c62e855b5490</SHA1><branch><SHA1>01d91db117eb92069cdd33846ea3c62e855b5490</SHA1><name>origin/feat_trajectory_fix</name></branch></revision></originfeat_trajectory_fix><originfeat_park _class='hudson.plugins.git.util.Build'><buildNumber>1410</buildNumber><marked><SHA1>4dfeb34832881570e72ec9f03d43527093b6deb4</SHA1><branch><SHA1>4dfeb34832881570e72ec9f03d43527093b6deb4</SHA1><name>origin/feat_park</name></branch></marked><revision><SHA1>4dfeb34832881570e72ec9f03d43527093b6deb4</SHA1><branch><SHA1>4dfeb34832881570e72ec9f03d43527093b6deb4</SHA1><name>origin/feat_park</name></branch></revision></originfeat_park><originfix_ssep _class='hudson.plugins.git.util.Build'><buildNumber>985</buildNumber><marked><SHA1>bf45235b3482b4e4d6859874aef9655e1aa5b77d</SHA1><branch><SHA1>bf45235b3482b4e4d6859874aef9655e1aa5b77d</SHA1><name>origin/fix_ssep</name></branch></marked><revision><SHA1>bf45235b3482b4e4d6859874aef9655e1aa5b77d</SHA1><branch><SHA1>bf45235b3482b4e4d6859874aef9655e1aa5b77d</SHA1><name>origin/fix_ssep</name></branch></revision></originfix_ssep><originfeat_traffit_light_stop _class='hudson.plugins.git.util.Build'><buildNumber>1589</buildNumber><marked><SHA1>351fd37ab1e4baf8eff9dc6fdd67d2ba27e8b431</SHA1><branch><SHA1>351fd37ab1e4baf8eff9dc6fdd67d2ba27e8b431</SHA1><name>origin/feat_traffit_light_stop</name></branch></marked><revision><SHA1>351fd37ab1e4baf8eff9dc6fdd67d2ba27e8b431</SHA1><branch><SHA1>351fd37ab1e4baf8eff9dc6fdd67d2ba27e8b431</SHA1><name>origin/feat_traffit_light_stop</name></branch></revision></originfeat_traffit_light_stop><originfeat_trajectory_daxie_1 _class='hudson.plugins.git.util.Build'><buildNumber>1725</buildNumber><marked><SHA1>523d6e9237b447f388f4b65aeea122da2f3acaad</SHA1><branch><SHA1>523d6e9237b447f388f4b65aeea122da2f3acaad</SHA1><name>origin/feat_trajectory_daxie_1</name></branch></marked><revision><SHA1>523d6e9237b447f388f4b65aeea122da2f3acaad</SHA1><branch><SHA1>523d6e9237b447f388f4b65aeea122da2f3acaad</SHA1><name>origin/feat_trajectory_daxie_1</name></branch></revision></originfeat_trajectory_daxie_1><originfeat_xl_cargo _class='hudson.plugins.git.util.Build'><buildNumber>288</buildNumber><marked><SHA1>bca854785ba4ef0247def145cf821b9b569704f5</SHA1><branch><SHA1>bca854785ba4ef0247def145cf821b9b569704f5</SHA1><name>origin/feat_xl_cargo</name></branch></marked><revision><SHA1>bca854785ba4ef0247def145cf821b9b569704f5</SHA1><branch><SHA1>bca854785ba4ef0247def145cf821b9b569704f5</SHA1><name>origin/feat_xl_cargo</name></branch></revision></originfeat_xl_cargo><originfeat_mandula _class='hudson.plugins.git.util.Build'><buildNumber>742</buildNumber><marked><SHA1>3f32a3ec07f7e4ff70920060bc1768a64a93a6d5</SHA1><branch><SHA1>3f32a3ec07f7e4ff70920060bc1768a64a93a6d5</SHA1><name>origin/feat_mandula</name></branch></marked><revision><SHA1>3f32a3ec07f7e4ff70920060bc1768a64a93a6d5</SHA1><branch><SHA1>3f32a3ec07f7e4ff70920060bc1768a64a93a6d5</SHA1><name>origin/feat_mandula</name></branch></revision></originfeat_mandula><originfeat_wbca_st _class='hudson.plugins.git.util.Build'><buildNumber>523</buildNumber><marked><SHA1>bc5a22cc8a3360d942c9ebf93a4c840dfe50b8c8</SHA1><branch><SHA1>bc5a22cc8a3360d942c9ebf93a4c840dfe50b8c8</SHA1><name>origin/feat_wbca_st</name></branch></marked><revision><SHA1>bc5a22cc8a3360d942c9ebf93a4c840dfe50b8c8</SHA1><branch><SHA1>bc5a22cc8a3360d942c9ebf93a4c840dfe50b8c8</SHA1><name>origin/feat_wbca_st</name></branch></revision></originfeat_wbca_st><originfeat_seg_search_pjpo _class='hudson.plugins.git.util.Build'><buildNumber>1011</buildNumber><marked><SHA1>5dd7c817bb063c786843dedaea1e09fdb044e148</SHA1><branch><SHA1>5dd7c817bb063c786843dedaea1e09fdb044e148</SHA1><name>origin/feat_seg_search_pjpo</name></branch></marked><revision><SHA1>5dd7c817bb063c786843dedaea1e09fdb044e148</SHA1><branch><SHA1>5dd7c817bb063c786843dedaea1e09fdb044e148</SHA1><name>origin/feat_seg_search_pjpo</name></branch></revision></originfeat_seg_search_pjpo><originfeat_base _class='hudson.plugins.git.util.Build'><buildNumber>1315</buildNumber><marked><SHA1>35c890fe6d108738379774a7a1d377d88550f0e2</SHA1><branch><SHA1>35c890fe6d108738379774a7a1d377d88550f0e2</SHA1><name>origin/feat_base</name></branch></marked><revision><SHA1>35c890fe6d108738379774a7a1d377d88550f0e2</SHA1><branch><SHA1>35c890fe6d108738379774a7a1d377d88550f0e2</SHA1><name>origin/feat_base</name></branch></revision></originfeat_base><originfeat_smooth_mode _class='hudson.plugins.git.util.Build'><buildNumber>1834</buildNumber><marked><SHA1>4e529beda6281c89daa913f798b557c92d0a3df5</SHA1><branch><SHA1>4e529beda6281c89daa913f798b557c92d0a3df5</SHA1><name>origin/feat_smooth_mode</name></branch></marked><revision><SHA1>4e529beda6281c89daa913f798b557c92d0a3df5</SHA1><branch><SHA1>4e529beda6281c89daa913f798b557c92d0a3df5</SHA1><name>origin/feat_smooth_mode</name></branch></revision></originfeat_smooth_mode><originfeat_ros2_platoon _class='hudson.plugins.git.util.Build'><buildNumber>2177</buildNumber><marked><SHA1>d91ca0e6bdcd735a27a0491bd255d7cd33e5d7c8</SHA1><branch><SHA1>d91ca0e6bdcd735a27a0491bd255d7cd33e5d7c8</SHA1><name>origin/feat_ros2_platoon</name></branch></marked><revision><SHA1>d91ca0e6bdcd735a27a0491bd255d7cd33e5d7c8</SHA1><branch><SHA1>d91ca0e6bdcd735a27a0491bd255d7cd33e5d7c8</SHA1><name>origin/feat_ros2_platoon</name></branch></revision></originfeat_ros2_platoon><originfeat_hfsm _class='hudson.plugins.git.util.Build'><buildNumber>170</buildNumber><marked><SHA1>f282a44a806a2a82b27bdcb7a898fc8d8aad5411</SHA1><branch><SHA1>f282a44a806a2a82b27bdcb7a898fc8d8aad5411</SHA1><name>origin/feat_hfsm</name></branch></marked><revision><SHA1>f282a44a806a2a82b27bdcb7a898fc8d8aad5411</SHA1><branch><SHA1>f282a44a806a2a82b27bdcb7a898fc8d8aad5411</SHA1><name>origin/feat_hfsm</name></branch></revision></originfeat_hfsm><originfeat_error _class='hudson.plugins.git.util.Build'><buildNumber>1453</buildNumber><marked><SHA1>dc27b02eaf204e5b86844dff5a6fd5a9ba4b011e</SHA1><branch><SHA1>dc27b02eaf204e5b86844dff5a6fd5a9ba4b011e</SHA1><name>origin/feat_error</name></branch></marked><revision><SHA1>dc27b02eaf204e5b86844dff5a6fd5a9ba4b011e</SHA1><branch><SHA1>dc27b02eaf204e5b86844dff5a6fd5a9ba4b011e</SHA1><name>origin/feat_error</name></branch></revision></originfeat_error><originfeat_suxi _class='hudson.plugins.git.util.Build'><buildNumber>1551</buildNumber><marked><SHA1>cc92bd150d538bd5b38022ce5093ffda871c951e</SHA1><branch><SHA1>cc92bd150d538bd5b38022ce5093ffda871c951e</SHA1><name>origin/feat_suxi</name></branch></marked><revision><SHA1>cc92bd150d538bd5b38022ce5093ffda871c951e</SHA1><branch><SHA1>cc92bd150d538bd5b38022ce5093ffda871c951e</SHA1><name>origin/feat_suxi</name></branch></revision></originfeat_suxi><originfeat_guide_line _class='hudson.plugins.git.util.Build'><buildNumber>661</buildNumber><marked><SHA1>d85529c9182f6b17004349c502ce183121f325de</SHA1><branch><SHA1>d85529c9182f6b17004349c502ce183121f325de</SHA1><name>origin/feat_guide_line</name></branch></marked><revision><SHA1>d85529c9182f6b17004349c502ce183121f325de</SHA1><branch><SHA1>d85529c9182f6b17004349c502ce183121f325de</SHA1><name>origin/feat_guide_line</name></branch></revision></originfeat_guide_line><originfeat-speed-limit _class='hudson.plugins.git.util.Build'><buildNumber>304</buildNumber><marked><SHA1>a7e98a4a02cf06b6a1379db0412864459bea384e</SHA1><branch><SHA1>a7e98a4a02cf06b6a1379db0412864459bea384e</SHA1><name>origin/feat-speed-limit</name></branch></marked><revision><SHA1>a7e98a4a02cf06b6a1379db0412864459bea384e</SHA1><branch><SHA1>a7e98a4a02cf06b6a1379db0412864459bea384e</SHA1><name>origin/feat-speed-limit</name></branch></revision></originfeat-speed-limit><originfeat_wh _class='hudson.plugins.git.util.Build'><buildNumber>1528</buildNumber><marked><SHA1>166219f79a22689fa52cdc391abdea6433d4ae37</SHA1><branch><SHA1>166219f79a22689fa52cdc391abdea6433d4ae37</SHA1><name>origin/feat_wh</name></branch></marked><revision><SHA1>166219f79a22689fa52cdc391abdea6433d4ae37</SHA1><branch><SHA1>166219f79a22689fa52cdc391abdea6433d4ae37</SHA1><name>origin/feat_wh</name></branch></revision></originfeat_wh><originfeat_xilian_lane_change _class='hudson.plugins.git.util.Build'><buildNumber>710</buildNumber><marked><SHA1>7db10a51bb61d31a6dacddddef02b49f38ceab58</SHA1><branch><SHA1>7db10a51bb61d31a6dacddddef02b49f38ceab58</SHA1><name>origin/feat_xilian_lane_change</name></branch></marked><revision><SHA1>7db10a51bb61d31a6dacddddef02b49f38ceab58</SHA1><branch><SHA1>7db10a51bb61d31a6dacddddef02b49f38ceab58</SHA1><name>origin/feat_xilian_lane_change</name></branch></revision></originfeat_xilian_lane_change><originrc_dev_wf _class='hudson.plugins.git.util.Build'><buildNumber>231</buildNumber><marked><SHA1>ee9fa7a02bb35ee685cee883124da9f669ab6e75</SHA1><branch><SHA1>ee9fa7a02bb35ee685cee883124da9f669ab6e75</SHA1><name>origin/rc_dev_wf</name></branch></marked><revision><SHA1>ee9fa7a02bb35ee685cee883124da9f669ab6e75</SHA1><branch><SHA1>ee9fa7a02bb35ee685cee883124da9f669ab6e75</SHA1><name>origin/rc_dev_wf</name></branch></revision></originrc_dev_wf><originfeat_lock_station _class='hudson.plugins.git.util.Build'><buildNumber>987</buildNumber><marked><SHA1>3e483224ec848dfc40cc51b8fccf47d1f3716d3d</SHA1><branch><SHA1>3e483224ec848dfc40cc51b8fccf47d1f3716d3d</SHA1><name>origin/feat_lock_station</name></branch></marked><revision><SHA1>3e483224ec848dfc40cc51b8fccf47d1f3716d3d</SHA1><branch><SHA1>3e483224ec848dfc40cc51b8fccf47d1f3716d3d</SHA1><name>origin/feat_lock_station</name></branch></revision></originfeat_lock_station><originfeat_og _class='hudson.plugins.git.util.Build'><buildNumber>513</buildNumber><marked><SHA1>17cf5ba4d4c3a3a18a2a6c039346d12deed329bb</SHA1><branch><SHA1>17cf5ba4d4c3a3a18a2a6c039346d12deed329bb</SHA1><name>origin/feat_og</name></branch></marked><revision><SHA1>17cf5ba4d4c3a3a18a2a6c039346d12deed329bb</SHA1><branch><SHA1>17cf5ba4d4c3a3a18a2a6c039346d12deed329bb</SHA1><name>origin/feat_og</name></branch></revision></originfeat_og><originfeat_pnc_scene_replay_web _class='hudson.plugins.git.util.Build'><buildNumber>2111</buildNumber><marked><SHA1>a64dd4a6b8729a84db4812a0740662b1d14f2fa4</SHA1><branch><SHA1>a64dd4a6b8729a84db4812a0740662b1d14f2fa4</SHA1><name>origin/feat_pnc_scene_replay_web</name></branch></marked><revision><SHA1>a64dd4a6b8729a84db4812a0740662b1d14f2fa4</SHA1><branch><SHA1>a64dd4a6b8729a84db4812a0740662b1d14f2fa4</SHA1><name>origin/feat_pnc_scene_replay_web</name></branch></revision></originfeat_pnc_scene_replay_web><originfeat_escape _class='hudson.plugins.git.util.Build'><buildNumber>1231</buildNumber><marked><SHA1>07da24972be561730ba0607d76f6a479db4b96a9</SHA1><branch><SHA1>07da24972be561730ba0607d76f6a479db4b96a9</SHA1><name>origin/feat_escape</name></branch></marked><revision><SHA1>07da24972be561730ba0607d76f6a479db4b96a9</SHA1><branch><SHA1>07da24972be561730ba0607d76f6a479db4b96a9</SHA1><name>origin/feat_escape</name></branch></revision></originfeat_escape><originfeat_proto_xiamen _class='hudson.plugins.git.util.Build'><buildNumber>2176</buildNumber><marked><SHA1>1ff7167cb591123ef08119f40a537cdbe402fe19</SHA1><branch><SHA1>1ff7167cb591123ef08119f40a537cdbe402fe19</SHA1><name>origin/feat_proto_xiamen</name></branch></marked><revision><SHA1>1ff7167cb591123ef08119f40a537cdbe402fe19</SHA1><branch><SHA1>1ff7167cb591123ef08119f40a537cdbe402fe19</SHA1><name>origin/feat_proto_xiamen</name></branch></revision></originfeat_proto_xiamen><originfeat_dev _class='hudson.plugins.git.util.Build'><buildNumber>755</buildNumber><marked><SHA1>f6a5b6ebde79a0d1f93b43f0da4a847743bc28b3</SHA1><branch><SHA1>f6a5b6ebde79a0d1f93b43f0da4a847743bc28b3</SHA1><name>origin/feat_dev</name></branch></marked><revision><SHA1>f6a5b6ebde79a0d1f93b43f0da4a847743bc28b3</SHA1><branch><SHA1>f6a5b6ebde79a0d1f93b43f0da4a847743bc28b3</SHA1><name>origin/feat_dev</name></branch></revision></originfeat_dev><originfeat_pnc_status _class='hudson.plugins.git.util.Build'><buildNumber>1640</buildNumber><marked><SHA1>a0e27a4547573c85a1e22a137a9413f6591bd994</SHA1><branch><SHA1>a0e27a4547573c85a1e22a137a9413f6591bd994</SHA1><name>origin/feat_pnc_status</name></branch></marked><revision><SHA1>a0e27a4547573c85a1e22a137a9413f6591bd994</SHA1><branch><SHA1>a0e27a4547573c85a1e22a137a9413f6591bd994</SHA1><name>origin/feat_pnc_status</name></branch></revision></originfeat_pnc_status><originmodify_lane_change_new _class='hudson.plugins.git.util.Build'><buildNumber>84</buildNumber><marked><SHA1>c1443c21419c749982e38d885282592a971fdcf7</SHA1><branch><SHA1>c1443c21419c749982e38d885282592a971fdcf7</SHA1><name>origin/modify_lane_change_new</name></branch></marked><revision><SHA1>c1443c21419c749982e38d885282592a971fdcf7</SHA1><branch><SHA1>c1443c21419c749982e38d885282592a971fdcf7</SHA1><name>origin/modify_lane_change_new</name></branch></revision></originmodify_lane_change_new></buildsByBranchName><lastBuiltRevision><SHA1>5a689e5d0921a7169f949608927e47d038b4136f</SHA1><branch><SHA1>5a689e5d0921a7169f949608927e47d038b4136f</SHA1><name>origin/feat_daxie_proto</name></branch></lastBuiltRevision><remoteUrl>http://159.27.226.4/pnc/pnc.git</remoteUrl><scmName></scmName></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><originros2 _class='hudson.plugins.git.util.Build'><buildNumber>2177</buildNumber><marked><SHA1>1336438603254bb01a9125eabd6d531597c243cc</SHA1><branch><SHA1>1336438603254bb01a9125eabd6d531597c243cc</SHA1><name>origin/ros2</name></branch></marked><revision><SHA1>1336438603254bb01a9125eabd6d531597c243cc</SHA1><branch><SHA1>1336438603254bb01a9125eabd6d531597c243cc</SHA1><name>origin/ros2</name></branch></revision></originros2><originfeat_hypsographic_map _class='hudson.plugins.git.util.Build'><buildNumber>1705</buildNumber><marked><SHA1>7edae3e34281e5446eb04da3b4093217e61f2337</SHA1><branch><SHA1>7edae3e34281e5446eb04da3b4093217e61f2337</SHA1><name>origin/feat_hypsographic_map</name></branch></marked><revision><SHA1>7edae3e34281e5446eb04da3b4093217e61f2337</SHA1><branch><SHA1>7edae3e34281e5446eb04da3b4093217e61f2337</SHA1><name>origin/feat_hypsographic_map</name></branch></revision></originfeat_hypsographic_map><origintemp_interface _class='hudson.plugins.git.util.Build'><buildNumber>387</buildNumber><marked><SHA1>cd454059f302c9b2474e6609c1546a358ce6f72f</SHA1><branch><SHA1>cd454059f302c9b2474e6609c1546a358ce6f72f</SHA1><name>origin/temp_interface</name></branch></marked><revision><SHA1>cd454059f302c9b2474e6609c1546a358ce6f72f</SHA1><branch><SHA1>cd454059f302c9b2474e6609c1546a358ce6f72f</SHA1><name>origin/temp_interface</name></branch></revision></origintemp_interface><originrc_dev _class='hudson.plugins.git.util.Build'><buildNumber>2178</buildNumber><marked><SHA1>baaa7dbe0743898225ca422520bae8e624a4d3e1</SHA1><branch><SHA1>baaa7dbe0743898225ca422520bae8e624a4d3e1</SHA1><name>origin/rc_dev</name></branch></marked><revision><SHA1>baaa7dbe0743898225ca422520bae8e624a4d3e1</SHA1><branch><SHA1>baaa7dbe0743898225ca422520bae8e624a4d3e1</SHA1><name>origin/rc_dev</name></branch></revision></originrc_dev><originrc_dev_add_lane_name _class='hudson.plugins.git.util.Build'><buildNumber>1462</buildNumber><marked><SHA1>be65f77d9d0f6a3ae20cc796e381889a03ce43ee</SHA1><branch><SHA1>be65f77d9d0f6a3ae20cc796e381889a03ce43ee</SHA1><name>origin/rc_dev_add_lane_name</name></branch></marked><revision><SHA1>be65f77d9d0f6a3ae20cc796e381889a03ce43ee</SHA1><branch><SHA1>be65f77d9d0f6a3ae20cc796e381889a03ce43ee</SHA1><name>origin/rc_dev_add_lane_name</name></branch></revision></originrc_dev_add_lane_name><originfeat_fence _class='hudson.plugins.git.util.Build'><buildNumber>594</buildNumber><marked><SHA1>bfea094fbf5d6f1c5eca3dfaa2044894fec263f6</SHA1><branch><SHA1>bfea094fbf5d6f1c5eca3dfaa2044894fec263f6</SHA1><name>origin/feat_fence</name></branch></marked><revision><SHA1>bfea094fbf5d6f1c5eca3dfaa2044894fec263f6</SHA1><branch><SHA1>bfea094fbf5d6f1c5eca3dfaa2044894fec263f6</SHA1><name>origin/feat_fence</name></branch></revision></originfeat_fence></buildsByBranchName><lastBuiltRevision><SHA1>baaa7dbe0743898225ca422520bae8e624a4d3e1</SHA1><branch><SHA1>baaa7dbe0743898225ca422520bae8e624a4d3e1</SHA1><name>origin/rc_dev</name></branch></lastBuiltRevision><remoteUrl>http://159.27.226.4/map/hdmap_interface.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'><artifactsUrl>http://159.27.114.184:8080/jenkins/user/chenliang/my-views/view/all/job/module-pnc_replayer/2178/artifact</artifactsUrl><changesUrl>http://159.27.114.184:8080/jenkins/user/chenliang/my-views/view/all/job/module-pnc_replayer/changes</changesUrl><displayUrl>http://159.27.114.184:8080/jenkins/user/chenliang/my-views/view/all/job/module-pnc_replayer/2178/</displayUrl><testsUrl>http://159.27.114.184:8080/jenkins/user/chenliang/my-views/view/all/job/module-pnc_replayer/2178/testReport</testsUrl></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'><restartEnabled>false</restartEnabled><restartableStage>checkout</restartableStage><restartableStage>build</restartableStage><restartableStage>zip-&gt;post</restartableStage></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'><node _class='org.jenkinsci.plugins.workflow.graph.FlowStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.graph.FlowEndNode'></node></action><action></action><action></action><action></action><building>false</building><displayName>#2178</displayName><duration>2214598</duration><estimatedDuration>2049227</estimatedDuration><fullDisplayName>module-pnc_replayer #2178</fullDisplayName><id>2178</id><keepLog>false</keepLog><number>2178</number><queueId>1359314</queueId><result>SUCCESS</result><timestamp>1792570073298</timestamp><url>http://159.27.114.184:8080/jenkins/user/chenliang/my-views/view/all/job/module-pnc_replayer/2178/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>cloud_msgs/msg/CraneInfo.msg</affectedPath><commitId>531313779621ea1cd882137e13ebc7f5f5e007e2</commitId><timestamp>1792568742000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>feat:添加场桥和岸桥运动状态
</comment><date>2026-10-21 15:45:42 +0800</date><id>531313779621ea1cd882137e13ebc7f5f5e007e2</id><msg>feat:添加场桥和岸桥运动状态</msg><path><editType>edit</editType><file>cloud_msgs/msg/CraneInfo.msg</file></path></item><kind>git</kind></changeSet><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>tasks/deciders/other_decider/replan_decider.cpp</affectedPath><affectedPath>data/other/flow_control.cpp</affectedPath><affectedPath>tasks/plan/ssep_task.cpp</affectedPath><affectedPath>data/ssep/into_yard_junction_ec.cpp</affectedPath><commitId>103d673edd27940842707d28f4fc4409367b72a4</commitId><timestamp>1792468584000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>chore: 补充低贝位入场搜索关键诊断日志

记录搜索构造、提交与重搜事件中的低贝位类型和场景，便于核对识别结果到搜索输入的传递。入场配置未命中时首次及每 100 次命中输出提示，避免周期和逐障碍诊断刷屏。

保持规划行为不变；已通过 pnc_node 分布式编译和 git diff --check。
</comment><date>2026-10-20 11:56:24 +0800</date><id>103d673edd27940842707d28f4fc4409367b72a4</id><msg>chore: 补充低贝位入场搜索关键诊断日志</msg><path><editType>edit</editType><file>tasks/deciders/other_decider/replan_decider.cpp</file></path><path><editType>edit</editType><file>data/ssep/into_yard_junction_ec.cpp</file></path><path><editType>edit</editType><file>tasks/plan/ssep_task.cpp</file></path><path><editType>edit</editType><file>data/other/flow_control.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>data/plan/switch_data.hpp</affectedPath><affectedPath>data/plan/lane_change_junction_guard.cpp</affectedPath><affectedPath>Testing/lane_change_prepare_stage_test.cpp</affectedPath><affectedPath>data/scenario/scenario_planner_action.cpp</affectedPath><affectedPath>Testing/lane_change_junction_wait_test.cpp</affectedPath><affectedPath>data/plan/lane_change_junction_wait.hpp</affectedPath><affectedPath>data/plan/lane_change_junction_wait.cpp</affectedPath><affectedPath>data/plan/switch_data.cpp</affectedPath><affectedPath>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</affectedPath><affectedPath>data/plan/switch_helper.cpp</affectedPath><affectedPath>Testing/lane_change_space_check_test.cpp</affectedPath><affectedPath>Testing/lane_change_junction_geometry_test.cpp</affectedPath><affectedPath>scenarios/lane_change_scenario/lane_change_prepare_stage.cpp</affectedPath><affectedPath>Testing/routing_transition_test.cpp</affectedPath><affectedPath>data/plan/switch_helper.hpp</affectedPath><affectedPath>data/obstacle/cluster_lane_change_safety_test.cpp</affectedPath><affectedPath>data/plan/lane_change_space_check.hpp</affectedPath><affectedPath>replayer/scene_data/generated/state_schema_inputs.json</affectedPath><affectedPath>data/scenario/scenario_region_condition.cpp</affectedPath><affectedPath>data/plan/lane_change_space_check.cpp</affectedPath><affectedPath>Testing/CMakeLists.txt</affectedPath><affectedPath>data/plan/lane_change_junction_guard.hpp</affectedPath><commitId>7ef6bbfc09bf3ba0a28a68bb1c22dcded2ae89da</commitId><timestamp>1792490528000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 完善变道准备距离与路口前停车等待

变道准备减速会消耗执行空间，路口场景提前接管还会清掉等待状态。
统一准备限速与减速、状态等待预算，保持降速后的有效变道意图。
执行前检查途经起点、完成窗口及路由终点，候选更新后在主车道规划前复核；
拒绝或任务失败时恢复等待状态、计时及停车请求。

路口等待复用区域切换距离基准，增加 jerk 受限停车预算与执行裕量。
普通及极限左右变道在 BEFORE 区域保持有效准备和等待，INSIDE 按原规则交接。
保留显式途经起点限制，停车等待后执行仍需满足速度、时间及执行门禁。
补充几何、状态连续帧、载重、起点与终点空间回归，同步生成输入指纹。

验证：Icecream 编译通过；生成物与 Proto 兼容检查通过；diff 检查通过。
两组 CPU 测试共 420 项，413 通过，7 项为前轮相同既有失败；
本轮路口等待新增 31 项全部通过。原 bag 尚未执行修复后的闭环回放。
</comment><date>2026-10-20 18:02:08 +0800</date><id>7ef6bbfc09bf3ba0a28a68bb1c22dcded2ae89da</id><msg>fix: 完善变道准备距离与路口前停车等待</msg><path><editType>add</editType><file>data/plan/lane_change_junction_wait.cpp</file></path><path><editType>edit</editType><file>scenarios/lane_change_scenario/lane_change_prepare_stage.cpp</file></path><path><editType>add</editType><file>Testing/lane_change_space_check_test.cpp</file></path><path><editType>edit</editType><file>data/plan/switch_data.cpp</file></path><path><editType>edit</editType><file>data/plan/switch_helper.hpp</file></path><path><editType>edit</editType><file>data/scenario/scenario_region_condition.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/state_schema_inputs.json</file></path><path><editType>edit</editType><file>data/plan/switch_data.hpp</file></path><path><editType>edit</editType><file>Testing/CMakeLists.txt</file></path><path><editType>add</editType><file>Testing/lane_change_junction_geometry_test.cpp</file></path><path><editType>edit</editType><file>Testing/routing_transition_test.cpp</file></path><path><editType>add</editType><file>data/plan/lane_change_junction_guard.hpp</file></path><path><editType>add</editType><file>data/plan/lane_change_space_check.cpp</file></path><path><editType>edit</editType><file>data/scenario/scenario_planner_action.cpp</file></path><path><editType>edit</editType><file>data/obstacle/cluster_lane_change_safety_test.cpp</file></path><path><editType>add</editType><file>Testing/lane_change_junction_wait_test.cpp</file></path><path><editType>add</editType><file>data/plan/lane_change_junction_guard.cpp</file></path><path><editType>add</editType><file>data/plan/lane_change_space_check.hpp</file></path><path><editType>add</editType><file>data/plan/lane_change_junction_wait.hpp</file></path><path><editType>edit</editType><file>data/plan/switch_helper.cpp</file></path><path><editType>add</editType><file>Testing/lane_change_prepare_stage_test.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>data/app/fsm/task_command_type.cpp</affectedPath><affectedPath>data/ssep/ssep_scenario_config_loader.cpp</affectedPath><affectedPath>Testing/ssep_scenario_config_lifecycle_test.cpp</affectedPath><affectedPath>data/ssep/forward_ec.cpp</affectedPath><commitId>8024276d2c2e881c186f6954c13d46d6db27549d</commitId><timestamp>1792495703000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 修复苏溪出停车误匹配路边停车场景

补齐 TO_ROADSIDE 的双向枚举转换，拒绝将未知任务配置静默解析为 UNCLASSIFIED，避免未分类任务误命中 PullOver。

将苏溪出停车硬编码判断提前到路边任务之前，增加映射、配置匹配及优先级回归测试。专项测试 117 项全部通过。
</comment><date>2026-10-20 19:28:23 +0800</date><id>8024276d2c2e881c186f6954c13d46d6db27549d</id><msg>fix: 修复苏溪出停车误匹配路边停车场景</msg><path><editType>edit</editType><file>data/ssep/ssep_scenario_config_loader.cpp</file></path><path><editType>edit</editType><file>Testing/ssep_scenario_config_lifecycle_test.cpp</file></path><path><editType>edit</editType><file>data/ssep/forward_ec.cpp</file></path><path><editType>edit</editType><file>data/app/fsm/task_command_type.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>ssep/offboard/servers/scene_vis_html_template.cc</affectedPath><affectedPath>ssep/test/local_regression/test_scene_vis_obstacles.py</affectedPath><commitId>6109c4d9dfa1c84ad7e90bebb5188be861337412</commitId><timestamp>1792546664000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 明确展示场景停车位碰撞约束

将参与碰撞的停车位绘制为红色粗边界并标注 ID，区分起终点豁免车位，提供独立图例和悬浮说明。修复地图元素字符串枚举的样式匹配。

补充枚举兼容、起终点豁免、开放折线、零坐标和 HTML 转义回归；5 项界面检查、场景浏览器验证及可视化服务编译通过。
</comment><date>2026-10-21 09:37:44 +0800</date><id>6109c4d9dfa1c84ad7e90bebb5188be861337412</id><msg>fix: 明确展示场景停车位碰撞约束</msg><path><editType>edit</editType><file>ssep/offboard/servers/scene_vis_html_template.cc</file></path><path><editType>edit</editType><file>ssep/test/local_regression/test_scene_vis_obstacles.py</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>replayer/replayer_data_process/replayer_data_process.cpp</affectedPath><affectedPath>replayer/main.cpp</affectedPath><affectedPath>source/ros_source_replayer_snapshot.cpp</affectedPath><affectedPath>replayer/test/test_map_reload.py</affectedPath><affectedPath>replayer/test/test_map_hot_reload.py</affectedPath><affectedPath>hmi/replayer_hmi.hpp</affectedPath><affectedPath>replayer/logic.hpp</affectedPath><affectedPath>hmi/widget/replayer_pnc_mat.cpp</affectedPath><affectedPath>replayer/replayer_data_process/replayer_data_process.hpp</affectedPath><affectedPath>hmi/widget/replayer_pnc_mat.hpp</affectedPath><affectedPath>replayer/logic.cpp</affectedPath><affectedPath>hmi/replayer_hmi.cpp</affectedPath><affectedPath>hmi/common/pnc_graphics_view.cpp</affectedPath><affectedPath>hmi/widget/diagnose.cpp</affectedPath><affectedPath>replayer/test/test_realtime_map_reload.py</affectedPath><affectedPath>hmi/widget/diagnose.hpp</affectedPath><affectedPath>replayer/replayer_data_process/load_snap_data.hpp</affectedPath><affectedPath>hmi/widget/replayer_map.cpp</affectedPath><affectedPath>replayer/replayer_data_process/load_snap_data.cpp</affectedPath><affectedPath>hmi/common/pnc_graphics_view.hpp</affectedPath><affectedPath>hmi/widget/replayer_map.hpp</affectedPath><affectedPath>hmi/common/image_viewer.cpp</affectedPath><affectedPath>hmi/draw/draw_map.hpp</affectedPath><affectedPath>source/ros_source_replayer_snapshot.hpp</affectedPath><affectedPath>hmi/draw/draw_map.cpp</affectedPath><affectedPath>hmi/common/image_viewer.hpp</affectedPath><commitId>37f319660c30701ffaf0747632d5ea97172fed55</commitId><timestamp>1792552086000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 修复快照重复打开崩溃与地图热切换生命周期

暂停回放并排空界面事件后释放帧、异步任务与地图引用，在后台加载完成后恢复界面；连续打开时保留最新请求及关联地图。
使用规范路径与文件身份识别地图和配置，避免同地图误重载，同时支持原路径文件更新和加载失败恢复。
保留单独换图前的实时模式与独立点云底图，清理旧地图交互和诊断缓存；发布绑定进程的热切换能力。

验证：分布式编译 pnc_replayer 通过；地图缓存 17 项、真实离线生命周期 15 项、实时接收 5 项回归通过。点云菜单尚未进行交互验证。
</comment><date>2026-10-21 11:08:06 +0800</date><id>37f319660c30701ffaf0747632d5ea97172fed55</id><msg>fix: 修复快照重复打开崩溃与地图热切换生命周期</msg><path><editType>add</editType><file>replayer/test/test_realtime_map_reload.py</file></path><path><editType>edit</editType><file>source/ros_source_replayer_snapshot.hpp</file></path><path><editType>edit</editType><file>hmi/draw/draw_map.hpp</file></path><path><editType>edit</editType><file>hmi/common/pnc_graphics_view.cpp</file></path><path><editType>edit</editType><file>source/ros_source_replayer_snapshot.cpp</file></path><path><editType>edit</editType><file>replayer/replayer_data_process/replayer_data_process.hpp</file></path><path><editType>edit</editType><file>hmi/widget/diagnose.cpp</file></path><path><editType>edit</editType><file>hmi/widget/diagnose.hpp</file></path><path><editType>edit</editType><file>replayer/logic.cpp</file></path><path><editType>edit</editType><file>hmi/common/image_viewer.cpp</file></path><path><editType>edit</editType><file>hmi/widget/replayer_pnc_mat.hpp</file></path><path><editType>edit</editType><file>replayer/logic.hpp</file></path><path><editType>edit</editType><file>replayer/replayer_data_process/load_snap_data.hpp</file></path><path><editType>edit</editType><file>hmi/common/pnc_graphics_view.hpp</file></path><path><editType>edit</editType><file>replayer/replayer_data_process/replayer_data_process.cpp</file></path><path><editType>edit</editType><file>hmi/common/image_viewer.hpp</file></path><path><editType>edit</editType><file>hmi/widget/replayer_pnc_mat.cpp</file></path><path><editType>edit</editType><file>hmi/widget/replayer_map.hpp</file></path><path><editType>edit</editType><file>hmi/draw/draw_map.cpp</file></path><path><editType>edit</editType><file>replayer/main.cpp</file></path><path><editType>edit</editType><file>hmi/widget/replayer_map.cpp</file></path><path><editType>edit</editType><file>hmi/replayer_hmi.cpp</file></path><path><editType>add</editType><file>replayer/test/test_map_reload.py</file></path><path><editType>add</editType><file>replayer/test/test_map_hot_reload.py</file></path><path><editType>edit</editType><file>hmi/replayer_hmi.hpp</file></path><path><editType>edit</editType><file>replayer/replayer_data_process/load_snap_data.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>data/boundary/road_boundary.cpp</affectedPath><commitId>5a689e5d0921a7169f949608927e47d038b4136f</commitId><timestamp>1792565441000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 使用 PJPO 时跳过起步边界扩展

在起步边界扩展入口检查当前选中的横向规划算法，PJPO 模式下直接返回，避免扩展其道路边界。
</comment><date>2026-10-21 14:50:41 +0800</date><id>5a689e5d0921a7169f949608927e47d038b4136f</id><msg>fix: 使用 PJPO 时跳过起步边界扩展</msg><path><editType>edit</editType><file>data/boundary/road_boundary.cpp</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName><id>wuyanjun110</id></culprit><culprit><absoluteUrl>http://159.27.114.184:8080/jenkins/user/jiayifei</absoluteUrl><fullName>jiayifei</fullName><id>jiayifei</id></culprit><culprit><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName><id>chenran</id></culprit><culprit><absoluteUrl>http://159.27.114.184:8080/jenkins/user/liuhongshuo</absoluteUrl><fullName>liuhongshuo</fullName><id>liuhongshuo</id></culprit><nextBuild><action _class='hudson.model.CauseAction'><cause _class='org.jenkinsci.plugins.workflow.support.steps.build.BuildUpstreamCause'><shortDescription>Started by upstream project "orin-module-slave32" build number 5,380</shortDescription><upstreamBuild>5380</upstreamBuild><upstreamProject>orin-module-slave32</upstreamProject><upstreamUrl>job/orin-module-slave32/</upstreamUrl></cause></action><action></action><action _class='hudson.model.ParametersAction'><parameter _class='hudson.model.StringParameterValue'><name>msgBranch</name><value>rc_dev_tangshanjinxi</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>pncBranch</name><value>feat_daxie_proto</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>hdmapBranch</name><value>no</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>hdmapInterfaceBranch</name><value>rc_dev</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>notes</name><value>pncreplayer更新</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>info</name><value>orin-module-slave32: #5380</value></parameter></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><master _class='hudson.plugins.git.util.Build'><buildNumber>2179</buildNumber><marked><SHA1>6ec4c73f16769d31c660c5020d0f9d715ab0b1b7</SHA1><branch><SHA1>6ec4c73f16769d31c660c5020d0f9d715ab0b1b7</SHA1><name>master</name></branch></marked><revision><SHA1>6ec4c73f16769d31c660c5020d0f9d715ab0b1b7</SHA1><branch><SHA1>6ec4c73f16769d31c660c5020d0f9d715ab0b1b7</SHA1><name>master</name></branch></revision></master></buildsByBranchName><lastBuiltRevision><SHA1>6ec4c73f16769d31c660c5020d0f9d715ab0b1b7</SHA1><branch><SHA1>6ec4c73f16769d31c660c5020d0f9d715ab0b1b7</SHA1><name>master</name></branch></lastBuiltRevision><remoteUrl>http://159.27.226.4/weilikang/jenkinslib.git</remoteUrl><scmName></scmName></action><action></action><action></action><action _class='org.jenkinsci.plugins.workflow.cps.EnvActionImpl'></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>2179</buildNumber><marked><SHA1>da346d05dedce5efb0c0437192f29599ceeab71b</SHA1><branch><SHA1>da346d05dedce5efb0c0437192f29599ceeab71b</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>da346d05dedce5efb0c0437192f29599ceeab71b</SHA1><branch><SHA1>da346d05dedce5efb0c0437192f29599ceeab71b</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>da346d05dedce5efb0c0437192f29599ceeab71b</SHA1><branch><SHA1>da346d05dedce5efb0c0437192f29599ceeab71b</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>http://159.27.226.4/weilikang/jenkinsfiles.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.workflow.cps.view.InterpolatedSecretsAction'></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><originrc_dev_d0713c _class='hudson.plugins.git.util.Build'><buildNumber>514</buildNumber><marked><SHA1>d0713c65fd86b2ac53ed036ec66b90521c2ef97c</SHA1><branch><SHA1>d0713c65fd86b2ac53ed036ec66b90521c2ef97c</SHA1><name>origin/rc_dev_d0713c</name></branch></marked><revision><SHA1>d0713c65fd86b2ac53ed036ec66b90521c2ef97c</SHA1><branch><SHA1>d0713c65fd86b2ac53ed036ec66b90521c2ef97c</SHA1><name>origin/rc_dev_d0713c</name></branch></revision></originrc_dev_d0713c><originrc_dev_xinjiang_kaiwo _class='hudson.plugins.git.util.Build'><buildNumber>1244</buildNumber><marked><SHA1>6858447f1f5c9e880a747d653217350f3c4ea0a0</SHA1><branch><SHA1>6858447f1f5c9e880a747d653217350f3c4ea0a0</SHA1><name>origin/rc_dev_xinjiang_kaiwo</name></branch></marked><revision><SHA1>6858447f1f5c9e880a747d653217350f3c4ea0a0</SHA1><branch><SHA1>6858447f1f5c9e880a747d653217350f3c4ea0a0</SHA1><name>origin/rc_dev_xinjiang_kaiwo</name></branch></revision></originrc_dev_xinjiang_kaiwo><originfeat_multiple_path _class='hudson.plugins.git.util.Build'><buildNumber>104</buildNumber><marked><SHA1>d54cf8742b0d6a6d1d6ad06beb448f37152ca1d8</SHA1><branch><SHA1>d54cf8742b0d6a6d1d6ad06beb448f37152ca1d8</SHA1><name>origin/feat_multiple_path</name></branch></marked><revision><SHA1>d54cf8742b0d6a6d1d6ad06beb448f37152ca1d8</SHA1><branch><SHA1>d54cf8742b0d6a6d1d6ad06beb448f37152ca1d8</SHA1><name>origin/feat_multiple_path</name></branch></revision></originfeat_multiple_path><originfeat-peripheral_qiangang _class='hudson.plugins.git.util.Build'><buildNumber>405</buildNumber><marked><SHA1>47370a9f329d90e5e5d59e53f6173a21ad880678</SHA1><branch><SHA1>47370a9f329d90e5e5d59e53f6173a21ad880678</SHA1><name>origin/feat-peripheral_qiangang</name></branch></marked><revision><SHA1>47370a9f329d90e5e5d59e53f6173a21ad880678</SHA1><branch><SHA1>47370a9f329d90e5e5d59e53f6173a21ad880678</SHA1><name>origin/feat-peripheral_qiangang</name></branch></revision></originfeat-peripheral_qiangang><originfeat_tc_v2_weihai _class='hudson.plugins.git.util.Build'><buildNumber>1910</buildNumber><marked><SHA1>db51c891fddcf73babce98115f7526d2860bd6c4</SHA1><branch><SHA1>db51c891fddcf73babce98115f7526d2860bd6c4</SHA1><name>origin/feat_tc_v2_weihai</name></branch></marked><revision><SHA1>db51c891fddcf73babce98115f7526d2860bd6c4</SHA1><branch><SHA1>db51c891fddcf73babce98115f7526d2860bd6c4</SHA1><name>origin/feat_tc_v2_weihai</name></branch></revision></originfeat_tc_v2_weihai><originyouyiguan_add_trailer_info _class='hudson.plugins.git.util.Build'><buildNumber>1294</buildNumber><marked><SHA1>062de51109603913f092d421e259df68b3b57f8f</SHA1><branch><SHA1>062de51109603913f092d421e259df68b3b57f8f</SHA1><name>origin/youyiguan_add_trailer_info</name></branch></marked><revision><SHA1>062de51109603913f092d421e259df68b3b57f8f</SHA1><branch><SHA1>062de51109603913f092d421e259df68b3b57f8f</SHA1><name>origin/youyiguan_add_trailer_info</name></branch></revision></originyouyiguan_add_trailer_info><originrcdev_0a13c34 _class='hudson.plugins.git.util.Build'><buildNumber>231</buildNumber><marked><SHA1>0a13c3462eee863b32a43ea2e82612f649af702a</SHA1><branch><SHA1>0a13c3462eee863b32a43ea2e82612f649af702a</SHA1><name>origin/rcdev_0a13c34</name></branch></marked><revision><SHA1>0a13c3462eee863b32a43ea2e82612f649af702a</SHA1><branch><SHA1>0a13c3462eee863b32a43ea2e82612f649af702a</SHA1><name>origin/rcdev_0a13c34</name></branch></revision></originrcdev_0a13c34><originrc_dev _class='hudson.plugins.git.util.Build'><buildNumber>2006</buildNumber><marked><SHA1>7d594c755e96741c20d32b84dec169d35b599e9c</SHA1><branch><SHA1>7d594c755e96741c20d32b84dec169d35b599e9c</SHA1><name>origin/rc_dev</name></branch></marked><revision><SHA1>7d594c755e96741c20d32b84dec169d35b599e9c</SHA1><branch><SHA1>7d594c755e96741c20d32b84dec169d35b599e9c</SHA1><name>origin/rc_dev</name></branch></revision></originrc_dev><originfeat_v2x _class='hudson.plugins.git.util.Build'><buildNumber>97</buildNumber><marked><SHA1>818081a723d83abf39efe236cb6ab488aef53bba</SHA1><branch><SHA1>818081a723d83abf39efe236cb6ab488aef53bba</SHA1><name>origin/feat_v2x</name></branch></marked><revision><SHA1>818081a723d83abf39efe236cb6ab488aef53bba</SHA1><branch><SHA1>818081a723d83abf39efe236cb6ab488aef53bba</SHA1><name>origin/feat_v2x</name></branch></revision></originfeat_v2x><originrc_dev_qiangang _class='hudson.plugins.git.util.Build'><buildNumber>1897</buildNumber><marked><SHA1>1f1b50411fbad43ef0d16e173acf889b3a413854</SHA1><branch><SHA1>1f1b50411fbad43ef0d16e173acf889b3a413854</SHA1><name>origin/rc_dev_qiangang</name></branch></marked><revision><SHA1>1f1b50411fbad43ef0d16e173acf889b3a413854</SHA1><branch><SHA1>1f1b50411fbad43ef0d16e173acf889b3a413854</SHA1><name>origin/rc_dev_qiangang</name></branch></revision></originrc_dev_qiangang><originfeat_xiamen_patch _class='hudson.plugins.git.util.Build'><buildNumber>1606</buildNumber><marked><SHA1>5edde714fd5009dce8a08067bfa73d09adf298d6</SHA1><branch><SHA1>5edde714fd5009dce8a08067bfa73d09adf298d6</SHA1><name>origin/feat_xiamen_patch</name></branch></marked><revision><SHA1>5edde714fd5009dce8a08067bfa73d09adf298d6</SHA1><branch><SHA1>5edde714fd5009dce8a08067bfa73d09adf298d6</SHA1><name>origin/feat_xiamen_patch</name></branch></revision></originfeat_xiamen_patch><originrc_dev_taiyang _class='hudson.plugins.git.util.Build'><buildNumber>1547</buildNumber><marked><SHA1>7b898979876c3089d42c8ecbfbeef3da821c694b</SHA1><branch><SHA1>7b898979876c3089d42c8ecbfbeef3da821c694b</SHA1><name>origin/rc_dev_taiyang</name></branch></marked><revision><SHA1>7b898979876c3089d42c8ecbfbeef3da821c694b</SHA1><branch><SHA1>7b898979876c3089d42c8ecbfbeef3da821c694b</SHA1><name>origin/rc_dev_taiyang</name></branch></revision></originrc_dev_taiyang><originfeat-peripheral_op_state _class='hudson.plugins.git.util.Build'><buildNumber>239</buildNumber><marked><SHA1>f0a5167416f0fec86262fc7b9f86b98b8c9f1580</SHA1><branch><SHA1>f0a5167416f0fec86262fc7b9f86b98b8c9f1580</SHA1><name>origin/feat-peripheral_op_state</name></branch></marked><revision><SHA1>f0a5167416f0fec86262fc7b9f86b98b8c9f1580</SHA1><branch><SHA1>f0a5167416f0fec86262fc7b9f86b98b8c9f1580</SHA1><name>origin/feat-peripheral_op_state</name></branch></revision></originfeat-peripheral_op_state><originfeat_mandula_udp _class='hudson.plugins.git.util.Build'><buildNumber>830</buildNumber><marked><SHA1>d261c50491fbc8a11349b8ab65a8076d75ebdc08</SHA1><branch><SHA1>d261c50491fbc8a11349b8ab65a8076d75ebdc08</SHA1><name>origin/feat_mandula_udp</name></branch></marked><revision><SHA1>d261c50491fbc8a11349b8ab65a8076d75ebdc08</SHA1><branch><SHA1>d261c50491fbc8a11349b8ab65a8076d75ebdc08</SHA1><name>origin/feat_mandula_udp</name></branch></revision></originfeat_mandula_udp><originfeat-peripheral_op_state-chassis_err _class='hudson.plugins.git.util.Build'><buildNumber>377</buildNumber><marked><SHA1>3fed282b426dddc8539eed2eac1b7bc368431e71</SHA1><branch><SHA1>3fed282b426dddc8539eed2eac1b7bc368431e71</SHA1><name>origin/feat-peripheral_op_state-chassis_err</name></branch></marked><revision><SHA1>3fed282b426dddc8539eed2eac1b7bc368431e71</SHA1><branch><SHA1>3fed282b426dddc8539eed2eac1b7bc368431e71</SHA1><name>origin/feat-peripheral_op_state-chassis_err</name></branch></revision></originfeat-peripheral_op_state-chassis_err><originrc_dev_shanqihuanwei _class='hudson.plugins.git.util.Build'><buildNumber>1589</buildNumber><marked><SHA1>f5a740650e27555efc2c844e135111515679ba9d</SHA1><branch><SHA1>f5a740650e27555efc2c844e135111515679ba9d</SHA1><name>origin/rc_dev_shanqihuanwei</name></branch></marked><revision><SHA1>f5a740650e27555efc2c844e135111515679ba9d</SHA1><branch><SHA1>f5a740650e27555efc2c844e135111515679ba9d</SHA1><name>origin/rc_dev_shanqihuanwei</name></branch></revision></originrc_dev_shanqihuanwei><originfeat_tc_v2_yantai _class='hudson.plugins.git.util.Build'><buildNumber>1862</buildNumber><marked><SHA1>bdb5ae48b5cbb4cf8ba76eba652e4f20aeff253d</SHA1><branch><SHA1>bdb5ae48b5cbb4cf8ba76eba652e4f20aeff253d</SHA1><name>origin/feat_tc_v2_yantai</name></branch></marked><revision><SHA1>bdb5ae48b5cbb4cf8ba76eba652e4f20aeff253d</SHA1><branch><SHA1>bdb5ae48b5cbb4cf8ba76eba652e4f20aeff253d</SHA1><name>origin/feat_tc_v2_yantai</name></branch></revision></originfeat_tc_v2_yantai><originrc_dev_e53243 _class='hudson.plugins.git.util.Build'><buildNumber>651</buildNumber><marked><SHA1>e53243a23acd89640afd41301882167071c14022</SHA1><branch><SHA1>e53243a23acd89640afd41301882167071c14022</SHA1><name>origin/rc_dev_e53243</name></branch></marked><revision><SHA1>e53243a23acd89640afd41301882167071c14022</SHA1><branch><SHA1>e53243a23acd89640afd41301882167071c14022</SHA1><name>origin/rc_dev_e53243</name></branch></revision></originrc_dev_e53243><originrc_dev_zhoushan _class='hudson.plugins.git.util.Build'><buildNumber>1472</buildNumber><marked><SHA1>96ed1f1aae62978d865c3acf62e16756e9530773</SHA1><branch><SHA1>96ed1f1aae62978d865c3acf62e16756e9530773</SHA1><name>origin/rc_dev_zhoushan</name></branch></marked><revision><SHA1>96ed1f1aae62978d865c3acf62e16756e9530773</SHA1><branch><SHA1>96ed1f1aae62978d865c3acf62e16756e9530773</SHA1><name>origin/rc_dev_zhoushan</name></branch></revision></originrc_dev_zhoushan><originfeat_tc_v2_daxie _class='hudson.plugins.git.util.Build'><buildNumber>1815</buildNumber><marked><SHA1>aed54f80025d95dc2fa58fadb5f26bd1c46d4b0d</SHA1><branch><SHA1>aed54f80025d95dc2fa58fadb5f26bd1c46d4b0d</SHA1><name>origin/feat_tc_v2_daxie</name></branch></marked><revision><SHA1>aed54f80025d95dc2fa58fadb5f26bd1c46d4b0d</SHA1><branch><SHA1>aed54f80025d95dc2fa58fadb5f26bd1c46d4b0d</SHA1><name>origin/feat_tc_v2_daxie</name></branch></revision></originfeat_tc_v2_daxie><originrc_dev_dongfen _class='hudson.plugins.git.util.Build'><buildNumber>1702</buildNumber><marked><SHA1>6858447f1f5c9e880a747d653217350f3c4ea0a0</SHA1><branch><SHA1>6858447f1f5c9e880a747d653217350f3c4ea0a0</SHA1><name>origin/rc_dev_dongfen</name></branch></marked><revision><SHA1>6858447f1f5c9e880a747d653217350f3c4ea0a0</SHA1><branch><SHA1>6858447f1f5c9e880a747d653217350f3c4ea0a0</SHA1><name>origin/rc_dev_dongfen</name></branch></revision></originrc_dev_dongfen><originfeat_daxie_patch _class='hudson.plugins.git.util.Build'><buildNumber>1246</buildNumber><marked><SHA1>762ac69a8087af8a7d2988094ab4943f538e8a04</SHA1><branch><SHA1>762ac69a8087af8a7d2988094ab4943f538e8a04</SHA1><name>origin/feat_daxie_patch</name></branch></marked><revision><SHA1>762ac69a8087af8a7d2988094ab4943f538e8a04</SHA1><branch><SHA1>762ac69a8087af8a7d2988094ab4943f538e8a04</SHA1><name>origin/feat_daxie_patch</name></branch></revision></originfeat_daxie_patch><originfeat_speed_lmt _class='hudson.plugins.git.util.Build'><buildNumber>433</buildNumber><marked><SHA1>510f3a0d45ae6290a9448ecf012dfe501b504a15</SHA1><branch><SHA1>510f3a0d45ae6290a9448ecf012dfe501b504a15</SHA1><name>origin/feat_speed_lmt</name></branch></marked><revision><SHA1>510f3a0d45ae6290a9448ecf012dfe501b504a15</SHA1><branch><SHA1>510f3a0d45ae6290a9448ecf012dfe501b504a15</SHA1><name>origin/feat_speed_lmt</name></branch></revision></originfeat_speed_lmt><originfeat_tc_v2_yangpu _class='hudson.plugins.git.util.Build'><buildNumber>1804</buildNumber><marked><SHA1>549daf0fc4e7c8f469ba1807acf334525ddb939b</SHA1><branch><SHA1>549daf0fc4e7c8f469ba1807acf334525ddb939b</SHA1><name>origin/feat_tc_v2_yangpu</name></branch></marked><revision><SHA1>549daf0fc4e7c8f469ba1807acf334525ddb939b</SHA1><branch><SHA1>549daf0fc4e7c8f469ba1807acf334525ddb939b</SHA1><name>origin/feat_tc_v2_yangpu</name></branch></revision></originfeat_tc_v2_yangpu><originrc_dev_xiasha _class='hudson.plugins.git.util.Build'><buildNumber>2076</buildNumber><marked><SHA1>fca3a20dd978a00f0568bbb02a49aff6fc1ffeb1</SHA1><branch><SHA1>fca3a20dd978a00f0568bbb02a49aff6fc1ffeb1</SHA1><name>origin/rc_dev_xiasha</name></branch></marked><revision><SHA1>fca3a20dd978a00f0568bbb02a49aff6fc1ffeb1</SHA1><branch><SHA1>fca3a20dd978a00f0568bbb02a49aff6fc1ffeb1</SHA1><name>origin/rc_dev_xiasha</name></branch></revision></originrc_dev_xiasha><originfeat_yard_lane_change _class='hudson.plugins.git.util.Build'><buildNumber>525</buildNumber><marked><SHA1>9c5267888fbed74808f7b7c3fa5beff157057207</SHA1><branch><SHA1>9c5267888fbed74808f7b7c3fa5beff157057207</SHA1><name>origin/feat_yard_lane_change</name></branch></marked><revision><SHA1>9c5267888fbed74808f7b7c3fa5beff157057207</SHA1><branch><SHA1>9c5267888fbed74808f7b7c3fa5beff157057207</SHA1><name>origin/feat_yard_lane_change</name></branch></revision></originfeat_yard_lane_change><originfeat_tc_v2_xiamen _class='hudson.plugins.git.util.Build'><buildNumber>2176</buildNumber><marked><SHA1>df329f0b0fe1fb2f0213fc2c6e790f48c58253e5</SHA1><branch><SHA1>df329f0b0fe1fb2f0213fc2c6e790f48c58253e5</SHA1><name>origin/feat_tc_v2_xiamen</name></branch></marked><revision><SHA1>df329f0b0fe1fb2f0213fc2c6e790f48c58253e5</SHA1><branch><SHA1>df329f0b0fe1fb2f0213fc2c6e790f48c58253e5</SHA1><name>origin/feat_tc_v2_xiamen</name></branch></revision></originfeat_tc_v2_xiamen><originrcdev_c9969b7 _class='hudson.plugins.git.util.Build'><buildNumber>289</buildNumber><marked><SHA1>24a5a27ac09f5c6d866b65ecdc9fee463be597cf</SHA1><branch><SHA1>24a5a27ac09f5c6d866b65ecdc9fee463be597cf</SHA1><name>origin/rcdev_c9969b7</name></branch></marked><revision><SHA1>24a5a27ac09f5c6d866b65ecdc9fee463be597cf</SHA1><branch><SHA1>24a5a27ac09f5c6d866b65ecdc9fee463be597cf</SHA1><name>origin/rcdev_c9969b7</name></branch></revision></originrcdev_c9969b7><originrc_dev_suxi _class='hudson.plugins.git.util.Build'><buildNumber>2172</buildNumber><marked><SHA1>19e0f13735cd065dc0507a9516ad10727decfb29</SHA1><branch><SHA1>19e0f13735cd065dc0507a9516ad10727decfb29</SHA1><name>origin/rc_dev_suxi</name></branch></marked><revision><SHA1>19e0f13735cd065dc0507a9516ad10727decfb29</SHA1><branch><SHA1>19e0f13735cd065dc0507a9516ad10727decfb29</SHA1><name>origin/rc_dev_suxi</name></branch></revision></originrc_dev_suxi><originrc_dev_taiyang_ctrl _class='hudson.plugins.git.util.Build'><buildNumber>1771</buildNumber><marked><SHA1>4ba1d6d39371013ba90023bb6ab4d337e8aa18a2</SHA1><branch><SHA1>4ba1d6d39371013ba90023bb6ab4d337e8aa18a2</SHA1><name>origin/rc_dev_taiyang_ctrl</name></branch></marked><revision><SHA1>4ba1d6d39371013ba90023bb6ab4d337e8aa18a2</SHA1><branch><SHA1>4ba1d6d39371013ba90023bb6ab4d337e8aa18a2</SHA1><name>origin/rc_dev_taiyang_ctrl</name></branch></revision></originrc_dev_taiyang_ctrl><originrc_dev_qingdaodagang _class='hudson.plugins.git.util.Build'><buildNumber>1260</buildNumber><marked><SHA1>6858447f1f5c9e880a747d653217350f3c4ea0a0</SHA1><branch><SHA1>6858447f1f5c9e880a747d653217350f3c4ea0a0</SHA1><name>origin/rc_dev_qingdaodagang</name></branch></marked><revision><SHA1>6858447f1f5c9e880a747d653217350f3c4ea0a0</SHA1><branch><SHA1>6858447f1f5c9e880a747d653217350f3c4ea0a0</SHA1><name>origin/rc_dev_qingdaodagang</name></branch></revision></originrc_dev_qingdaodagang><originrc_dev_baoshishun _class='hudson.plugins.git.util.Build'><buildNumber>2130</buildNumber><marked><SHA1>b080c3140afa34324a990cf86e60f3a92affb918</SHA1><branch><SHA1>b080c3140afa34324a990cf86e60f3a92affb918</SHA1><name>origin/rc_dev_baoshishun</name></branch></marked><revision><SHA1>b080c3140afa34324a990cf86e60f3a92affb918</SHA1><branch><SHA1>b080c3140afa34324a990cf86e60f3a92affb918</SHA1><name>origin/rc_dev_baoshishun</name></branch></revision></originrc_dev_baoshishun><originfeat-xilian _class='hudson.plugins.git.util.Build'><buildNumber>381</buildNumber><marked><SHA1>95f15a0454380530b0bf028c6917a34abaa43378</SHA1><branch><SHA1>95f15a0454380530b0bf028c6917a34abaa43378</SHA1><name>origin/feat-xilian</name></branch></marked><revision><SHA1>95f15a0454380530b0bf028c6917a34abaa43378</SHA1><branch><SHA1>95f15a0454380530b0bf028c6917a34abaa43378</SHA1><name>origin/feat-xilian</name></branch></revision></originfeat-xilian><originrc_dev_youyiguan _class='hudson.plugins.git.util.Build'><buildNumber>1977</buildNumber><marked><SHA1>1be039cfa092298ec02479636537b6550f1b9152</SHA1><branch><SHA1>1be039cfa092298ec02479636537b6550f1b9152</SHA1><name>origin/rc_dev_youyiguan</name></branch></marked><revision><SHA1>1be039cfa092298ec02479636537b6550f1b9152</SHA1><branch><SHA1>1be039cfa092298ec02479636537b6550f1b9152</SHA1><name>origin/rc_dev_youyiguan</name></branch></revision></originrc_dev_youyiguan><originrc_dev_tangshanjinxi _class='hudson.plugins.git.util.Build'><buildNumber>2179</buildNumber><marked><SHA1>1b306566b5e66a524235d5f2635d6ef234fcc6a8</SHA1><branch><SHA1>1b306566b5e66a524235d5f2635d6ef234fcc6a8</SHA1><name>origin/rc_dev_tangshanjinxi</name></branch></marked><revision><SHA1>1b306566b5e66a524235d5f2635d6ef234fcc6a8</SHA1><branch><SHA1>1b306566b5e66a524235d5f2635d6ef234fcc6a8</SHA1><name>origin/rc_dev_tangshanjinxi</name></branch></revision></originrc_dev_tangshanjinxi><originrc_dev_xiamen _class='hudson.plugins.git.util.Build'><buildNumber>1840</buildNumber><marked><SHA1>483fabd931605b5fe19a49de9f1cbbb1097f497b</SHA1><branch><SHA1>483fabd931605b5fe19a49de9f1cbbb1097f497b</SHA1><name>origin/rc_dev_xiamen</name></branch></marked><revision><SHA1>483fabd931605b5fe19a49de9f1cbbb1097f497b</SHA1><branch><SHA1>483fabd931605b5fe19a49de9f1cbbb1097f497b</SHA1><name>origin/rc_dev_xiamen</name></branch></revision></originrc_dev_xiamen><originrc_dev_weiqiao _class='hudson.plugins.git.util.Build'><buildNumber>2165</buildNumber><marked><SHA1>77e314b6ec1f478bfb91514c971c5d2c05d05744</SHA1><branch><SHA1>77e314b6ec1f478bfb91514c971c5d2c05d05744</SHA1><name>origin/rc_dev_weiqiao</name></branch></marked><revision><SHA1>77e314b6ec1f478bfb91514c971c5d2c05d05744</SHA1><branch><SHA1>77e314b6ec1f478bfb91514c971c5d2c05d05744</SHA1><name>origin/rc_dev_weiqiao</name></branch></revision></originrc_dev_weiqiao><originrc_dev_xilian _class='hudson.plugins.git.util.Build'><buildNumber>2102</buildNumber><marked><SHA1>f820c4ad43107c56f407831e44f6bc87cbbfff7f</SHA1><branch><SHA1>f820c4ad43107c56f407831e44f6bc87cbbfff7f</SHA1><name>origin/rc_dev_xilian</name></branch></marked><revision><SHA1>f820c4ad43107c56f407831e44f6bc87cbbfff7f</SHA1><branch><SHA1>f820c4ad43107c56f407831e44f6bc87cbbfff7f</SHA1><name>origin/rc_dev_xilian</name></branch></revision></originrc_dev_xilian><originfeat_monitor_frame _class='hudson.plugins.git.util.Build'><buildNumber>331</buildNumber><marked><SHA1>ca7c2a8369584e2797d47ddc5bcee2e7bc94013a</SHA1><branch><SHA1>ca7c2a8369584e2797d47ddc5bcee2e7bc94013a</SHA1><name>origin/feat_monitor_frame</name></branch></marked><revision><SHA1>ca7c2a8369584e2797d47ddc5bcee2e7bc94013a</SHA1><branch><SHA1>ca7c2a8369584e2797d47ddc5bcee2e7bc94013a</SHA1><name>origin/feat_monitor_frame</name></branch></revision></originfeat_monitor_frame><originrc_dev_yantaigunzhuang _class='hudson.plugins.git.util.Build'><buildNumber>2174</buildNumber><marked><SHA1>45405ae4f7f78b275cc6e9dd8f36cc2a220f9e37</SHA1><branch><SHA1>45405ae4f7f78b275cc6e9dd8f36cc2a220f9e37</SHA1><name>origin/rc_dev_yantaigunzhuang</name></branch></marked><revision><SHA1>45405ae4f7f78b275cc6e9dd8f36cc2a220f9e37</SHA1><branch><SHA1>45405ae4f7f78b275cc6e9dd8f36cc2a220f9e37</SHA1><name>origin/rc_dev_yantaigunzhuang</name></branch></revision></originrc_dev_yantaigunzhuang><originrc_dev_wuhanzhongtielianji _class='hudson.plugins.git.util.Build'><buildNumber>2166</buildNumber><marked><SHA1>548659540c3568147388dbcf79627429cb5288eb</SHA1><branch><SHA1>548659540c3568147388dbcf79627429cb5288eb</SHA1><name>origin/rc_dev_wuhanzhongtielianji</name></branch></marked><revision><SHA1>548659540c3568147388dbcf79627429cb5288eb</SHA1><branch><SHA1>548659540c3568147388dbcf79627429cb5288eb</SHA1><name>origin/rc_dev_wuhanzhongtielianji</name></branch></revision></originrc_dev_wuhanzhongtielianji><originrc_dev_weihai _class='hudson.plugins.git.util.Build'><buildNumber>2144</buildNumber><marked><SHA1>40c221ec332fa1e028f30da761372becdb391501</SHA1><branch><SHA1>40c221ec332fa1e028f30da761372becdb391501</SHA1><name>origin/rc_dev_weihai</name></branch></marked><revision><SHA1>40c221ec332fa1e028f30da761372becdb391501</SHA1><branch><SHA1>40c221ec332fa1e028f30da761372becdb391501</SHA1><name>origin/rc_dev_weihai</name></branch></revision></originrc_dev_weihai><originrc_dev_mandula _class='hudson.plugins.git.util.Build'><buildNumber>1348</buildNumber><marked><SHA1>fe3fc1534c53f91f596b9458776afd6d2364f0a2</SHA1><branch><SHA1>fe3fc1534c53f91f596b9458776afd6d2364f0a2</SHA1><name>origin/rc_dev_mandula</name></branch></marked><revision><SHA1>fe3fc1534c53f91f596b9458776afd6d2364f0a2</SHA1><branch><SHA1>fe3fc1534c53f91f596b9458776afd6d2364f0a2</SHA1><name>origin/rc_dev_mandula</name></branch></revision></originrc_dev_mandula><originfeat_suxi_oldtmp _class='hudson.plugins.git.util.Build'><buildNumber>2037</buildNumber><marked><SHA1>69d9a06f8c7221ce10c5d955a81fc9684aa206c3</SHA1><branch><SHA1>69d9a06f8c7221ce10c5d955a81fc9684aa206c3</SHA1><name>origin/feat_suxi_oldtmp</name></branch></marked><revision><SHA1>69d9a06f8c7221ce10c5d955a81fc9684aa206c3</SHA1><branch><SHA1>69d9a06f8c7221ce10c5d955a81fc9684aa206c3</SHA1><name>origin/feat_suxi_oldtmp</name></branch></revision></originfeat_suxi_oldtmp><originrc_dev_daxie _class='hudson.plugins.git.util.Build'><buildNumber>2158</buildNumber><marked><SHA1>5b4fc8786cda625874e52841a77c7984f7ec0e70</SHA1><branch><SHA1>5b4fc8786cda625874e52841a77c7984f7ec0e70</SHA1><name>origin/rc_dev_daxie</name></branch></marked><revision><SHA1>5b4fc8786cda625874e52841a77c7984f7ec0e70</SHA1><branch><SHA1>5b4fc8786cda625874e52841a77c7984f7ec0e70</SHA1><name>origin/rc_dev_daxie</name></branch></revision></originrc_dev_daxie><originfeat_qiangang _class='hudson.plugins.git.util.Build'><buildNumber>1184</buildNumber><marked><SHA1>289cda308241280b261706930b818b90420fcb5f</SHA1><branch><SHA1>289cda308241280b261706930b818b90420fcb5f</SHA1><name>origin/feat_qiangang</name></branch></marked><revision><SHA1>289cda308241280b261706930b818b90420fcb5f</SHA1><branch><SHA1>289cda308241280b261706930b818b90420fcb5f</SHA1><name>origin/feat_qiangang</name></branch></revision></originfeat_qiangang><originfeat-peripheral_op_state_aee7704c _class='hudson.plugins.git.util.Build'><buildNumber>109</buildNumber><marked><SHA1>aee7704cc51112ff34a8ad6cd572c220a21952d0</SHA1><branch><SHA1>aee7704cc51112ff34a8ad6cd572c220a21952d0</SHA1><name>origin/feat-peripheral_op_state_aee7704c</name></branch></marked><revision><SHA1>aee7704cc51112ff34a8ad6cd572c220a21952d0</SHA1><branch><SHA1>aee7704cc51112ff34a8ad6cd572c220a21952d0</SHA1><name>origin/feat-peripheral_op_state_aee7704c</name></branch></revision></originfeat-peripheral_op_state_aee7704c><originrc_dev_93cc60 _class='hudson.plugins.git.util.Build'><buildNumber>385</buildNumber><marked><SHA1>93cc602576f9f342ff85e9cc672a683b99db923b</SHA1><branch><SHA1>93cc602576f9f342ff85e9cc672a683b99db923b</SHA1><name>origin/rc_dev_93cc60</name></branch></marked><revision><SHA1>93cc602576f9f342ff85e9cc672a683b99db923b</SHA1><branch><SHA1>93cc602576f9f342ff85e9cc672a683b99db923b</SHA1><name>origin/rc_dev_93cc60</name></branch></revision></originrc_dev_93cc60><originfeat_mandula _class='hudson.plugins.git.util.Build'><buildNumber>742</buildNumber><marked><SHA1>da90fef6f7663bb03c4bdfcf266c45b4ec60499a</SHA1><branch><SHA1>da90fef6f7663bb03c4bdfcf266c45b4ec60499a</SHA1><name>origin/feat_mandula</name></branch></marked><revision><SHA1>da90fef6f7663bb03c4bdfcf266c45b4ec60499a</SHA1><branch><SHA1>da90fef6f7663bb03c4bdfcf266c45b4ec60499a</SHA1><name>origin/feat_mandula</name></branch></revision></originfeat_mandula><originfeat_suxi_patch _class='hudson.plugins.git.util.Build'><buildNumber>985</buildNumber><marked><SHA1>762ac69a8087af8a7d2988094ab4943f538e8a04</SHA1><branch><SHA1>762ac69a8087af8a7d2988094ab4943f538e8a04</SHA1><name>origin/feat_suxi_patch</name></branch></marked><revision><SHA1>762ac69a8087af8a7d2988094ab4943f538e8a04</SHA1><branch><SHA1>762ac69a8087af8a7d2988094ab4943f538e8a04</SHA1><name>origin/feat_suxi_patch</name></branch></revision></originfeat_suxi_patch><originfeat_tc_v2_qiangang _class='hudson.plugins.git.util.Build'><buildNumber>1793</buildNumber><marked><SHA1>bcbc5de637a9a70f2d4a3f32247a71a67dbfd4a0</SHA1><branch><SHA1>bcbc5de637a9a70f2d4a3f32247a71a67dbfd4a0</SHA1><name>origin/feat_tc_v2_qiangang</name></branch></marked><revision><SHA1>bcbc5de637a9a70f2d4a3f32247a71a67dbfd4a0</SHA1><branch><SHA1>bcbc5de637a9a70f2d4a3f32247a71a67dbfd4a0</SHA1><name>origin/feat_tc_v2_qiangang</name></branch></revision></originfeat_tc_v2_qiangang><originfeat_tc_v2_suxi _class='hudson.plugins.git.util.Build'><buildNumber>1812</buildNumber><marked><SHA1>eadbbf60c2f42f9cc816ea239eb5310f19bef058</SHA1><branch><SHA1>eadbbf60c2f42f9cc816ea239eb5310f19bef058</SHA1><name>origin/feat_tc_v2_suxi</name></branch></marked><revision><SHA1>eadbbf60c2f42f9cc816ea239eb5310f19bef058</SHA1><branch><SHA1>eadbbf60c2f42f9cc816ea239eb5310f19bef058</SHA1><name>origin/feat_tc_v2_suxi</name></branch></revision></originfeat_tc_v2_suxi><originrc_dev_jiningliangshangang _class='hudson.plugins.git.util.Build'><buildNumber>2178</buildNumber><marked><SHA1>531313779621ea1cd882137e13ebc7f5f5e007e2</SHA1><branch><SHA1>531313779621ea1cd882137e13ebc7f5f5e007e2</SHA1><name>origin/rc_dev_jiningliangshangang</name></branch></marked><revision><SHA1>531313779621ea1cd882137e13ebc7f5f5e007e2</SHA1><branch><SHA1>531313779621ea1cd882137e13ebc7f5f5e007e2</SHA1><name>origin/rc_dev_jiningliangshangang</name></branch></revision></originrc_dev_jiningliangshangang><originfeat-peripheral_qiangang_d5b225 _class='hudson.plugins.git.util.Build'><buildNumber>327</buildNumber><marked><SHA1>d5b2257a0fb952d19ad035f23b88df52bd27e9ff</SHA1><branch><SHA1>d5b2257a0fb952d19ad035f23b88df52bd27e9ff</SHA1><name>origin/feat-peripheral_qiangang_d5b225</name></branch></marked><revision><SHA1>d5b2257a0fb952d19ad035f23b88df52bd27e9ff</SHA1><branch><SHA1>d5b2257a0fb952d19ad035f23b88df52bd27e9ff</SHA1><name>origin/feat-peripheral_qiangang_d5b225</name></branch></revision></originfeat-peripheral_qiangang_d5b225><originrc_dev_shenqi _class='hudson.plugins.git.util.Build'><buildNumber>1450</buildNumber><marked><SHA1>31f70a912caef9f3c2e3745c0e9b19467b7ca967</SHA1><branch><SHA1>31f70a912caef9f3c2e3745c0e9b19467b7ca967</SHA1><name>origin/rc_dev_shenqi</name></branch></marked><revision><SHA1>31f70a912caef9f3c2e3745c0e9b19467b7ca967</SHA1><branch><SHA1>31f70a912caef9f3c2e3745c0e9b19467b7ca967</SHA1><name>origin/rc_dev_shenqi</name></branch></revision></originrc_dev_shenqi><originfeat_youyiguan_pnc_status _class='hudson.plugins.git.util.Build'><buildNumber>1630</buildNumber><marked><SHA1>b338fbf811a4f2c0c39e71ee62f18c35757f0b1d</SHA1><branch><SHA1>b338fbf811a4f2c0c39e71ee62f18c35757f0b1d</SHA1><name>origin/feat_youyiguan_pnc_status</name></branch></marked><revision><SHA1>b338fbf811a4f2c0c39e71ee62f18c35757f0b1d</SHA1><branch><SHA1>b338fbf811a4f2c0c39e71ee62f18c35757f0b1d</SHA1><name>origin/feat_youyiguan_pnc_status</name></branch></revision></originfeat_youyiguan_pnc_status><origindev_ros2 _class='hudson.plugins.git.util.Build'><buildNumber>2177</buildNumber><marked><SHA1>09e25f72706b8350a7a15258d8e2613a6e2d1a2b</SHA1><branch><SHA1>09e25f72706b8350a7a15258d8e2613a6e2d1a2b</SHA1><name>origin/dev_ros2</name></branch></marked><revision><SHA1>09e25f72706b8350a7a15258d8e2613a6e2d1a2b</SHA1><branch><SHA1>09e25f72706b8350a7a15258d8e2613a6e2d1a2b</SHA1><name>origin/dev_ros2</name></branch></revision></origindev_ros2><originrc_dev_youyiguan_test _class='hudson.plugins.git.util.Build'><buildNumber>1220</buildNumber><marked><SHA1>f62c9602eebae4706b4494e12452559212efb66a</SHA1><branch><SHA1>f62c9602eebae4706b4494e12452559212efb66a</SHA1><name>origin/rc_dev_youyiguan_test</name></branch></marked><revision><SHA1>f62c9602eebae4706b4494e12452559212efb66a</SHA1><branch><SHA1>f62c9602eebae4706b4494e12452559212efb66a</SHA1><name>origin/rc_dev_youyiguan_test</name></branch></revision></originrc_dev_youyiguan_test><originfeat_xilian_patch _class='hudson.plugins.git.util.Build'><buildNumber>1477</buildNumber><marked><SHA1>1e6c6aa34911755a34f4cc4acec03c6c30a2e604</SHA1><branch><SHA1>1e6c6aa34911755a34f4cc4acec03c6c30a2e604</SHA1><name>origin/feat_xilian_patch</name></branch></marked><revision><SHA1>1e6c6aa34911755a34f4cc4acec03c6c30a2e604</SHA1><branch><SHA1>1e6c6aa34911755a34f4cc4acec03c6c30a2e604</SHA1><name>origin/feat_xilian_patch</name></branch></revision></originfeat_xilian_patch><originrc_dev_184937 _class='hudson.plugins.git.util.Build'><buildNumber>876</buildNumber><marked><SHA1>184937840d35a83cb9158067f5fc65458db35e7a</SHA1><branch><SHA1>184937840d35a83cb9158067f5fc65458db35e7a</SHA1><name>origin/rc_dev_184937</name></branch></marked><revision><SHA1>184937840d35a83cb9158067f5fc65458db35e7a</SHA1><branch><SHA1>184937840d35a83cb9158067f5fc65458db35e7a</SHA1><name>origin/rc_dev_184937</name></branch></revision></originrc_dev_184937><originrc_dev_yangpu _class='hudson.plugins.git.util.Build'><buildNumber>2171</buildNumber><marked><SHA1>542b54142a97e21788a87fd638595d7b8f85e37f</SHA1><branch><SHA1>542b54142a97e21788a87fd638595d7b8f85e37f</SHA1><name>origin/rc_dev_yangpu</name></branch></marked><revision><SHA1>542b54142a97e21788a87fd638595d7b8f85e37f</SHA1><branch><SHA1>542b54142a97e21788a87fd638595d7b8f85e37f</SHA1><name>origin/rc_dev_yangpu</name></branch></revision></originrc_dev_yangpu><originfeat_tc_v2 _class='hudson.plugins.git.util.Build'><buildNumber>1938</buildNumber><marked><SHA1>b34e00e37e0d3a5818ba0ebb75422c11ae3b6b28</SHA1><branch><SHA1>b34e00e37e0d3a5818ba0ebb75422c11ae3b6b28</SHA1><name>origin/feat_tc_v2</name></branch></marked><revision><SHA1>b34e00e37e0d3a5818ba0ebb75422c11ae3b6b28</SHA1><branch><SHA1>b34e00e37e0d3a5818ba0ebb75422c11ae3b6b28</SHA1><name>origin/feat_tc_v2</name></branch></revision></originfeat_tc_v2><originrc_dev_weifang_container _class='hudson.plugins.git.util.Build'><buildNumber>2170</buildNumber><marked><SHA1>546ecdbcea2f86ee501ec1340a052e5751657754</SHA1><branch><SHA1>546ecdbcea2f86ee501ec1340a052e5751657754</SHA1><name>origin/rc_dev_weifang_container</name></branch></marked><revision><SHA1>546ecdbcea2f86ee501ec1340a052e5751657754</SHA1><branch><SHA1>546ecdbcea2f86ee501ec1340a052e5751657754</SHA1><name>origin/rc_dev_weifang_container</name></branch></revision></originrc_dev_weifang_container><originrc_dev_qiangang_config _class='hudson.plugins.git.util.Build'><buildNumber>2173</buildNumber><marked><SHA1>45ef1220ae218999449b078d0af2c8c9d4ea57bc</SHA1><branch><SHA1>45ef1220ae218999449b078d0af2c8c9d4ea57bc</SHA1><name>origin/rc_dev_qiangang_config</name></branch></marked><revision><SHA1>45ef1220ae218999449b078d0af2c8c9d4ea57bc</SHA1><branch><SHA1>45ef1220ae218999449b078d0af2c8c9d4ea57bc</SHA1><name>origin/rc_dev_qiangang_config</name></branch></revision></originrc_dev_qiangang_config><originrc_dev_luojing _class='hudson.plugins.git.util.Build'><buildNumber>2022</buildNumber><marked><SHA1>32334d000675a8e9faa66ac5b3334a4eb573a3fb</SHA1><branch><SHA1>32334d000675a8e9faa66ac5b3334a4eb573a3fb</SHA1><name>origin/rc_dev_luojing</name></branch></marked><revision><SHA1>32334d000675a8e9faa66ac5b3334a4eb573a3fb</SHA1><branch><SHA1>32334d000675a8e9faa66ac5b3334a4eb573a3fb</SHA1><name>origin/rc_dev_luojing</name></branch></revision></originrc_dev_luojing><originfeat_qiangang_side_pass _class='hudson.plugins.git.util.Build'><buildNumber>1676</buildNumber><marked><SHA1>0daa1f7f08156df5a55cf90342da631b318e2d3d</SHA1><branch><SHA1>0daa1f7f08156df5a55cf90342da631b318e2d3d</SHA1><name>origin/feat_qiangang_side_pass</name></branch></marked><revision><SHA1>0daa1f7f08156df5a55cf90342da631b318e2d3d</SHA1><branch><SHA1>0daa1f7f08156df5a55cf90342da631b318e2d3d</SHA1><name>origin/feat_qiangang_side_pass</name></branch></revision></originfeat_qiangang_side_pass><originrc_dev_jiaxingdongfangtegang _class='hudson.plugins.git.util.Build'><buildNumber>2168</buildNumber><marked><SHA1>f81898909167f9f8c7dee4f7367c611c2268d138</SHA1><branch><SHA1>f81898909167f9f8c7dee4f7367c611c2268d138</SHA1><name>origin/rc_dev_jiaxingdongfangtegang</name></branch></marked><revision><SHA1>f81898909167f9f8c7dee4f7367c611c2268d138</SHA1><branch><SHA1>f81898909167f9f8c7dee4f7367c611c2268d138</SHA1><name>origin/rc_dev_jiaxingdongfangtegang</name></branch></revision></originrc_dev_jiaxingdongfangtegang></buildsByBranchName><lastBuiltRevision><SHA1>1b306566b5e66a524235d5f2635d6ef234fcc6a8</SHA1><branch><SHA1>1b306566b5e66a524235d5f2635d6ef234fcc6a8</SHA1><name>origin/rc_dev_tangshanjinxi</name></branch></lastBuiltRevision><remoteUrl>http://159.27.226.4/shared/shared_msgs.git</remoteUrl><scmName></scmName></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><originfeat_truck_reverse_old _class='hudson.plugins.git.util.Build'><buildNumber>649</buildNumber><marked><SHA1>c3c62c1259448726e4fed5ee5e7696969b460623</SHA1><branch><SHA1>c3c62c1259448726e4fed5ee5e7696969b460623</SHA1><name>origin/feat_truck_reverse_old</name></branch></marked><revision><SHA1>c3c62c1259448726e4fed5ee5e7696969b460623</SHA1><branch><SHA1>c3c62c1259448726e4fed5ee5e7696969b460623</SHA1><name>origin/feat_truck_reverse_old</name></branch></revision></originfeat_truck_reverse_old><origintest_chongqing _class='hudson.plugins.git.util.Build'><buildNumber>2098</buildNumber><marked><SHA1>67db1a9a49b520b3867908ded72f67324ab3d22f</SHA1><branch><SHA1>67db1a9a49b520b3867908ded72f67324ab3d22f</SHA1><name>origin/test_chongqing</name></branch></marked><revision><SHA1>67db1a9a49b520b3867908ded72f67324ab3d22f</SHA1><branch><SHA1>67db1a9a49b520b3867908ded72f67324ab3d22f</SHA1><name>origin/test_chongqing</name></branch></revision></origintest_chongqing><originfeat_safety_check_xl _class='hudson.plugins.git.util.Build'><buildNumber>517</buildNumber><marked><SHA1>eba85868178acebed483c2d7c3fcfcc2836073d4</SHA1><branch><SHA1>eba85868178acebed483c2d7c3fcfcc2836073d4</SHA1><name>origin/feat_safety_check_xl</name></branch></marked><revision><SHA1>eba85868178acebed483c2d7c3fcfcc2836073d4</SHA1><branch><SHA1>eba85868178acebed483c2d7c3fcfcc2836073d4</SHA1><name>origin/feat_safety_check_xl</name></branch></revision></originfeat_safety_check_xl><origindev_log _class='hudson.plugins.git.util.Build'><buildNumber>92</buildNumber><marked><SHA1>7dfda59c1971723325dedb18473b9707099fc64f</SHA1><branch><SHA1>7dfda59c1971723325dedb18473b9707099fc64f</SHA1><name>origin/dev_log</name></branch></marked><revision><SHA1>7dfda59c1971723325dedb18473b9707099fc64f</SHA1><branch><SHA1>7dfda59c1971723325dedb18473b9707099fc64f</SHA1><name>origin/dev_log</name></branch></revision></origindev_log><originremote_control _class='hudson.plugins.git.util.Build'><buildNumber>106</buildNumber><marked><SHA1>f2659e2c7ebfe5acd5ce2af20af2985c13183208</SHA1><branch><SHA1>f2659e2c7ebfe5acd5ce2af20af2985c13183208</SHA1><name>origin/remote_control</name></branch></marked><revision><SHA1>f2659e2c7ebfe5acd5ce2af20af2985c13183208</SHA1><branch><SHA1>f2659e2c7ebfe5acd5ce2af20af2985c13183208</SHA1><name>origin/remote_control</name></branch></revision></originremote_control><originfeat_xl_park _class='hudson.plugins.git.util.Build'><buildNumber>190</buildNumber><marked><SHA1>b328ff7f08dfeea96983be75d14da25ce62380b5</SHA1><branch><SHA1>b328ff7f08dfeea96983be75d14da25ce62380b5</SHA1><name>origin/feat_xl_park</name></branch></marked><revision><SHA1>b328ff7f08dfeea96983be75d14da25ce62380b5</SHA1><branch><SHA1>b328ff7f08dfeea96983be75d14da25ce62380b5</SHA1><name>origin/feat_xl_park</name></branch></revision></originfeat_xl_park><origindev _class='hudson.plugins.git.util.Build'><buildNumber>888</buildNumber><marked><SHA1>bd6730672469a4c0ff0d9e2de8c3e7dffec58f45</SHA1><branch><SHA1>bd6730672469a4c0ff0d9e2de8c3e7dffec58f45</SHA1><name>origin/dev</name></branch></marked><revision><SHA1>bd6730672469a4c0ff0d9e2de8c3e7dffec58f45</SHA1><branch><SHA1>bd6730672469a4c0ff0d9e2de8c3e7dffec58f45</SHA1><name>origin/dev</name></branch></revision></origindev><originfeat_cargo_width _class='hudson.plugins.git.util.Build'><buildNumber>1323</buildNumber><marked><SHA1>f0087f099cc51505e90abfe5eadc282c256aeb3d</SHA1><branch><SHA1>f0087f099cc51505e90abfe5eadc282c256aeb3d</SHA1><name>origin/feat_cargo_width</name></branch></marked><revision><SHA1>f0087f099cc51505e90abfe5eadc282c256aeb3d</SHA1><branch><SHA1>f0087f099cc51505e90abfe5eadc282c256aeb3d</SHA1><name>origin/feat_cargo_width</name></branch></revision></originfeat_cargo_width><originfeat-path _class='hudson.plugins.git.util.Build'><buildNumber>337</buildNumber><marked><SHA1>a9ed65d4cecf986ce0901c28f2bb2ade49e25316</SHA1><branch><SHA1>a9ed65d4cecf986ce0901c28f2bb2ade49e25316</SHA1><name>origin/feat-path</name></branch></marked><revision><SHA1>a9ed65d4cecf986ce0901c28f2bb2ade49e25316</SHA1><branch><SHA1>a9ed65d4cecf986ce0901c28f2bb2ade49e25316</SHA1><name>origin/feat-path</name></branch></revision></originfeat-path><origintmp _class='hudson.plugins.git.util.Build'><buildNumber>364</buildNumber><marked><SHA1>343e9a939958ff74a579dbb08fa1f3dda8b14480</SHA1><branch><SHA1>343e9a939958ff74a579dbb08fa1f3dda8b14480</SHA1><name>origin/tmp</name></branch></marked><revision><SHA1>343e9a939958ff74a579dbb08fa1f3dda8b14480</SHA1><branch><SHA1>343e9a939958ff74a579dbb08fa1f3dda8b14480</SHA1><name>origin/tmp</name></branch></revision></origintmp><origintemp_hfsm _class='hudson.plugins.git.util.Build'><buildNumber>103</buildNumber><marked><SHA1>ddee85ec821243f9bd15fd2307b5e74763b61f78</SHA1><branch><SHA1>ddee85ec821243f9bd15fd2307b5e74763b61f78</SHA1><name>origin/temp_hfsm</name></branch></marked><revision><SHA1>ddee85ec821243f9bd15fd2307b5e74763b61f78</SHA1><branch><SHA1>ddee85ec821243f9bd15fd2307b5e74763b61f78</SHA1><name>origin/temp_hfsm</name></branch></revision></origintemp_hfsm><originfeat_daxie_1 _class='hudson.plugins.git.util.Build'><buildNumber>1114</buildNumber><marked><SHA1>3ad7410fd050bad1ba844127c2ac1869c3b9e96e</SHA1><branch><SHA1>3ad7410fd050bad1ba844127c2ac1869c3b9e96e</SHA1><name>origin/feat_daxie_1</name></branch></marked><revision><SHA1>3ad7410fd050bad1ba844127c2ac1869c3b9e96e</SHA1><branch><SHA1>3ad7410fd050bad1ba844127c2ac1869c3b9e96e</SHA1><name>origin/feat_daxie_1</name></branch></revision></originfeat_daxie_1><originfeat_keb_offboard_html _class='hudson.plugins.git.util.Build'><buildNumber>2130</buildNumber><marked><SHA1>f2008e75ef78e35e6a63d1c338ecb00f141d2769</SHA1><branch><SHA1>f2008e75ef78e35e6a63d1c338ecb00f141d2769</SHA1><name>origin/feat_keb_offboard_html</name></branch></marked><revision><SHA1>f2008e75ef78e35e6a63d1c338ecb00f141d2769</SHA1><branch><SHA1>f2008e75ef78e35e6a63d1c338ecb00f141d2769</SHA1><name>origin/feat_keb_offboard_html</name></branch></revision></originfeat_keb_offboard_html><origindaxie_lane_change _class='hudson.plugins.git.util.Build'><buildNumber>705</buildNumber><marked><SHA1>c38300b97f751a000c01dac554ddc08079b115a5</SHA1><branch><SHA1>c38300b97f751a000c01dac554ddc08079b115a5</SHA1><name>origin/daxie_lane_change</name></branch></marked><revision><SHA1>c38300b97f751a000c01dac554ddc08079b115a5</SHA1><branch><SHA1>c38300b97f751a000c01dac554ddc08079b115a5</SHA1><name>origin/daxie_lane_change</name></branch></revision></origindaxie_lane_change><originfeat_qg_ssep _class='hudson.plugins.git.util.Build'><buildNumber>615</buildNumber><marked><SHA1>f6a4cff1ffa71f8fcb152307b12550b9beb14457</SHA1><branch><SHA1>f6a4cff1ffa71f8fcb152307b12550b9beb14457</SHA1><name>origin/feat_qg_ssep</name></branch></marked><revision><SHA1>f6a4cff1ffa71f8fcb152307b12550b9beb14457</SHA1><branch><SHA1>f6a4cff1ffa71f8fcb152307b12550b9beb14457</SHA1><name>origin/feat_qg_ssep</name></branch></revision></originfeat_qg_ssep><originfeat_yp_LD _class='hudson.plugins.git.util.Build'><buildNumber>1464</buildNumber><marked><SHA1>5096ef765bd12a34104c0eaface2ed4771e89c42</SHA1><branch><SHA1>5096ef765bd12a34104c0eaface2ed4771e89c42</SHA1><name>origin/feat_yp_LD</name></branch></marked><revision><SHA1>5096ef765bd12a34104c0eaface2ed4771e89c42</SHA1><branch><SHA1>5096ef765bd12a34104c0eaface2ed4771e89c42</SHA1><name>origin/feat_yp_LD</name></branch></revision></originfeat_yp_LD><originfeat_xilian_speed_limit _class='hudson.plugins.git.util.Build'><buildNumber>328</buildNumber><marked><SHA1>0880da9730cce8b9668b50ca9ea83254e6342878</SHA1><branch><SHA1>0880da9730cce8b9668b50ca9ea83254e6342878</SHA1><name>origin/feat_xilian_speed_limit</name></branch></marked><revision><SHA1>0880da9730cce8b9668b50ca9ea83254e6342878</SHA1><branch><SHA1>0880da9730cce8b9668b50ca9ea83254e6342878</SHA1><name>origin/feat_xilian_speed_limit</name></branch></revision></originfeat_xilian_speed_limit><origintest_movestep_safe _class='hudson.plugins.git.util.Build'><buildNumber>1957</buildNumber><marked><SHA1>a9e7e536dc43036d73cdf31b265021a8721d55b6</SHA1><branch><SHA1>a9e7e536dc43036d73cdf31b265021a8721d55b6</SHA1><name>origin/test_movestep_safe</name></branch></marked><revision><SHA1>a9e7e536dc43036d73cdf31b265021a8721d55b6</SHA1><branch><SHA1>a9e7e536dc43036d73cdf31b265021a8721d55b6</SHA1><name>origin/test_movestep_safe</name></branch></revision></origintest_movestep_safe><originfeat_hdmap_dynamic_sidepass _class='hudson.plugins.git.util.Build'><buildNumber>387</buildNumber><marked><SHA1>42ac720f59648f1626e92b9897cf793e3f34f893</SHA1><branch><SHA1>42ac720f59648f1626e92b9897cf793e3f34f893</SHA1><name>origin/feat_hdmap_dynamic_sidepass</name></branch></marked><revision><SHA1>42ac720f59648f1626e92b9897cf793e3f34f893</SHA1><branch><SHA1>42ac720f59648f1626e92b9897cf793e3f34f893</SHA1><name>origin/feat_hdmap_dynamic_sidepass</name></branch></revision></originfeat_hdmap_dynamic_sidepass><originfeat_seaside _class='hudson.plugins.git.util.Build'><buildNumber>855</buildNumber><marked><SHA1>32572e0a5cf080be0a5f9b0166321401a2c65b60</SHA1><branch><SHA1>32572e0a5cf080be0a5f9b0166321401a2c65b60</SHA1><name>origin/feat_seaside</name></branch></marked><revision><SHA1>32572e0a5cf080be0a5f9b0166321401a2c65b60</SHA1><branch><SHA1>32572e0a5cf080be0a5f9b0166321401a2c65b60</SHA1><name>origin/feat_seaside</name></branch></revision></originfeat_seaside><originfeat_remote _class='hudson.plugins.git.util.Build'><buildNumber>1257</buildNumber><marked><SHA1>82b6c62336e681fa911b2f8b86cb34bbcf29642f</SHA1><branch><SHA1>82b6c62336e681fa911b2f8b86cb34bbcf29642f</SHA1><name>origin/feat_remote</name></branch></marked><revision><SHA1>82b6c62336e681fa911b2f8b86cb34bbcf29642f</SHA1><branch><SHA1>82b6c62336e681fa911b2f8b86cb34bbcf29642f</SHA1><name>origin/feat_remote</name></branch></revision></originfeat_remote><originfeat_destination_type _class='hudson.plugins.git.util.Build'><buildNumber>135</buildNumber><marked><SHA1>b51cc7e3e3d9d3aa46f780b17d3a38e68a9d43b5</SHA1><branch><SHA1>b51cc7e3e3d9d3aa46f780b17d3a38e68a9d43b5</SHA1><name>origin/feat_destination_type</name></branch></marked><revision><SHA1>b51cc7e3e3d9d3aa46f780b17d3a38e68a9d43b5</SHA1><branch><SHA1>b51cc7e3e3d9d3aa46f780b17d3a38e68a9d43b5</SHA1><name>origin/feat_destination_type</name></branch></revision></originfeat_destination_type><originfeat_new_lka _class='hudson.plugins.git.util.Build'><buildNumber>725</buildNumber><marked><SHA1>a5ddf2bf4bb5d3d6c0645f5dc27979824425bfbf</SHA1><branch><SHA1>a5ddf2bf4bb5d3d6c0645f5dc27979824425bfbf</SHA1><name>origin/feat_new_lka</name></branch></marked><revision><SHA1>a5ddf2bf4bb5d3d6c0645f5dc27979824425bfbf</SHA1><branch><SHA1>a5ddf2bf4bb5d3d6c0645f5dc27979824425bfbf</SHA1><name>origin/feat_new_lka</name></branch></revision></originfeat_new_lka><originfeat_chassis_err _class='hudson.plugins.git.util.Build'><buildNumber>257</buildNumber><marked><SHA1>1b3a0efd43c6f5750340d80aad3f191373ddf48f</SHA1><branch><SHA1>1b3a0efd43c6f5750340d80aad3f191373ddf48f</SHA1><name>origin/feat_chassis_err</name></branch></marked><revision><SHA1>1b3a0efd43c6f5750340d80aad3f191373ddf48f</SHA1><branch><SHA1>1b3a0efd43c6f5750340d80aad3f191373ddf48f</SHA1><name>origin/feat_chassis_err</name></branch></revision></originfeat_chassis_err><originfeat_entrance _class='hudson.plugins.git.util.Build'><buildNumber>1211</buildNumber><marked><SHA1>c7d55549d1fa29cc760a8efdb29a40e01d6d9147</SHA1><branch><SHA1>c7d55549d1fa29cc760a8efdb29a40e01d6d9147</SHA1><name>origin/feat_entrance</name></branch></marked><revision><SHA1>c7d55549d1fa29cc760a8efdb29a40e01d6d9147</SHA1><branch><SHA1>c7d55549d1fa29cc760a8efdb29a40e01d6d9147</SHA1><name>origin/feat_entrance</name></branch></revision></originfeat_entrance><originfeat_yangpu1 _class='hudson.plugins.git.util.Build'><buildNumber>1852</buildNumber><marked><SHA1>fcb1fdf1c53233f194b8e9f1689ec363d96b4305</SHA1><branch><SHA1>fcb1fdf1c53233f194b8e9f1689ec363d96b4305</SHA1><name>origin/feat_yangpu1</name></branch></marked><revision><SHA1>fcb1fdf1c53233f194b8e9f1689ec363d96b4305</SHA1><branch><SHA1>fcb1fdf1c53233f194b8e9f1689ec363d96b4305</SHA1><name>origin/feat_yangpu1</name></branch></revision></originfeat_yangpu1><origincl_action_type _class='hudson.plugins.git.util.Build'><buildNumber>239</buildNumber><marked><SHA1>e6a438b106a2477add9de57f4f989471f7f9cbc3</SHA1><branch><SHA1>e6a438b106a2477add9de57f4f989471f7f9cbc3</SHA1><name>origin/cl_action_type</name></branch></marked><revision><SHA1>e6a438b106a2477add9de57f4f989471f7f9cbc3</SHA1><branch><SHA1>e6a438b106a2477add9de57f4f989471f7f9cbc3</SHA1><name>origin/cl_action_type</name></branch></revision></origincl_action_type><originfeat_qg_LD _class='hudson.plugins.git.util.Build'><buildNumber>1074</buildNumber><marked><SHA1>e57fe3ca793b6a61fc10de0c24e2ccf524d99813</SHA1><branch><SHA1>e57fe3ca793b6a61fc10de0c24e2ccf524d99813</SHA1><name>origin/feat_qg_LD</name></branch></marked><revision><SHA1>e57fe3ca793b6a61fc10de0c24e2ccf524d99813</SHA1><branch><SHA1>e57fe3ca793b6a61fc10de0c24e2ccf524d99813</SHA1><name>origin/feat_qg_LD</name></branch></revision></originfeat_qg_LD><originfeat_bulk_target _class='hudson.plugins.git.util.Build'><buildNumber>380</buildNumber><marked><SHA1>0c20e4b451ce1fc8c5e1601a83aa468afcc7c3d0</SHA1><branch><SHA1>0c20e4b451ce1fc8c5e1601a83aa468afcc7c3d0</SHA1><name>origin/feat_bulk_target</name></branch></marked><revision><SHA1>0c20e4b451ce1fc8c5e1601a83aa468afcc7c3d0</SHA1><branch><SHA1>0c20e4b451ce1fc8c5e1601a83aa468afcc7c3d0</SHA1><name>origin/feat_bulk_target</name></branch></revision></originfeat_bulk_target><originfeat_truck_reverse_tmp _class='hudson.plugins.git.util.Build'><buildNumber>711</buildNumber><marked><SHA1>a1c5943493421474ff3e42146b128ba57c28b486</SHA1><branch><SHA1>a1c5943493421474ff3e42146b128ba57c28b486</SHA1><name>origin/feat_truck_reverse_tmp</name></branch></marked><revision><SHA1>a1c5943493421474ff3e42146b128ba57c28b486</SHA1><branch><SHA1>a1c5943493421474ff3e42146b128ba57c28b486</SHA1><name>origin/feat_truck_reverse_tmp</name></branch></revision></originfeat_truck_reverse_tmp><originfeat_pnc_target _class='hudson.plugins.git.util.Build'><buildNumber>672</buildNumber><marked><SHA1>1a53d5a00fd45c684e78b66d519f642beee50fb7</SHA1><branch><SHA1>1a53d5a00fd45c684e78b66d519f642beee50fb7</SHA1><name>origin/feat_pnc_target</name></branch></marked><revision><SHA1>1a53d5a00fd45c684e78b66d519f642beee50fb7</SHA1><branch><SHA1>1a53d5a00fd45c684e78b66d519f642beee50fb7</SHA1><name>origin/feat_pnc_target</name></branch></revision></originfeat_pnc_target><originfeat_task _class='hudson.plugins.git.util.Build'><buildNumber>2030</buildNumber><marked><SHA1>dbfe05f83bac1eb0159e06d9a0382522d3afa3d0</SHA1><branch><SHA1>dbfe05f83bac1eb0159e06d9a0382522d3afa3d0</SHA1><name>origin/feat_task</name></branch></marked><revision><SHA1>dbfe05f83bac1eb0159e06d9a0382522d3afa3d0</SHA1><branch><SHA1>dbfe05f83bac1eb0159e06d9a0382522d3afa3d0</SHA1><name>origin/feat_task</name></branch></revision></originfeat_task><originfeat_ssep_wbca_2 _class='hudson.plugins.git.util.Build'><buildNumber>869</buildNumber><marked><SHA1>031678cb50ea58b10b2d14e027c86a97487b8a20</SHA1><branch><SHA1>031678cb50ea58b10b2d14e027c86a97487b8a20</SHA1><name>origin/feat_ssep_wbca_2</name></branch></marked><revision><SHA1>031678cb50ea58b10b2d14e027c86a97487b8a20</SHA1><branch><SHA1>031678cb50ea58b10b2d14e027c86a97487b8a20</SHA1><name>origin/feat_ssep_wbca_2</name></branch></revision></originfeat_ssep_wbca_2><originfeat_target _class='hudson.plugins.git.util.Build'><buildNumber>812</buildNumber><marked><SHA1>a713ad7789ccfa7445b4d39ed2eea3948aa5cd31</SHA1><branch><SHA1>a713ad7789ccfa7445b4d39ed2eea3948aa5cd31</SHA1><name>origin/feat_target</name></branch></marked><revision><SHA1>a713ad7789ccfa7445b4d39ed2eea3948aa5cd31</SHA1><branch><SHA1>a713ad7789ccfa7445b4d39ed2eea3948aa5cd31</SHA1><name>origin/feat_target</name></branch></revision></originfeat_target><originfeat_qianggang_refactor_base _class='hudson.plugins.git.util.Build'><buildNumber>1347</buildNumber><marked><SHA1>85b0e015f22a97ba8a1152c12fed667f3f594ac4</SHA1><branch><SHA1>85b0e015f22a97ba8a1152c12fed667f3f594ac4</SHA1><name>origin/feat_qianggang_refactor_base</name></branch></marked><revision><SHA1>85b0e015f22a97ba8a1152c12fed667f3f594ac4</SHA1><branch><SHA1>85b0e015f22a97ba8a1152c12fed667f3f594ac4</SHA1><name>origin/feat_qianggang_refactor_base</name></branch></revision></originfeat_qianggang_refactor_base><originfeat_align _class='hudson.plugins.git.util.Build'><buildNumber>424</buildNumber><marked><SHA1>ebbef1a1b30c3bae3cbffdcfbdf64dc7fe22a736</SHA1><branch><SHA1>ebbef1a1b30c3bae3cbffdcfbdf64dc7fe22a736</SHA1><name>origin/feat_align</name></branch></marked><revision><SHA1>ebbef1a1b30c3bae3cbffdcfbdf64dc7fe22a736</SHA1><branch><SHA1>ebbef1a1b30c3bae3cbffdcfbdf64dc7fe22a736</SHA1><name>origin/feat_align</name></branch></revision></originfeat_align><originfeat_below_plane_test _class='hudson.plugins.git.util.Build'><buildNumber>801</buildNumber><marked><SHA1>5c08d2adecb053192a885f7a03148f9254fe0db9</SHA1><branch><SHA1>5c08d2adecb053192a885f7a03148f9254fe0db9</SHA1><name>origin/feat_below_plane_test</name></branch></marked><revision><SHA1>5c08d2adecb053192a885f7a03148f9254fe0db9</SHA1><branch><SHA1>5c08d2adecb053192a885f7a03148f9254fe0db9</SHA1><name>origin/feat_below_plane_test</name></branch></revision></originfeat_below_plane_test><originfeat_trajectory _class='hudson.plugins.git.util.Build'><buildNumber>2011</buildNumber><marked><SHA1>779b6d5d34b3277c91752798ba87f7f422e9db60</SHA1><branch><SHA1>779b6d5d34b3277c91752798ba87f7f422e9db60</SHA1><name>origin/feat_trajectory</name></branch></marked><revision><SHA1>779b6d5d34b3277c91752798ba87f7f422e9db60</SHA1><branch><SHA1>779b6d5d34b3277c91752798ba87f7f422e9db60</SHA1><name>origin/feat_trajectory</name></branch></revision></originfeat_trajectory><originfeat_below_plane _class='hudson.plugins.git.util.Build'><buildNumber>821</buildNumber><marked><SHA1>4b71eab7a509abe41326ffcf34f7fa8b9c6e5171</SHA1><branch><SHA1>4b71eab7a509abe41326ffcf34f7fa8b9c6e5171</SHA1><name>origin/feat_below_plane</name></branch></marked><revision><SHA1>4b71eab7a509abe41326ffcf34f7fa8b9c6e5171</SHA1><branch><SHA1>4b71eab7a509abe41326ffcf34f7fa8b9c6e5171</SHA1><name>origin/feat_below_plane</name></branch></revision></originfeat_below_plane><originfeat_ros2_raw _class='hudson.plugins.git.util.Build'><buildNumber>2069</buildNumber><marked><SHA1>d5c2906f9643bbd187a340e0c7d97ab36c06f008</SHA1><branch><SHA1>d5c2906f9643bbd187a340e0c7d97ab36c06f008</SHA1><name>origin/feat_ros2_raw</name></branch></marked><revision><SHA1>d5c2906f9643bbd187a340e0c7d97ab36c06f008</SHA1><branch><SHA1>d5c2906f9643bbd187a340e0c7d97ab36c06f008</SHA1><name>origin/feat_ros2_raw</name></branch></revision></originfeat_ros2_raw><originfeat_error_2 _class='hudson.plugins.git.util.Build'><buildNumber>1702</buildNumber><marked><SHA1>dc5ce83a9372df1190690218ce64fd1058bcc3f3</SHA1><branch><SHA1>dc5ce83a9372df1190690218ce64fd1058bcc3f3</SHA1><name>origin/feat_error_2</name></branch></marked><revision><SHA1>dc5ce83a9372df1190690218ce64fd1058bcc3f3</SHA1><branch><SHA1>dc5ce83a9372df1190690218ce64fd1058bcc3f3</SHA1><name>origin/feat_error_2</name></branch></revision></originfeat_error_2><originfeat_RVM_expanding _class='hudson.plugins.git.util.Build'><buildNumber>57</buildNumber><marked><SHA1>6c5ba460a973c6efb925c1b8ac0c0c66ae67382d</SHA1><branch><SHA1>6c5ba460a973c6efb925c1b8ac0c0c66ae67382d</SHA1><name>origin/feat_RVM_expanding</name></branch></marked><revision><SHA1>6c5ba460a973c6efb925c1b8ac0c0c66ae67382d</SHA1><branch><SHA1>6c5ba460a973c6efb925c1b8ac0c0c66ae67382d</SHA1><name>origin/feat_RVM_expanding</name></branch></revision></originfeat_RVM_expanding><originfeat_xilian _class='hudson.plugins.git.util.Build'><buildNumber>1786</buildNumber><marked><SHA1>d97fcd10176d05afcd939eb6c9b52410b911ec04</SHA1><branch><SHA1>d97fcd10176d05afcd939eb6c9b52410b911ec04</SHA1><name>origin/feat_xilian</name></branch></marked><revision><SHA1>d97fcd10176d05afcd939eb6c9b52410b911ec04</SHA1><branch><SHA1>d97fcd10176d05afcd939eb6c9b52410b911ec04</SHA1><name>origin/feat_xilian</name></branch></revision></originfeat_xilian><originfeat_remote_open_space _class='hudson.plugins.git.util.Build'><buildNumber>1223</buildNumber><marked><SHA1>890fc6e47593fa42eabdbfd10df1090d3e21670d</SHA1><branch><SHA1>890fc6e47593fa42eabdbfd10df1090d3e21670d</SHA1><name>origin/feat_remote_open_space</name></branch></marked><revision><SHA1>890fc6e47593fa42eabdbfd10df1090d3e21670d</SHA1><branch><SHA1>890fc6e47593fa42eabdbfd10df1090d3e21670d</SHA1><name>origin/feat_remote_open_space</name></branch></revision></originfeat_remote_open_space><originfix_creep _class='hudson.plugins.git.util.Build'><buildNumber>298</buildNumber><marked><SHA1>40037b22796a0a57a1a9532f8dee6f81a1dea48c</SHA1><branch><SHA1>40037b22796a0a57a1a9532f8dee6f81a1dea48c</SHA1><name>origin/fix_creep</name></branch></marked><revision><SHA1>40037b22796a0a57a1a9532f8dee6f81a1dea48c</SHA1><branch><SHA1>40037b22796a0a57a1a9532f8dee6f81a1dea48c</SHA1><name>origin/fix_creep</name></branch></revision></originfix_creep><origindevel_ex_obj _class='hudson.plugins.git.util.Build'><buildNumber>161</buildNumber><marked><SHA1>784da86120c574a6c6eadaf2a1363b0bdd7ddd85</SHA1><branch><SHA1>784da86120c574a6c6eadaf2a1363b0bdd7ddd85</SHA1><name>origin/devel_ex_obj</name></branch></marked><revision><SHA1>784da86120c574a6c6eadaf2a1363b0bdd7ddd85</SHA1><branch><SHA1>784da86120c574a6c6eadaf2a1363b0bdd7ddd85</SHA1><name>origin/devel_ex_obj</name></branch></revision></origindevel_ex_obj><originfeat_trajectory_daxie _class='hudson.plugins.git.util.Build'><buildNumber>1726</buildNumber><marked><SHA1>97510c1a0394a537514724012f825fff6cf0f49e</SHA1><branch><SHA1>97510c1a0394a537514724012f825fff6cf0f49e</SHA1><name>origin/feat_trajectory_daxie</name></branch></marked><revision><SHA1>97510c1a0394a537514724012f825fff6cf0f49e</SHA1><branch><SHA1>97510c1a0394a537514724012f825fff6cf0f49e</SHA1><name>origin/feat_trajectory_daxie</name></branch></revision></originfeat_trajectory_daxie><originfeat_wbca_qp_search _class='hudson.plugins.git.util.Build'><buildNumber>664</buildNumber><marked><SHA1>a4f845451bbc421516777aa6574936377cfe8d52</SHA1><branch><SHA1>a4f845451bbc421516777aa6574936377cfe8d52</SHA1><name>origin/feat_wbca_qp_search</name></branch></marked><revision><SHA1>a4f845451bbc421516777aa6574936377cfe8d52</SHA1><branch><SHA1>a4f845451bbc421516777aa6574936377cfe8d52</SHA1><name>origin/feat_wbca_qp_search</name></branch></revision></originfeat_wbca_qp_search><originfeat_new_lka_v2 _class='hudson.plugins.git.util.Build'><buildNumber>798</buildNumber><marked><SHA1>72c21aeb73707ea3f17e9ad2a4180f5b6643bfdc</SHA1><branch><SHA1>72c21aeb73707ea3f17e9ad2a4180f5b6643bfdc</SHA1><name>origin/feat_new_lka_v2</name></branch></marked><revision><SHA1>72c21aeb73707ea3f17e9ad2a4180f5b6643bfdc</SHA1><branch><SHA1>72c21aeb73707ea3f17e9ad2a4180f5b6643bfdc</SHA1><name>origin/feat_new_lka_v2</name></branch></revision></originfeat_new_lka_v2><originfeat_youyiguan _class='hudson.plugins.git.util.Build'><buildNumber>1397</buildNumber><marked><SHA1>110f4bfd572e283acf213ad889de68e09a12e780</SHA1><branch><SHA1>110f4bfd572e283acf213ad889de68e09a12e780</SHA1><name>origin/feat_youyiguan</name></branch></marked><revision><SHA1>110f4bfd572e283acf213ad889de68e09a12e780</SHA1><branch><SHA1>110f4bfd572e283acf213ad889de68e09a12e780</SHA1><name>origin/feat_youyiguan</name></branch></revision></originfeat_youyiguan><originfeat_daxie_proto _class='hudson.plugins.git.util.Build'><buildNumber>2179</buildNumber><marked><SHA1>1820923cc36d656ade154fdbe8f688bbff4e71e9</SHA1><branch><SHA1>1820923cc36d656ade154fdbe8f688bbff4e71e9</SHA1><name>origin/feat_daxie_proto</name></branch></marked><revision><SHA1>1820923cc36d656ade154fdbe8f688bbff4e71e9</SHA1><branch><SHA1>1820923cc36d656ade154fdbe8f688bbff4e71e9</SHA1><name>origin/feat_daxie_proto</name></branch></revision></originfeat_daxie_proto><origintmp_LD4_snapshot _class='hudson.plugins.git.util.Build'><buildNumber>124</buildNumber><marked><SHA1>726604b957bcad12703a6eee4ae7a0acbf96ae28</SHA1><branch><SHA1>726604b957bcad12703a6eee4ae7a0acbf96ae28</SHA1><name>origin/tmp_LD4_snapshot</name></branch></marked><revision><SHA1>726604b957bcad12703a6eee4ae7a0acbf96ae28</SHA1><branch><SHA1>726604b957bcad12703a6eee4ae7a0acbf96ae28</SHA1><name>origin/tmp_LD4_snapshot</name></branch></revision></origintmp_LD4_snapshot><origintest_pedestrian_alarm _class='hudson.plugins.git.util.Build'><buildNumber>1909</buildNumber><marked><SHA1>79cd4db36725f9448b1958bbd064348b81c5045b</SHA1><branch><SHA1>79cd4db36725f9448b1958bbd064348b81c5045b</SHA1><name>origin/test_pedestrian_alarm</name></branch></marked><revision><SHA1>79cd4db36725f9448b1958bbd064348b81c5045b</SHA1><branch><SHA1>79cd4db36725f9448b1958bbd064348b81c5045b</SHA1><name>origin/test_pedestrian_alarm</name></branch></revision></origintest_pedestrian_alarm><originfeat_sq_LD _class='hudson.plugins.git.util.Build'><buildNumber>1450</buildNumber><marked><SHA1>f5b7dfe8a9ee3b369eca07ed87fafb8f866ec2a4</SHA1><branch><SHA1>f5b7dfe8a9ee3b369eca07ed87fafb8f866ec2a4</SHA1><name>origin/feat_sq_LD</name></branch></marked><revision><SHA1>f5b7dfe8a9ee3b369eca07ed87fafb8f866ec2a4</SHA1><branch><SHA1>f5b7dfe8a9ee3b369eca07ed87fafb8f866ec2a4</SHA1><name>origin/feat_sq_LD</name></branch></revision></originfeat_sq_LD><originfeat_sidepass_decider _class='hudson.plugins.git.util.Build'><buildNumber>2092</buildNumber><marked><SHA1>5e850185f8ec461f7475603e6a0859aeb500a014</SHA1><branch><SHA1>5e850185f8ec461f7475603e6a0859aeb500a014</SHA1><name>origin/feat_sidepass_decider</name></branch></marked><revision><SHA1>5e850185f8ec461f7475603e6a0859aeb500a014</SHA1><branch><SHA1>5e850185f8ec461f7475603e6a0859aeb500a014</SHA1><name>origin/feat_sidepass_decider</name></branch></revision></originfeat_sidepass_decider><originfeat_block _class='hudson.plugins.git.util.Build'><buildNumber>331</buildNumber><marked><SHA1>2bd196c123c11d415e32023df4f795f28a62e2db</SHA1><branch><SHA1>2bd196c123c11d415e32023df4f795f28a62e2db</SHA1><name>origin/feat_block</name></branch></marked><revision><SHA1>2bd196c123c11d415e32023df4f795f28a62e2db</SHA1><branch><SHA1>2bd196c123c11d415e32023df4f795f28a62e2db</SHA1><name>origin/feat_block</name></branch></revision></originfeat_block><originfeat_bend_decider _class='hudson.plugins.git.util.Build'><buildNumber>150</buildNumber><marked><SHA1>a723f7f5bcc15bc8b355c7460f5023308b438b98</SHA1><branch><SHA1>a723f7f5bcc15bc8b355c7460f5023308b438b98</SHA1><name>origin/feat_bend_decider</name></branch></marked><revision><SHA1>a723f7f5bcc15bc8b355c7460f5023308b438b98</SHA1><branch><SHA1>a723f7f5bcc15bc8b355c7460f5023308b438b98</SHA1><name>origin/feat_bend_decider</name></branch></revision></originfeat_bend_decider><originfeat_lattice_ref_speed _class='hudson.plugins.git.util.Build'><buildNumber>1977</buildNumber><marked><SHA1>bf1d65551bf9244e374ab05672fb4a86190c2958</SHA1><branch><SHA1>bf1d65551bf9244e374ab05672fb4a86190c2958</SHA1><name>origin/feat_lattice_ref_speed</name></branch></marked><revision><SHA1>bf1d65551bf9244e374ab05672fb4a86190c2958</SHA1><branch><SHA1>bf1d65551bf9244e374ab05672fb4a86190c2958</SHA1><name>origin/feat_lattice_ref_speed</name></branch></revision></originfeat_lattice_ref_speed><originfeat_wbca _class='hudson.plugins.git.util.Build'><buildNumber>826</buildNumber><marked><SHA1>54df14224af0595694e9cbb8bf44e084f28e8a3f</SHA1><branch><SHA1>54df14224af0595694e9cbb8bf44e084f28e8a3f</SHA1><name>origin/feat_wbca</name></branch></marked><revision><SHA1>54df14224af0595694e9cbb8bf44e084f28e8a3f</SHA1><branch><SHA1>54df14224af0595694e9cbb8bf44e084f28e8a3f</SHA1><name>origin/feat_wbca</name></branch></revision></originfeat_wbca><originfeat_qg_speed_up _class='hudson.plugins.git.util.Build'><buildNumber>1253</buildNumber><marked><SHA1>b0b5b8e15daf690eea56c5e9ca9ffcbf663c5868</SHA1><branch><SHA1>b0b5b8e15daf690eea56c5e9ca9ffcbf663c5868</SHA1><name>origin/feat_qg_speed_up</name></branch></marked><revision><SHA1>b0b5b8e15daf690eea56c5e9ca9ffcbf663c5868</SHA1><branch><SHA1>b0b5b8e15daf690eea56c5e9ca9ffcbf663c5868</SHA1><name>origin/feat_qg_speed_up</name></branch></revision></originfeat_qg_speed_up><originfeat_hfsm_direction _class='hudson.plugins.git.util.Build'><buildNumber>126</buildNumber><marked><SHA1>b868d7ee8d7704e71abb1bdcb62055b3c100abca</SHA1><branch><SHA1>b868d7ee8d7704e71abb1bdcb62055b3c100abca</SHA1><name>origin/feat_hfsm_direction</name></branch></marked><revision><SHA1>b868d7ee8d7704e71abb1bdcb62055b3c100abca</SHA1><branch><SHA1>b868d7ee8d7704e71abb1bdcb62055b3c100abca</SHA1><name>origin/feat_hfsm_direction</name></branch></revision></originfeat_hfsm_direction><originfeat_trajectory_qiangang _class='hudson.plugins.git.util.Build'><buildNumber>1832</buildNumber><marked><SHA1>3c014a88a977f1fa72e9a25de08998423c6d4633</SHA1><branch><SHA1>3c014a88a977f1fa72e9a25de08998423c6d4633</SHA1><name>origin/feat_trajectory_qiangang</name></branch></marked><revision><SHA1>3c014a88a977f1fa72e9a25de08998423c6d4633</SHA1><branch><SHA1>3c014a88a977f1fa72e9a25de08998423c6d4633</SHA1><name>origin/feat_trajectory_qiangang</name></branch></revision></originfeat_trajectory_qiangang><originfix_action_type _class='hudson.plugins.git.util.Build'><buildNumber>260</buildNumber><marked><SHA1>2a0f28492aeed5bc862a8d6f6c02f7b07e5d4248</SHA1><branch><SHA1>2a0f28492aeed5bc862a8d6f6c02f7b07e5d4248</SHA1><name>origin/fix_action_type</name></branch></marked><revision><SHA1>2a0f28492aeed5bc862a8d6f6c02f7b07e5d4248</SHA1><branch><SHA1>2a0f28492aeed5bc862a8d6f6c02f7b07e5d4248</SHA1><name>origin/fix_action_type</name></branch></revision></originfix_action_type><originfeat_ssep_imv_enter_station _class='hudson.plugins.git.util.Build'><buildNumber>1122</buildNumber><marked><SHA1>2282c6f06407cbfb5d8ef37f429013e6637ef2d4</SHA1><branch><SHA1>2282c6f06407cbfb5d8ef37f429013e6637ef2d4</SHA1><name>origin/feat_ssep_imv_enter_station</name></branch></marked><revision><SHA1>2282c6f06407cbfb5d8ef37f429013e6637ef2d4</SHA1><branch><SHA1>2282c6f06407cbfb5d8ef37f429013e6637ef2d4</SHA1><name>origin/feat_ssep_imv_enter_station</name></branch></revision></originfeat_ssep_imv_enter_station><originfeat_boundary_type _class='hudson.plugins.git.util.Build'><buildNumber>326</buildNumber><marked><SHA1>1a4a5729ae509db04578d9bae14c96c86988bd04</SHA1><branch><SHA1>1a4a5729ae509db04578d9bae14c96c86988bd04</SHA1><name>origin/feat_boundary_type</name></branch></marked><revision><SHA1>1a4a5729ae509db04578d9bae14c96c86988bd04</SHA1><branch><SHA1>1a4a5729ae509db04578d9bae14c96c86988bd04</SHA1><name>origin/feat_boundary_type</name></branch></revision></originfeat_boundary_type><originfeat_wbca_truck_dp _class='hudson.plugins.git.util.Build'><buildNumber>594</buildNumber><marked><SHA1>2a2a8d71f190459fe1ad30bef5c2cce424ed05b6</SHA1><branch><SHA1>2a2a8d71f190459fe1ad30bef5c2cce424ed05b6</SHA1><name>origin/feat_wbca_truck_dp</name></branch></marked><revision><SHA1>2a2a8d71f190459fe1ad30bef5c2cce424ed05b6</SHA1><branch><SHA1>2a2a8d71f190459fe1ad30bef5c2cce424ed05b6</SHA1><name>origin/feat_wbca_truck_dp</name></branch></revision></originfeat_wbca_truck_dp><originfeat_taiyang _class='hudson.plugins.git.util.Build'><buildNumber>1771</buildNumber><marked><SHA1>2481bf3bbb2d9ac0e03d6e3360bf006b8eee72c5</SHA1><branch><SHA1>2481bf3bbb2d9ac0e03d6e3360bf006b8eee72c5</SHA1><name>origin/feat_taiyang</name></branch></marked><revision><SHA1>2481bf3bbb2d9ac0e03d6e3360bf006b8eee72c5</SHA1><branch><SHA1>2481bf3bbb2d9ac0e03d6e3360bf006b8eee72c5</SHA1><name>origin/feat_taiyang</name></branch></revision></originfeat_taiyang><originfeat_clear_area _class='hudson.plugins.git.util.Build'><buildNumber>1561</buildNumber><marked><SHA1>ec60685af092a1b9c7e92fccd81fa260c92c5fa3</SHA1><branch><SHA1>ec60685af092a1b9c7e92fccd81fa260c92c5fa3</SHA1><name>origin/feat_clear_area</name></branch></marked><revision><SHA1>ec60685af092a1b9c7e92fccd81fa260c92c5fa3</SHA1><branch><SHA1>ec60685af092a1b9c7e92fccd81fa260c92c5fa3</SHA1><name>origin/feat_clear_area</name></branch></revision></originfeat_clear_area><originfeat_block_data _class='hudson.plugins.git.util.Build'><buildNumber>1258</buildNumber><marked><SHA1>e4b53590f63add07d6ac719a8faa70eafb610f6c</SHA1><branch><SHA1>e4b53590f63add07d6ac719a8faa70eafb610f6c</SHA1><name>origin/feat_block_data</name></branch></marked><revision><SHA1>e4b53590f63add07d6ac719a8faa70eafb610f6c</SHA1><branch><SHA1>e4b53590f63add07d6ac719a8faa70eafb610f6c</SHA1><name>origin/feat_block_data</name></branch></revision></originfeat_block_data><originfeat_hairun _class='hudson.plugins.git.util.Build'><buildNumber>1962</buildNumber><marked><SHA1>d72976ffcf1198dc889eebc4158ede7ff7a4b7e3</SHA1><branch><SHA1>d72976ffcf1198dc889eebc4158ede7ff7a4b7e3</SHA1><name>origin/feat_hairun</name></branch></marked><revision><SHA1>d72976ffcf1198dc889eebc4158ede7ff7a4b7e3</SHA1><branch><SHA1>d72976ffcf1198dc889eebc4158ede7ff7a4b7e3</SHA1><name>origin/feat_hairun</name></branch></revision></originfeat_hairun><originfeat_dynamic_hd_map _class='hudson.plugins.git.util.Build'><buildNumber>382</buildNumber><marked><SHA1>d979069f193b3278b4bf5456cb737987424a7075</SHA1><branch><SHA1>d979069f193b3278b4bf5456cb737987424a7075</SHA1><name>origin/feat_dynamic_hd_map</name></branch></marked><revision><SHA1>d979069f193b3278b4bf5456cb737987424a7075</SHA1><branch><SHA1>d979069f193b3278b4bf5456cb737987424a7075</SHA1><name>origin/feat_dynamic_hd_map</name></branch></revision></originfeat_dynamic_hd_map><originfeat_qiangang _class='hudson.plugins.git.util.Build'><buildNumber>1756</buildNumber><marked><SHA1>aecf87a4b918714c30dc044500750f6fa06503db</SHA1><branch><SHA1>aecf87a4b918714c30dc044500750f6fa06503db</SHA1><name>origin/feat_qiangang</name></branch></marked><revision><SHA1>aecf87a4b918714c30dc044500750f6fa06503db</SHA1><branch><SHA1>aecf87a4b918714c30dc044500750f6fa06503db</SHA1><name>origin/feat_qiangang</name></branch></revision></originfeat_qiangang><originfeat_straddle_v2 _class='hudson.plugins.git.util.Build'><buildNumber>1951</buildNumber><marked><SHA1>aa5f11053bb9e7f5934ae5fc73f0c52f703b4583</SHA1><branch><SHA1>aa5f11053bb9e7f5934ae5fc73f0c52f703b4583</SHA1><name>origin/feat_straddle_v2</name></branch></marked><revision><SHA1>aa5f11053bb9e7f5934ae5fc73f0c52f703b4583</SHA1><branch><SHA1>aa5f11053bb9e7f5934ae5fc73f0c52f703b4583</SHA1><name>origin/feat_straddle_v2</name></branch></revision></originfeat_straddle_v2><refsremotesorigintangwenqingssep-improve-latency _class='hudson.plugins.git.util.Build'><buildNumber>738</buildNumber><marked><SHA1>520fbf85a0b49395abf72d0cbe1c7457c23e0743</SHA1><branch><SHA1>520fbf85a0b49395abf72d0cbe1c7457c23e0743</SHA1><name>refs/remotes/origin/tangwenqing/ssep-improve-latency</name></branch></marked><revision><SHA1>520fbf85a0b49395abf72d0cbe1c7457c23e0743</SHA1><branch><SHA1>520fbf85a0b49395abf72d0cbe1c7457c23e0743</SHA1><name>refs/remotes/origin/tangwenqing/ssep-improve-latency</name></branch></revision></refsremotesorigintangwenqingssep-improve-latency><originfeat_traffic _class='hudson.plugins.git.util.Build'><buildNumber>1348</buildNumber><marked><SHA1>65d8f7ddfa0eeffffdbfc3fd27e9651adf92796c</SHA1><branch><SHA1>65d8f7ddfa0eeffffdbfc3fd27e9651adf92796c</SHA1><name>origin/feat_traffic</name></branch></marked><revision><SHA1>65d8f7ddfa0eeffffdbfc3fd27e9651adf92796c</SHA1><branch><SHA1>65d8f7ddfa0eeffffdbfc3fd27e9651adf92796c</SHA1><name>origin/feat_traffic</name></branch></revision></originfeat_traffic><originfix_deadlock_restart _class='hudson.plugins.git.util.Build'><buildNumber>1925</buildNumber><marked><SHA1>587046e144b1050a05158d807de24b47911d0e60</SHA1><branch><SHA1>587046e144b1050a05158d807de24b47911d0e60</SHA1><name>origin/fix_deadlock_restart</name></branch></marked><revision><SHA1>587046e144b1050a05158d807de24b47911d0e60</SHA1><branch><SHA1>587046e144b1050a05158d807de24b47911d0e60</SHA1><name>origin/fix_deadlock_restart</name></branch></revision></originfix_deadlock_restart><originfeat_truck_bulk _class='hudson.plugins.git.util.Build'><buildNumber>667</buildNumber><marked><SHA1>e6f4362ba18bbaa85f57f5aa474137f7dc879165</SHA1><branch><SHA1>e6f4362ba18bbaa85f57f5aa474137f7dc879165</SHA1><name>origin/feat_truck_bulk</name></branch></marked><revision><SHA1>e6f4362ba18bbaa85f57f5aa474137f7dc879165</SHA1><branch><SHA1>e6f4362ba18bbaa85f57f5aa474137f7dc879165</SHA1><name>origin/feat_truck_bulk</name></branch></revision></originfeat_truck_bulk><originfeat_qiangang_refactor _class='hudson.plugins.git.util.Build'><buildNumber>1369</buildNumber><marked><SHA1>34ae0342b5807fc123efc3c6f60c40051b4c790b</SHA1><branch><SHA1>34ae0342b5807fc123efc3c6f60c40051b4c790b</SHA1><name>origin/feat_qiangang_refactor</name></branch></marked><revision><SHA1>34ae0342b5807fc123efc3c6f60c40051b4c790b</SHA1><branch><SHA1>34ae0342b5807fc123efc3c6f60c40051b4c790b</SHA1><name>origin/feat_qiangang_refactor</name></branch></revision></originfeat_qiangang_refactor><originfeat_sq_LD_test _class='hudson.plugins.git.util.Build'><buildNumber>1514</buildNumber><marked><SHA1>6255cb9d52b61dded26f200866c3300e49fd5424</SHA1><branch><SHA1>6255cb9d52b61dded26f200866c3300e49fd5424</SHA1><name>origin/feat_sq_LD_test</name></branch></marked><revision><SHA1>6255cb9d52b61dded26f200866c3300e49fd5424</SHA1><branch><SHA1>6255cb9d52b61dded26f200866c3300e49fd5424</SHA1><name>origin/feat_sq_LD_test</name></branch></revision></originfeat_sq_LD_test><originfeat_guide_line_lane_change _class='hudson.plugins.git.util.Build'><buildNumber>747</buildNumber><marked><SHA1>06bac4dbce1e7b82a7efc46cc23444dd23328d1d</SHA1><branch><SHA1>06bac4dbce1e7b82a7efc46cc23444dd23328d1d</SHA1><name>origin/feat_guide_line_lane_change</name></branch></marked><revision><SHA1>06bac4dbce1e7b82a7efc46cc23444dd23328d1d</SHA1><branch><SHA1>06bac4dbce1e7b82a7efc46cc23444dd23328d1d</SHA1><name>origin/feat_guide_line_lane_change</name></branch></revision></originfeat_guide_line_lane_change><originfeat_wh_trailer _class='hudson.plugins.git.util.Build'><buildNumber>2061</buildNumber><marked><SHA1>84f69b576855adcc7054f1dbe0b4cb63279f60c6</SHA1><branch><SHA1>84f69b576855adcc7054f1dbe0b4cb63279f60c6</SHA1><name>origin/feat_wh_trailer</name></branch></marked><revision><SHA1>84f69b576855adcc7054f1dbe0b4cb63279f60c6</SHA1><branch><SHA1>84f69b576855adcc7054f1dbe0b4cb63279f60c6</SHA1><name>origin/feat_wh_trailer</name></branch></revision></originfeat_wh_trailer><originfeat_trajectory_weihai _class='hudson.plugins.git.util.Build'><buildNumber>1882</buildNumber><marked><SHA1>0be2c6867114557a6eacfb0078192153c83c83a5</SHA1><branch><SHA1>0be2c6867114557a6eacfb0078192153c83c83a5</SHA1><name>origin/feat_trajectory_weihai</name></branch></marked><revision><SHA1>0be2c6867114557a6eacfb0078192153c83c83a5</SHA1><branch><SHA1>0be2c6867114557a6eacfb0078192153c83c83a5</SHA1><name>origin/feat_trajectory_weihai</name></branch></revision></originfeat_trajectory_weihai><originfeat_proto_jinxi _class='hudson.plugins.git.util.Build'><buildNumber>2139</buildNumber><marked><SHA1>a9134bdaec29e5e572101316101ffe33eb3ab13a</SHA1><branch><SHA1>a9134bdaec29e5e572101316101ffe33eb3ab13a</SHA1><name>origin/feat_proto_jinxi</name></branch></marked><revision><SHA1>a9134bdaec29e5e572101316101ffe33eb3ab13a</SHA1><branch><SHA1>a9134bdaec29e5e572101316101ffe33eb3ab13a</SHA1><name>origin/feat_proto_jinxi</name></branch></revision></originfeat_proto_jinxi><originfeat_weifang_aacreep _class='hudson.plugins.git.util.Build'><buildNumber>2171</buildNumber><marked><SHA1>9765986feb718c3dbdb57379e8120a4b455aae4d</SHA1><branch><SHA1>9765986feb718c3dbdb57379e8120a4b455aae4d</SHA1><name>origin/feat_weifang_aacreep</name></branch></marked><revision><SHA1>9765986feb718c3dbdb57379e8120a4b455aae4d</SHA1><branch><SHA1>9765986feb718c3dbdb57379e8120a4b455aae4d</SHA1><name>origin/feat_weifang_aacreep</name></branch></revision></originfeat_weifang_aacreep><originfeat_ros2_platoon_mpc _class='hudson.plugins.git.util.Build'><buildNumber>2084</buildNumber><marked><SHA1>0d27b36cc302441a7459936d3fbfd470973ec750</SHA1><branch><SHA1>0d27b36cc302441a7459936d3fbfd470973ec750</SHA1><name>origin/feat_ros2_platoon_mpc</name></branch></marked><revision><SHA1>0d27b36cc302441a7459936d3fbfd470973ec750</SHA1><branch><SHA1>0d27b36cc302441a7459936d3fbfd470973ec750</SHA1><name>origin/feat_ros2_platoon_mpc</name></branch></revision></originfeat_ros2_platoon_mpc><originfeat_seg_search _class='hudson.plugins.git.util.Build'><buildNumber>982</buildNumber><marked><SHA1>468bc74cb13dfad5a2e4aba6998983e2b3a9c202</SHA1><branch><SHA1>468bc74cb13dfad5a2e4aba6998983e2b3a9c202</SHA1><name>origin/feat_seg_search</name></branch></marked><revision><SHA1>468bc74cb13dfad5a2e4aba6998983e2b3a9c202</SHA1><branch><SHA1>468bc74cb13dfad5a2e4aba6998983e2b3a9c202</SHA1><name>origin/feat_seg_search</name></branch></revision></originfeat_seg_search><originfeat_proto_jinxi_2 _class='hudson.plugins.git.util.Build'><buildNumber>2150</buildNumber><marked><SHA1>6efb8024714d3063693e857288df97d676d9991b</SHA1><branch><SHA1>6efb8024714d3063693e857288df97d676d9991b</SHA1><name>origin/feat_proto_jinxi_2</name></branch></marked><revision><SHA1>6efb8024714d3063693e857288df97d676d9991b</SHA1><branch><SHA1>6efb8024714d3063693e857288df97d676d9991b</SHA1><name>origin/feat_proto_jinxi_2</name></branch></revision></originfeat_proto_jinxi_2><originfeat_wbca_backup _class='hudson.plugins.git.util.Build'><buildNumber>480</buildNumber><marked><SHA1>f479f95d1e31bfc01963fe22cb3ab6efcc3b23d1</SHA1><branch><SHA1>f479f95d1e31bfc01963fe22cb3ab6efcc3b23d1</SHA1><name>origin/feat_wbca_backup</name></branch></marked><revision><SHA1>f479f95d1e31bfc01963fe22cb3ab6efcc3b23d1</SHA1><branch><SHA1>f479f95d1e31bfc01963fe22cb3ab6efcc3b23d1</SHA1><name>origin/feat_wbca_backup</name></branch></revision></originfeat_wbca_backup><originfeat_sc_v2_old _class='hudson.plugins.git.util.Build'><buildNumber>1694</buildNumber><marked><SHA1>39340b8d50e9c4bfa92967b6eea2d93ef9b617ad</SHA1><branch><SHA1>39340b8d50e9c4bfa92967b6eea2d93ef9b617ad</SHA1><name>origin/feat_sc_v2_old</name></branch></marked><revision><SHA1>39340b8d50e9c4bfa92967b6eea2d93ef9b617ad</SHA1><branch><SHA1>39340b8d50e9c4bfa92967b6eea2d93ef9b617ad</SHA1><name>origin/feat_sc_v2_old</name></branch></revision></originfeat_sc_v2_old><originfeat_trajectory_hairun _class='hudson.plugins.git.util.Build'><buildNumber>1883</buildNumber><marked><SHA1>335cb0c3d0d91a66a22e0ac78648d592ecc58b56</SHA1><branch><SHA1>335cb0c3d0d91a66a22e0ac78648d592ecc58b56</SHA1><name>origin/feat_trajectory_hairun</name></branch></marked><revision><SHA1>335cb0c3d0d91a66a22e0ac78648d592ecc58b56</SHA1><branch><SHA1>335cb0c3d0d91a66a22e0ac78648d592ecc58b56</SHA1><name>origin/feat_trajectory_hairun</name></branch></revision></originfeat_trajectory_hairun><originfeat-hdmap _class='hudson.plugins.git.util.Build'><buildNumber>363</buildNumber><marked><SHA1>211888f1f4e81f87514411e3bd1e3dc23a4ae046</SHA1><branch><SHA1>211888f1f4e81f87514411e3bd1e3dc23a4ae046</SHA1><name>origin/feat-hdmap</name></branch></marked><revision><SHA1>211888f1f4e81f87514411e3bd1e3dc23a4ae046</SHA1><branch><SHA1>211888f1f4e81f87514411e3bd1e3dc23a4ae046</SHA1><name>origin/feat-hdmap</name></branch></revision></originfeat-hdmap><originfeat_keb_path_opt_task _class='hudson.plugins.git.util.Build'><buildNumber>1572</buildNumber><marked><SHA1>03b3cf39f7b16511a2dbe122e5ad34392670a516</SHA1><branch><SHA1>03b3cf39f7b16511a2dbe122e5ad34392670a516</SHA1><name>origin/feat_keb_path_opt_task</name></branch></marked><revision><SHA1>03b3cf39f7b16511a2dbe122e5ad34392670a516</SHA1><branch><SHA1>03b3cf39f7b16511a2dbe122e5ad34392670a516</SHA1><name>origin/feat_keb_path_opt_task</name></branch></revision></originfeat_keb_path_opt_task><originrc_dev _class='hudson.plugins.git.util.Build'><buildNumber>1267</buildNumber><marked><SHA1>1f83b21901518f710c4d73ce9d08d6571ce026d0</SHA1><branch><SHA1>1f83b21901518f710c4d73ce9d08d6571ce026d0</SHA1><name>origin/rc_dev</name></branch></marked><revision><SHA1>1f83b21901518f710c4d73ce9d08d6571ce026d0</SHA1><branch><SHA1>1f83b21901518f710c4d73ce9d08d6571ce026d0</SHA1><name>origin/rc_dev</name></branch></revision></originrc_dev><origintmp_djk_ssep _class='hudson.plugins.git.util.Build'><buildNumber>447</buildNumber><marked><SHA1>f03ed133cbf84976d6cf099761bf25345c7e8945</SHA1><branch><SHA1>f03ed133cbf84976d6cf099761bf25345c7e8945</SHA1><name>origin/tmp_djk_ssep</name></branch></marked><revision><SHA1>f03ed133cbf84976d6cf099761bf25345c7e8945</SHA1><branch><SHA1>f03ed133cbf84976d6cf099761bf25345c7e8945</SHA1><name>origin/tmp_djk_ssep</name></branch></revision></origintmp_djk_ssep><originfeat_wbca_truck_dp_dev _class='hudson.plugins.git.util.Build'><buildNumber>766</buildNumber><marked><SHA1>fbcec908efd6c586d1a9ac07492d1916c2761543</SHA1><branch><SHA1>fbcec908efd6c586d1a9ac07492d1916c2761543</SHA1><name>origin/feat_wbca_truck_dp_dev</name></branch></marked><revision><SHA1>fbcec908efd6c586d1a9ac07492d1916c2761543</SHA1><branch><SHA1>fbcec908efd6c586d1a9ac07492d1916c2761543</SHA1><name>origin/feat_wbca_truck_dp_dev</name></branch></revision></originfeat_wbca_truck_dp_dev><origintest_hr _class='hudson.plugins.git.util.Build'><buildNumber>787</buildNumber><marked><SHA1>1e10c9b364546121e29573c0300e3c48b67611a4</SHA1><branch><SHA1>1e10c9b364546121e29573c0300e3c48b67611a4</SHA1><name>origin/test_hr</name></branch></marked><revision><SHA1>1e10c9b364546121e29573c0300e3c48b67611a4</SHA1><branch><SHA1>1e10c9b364546121e29573c0300e3c48b67611a4</SHA1><name>origin/test_hr</name></branch></revision></origintest_hr><originfeat_side_pass _class='hudson.plugins.git.util.Build'><buildNumber>483</buildNumber><marked><SHA1>b20d7c381eeb7f624660868c8ef35a9e5c80b0b7</SHA1><branch><SHA1>b20d7c381eeb7f624660868c8ef35a9e5c80b0b7</SHA1><name>origin/feat_side_pass</name></branch></marked><revision><SHA1>b20d7c381eeb7f624660868c8ef35a9e5c80b0b7</SHA1><branch><SHA1>b20d7c381eeb7f624660868c8ef35a9e5c80b0b7</SHA1><name>origin/feat_side_pass</name></branch></revision></originfeat_side_pass><originssep-improve-latency _class='hudson.plugins.git.util.Build'><buildNumber>779</buildNumber><marked><SHA1>efaa88b8102251d8b12cc172176c6965ba05c41f</SHA1><branch><SHA1>efaa88b8102251d8b12cc172176c6965ba05c41f</SHA1><name>origin/ssep-improve-latency</name></branch></marked><revision><SHA1>efaa88b8102251d8b12cc172176c6965ba05c41f</SHA1><branch><SHA1>efaa88b8102251d8b12cc172176c6965ba05c41f</SHA1><name>origin/ssep-improve-latency</name></branch></revision></originssep-improve-latency><originfeat_LS_deviation _class='hudson.plugins.git.util.Build'><buildNumber>910</buildNumber><marked><SHA1>561b9666baea1c45219fec16ec74d0d0c62bd819</SHA1><branch><SHA1>561b9666baea1c45219fec16ec74d0d0c62bd819</SHA1><name>origin/feat_LS_deviation</name></branch></marked><revision><SHA1>561b9666baea1c45219fec16ec74d0d0c62bd819</SHA1><branch><SHA1>561b9666baea1c45219fec16ec74d0d0c62bd819</SHA1><name>origin/feat_LS_deviation</name></branch></revision></originfeat_LS_deviation><originfeat_wbca_truck _class='hudson.plugins.git.util.Build'><buildNumber>515</buildNumber><marked><SHA1>aba8c06c86955a34d5d6debb8e114385f0259633</SHA1><branch><SHA1>aba8c06c86955a34d5d6debb8e114385f0259633</SHA1><name>origin/feat_wbca_truck</name></branch></marked><revision><SHA1>aba8c06c86955a34d5d6debb8e114385f0259633</SHA1><branch><SHA1>aba8c06c86955a34d5d6debb8e114385f0259633</SHA1><name>origin/feat_wbca_truck</name></branch></revision></originfeat_wbca_truck><originfeat_imv_pull_over _class='hudson.plugins.git.util.Build'><buildNumber>1266</buildNumber><marked><SHA1>47dd1e17e3b7a1cacfa8af95d3a50e451c387dc1</SHA1><branch><SHA1>47dd1e17e3b7a1cacfa8af95d3a50e451c387dc1</SHA1><name>origin/feat_imv_pull_over</name></branch></marked><revision><SHA1>47dd1e17e3b7a1cacfa8af95d3a50e451c387dc1</SHA1><branch><SHA1>47dd1e17e3b7a1cacfa8af95d3a50e451c387dc1</SHA1><name>origin/feat_imv_pull_over</name></branch></revision></originfeat_imv_pull_over><originfeat_sqjb _class='hudson.plugins.git.util.Build'><buildNumber>1119</buildNumber><marked><SHA1>3527a793f3ade81518ceb5c982fa3e1c89b02711</SHA1><branch><SHA1>3527a793f3ade81518ceb5c982fa3e1c89b02711</SHA1><name>origin/feat_sqjb</name></branch></marked><revision><SHA1>3527a793f3ade81518ceb5c982fa3e1c89b02711</SHA1><branch><SHA1>3527a793f3ade81518ceb5c982fa3e1c89b02711</SHA1><name>origin/feat_sqjb</name></branch></revision></originfeat_sqjb><originfeat_qiangang_ssep_heatnet _class='hudson.plugins.git.util.Build'><buildNumber>1284</buildNumber><marked><SHA1>043c59ce1faa06b6a3ab6e6ea7887783b567751e</SHA1><branch><SHA1>043c59ce1faa06b6a3ab6e6ea7887783b567751e</SHA1><name>origin/feat_qiangang_ssep_heatnet</name></branch></marked><revision><SHA1>043c59ce1faa06b6a3ab6e6ea7887783b567751e</SHA1><branch><SHA1>043c59ce1faa06b6a3ab6e6ea7887783b567751e</SHA1><name>origin/feat_qiangang_ssep_heatnet</name></branch></revision></originfeat_qiangang_ssep_heatnet><originrebase_jinxi2_keb_html _class='hudson.plugins.git.util.Build'><buildNumber>2166</buildNumber><marked><SHA1>39f8e722a5af1d53d54bdf136357b3235457c2a4</SHA1><branch><SHA1>39f8e722a5af1d53d54bdf136357b3235457c2a4</SHA1><name>origin/rebase_jinxi2_keb_html</name></branch></marked><revision><SHA1>39f8e722a5af1d53d54bdf136357b3235457c2a4</SHA1><branch><SHA1>39f8e722a5af1d53d54bdf136357b3235457c2a4</SHA1><name>origin/rebase_jinxi2_keb_html</name></branch></revision></originrebase_jinxi2_keb_html><originfeat_truck_reverse _class='hudson.plugins.git.util.Build'><buildNumber>853</buildNumber><marked><SHA1>2527849cf681e0804ef5561c1b564dd434a5fe20</SHA1><branch><SHA1>2527849cf681e0804ef5561c1b564dd434a5fe20</SHA1><name>origin/feat_truck_reverse</name></branch></marked><revision><SHA1>2527849cf681e0804ef5561c1b564dd434a5fe20</SHA1><branch><SHA1>2527849cf681e0804ef5561c1b564dd434a5fe20</SHA1><name>origin/feat_truck_reverse</name></branch></revision></originfeat_truck_reverse><originfeat_sink_snapshot _class='hudson.plugins.git.util.Build'><buildNumber>270</buildNumber><marked><SHA1>396ad3472e9618a78105fe71a4271cbec91ddd2f</SHA1><branch><SHA1>396ad3472e9618a78105fe71a4271cbec91ddd2f</SHA1><name>origin/feat_sink_snapshot</name></branch></marked><revision><SHA1>396ad3472e9618a78105fe71a4271cbec91ddd2f</SHA1><branch><SHA1>396ad3472e9618a78105fe71a4271cbec91ddd2f</SHA1><name>origin/feat_sink_snapshot</name></branch></revision></originfeat_sink_snapshot><originfeat_stacker _class='hudson.plugins.git.util.Build'><buildNumber>488</buildNumber><marked><SHA1>f93b3e4bf900c1582854ede8fb00b1d43f66cf12</SHA1><branch><SHA1>f93b3e4bf900c1582854ede8fb00b1d43f66cf12</SHA1><name>origin/feat_stacker</name></branch></marked><revision><SHA1>f93b3e4bf900c1582854ede8fb00b1d43f66cf12</SHA1><branch><SHA1>f93b3e4bf900c1582854ede8fb00b1d43f66cf12</SHA1><name>origin/feat_stacker</name></branch></revision></originfeat_stacker><originfeat_daxie _class='hudson.plugins.git.util.Build'><buildNumber>1643</buildNumber><marked><SHA1>730037190ab095ff3004718347429c4e827549c3</SHA1><branch><SHA1>730037190ab095ff3004718347429c4e827549c3</SHA1><name>origin/feat_daxie</name></branch></marked><revision><SHA1>730037190ab095ff3004718347429c4e827549c3</SHA1><branch><SHA1>730037190ab095ff3004718347429c4e827549c3</SHA1><name>origin/feat_daxie</name></branch></revision></originfeat_daxie><originfeat_change_1 _class='hudson.plugins.git.util.Build'><buildNumber>306</buildNumber><marked><SHA1>2b9b5a487bfbd20ca64e0ba010e5657d4ab2bbef</SHA1><branch><SHA1>2b9b5a487bfbd20ca64e0ba010e5657d4ab2bbef</SHA1><name>origin/feat_change_1</name></branch></marked><revision><SHA1>2b9b5a487bfbd20ca64e0ba010e5657d4ab2bbef</SHA1><branch><SHA1>2b9b5a487bfbd20ca64e0ba010e5657d4ab2bbef</SHA1><name>origin/feat_change_1</name></branch></revision></originfeat_change_1><originfeat_yangpu _class='hudson.plugins.git.util.Build'><buildNumber>1727</buildNumber><marked><SHA1>1b8232a1c296987edf855d048e610da85a01131e</SHA1><branch><SHA1>1b8232a1c296987edf855d048e610da85a01131e</SHA1><name>origin/feat_yangpu</name></branch></marked><revision><SHA1>1b8232a1c296987edf855d048e610da85a01131e</SHA1><branch><SHA1>1b8232a1c296987edf855d048e610da85a01131e</SHA1><name>origin/feat_yangpu</name></branch></revision></originfeat_yangpu><originfeat_block_data_switch _class='hudson.plugins.git.util.Build'><buildNumber>980</buildNumber><marked><SHA1>671f8b9fb2418043687a2820a1a575a98cf71312</SHA1><branch><SHA1>671f8b9fb2418043687a2820a1a575a98cf71312</SHA1><name>origin/feat_block_data_switch</name></branch></marked><revision><SHA1>671f8b9fb2418043687a2820a1a575a98cf71312</SHA1><branch><SHA1>671f8b9fb2418043687a2820a1a575a98cf71312</SHA1><name>origin/feat_block_data_switch</name></branch></revision></originfeat_block_data_switch><originssep-geometric-searcher-test _class='hudson.plugins.git.util.Build'><buildNumber>894</buildNumber><marked><SHA1>a3962d2cff5ec8603a3373cd7ac2c8ac6e52196c</SHA1><branch><SHA1>a3962d2cff5ec8603a3373cd7ac2c8ac6e52196c</SHA1><name>origin/ssep-geometric-searcher-test</name></branch></marked><revision><SHA1>a3962d2cff5ec8603a3373cd7ac2c8ac6e52196c</SHA1><branch><SHA1>a3962d2cff5ec8603a3373cd7ac2c8ac6e52196c</SHA1><name>origin/ssep-geometric-searcher-test</name></branch></revision></originssep-geometric-searcher-test><originfeat_sidepass_lattice _class='hudson.plugins.git.util.Build'><buildNumber>2095</buildNumber><marked><SHA1>7b28a9cf19d4fe474fff3e76fed2eb528b46681d</SHA1><branch><SHA1>7b28a9cf19d4fe474fff3e76fed2eb528b46681d</SHA1><name>origin/feat_sidepass_lattice</name></branch></marked><revision><SHA1>7b28a9cf19d4fe474fff3e76fed2eb528b46681d</SHA1><branch><SHA1>7b28a9cf19d4fe474fff3e76fed2eb528b46681d</SHA1><name>origin/feat_sidepass_lattice</name></branch></revision></originfeat_sidepass_lattice><originfeat_yard_name _class='hudson.plugins.git.util.Build'><buildNumber>1072</buildNumber><marked><SHA1>fb3eb46878509f760b66cb36617be19d9d610c79</SHA1><branch><SHA1>fb3eb46878509f760b66cb36617be19d9d610c79</SHA1><name>origin/feat_yard_name</name></branch></marked><revision><SHA1>fb3eb46878509f760b66cb36617be19d9d610c79</SHA1><branch><SHA1>fb3eb46878509f760b66cb36617be19d9d610c79</SHA1><name>origin/feat_yard_name</name></branch></revision></originfeat_yard_name><origintmp_lon_decision_4 _class='hudson.plugins.git.util.Build'><buildNumber>96</buildNumber><marked><SHA1>71e064bede15f180450ac4b5db9d91c14b212d4c</SHA1><branch><SHA1>71e064bede15f180450ac4b5db9d91c14b212d4c</SHA1><name>origin/tmp_lon_decision_4</name></branch></marked><revision><SHA1>71e064bede15f180450ac4b5db9d91c14b212d4c</SHA1><branch><SHA1>71e064bede15f180450ac4b5db9d91c14b212d4c</SHA1><name>origin/tmp_lon_decision_4</name></branch></revision></origintmp_lon_decision_4><origintmp_lon_decision_3 _class='hudson.plugins.git.util.Build'><buildNumber>70</buildNumber><marked><SHA1>3369d60699427ed500ebc0fe4212e0198acbcfa3</SHA1><branch><SHA1>3369d60699427ed500ebc0fe4212e0198acbcfa3</SHA1><name>origin/tmp_lon_decision_3</name></branch></marked><revision><SHA1>3369d60699427ed500ebc0fe4212e0198acbcfa3</SHA1><branch><SHA1>3369d60699427ed500ebc0fe4212e0198acbcfa3</SHA1><name>origin/tmp_lon_decision_3</name></branch></revision></origintmp_lon_decision_3><origintest_lon_decision _class='hudson.plugins.git.util.Build'><buildNumber>688</buildNumber><marked><SHA1>d975905da5fa9e032aca5e5548151f50dca472f5</SHA1><branch><SHA1>d975905da5fa9e032aca5e5548151f50dca472f5</SHA1><name>origin/test_lon_decision</name></branch></marked><revision><SHA1>d975905da5fa9e032aca5e5548151f50dca472f5</SHA1><branch><SHA1>d975905da5fa9e032aca5e5548151f50dca472f5</SHA1><name>origin/test_lon_decision</name></branch></revision></origintest_lon_decision><originfeat_baoshishun _class='hudson.plugins.git.util.Build'><buildNumber>1763</buildNumber><marked><SHA1>bd980a9f7945cff4fe8ab5e4c52a872b9928a648</SHA1><branch><SHA1>bd980a9f7945cff4fe8ab5e4c52a872b9928a648</SHA1><name>origin/feat_baoshishun</name></branch></marked><revision><SHA1>bd980a9f7945cff4fe8ab5e4c52a872b9928a648</SHA1><branch><SHA1>bd980a9f7945cff4fe8ab5e4c52a872b9928a648</SHA1><name>origin/feat_baoshishun</name></branch></revision></originfeat_baoshishun><originfeat_trajectory_suxi _class='hudson.plugins.git.util.Build'><buildNumber>1812</buildNumber><marked><SHA1>0195fa8bcb664f03f392909747fde1257aa0c480</SHA1><branch><SHA1>0195fa8bcb664f03f392909747fde1257aa0c480</SHA1><name>origin/feat_trajectory_suxi</name></branch></marked><revision><SHA1>0195fa8bcb664f03f392909747fde1257aa0c480</SHA1><branch><SHA1>0195fa8bcb664f03f392909747fde1257aa0c480</SHA1><name>origin/feat_trajectory_suxi</name></branch></revision></originfeat_trajectory_suxi><originfeat_straddle _class='hudson.plugins.git.util.Build'><buildNumber>1292</buildNumber><marked><SHA1>4fda3dd5ddbb3047e946022e8b4517405439390d</SHA1><branch><SHA1>4fda3dd5ddbb3047e946022e8b4517405439390d</SHA1><name>origin/feat_straddle</name></branch></marked><revision><SHA1>4fda3dd5ddbb3047e946022e8b4517405439390d</SHA1><branch><SHA1>4fda3dd5ddbb3047e946022e8b4517405439390d</SHA1><name>origin/feat_straddle</name></branch></revision></originfeat_straddle><origintmp_reversing_truck _class='hudson.plugins.git.util.Build'><buildNumber>437</buildNumber><marked><SHA1>fabd257bdea6f4c65211f0552d027c2d48d67ff1</SHA1><branch><SHA1>fabd257bdea6f4c65211f0552d027c2d48d67ff1</SHA1><name>origin/tmp_reversing_truck</name></branch></marked><revision><SHA1>fabd257bdea6f4c65211f0552d027c2d48d67ff1</SHA1><branch><SHA1>fabd257bdea6f4c65211f0552d027c2d48d67ff1</SHA1><name>origin/tmp_reversing_truck</name></branch></revision></origintmp_reversing_truck><originlower_safe_thr_region _class='hudson.plugins.git.util.Build'><buildNumber>254</buildNumber><marked><SHA1>63e3449599733e81768584360442037f700bd130</SHA1><branch><SHA1>63e3449599733e81768584360442037f700bd130</SHA1><name>origin/lower_safe_thr_region</name></branch></marked><revision><SHA1>63e3449599733e81768584360442037f700bd130</SHA1><branch><SHA1>63e3449599733e81768584360442037f700bd130</SHA1><name>origin/lower_safe_thr_region</name></branch></revision></originlower_safe_thr_region><originfeat_reverse_lane _class='hudson.plugins.git.util.Build'><buildNumber>197</buildNumber><marked><SHA1>6806fd45934e755534dbaa5e7ab1c0c26c03c41c</SHA1><branch><SHA1>6806fd45934e755534dbaa5e7ab1c0c26c03c41c</SHA1><name>origin/feat_reverse_lane</name></branch></marked><revision><SHA1>6806fd45934e755534dbaa5e7ab1c0c26c03c41c</SHA1><branch><SHA1>6806fd45934e755534dbaa5e7ab1c0c26c03c41c</SHA1><name>origin/feat_reverse_lane</name></branch></revision></originfeat_reverse_lane><originfeat_yard_decider _class='hudson.plugins.git.util.Build'><buildNumber>451</buildNumber><marked><SHA1>ceaec1a86e5cc4dfd017f0ec608a229ad757c437</SHA1><branch><SHA1>ceaec1a86e5cc4dfd017f0ec608a229ad757c437</SHA1><name>origin/feat_yard_decider</name></branch></marked><revision><SHA1>ceaec1a86e5cc4dfd017f0ec608a229ad757c437</SHA1><branch><SHA1>ceaec1a86e5cc4dfd017f0ec608a229ad757c437</SHA1><name>origin/feat_yard_decider</name></branch></revision></originfeat_yard_decider><originfeat_safety_check _class='hudson.plugins.git.util.Build'><buildNumber>504</buildNumber><marked><SHA1>f13057435427785612a0be829f74facb9b66884f</SHA1><branch><SHA1>f13057435427785612a0be829f74facb9b66884f</SHA1><name>origin/feat_safety_check</name></branch></marked><revision><SHA1>f13057435427785612a0be829f74facb9b66884f</SHA1><branch><SHA1>f13057435427785612a0be829f74facb9b66884f</SHA1><name>origin/feat_safety_check</name></branch></revision></originfeat_safety_check><originfeat_sc_mpc _class='hudson.plugins.git.util.Build'><buildNumber>2174</buildNumber><marked><SHA1>e1da74b409b7416c478723fbae98925a4349b9e4</SHA1><branch><SHA1>e1da74b409b7416c478723fbae98925a4349b9e4</SHA1><name>origin/feat_sc_mpc</name></branch></marked><revision><SHA1>e1da74b409b7416c478723fbae98925a4349b9e4</SHA1><branch><SHA1>e1da74b409b7416c478723fbae98925a4349b9e4</SHA1><name>origin/feat_sc_mpc</name></branch></revision></originfeat_sc_mpc><originfeat_motion_recover _class='hudson.plugins.git.util.Build'><buildNumber>726</buildNumber><marked><SHA1>ba1dab660729e472f5dcc5e8d37358ad42f034e8</SHA1><branch><SHA1>ba1dab660729e472f5dcc5e8d37358ad42f034e8</SHA1><name>origin/feat_motion_recover</name></branch></marked><revision><SHA1>ba1dab660729e472f5dcc5e8d37358ad42f034e8</SHA1><branch><SHA1>ba1dab660729e472f5dcc5e8d37358ad42f034e8</SHA1><name>origin/feat_motion_recover</name></branch></revision></originfeat_motion_recover><originfeat_wh_trailer_cpu _class='hudson.plugins.git.util.Build'><buildNumber>1947</buildNumber><marked><SHA1>22442cbd365130db54193a6fff806c3569c410b3</SHA1><branch><SHA1>22442cbd365130db54193a6fff806c3569c410b3</SHA1><name>origin/feat_wh_trailer_cpu</name></branch></marked><revision><SHA1>22442cbd365130db54193a6fff806c3569c410b3</SHA1><branch><SHA1>22442cbd365130db54193a6fff806c3569c410b3</SHA1><name>origin/feat_wh_trailer_cpu</name></branch></revision></originfeat_wh_trailer_cpu><originfeat_change _class='hudson.plugins.git.util.Build'><buildNumber>287</buildNumber><marked><SHA1>79b13f045e397ecfd25eef421479015c3bd736ba</SHA1><branch><SHA1>79b13f045e397ecfd25eef421479015c3bd736ba</SHA1><name>origin/feat_change</name></branch></marked><revision><SHA1>79b13f045e397ecfd25eef421479015c3bd736ba</SHA1><branch><SHA1>79b13f045e397ecfd25eef421479015c3bd736ba</SHA1><name>origin/feat_change</name></branch></revision></originfeat_change><originfeat_error_pnc_status _class='hudson.plugins.git.util.Build'><buildNumber>1669</buildNumber><marked><SHA1>7488347a486bc1348df9d3f239f9f43ce79ba4d4</SHA1><branch><SHA1>7488347a486bc1348df9d3f239f9f43ce79ba4d4</SHA1><name>origin/feat_error_pnc_status</name></branch></marked><revision><SHA1>7488347a486bc1348df9d3f239f9f43ce79ba4d4</SHA1><branch><SHA1>7488347a486bc1348df9d3f239f9f43ce79ba4d4</SHA1><name>origin/feat_error_pnc_status</name></branch></revision></originfeat_error_pnc_status><originfeat-ssep-add-hd-map _class='hudson.plugins.git.util.Build'><buildNumber>1295</buildNumber><marked><SHA1>fb03da3117413c1798e25a770b131d40e8eae298</SHA1><branch><SHA1>fb03da3117413c1798e25a770b131d40e8eae298</SHA1><name>origin/feat-ssep-add-hd-map</name></branch></marked><revision><SHA1>fb03da3117413c1798e25a770b131d40e8eae298</SHA1><branch><SHA1>fb03da3117413c1798e25a770b131d40e8eae298</SHA1><name>origin/feat-ssep-add-hd-map</name></branch></revision></originfeat-ssep-add-hd-map><originfeat_trajectory_fix _class='hudson.plugins.git.util.Build'><buildNumber>2055</buildNumber><marked><SHA1>01d91db117eb92069cdd33846ea3c62e855b5490</SHA1><branch><SHA1>01d91db117eb92069cdd33846ea3c62e855b5490</SHA1><name>origin/feat_trajectory_fix</name></branch></marked><revision><SHA1>01d91db117eb92069cdd33846ea3c62e855b5490</SHA1><branch><SHA1>01d91db117eb92069cdd33846ea3c62e855b5490</SHA1><name>origin/feat_trajectory_fix</name></branch></revision></originfeat_trajectory_fix><originfeat_park _class='hudson.plugins.git.util.Build'><buildNumber>1410</buildNumber><marked><SHA1>4dfeb34832881570e72ec9f03d43527093b6deb4</SHA1><branch><SHA1>4dfeb34832881570e72ec9f03d43527093b6deb4</SHA1><name>origin/feat_park</name></branch></marked><revision><SHA1>4dfeb34832881570e72ec9f03d43527093b6deb4</SHA1><branch><SHA1>4dfeb34832881570e72ec9f03d43527093b6deb4</SHA1><name>origin/feat_park</name></branch></revision></originfeat_park><originfix_ssep _class='hudson.plugins.git.util.Build'><buildNumber>985</buildNumber><marked><SHA1>bf45235b3482b4e4d6859874aef9655e1aa5b77d</SHA1><branch><SHA1>bf45235b3482b4e4d6859874aef9655e1aa5b77d</SHA1><name>origin/fix_ssep</name></branch></marked><revision><SHA1>bf45235b3482b4e4d6859874aef9655e1aa5b77d</SHA1><branch><SHA1>bf45235b3482b4e4d6859874aef9655e1aa5b77d</SHA1><name>origin/fix_ssep</name></branch></revision></originfix_ssep><originfeat_traffit_light_stop _class='hudson.plugins.git.util.Build'><buildNumber>1589</buildNumber><marked><SHA1>351fd37ab1e4baf8eff9dc6fdd67d2ba27e8b431</SHA1><branch><SHA1>351fd37ab1e4baf8eff9dc6fdd67d2ba27e8b431</SHA1><name>origin/feat_traffit_light_stop</name></branch></marked><revision><SHA1>351fd37ab1e4baf8eff9dc6fdd67d2ba27e8b431</SHA1><branch><SHA1>351fd37ab1e4baf8eff9dc6fdd67d2ba27e8b431</SHA1><name>origin/feat_traffit_light_stop</name></branch></revision></originfeat_traffit_light_stop><originfeat_trajectory_daxie_1 _class='hudson.plugins.git.util.Build'><buildNumber>1725</buildNumber><marked><SHA1>523d6e9237b447f388f4b65aeea122da2f3acaad</SHA1><branch><SHA1>523d6e9237b447f388f4b65aeea122da2f3acaad</SHA1><name>origin/feat_trajectory_daxie_1</name></branch></marked><revision><SHA1>523d6e9237b447f388f4b65aeea122da2f3acaad</SHA1><branch><SHA1>523d6e9237b447f388f4b65aeea122da2f3acaad</SHA1><name>origin/feat_trajectory_daxie_1</name></branch></revision></originfeat_trajectory_daxie_1><originfeat_xl_cargo _class='hudson.plugins.git.util.Build'><buildNumber>288</buildNumber><marked><SHA1>bca854785ba4ef0247def145cf821b9b569704f5</SHA1><branch><SHA1>bca854785ba4ef0247def145cf821b9b569704f5</SHA1><name>origin/feat_xl_cargo</name></branch></marked><revision><SHA1>bca854785ba4ef0247def145cf821b9b569704f5</SHA1><branch><SHA1>bca854785ba4ef0247def145cf821b9b569704f5</SHA1><name>origin/feat_xl_cargo</name></branch></revision></originfeat_xl_cargo><originfeat_mandula _class='hudson.plugins.git.util.Build'><buildNumber>742</buildNumber><marked><SHA1>3f32a3ec07f7e4ff70920060bc1768a64a93a6d5</SHA1><branch><SHA1>3f32a3ec07f7e4ff70920060bc1768a64a93a6d5</SHA1><name>origin/feat_mandula</name></branch></marked><revision><SHA1>3f32a3ec07f7e4ff70920060bc1768a64a93a6d5</SHA1><branch><SHA1>3f32a3ec07f7e4ff70920060bc1768a64a93a6d5</SHA1><name>origin/feat_mandula</name></branch></revision></originfeat_mandula><originfeat_wbca_st _class='hudson.plugins.git.util.Build'><buildNumber>523</buildNumber><marked><SHA1>bc5a22cc8a3360d942c9ebf93a4c840dfe50b8c8</SHA1><branch><SHA1>bc5a22cc8a3360d942c9ebf93a4c840dfe50b8c8</SHA1><name>origin/feat_wbca_st</name></branch></marked><revision><SHA1>bc5a22cc8a3360d942c9ebf93a4c840dfe50b8c8</SHA1><branch><SHA1>bc5a22cc8a3360d942c9ebf93a4c840dfe50b8c8</SHA1><name>origin/feat_wbca_st</name></branch></revision></originfeat_wbca_st><originfeat_seg_search_pjpo _class='hudson.plugins.git.util.Build'><buildNumber>1011</buildNumber><marked><SHA1>5dd7c817bb063c786843dedaea1e09fdb044e148</SHA1><branch><SHA1>5dd7c817bb063c786843dedaea1e09fdb044e148</SHA1><name>origin/feat_seg_search_pjpo</name></branch></marked><revision><SHA1>5dd7c817bb063c786843dedaea1e09fdb044e148</SHA1><branch><SHA1>5dd7c817bb063c786843dedaea1e09fdb044e148</SHA1><name>origin/feat_seg_search_pjpo</name></branch></revision></originfeat_seg_search_pjpo><originfeat_base _class='hudson.plugins.git.util.Build'><buildNumber>1315</buildNumber><marked><SHA1>35c890fe6d108738379774a7a1d377d88550f0e2</SHA1><branch><SHA1>35c890fe6d108738379774a7a1d377d88550f0e2</SHA1><name>origin/feat_base</name></branch></marked><revision><SHA1>35c890fe6d108738379774a7a1d377d88550f0e2</SHA1><branch><SHA1>35c890fe6d108738379774a7a1d377d88550f0e2</SHA1><name>origin/feat_base</name></branch></revision></originfeat_base><originfeat_smooth_mode _class='hudson.plugins.git.util.Build'><buildNumber>1834</buildNumber><marked><SHA1>4e529beda6281c89daa913f798b557c92d0a3df5</SHA1><branch><SHA1>4e529beda6281c89daa913f798b557c92d0a3df5</SHA1><name>origin/feat_smooth_mode</name></branch></marked><revision><SHA1>4e529beda6281c89daa913f798b557c92d0a3df5</SHA1><branch><SHA1>4e529beda6281c89daa913f798b557c92d0a3df5</SHA1><name>origin/feat_smooth_mode</name></branch></revision></originfeat_smooth_mode><originfeat_ros2_platoon _class='hudson.plugins.git.util.Build'><buildNumber>2177</buildNumber><marked><SHA1>d91ca0e6bdcd735a27a0491bd255d7cd33e5d7c8</SHA1><branch><SHA1>d91ca0e6bdcd735a27a0491bd255d7cd33e5d7c8</SHA1><name>origin/feat_ros2_platoon</name></branch></marked><revision><SHA1>d91ca0e6bdcd735a27a0491bd255d7cd33e5d7c8</SHA1><branch><SHA1>d91ca0e6bdcd735a27a0491bd255d7cd33e5d7c8</SHA1><name>origin/feat_ros2_platoon</name></branch></revision></originfeat_ros2_platoon><originfeat_hfsm _class='hudson.plugins.git.util.Build'><buildNumber>170</buildNumber><marked><SHA1>f282a44a806a2a82b27bdcb7a898fc8d8aad5411</SHA1><branch><SHA1>f282a44a806a2a82b27bdcb7a898fc8d8aad5411</SHA1><name>origin/feat_hfsm</name></branch></marked><revision><SHA1>f282a44a806a2a82b27bdcb7a898fc8d8aad5411</SHA1><branch><SHA1>f282a44a806a2a82b27bdcb7a898fc8d8aad5411</SHA1><name>origin/feat_hfsm</name></branch></revision></originfeat_hfsm><originfeat_error _class='hudson.plugins.git.util.Build'><buildNumber>1453</buildNumber><marked><SHA1>dc27b02eaf204e5b86844dff5a6fd5a9ba4b011e</SHA1><branch><SHA1>dc27b02eaf204e5b86844dff5a6fd5a9ba4b011e</SHA1><name>origin/feat_error</name></branch></marked><revision><SHA1>dc27b02eaf204e5b86844dff5a6fd5a9ba4b011e</SHA1><branch><SHA1>dc27b02eaf204e5b86844dff5a6fd5a9ba4b011e</SHA1><name>origin/feat_error</name></branch></revision></originfeat_error><originfeat_suxi _class='hudson.plugins.git.util.Build'><buildNumber>1551</buildNumber><marked><SHA1>cc92bd150d538bd5b38022ce5093ffda871c951e</SHA1><branch><SHA1>cc92bd150d538bd5b38022ce5093ffda871c951e</SHA1><name>origin/feat_suxi</name></branch></marked><revision><SHA1>cc92bd150d538bd5b38022ce5093ffda871c951e</SHA1><branch><SHA1>cc92bd150d538bd5b38022ce5093ffda871c951e</SHA1><name>origin/feat_suxi</name></branch></revision></originfeat_suxi><originfeat_guide_line _class='hudson.plugins.git.util.Build'><buildNumber>661</buildNumber><marked><SHA1>d85529c9182f6b17004349c502ce183121f325de</SHA1><branch><SHA1>d85529c9182f6b17004349c502ce183121f325de</SHA1><name>origin/feat_guide_line</name></branch></marked><revision><SHA1>d85529c9182f6b17004349c502ce183121f325de</SHA1><branch><SHA1>d85529c9182f6b17004349c502ce183121f325de</SHA1><name>origin/feat_guide_line</name></branch></revision></originfeat_guide_line><originfeat-speed-limit _class='hudson.plugins.git.util.Build'><buildNumber>304</buildNumber><marked><SHA1>a7e98a4a02cf06b6a1379db0412864459bea384e</SHA1><branch><SHA1>a7e98a4a02cf06b6a1379db0412864459bea384e</SHA1><name>origin/feat-speed-limit</name></branch></marked><revision><SHA1>a7e98a4a02cf06b6a1379db0412864459bea384e</SHA1><branch><SHA1>a7e98a4a02cf06b6a1379db0412864459bea384e</SHA1><name>origin/feat-speed-limit</name></branch></revision></originfeat-speed-limit><originfeat_wh _class='hudson.plugins.git.util.Build'><buildNumber>1528</buildNumber><marked><SHA1>166219f79a22689fa52cdc391abdea6433d4ae37</SHA1><branch><SHA1>166219f79a22689fa52cdc391abdea6433d4ae37</SHA1><name>origin/feat_wh</name></branch></marked><revision><SHA1>166219f79a22689fa52cdc391abdea6433d4ae37</SHA1><branch><SHA1>166219f79a22689fa52cdc391abdea6433d4ae37</SHA1><name>origin/feat_wh</name></branch></revision></originfeat_wh><originfeat_xilian_lane_change _class='hudson.plugins.git.util.Build'><buildNumber>710</buildNumber><marked><SHA1>7db10a51bb61d31a6dacddddef02b49f38ceab58</SHA1><branch><SHA1>7db10a51bb61d31a6dacddddef02b49f38ceab58</SHA1><name>origin/feat_xilian_lane_change</name></branch></marked><revision><SHA1>7db10a51bb61d31a6dacddddef02b49f38ceab58</SHA1><branch><SHA1>7db10a51bb61d31a6dacddddef02b49f38ceab58</SHA1><name>origin/feat_xilian_lane_change</name></branch></revision></originfeat_xilian_lane_change><originrc_dev_wf _class='hudson.plugins.git.util.Build'><buildNumber>231</buildNumber><marked><SHA1>ee9fa7a02bb35ee685cee883124da9f669ab6e75</SHA1><branch><SHA1>ee9fa7a02bb35ee685cee883124da9f669ab6e75</SHA1><name>origin/rc_dev_wf</name></branch></marked><revision><SHA1>ee9fa7a02bb35ee685cee883124da9f669ab6e75</SHA1><branch><SHA1>ee9fa7a02bb35ee685cee883124da9f669ab6e75</SHA1><name>origin/rc_dev_wf</name></branch></revision></originrc_dev_wf><originfeat_lock_station _class='hudson.plugins.git.util.Build'><buildNumber>987</buildNumber><marked><SHA1>3e483224ec848dfc40cc51b8fccf47d1f3716d3d</SHA1><branch><SHA1>3e483224ec848dfc40cc51b8fccf47d1f3716d3d</SHA1><name>origin/feat_lock_station</name></branch></marked><revision><SHA1>3e483224ec848dfc40cc51b8fccf47d1f3716d3d</SHA1><branch><SHA1>3e483224ec848dfc40cc51b8fccf47d1f3716d3d</SHA1><name>origin/feat_lock_station</name></branch></revision></originfeat_lock_station><originfeat_og _class='hudson.plugins.git.util.Build'><buildNumber>513</buildNumber><marked><SHA1>17cf5ba4d4c3a3a18a2a6c039346d12deed329bb</SHA1><branch><SHA1>17cf5ba4d4c3a3a18a2a6c039346d12deed329bb</SHA1><name>origin/feat_og</name></branch></marked><revision><SHA1>17cf5ba4d4c3a3a18a2a6c039346d12deed329bb</SHA1><branch><SHA1>17cf5ba4d4c3a3a18a2a6c039346d12deed329bb</SHA1><name>origin/feat_og</name></branch></revision></originfeat_og><originfeat_pnc_scene_replay_web _class='hudson.plugins.git.util.Build'><buildNumber>2111</buildNumber><marked><SHA1>a64dd4a6b8729a84db4812a0740662b1d14f2fa4</SHA1><branch><SHA1>a64dd4a6b8729a84db4812a0740662b1d14f2fa4</SHA1><name>origin/feat_pnc_scene_replay_web</name></branch></marked><revision><SHA1>a64dd4a6b8729a84db4812a0740662b1d14f2fa4</SHA1><branch><SHA1>a64dd4a6b8729a84db4812a0740662b1d14f2fa4</SHA1><name>origin/feat_pnc_scene_replay_web</name></branch></revision></originfeat_pnc_scene_replay_web><originfeat_escape _class='hudson.plugins.git.util.Build'><buildNumber>1231</buildNumber><marked><SHA1>07da24972be561730ba0607d76f6a479db4b96a9</SHA1><branch><SHA1>07da24972be561730ba0607d76f6a479db4b96a9</SHA1><name>origin/feat_escape</name></branch></marked><revision><SHA1>07da24972be561730ba0607d76f6a479db4b96a9</SHA1><branch><SHA1>07da24972be561730ba0607d76f6a479db4b96a9</SHA1><name>origin/feat_escape</name></branch></revision></originfeat_escape><originfeat_proto_xiamen _class='hudson.plugins.git.util.Build'><buildNumber>2176</buildNumber><marked><SHA1>1ff7167cb591123ef08119f40a537cdbe402fe19</SHA1><branch><SHA1>1ff7167cb591123ef08119f40a537cdbe402fe19</SHA1><name>origin/feat_proto_xiamen</name></branch></marked><revision><SHA1>1ff7167cb591123ef08119f40a537cdbe402fe19</SHA1><branch><SHA1>1ff7167cb591123ef08119f40a537cdbe402fe19</SHA1><name>origin/feat_proto_xiamen</name></branch></revision></originfeat_proto_xiamen><originfeat_dev _class='hudson.plugins.git.util.Build'><buildNumber>755</buildNumber><marked><SHA1>f6a5b6ebde79a0d1f93b43f0da4a847743bc28b3</SHA1><branch><SHA1>f6a5b6ebde79a0d1f93b43f0da4a847743bc28b3</SHA1><name>origin/feat_dev</name></branch></marked><revision><SHA1>f6a5b6ebde79a0d1f93b43f0da4a847743bc28b3</SHA1><branch><SHA1>f6a5b6ebde79a0d1f93b43f0da4a847743bc28b3</SHA1><name>origin/feat_dev</name></branch></revision></originfeat_dev><originfeat_pnc_status _class='hudson.plugins.git.util.Build'><buildNumber>1640</buildNumber><marked><SHA1>a0e27a4547573c85a1e22a137a9413f6591bd994</SHA1><branch><SHA1>a0e27a4547573c85a1e22a137a9413f6591bd994</SHA1><name>origin/feat_pnc_status</name></branch></marked><revision><SHA1>a0e27a4547573c85a1e22a137a9413f6591bd994</SHA1><branch><SHA1>a0e27a4547573c85a1e22a137a9413f6591bd994</SHA1><name>origin/feat_pnc_status</name></branch></revision></originfeat_pnc_status><originmodify_lane_change_new _class='hudson.plugins.git.util.Build'><buildNumber>84</buildNumber><marked><SHA1>c1443c21419c749982e38d885282592a971fdcf7</SHA1><branch><SHA1>c1443c21419c749982e38d885282592a971fdcf7</SHA1><name>origin/modify_lane_change_new</name></branch></marked><revision><SHA1>c1443c21419c749982e38d885282592a971fdcf7</SHA1><branch><SHA1>c1443c21419c749982e38d885282592a971fdcf7</SHA1><name>origin/modify_lane_change_new</name></branch></revision></originmodify_lane_change_new></buildsByBranchName><lastBuiltRevision><SHA1>1820923cc36d656ade154fdbe8f688bbff4e71e9</SHA1><branch><SHA1>1820923cc36d656ade154fdbe8f688bbff4e71e9</SHA1><name>origin/feat_daxie_proto</name></branch></lastBuiltRevision><remoteUrl>http://159.27.226.4/pnc/pnc.git</remoteUrl><scmName></scmName></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><originros2 _class='hudson.plugins.git.util.Build'><buildNumber>2177</buildNumber><marked><SHA1>1336438603254bb01a9125eabd6d531597c243cc</SHA1><branch><SHA1>1336438603254bb01a9125eabd6d531597c243cc</SHA1><name>origin/ros2</name></branch></marked><revision><SHA1>1336438603254bb01a9125eabd6d531597c243cc</SHA1><branch><SHA1>1336438603254bb01a9125eabd6d531597c243cc</SHA1><name>origin/ros2</name></branch></revision></originros2><originfeat_hypsographic_map _class='hudson.plugins.git.util.Build'><buildNumber>1705</buildNumber><marked><SHA1>7edae3e34281e5446eb04da3b4093217e61f2337</SHA1><branch><SHA1>7edae3e34281e5446eb04da3b4093217e61f2337</SHA1><name>origin/feat_hypsographic_map</name></branch></marked><revision><SHA1>7edae3e34281e5446eb04da3b4093217e61f2337</SHA1><branch><SHA1>7edae3e34281e5446eb04da3b4093217e61f2337</SHA1><name>origin/feat_hypsographic_map</name></branch></revision></originfeat_hypsographic_map><origintemp_interface _class='hudson.plugins.git.util.Build'><buildNumber>387</buildNumber><marked><SHA1>cd454059f302c9b2474e6609c1546a358ce6f72f</SHA1><branch><SHA1>cd454059f302c9b2474e6609c1546a358ce6f72f</SHA1><name>origin/temp_interface</name></branch></marked><revision><SHA1>cd454059f302c9b2474e6609c1546a358ce6f72f</SHA1><branch><SHA1>cd454059f302c9b2474e6609c1546a358ce6f72f</SHA1><name>origin/temp_interface</name></branch></revision></origintemp_interface><originrc_dev _class='hudson.plugins.git.util.Build'><buildNumber>2179</buildNumber><marked><SHA1>baaa7dbe0743898225ca422520bae8e624a4d3e1</SHA1><branch><SHA1>baaa7dbe0743898225ca422520bae8e624a4d3e1</SHA1><name>origin/rc_dev</name></branch></marked><revision><SHA1>baaa7dbe0743898225ca422520bae8e624a4d3e1</SHA1><branch><SHA1>baaa7dbe0743898225ca422520bae8e624a4d3e1</SHA1><name>origin/rc_dev</name></branch></revision></originrc_dev><originrc_dev_add_lane_name _class='hudson.plugins.git.util.Build'><buildNumber>1462</buildNumber><marked><SHA1>be65f77d9d0f6a3ae20cc796e381889a03ce43ee</SHA1><branch><SHA1>be65f77d9d0f6a3ae20cc796e381889a03ce43ee</SHA1><name>origin/rc_dev_add_lane_name</name></branch></marked><revision><SHA1>be65f77d9d0f6a3ae20cc796e381889a03ce43ee</SHA1><branch><SHA1>be65f77d9d0f6a3ae20cc796e381889a03ce43ee</SHA1><name>origin/rc_dev_add_lane_name</name></branch></revision></originrc_dev_add_lane_name><originfeat_fence _class='hudson.plugins.git.util.Build'><buildNumber>594</buildNumber><marked><SHA1>bfea094fbf5d6f1c5eca3dfaa2044894fec263f6</SHA1><branch><SHA1>bfea094fbf5d6f1c5eca3dfaa2044894fec263f6</SHA1><name>origin/feat_fence</name></branch></marked><revision><SHA1>bfea094fbf5d6f1c5eca3dfaa2044894fec263f6</SHA1><branch><SHA1>bfea094fbf5d6f1c5eca3dfaa2044894fec263f6</SHA1><name>origin/feat_fence</name></branch></revision></originfeat_fence></buildsByBranchName><lastBuiltRevision><SHA1>baaa7dbe0743898225ca422520bae8e624a4d3e1</SHA1><branch><SHA1>baaa7dbe0743898225ca422520bae8e624a4d3e1</SHA1><name>origin/rc_dev</name></branch></lastBuiltRevision><remoteUrl>http://159.27.226.4/map/hdmap_interface.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#2179</displayName><duration>2151256</duration><estimatedDuration>2049227</estimatedDuration><fullDisplayName>module-pnc_replayer #2179</fullDisplayName><id>2179</id><keepLog>false</keepLog><number>2179</number><queueId>1359630</queueId><result>SUCCESS</result><timestamp>1792578925986</timestamp><url>http://159.27.114.184:8080/jenkins/user/chenliang/my-views/view/all/job/module-pnc_replayer/2179/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>Testing/reference_line_replan_test.cpp</affectedPath><affectedPath>scenarios/bulkload_scenario/bulkload_move_forward_stage.cpp</affectedPath><commitId>9b59948f80f3ba78a4a033f3c53a92aaf599a976</commitId><timestamp>1792576959000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 修复散货调整阶段被参考线失败阻断搜索

在移动阶段任务执行前处理 PARK_ADJUST 阶段切换，避免无路由任务因参考线检查失败反复停留在移动阶段。保留正常移动阶段的失败清理，并新增调整切换和移动失败回归。
</comment><date>2026-10-21 18:02:39 +0800</date><id>9b59948f80f3ba78a4a033f3c53a92aaf599a976</id><msg>fix: 修复散货调整阶段被参考线失败阻断搜索</msg><path><editType>edit</editType><file>Testing/reference_line_replan_test.cpp</file></path><path><editType>edit</editType><file>scenarios/bulkload_scenario/bulkload_move_forward_stage.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>data/app/fsm/task_fsm/task_park_fsm/task_park_fsm.cpp</affectedPath><affectedPath>replayer/scene_data/generated/compact_exact_numeric_visitor.cpp</affectedPath><affectedPath>data/other/flow_control.cpp</affectedPath><affectedPath>data/vehicle/request_routing_data.cpp</affectedPath><affectedPath>plan/prepare/prepare_status.cpp</affectedPath><affectedPath>data/app/fsm/task_fsm/task_park_fsm/task_park_fsm.hpp</affectedPath><affectedPath>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</affectedPath><affectedPath>data/app/fsm/task_fsm/task_park_fsm/task_park_state.hpp</affectedPath><affectedPath>Testing/scene_replay_foundation_test.cpp</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_encoder.cpp</affectedPath><affectedPath>data/scenario/scenario_region_condition.cpp</affectedPath><affectedPath>replayer/scene_data/generated/compact_scene_descriptor.pb</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_field_roles.json</affectedPath><affectedPath>data/vehicle/lock_station_data.hpp</affectedPath><affectedPath>data/vehicle/lock_station_data.cpp</affectedPath><affectedPath>replayer/scene_data/compact_numeric_policy.yaml</affectedPath><affectedPath>tasks/deciders/long_decider/constrain_decider.cpp</affectedPath><affectedPath>data/app/reaction/app_reaction.cpp</affectedPath><affectedPath>Testing/routing_map_guard_test.cpp</affectedPath><affectedPath>plan/prepare/prepare_state.cpp</affectedPath><affectedPath>replayer/scene_data/vehicle_input_proto_codec.cpp</affectedPath><affectedPath>replayer/scene_data/compact_numeric_leaf_contract.csv</affectedPath><affectedPath>proto/vehicle.proto</affectedPath><affectedPath>data/plan/path_direction_data.cpp</affectedPath><affectedPath>replayer/scene_data/plan_frame_full_mapping.yaml</affectedPath><affectedPath>replayer/scene_data/plan_frame_field_roles.csv</affectedPath><affectedPath>replayer/scene_data/generated/scene_replay_api_descriptor.pb</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_descriptor.pb</affectedPath><commitId>1820923cc36d656ade154fdbe8f688bbff4e71e9</commitId><timestamp>1792576976000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>feat: 支持散货停车中的缓冲等待与途径点单次放行

在 Park 下复用 BUFFER_STOP，支持 Move/Adjust 停车等待及启动后恢复。将需要停车的搜索途径点纳入缓冲点，提前生成停止线并修正倒车距离及越点过滤。

按任务与途径点身份保存放行记录，覆盖多段路径、重搜、等待锁点和点列表重排；补齐 Full/Compact 字段、旧数据迁移及回归测试。最终三组回归合计 990 项通过、68 项跳过、0 失败。
</comment><date>2026-10-21 18:02:56 +0800</date><id>1820923cc36d656ade154fdbe8f688bbff4e71e9</id><msg>feat: 支持散货停车中的缓冲等待与途径点单次放行</msg><path><editType>edit</editType><file>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</file></path><path><editType>edit</editType><file>Testing/scene_replay_foundation_test.cpp</file></path><path><editType>edit</editType><file>proto/vehicle.proto</file></path><path><editType>edit</editType><file>plan/prepare/prepare_status.cpp</file></path><path><editType>edit</editType><file>data/other/flow_control.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_descriptor.pb</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_field_roles.json</file></path><path><editType>edit</editType><file>data/scenario/scenario_region_condition.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/scene_replay_api_descriptor.pb</file></path><path><editType>edit</editType><file>data/plan/path_direction_data.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/vehicle_input_proto_codec.cpp</file></path><path><editType>edit</editType><file>plan/prepare/prepare_state.cpp</file></path><path><editType>edit</editType><file>data/vehicle/request_routing_data.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/plan_frame_full_mapping.yaml</file></path><path><editType>edit</editType><file>replayer/scene_data/compact_numeric_leaf_contract.csv</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/compact_exact_numeric_visitor.cpp</file></path><path><editType>edit</editType><file>data/app/fsm/task_fsm/task_park_fsm/task_park_fsm.cpp</file></path><path><editType>edit</editType><file>data/app/reaction/app_reaction.cpp</file></path><path><editType>edit</editType><file>data/app/fsm/task_fsm/task_park_fsm/task_park_fsm.hpp</file></path><path><editType>edit</editType><file>Testing/routing_map_guard_test.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/compact_numeric_policy.yaml</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_encoder.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/compact_scene_descriptor.pb</file></path><path><editType>edit</editType><file>tasks/deciders/long_decider/constrain_decider.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/plan_frame_field_roles.csv</file></path><path><editType>edit</editType><file>data/vehicle/lock_station_data.hpp</file></path><path><editType>edit</editType><file>data/app/fsm/task_fsm/task_park_fsm/task_park_state.hpp</file></path><path><editType>edit</editType><file>data/vehicle/lock_station_data.cpp</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></culprit><nextBuild><number>2180</number><url>http://159.27.114.184:8080/jenkins/user/chenliang/my-views/view/all/job/module-pnc_replayer/2180/</url></nextBuild><previousBuild><number>2178</number><url>http://159.27.114.184:8080/jenkins/user/chenliang/my-views/view/all/job/module-pnc_replayer/2178/</url></previousBuild></nextBuild><previousBuild><action _class='hudson.model.CauseAction'><cause _class='org.jenkinsci.plugins.workflow.support.steps.build.BuildUpstreamCause'><shortDescription>Started by upstream project "orin-module-ros2" build number 123</shortDescription><upstreamBuild>123</upstreamBuild><upstreamProject>orin-module-ros2</upstreamProject><upstreamUrl>job/orin-module-ros2/</upstreamUrl></cause></action><action></action><action _class='hudson.model.ParametersAction'><parameter _class='hudson.model.StringParameterValue'><name>msgBranch</name><value>dev_ros2</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>pncBranch</name><value>feat_ros2_platoon</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>hdmapBranch</name><value>no</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>hdmapInterfaceBranch</name><value>ros2</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>notes</name><value>pncreplayer更新</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>info</name><value>orin-module-ros2: #123</value></parameter></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><master _class='hudson.plugins.git.util.Build'><buildNumber>2177</buildNumber><marked><SHA1>6ec4c73f16769d31c660c5020d0f9d715ab0b1b7</SHA1><branch><SHA1>6ec4c73f16769d31c660c5020d0f9d715ab0b1b7</SHA1><name>master</name></branch></marked><revision><SHA1>6ec4c73f16769d31c660c5020d0f9d715ab0b1b7</SHA1><branch><SHA1>6ec4c73f16769d31c660c5020d0f9d715ab0b1b7</SHA1><name>master</name></branch></revision></master></buildsByBranchName><lastBuiltRevision><SHA1>6ec4c73f16769d31c660c5020d0f9d715ab0b1b7</SHA1><branch><SHA1>6ec4c73f16769d31c660c5020d0f9d715ab0b1b7</SHA1><name>master</name></branch></lastBuiltRevision><remoteUrl>http://159.27.226.4/weilikang/jenkinslib.git</remoteUrl><scmName></scmName></action><action></action><action></action><action _class='org.jenkinsci.plugins.workflow.cps.EnvActionImpl'></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>2177</buildNumber><marked><SHA1>da346d05dedce5efb0c0437192f29599ceeab71b</SHA1><branch><SHA1>da346d05dedce5efb0c0437192f29599ceeab71b</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>da346d05dedce5efb0c0437192f29599ceeab71b</SHA1><branch><SHA1>da346d05dedce5efb0c0437192f29599ceeab71b</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>da346d05dedce5efb0c0437192f29599ceeab71b</SHA1><branch><SHA1>da346d05dedce5efb0c0437192f29599ceeab71b</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>http://159.27.226.4/weilikang/jenkinsfiles.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.workflow.cps.view.InterpolatedSecretsAction'></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><originrc_dev_d0713c _class='hudson.plugins.git.util.Build'><buildNumber>514</buildNumber><marked><SHA1>d0713c65fd86b2ac53ed036ec66b90521c2ef97c</SHA1><branch><SHA1>d0713c65fd86b2ac53ed036ec66b90521c2ef97c</SHA1><name>origin/rc_dev_d0713c</name></branch></marked><revision><SHA1>d0713c65fd86b2ac53ed036ec66b90521c2ef97c</SHA1><branch><SHA1>d0713c65fd86b2ac53ed036ec66b90521c2ef97c</SHA1><name>origin/rc_dev_d0713c</name></branch></revision></originrc_dev_d0713c><originrc_dev_xinjiang_kaiwo _class='hudson.plugins.git.util.Build'><buildNumber>1244</buildNumber><marked><SHA1>6858447f1f5c9e880a747d653217350f3c4ea0a0</SHA1><branch><SHA1>6858447f1f5c9e880a747d653217350f3c4ea0a0</SHA1><name>origin/rc_dev_xinjiang_kaiwo</name></branch></marked><revision><SHA1>6858447f1f5c9e880a747d653217350f3c4ea0a0</SHA1><branch><SHA1>6858447f1f5c9e880a747d653217350f3c4ea0a0</SHA1><name>origin/rc_dev_xinjiang_kaiwo</name></branch></revision></originrc_dev_xinjiang_kaiwo><originfeat_multiple_path _class='hudson.plugins.git.util.Build'><buildNumber>104</buildNumber><marked><SHA1>d54cf8742b0d6a6d1d6ad06beb448f37152ca1d8</SHA1><branch><SHA1>d54cf8742b0d6a6d1d6ad06beb448f37152ca1d8</SHA1><name>origin/feat_multiple_path</name></branch></marked><revision><SHA1>d54cf8742b0d6a6d1d6ad06beb448f37152ca1d8</SHA1><branch><SHA1>d54cf8742b0d6a6d1d6ad06beb448f37152ca1d8</SHA1><name>origin/feat_multiple_path</name></branch></revision></originfeat_multiple_path><originfeat-peripheral_qiangang _class='hudson.plugins.git.util.Build'><buildNumber>405</buildNumber><marked><SHA1>47370a9f329d90e5e5d59e53f6173a21ad880678</SHA1><branch><SHA1>47370a9f329d90e5e5d59e53f6173a21ad880678</SHA1><name>origin/feat-peripheral_qiangang</name></branch></marked><revision><SHA1>47370a9f329d90e5e5d59e53f6173a21ad880678</SHA1><branch><SHA1>47370a9f329d90e5e5d59e53f6173a21ad880678</SHA1><name>origin/feat-peripheral_qiangang</name></branch></revision></originfeat-peripheral_qiangang><originfeat_tc_v2_weihai _class='hudson.plugins.git.util.Build'><buildNumber>1910</buildNumber><marked><SHA1>db51c891fddcf73babce98115f7526d2860bd6c4</SHA1><branch><SHA1>db51c891fddcf73babce98115f7526d2860bd6c4</SHA1><name>origin/feat_tc_v2_weihai</name></branch></marked><revision><SHA1>db51c891fddcf73babce98115f7526d2860bd6c4</SHA1><branch><SHA1>db51c891fddcf73babce98115f7526d2860bd6c4</SHA1><name>origin/feat_tc_v2_weihai</name></branch></revision></originfeat_tc_v2_weihai><originyouyiguan_add_trailer_info _class='hudson.plugins.git.util.Build'><buildNumber>1294</buildNumber><marked><SHA1>062de51109603913f092d421e259df68b3b57f8f</SHA1><branch><SHA1>062de51109603913f092d421e259df68b3b57f8f</SHA1><name>origin/youyiguan_add_trailer_info</name></branch></marked><revision><SHA1>062de51109603913f092d421e259df68b3b57f8f</SHA1><branch><SHA1>062de51109603913f092d421e259df68b3b57f8f</SHA1><name>origin/youyiguan_add_trailer_info</name></branch></revision></originyouyiguan_add_trailer_info><originrcdev_0a13c34 _class='hudson.plugins.git.util.Build'><buildNumber>231</buildNumber><marked><SHA1>0a13c3462eee863b32a43ea2e82612f649af702a</SHA1><branch><SHA1>0a13c3462eee863b32a43ea2e82612f649af702a</SHA1><name>origin/rcdev_0a13c34</name></branch></marked><revision><SHA1>0a13c3462eee863b32a43ea2e82612f649af702a</SHA1><branch><SHA1>0a13c3462eee863b32a43ea2e82612f649af702a</SHA1><name>origin/rcdev_0a13c34</name></branch></revision></originrcdev_0a13c34><originrc_dev _class='hudson.plugins.git.util.Build'><buildNumber>2006</buildNumber><marked><SHA1>7d594c755e96741c20d32b84dec169d35b599e9c</SHA1><branch><SHA1>7d594c755e96741c20d32b84dec169d35b599e9c</SHA1><name>origin/rc_dev</name></branch></marked><revision><SHA1>7d594c755e96741c20d32b84dec169d35b599e9c</SHA1><branch><SHA1>7d594c755e96741c20d32b84dec169d35b599e9c</SHA1><name>origin/rc_dev</name></branch></revision></originrc_dev><originfeat_v2x _class='hudson.plugins.git.util.Build'><buildNumber>97</buildNumber><marked><SHA1>818081a723d83abf39efe236cb6ab488aef53bba</SHA1><branch><SHA1>818081a723d83abf39efe236cb6ab488aef53bba</SHA1><name>origin/feat_v2x</name></branch></marked><revision><SHA1>818081a723d83abf39efe236cb6ab488aef53bba</SHA1><branch><SHA1>818081a723d83abf39efe236cb6ab488aef53bba</SHA1><name>origin/feat_v2x</name></branch></revision></originfeat_v2x><originrc_dev_qiangang _class='hudson.plugins.git.util.Build'><buildNumber>1897</buildNumber><marked><SHA1>1f1b50411fbad43ef0d16e173acf889b3a413854</SHA1><branch><SHA1>1f1b50411fbad43ef0d16e173acf889b3a413854</SHA1><name>origin/rc_dev_qiangang</name></branch></marked><revision><SHA1>1f1b50411fbad43ef0d16e173acf889b3a413854</SHA1><branch><SHA1>1f1b50411fbad43ef0d16e173acf889b3a413854</SHA1><name>origin/rc_dev_qiangang</name></branch></revision></originrc_dev_qiangang><originfeat_xiamen_patch _class='hudson.plugins.git.util.Build'><buildNumber>1606</buildNumber><marked><SHA1>5edde714fd5009dce8a08067bfa73d09adf298d6</SHA1><branch><SHA1>5edde714fd5009dce8a08067bfa73d09adf298d6</SHA1><name>origin/feat_xiamen_patch</name></branch></marked><revision><SHA1>5edde714fd5009dce8a08067bfa73d09adf298d6</SHA1><branch><SHA1>5edde714fd5009dce8a08067bfa73d09adf298d6</SHA1><name>origin/feat_xiamen_patch</name></branch></revision></originfeat_xiamen_patch><originrc_dev_taiyang _class='hudson.plugins.git.util.Build'><buildNumber>1547</buildNumber><marked><SHA1>7b898979876c3089d42c8ecbfbeef3da821c694b</SHA1><branch><SHA1>7b898979876c3089d42c8ecbfbeef3da821c694b</SHA1><name>origin/rc_dev_taiyang</name></branch></marked><revision><SHA1>7b898979876c3089d42c8ecbfbeef3da821c694b</SHA1><branch><SHA1>7b898979876c3089d42c8ecbfbeef3da821c694b</SHA1><name>origin/rc_dev_taiyang</name></branch></revision></originrc_dev_taiyang><originfeat-peripheral_op_state _class='hudson.plugins.git.util.Build'><buildNumber>239</buildNumber><marked><SHA1>f0a5167416f0fec86262fc7b9f86b98b8c9f1580</SHA1><branch><SHA1>f0a5167416f0fec86262fc7b9f86b98b8c9f1580</SHA1><name>origin/feat-peripheral_op_state</name></branch></marked><revision><SHA1>f0a5167416f0fec86262fc7b9f86b98b8c9f1580</SHA1><branch><SHA1>f0a5167416f0fec86262fc7b9f86b98b8c9f1580</SHA1><name>origin/feat-peripheral_op_state</name></branch></revision></originfeat-peripheral_op_state><originfeat_mandula_udp _class='hudson.plugins.git.util.Build'><buildNumber>830</buildNumber><marked><SHA1>d261c50491fbc8a11349b8ab65a8076d75ebdc08</SHA1><branch><SHA1>d261c50491fbc8a11349b8ab65a8076d75ebdc08</SHA1><name>origin/feat_mandula_udp</name></branch></marked><revision><SHA1>d261c50491fbc8a11349b8ab65a8076d75ebdc08</SHA1><branch><SHA1>d261c50491fbc8a11349b8ab65a8076d75ebdc08</SHA1><name>origin/feat_mandula_udp</name></branch></revision></originfeat_mandula_udp><originfeat-peripheral_op_state-chassis_err _class='hudson.plugins.git.util.Build'><buildNumber>377</buildNumber><marked><SHA1>3fed282b426dddc8539eed2eac1b7bc368431e71</SHA1><branch><SHA1>3fed282b426dddc8539eed2eac1b7bc368431e71</SHA1><name>origin/feat-peripheral_op_state-chassis_err</name></branch></marked><revision><SHA1>3fed282b426dddc8539eed2eac1b7bc368431e71</SHA1><branch><SHA1>3fed282b426dddc8539eed2eac1b7bc368431e71</SHA1><name>origin/feat-peripheral_op_state-chassis_err</name></branch></revision></originfeat-peripheral_op_state-chassis_err><originrc_dev_shanqihuanwei _class='hudson.plugins.git.util.Build'><buildNumber>1589</buildNumber><marked><SHA1>f5a740650e27555efc2c844e135111515679ba9d</SHA1><branch><SHA1>f5a740650e27555efc2c844e135111515679ba9d</SHA1><name>origin/rc_dev_shanqihuanwei</name></branch></marked><revision><SHA1>f5a740650e27555efc2c844e135111515679ba9d</SHA1><branch><SHA1>f5a740650e27555efc2c844e135111515679ba9d</SHA1><name>origin/rc_dev_shanqihuanwei</name></branch></revision></originrc_dev_shanqihuanwei><originfeat_tc_v2_yantai _class='hudson.plugins.git.util.Build'><buildNumber>1862</buildNumber><marked><SHA1>bdb5ae48b5cbb4cf8ba76eba652e4f20aeff253d</SHA1><branch><SHA1>bdb5ae48b5cbb4cf8ba76eba652e4f20aeff253d</SHA1><name>origin/feat_tc_v2_yantai</name></branch></marked><revision><SHA1>bdb5ae48b5cbb4cf8ba76eba652e4f20aeff253d</SHA1><branch><SHA1>bdb5ae48b5cbb4cf8ba76eba652e4f20aeff253d</SHA1><name>origin/feat_tc_v2_yantai</name></branch></revision></originfeat_tc_v2_yantai><originrc_dev_e53243 _class='hudson.plugins.git.util.Build'><buildNumber>651</buildNumber><marked><SHA1>e53243a23acd89640afd41301882167071c14022</SHA1><branch><SHA1>e53243a23acd89640afd41301882167071c14022</SHA1><name>origin/rc_dev_e53243</name></branch></marked><revision><SHA1>e53243a23acd89640afd41301882167071c14022</SHA1><branch><SHA1>e53243a23acd89640afd41301882167071c14022</SHA1><name>origin/rc_dev_e53243</name></branch></revision></originrc_dev_e53243><originrc_dev_zhoushan _class='hudson.plugins.git.util.Build'><buildNumber>1472</buildNumber><marked><SHA1>96ed1f1aae62978d865c3acf62e16756e9530773</SHA1><branch><SHA1>96ed1f1aae62978d865c3acf62e16756e9530773</SHA1><name>origin/rc_dev_zhoushan</name></branch></marked><revision><SHA1>96ed1f1aae62978d865c3acf62e16756e9530773</SHA1><branch><SHA1>96ed1f1aae62978d865c3acf62e16756e9530773</SHA1><name>origin/rc_dev_zhoushan</name></branch></revision></originrc_dev_zhoushan><originfeat_tc_v2_daxie _class='hudson.plugins.git.util.Build'><buildNumber>1815</buildNumber><marked><SHA1>aed54f80025d95dc2fa58fadb5f26bd1c46d4b0d</SHA1><branch><SHA1>aed54f80025d95dc2fa58fadb5f26bd1c46d4b0d</SHA1><name>origin/feat_tc_v2_daxie</name></branch></marked><revision><SHA1>aed54f80025d95dc2fa58fadb5f26bd1c46d4b0d</SHA1><branch><SHA1>aed54f80025d95dc2fa58fadb5f26bd1c46d4b0d</SHA1><name>origin/feat_tc_v2_daxie</name></branch></revision></originfeat_tc_v2_daxie><originrc_dev_dongfen _class='hudson.plugins.git.util.Build'><buildNumber>1702</buildNumber><marked><SHA1>6858447f1f5c9e880a747d653217350f3c4ea0a0</SHA1><branch><SHA1>6858447f1f5c9e880a747d653217350f3c4ea0a0</SHA1><name>origin/rc_dev_dongfen</name></branch></marked><revision><SHA1>6858447f1f5c9e880a747d653217350f3c4ea0a0</SHA1><branch><SHA1>6858447f1f5c9e880a747d653217350f3c4ea0a0</SHA1><name>origin/rc_dev_dongfen</name></branch></revision></originrc_dev_dongfen><originfeat_daxie_patch _class='hudson.plugins.git.util.Build'><buildNumber>1246</buildNumber><marked><SHA1>762ac69a8087af8a7d2988094ab4943f538e8a04</SHA1><branch><SHA1>762ac69a8087af8a7d2988094ab4943f538e8a04</SHA1><name>origin/feat_daxie_patch</name></branch></marked><revision><SHA1>762ac69a8087af8a7d2988094ab4943f538e8a04</SHA1><branch><SHA1>762ac69a8087af8a7d2988094ab4943f538e8a04</SHA1><name>origin/feat_daxie_patch</name></branch></revision></originfeat_daxie_patch><originfeat_speed_lmt _class='hudson.plugins.git.util.Build'><buildNumber>433</buildNumber><marked><SHA1>510f3a0d45ae6290a9448ecf012dfe501b504a15</SHA1><branch><SHA1>510f3a0d45ae6290a9448ecf012dfe501b504a15</SHA1><name>origin/feat_speed_lmt</name></branch></marked><revision><SHA1>510f3a0d45ae6290a9448ecf012dfe501b504a15</SHA1><branch><SHA1>510f3a0d45ae6290a9448ecf012dfe501b504a15</SHA1><name>origin/feat_speed_lmt</name></branch></revision></originfeat_speed_lmt><originfeat_tc_v2_yangpu _class='hudson.plugins.git.util.Build'><buildNumber>1804</buildNumber><marked><SHA1>549daf0fc4e7c8f469ba1807acf334525ddb939b</SHA1><branch><SHA1>549daf0fc4e7c8f469ba1807acf334525ddb939b</SHA1><name>origin/feat_tc_v2_yangpu</name></branch></marked><revision><SHA1>549daf0fc4e7c8f469ba1807acf334525ddb939b</SHA1><branch><SHA1>549daf0fc4e7c8f469ba1807acf334525ddb939b</SHA1><name>origin/feat_tc_v2_yangpu</name></branch></revision></originfeat_tc_v2_yangpu><originrc_dev_xiasha _class='hudson.plugins.git.util.Build'><buildNumber>2076</buildNumber><marked><SHA1>fca3a20dd978a00f0568bbb02a49aff6fc1ffeb1</SHA1><branch><SHA1>fca3a20dd978a00f0568bbb02a49aff6fc1ffeb1</SHA1><name>origin/rc_dev_xiasha</name></branch></marked><revision><SHA1>fca3a20dd978a00f0568bbb02a49aff6fc1ffeb1</SHA1><branch><SHA1>fca3a20dd978a00f0568bbb02a49aff6fc1ffeb1</SHA1><name>origin/rc_dev_xiasha</name></branch></revision></originrc_dev_xiasha><originfeat_yard_lane_change _class='hudson.plugins.git.util.Build'><buildNumber>525</buildNumber><marked><SHA1>9c5267888fbed74808f7b7c3fa5beff157057207</SHA1><branch><SHA1>9c5267888fbed74808f7b7c3fa5beff157057207</SHA1><name>origin/feat_yard_lane_change</name></branch></marked><revision><SHA1>9c5267888fbed74808f7b7c3fa5beff157057207</SHA1><branch><SHA1>9c5267888fbed74808f7b7c3fa5beff157057207</SHA1><name>origin/feat_yard_lane_change</name></branch></revision></originfeat_yard_lane_change><originfeat_tc_v2_xiamen _class='hudson.plugins.git.util.Build'><buildNumber>2176</buildNumber><marked><SHA1>df329f0b0fe1fb2f0213fc2c6e790f48c58253e5</SHA1><branch><SHA1>df329f0b0fe1fb2f0213fc2c6e790f48c58253e5</SHA1><name>origin/feat_tc_v2_xiamen</name></branch></marked><revision><SHA1>df329f0b0fe1fb2f0213fc2c6e790f48c58253e5</SHA1><branch><SHA1>df329f0b0fe1fb2f0213fc2c6e790f48c58253e5</SHA1><name>origin/feat_tc_v2_xiamen</name></branch></revision></originfeat_tc_v2_xiamen><originrcdev_c9969b7 _class='hudson.plugins.git.util.Build'><buildNumber>289</buildNumber><marked><SHA1>24a5a27ac09f5c6d866b65ecdc9fee463be597cf</SHA1><branch><SHA1>24a5a27ac09f5c6d866b65ecdc9fee463be597cf</SHA1><name>origin/rcdev_c9969b7</name></branch></marked><revision><SHA1>24a5a27ac09f5c6d866b65ecdc9fee463be597cf</SHA1><branch><SHA1>24a5a27ac09f5c6d866b65ecdc9fee463be597cf</SHA1><name>origin/rcdev_c9969b7</name></branch></revision></originrcdev_c9969b7><originrc_dev_suxi _class='hudson.plugins.git.util.Build'><buildNumber>2172</buildNumber><marked><SHA1>19e0f13735cd065dc0507a9516ad10727decfb29</SHA1><branch><SHA1>19e0f13735cd065dc0507a9516ad10727decfb29</SHA1><name>origin/rc_dev_suxi</name></branch></marked><revision><SHA1>19e0f13735cd065dc0507a9516ad10727decfb29</SHA1><branch><SHA1>19e0f13735cd065dc0507a9516ad10727decfb29</SHA1><name>origin/rc_dev_suxi</name></branch></revision></originrc_dev_suxi><originrc_dev_taiyang_ctrl _class='hudson.plugins.git.util.Build'><buildNumber>1771</buildNumber><marked><SHA1>4ba1d6d39371013ba90023bb6ab4d337e8aa18a2</SHA1><branch><SHA1>4ba1d6d39371013ba90023bb6ab4d337e8aa18a2</SHA1><name>origin/rc_dev_taiyang_ctrl</name></branch></marked><revision><SHA1>4ba1d6d39371013ba90023bb6ab4d337e8aa18a2</SHA1><branch><SHA1>4ba1d6d39371013ba90023bb6ab4d337e8aa18a2</SHA1><name>origin/rc_dev_taiyang_ctrl</name></branch></revision></originrc_dev_taiyang_ctrl><originrc_dev_qingdaodagang _class='hudson.plugins.git.util.Build'><buildNumber>1260</buildNumber><marked><SHA1>6858447f1f5c9e880a747d653217350f3c4ea0a0</SHA1><branch><SHA1>6858447f1f5c9e880a747d653217350f3c4ea0a0</SHA1><name>origin/rc_dev_qingdaodagang</name></branch></marked><revision><SHA1>6858447f1f5c9e880a747d653217350f3c4ea0a0</SHA1><branch><SHA1>6858447f1f5c9e880a747d653217350f3c4ea0a0</SHA1><name>origin/rc_dev_qingdaodagang</name></branch></revision></originrc_dev_qingdaodagang><originrc_dev_baoshishun _class='hudson.plugins.git.util.Build'><buildNumber>2130</buildNumber><marked><SHA1>b080c3140afa34324a990cf86e60f3a92affb918</SHA1><branch><SHA1>b080c3140afa34324a990cf86e60f3a92affb918</SHA1><name>origin/rc_dev_baoshishun</name></branch></marked><revision><SHA1>b080c3140afa34324a990cf86e60f3a92affb918</SHA1><branch><SHA1>b080c3140afa34324a990cf86e60f3a92affb918</SHA1><name>origin/rc_dev_baoshishun</name></branch></revision></originrc_dev_baoshishun><originfeat-xilian _class='hudson.plugins.git.util.Build'><buildNumber>381</buildNumber><marked><SHA1>95f15a0454380530b0bf028c6917a34abaa43378</SHA1><branch><SHA1>95f15a0454380530b0bf028c6917a34abaa43378</SHA1><name>origin/feat-xilian</name></branch></marked><revision><SHA1>95f15a0454380530b0bf028c6917a34abaa43378</SHA1><branch><SHA1>95f15a0454380530b0bf028c6917a34abaa43378</SHA1><name>origin/feat-xilian</name></branch></revision></originfeat-xilian><originrc_dev_youyiguan _class='hudson.plugins.git.util.Build'><buildNumber>1977</buildNumber><marked><SHA1>1be039cfa092298ec02479636537b6550f1b9152</SHA1><branch><SHA1>1be039cfa092298ec02479636537b6550f1b9152</SHA1><name>origin/rc_dev_youyiguan</name></branch></marked><revision><SHA1>1be039cfa092298ec02479636537b6550f1b9152</SHA1><branch><SHA1>1be039cfa092298ec02479636537b6550f1b9152</SHA1><name>origin/rc_dev_youyiguan</name></branch></revision></originrc_dev_youyiguan><originrc_dev_tangshanjinxi _class='hudson.plugins.git.util.Build'><buildNumber>2175</buildNumber><marked><SHA1>1b306566b5e66a524235d5f2635d6ef234fcc6a8</SHA1><branch><SHA1>1b306566b5e66a524235d5f2635d6ef234fcc6a8</SHA1><name>origin/rc_dev_tangshanjinxi</name></branch></marked><revision><SHA1>1b306566b5e66a524235d5f2635d6ef234fcc6a8</SHA1><branch><SHA1>1b306566b5e66a524235d5f2635d6ef234fcc6a8</SHA1><name>origin/rc_dev_tangshanjinxi</name></branch></revision></originrc_dev_tangshanjinxi><originrc_dev_xiamen _class='hudson.plugins.git.util.Build'><buildNumber>1840</buildNumber><marked><SHA1>483fabd931605b5fe19a49de9f1cbbb1097f497b</SHA1><branch><SHA1>483fabd931605b5fe19a49de9f1cbbb1097f497b</SHA1><name>origin/rc_dev_xiamen</name></branch></marked><revision><SHA1>483fabd931605b5fe19a49de9f1cbbb1097f497b</SHA1><branch><SHA1>483fabd931605b5fe19a49de9f1cbbb1097f497b</SHA1><name>origin/rc_dev_xiamen</name></branch></revision></originrc_dev_xiamen><originrc_dev_weiqiao _class='hudson.plugins.git.util.Build'><buildNumber>2165</buildNumber><marked><SHA1>77e314b6ec1f478bfb91514c971c5d2c05d05744</SHA1><branch><SHA1>77e314b6ec1f478bfb91514c971c5d2c05d05744</SHA1><name>origin/rc_dev_weiqiao</name></branch></marked><revision><SHA1>77e314b6ec1f478bfb91514c971c5d2c05d05744</SHA1><branch><SHA1>77e314b6ec1f478bfb91514c971c5d2c05d05744</SHA1><name>origin/rc_dev_weiqiao</name></branch></revision></originrc_dev_weiqiao><originrc_dev_xilian _class='hudson.plugins.git.util.Build'><buildNumber>2102</buildNumber><marked><SHA1>f820c4ad43107c56f407831e44f6bc87cbbfff7f</SHA1><branch><SHA1>f820c4ad43107c56f407831e44f6bc87cbbfff7f</SHA1><name>origin/rc_dev_xilian</name></branch></marked><revision><SHA1>f820c4ad43107c56f407831e44f6bc87cbbfff7f</SHA1><branch><SHA1>f820c4ad43107c56f407831e44f6bc87cbbfff7f</SHA1><name>origin/rc_dev_xilian</name></branch></revision></originrc_dev_xilian><originfeat_monitor_frame _class='hudson.plugins.git.util.Build'><buildNumber>331</buildNumber><marked><SHA1>ca7c2a8369584e2797d47ddc5bcee2e7bc94013a</SHA1><branch><SHA1>ca7c2a8369584e2797d47ddc5bcee2e7bc94013a</SHA1><name>origin/feat_monitor_frame</name></branch></marked><revision><SHA1>ca7c2a8369584e2797d47ddc5bcee2e7bc94013a</SHA1><branch><SHA1>ca7c2a8369584e2797d47ddc5bcee2e7bc94013a</SHA1><name>origin/feat_monitor_frame</name></branch></revision></originfeat_monitor_frame><originrc_dev_yantaigunzhuang _class='hudson.plugins.git.util.Build'><buildNumber>2174</buildNumber><marked><SHA1>45405ae4f7f78b275cc6e9dd8f36cc2a220f9e37</SHA1><branch><SHA1>45405ae4f7f78b275cc6e9dd8f36cc2a220f9e37</SHA1><name>origin/rc_dev_yantaigunzhuang</name></branch></marked><revision><SHA1>45405ae4f7f78b275cc6e9dd8f36cc2a220f9e37</SHA1><branch><SHA1>45405ae4f7f78b275cc6e9dd8f36cc2a220f9e37</SHA1><name>origin/rc_dev_yantaigunzhuang</name></branch></revision></originrc_dev_yantaigunzhuang><originrc_dev_wuhanzhongtielianji _class='hudson.plugins.git.util.Build'><buildNumber>2166</buildNumber><marked><SHA1>548659540c3568147388dbcf79627429cb5288eb</SHA1><branch><SHA1>548659540c3568147388dbcf79627429cb5288eb</SHA1><name>origin/rc_dev_wuhanzhongtielianji</name></branch></marked><revision><SHA1>548659540c3568147388dbcf79627429cb5288eb</SHA1><branch><SHA1>548659540c3568147388dbcf79627429cb5288eb</SHA1><name>origin/rc_dev_wuhanzhongtielianji</name></branch></revision></originrc_dev_wuhanzhongtielianji><originrc_dev_weihai _class='hudson.plugins.git.util.Build'><buildNumber>2144</buildNumber><marked><SHA1>40c221ec332fa1e028f30da761372becdb391501</SHA1><branch><SHA1>40c221ec332fa1e028f30da761372becdb391501</SHA1><name>origin/rc_dev_weihai</name></branch></marked><revision><SHA1>40c221ec332fa1e028f30da761372becdb391501</SHA1><branch><SHA1>40c221ec332fa1e028f30da761372becdb391501</SHA1><name>origin/rc_dev_weihai</name></branch></revision></originrc_dev_weihai><originrc_dev_mandula _class='hudson.plugins.git.util.Build'><buildNumber>1348</buildNumber><marked><SHA1>fe3fc1534c53f91f596b9458776afd6d2364f0a2</SHA1><branch><SHA1>fe3fc1534c53f91f596b9458776afd6d2364f0a2</SHA1><name>origin/rc_dev_mandula</name></branch></marked><revision><SHA1>fe3fc1534c53f91f596b9458776afd6d2364f0a2</SHA1><branch><SHA1>fe3fc1534c53f91f596b9458776afd6d2364f0a2</SHA1><name>origin/rc_dev_mandula</name></branch></revision></originrc_dev_mandula><originfeat_suxi_oldtmp _class='hudson.plugins.git.util.Build'><buildNumber>2037</buildNumber><marked><SHA1>69d9a06f8c7221ce10c5d955a81fc9684aa206c3</SHA1><branch><SHA1>69d9a06f8c7221ce10c5d955a81fc9684aa206c3</SHA1><name>origin/feat_suxi_oldtmp</name></branch></marked><revision><SHA1>69d9a06f8c7221ce10c5d955a81fc9684aa206c3</SHA1><branch><SHA1>69d9a06f8c7221ce10c5d955a81fc9684aa206c3</SHA1><name>origin/feat_suxi_oldtmp</name></branch></revision></originfeat_suxi_oldtmp><originrc_dev_daxie _class='hudson.plugins.git.util.Build'><buildNumber>2158</buildNumber><marked><SHA1>5b4fc8786cda625874e52841a77c7984f7ec0e70</SHA1><branch><SHA1>5b4fc8786cda625874e52841a77c7984f7ec0e70</SHA1><name>origin/rc_dev_daxie</name></branch></marked><revision><SHA1>5b4fc8786cda625874e52841a77c7984f7ec0e70</SHA1><branch><SHA1>5b4fc8786cda625874e52841a77c7984f7ec0e70</SHA1><name>origin/rc_dev_daxie</name></branch></revision></originrc_dev_daxie><originfeat_qiangang _class='hudson.plugins.git.util.Build'><buildNumber>1184</buildNumber><marked><SHA1>289cda308241280b261706930b818b90420fcb5f</SHA1><branch><SHA1>289cda308241280b261706930b818b90420fcb5f</SHA1><name>origin/feat_qiangang</name></branch></marked><revision><SHA1>289cda308241280b261706930b818b90420fcb5f</SHA1><branch><SHA1>289cda308241280b261706930b818b90420fcb5f</SHA1><name>origin/feat_qiangang</name></branch></revision></originfeat_qiangang><originfeat-peripheral_op_state_aee7704c _class='hudson.plugins.git.util.Build'><buildNumber>109</buildNumber><marked><SHA1>aee7704cc51112ff34a8ad6cd572c220a21952d0</SHA1><branch><SHA1>aee7704cc51112ff34a8ad6cd572c220a21952d0</SHA1><name>origin/feat-peripheral_op_state_aee7704c</name></branch></marked><revision><SHA1>aee7704cc51112ff34a8ad6cd572c220a21952d0</SHA1><branch><SHA1>aee7704cc51112ff34a8ad6cd572c220a21952d0</SHA1><name>origin/feat-peripheral_op_state_aee7704c</name></branch></revision></originfeat-peripheral_op_state_aee7704c><originrc_dev_93cc60 _class='hudson.plugins.git.util.Build'><buildNumber>385</buildNumber><marked><SHA1>93cc602576f9f342ff85e9cc672a683b99db923b</SHA1><branch><SHA1>93cc602576f9f342ff85e9cc672a683b99db923b</SHA1><name>origin/rc_dev_93cc60</name></branch></marked><revision><SHA1>93cc602576f9f342ff85e9cc672a683b99db923b</SHA1><branch><SHA1>93cc602576f9f342ff85e9cc672a683b99db923b</SHA1><name>origin/rc_dev_93cc60</name></branch></revision></originrc_dev_93cc60><originfeat_mandula _class='hudson.plugins.git.util.Build'><buildNumber>742</buildNumber><marked><SHA1>da90fef6f7663bb03c4bdfcf266c45b4ec60499a</SHA1><branch><SHA1>da90fef6f7663bb03c4bdfcf266c45b4ec60499a</SHA1><name>origin/feat_mandula</name></branch></marked><revision><SHA1>da90fef6f7663bb03c4bdfcf266c45b4ec60499a</SHA1><branch><SHA1>da90fef6f7663bb03c4bdfcf266c45b4ec60499a</SHA1><name>origin/feat_mandula</name></branch></revision></originfeat_mandula><originfeat_suxi_patch _class='hudson.plugins.git.util.Build'><buildNumber>985</buildNumber><marked><SHA1>762ac69a8087af8a7d2988094ab4943f538e8a04</SHA1><branch><SHA1>762ac69a8087af8a7d2988094ab4943f538e8a04</SHA1><name>origin/feat_suxi_patch</name></branch></marked><revision><SHA1>762ac69a8087af8a7d2988094ab4943f538e8a04</SHA1><branch><SHA1>762ac69a8087af8a7d2988094ab4943f538e8a04</SHA1><name>origin/feat_suxi_patch</name></branch></revision></originfeat_suxi_patch><originfeat_tc_v2_qiangang _class='hudson.plugins.git.util.Build'><buildNumber>1793</buildNumber><marked><SHA1>bcbc5de637a9a70f2d4a3f32247a71a67dbfd4a0</SHA1><branch><SHA1>bcbc5de637a9a70f2d4a3f32247a71a67dbfd4a0</SHA1><name>origin/feat_tc_v2_qiangang</name></branch></marked><revision><SHA1>bcbc5de637a9a70f2d4a3f32247a71a67dbfd4a0</SHA1><branch><SHA1>bcbc5de637a9a70f2d4a3f32247a71a67dbfd4a0</SHA1><name>origin/feat_tc_v2_qiangang</name></branch></revision></originfeat_tc_v2_qiangang><originfeat_tc_v2_suxi _class='hudson.plugins.git.util.Build'><buildNumber>1812</buildNumber><marked><SHA1>eadbbf60c2f42f9cc816ea239eb5310f19bef058</SHA1><branch><SHA1>eadbbf60c2f42f9cc816ea239eb5310f19bef058</SHA1><name>origin/feat_tc_v2_suxi</name></branch></marked><revision><SHA1>eadbbf60c2f42f9cc816ea239eb5310f19bef058</SHA1><branch><SHA1>eadbbf60c2f42f9cc816ea239eb5310f19bef058</SHA1><name>origin/feat_tc_v2_suxi</name></branch></revision></originfeat_tc_v2_suxi><originrc_dev_jiningliangshangang _class='hudson.plugins.git.util.Build'><buildNumber>2103</buildNumber><marked><SHA1>f820c4ad43107c56f407831e44f6bc87cbbfff7f</SHA1><branch><SHA1>f820c4ad43107c56f407831e44f6bc87cbbfff7f</SHA1><name>origin/rc_dev_jiningliangshangang</name></branch></marked><revision><SHA1>f820c4ad43107c56f407831e44f6bc87cbbfff7f</SHA1><branch><SHA1>f820c4ad43107c56f407831e44f6bc87cbbfff7f</SHA1><name>origin/rc_dev_jiningliangshangang</name></branch></revision></originrc_dev_jiningliangshangang><originfeat-peripheral_qiangang_d5b225 _class='hudson.plugins.git.util.Build'><buildNumber>327</buildNumber><marked><SHA1>d5b2257a0fb952d19ad035f23b88df52bd27e9ff</SHA1><branch><SHA1>d5b2257a0fb952d19ad035f23b88df52bd27e9ff</SHA1><name>origin/feat-peripheral_qiangang_d5b225</name></branch></marked><revision><SHA1>d5b2257a0fb952d19ad035f23b88df52bd27e9ff</SHA1><branch><SHA1>d5b2257a0fb952d19ad035f23b88df52bd27e9ff</SHA1><name>origin/feat-peripheral_qiangang_d5b225</name></branch></revision></originfeat-peripheral_qiangang_d5b225><originrc_dev_shenqi _class='hudson.plugins.git.util.Build'><buildNumber>1450</buildNumber><marked><SHA1>31f70a912caef9f3c2e3745c0e9b19467b7ca967</SHA1><branch><SHA1>31f70a912caef9f3c2e3745c0e9b19467b7ca967</SHA1><name>origin/rc_dev_shenqi</name></branch></marked><revision><SHA1>31f70a912caef9f3c2e3745c0e9b19467b7ca967</SHA1><branch><SHA1>31f70a912caef9f3c2e3745c0e9b19467b7ca967</SHA1><name>origin/rc_dev_shenqi</name></branch></revision></originrc_dev_shenqi><originfeat_youyiguan_pnc_status _class='hudson.plugins.git.util.Build'><buildNumber>1630</buildNumber><marked><SHA1>b338fbf811a4f2c0c39e71ee62f18c35757f0b1d</SHA1><branch><SHA1>b338fbf811a4f2c0c39e71ee62f18c35757f0b1d</SHA1><name>origin/feat_youyiguan_pnc_status</name></branch></marked><revision><SHA1>b338fbf811a4f2c0c39e71ee62f18c35757f0b1d</SHA1><branch><SHA1>b338fbf811a4f2c0c39e71ee62f18c35757f0b1d</SHA1><name>origin/feat_youyiguan_pnc_status</name></branch></revision></originfeat_youyiguan_pnc_status><origindev_ros2 _class='hudson.plugins.git.util.Build'><buildNumber>2177</buildNumber><marked><SHA1>09e25f72706b8350a7a15258d8e2613a6e2d1a2b</SHA1><branch><SHA1>09e25f72706b8350a7a15258d8e2613a6e2d1a2b</SHA1><name>origin/dev_ros2</name></branch></marked><revision><SHA1>09e25f72706b8350a7a15258d8e2613a6e2d1a2b</SHA1><branch><SHA1>09e25f72706b8350a7a15258d8e2613a6e2d1a2b</SHA1><name>origin/dev_ros2</name></branch></revision></origindev_ros2><originrc_dev_youyiguan_test _class='hudson.plugins.git.util.Build'><buildNumber>1220</buildNumber><marked><SHA1>f62c9602eebae4706b4494e12452559212efb66a</SHA1><branch><SHA1>f62c9602eebae4706b4494e12452559212efb66a</SHA1><name>origin/rc_dev_youyiguan_test</name></branch></marked><revision><SHA1>f62c9602eebae4706b4494e12452559212efb66a</SHA1><branch><SHA1>f62c9602eebae4706b4494e12452559212efb66a</SHA1><name>origin/rc_dev_youyiguan_test</name></branch></revision></originrc_dev_youyiguan_test><originfeat_xilian_patch _class='hudson.plugins.git.util.Build'><buildNumber>1477</buildNumber><marked><SHA1>1e6c6aa34911755a34f4cc4acec03c6c30a2e604</SHA1><branch><SHA1>1e6c6aa34911755a34f4cc4acec03c6c30a2e604</SHA1><name>origin/feat_xilian_patch</name></branch></marked><revision><SHA1>1e6c6aa34911755a34f4cc4acec03c6c30a2e604</SHA1><branch><SHA1>1e6c6aa34911755a34f4cc4acec03c6c30a2e604</SHA1><name>origin/feat_xilian_patch</name></branch></revision></originfeat_xilian_patch><originrc_dev_184937 _class='hudson.plugins.git.util.Build'><buildNumber>876</buildNumber><marked><SHA1>184937840d35a83cb9158067f5fc65458db35e7a</SHA1><branch><SHA1>184937840d35a83cb9158067f5fc65458db35e7a</SHA1><name>origin/rc_dev_184937</name></branch></marked><revision><SHA1>184937840d35a83cb9158067f5fc65458db35e7a</SHA1><branch><SHA1>184937840d35a83cb9158067f5fc65458db35e7a</SHA1><name>origin/rc_dev_184937</name></branch></revision></originrc_dev_184937><originrc_dev_yangpu _class='hudson.plugins.git.util.Build'><buildNumber>2171</buildNumber><marked><SHA1>542b54142a97e21788a87fd638595d7b8f85e37f</SHA1><branch><SHA1>542b54142a97e21788a87fd638595d7b8f85e37f</SHA1><name>origin/rc_dev_yangpu</name></branch></marked><revision><SHA1>542b54142a97e21788a87fd638595d7b8f85e37f</SHA1><branch><SHA1>542b54142a97e21788a87fd638595d7b8f85e37f</SHA1><name>origin/rc_dev_yangpu</name></branch></revision></originrc_dev_yangpu><originfeat_tc_v2 _class='hudson.plugins.git.util.Build'><buildNumber>1938</buildNumber><marked><SHA1>b34e00e37e0d3a5818ba0ebb75422c11ae3b6b28</SHA1><branch><SHA1>b34e00e37e0d3a5818ba0ebb75422c11ae3b6b28</SHA1><name>origin/feat_tc_v2</name></branch></marked><revision><SHA1>b34e00e37e0d3a5818ba0ebb75422c11ae3b6b28</SHA1><branch><SHA1>b34e00e37e0d3a5818ba0ebb75422c11ae3b6b28</SHA1><name>origin/feat_tc_v2</name></branch></revision></originfeat_tc_v2><originrc_dev_weifang_container _class='hudson.plugins.git.util.Build'><buildNumber>2170</buildNumber><marked><SHA1>546ecdbcea2f86ee501ec1340a052e5751657754</SHA1><branch><SHA1>546ecdbcea2f86ee501ec1340a052e5751657754</SHA1><name>origin/rc_dev_weifang_container</name></branch></marked><revision><SHA1>546ecdbcea2f86ee501ec1340a052e5751657754</SHA1><branch><SHA1>546ecdbcea2f86ee501ec1340a052e5751657754</SHA1><name>origin/rc_dev_weifang_container</name></branch></revision></originrc_dev_weifang_container><originrc_dev_qiangang_config _class='hudson.plugins.git.util.Build'><buildNumber>2173</buildNumber><marked><SHA1>45ef1220ae218999449b078d0af2c8c9d4ea57bc</SHA1><branch><SHA1>45ef1220ae218999449b078d0af2c8c9d4ea57bc</SHA1><name>origin/rc_dev_qiangang_config</name></branch></marked><revision><SHA1>45ef1220ae218999449b078d0af2c8c9d4ea57bc</SHA1><branch><SHA1>45ef1220ae218999449b078d0af2c8c9d4ea57bc</SHA1><name>origin/rc_dev_qiangang_config</name></branch></revision></originrc_dev_qiangang_config><originrc_dev_luojing _class='hudson.plugins.git.util.Build'><buildNumber>2022</buildNumber><marked><SHA1>32334d000675a8e9faa66ac5b3334a4eb573a3fb</SHA1><branch><SHA1>32334d000675a8e9faa66ac5b3334a4eb573a3fb</SHA1><name>origin/rc_dev_luojing</name></branch></marked><revision><SHA1>32334d000675a8e9faa66ac5b3334a4eb573a3fb</SHA1><branch><SHA1>32334d000675a8e9faa66ac5b3334a4eb573a3fb</SHA1><name>origin/rc_dev_luojing</name></branch></revision></originrc_dev_luojing><originfeat_qiangang_side_pass _class='hudson.plugins.git.util.Build'><buildNumber>1676</buildNumber><marked><SHA1>0daa1f7f08156df5a55cf90342da631b318e2d3d</SHA1><branch><SHA1>0daa1f7f08156df5a55cf90342da631b318e2d3d</SHA1><name>origin/feat_qiangang_side_pass</name></branch></marked><revision><SHA1>0daa1f7f08156df5a55cf90342da631b318e2d3d</SHA1><branch><SHA1>0daa1f7f08156df5a55cf90342da631b318e2d3d</SHA1><name>origin/feat_qiangang_side_pass</name></branch></revision></originfeat_qiangang_side_pass><originrc_dev_jiaxingdongfangtegang _class='hudson.plugins.git.util.Build'><buildNumber>2168</buildNumber><marked><SHA1>f81898909167f9f8c7dee4f7367c611c2268d138</SHA1><branch><SHA1>f81898909167f9f8c7dee4f7367c611c2268d138</SHA1><name>origin/rc_dev_jiaxingdongfangtegang</name></branch></marked><revision><SHA1>f81898909167f9f8c7dee4f7367c611c2268d138</SHA1><branch><SHA1>f81898909167f9f8c7dee4f7367c611c2268d138</SHA1><name>origin/rc_dev_jiaxingdongfangtegang</name></branch></revision></originrc_dev_jiaxingdongfangtegang></buildsByBranchName><lastBuiltRevision><SHA1>09e25f72706b8350a7a15258d8e2613a6e2d1a2b</SHA1><branch><SHA1>09e25f72706b8350a7a15258d8e2613a6e2d1a2b</SHA1><name>origin/dev_ros2</name></branch></lastBuiltRevision><remoteUrl>http://159.27.226.4/shared/shared_msgs.git</remoteUrl><scmName></scmName></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><originfeat_truck_reverse_old _class='hudson.plugins.git.util.Build'><buildNumber>649</buildNumber><marked><SHA1>c3c62c1259448726e4fed5ee5e7696969b460623</SHA1><branch><SHA1>c3c62c1259448726e4fed5ee5e7696969b460623</SHA1><name>origin/feat_truck_reverse_old</name></branch></marked><revision><SHA1>c3c62c1259448726e4fed5ee5e7696969b460623</SHA1><branch><SHA1>c3c62c1259448726e4fed5ee5e7696969b460623</SHA1><name>origin/feat_truck_reverse_old</name></branch></revision></originfeat_truck_reverse_old><origintest_chongqing _class='hudson.plugins.git.util.Build'><buildNumber>2098</buildNumber><marked><SHA1>67db1a9a49b520b3867908ded72f67324ab3d22f</SHA1><branch><SHA1>67db1a9a49b520b3867908ded72f67324ab3d22f</SHA1><name>origin/test_chongqing</name></branch></marked><revision><SHA1>67db1a9a49b520b3867908ded72f67324ab3d22f</SHA1><branch><SHA1>67db1a9a49b520b3867908ded72f67324ab3d22f</SHA1><name>origin/test_chongqing</name></branch></revision></origintest_chongqing><originfeat_safety_check_xl _class='hudson.plugins.git.util.Build'><buildNumber>517</buildNumber><marked><SHA1>eba85868178acebed483c2d7c3fcfcc2836073d4</SHA1><branch><SHA1>eba85868178acebed483c2d7c3fcfcc2836073d4</SHA1><name>origin/feat_safety_check_xl</name></branch></marked><revision><SHA1>eba85868178acebed483c2d7c3fcfcc2836073d4</SHA1><branch><SHA1>eba85868178acebed483c2d7c3fcfcc2836073d4</SHA1><name>origin/feat_safety_check_xl</name></branch></revision></originfeat_safety_check_xl><origindev_log _class='hudson.plugins.git.util.Build'><buildNumber>92</buildNumber><marked><SHA1>7dfda59c1971723325dedb18473b9707099fc64f</SHA1><branch><SHA1>7dfda59c1971723325dedb18473b9707099fc64f</SHA1><name>origin/dev_log</name></branch></marked><revision><SHA1>7dfda59c1971723325dedb18473b9707099fc64f</SHA1><branch><SHA1>7dfda59c1971723325dedb18473b9707099fc64f</SHA1><name>origin/dev_log</name></branch></revision></origindev_log><originremote_control _class='hudson.plugins.git.util.Build'><buildNumber>106</buildNumber><marked><SHA1>f2659e2c7ebfe5acd5ce2af20af2985c13183208</SHA1><branch><SHA1>f2659e2c7ebfe5acd5ce2af20af2985c13183208</SHA1><name>origin/remote_control</name></branch></marked><revision><SHA1>f2659e2c7ebfe5acd5ce2af20af2985c13183208</SHA1><branch><SHA1>f2659e2c7ebfe5acd5ce2af20af2985c13183208</SHA1><name>origin/remote_control</name></branch></revision></originremote_control><originfeat_xl_park _class='hudson.plugins.git.util.Build'><buildNumber>190</buildNumber><marked><SHA1>b328ff7f08dfeea96983be75d14da25ce62380b5</SHA1><branch><SHA1>b328ff7f08dfeea96983be75d14da25ce62380b5</SHA1><name>origin/feat_xl_park</name></branch></marked><revision><SHA1>b328ff7f08dfeea96983be75d14da25ce62380b5</SHA1><branch><SHA1>b328ff7f08dfeea96983be75d14da25ce62380b5</SHA1><name>origin/feat_xl_park</name></branch></revision></originfeat_xl_park><origindev _class='hudson.plugins.git.util.Build'><buildNumber>888</buildNumber><marked><SHA1>bd6730672469a4c0ff0d9e2de8c3e7dffec58f45</SHA1><branch><SHA1>bd6730672469a4c0ff0d9e2de8c3e7dffec58f45</SHA1><name>origin/dev</name></branch></marked><revision><SHA1>bd6730672469a4c0ff0d9e2de8c3e7dffec58f45</SHA1><branch><SHA1>bd6730672469a4c0ff0d9e2de8c3e7dffec58f45</SHA1><name>origin/dev</name></branch></revision></origindev><originfeat_cargo_width _class='hudson.plugins.git.util.Build'><buildNumber>1323</buildNumber><marked><SHA1>f0087f099cc51505e90abfe5eadc282c256aeb3d</SHA1><branch><SHA1>f0087f099cc51505e90abfe5eadc282c256aeb3d</SHA1><name>origin/feat_cargo_width</name></branch></marked><revision><SHA1>f0087f099cc51505e90abfe5eadc282c256aeb3d</SHA1><branch><SHA1>f0087f099cc51505e90abfe5eadc282c256aeb3d</SHA1><name>origin/feat_cargo_width</name></branch></revision></originfeat_cargo_width><originfeat-path _class='hudson.plugins.git.util.Build'><buildNumber>337</buildNumber><marked><SHA1>a9ed65d4cecf986ce0901c28f2bb2ade49e25316</SHA1><branch><SHA1>a9ed65d4cecf986ce0901c28f2bb2ade49e25316</SHA1><name>origin/feat-path</name></branch></marked><revision><SHA1>a9ed65d4cecf986ce0901c28f2bb2ade49e25316</SHA1><branch><SHA1>a9ed65d4cecf986ce0901c28f2bb2ade49e25316</SHA1><name>origin/feat-path</name></branch></revision></originfeat-path><origintmp _class='hudson.plugins.git.util.Build'><buildNumber>364</buildNumber><marked><SHA1>343e9a939958ff74a579dbb08fa1f3dda8b14480</SHA1><branch><SHA1>343e9a939958ff74a579dbb08fa1f3dda8b14480</SHA1><name>origin/tmp</name></branch></marked><revision><SHA1>343e9a939958ff74a579dbb08fa1f3dda8b14480</SHA1><branch><SHA1>343e9a939958ff74a579dbb08fa1f3dda8b14480</SHA1><name>origin/tmp</name></branch></revision></origintmp><origintemp_hfsm _class='hudson.plugins.git.util.Build'><buildNumber>103</buildNumber><marked><SHA1>ddee85ec821243f9bd15fd2307b5e74763b61f78</SHA1><branch><SHA1>ddee85ec821243f9bd15fd2307b5e74763b61f78</SHA1><name>origin/temp_hfsm</name></branch></marked><revision><SHA1>ddee85ec821243f9bd15fd2307b5e74763b61f78</SHA1><branch><SHA1>ddee85ec821243f9bd15fd2307b5e74763b61f78</SHA1><name>origin/temp_hfsm</name></branch></revision></origintemp_hfsm><originfeat_daxie_1 _class='hudson.plugins.git.util.Build'><buildNumber>1114</buildNumber><marked><SHA1>3ad7410fd050bad1ba844127c2ac1869c3b9e96e</SHA1><branch><SHA1>3ad7410fd050bad1ba844127c2ac1869c3b9e96e</SHA1><name>origin/feat_daxie_1</name></branch></marked><revision><SHA1>3ad7410fd050bad1ba844127c2ac1869c3b9e96e</SHA1><branch><SHA1>3ad7410fd050bad1ba844127c2ac1869c3b9e96e</SHA1><name>origin/feat_daxie_1</name></branch></revision></originfeat_daxie_1><originfeat_keb_offboard_html _class='hudson.plugins.git.util.Build'><buildNumber>2130</buildNumber><marked><SHA1>f2008e75ef78e35e6a63d1c338ecb00f141d2769</SHA1><branch><SHA1>f2008e75ef78e35e6a63d1c338ecb00f141d2769</SHA1><name>origin/feat_keb_offboard_html</name></branch></marked><revision><SHA1>f2008e75ef78e35e6a63d1c338ecb00f141d2769</SHA1><branch><SHA1>f2008e75ef78e35e6a63d1c338ecb00f141d2769</SHA1><name>origin/feat_keb_offboard_html</name></branch></revision></originfeat_keb_offboard_html><origindaxie_lane_change _class='hudson.plugins.git.util.Build'><buildNumber>705</buildNumber><marked><SHA1>c38300b97f751a000c01dac554ddc08079b115a5</SHA1><branch><SHA1>c38300b97f751a000c01dac554ddc08079b115a5</SHA1><name>origin/daxie_lane_change</name></branch></marked><revision><SHA1>c38300b97f751a000c01dac554ddc08079b115a5</SHA1><branch><SHA1>c38300b97f751a000c01dac554ddc08079b115a5</SHA1><name>origin/daxie_lane_change</name></branch></revision></origindaxie_lane_change><originfeat_qg_ssep _class='hudson.plugins.git.util.Build'><buildNumber>615</buildNumber><marked><SHA1>f6a4cff1ffa71f8fcb152307b12550b9beb14457</SHA1><branch><SHA1>f6a4cff1ffa71f8fcb152307b12550b9beb14457</SHA1><name>origin/feat_qg_ssep</name></branch></marked><revision><SHA1>f6a4cff1ffa71f8fcb152307b12550b9beb14457</SHA1><branch><SHA1>f6a4cff1ffa71f8fcb152307b12550b9beb14457</SHA1><name>origin/feat_qg_ssep</name></branch></revision></originfeat_qg_ssep><originfeat_yp_LD _class='hudson.plugins.git.util.Build'><buildNumber>1464</buildNumber><marked><SHA1>5096ef765bd12a34104c0eaface2ed4771e89c42</SHA1><branch><SHA1>5096ef765bd12a34104c0eaface2ed4771e89c42</SHA1><name>origin/feat_yp_LD</name></branch></marked><revision><SHA1>5096ef765bd12a34104c0eaface2ed4771e89c42</SHA1><branch><SHA1>5096ef765bd12a34104c0eaface2ed4771e89c42</SHA1><name>origin/feat_yp_LD</name></branch></revision></originfeat_yp_LD><originfeat_xilian_speed_limit _class='hudson.plugins.git.util.Build'><buildNumber>328</buildNumber><marked><SHA1>0880da9730cce8b9668b50ca9ea83254e6342878</SHA1><branch><SHA1>0880da9730cce8b9668b50ca9ea83254e6342878</SHA1><name>origin/feat_xilian_speed_limit</name></branch></marked><revision><SHA1>0880da9730cce8b9668b50ca9ea83254e6342878</SHA1><branch><SHA1>0880da9730cce8b9668b50ca9ea83254e6342878</SHA1><name>origin/feat_xilian_speed_limit</name></branch></revision></originfeat_xilian_speed_limit><origintest_movestep_safe _class='hudson.plugins.git.util.Build'><buildNumber>1957</buildNumber><marked><SHA1>a9e7e536dc43036d73cdf31b265021a8721d55b6</SHA1><branch><SHA1>a9e7e536dc43036d73cdf31b265021a8721d55b6</SHA1><name>origin/test_movestep_safe</name></branch></marked><revision><SHA1>a9e7e536dc43036d73cdf31b265021a8721d55b6</SHA1><branch><SHA1>a9e7e536dc43036d73cdf31b265021a8721d55b6</SHA1><name>origin/test_movestep_safe</name></branch></revision></origintest_movestep_safe><originfeat_hdmap_dynamic_sidepass _class='hudson.plugins.git.util.Build'><buildNumber>387</buildNumber><marked><SHA1>42ac720f59648f1626e92b9897cf793e3f34f893</SHA1><branch><SHA1>42ac720f59648f1626e92b9897cf793e3f34f893</SHA1><name>origin/feat_hdmap_dynamic_sidepass</name></branch></marked><revision><SHA1>42ac720f59648f1626e92b9897cf793e3f34f893</SHA1><branch><SHA1>42ac720f59648f1626e92b9897cf793e3f34f893</SHA1><name>origin/feat_hdmap_dynamic_sidepass</name></branch></revision></originfeat_hdmap_dynamic_sidepass><originfeat_seaside _class='hudson.plugins.git.util.Build'><buildNumber>855</buildNumber><marked><SHA1>32572e0a5cf080be0a5f9b0166321401a2c65b60</SHA1><branch><SHA1>32572e0a5cf080be0a5f9b0166321401a2c65b60</SHA1><name>origin/feat_seaside</name></branch></marked><revision><SHA1>32572e0a5cf080be0a5f9b0166321401a2c65b60</SHA1><branch><SHA1>32572e0a5cf080be0a5f9b0166321401a2c65b60</SHA1><name>origin/feat_seaside</name></branch></revision></originfeat_seaside><originfeat_remote _class='hudson.plugins.git.util.Build'><buildNumber>1257</buildNumber><marked><SHA1>82b6c62336e681fa911b2f8b86cb34bbcf29642f</SHA1><branch><SHA1>82b6c62336e681fa911b2f8b86cb34bbcf29642f</SHA1><name>origin/feat_remote</name></branch></marked><revision><SHA1>82b6c62336e681fa911b2f8b86cb34bbcf29642f</SHA1><branch><SHA1>82b6c62336e681fa911b2f8b86cb34bbcf29642f</SHA1><name>origin/feat_remote</name></branch></revision></originfeat_remote><originfeat_destination_type _class='hudson.plugins.git.util.Build'><buildNumber>135</buildNumber><marked><SHA1>b51cc7e3e3d9d3aa46f780b17d3a38e68a9d43b5</SHA1><branch><SHA1>b51cc7e3e3d9d3aa46f780b17d3a38e68a9d43b5</SHA1><name>origin/feat_destination_type</name></branch></marked><revision><SHA1>b51cc7e3e3d9d3aa46f780b17d3a38e68a9d43b5</SHA1><branch><SHA1>b51cc7e3e3d9d3aa46f780b17d3a38e68a9d43b5</SHA1><name>origin/feat_destination_type</name></branch></revision></originfeat_destination_type><originfeat_new_lka _class='hudson.plugins.git.util.Build'><buildNumber>725</buildNumber><marked><SHA1>a5ddf2bf4bb5d3d6c0645f5dc27979824425bfbf</SHA1><branch><SHA1>a5ddf2bf4bb5d3d6c0645f5dc27979824425bfbf</SHA1><name>origin/feat_new_lka</name></branch></marked><revision><SHA1>a5ddf2bf4bb5d3d6c0645f5dc27979824425bfbf</SHA1><branch><SHA1>a5ddf2bf4bb5d3d6c0645f5dc27979824425bfbf</SHA1><name>origin/feat_new_lka</name></branch></revision></originfeat_new_lka><originfeat_chassis_err _class='hudson.plugins.git.util.Build'><buildNumber>257</buildNumber><marked><SHA1>1b3a0efd43c6f5750340d80aad3f191373ddf48f</SHA1><branch><SHA1>1b3a0efd43c6f5750340d80aad3f191373ddf48f</SHA1><name>origin/feat_chassis_err</name></branch></marked><revision><SHA1>1b3a0efd43c6f5750340d80aad3f191373ddf48f</SHA1><branch><SHA1>1b3a0efd43c6f5750340d80aad3f191373ddf48f</SHA1><name>origin/feat_chassis_err</name></branch></revision></originfeat_chassis_err><originfeat_entrance _class='hudson.plugins.git.util.Build'><buildNumber>1211</buildNumber><marked><SHA1>c7d55549d1fa29cc760a8efdb29a40e01d6d9147</SHA1><branch><SHA1>c7d55549d1fa29cc760a8efdb29a40e01d6d9147</SHA1><name>origin/feat_entrance</name></branch></marked><revision><SHA1>c7d55549d1fa29cc760a8efdb29a40e01d6d9147</SHA1><branch><SHA1>c7d55549d1fa29cc760a8efdb29a40e01d6d9147</SHA1><name>origin/feat_entrance</name></branch></revision></originfeat_entrance><originfeat_yangpu1 _class='hudson.plugins.git.util.Build'><buildNumber>1852</buildNumber><marked><SHA1>fcb1fdf1c53233f194b8e9f1689ec363d96b4305</SHA1><branch><SHA1>fcb1fdf1c53233f194b8e9f1689ec363d96b4305</SHA1><name>origin/feat_yangpu1</name></branch></marked><revision><SHA1>fcb1fdf1c53233f194b8e9f1689ec363d96b4305</SHA1><branch><SHA1>fcb1fdf1c53233f194b8e9f1689ec363d96b4305</SHA1><name>origin/feat_yangpu1</name></branch></revision></originfeat_yangpu1><origincl_action_type _class='hudson.plugins.git.util.Build'><buildNumber>239</buildNumber><marked><SHA1>e6a438b106a2477add9de57f4f989471f7f9cbc3</SHA1><branch><SHA1>e6a438b106a2477add9de57f4f989471f7f9cbc3</SHA1><name>origin/cl_action_type</name></branch></marked><revision><SHA1>e6a438b106a2477add9de57f4f989471f7f9cbc3</SHA1><branch><SHA1>e6a438b106a2477add9de57f4f989471f7f9cbc3</SHA1><name>origin/cl_action_type</name></branch></revision></origincl_action_type><originfeat_qg_LD _class='hudson.plugins.git.util.Build'><buildNumber>1074</buildNumber><marked><SHA1>e57fe3ca793b6a61fc10de0c24e2ccf524d99813</SHA1><branch><SHA1>e57fe3ca793b6a61fc10de0c24e2ccf524d99813</SHA1><name>origin/feat_qg_LD</name></branch></marked><revision><SHA1>e57fe3ca793b6a61fc10de0c24e2ccf524d99813</SHA1><branch><SHA1>e57fe3ca793b6a61fc10de0c24e2ccf524d99813</SHA1><name>origin/feat_qg_LD</name></branch></revision></originfeat_qg_LD><originfeat_bulk_target _class='hudson.plugins.git.util.Build'><buildNumber>380</buildNumber><marked><SHA1>0c20e4b451ce1fc8c5e1601a83aa468afcc7c3d0</SHA1><branch><SHA1>0c20e4b451ce1fc8c5e1601a83aa468afcc7c3d0</SHA1><name>origin/feat_bulk_target</name></branch></marked><revision><SHA1>0c20e4b451ce1fc8c5e1601a83aa468afcc7c3d0</SHA1><branch><SHA1>0c20e4b451ce1fc8c5e1601a83aa468afcc7c3d0</SHA1><name>origin/feat_bulk_target</name></branch></revision></originfeat_bulk_target><originfeat_truck_reverse_tmp _class='hudson.plugins.git.util.Build'><buildNumber>711</buildNumber><marked><SHA1>a1c5943493421474ff3e42146b128ba57c28b486</SHA1><branch><SHA1>a1c5943493421474ff3e42146b128ba57c28b486</SHA1><name>origin/feat_truck_reverse_tmp</name></branch></marked><revision><SHA1>a1c5943493421474ff3e42146b128ba57c28b486</SHA1><branch><SHA1>a1c5943493421474ff3e42146b128ba57c28b486</SHA1><name>origin/feat_truck_reverse_tmp</name></branch></revision></originfeat_truck_reverse_tmp><originfeat_pnc_target _class='hudson.plugins.git.util.Build'><buildNumber>672</buildNumber><marked><SHA1>1a53d5a00fd45c684e78b66d519f642beee50fb7</SHA1><branch><SHA1>1a53d5a00fd45c684e78b66d519f642beee50fb7</SHA1><name>origin/feat_pnc_target</name></branch></marked><revision><SHA1>1a53d5a00fd45c684e78b66d519f642beee50fb7</SHA1><branch><SHA1>1a53d5a00fd45c684e78b66d519f642beee50fb7</SHA1><name>origin/feat_pnc_target</name></branch></revision></originfeat_pnc_target><originfeat_task _class='hudson.plugins.git.util.Build'><buildNumber>2030</buildNumber><marked><SHA1>dbfe05f83bac1eb0159e06d9a0382522d3afa3d0</SHA1><branch><SHA1>dbfe05f83bac1eb0159e06d9a0382522d3afa3d0</SHA1><name>origin/feat_task</name></branch></marked><revision><SHA1>dbfe05f83bac1eb0159e06d9a0382522d3afa3d0</SHA1><branch><SHA1>dbfe05f83bac1eb0159e06d9a0382522d3afa3d0</SHA1><name>origin/feat_task</name></branch></revision></originfeat_task><originfeat_ssep_wbca_2 _class='hudson.plugins.git.util.Build'><buildNumber>869</buildNumber><marked><SHA1>031678cb50ea58b10b2d14e027c86a97487b8a20</SHA1><branch><SHA1>031678cb50ea58b10b2d14e027c86a97487b8a20</SHA1><name>origin/feat_ssep_wbca_2</name></branch></marked><revision><SHA1>031678cb50ea58b10b2d14e027c86a97487b8a20</SHA1><branch><SHA1>031678cb50ea58b10b2d14e027c86a97487b8a20</SHA1><name>origin/feat_ssep_wbca_2</name></branch></revision></originfeat_ssep_wbca_2><originfeat_target _class='hudson.plugins.git.util.Build'><buildNumber>812</buildNumber><marked><SHA1>a713ad7789ccfa7445b4d39ed2eea3948aa5cd31</SHA1><branch><SHA1>a713ad7789ccfa7445b4d39ed2eea3948aa5cd31</SHA1><name>origin/feat_target</name></branch></marked><revision><SHA1>a713ad7789ccfa7445b4d39ed2eea3948aa5cd31</SHA1><branch><SHA1>a713ad7789ccfa7445b4d39ed2eea3948aa5cd31</SHA1><name>origin/feat_target</name></branch></revision></originfeat_target><originfeat_qianggang_refactor_base _class='hudson.plugins.git.util.Build'><buildNumber>1347</buildNumber><marked><SHA1>85b0e015f22a97ba8a1152c12fed667f3f594ac4</SHA1><branch><SHA1>85b0e015f22a97ba8a1152c12fed667f3f594ac4</SHA1><name>origin/feat_qianggang_refactor_base</name></branch></marked><revision><SHA1>85b0e015f22a97ba8a1152c12fed667f3f594ac4</SHA1><branch><SHA1>85b0e015f22a97ba8a1152c12fed667f3f594ac4</SHA1><name>origin/feat_qianggang_refactor_base</name></branch></revision></originfeat_qianggang_refactor_base><originfeat_align _class='hudson.plugins.git.util.Build'><buildNumber>424</buildNumber><marked><SHA1>ebbef1a1b30c3bae3cbffdcfbdf64dc7fe22a736</SHA1><branch><SHA1>ebbef1a1b30c3bae3cbffdcfbdf64dc7fe22a736</SHA1><name>origin/feat_align</name></branch></marked><revision><SHA1>ebbef1a1b30c3bae3cbffdcfbdf64dc7fe22a736</SHA1><branch><SHA1>ebbef1a1b30c3bae3cbffdcfbdf64dc7fe22a736</SHA1><name>origin/feat_align</name></branch></revision></originfeat_align><originfeat_below_plane_test _class='hudson.plugins.git.util.Build'><buildNumber>801</buildNumber><marked><SHA1>5c08d2adecb053192a885f7a03148f9254fe0db9</SHA1><branch><SHA1>5c08d2adecb053192a885f7a03148f9254fe0db9</SHA1><name>origin/feat_below_plane_test</name></branch></marked><revision><SHA1>5c08d2adecb053192a885f7a03148f9254fe0db9</SHA1><branch><SHA1>5c08d2adecb053192a885f7a03148f9254fe0db9</SHA1><name>origin/feat_below_plane_test</name></branch></revision></originfeat_below_plane_test><originfeat_trajectory _class='hudson.plugins.git.util.Build'><buildNumber>2011</buildNumber><marked><SHA1>779b6d5d34b3277c91752798ba87f7f422e9db60</SHA1><branch><SHA1>779b6d5d34b3277c91752798ba87f7f422e9db60</SHA1><name>origin/feat_trajectory</name></branch></marked><revision><SHA1>779b6d5d34b3277c91752798ba87f7f422e9db60</SHA1><branch><SHA1>779b6d5d34b3277c91752798ba87f7f422e9db60</SHA1><name>origin/feat_trajectory</name></branch></revision></originfeat_trajectory><originfeat_below_plane _class='hudson.plugins.git.util.Build'><buildNumber>821</buildNumber><marked><SHA1>4b71eab7a509abe41326ffcf34f7fa8b9c6e5171</SHA1><branch><SHA1>4b71eab7a509abe41326ffcf34f7fa8b9c6e5171</SHA1><name>origin/feat_below_plane</name></branch></marked><revision><SHA1>4b71eab7a509abe41326ffcf34f7fa8b9c6e5171</SHA1><branch><SHA1>4b71eab7a509abe41326ffcf34f7fa8b9c6e5171</SHA1><name>origin/feat_below_plane</name></branch></revision></originfeat_below_plane><originfeat_ros2_raw _class='hudson.plugins.git.util.Build'><buildNumber>2069</buildNumber><marked><SHA1>d5c2906f9643bbd187a340e0c7d97ab36c06f008</SHA1><branch><SHA1>d5c2906f9643bbd187a340e0c7d97ab36c06f008</SHA1><name>origin/feat_ros2_raw</name></branch></marked><revision><SHA1>d5c2906f9643bbd187a340e0c7d97ab36c06f008</SHA1><branch><SHA1>d5c2906f9643bbd187a340e0c7d97ab36c06f008</SHA1><name>origin/feat_ros2_raw</name></branch></revision></originfeat_ros2_raw><originfeat_error_2 _class='hudson.plugins.git.util.Build'><buildNumber>1702</buildNumber><marked><SHA1>dc5ce83a9372df1190690218ce64fd1058bcc3f3</SHA1><branch><SHA1>dc5ce83a9372df1190690218ce64fd1058bcc3f3</SHA1><name>origin/feat_error_2</name></branch></marked><revision><SHA1>dc5ce83a9372df1190690218ce64fd1058bcc3f3</SHA1><branch><SHA1>dc5ce83a9372df1190690218ce64fd1058bcc3f3</SHA1><name>origin/feat_error_2</name></branch></revision></originfeat_error_2><originfeat_RVM_expanding _class='hudson.plugins.git.util.Build'><buildNumber>57</buildNumber><marked><SHA1>6c5ba460a973c6efb925c1b8ac0c0c66ae67382d</SHA1><branch><SHA1>6c5ba460a973c6efb925c1b8ac0c0c66ae67382d</SHA1><name>origin/feat_RVM_expanding</name></branch></marked><revision><SHA1>6c5ba460a973c6efb925c1b8ac0c0c66ae67382d</SHA1><branch><SHA1>6c5ba460a973c6efb925c1b8ac0c0c66ae67382d</SHA1><name>origin/feat_RVM_expanding</name></branch></revision></originfeat_RVM_expanding><originfeat_xilian _class='hudson.plugins.git.util.Build'><buildNumber>1786</buildNumber><marked><SHA1>d97fcd10176d05afcd939eb6c9b52410b911ec04</SHA1><branch><SHA1>d97fcd10176d05afcd939eb6c9b52410b911ec04</SHA1><name>origin/feat_xilian</name></branch></marked><revision><SHA1>d97fcd10176d05afcd939eb6c9b52410b911ec04</SHA1><branch><SHA1>d97fcd10176d05afcd939eb6c9b52410b911ec04</SHA1><name>origin/feat_xilian</name></branch></revision></originfeat_xilian><originfeat_remote_open_space _class='hudson.plugins.git.util.Build'><buildNumber>1223</buildNumber><marked><SHA1>890fc6e47593fa42eabdbfd10df1090d3e21670d</SHA1><branch><SHA1>890fc6e47593fa42eabdbfd10df1090d3e21670d</SHA1><name>origin/feat_remote_open_space</name></branch></marked><revision><SHA1>890fc6e47593fa42eabdbfd10df1090d3e21670d</SHA1><branch><SHA1>890fc6e47593fa42eabdbfd10df1090d3e21670d</SHA1><name>origin/feat_remote_open_space</name></branch></revision></originfeat_remote_open_space><originfix_creep _class='hudson.plugins.git.util.Build'><buildNumber>298</buildNumber><marked><SHA1>40037b22796a0a57a1a9532f8dee6f81a1dea48c</SHA1><branch><SHA1>40037b22796a0a57a1a9532f8dee6f81a1dea48c</SHA1><name>origin/fix_creep</name></branch></marked><revision><SHA1>40037b22796a0a57a1a9532f8dee6f81a1dea48c</SHA1><branch><SHA1>40037b22796a0a57a1a9532f8dee6f81a1dea48c</SHA1><name>origin/fix_creep</name></branch></revision></originfix_creep><origindevel_ex_obj _class='hudson.plugins.git.util.Build'><buildNumber>161</buildNumber><marked><SHA1>784da86120c574a6c6eadaf2a1363b0bdd7ddd85</SHA1><branch><SHA1>784da86120c574a6c6eadaf2a1363b0bdd7ddd85</SHA1><name>origin/devel_ex_obj</name></branch></marked><revision><SHA1>784da86120c574a6c6eadaf2a1363b0bdd7ddd85</SHA1><branch><SHA1>784da86120c574a6c6eadaf2a1363b0bdd7ddd85</SHA1><name>origin/devel_ex_obj</name></branch></revision></origindevel_ex_obj><originfeat_trajectory_daxie _class='hudson.plugins.git.util.Build'><buildNumber>1726</buildNumber><marked><SHA1>97510c1a0394a537514724012f825fff6cf0f49e</SHA1><branch><SHA1>97510c1a0394a537514724012f825fff6cf0f49e</SHA1><name>origin/feat_trajectory_daxie</name></branch></marked><revision><SHA1>97510c1a0394a537514724012f825fff6cf0f49e</SHA1><branch><SHA1>97510c1a0394a537514724012f825fff6cf0f49e</SHA1><name>origin/feat_trajectory_daxie</name></branch></revision></originfeat_trajectory_daxie><originfeat_wbca_qp_search _class='hudson.plugins.git.util.Build'><buildNumber>664</buildNumber><marked><SHA1>a4f845451bbc421516777aa6574936377cfe8d52</SHA1><branch><SHA1>a4f845451bbc421516777aa6574936377cfe8d52</SHA1><name>origin/feat_wbca_qp_search</name></branch></marked><revision><SHA1>a4f845451bbc421516777aa6574936377cfe8d52</SHA1><branch><SHA1>a4f845451bbc421516777aa6574936377cfe8d52</SHA1><name>origin/feat_wbca_qp_search</name></branch></revision></originfeat_wbca_qp_search><originfeat_new_lka_v2 _class='hudson.plugins.git.util.Build'><buildNumber>798</buildNumber><marked><SHA1>72c21aeb73707ea3f17e9ad2a4180f5b6643bfdc</SHA1><branch><SHA1>72c21aeb73707ea3f17e9ad2a4180f5b6643bfdc</SHA1><name>origin/feat_new_lka_v2</name></branch></marked><revision><SHA1>72c21aeb73707ea3f17e9ad2a4180f5b6643bfdc</SHA1><branch><SHA1>72c21aeb73707ea3f17e9ad2a4180f5b6643bfdc</SHA1><name>origin/feat_new_lka_v2</name></branch></revision></originfeat_new_lka_v2><originfeat_youyiguan _class='hudson.plugins.git.util.Build'><buildNumber>1397</buildNumber><marked><SHA1>110f4bfd572e283acf213ad889de68e09a12e780</SHA1><branch><SHA1>110f4bfd572e283acf213ad889de68e09a12e780</SHA1><name>origin/feat_youyiguan</name></branch></marked><revision><SHA1>110f4bfd572e283acf213ad889de68e09a12e780</SHA1><branch><SHA1>110f4bfd572e283acf213ad889de68e09a12e780</SHA1><name>origin/feat_youyiguan</name></branch></revision></originfeat_youyiguan><originfeat_daxie_proto _class='hudson.plugins.git.util.Build'><buildNumber>2175</buildNumber><marked><SHA1>cb853a183306ecdff3da4e1e3653dd405d06582a</SHA1><branch><SHA1>cb853a183306ecdff3da4e1e3653dd405d06582a</SHA1><name>origin/feat_daxie_proto</name></branch></marked><revision><SHA1>cb853a183306ecdff3da4e1e3653dd405d06582a</SHA1><branch><SHA1>cb853a183306ecdff3da4e1e3653dd405d06582a</SHA1><name>origin/feat_daxie_proto</name></branch></revision></originfeat_daxie_proto><origintmp_LD4_snapshot _class='hudson.plugins.git.util.Build'><buildNumber>124</buildNumber><marked><SHA1>726604b957bcad12703a6eee4ae7a0acbf96ae28</SHA1><branch><SHA1>726604b957bcad12703a6eee4ae7a0acbf96ae28</SHA1><name>origin/tmp_LD4_snapshot</name></branch></marked><revision><SHA1>726604b957bcad12703a6eee4ae7a0acbf96ae28</SHA1><branch><SHA1>726604b957bcad12703a6eee4ae7a0acbf96ae28</SHA1><name>origin/tmp_LD4_snapshot</name></branch></revision></origintmp_LD4_snapshot><origintest_pedestrian_alarm _class='hudson.plugins.git.util.Build'><buildNumber>1909</buildNumber><marked><SHA1>79cd4db36725f9448b1958bbd064348b81c5045b</SHA1><branch><SHA1>79cd4db36725f9448b1958bbd064348b81c5045b</SHA1><name>origin/test_pedestrian_alarm</name></branch></marked><revision><SHA1>79cd4db36725f9448b1958bbd064348b81c5045b</SHA1><branch><SHA1>79cd4db36725f9448b1958bbd064348b81c5045b</SHA1><name>origin/test_pedestrian_alarm</name></branch></revision></origintest_pedestrian_alarm><originfeat_sq_LD _class='hudson.plugins.git.util.Build'><buildNumber>1450</buildNumber><marked><SHA1>f5b7dfe8a9ee3b369eca07ed87fafb8f866ec2a4</SHA1><branch><SHA1>f5b7dfe8a9ee3b369eca07ed87fafb8f866ec2a4</SHA1><name>origin/feat_sq_LD</name></branch></marked><revision><SHA1>f5b7dfe8a9ee3b369eca07ed87fafb8f866ec2a4</SHA1><branch><SHA1>f5b7dfe8a9ee3b369eca07ed87fafb8f866ec2a4</SHA1><name>origin/feat_sq_LD</name></branch></revision></originfeat_sq_LD><originfeat_sidepass_decider _class='hudson.plugins.git.util.Build'><buildNumber>2092</buildNumber><marked><SHA1>5e850185f8ec461f7475603e6a0859aeb500a014</SHA1><branch><SHA1>5e850185f8ec461f7475603e6a0859aeb500a014</SHA1><name>origin/feat_sidepass_decider</name></branch></marked><revision><SHA1>5e850185f8ec461f7475603e6a0859aeb500a014</SHA1><branch><SHA1>5e850185f8ec461f7475603e6a0859aeb500a014</SHA1><name>origin/feat_sidepass_decider</name></branch></revision></originfeat_sidepass_decider><originfeat_block _class='hudson.plugins.git.util.Build'><buildNumber>331</buildNumber><marked><SHA1>2bd196c123c11d415e32023df4f795f28a62e2db</SHA1><branch><SHA1>2bd196c123c11d415e32023df4f795f28a62e2db</SHA1><name>origin/feat_block</name></branch></marked><revision><SHA1>2bd196c123c11d415e32023df4f795f28a62e2db</SHA1><branch><SHA1>2bd196c123c11d415e32023df4f795f28a62e2db</SHA1><name>origin/feat_block</name></branch></revision></originfeat_block><originfeat_bend_decider _class='hudson.plugins.git.util.Build'><buildNumber>150</buildNumber><marked><SHA1>a723f7f5bcc15bc8b355c7460f5023308b438b98</SHA1><branch><SHA1>a723f7f5bcc15bc8b355c7460f5023308b438b98</SHA1><name>origin/feat_bend_decider</name></branch></marked><revision><SHA1>a723f7f5bcc15bc8b355c7460f5023308b438b98</SHA1><branch><SHA1>a723f7f5bcc15bc8b355c7460f5023308b438b98</SHA1><name>origin/feat_bend_decider</name></branch></revision></originfeat_bend_decider><originfeat_lattice_ref_speed _class='hudson.plugins.git.util.Build'><buildNumber>1977</buildNumber><marked><SHA1>bf1d65551bf9244e374ab05672fb4a86190c2958</SHA1><branch><SHA1>bf1d65551bf9244e374ab05672fb4a86190c2958</SHA1><name>origin/feat_lattice_ref_speed</name></branch></marked><revision><SHA1>bf1d65551bf9244e374ab05672fb4a86190c2958</SHA1><branch><SHA1>bf1d65551bf9244e374ab05672fb4a86190c2958</SHA1><name>origin/feat_lattice_ref_speed</name></branch></revision></originfeat_lattice_ref_speed><originfeat_wbca _class='hudson.plugins.git.util.Build'><buildNumber>826</buildNumber><marked><SHA1>54df14224af0595694e9cbb8bf44e084f28e8a3f</SHA1><branch><SHA1>54df14224af0595694e9cbb8bf44e084f28e8a3f</SHA1><name>origin/feat_wbca</name></branch></marked><revision><SHA1>54df14224af0595694e9cbb8bf44e084f28e8a3f</SHA1><branch><SHA1>54df14224af0595694e9cbb8bf44e084f28e8a3f</SHA1><name>origin/feat_wbca</name></branch></revision></originfeat_wbca><originfeat_qg_speed_up _class='hudson.plugins.git.util.Build'><buildNumber>1253</buildNumber><marked><SHA1>b0b5b8e15daf690eea56c5e9ca9ffcbf663c5868</SHA1><branch><SHA1>b0b5b8e15daf690eea56c5e9ca9ffcbf663c5868</SHA1><name>origin/feat_qg_speed_up</name></branch></marked><revision><SHA1>b0b5b8e15daf690eea56c5e9ca9ffcbf663c5868</SHA1><branch><SHA1>b0b5b8e15daf690eea56c5e9ca9ffcbf663c5868</SHA1><name>origin/feat_qg_speed_up</name></branch></revision></originfeat_qg_speed_up><originfeat_hfsm_direction _class='hudson.plugins.git.util.Build'><buildNumber>126</buildNumber><marked><SHA1>b868d7ee8d7704e71abb1bdcb62055b3c100abca</SHA1><branch><SHA1>b868d7ee8d7704e71abb1bdcb62055b3c100abca</SHA1><name>origin/feat_hfsm_direction</name></branch></marked><revision><SHA1>b868d7ee8d7704e71abb1bdcb62055b3c100abca</SHA1><branch><SHA1>b868d7ee8d7704e71abb1bdcb62055b3c100abca</SHA1><name>origin/feat_hfsm_direction</name></branch></revision></originfeat_hfsm_direction><originfeat_trajectory_qiangang _class='hudson.plugins.git.util.Build'><buildNumber>1832</buildNumber><marked><SHA1>3c014a88a977f1fa72e9a25de08998423c6d4633</SHA1><branch><SHA1>3c014a88a977f1fa72e9a25de08998423c6d4633</SHA1><name>origin/feat_trajectory_qiangang</name></branch></marked><revision><SHA1>3c014a88a977f1fa72e9a25de08998423c6d4633</SHA1><branch><SHA1>3c014a88a977f1fa72e9a25de08998423c6d4633</SHA1><name>origin/feat_trajectory_qiangang</name></branch></revision></originfeat_trajectory_qiangang><originfix_action_type _class='hudson.plugins.git.util.Build'><buildNumber>260</buildNumber><marked><SHA1>2a0f28492aeed5bc862a8d6f6c02f7b07e5d4248</SHA1><branch><SHA1>2a0f28492aeed5bc862a8d6f6c02f7b07e5d4248</SHA1><name>origin/fix_action_type</name></branch></marked><revision><SHA1>2a0f28492aeed5bc862a8d6f6c02f7b07e5d4248</SHA1><branch><SHA1>2a0f28492aeed5bc862a8d6f6c02f7b07e5d4248</SHA1><name>origin/fix_action_type</name></branch></revision></originfix_action_type><originfeat_ssep_imv_enter_station _class='hudson.plugins.git.util.Build'><buildNumber>1122</buildNumber><marked><SHA1>2282c6f06407cbfb5d8ef37f429013e6637ef2d4</SHA1><branch><SHA1>2282c6f06407cbfb5d8ef37f429013e6637ef2d4</SHA1><name>origin/feat_ssep_imv_enter_station</name></branch></marked><revision><SHA1>2282c6f06407cbfb5d8ef37f429013e6637ef2d4</SHA1><branch><SHA1>2282c6f06407cbfb5d8ef37f429013e6637ef2d4</SHA1><name>origin/feat_ssep_imv_enter_station</name></branch></revision></originfeat_ssep_imv_enter_station><originfeat_boundary_type _class='hudson.plugins.git.util.Build'><buildNumber>326</buildNumber><marked><SHA1>1a4a5729ae509db04578d9bae14c96c86988bd04</SHA1><branch><SHA1>1a4a5729ae509db04578d9bae14c96c86988bd04</SHA1><name>origin/feat_boundary_type</name></branch></marked><revision><SHA1>1a4a5729ae509db04578d9bae14c96c86988bd04</SHA1><branch><SHA1>1a4a5729ae509db04578d9bae14c96c86988bd04</SHA1><name>origin/feat_boundary_type</name></branch></revision></originfeat_boundary_type><originfeat_wbca_truck_dp _class='hudson.plugins.git.util.Build'><buildNumber>594</buildNumber><marked><SHA1>2a2a8d71f190459fe1ad30bef5c2cce424ed05b6</SHA1><branch><SHA1>2a2a8d71f190459fe1ad30bef5c2cce424ed05b6</SHA1><name>origin/feat_wbca_truck_dp</name></branch></marked><revision><SHA1>2a2a8d71f190459fe1ad30bef5c2cce424ed05b6</SHA1><branch><SHA1>2a2a8d71f190459fe1ad30bef5c2cce424ed05b6</SHA1><name>origin/feat_wbca_truck_dp</name></branch></revision></originfeat_wbca_truck_dp><originfeat_taiyang _class='hudson.plugins.git.util.Build'><buildNumber>1771</buildNumber><marked><SHA1>2481bf3bbb2d9ac0e03d6e3360bf006b8eee72c5</SHA1><branch><SHA1>2481bf3bbb2d9ac0e03d6e3360bf006b8eee72c5</SHA1><name>origin/feat_taiyang</name></branch></marked><revision><SHA1>2481bf3bbb2d9ac0e03d6e3360bf006b8eee72c5</SHA1><branch><SHA1>2481bf3bbb2d9ac0e03d6e3360bf006b8eee72c5</SHA1><name>origin/feat_taiyang</name></branch></revision></originfeat_taiyang><originfeat_clear_area _class='hudson.plugins.git.util.Build'><buildNumber>1561</buildNumber><marked><SHA1>ec60685af092a1b9c7e92fccd81fa260c92c5fa3</SHA1><branch><SHA1>ec60685af092a1b9c7e92fccd81fa260c92c5fa3</SHA1><name>origin/feat_clear_area</name></branch></marked><revision><SHA1>ec60685af092a1b9c7e92fccd81fa260c92c5fa3</SHA1><branch><SHA1>ec60685af092a1b9c7e92fccd81fa260c92c5fa3</SHA1><name>origin/feat_clear_area</name></branch></revision></originfeat_clear_area><originfeat_block_data _class='hudson.plugins.git.util.Build'><buildNumber>1258</buildNumber><marked><SHA1>e4b53590f63add07d6ac719a8faa70eafb610f6c</SHA1><branch><SHA1>e4b53590f63add07d6ac719a8faa70eafb610f6c</SHA1><name>origin/feat_block_data</name></branch></marked><revision><SHA1>e4b53590f63add07d6ac719a8faa70eafb610f6c</SHA1><branch><SHA1>e4b53590f63add07d6ac719a8faa70eafb610f6c</SHA1><name>origin/feat_block_data</name></branch></revision></originfeat_block_data><originfeat_hairun _class='hudson.plugins.git.util.Build'><buildNumber>1962</buildNumber><marked><SHA1>d72976ffcf1198dc889eebc4158ede7ff7a4b7e3</SHA1><branch><SHA1>d72976ffcf1198dc889eebc4158ede7ff7a4b7e3</SHA1><name>origin/feat_hairun</name></branch></marked><revision><SHA1>d72976ffcf1198dc889eebc4158ede7ff7a4b7e3</SHA1><branch><SHA1>d72976ffcf1198dc889eebc4158ede7ff7a4b7e3</SHA1><name>origin/feat_hairun</name></branch></revision></originfeat_hairun><originfeat_dynamic_hd_map _class='hudson.plugins.git.util.Build'><buildNumber>382</buildNumber><marked><SHA1>d979069f193b3278b4bf5456cb737987424a7075</SHA1><branch><SHA1>d979069f193b3278b4bf5456cb737987424a7075</SHA1><name>origin/feat_dynamic_hd_map</name></branch></marked><revision><SHA1>d979069f193b3278b4bf5456cb737987424a7075</SHA1><branch><SHA1>d979069f193b3278b4bf5456cb737987424a7075</SHA1><name>origin/feat_dynamic_hd_map</name></branch></revision></originfeat_dynamic_hd_map><originfeat_qiangang _class='hudson.plugins.git.util.Build'><buildNumber>1756</buildNumber><marked><SHA1>aecf87a4b918714c30dc044500750f6fa06503db</SHA1><branch><SHA1>aecf87a4b918714c30dc044500750f6fa06503db</SHA1><name>origin/feat_qiangang</name></branch></marked><revision><SHA1>aecf87a4b918714c30dc044500750f6fa06503db</SHA1><branch><SHA1>aecf87a4b918714c30dc044500750f6fa06503db</SHA1><name>origin/feat_qiangang</name></branch></revision></originfeat_qiangang><originfeat_straddle_v2 _class='hudson.plugins.git.util.Build'><buildNumber>1951</buildNumber><marked><SHA1>aa5f11053bb9e7f5934ae5fc73f0c52f703b4583</SHA1><branch><SHA1>aa5f11053bb9e7f5934ae5fc73f0c52f703b4583</SHA1><name>origin/feat_straddle_v2</name></branch></marked><revision><SHA1>aa5f11053bb9e7f5934ae5fc73f0c52f703b4583</SHA1><branch><SHA1>aa5f11053bb9e7f5934ae5fc73f0c52f703b4583</SHA1><name>origin/feat_straddle_v2</name></branch></revision></originfeat_straddle_v2><refsremotesorigintangwenqingssep-improve-latency _class='hudson.plugins.git.util.Build'><buildNumber>738</buildNumber><marked><SHA1>520fbf85a0b49395abf72d0cbe1c7457c23e0743</SHA1><branch><SHA1>520fbf85a0b49395abf72d0cbe1c7457c23e0743</SHA1><name>refs/remotes/origin/tangwenqing/ssep-improve-latency</name></branch></marked><revision><SHA1>520fbf85a0b49395abf72d0cbe1c7457c23e0743</SHA1><branch><SHA1>520fbf85a0b49395abf72d0cbe1c7457c23e0743</SHA1><name>refs/remotes/origin/tangwenqing/ssep-improve-latency</name></branch></revision></refsremotesorigintangwenqingssep-improve-latency><originfeat_traffic _class='hudson.plugins.git.util.Build'><buildNumber>1348</buildNumber><marked><SHA1>65d8f7ddfa0eeffffdbfc3fd27e9651adf92796c</SHA1><branch><SHA1>65d8f7ddfa0eeffffdbfc3fd27e9651adf92796c</SHA1><name>origin/feat_traffic</name></branch></marked><revision><SHA1>65d8f7ddfa0eeffffdbfc3fd27e9651adf92796c</SHA1><branch><SHA1>65d8f7ddfa0eeffffdbfc3fd27e9651adf92796c</SHA1><name>origin/feat_traffic</name></branch></revision></originfeat_traffic><originfix_deadlock_restart _class='hudson.plugins.git.util.Build'><buildNumber>1925</buildNumber><marked><SHA1>587046e144b1050a05158d807de24b47911d0e60</SHA1><branch><SHA1>587046e144b1050a05158d807de24b47911d0e60</SHA1><name>origin/fix_deadlock_restart</name></branch></marked><revision><SHA1>587046e144b1050a05158d807de24b47911d0e60</SHA1><branch><SHA1>587046e144b1050a05158d807de24b47911d0e60</SHA1><name>origin/fix_deadlock_restart</name></branch></revision></originfix_deadlock_restart><originfeat_truck_bulk _class='hudson.plugins.git.util.Build'><buildNumber>667</buildNumber><marked><SHA1>e6f4362ba18bbaa85f57f5aa474137f7dc879165</SHA1><branch><SHA1>e6f4362ba18bbaa85f57f5aa474137f7dc879165</SHA1><name>origin/feat_truck_bulk</name></branch></marked><revision><SHA1>e6f4362ba18bbaa85f57f5aa474137f7dc879165</SHA1><branch><SHA1>e6f4362ba18bbaa85f57f5aa474137f7dc879165</SHA1><name>origin/feat_truck_bulk</name></branch></revision></originfeat_truck_bulk><originfeat_qiangang_refactor _class='hudson.plugins.git.util.Build'><buildNumber>1369</buildNumber><marked><SHA1>34ae0342b5807fc123efc3c6f60c40051b4c790b</SHA1><branch><SHA1>34ae0342b5807fc123efc3c6f60c40051b4c790b</SHA1><name>origin/feat_qiangang_refactor</name></branch></marked><revision><SHA1>34ae0342b5807fc123efc3c6f60c40051b4c790b</SHA1><branch><SHA1>34ae0342b5807fc123efc3c6f60c40051b4c790b</SHA1><name>origin/feat_qiangang_refactor</name></branch></revision></originfeat_qiangang_refactor><originfeat_sq_LD_test _class='hudson.plugins.git.util.Build'><buildNumber>1514</buildNumber><marked><SHA1>6255cb9d52b61dded26f200866c3300e49fd5424</SHA1><branch><SHA1>6255cb9d52b61dded26f200866c3300e49fd5424</SHA1><name>origin/feat_sq_LD_test</name></branch></marked><revision><SHA1>6255cb9d52b61dded26f200866c3300e49fd5424</SHA1><branch><SHA1>6255cb9d52b61dded26f200866c3300e49fd5424</SHA1><name>origin/feat_sq_LD_test</name></branch></revision></originfeat_sq_LD_test><originfeat_guide_line_lane_change _class='hudson.plugins.git.util.Build'><buildNumber>747</buildNumber><marked><SHA1>06bac4dbce1e7b82a7efc46cc23444dd23328d1d</SHA1><branch><SHA1>06bac4dbce1e7b82a7efc46cc23444dd23328d1d</SHA1><name>origin/feat_guide_line_lane_change</name></branch></marked><revision><SHA1>06bac4dbce1e7b82a7efc46cc23444dd23328d1d</SHA1><branch><SHA1>06bac4dbce1e7b82a7efc46cc23444dd23328d1d</SHA1><name>origin/feat_guide_line_lane_change</name></branch></revision></originfeat_guide_line_lane_change><originfeat_wh_trailer _class='hudson.plugins.git.util.Build'><buildNumber>2061</buildNumber><marked><SHA1>84f69b576855adcc7054f1dbe0b4cb63279f60c6</SHA1><branch><SHA1>84f69b576855adcc7054f1dbe0b4cb63279f60c6</SHA1><name>origin/feat_wh_trailer</name></branch></marked><revision><SHA1>84f69b576855adcc7054f1dbe0b4cb63279f60c6</SHA1><branch><SHA1>84f69b576855adcc7054f1dbe0b4cb63279f60c6</SHA1><name>origin/feat_wh_trailer</name></branch></revision></originfeat_wh_trailer><originfeat_trajectory_weihai _class='hudson.plugins.git.util.Build'><buildNumber>1882</buildNumber><marked><SHA1>0be2c6867114557a6eacfb0078192153c83c83a5</SHA1><branch><SHA1>0be2c6867114557a6eacfb0078192153c83c83a5</SHA1><name>origin/feat_trajectory_weihai</name></branch></marked><revision><SHA1>0be2c6867114557a6eacfb0078192153c83c83a5</SHA1><branch><SHA1>0be2c6867114557a6eacfb0078192153c83c83a5</SHA1><name>origin/feat_trajectory_weihai</name></branch></revision></originfeat_trajectory_weihai><originfeat_proto_jinxi _class='hudson.plugins.git.util.Build'><buildNumber>2139</buildNumber><marked><SHA1>a9134bdaec29e5e572101316101ffe33eb3ab13a</SHA1><branch><SHA1>a9134bdaec29e5e572101316101ffe33eb3ab13a</SHA1><name>origin/feat_proto_jinxi</name></branch></marked><revision><SHA1>a9134bdaec29e5e572101316101ffe33eb3ab13a</SHA1><branch><SHA1>a9134bdaec29e5e572101316101ffe33eb3ab13a</SHA1><name>origin/feat_proto_jinxi</name></branch></revision></originfeat_proto_jinxi><originfeat_weifang_aacreep _class='hudson.plugins.git.util.Build'><buildNumber>2171</buildNumber><marked><SHA1>9765986feb718c3dbdb57379e8120a4b455aae4d</SHA1><branch><SHA1>9765986feb718c3dbdb57379e8120a4b455aae4d</SHA1><name>origin/feat_weifang_aacreep</name></branch></marked><revision><SHA1>9765986feb718c3dbdb57379e8120a4b455aae4d</SHA1><branch><SHA1>9765986feb718c3dbdb57379e8120a4b455aae4d</SHA1><name>origin/feat_weifang_aacreep</name></branch></revision></originfeat_weifang_aacreep><originfeat_ros2_platoon_mpc _class='hudson.plugins.git.util.Build'><buildNumber>2084</buildNumber><marked><SHA1>0d27b36cc302441a7459936d3fbfd470973ec750</SHA1><branch><SHA1>0d27b36cc302441a7459936d3fbfd470973ec750</SHA1><name>origin/feat_ros2_platoon_mpc</name></branch></marked><revision><SHA1>0d27b36cc302441a7459936d3fbfd470973ec750</SHA1><branch><SHA1>0d27b36cc302441a7459936d3fbfd470973ec750</SHA1><name>origin/feat_ros2_platoon_mpc</name></branch></revision></originfeat_ros2_platoon_mpc><originfeat_seg_search _class='hudson.plugins.git.util.Build'><buildNumber>982</buildNumber><marked><SHA1>468bc74cb13dfad5a2e4aba6998983e2b3a9c202</SHA1><branch><SHA1>468bc74cb13dfad5a2e4aba6998983e2b3a9c202</SHA1><name>origin/feat_seg_search</name></branch></marked><revision><SHA1>468bc74cb13dfad5a2e4aba6998983e2b3a9c202</SHA1><branch><SHA1>468bc74cb13dfad5a2e4aba6998983e2b3a9c202</SHA1><name>origin/feat_seg_search</name></branch></revision></originfeat_seg_search><originfeat_proto_jinxi_2 _class='hudson.plugins.git.util.Build'><buildNumber>2150</buildNumber><marked><SHA1>6efb8024714d3063693e857288df97d676d9991b</SHA1><branch><SHA1>6efb8024714d3063693e857288df97d676d9991b</SHA1><name>origin/feat_proto_jinxi_2</name></branch></marked><revision><SHA1>6efb8024714d3063693e857288df97d676d9991b</SHA1><branch><SHA1>6efb8024714d3063693e857288df97d676d9991b</SHA1><name>origin/feat_proto_jinxi_2</name></branch></revision></originfeat_proto_jinxi_2><originfeat_wbca_backup _class='hudson.plugins.git.util.Build'><buildNumber>480</buildNumber><marked><SHA1>f479f95d1e31bfc01963fe22cb3ab6efcc3b23d1</SHA1><branch><SHA1>f479f95d1e31bfc01963fe22cb3ab6efcc3b23d1</SHA1><name>origin/feat_wbca_backup</name></branch></marked><revision><SHA1>f479f95d1e31bfc01963fe22cb3ab6efcc3b23d1</SHA1><branch><SHA1>f479f95d1e31bfc01963fe22cb3ab6efcc3b23d1</SHA1><name>origin/feat_wbca_backup</name></branch></revision></originfeat_wbca_backup><originfeat_sc_v2_old _class='hudson.plugins.git.util.Build'><buildNumber>1694</buildNumber><marked><SHA1>39340b8d50e9c4bfa92967b6eea2d93ef9b617ad</SHA1><branch><SHA1>39340b8d50e9c4bfa92967b6eea2d93ef9b617ad</SHA1><name>origin/feat_sc_v2_old</name></branch></marked><revision><SHA1>39340b8d50e9c4bfa92967b6eea2d93ef9b617ad</SHA1><branch><SHA1>39340b8d50e9c4bfa92967b6eea2d93ef9b617ad</SHA1><name>origin/feat_sc_v2_old</name></branch></revision></originfeat_sc_v2_old><originfeat_trajectory_hairun _class='hudson.plugins.git.util.Build'><buildNumber>1883</buildNumber><marked><SHA1>335cb0c3d0d91a66a22e0ac78648d592ecc58b56</SHA1><branch><SHA1>335cb0c3d0d91a66a22e0ac78648d592ecc58b56</SHA1><name>origin/feat_trajectory_hairun</name></branch></marked><revision><SHA1>335cb0c3d0d91a66a22e0ac78648d592ecc58b56</SHA1><branch><SHA1>335cb0c3d0d91a66a22e0ac78648d592ecc58b56</SHA1><name>origin/feat_trajectory_hairun</name></branch></revision></originfeat_trajectory_hairun><originfeat-hdmap _class='hudson.plugins.git.util.Build'><buildNumber>363</buildNumber><marked><SHA1>211888f1f4e81f87514411e3bd1e3dc23a4ae046</SHA1><branch><SHA1>211888f1f4e81f87514411e3bd1e3dc23a4ae046</SHA1><name>origin/feat-hdmap</name></branch></marked><revision><SHA1>211888f1f4e81f87514411e3bd1e3dc23a4ae046</SHA1><branch><SHA1>211888f1f4e81f87514411e3bd1e3dc23a4ae046</SHA1><name>origin/feat-hdmap</name></branch></revision></originfeat-hdmap><originfeat_keb_path_opt_task _class='hudson.plugins.git.util.Build'><buildNumber>1572</buildNumber><marked><SHA1>03b3cf39f7b16511a2dbe122e5ad34392670a516</SHA1><branch><SHA1>03b3cf39f7b16511a2dbe122e5ad34392670a516</SHA1><name>origin/feat_keb_path_opt_task</name></branch></marked><revision><SHA1>03b3cf39f7b16511a2dbe122e5ad34392670a516</SHA1><branch><SHA1>03b3cf39f7b16511a2dbe122e5ad34392670a516</SHA1><name>origin/feat_keb_path_opt_task</name></branch></revision></originfeat_keb_path_opt_task><originrc_dev _class='hudson.plugins.git.util.Build'><buildNumber>1267</buildNumber><marked><SHA1>1f83b21901518f710c4d73ce9d08d6571ce026d0</SHA1><branch><SHA1>1f83b21901518f710c4d73ce9d08d6571ce026d0</SHA1><name>origin/rc_dev</name></branch></marked><revision><SHA1>1f83b21901518f710c4d73ce9d08d6571ce026d0</SHA1><branch><SHA1>1f83b21901518f710c4d73ce9d08d6571ce026d0</SHA1><name>origin/rc_dev</name></branch></revision></originrc_dev><origintmp_djk_ssep _class='hudson.plugins.git.util.Build'><buildNumber>447</buildNumber><marked><SHA1>f03ed133cbf84976d6cf099761bf25345c7e8945</SHA1><branch><SHA1>f03ed133cbf84976d6cf099761bf25345c7e8945</SHA1><name>origin/tmp_djk_ssep</name></branch></marked><revision><SHA1>f03ed133cbf84976d6cf099761bf25345c7e8945</SHA1><branch><SHA1>f03ed133cbf84976d6cf099761bf25345c7e8945</SHA1><name>origin/tmp_djk_ssep</name></branch></revision></origintmp_djk_ssep><originfeat_wbca_truck_dp_dev _class='hudson.plugins.git.util.Build'><buildNumber>766</buildNumber><marked><SHA1>fbcec908efd6c586d1a9ac07492d1916c2761543</SHA1><branch><SHA1>fbcec908efd6c586d1a9ac07492d1916c2761543</SHA1><name>origin/feat_wbca_truck_dp_dev</name></branch></marked><revision><SHA1>fbcec908efd6c586d1a9ac07492d1916c2761543</SHA1><branch><SHA1>fbcec908efd6c586d1a9ac07492d1916c2761543</SHA1><name>origin/feat_wbca_truck_dp_dev</name></branch></revision></originfeat_wbca_truck_dp_dev><origintest_hr _class='hudson.plugins.git.util.Build'><buildNumber>787</buildNumber><marked><SHA1>1e10c9b364546121e29573c0300e3c48b67611a4</SHA1><branch><SHA1>1e10c9b364546121e29573c0300e3c48b67611a4</SHA1><name>origin/test_hr</name></branch></marked><revision><SHA1>1e10c9b364546121e29573c0300e3c48b67611a4</SHA1><branch><SHA1>1e10c9b364546121e29573c0300e3c48b67611a4</SHA1><name>origin/test_hr</name></branch></revision></origintest_hr><originfeat_side_pass _class='hudson.plugins.git.util.Build'><buildNumber>483</buildNumber><marked><SHA1>b20d7c381eeb7f624660868c8ef35a9e5c80b0b7</SHA1><branch><SHA1>b20d7c381eeb7f624660868c8ef35a9e5c80b0b7</SHA1><name>origin/feat_side_pass</name></branch></marked><revision><SHA1>b20d7c381eeb7f624660868c8ef35a9e5c80b0b7</SHA1><branch><SHA1>b20d7c381eeb7f624660868c8ef35a9e5c80b0b7</SHA1><name>origin/feat_side_pass</name></branch></revision></originfeat_side_pass><originssep-improve-latency _class='hudson.plugins.git.util.Build'><buildNumber>779</buildNumber><marked><SHA1>efaa88b8102251d8b12cc172176c6965ba05c41f</SHA1><branch><SHA1>efaa88b8102251d8b12cc172176c6965ba05c41f</SHA1><name>origin/ssep-improve-latency</name></branch></marked><revision><SHA1>efaa88b8102251d8b12cc172176c6965ba05c41f</SHA1><branch><SHA1>efaa88b8102251d8b12cc172176c6965ba05c41f</SHA1><name>origin/ssep-improve-latency</name></branch></revision></originssep-improve-latency><originfeat_LS_deviation _class='hudson.plugins.git.util.Build'><buildNumber>910</buildNumber><marked><SHA1>561b9666baea1c45219fec16ec74d0d0c62bd819</SHA1><branch><SHA1>561b9666baea1c45219fec16ec74d0d0c62bd819</SHA1><name>origin/feat_LS_deviation</name></branch></marked><revision><SHA1>561b9666baea1c45219fec16ec74d0d0c62bd819</SHA1><branch><SHA1>561b9666baea1c45219fec16ec74d0d0c62bd819</SHA1><name>origin/feat_LS_deviation</name></branch></revision></originfeat_LS_deviation><originfeat_wbca_truck _class='hudson.plugins.git.util.Build'><buildNumber>515</buildNumber><marked><SHA1>aba8c06c86955a34d5d6debb8e114385f0259633</SHA1><branch><SHA1>aba8c06c86955a34d5d6debb8e114385f0259633</SHA1><name>origin/feat_wbca_truck</name></branch></marked><revision><SHA1>aba8c06c86955a34d5d6debb8e114385f0259633</SHA1><branch><SHA1>aba8c06c86955a34d5d6debb8e114385f0259633</SHA1><name>origin/feat_wbca_truck</name></branch></revision></originfeat_wbca_truck><originfeat_imv_pull_over _class='hudson.plugins.git.util.Build'><buildNumber>1266</buildNumber><marked><SHA1>47dd1e17e3b7a1cacfa8af95d3a50e451c387dc1</SHA1><branch><SHA1>47dd1e17e3b7a1cacfa8af95d3a50e451c387dc1</SHA1><name>origin/feat_imv_pull_over</name></branch></marked><revision><SHA1>47dd1e17e3b7a1cacfa8af95d3a50e451c387dc1</SHA1><branch><SHA1>47dd1e17e3b7a1cacfa8af95d3a50e451c387dc1</SHA1><name>origin/feat_imv_pull_over</name></branch></revision></originfeat_imv_pull_over><originfeat_sqjb _class='hudson.plugins.git.util.Build'><buildNumber>1119</buildNumber><marked><SHA1>3527a793f3ade81518ceb5c982fa3e1c89b02711</SHA1><branch><SHA1>3527a793f3ade81518ceb5c982fa3e1c89b02711</SHA1><name>origin/feat_sqjb</name></branch></marked><revision><SHA1>3527a793f3ade81518ceb5c982fa3e1c89b02711</SHA1><branch><SHA1>3527a793f3ade81518ceb5c982fa3e1c89b02711</SHA1><name>origin/feat_sqjb</name></branch></revision></originfeat_sqjb><originfeat_qiangang_ssep_heatnet _class='hudson.plugins.git.util.Build'><buildNumber>1284</buildNumber><marked><SHA1>043c59ce1faa06b6a3ab6e6ea7887783b567751e</SHA1><branch><SHA1>043c59ce1faa06b6a3ab6e6ea7887783b567751e</SHA1><name>origin/feat_qiangang_ssep_heatnet</name></branch></marked><revision><SHA1>043c59ce1faa06b6a3ab6e6ea7887783b567751e</SHA1><branch><SHA1>043c59ce1faa06b6a3ab6e6ea7887783b567751e</SHA1><name>origin/feat_qiangang_ssep_heatnet</name></branch></revision></originfeat_qiangang_ssep_heatnet><originrebase_jinxi2_keb_html _class='hudson.plugins.git.util.Build'><buildNumber>2166</buildNumber><marked><SHA1>39f8e722a5af1d53d54bdf136357b3235457c2a4</SHA1><branch><SHA1>39f8e722a5af1d53d54bdf136357b3235457c2a4</SHA1><name>origin/rebase_jinxi2_keb_html</name></branch></marked><revision><SHA1>39f8e722a5af1d53d54bdf136357b3235457c2a4</SHA1><branch><SHA1>39f8e722a5af1d53d54bdf136357b3235457c2a4</SHA1><name>origin/rebase_jinxi2_keb_html</name></branch></revision></originrebase_jinxi2_keb_html><originfeat_truck_reverse _class='hudson.plugins.git.util.Build'><buildNumber>853</buildNumber><marked><SHA1>2527849cf681e0804ef5561c1b564dd434a5fe20</SHA1><branch><SHA1>2527849cf681e0804ef5561c1b564dd434a5fe20</SHA1><name>origin/feat_truck_reverse</name></branch></marked><revision><SHA1>2527849cf681e0804ef5561c1b564dd434a5fe20</SHA1><branch><SHA1>2527849cf681e0804ef5561c1b564dd434a5fe20</SHA1><name>origin/feat_truck_reverse</name></branch></revision></originfeat_truck_reverse><originfeat_sink_snapshot _class='hudson.plugins.git.util.Build'><buildNumber>270</buildNumber><marked><SHA1>396ad3472e9618a78105fe71a4271cbec91ddd2f</SHA1><branch><SHA1>396ad3472e9618a78105fe71a4271cbec91ddd2f</SHA1><name>origin/feat_sink_snapshot</name></branch></marked><revision><SHA1>396ad3472e9618a78105fe71a4271cbec91ddd2f</SHA1><branch><SHA1>396ad3472e9618a78105fe71a4271cbec91ddd2f</SHA1><name>origin/feat_sink_snapshot</name></branch></revision></originfeat_sink_snapshot><originfeat_stacker _class='hudson.plugins.git.util.Build'><buildNumber>488</buildNumber><marked><SHA1>f93b3e4bf900c1582854ede8fb00b1d43f66cf12</SHA1><branch><SHA1>f93b3e4bf900c1582854ede8fb00b1d43f66cf12</SHA1><name>origin/feat_stacker</name></branch></marked><revision><SHA1>f93b3e4bf900c1582854ede8fb00b1d43f66cf12</SHA1><branch><SHA1>f93b3e4bf900c1582854ede8fb00b1d43f66cf12</SHA1><name>origin/feat_stacker</name></branch></revision></originfeat_stacker><originfeat_daxie _class='hudson.plugins.git.util.Build'><buildNumber>1643</buildNumber><marked><SHA1>730037190ab095ff3004718347429c4e827549c3</SHA1><branch><SHA1>730037190ab095ff3004718347429c4e827549c3</SHA1><name>origin/feat_daxie</name></branch></marked><revision><SHA1>730037190ab095ff3004718347429c4e827549c3</SHA1><branch><SHA1>730037190ab095ff3004718347429c4e827549c3</SHA1><name>origin/feat_daxie</name></branch></revision></originfeat_daxie><originfeat_change_1 _class='hudson.plugins.git.util.Build'><buildNumber>306</buildNumber><marked><SHA1>2b9b5a487bfbd20ca64e0ba010e5657d4ab2bbef</SHA1><branch><SHA1>2b9b5a487bfbd20ca64e0ba010e5657d4ab2bbef</SHA1><name>origin/feat_change_1</name></branch></marked><revision><SHA1>2b9b5a487bfbd20ca64e0ba010e5657d4ab2bbef</SHA1><branch><SHA1>2b9b5a487bfbd20ca64e0ba010e5657d4ab2bbef</SHA1><name>origin/feat_change_1</name></branch></revision></originfeat_change_1><originfeat_yangpu _class='hudson.plugins.git.util.Build'><buildNumber>1727</buildNumber><marked><SHA1>1b8232a1c296987edf855d048e610da85a01131e</SHA1><branch><SHA1>1b8232a1c296987edf855d048e610da85a01131e</SHA1><name>origin/feat_yangpu</name></branch></marked><revision><SHA1>1b8232a1c296987edf855d048e610da85a01131e</SHA1><branch><SHA1>1b8232a1c296987edf855d048e610da85a01131e</SHA1><name>origin/feat_yangpu</name></branch></revision></originfeat_yangpu><originfeat_block_data_switch _class='hudson.plugins.git.util.Build'><buildNumber>980</buildNumber><marked><SHA1>671f8b9fb2418043687a2820a1a575a98cf71312</SHA1><branch><SHA1>671f8b9fb2418043687a2820a1a575a98cf71312</SHA1><name>origin/feat_block_data_switch</name></branch></marked><revision><SHA1>671f8b9fb2418043687a2820a1a575a98cf71312</SHA1><branch><SHA1>671f8b9fb2418043687a2820a1a575a98cf71312</SHA1><name>origin/feat_block_data_switch</name></branch></revision></originfeat_block_data_switch><originssep-geometric-searcher-test _class='hudson.plugins.git.util.Build'><buildNumber>894</buildNumber><marked><SHA1>a3962d2cff5ec8603a3373cd7ac2c8ac6e52196c</SHA1><branch><SHA1>a3962d2cff5ec8603a3373cd7ac2c8ac6e52196c</SHA1><name>origin/ssep-geometric-searcher-test</name></branch></marked><revision><SHA1>a3962d2cff5ec8603a3373cd7ac2c8ac6e52196c</SHA1><branch><SHA1>a3962d2cff5ec8603a3373cd7ac2c8ac6e52196c</SHA1><name>origin/ssep-geometric-searcher-test</name></branch></revision></originssep-geometric-searcher-test><originfeat_sidepass_lattice _class='hudson.plugins.git.util.Build'><buildNumber>2095</buildNumber><marked><SHA1>7b28a9cf19d4fe474fff3e76fed2eb528b46681d</SHA1><branch><SHA1>7b28a9cf19d4fe474fff3e76fed2eb528b46681d</SHA1><name>origin/feat_sidepass_lattice</name></branch></marked><revision><SHA1>7b28a9cf19d4fe474fff3e76fed2eb528b46681d</SHA1><branch><SHA1>7b28a9cf19d4fe474fff3e76fed2eb528b46681d</SHA1><name>origin/feat_sidepass_lattice</name></branch></revision></originfeat_sidepass_lattice><originfeat_yard_name _class='hudson.plugins.git.util.Build'><buildNumber>1072</buildNumber><marked><SHA1>fb3eb46878509f760b66cb36617be19d9d610c79</SHA1><branch><SHA1>fb3eb46878509f760b66cb36617be19d9d610c79</SHA1><name>origin/feat_yard_name</name></branch></marked><revision><SHA1>fb3eb46878509f760b66cb36617be19d9d610c79</SHA1><branch><SHA1>fb3eb46878509f760b66cb36617be19d9d610c79</SHA1><name>origin/feat_yard_name</name></branch></revision></originfeat_yard_name><origintmp_lon_decision_4 _class='hudson.plugins.git.util.Build'><buildNumber>96</buildNumber><marked><SHA1>71e064bede15f180450ac4b5db9d91c14b212d4c</SHA1><branch><SHA1>71e064bede15f180450ac4b5db9d91c14b212d4c</SHA1><name>origin/tmp_lon_decision_4</name></branch></marked><revision><SHA1>71e064bede15f180450ac4b5db9d91c14b212d4c</SHA1><branch><SHA1>71e064bede15f180450ac4b5db9d91c14b212d4c</SHA1><name>origin/tmp_lon_decision_4</name></branch></revision></origintmp_lon_decision_4><origintmp_lon_decision_3 _class='hudson.plugins.git.util.Build'><buildNumber>70</buildNumber><marked><SHA1>3369d60699427ed500ebc0fe4212e0198acbcfa3</SHA1><branch><SHA1>3369d60699427ed500ebc0fe4212e0198acbcfa3</SHA1><name>origin/tmp_lon_decision_3</name></branch></marked><revision><SHA1>3369d60699427ed500ebc0fe4212e0198acbcfa3</SHA1><branch><SHA1>3369d60699427ed500ebc0fe4212e0198acbcfa3</SHA1><name>origin/tmp_lon_decision_3</name></branch></revision></origintmp_lon_decision_3><origintest_lon_decision _class='hudson.plugins.git.util.Build'><buildNumber>688</buildNumber><marked><SHA1>d975905da5fa9e032aca5e5548151f50dca472f5</SHA1><branch><SHA1>d975905da5fa9e032aca5e5548151f50dca472f5</SHA1><name>origin/test_lon_decision</name></branch></marked><revision><SHA1>d975905da5fa9e032aca5e5548151f50dca472f5</SHA1><branch><SHA1>d975905da5fa9e032aca5e5548151f50dca472f5</SHA1><name>origin/test_lon_decision</name></branch></revision></origintest_lon_decision><originfeat_baoshishun _class='hudson.plugins.git.util.Build'><buildNumber>1763</buildNumber><marked><SHA1>bd980a9f7945cff4fe8ab5e4c52a872b9928a648</SHA1><branch><SHA1>bd980a9f7945cff4fe8ab5e4c52a872b9928a648</SHA1><name>origin/feat_baoshishun</name></branch></marked><revision><SHA1>bd980a9f7945cff4fe8ab5e4c52a872b9928a648</SHA1><branch><SHA1>bd980a9f7945cff4fe8ab5e4c52a872b9928a648</SHA1><name>origin/feat_baoshishun</name></branch></revision></originfeat_baoshishun><originfeat_trajectory_suxi _class='hudson.plugins.git.util.Build'><buildNumber>1812</buildNumber><marked><SHA1>0195fa8bcb664f03f392909747fde1257aa0c480</SHA1><branch><SHA1>0195fa8bcb664f03f392909747fde1257aa0c480</SHA1><name>origin/feat_trajectory_suxi</name></branch></marked><revision><SHA1>0195fa8bcb664f03f392909747fde1257aa0c480</SHA1><branch><SHA1>0195fa8bcb664f03f392909747fde1257aa0c480</SHA1><name>origin/feat_trajectory_suxi</name></branch></revision></originfeat_trajectory_suxi><originfeat_straddle _class='hudson.plugins.git.util.Build'><buildNumber>1292</buildNumber><marked><SHA1>4fda3dd5ddbb3047e946022e8b4517405439390d</SHA1><branch><SHA1>4fda3dd5ddbb3047e946022e8b4517405439390d</SHA1><name>origin/feat_straddle</name></branch></marked><revision><SHA1>4fda3dd5ddbb3047e946022e8b4517405439390d</SHA1><branch><SHA1>4fda3dd5ddbb3047e946022e8b4517405439390d</SHA1><name>origin/feat_straddle</name></branch></revision></originfeat_straddle><origintmp_reversing_truck _class='hudson.plugins.git.util.Build'><buildNumber>437</buildNumber><marked><SHA1>fabd257bdea6f4c65211f0552d027c2d48d67ff1</SHA1><branch><SHA1>fabd257bdea6f4c65211f0552d027c2d48d67ff1</SHA1><name>origin/tmp_reversing_truck</name></branch></marked><revision><SHA1>fabd257bdea6f4c65211f0552d027c2d48d67ff1</SHA1><branch><SHA1>fabd257bdea6f4c65211f0552d027c2d48d67ff1</SHA1><name>origin/tmp_reversing_truck</name></branch></revision></origintmp_reversing_truck><originlower_safe_thr_region _class='hudson.plugins.git.util.Build'><buildNumber>254</buildNumber><marked><SHA1>63e3449599733e81768584360442037f700bd130</SHA1><branch><SHA1>63e3449599733e81768584360442037f700bd130</SHA1><name>origin/lower_safe_thr_region</name></branch></marked><revision><SHA1>63e3449599733e81768584360442037f700bd130</SHA1><branch><SHA1>63e3449599733e81768584360442037f700bd130</SHA1><name>origin/lower_safe_thr_region</name></branch></revision></originlower_safe_thr_region><originfeat_reverse_lane _class='hudson.plugins.git.util.Build'><buildNumber>197</buildNumber><marked><SHA1>6806fd45934e755534dbaa5e7ab1c0c26c03c41c</SHA1><branch><SHA1>6806fd45934e755534dbaa5e7ab1c0c26c03c41c</SHA1><name>origin/feat_reverse_lane</name></branch></marked><revision><SHA1>6806fd45934e755534dbaa5e7ab1c0c26c03c41c</SHA1><branch><SHA1>6806fd45934e755534dbaa5e7ab1c0c26c03c41c</SHA1><name>origin/feat_reverse_lane</name></branch></revision></originfeat_reverse_lane><originfeat_yard_decider _class='hudson.plugins.git.util.Build'><buildNumber>451</buildNumber><marked><SHA1>ceaec1a86e5cc4dfd017f0ec608a229ad757c437</SHA1><branch><SHA1>ceaec1a86e5cc4dfd017f0ec608a229ad757c437</SHA1><name>origin/feat_yard_decider</name></branch></marked><revision><SHA1>ceaec1a86e5cc4dfd017f0ec608a229ad757c437</SHA1><branch><SHA1>ceaec1a86e5cc4dfd017f0ec608a229ad757c437</SHA1><name>origin/feat_yard_decider</name></branch></revision></originfeat_yard_decider><originfeat_safety_check _class='hudson.plugins.git.util.Build'><buildNumber>504</buildNumber><marked><SHA1>f13057435427785612a0be829f74facb9b66884f</SHA1><branch><SHA1>f13057435427785612a0be829f74facb9b66884f</SHA1><name>origin/feat_safety_check</name></branch></marked><revision><SHA1>f13057435427785612a0be829f74facb9b66884f</SHA1><branch><SHA1>f13057435427785612a0be829f74facb9b66884f</SHA1><name>origin/feat_safety_check</name></branch></revision></originfeat_safety_check><originfeat_sc_mpc _class='hudson.plugins.git.util.Build'><buildNumber>2174</buildNumber><marked><SHA1>e1da74b409b7416c478723fbae98925a4349b9e4</SHA1><branch><SHA1>e1da74b409b7416c478723fbae98925a4349b9e4</SHA1><name>origin/feat_sc_mpc</name></branch></marked><revision><SHA1>e1da74b409b7416c478723fbae98925a4349b9e4</SHA1><branch><SHA1>e1da74b409b7416c478723fbae98925a4349b9e4</SHA1><name>origin/feat_sc_mpc</name></branch></revision></originfeat_sc_mpc><originfeat_motion_recover _class='hudson.plugins.git.util.Build'><buildNumber>726</buildNumber><marked><SHA1>ba1dab660729e472f5dcc5e8d37358ad42f034e8</SHA1><branch><SHA1>ba1dab660729e472f5dcc5e8d37358ad42f034e8</SHA1><name>origin/feat_motion_recover</name></branch></marked><revision><SHA1>ba1dab660729e472f5dcc5e8d37358ad42f034e8</SHA1><branch><SHA1>ba1dab660729e472f5dcc5e8d37358ad42f034e8</SHA1><name>origin/feat_motion_recover</name></branch></revision></originfeat_motion_recover><originfeat_wh_trailer_cpu _class='hudson.plugins.git.util.Build'><buildNumber>1947</buildNumber><marked><SHA1>22442cbd365130db54193a6fff806c3569c410b3</SHA1><branch><SHA1>22442cbd365130db54193a6fff806c3569c410b3</SHA1><name>origin/feat_wh_trailer_cpu</name></branch></marked><revision><SHA1>22442cbd365130db54193a6fff806c3569c410b3</SHA1><branch><SHA1>22442cbd365130db54193a6fff806c3569c410b3</SHA1><name>origin/feat_wh_trailer_cpu</name></branch></revision></originfeat_wh_trailer_cpu><originfeat_change _class='hudson.plugins.git.util.Build'><buildNumber>287</buildNumber><marked><SHA1>79b13f045e397ecfd25eef421479015c3bd736ba</SHA1><branch><SHA1>79b13f045e397ecfd25eef421479015c3bd736ba</SHA1><name>origin/feat_change</name></branch></marked><revision><SHA1>79b13f045e397ecfd25eef421479015c3bd736ba</SHA1><branch><SHA1>79b13f045e397ecfd25eef421479015c3bd736ba</SHA1><name>origin/feat_change</name></branch></revision></originfeat_change><originfeat_error_pnc_status _class='hudson.plugins.git.util.Build'><buildNumber>1669</buildNumber><marked><SHA1>7488347a486bc1348df9d3f239f9f43ce79ba4d4</SHA1><branch><SHA1>7488347a486bc1348df9d3f239f9f43ce79ba4d4</SHA1><name>origin/feat_error_pnc_status</name></branch></marked><revision><SHA1>7488347a486bc1348df9d3f239f9f43ce79ba4d4</SHA1><branch><SHA1>7488347a486bc1348df9d3f239f9f43ce79ba4d4</SHA1><name>origin/feat_error_pnc_status</name></branch></revision></originfeat_error_pnc_status><originfeat-ssep-add-hd-map _class='hudson.plugins.git.util.Build'><buildNumber>1295</buildNumber><marked><SHA1>fb03da3117413c1798e25a770b131d40e8eae298</SHA1><branch><SHA1>fb03da3117413c1798e25a770b131d40e8eae298</SHA1><name>origin/feat-ssep-add-hd-map</name></branch></marked><revision><SHA1>fb03da3117413c1798e25a770b131d40e8eae298</SHA1><branch><SHA1>fb03da3117413c1798e25a770b131d40e8eae298</SHA1><name>origin/feat-ssep-add-hd-map</name></branch></revision></originfeat-ssep-add-hd-map><originfeat_trajectory_fix _class='hudson.plugins.git.util.Build'><buildNumber>2055</buildNumber><marked><SHA1>01d91db117eb92069cdd33846ea3c62e855b5490</SHA1><branch><SHA1>01d91db117eb92069cdd33846ea3c62e855b5490</SHA1><name>origin/feat_trajectory_fix</name></branch></marked><revision><SHA1>01d91db117eb92069cdd33846ea3c62e855b5490</SHA1><branch><SHA1>01d91db117eb92069cdd33846ea3c62e855b5490</SHA1><name>origin/feat_trajectory_fix</name></branch></revision></originfeat_trajectory_fix><originfeat_park _class='hudson.plugins.git.util.Build'><buildNumber>1410</buildNumber><marked><SHA1>4dfeb34832881570e72ec9f03d43527093b6deb4</SHA1><branch><SHA1>4dfeb34832881570e72ec9f03d43527093b6deb4</SHA1><name>origin/feat_park</name></branch></marked><revision><SHA1>4dfeb34832881570e72ec9f03d43527093b6deb4</SHA1><branch><SHA1>4dfeb34832881570e72ec9f03d43527093b6deb4</SHA1><name>origin/feat_park</name></branch></revision></originfeat_park><originfix_ssep _class='hudson.plugins.git.util.Build'><buildNumber>985</buildNumber><marked><SHA1>bf45235b3482b4e4d6859874aef9655e1aa5b77d</SHA1><branch><SHA1>bf45235b3482b4e4d6859874aef9655e1aa5b77d</SHA1><name>origin/fix_ssep</name></branch></marked><revision><SHA1>bf45235b3482b4e4d6859874aef9655e1aa5b77d</SHA1><branch><SHA1>bf45235b3482b4e4d6859874aef9655e1aa5b77d</SHA1><name>origin/fix_ssep</name></branch></revision></originfix_ssep><originfeat_traffit_light_stop _class='hudson.plugins.git.util.Build'><buildNumber>1589</buildNumber><marked><SHA1>351fd37ab1e4baf8eff9dc6fdd67d2ba27e8b431</SHA1><branch><SHA1>351fd37ab1e4baf8eff9dc6fdd67d2ba27e8b431</SHA1><name>origin/feat_traffit_light_stop</name></branch></marked><revision><SHA1>351fd37ab1e4baf8eff9dc6fdd67d2ba27e8b431</SHA1><branch><SHA1>351fd37ab1e4baf8eff9dc6fdd67d2ba27e8b431</SHA1><name>origin/feat_traffit_light_stop</name></branch></revision></originfeat_traffit_light_stop><originfeat_trajectory_daxie_1 _class='hudson.plugins.git.util.Build'><buildNumber>1725</buildNumber><marked><SHA1>523d6e9237b447f388f4b65aeea122da2f3acaad</SHA1><branch><SHA1>523d6e9237b447f388f4b65aeea122da2f3acaad</SHA1><name>origin/feat_trajectory_daxie_1</name></branch></marked><revision><SHA1>523d6e9237b447f388f4b65aeea122da2f3acaad</SHA1><branch><SHA1>523d6e9237b447f388f4b65aeea122da2f3acaad</SHA1><name>origin/feat_trajectory_daxie_1</name></branch></revision></originfeat_trajectory_daxie_1><originfeat_xl_cargo _class='hudson.plugins.git.util.Build'><buildNumber>288</buildNumber><marked><SHA1>bca854785ba4ef0247def145cf821b9b569704f5</SHA1><branch><SHA1>bca854785ba4ef0247def145cf821b9b569704f5</SHA1><name>origin/feat_xl_cargo</name></branch></marked><revision><SHA1>bca854785ba4ef0247def145cf821b9b569704f5</SHA1><branch><SHA1>bca854785ba4ef0247def145cf821b9b569704f5</SHA1><name>origin/feat_xl_cargo</name></branch></revision></originfeat_xl_cargo><originfeat_mandula _class='hudson.plugins.git.util.Build'><buildNumber>742</buildNumber><marked><SHA1>3f32a3ec07f7e4ff70920060bc1768a64a93a6d5</SHA1><branch><SHA1>3f32a3ec07f7e4ff70920060bc1768a64a93a6d5</SHA1><name>origin/feat_mandula</name></branch></marked><revision><SHA1>3f32a3ec07f7e4ff70920060bc1768a64a93a6d5</SHA1><branch><SHA1>3f32a3ec07f7e4ff70920060bc1768a64a93a6d5</SHA1><name>origin/feat_mandula</name></branch></revision></originfeat_mandula><originfeat_wbca_st _class='hudson.plugins.git.util.Build'><buildNumber>523</buildNumber><marked><SHA1>bc5a22cc8a3360d942c9ebf93a4c840dfe50b8c8</SHA1><branch><SHA1>bc5a22cc8a3360d942c9ebf93a4c840dfe50b8c8</SHA1><name>origin/feat_wbca_st</name></branch></marked><revision><SHA1>bc5a22cc8a3360d942c9ebf93a4c840dfe50b8c8</SHA1><branch><SHA1>bc5a22cc8a3360d942c9ebf93a4c840dfe50b8c8</SHA1><name>origin/feat_wbca_st</name></branch></revision></originfeat_wbca_st><originfeat_seg_search_pjpo _class='hudson.plugins.git.util.Build'><buildNumber>1011</buildNumber><marked><SHA1>5dd7c817bb063c786843dedaea1e09fdb044e148</SHA1><branch><SHA1>5dd7c817bb063c786843dedaea1e09fdb044e148</SHA1><name>origin/feat_seg_search_pjpo</name></branch></marked><revision><SHA1>5dd7c817bb063c786843dedaea1e09fdb044e148</SHA1><branch><SHA1>5dd7c817bb063c786843dedaea1e09fdb044e148</SHA1><name>origin/feat_seg_search_pjpo</name></branch></revision></originfeat_seg_search_pjpo><originfeat_base _class='hudson.plugins.git.util.Build'><buildNumber>1315</buildNumber><marked><SHA1>35c890fe6d108738379774a7a1d377d88550f0e2</SHA1><branch><SHA1>35c890fe6d108738379774a7a1d377d88550f0e2</SHA1><name>origin/feat_base</name></branch></marked><revision><SHA1>35c890fe6d108738379774a7a1d377d88550f0e2</SHA1><branch><SHA1>35c890fe6d108738379774a7a1d377d88550f0e2</SHA1><name>origin/feat_base</name></branch></revision></originfeat_base><originfeat_smooth_mode _class='hudson.plugins.git.util.Build'><buildNumber>1834</buildNumber><marked><SHA1>4e529beda6281c89daa913f798b557c92d0a3df5</SHA1><branch><SHA1>4e529beda6281c89daa913f798b557c92d0a3df5</SHA1><name>origin/feat_smooth_mode</name></branch></marked><revision><SHA1>4e529beda6281c89daa913f798b557c92d0a3df5</SHA1><branch><SHA1>4e529beda6281c89daa913f798b557c92d0a3df5</SHA1><name>origin/feat_smooth_mode</name></branch></revision></originfeat_smooth_mode><originfeat_ros2_platoon _class='hudson.plugins.git.util.Build'><buildNumber>2177</buildNumber><marked><SHA1>d91ca0e6bdcd735a27a0491bd255d7cd33e5d7c8</SHA1><branch><SHA1>d91ca0e6bdcd735a27a0491bd255d7cd33e5d7c8</SHA1><name>origin/feat_ros2_platoon</name></branch></marked><revision><SHA1>d91ca0e6bdcd735a27a0491bd255d7cd33e5d7c8</SHA1><branch><SHA1>d91ca0e6bdcd735a27a0491bd255d7cd33e5d7c8</SHA1><name>origin/feat_ros2_platoon</name></branch></revision></originfeat_ros2_platoon><originfeat_hfsm _class='hudson.plugins.git.util.Build'><buildNumber>170</buildNumber><marked><SHA1>f282a44a806a2a82b27bdcb7a898fc8d8aad5411</SHA1><branch><SHA1>f282a44a806a2a82b27bdcb7a898fc8d8aad5411</SHA1><name>origin/feat_hfsm</name></branch></marked><revision><SHA1>f282a44a806a2a82b27bdcb7a898fc8d8aad5411</SHA1><branch><SHA1>f282a44a806a2a82b27bdcb7a898fc8d8aad5411</SHA1><name>origin/feat_hfsm</name></branch></revision></originfeat_hfsm><originfeat_error _class='hudson.plugins.git.util.Build'><buildNumber>1453</buildNumber><marked><SHA1>dc27b02eaf204e5b86844dff5a6fd5a9ba4b011e</SHA1><branch><SHA1>dc27b02eaf204e5b86844dff5a6fd5a9ba4b011e</SHA1><name>origin/feat_error</name></branch></marked><revision><SHA1>dc27b02eaf204e5b86844dff5a6fd5a9ba4b011e</SHA1><branch><SHA1>dc27b02eaf204e5b86844dff5a6fd5a9ba4b011e</SHA1><name>origin/feat_error</name></branch></revision></originfeat_error><originfeat_suxi _class='hudson.plugins.git.util.Build'><buildNumber>1551</buildNumber><marked><SHA1>cc92bd150d538bd5b38022ce5093ffda871c951e</SHA1><branch><SHA1>cc92bd150d538bd5b38022ce5093ffda871c951e</SHA1><name>origin/feat_suxi</name></branch></marked><revision><SHA1>cc92bd150d538bd5b38022ce5093ffda871c951e</SHA1><branch><SHA1>cc92bd150d538bd5b38022ce5093ffda871c951e</SHA1><name>origin/feat_suxi</name></branch></revision></originfeat_suxi><originfeat_guide_line _class='hudson.plugins.git.util.Build'><buildNumber>661</buildNumber><marked><SHA1>d85529c9182f6b17004349c502ce183121f325de</SHA1><branch><SHA1>d85529c9182f6b17004349c502ce183121f325de</SHA1><name>origin/feat_guide_line</name></branch></marked><revision><SHA1>d85529c9182f6b17004349c502ce183121f325de</SHA1><branch><SHA1>d85529c9182f6b17004349c502ce183121f325de</SHA1><name>origin/feat_guide_line</name></branch></revision></originfeat_guide_line><originfeat-speed-limit _class='hudson.plugins.git.util.Build'><buildNumber>304</buildNumber><marked><SHA1>a7e98a4a02cf06b6a1379db0412864459bea384e</SHA1><branch><SHA1>a7e98a4a02cf06b6a1379db0412864459bea384e</SHA1><name>origin/feat-speed-limit</name></branch></marked><revision><SHA1>a7e98a4a02cf06b6a1379db0412864459bea384e</SHA1><branch><SHA1>a7e98a4a02cf06b6a1379db0412864459bea384e</SHA1><name>origin/feat-speed-limit</name></branch></revision></originfeat-speed-limit><originfeat_wh _class='hudson.plugins.git.util.Build'><buildNumber>1528</buildNumber><marked><SHA1>166219f79a22689fa52cdc391abdea6433d4ae37</SHA1><branch><SHA1>166219f79a22689fa52cdc391abdea6433d4ae37</SHA1><name>origin/feat_wh</name></branch></marked><revision><SHA1>166219f79a22689fa52cdc391abdea6433d4ae37</SHA1><branch><SHA1>166219f79a22689fa52cdc391abdea6433d4ae37</SHA1><name>origin/feat_wh</name></branch></revision></originfeat_wh><originfeat_xilian_lane_change _class='hudson.plugins.git.util.Build'><buildNumber>710</buildNumber><marked><SHA1>7db10a51bb61d31a6dacddddef02b49f38ceab58</SHA1><branch><SHA1>7db10a51bb61d31a6dacddddef02b49f38ceab58</SHA1><name>origin/feat_xilian_lane_change</name></branch></marked><revision><SHA1>7db10a51bb61d31a6dacddddef02b49f38ceab58</SHA1><branch><SHA1>7db10a51bb61d31a6dacddddef02b49f38ceab58</SHA1><name>origin/feat_xilian_lane_change</name></branch></revision></originfeat_xilian_lane_change><originrc_dev_wf _class='hudson.plugins.git.util.Build'><buildNumber>231</buildNumber><marked><SHA1>ee9fa7a02bb35ee685cee883124da9f669ab6e75</SHA1><branch><SHA1>ee9fa7a02bb35ee685cee883124da9f669ab6e75</SHA1><name>origin/rc_dev_wf</name></branch></marked><revision><SHA1>ee9fa7a02bb35ee685cee883124da9f669ab6e75</SHA1><branch><SHA1>ee9fa7a02bb35ee685cee883124da9f669ab6e75</SHA1><name>origin/rc_dev_wf</name></branch></revision></originrc_dev_wf><originfeat_lock_station _class='hudson.plugins.git.util.Build'><buildNumber>987</buildNumber><marked><SHA1>3e483224ec848dfc40cc51b8fccf47d1f3716d3d</SHA1><branch><SHA1>3e483224ec848dfc40cc51b8fccf47d1f3716d3d</SHA1><name>origin/feat_lock_station</name></branch></marked><revision><SHA1>3e483224ec848dfc40cc51b8fccf47d1f3716d3d</SHA1><branch><SHA1>3e483224ec848dfc40cc51b8fccf47d1f3716d3d</SHA1><name>origin/feat_lock_station</name></branch></revision></originfeat_lock_station><originfeat_og _class='hudson.plugins.git.util.Build'><buildNumber>513</buildNumber><marked><SHA1>17cf5ba4d4c3a3a18a2a6c039346d12deed329bb</SHA1><branch><SHA1>17cf5ba4d4c3a3a18a2a6c039346d12deed329bb</SHA1><name>origin/feat_og</name></branch></marked><revision><SHA1>17cf5ba4d4c3a3a18a2a6c039346d12deed329bb</SHA1><branch><SHA1>17cf5ba4d4c3a3a18a2a6c039346d12deed329bb</SHA1><name>origin/feat_og</name></branch></revision></originfeat_og><originfeat_pnc_scene_replay_web _class='hudson.plugins.git.util.Build'><buildNumber>2111</buildNumber><marked><SHA1>a64dd4a6b8729a84db4812a0740662b1d14f2fa4</SHA1><branch><SHA1>a64dd4a6b8729a84db4812a0740662b1d14f2fa4</SHA1><name>origin/feat_pnc_scene_replay_web</name></branch></marked><revision><SHA1>a64dd4a6b8729a84db4812a0740662b1d14f2fa4</SHA1><branch><SHA1>a64dd4a6b8729a84db4812a0740662b1d14f2fa4</SHA1><name>origin/feat_pnc_scene_replay_web</name></branch></revision></originfeat_pnc_scene_replay_web><originfeat_escape _class='hudson.plugins.git.util.Build'><buildNumber>1231</buildNumber><marked><SHA1>07da24972be561730ba0607d76f6a479db4b96a9</SHA1><branch><SHA1>07da24972be561730ba0607d76f6a479db4b96a9</SHA1><name>origin/feat_escape</name></branch></marked><revision><SHA1>07da24972be561730ba0607d76f6a479db4b96a9</SHA1><branch><SHA1>07da24972be561730ba0607d76f6a479db4b96a9</SHA1><name>origin/feat_escape</name></branch></revision></originfeat_escape><originfeat_proto_xiamen _class='hudson.plugins.git.util.Build'><buildNumber>2176</buildNumber><marked><SHA1>1ff7167cb591123ef08119f40a537cdbe402fe19</SHA1><branch><SHA1>1ff7167cb591123ef08119f40a537cdbe402fe19</SHA1><name>origin/feat_proto_xiamen</name></branch></marked><revision><SHA1>1ff7167cb591123ef08119f40a537cdbe402fe19</SHA1><branch><SHA1>1ff7167cb591123ef08119f40a537cdbe402fe19</SHA1><name>origin/feat_proto_xiamen</name></branch></revision></originfeat_proto_xiamen><originfeat_dev _class='hudson.plugins.git.util.Build'><buildNumber>755</buildNumber><marked><SHA1>f6a5b6ebde79a0d1f93b43f0da4a847743bc28b3</SHA1><branch><SHA1>f6a5b6ebde79a0d1f93b43f0da4a847743bc28b3</SHA1><name>origin/feat_dev</name></branch></marked><revision><SHA1>f6a5b6ebde79a0d1f93b43f0da4a847743bc28b3</SHA1><branch><SHA1>f6a5b6ebde79a0d1f93b43f0da4a847743bc28b3</SHA1><name>origin/feat_dev</name></branch></revision></originfeat_dev><originfeat_pnc_status _class='hudson.plugins.git.util.Build'><buildNumber>1640</buildNumber><marked><SHA1>a0e27a4547573c85a1e22a137a9413f6591bd994</SHA1><branch><SHA1>a0e27a4547573c85a1e22a137a9413f6591bd994</SHA1><name>origin/feat_pnc_status</name></branch></marked><revision><SHA1>a0e27a4547573c85a1e22a137a9413f6591bd994</SHA1><branch><SHA1>a0e27a4547573c85a1e22a137a9413f6591bd994</SHA1><name>origin/feat_pnc_status</name></branch></revision></originfeat_pnc_status><originmodify_lane_change_new _class='hudson.plugins.git.util.Build'><buildNumber>84</buildNumber><marked><SHA1>c1443c21419c749982e38d885282592a971fdcf7</SHA1><branch><SHA1>c1443c21419c749982e38d885282592a971fdcf7</SHA1><name>origin/modify_lane_change_new</name></branch></marked><revision><SHA1>c1443c21419c749982e38d885282592a971fdcf7</SHA1><branch><SHA1>c1443c21419c749982e38d885282592a971fdcf7</SHA1><name>origin/modify_lane_change_new</name></branch></revision></originmodify_lane_change_new></buildsByBranchName><lastBuiltRevision><SHA1>d91ca0e6bdcd735a27a0491bd255d7cd33e5d7c8</SHA1><branch><SHA1>d91ca0e6bdcd735a27a0491bd255d7cd33e5d7c8</SHA1><name>origin/feat_ros2_platoon</name></branch></lastBuiltRevision><remoteUrl>http://159.27.226.4/pnc/pnc.git</remoteUrl><scmName></scmName></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><originros2 _class='hudson.plugins.git.util.Build'><buildNumber>2177</buildNumber><marked><SHA1>1336438603254bb01a9125eabd6d531597c243cc</SHA1><branch><SHA1>1336438603254bb01a9125eabd6d531597c243cc</SHA1><name>origin/ros2</name></branch></marked><revision><SHA1>1336438603254bb01a9125eabd6d531597c243cc</SHA1><branch><SHA1>1336438603254bb01a9125eabd6d531597c243cc</SHA1><name>origin/ros2</name></branch></revision></originros2><originfeat_hypsographic_map _class='hudson.plugins.git.util.Build'><buildNumber>1705</buildNumber><marked><SHA1>7edae3e34281e5446eb04da3b4093217e61f2337</SHA1><branch><SHA1>7edae3e34281e5446eb04da3b4093217e61f2337</SHA1><name>origin/feat_hypsographic_map</name></branch></marked><revision><SHA1>7edae3e34281e5446eb04da3b4093217e61f2337</SHA1><branch><SHA1>7edae3e34281e5446eb04da3b4093217e61f2337</SHA1><name>origin/feat_hypsographic_map</name></branch></revision></originfeat_hypsographic_map><origintemp_interface _class='hudson.plugins.git.util.Build'><buildNumber>387</buildNumber><marked><SHA1>cd454059f302c9b2474e6609c1546a358ce6f72f</SHA1><branch><SHA1>cd454059f302c9b2474e6609c1546a358ce6f72f</SHA1><name>origin/temp_interface</name></branch></marked><revision><SHA1>cd454059f302c9b2474e6609c1546a358ce6f72f</SHA1><branch><SHA1>cd454059f302c9b2474e6609c1546a358ce6f72f</SHA1><name>origin/temp_interface</name></branch></revision></origintemp_interface><originrc_dev _class='hudson.plugins.git.util.Build'><buildNumber>2176</buildNumber><marked><SHA1>baaa7dbe0743898225ca422520bae8e624a4d3e1</SHA1><branch><SHA1>baaa7dbe0743898225ca422520bae8e624a4d3e1</SHA1><name>origin/rc_dev</name></branch></marked><revision><SHA1>baaa7dbe0743898225ca422520bae8e624a4d3e1</SHA1><branch><SHA1>baaa7dbe0743898225ca422520bae8e624a4d3e1</SHA1><name>origin/rc_dev</name></branch></revision></originrc_dev><originrc_dev_add_lane_name _class='hudson.plugins.git.util.Build'><buildNumber>1462</buildNumber><marked><SHA1>be65f77d9d0f6a3ae20cc796e381889a03ce43ee</SHA1><branch><SHA1>be65f77d9d0f6a3ae20cc796e381889a03ce43ee</SHA1><name>origin/rc_dev_add_lane_name</name></branch></marked><revision><SHA1>be65f77d9d0f6a3ae20cc796e381889a03ce43ee</SHA1><branch><SHA1>be65f77d9d0f6a3ae20cc796e381889a03ce43ee</SHA1><name>origin/rc_dev_add_lane_name</name></branch></revision></originrc_dev_add_lane_name><originfeat_fence _class='hudson.plugins.git.util.Build'><buildNumber>594</buildNumber><marked><SHA1>bfea094fbf5d6f1c5eca3dfaa2044894fec263f6</SHA1><branch><SHA1>bfea094fbf5d6f1c5eca3dfaa2044894fec263f6</SHA1><name>origin/feat_fence</name></branch></marked><revision><SHA1>bfea094fbf5d6f1c5eca3dfaa2044894fec263f6</SHA1><branch><SHA1>bfea094fbf5d6f1c5eca3dfaa2044894fec263f6</SHA1><name>origin/feat_fence</name></branch></revision></originfeat_fence></buildsByBranchName><lastBuiltRevision><SHA1>1336438603254bb01a9125eabd6d531597c243cc</SHA1><branch><SHA1>1336438603254bb01a9125eabd6d531597c243cc</SHA1><name>origin/ros2</name></branch></lastBuiltRevision><remoteUrl>http://159.27.226.4/map/hdmap_interface.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#2177</displayName><duration>370030</duration><estimatedDuration>2049227</estimatedDuration><fullDisplayName>module-pnc_replayer #2177</fullDisplayName><id>2177</id><keepLog>false</keepLog><number>2177</number><queueId>1359051</queueId><result>FAILURE</result><timestamp>1792567548737</timestamp><url>http://159.27.114.184:8080/jenkins/user/chenliang/my-views/view/all/job/module-pnc_replayer/2177/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>platoon_msgs/msg/LaneChangeInfo.msg</affectedPath><affectedPath>platoon_msgs/msg/VehicleInfo.msg</affectedPath><affectedPath>platoon_msgs/CMakeLists.txt</affectedPath><commitId>7b8133dd2f1f34e239864682df59fd6ed1393014</commitId><timestamp>1789451206000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>fix: 编队变道相关消息
</comment><date>2026-09-15 13:46:46 +0800</date><id>7b8133dd2f1f34e239864682df59fd6ed1393014</id><msg>fix: 编队变道相关消息</msg><path><editType>edit</editType><file>platoon_msgs/msg/VehicleInfo.msg</file></path><path><editType>add</editType><file>platoon_msgs/msg/LaneChangeInfo.msg</file></path><path><editType>edit</editType><file>platoon_msgs/CMakeLists.txt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>platoon_msgs/msg/LaneChangeInfo.msg</affectedPath><affectedPath>platoon_msgs/msg/VehicleInfo.msg</affectedPath><affectedPath>platoon_msgs/CMakeLists.txt</affectedPath><affectedPath>platoon_msgs/msg/PNCInfo.msg</affectedPath><commitId>09e25f72706b8350a7a15258d8e2613a6e2d1a2b</commitId><timestamp>1789994399000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>Consolidate platoon planning data into compact PNCInfo message
</comment><date>2026-09-21 20:39:59 +0800</date><id>09e25f72706b8350a7a15258d8e2613a6e2d1a2b</id><msg>Consolidate platoon planning data into compact PNCInfo message</msg><path><editType>delete</editType><file>platoon_msgs/msg/LaneChangeInfo.msg</file></path><path><editType>edit</editType><file>platoon_msgs/CMakeLists.txt</file></path><path><editType>add</editType><file>platoon_msgs/msg/PNCInfo.msg</file></path><path><editType>edit</editType><file>platoon_msgs/msg/VehicleInfo.msg</file></path></item><kind>git</kind></changeSet><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>data/vehicle/request_routing_data.hpp</affectedPath><affectedPath>data/plan/switch_data.hpp</affectedPath><affectedPath>replayer/scene_data/remaining_plan_proto_codec.cpp</affectedPath><affectedPath>data/map/pnc_map/routing_extension/routing_data.hpp</affectedPath><affectedPath>replayer/scene_data/generated/compact_typed_field_codec.cpp</affectedPath><affectedPath>data/semantic/semantic_description.hpp</affectedPath><affectedPath>common/time/time.hpp</affectedPath><affectedPath>data/object.hpp</affectedPath><affectedPath>replayer/scene_data/generated/compact_typed_field_codec.hpp</affectedPath><affectedPath>replayer/scene_data/plan_frame_full_mapping.yaml</affectedPath><affectedPath>data/vehicle/deviation_status.hpp</affectedPath><affectedPath>data/plan/smooth_data.hpp</affectedPath><affectedPath>replayer/scene_data/remaining_plan_proto_codec.hpp</affectedPath><commitId>97f1f432103592542d9adceecbbd2806990c777b</commitId><timestamp>1787337277000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>feat: 补齐规划地图显式 Proto Codec
</comment><date>2026-08-22 02:34:37 +0800</date><id>97f1f432103592542d9adceecbbd2806990c777b</id><msg>feat: 补齐规划地图显式 Proto Codec</msg><path><editType>edit</editType><file>data/semantic/semantic_description.hpp</file></path><path><editType>add</editType><file>replayer/scene_data/plan_frame_full_mapping.yaml</file></path><path><editType>edit</editType><file>data/vehicle/deviation_status.hpp</file></path><path><editType>edit</editType><file>common/time/time.hpp</file></path><path><editType>edit</editType><file>data/vehicle/request_routing_data.hpp</file></path><path><editType>edit</editType><file>data/plan/switch_data.hpp</file></path><path><editType>add</editType><file>replayer/scene_data/generated/compact_typed_field_codec.cpp</file></path><path><editType>edit</editType><file>data/map/pnc_map/routing_extension/routing_data.hpp</file></path><path><editType>edit</editType><file>data/object.hpp</file></path><path><editType>add</editType><file>replayer/scene_data/generated/compact_typed_field_codec.hpp</file></path><path><editType>edit</editType><file>data/plan/smooth_data.hpp</file></path><path><editType>add</editType><file>replayer/scene_data/remaining_plan_proto_codec.hpp</file></path><path><editType>add</editType><file>replayer/scene_data/remaining_plan_proto_codec.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>replayer/algorithm_replay/report_artifact_bundle.cpp</affectedPath><affectedPath>Testing/regression_report_test.cpp</affectedPath><affectedPath>Testing/load_snap_data_compat_test.cpp</affectedPath><affectedPath>replayer/analysis_server/binary_update_broker.hpp</affectedPath><affectedPath>replayer/scene_data/compact_snapshot_stream_decoder.cpp</affectedPath><affectedPath>CMakeLists.txt</affectedPath><affectedPath>replayer/scene_data/replayer_data_process_adapter.hpp</affectedPath><affectedPath>replayer/scene_data/full_proto_custom_encoder.hpp</affectedPath><affectedPath>replayer/algorithm_replay/experiment_analysis_coordinator.cpp</affectedPath><affectedPath>replayer/scene_data/compatibility_registry.cpp</affectedPath><affectedPath>replayer/tagfs/tagfs_adapter.hpp</affectedPath><affectedPath>replayer/scene_data/versioned_compact_decoder.cpp</affectedPath><affectedPath>replayer/algorithm_replay/generated_variant_config_patch.hpp</affectedPath><affectedPath>Testing/execution_profile_registry_test.cpp</affectedPath><affectedPath>replayer/scene_data/cfg_scenarios_proto_codec.cpp</affectedPath><affectedPath>replayer/scene_replay/scene_bundle_codec.hpp</affectedPath><affectedPath>replayer/algorithm_replay/profiles/dp.yaml</affectedPath><affectedPath>proto/pnc_scene/compact_plan_frame_fields.proto</affectedPath><affectedPath>replayer/algorithm_replay/assertion_profile_loader.cpp</affectedPath><affectedPath>proto/pnc_scene/compact_scene.proto</affectedPath><affectedPath>replayer/algorithm_replay/profiles/keb_lane_follow.yaml</affectedPath><affectedPath>replayer/scene_data/proto_bag_scene_builder.cpp</affectedPath><affectedPath>replayer/algorithm_replay/execution_profile_registry.hpp</affectedPath><affectedPath>replayer/scene_data/compact_numeric_policy.yaml</affectedPath><affectedPath>tools/pnc_proto_mapper/baseline/plan_frame_descriptor.pb</affectedPath><affectedPath>proto/ssep_compact.proto</affectedPath><affectedPath>replayer/scene_data/obstacle_proto_codec.hpp</affectedPath><affectedPath>replayer/scene_data/map_provider.cpp</affectedPath><affectedPath>data/vehicle/spreader_protect.hpp</affectedPath><affectedPath>Testing/beast_analysis_server_test.cpp</affectedPath><affectedPath>data/app/reaction/app_reaction.hpp</affectedPath><affectedPath>replayer/scene_data/live_compact_ingress.cpp</affectedPath><affectedPath>replayer/analysis_server/config/analysis_server.lsg.proto_bag.yaml</affectedPath><affectedPath>replayer/analysis_server/analysis_server_app.cpp</affectedPath><affectedPath>tools/pnc_proto_bag_server/main.cpp</affectedPath><affectedPath>data/plan/path_direction_data.hpp</affectedPath><affectedPath>Testing/compatibility_registry_test.cpp</affectedPath><affectedPath>data/dp_poly_path/dp_road_graph.hpp</affectedPath><affectedPath>data/common/guide_path.cpp</affectedPath><affectedPath>replayer/scene_data/legacy_location_repair.hpp</affectedPath><affectedPath>replayer/analysis_server/compact_geometry_wire.hpp</affectedPath><affectedPath>data/vehicle/priori_bay_info.hpp</affectedPath><affectedPath>replayer/scene_data/compact_proto_codec.cpp</affectedPath><affectedPath>scenarios/scenario.cpp</affectedPath><affectedPath>Testing/linear_velocity_generator_test.cpp</affectedPath><affectedPath>replayer/replayer_data_process/replayer_data_process.cpp</affectedPath><affectedPath>proto/pnc_scene/compressed_frame_chunk.proto</affectedPath><affectedPath>replayer/algorithm_replay/candidate_frame_builder.cpp</affectedPath><affectedPath>replayer/scene_data/vehicle_state_proto_codec.hpp</affectedPath><affectedPath>Testing/pnc_case_cli_test.cpp</affectedPath><affectedPath>Testing/compact_scene_service_handler_test.cpp</affectedPath><affectedPath>replayer/scene_replay/scene_replay_web_page.hpp</affectedPath><affectedPath>replayer/algorithm_replay/profiles/keb.yaml</affectedPath><affectedPath>scenarios/scenario_supervise.cpp</affectedPath><affectedPath>replayer/scene_data/compact_replay_session.hpp</affectedPath><affectedPath>Testing/async_generation_guard_test.cpp</affectedPath><affectedPath>Testing/cfg_scenarios_proto_codec_test.cpp</affectedPath><affectedPath>data/config/cfg_static.hpp</affectedPath><affectedPath>replayer/analysis_server/compact_scene_service_handler.cpp</affectedPath><affectedPath>replayer/scene_replay/payload_codec.cpp</affectedPath><affectedPath>replayer/algorithm_replay/production_variant_runner.hpp</affectedPath><affectedPath>replayer/scene_data/generated/trajectory_schema_inputs.json</affectedPath><affectedPath>replayer/analysis_server/proto_http_router.cpp</affectedPath><affectedPath>replayer/analysis_server/config/analysis_server.example.yaml</affectedPath><affectedPath>data/plan/side_pass_data.hpp</affectedPath><affectedPath>replayer/algorithm_replay/profile_collectors.cpp</affectedPath><affectedPath>proto/scenario.proto</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_field_roles.json</affectedPath><affectedPath>replayer/scene_data/longitude_constrain_proto_codec.cpp</affectedPath><affectedPath>replayer/tagfs/tagfs_clients.cpp</affectedPath><affectedPath>replayer/algorithm_replay/assertions/lateral_path.yaml</affectedPath><affectedPath>proto/pnc_scene/scene_map_layer.proto</affectedPath><affectedPath>replayer/scene_replay/scene_replay_proto.cpp</affectedPath><affectedPath>scenarios/parking_scenario/parking_move_stage.cpp</affectedPath><affectedPath>replayer/scene_replay/recorded_scene_session.cpp</affectedPath><affectedPath>launch/replay/regression_task.launch</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_member_inputs.json</affectedPath><affectedPath>replayer/scene_data/config_proto_codec.hpp</affectedPath><affectedPath>proto/vehicle.proto</affectedPath><affectedPath>docs/pnc_algorithm_replay/compact_numeric_encoding_rules.md</affectedPath><affectedPath>replayer/scene_replay/live_compressed_frame_ingress.cpp</affectedPath><affectedPath>tools/pnc_case/pnc_case_main.cpp</affectedPath><affectedPath>replayer/scene_replay/scene_replay_service.hpp</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_descriptor.pb</affectedPath><affectedPath>replayer/algorithm_replay/assertions/common.yaml</affectedPath><affectedPath>replayer/scene_data/compact_geometry_codec.cpp</affectedPath><affectedPath>Testing/generated_variant_config_patch_test.cpp</affectedPath><affectedPath>tools/pnc_proto_mapper/bandwidth_lint.py</affectedPath><affectedPath>replayer/scene_data/compatibility_gateway.cpp</affectedPath><affectedPath>tools/pnc_proto_mapper/audit_plan_frame_fields.py</affectedPath><affectedPath>proto/scene_replay_api.proto</affectedPath><affectedPath>data/obstacle/perception_obstacle.hpp</affectedPath><affectedPath>replayer/algorithm_replay/replay_history.hpp</affectedPath><affectedPath>tools/pnc_proto_mapper/baseline/plan_frame_field_roles.json</affectedPath><affectedPath>data/other/flow_control.hpp</affectedPath><affectedPath>scenarios/into_yard_junction_scenario/into_yard_junction_first_stage.cpp</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_decoder.hpp</affectedPath><affectedPath>replayer/replayer_data_process/replayer_data_process.hpp</affectedPath><affectedPath>tools/pnc_proto_mapper/generate_hmi_layer_catalog.py</affectedPath><affectedPath>scenarios/scenario_supervise.hpp</affectedPath><affectedPath>tools/pnc_proto_bag_to_scene/main.cpp</affectedPath><affectedPath>replayer/scene_data/hmi_layer_manifest.yaml</affectedPath><affectedPath>Testing/report_artifact_bundle_test.cpp</affectedPath><affectedPath>replayer/scene_replay/payload_codec.hpp</affectedPath><affectedPath>proto/scene_payload.proto</affectedPath><affectedPath>replayer/scene_replay/compressed_frame_ring_buffer.cpp</affectedPath><affectedPath>replayer/analysis_server/scene_replay_service_handler.cpp</affectedPath><affectedPath>data/plan/guide_line.hpp</affectedPath><affectedPath>replayer/algorithm_replay/regression_report.cpp</affectedPath><affectedPath>data/vehicle/lock_station_pts.hpp</affectedPath><affectedPath>Testing/compact_replay_session_test.cpp</affectedPath><affectedPath>replayer/analysis_server/beast_analysis_server.cpp</affectedPath><affectedPath>replayer/case_orchestrator/case_orchestrator.hpp</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_mapping_scaffold.yaml</affectedPath><affectedPath>proto/debug.proto</affectedPath><affectedPath>Testing/encoding_benchmark_test.cpp</affectedPath><affectedPath>data/config/cfg_stage.cpp</affectedPath><affectedPath>Testing/experiment_session_test.cpp</affectedPath><affectedPath>Testing/experiment_analysis_coordinator_test.cpp</affectedPath><affectedPath>replayer/tagfs/tagfs_clients.hpp</affectedPath><affectedPath>data/plan/reference_line_info.hpp</affectedPath><affectedPath>replayer/algorithm_replay/async_generation_guard.cpp</affectedPath><affectedPath>proto/pnc_scene/compact_guide_line.proto</affectedPath><affectedPath>replayer/scene_replay/live_compressed_frame_ingress.hpp</affectedPath><affectedPath>replayer/scene_data/encoding_benchmark.cpp</affectedPath><affectedPath>proto/pnc_scene/scene_debug_layer.proto</affectedPath><affectedPath>proto/map_data.proto</affectedPath><affectedPath>data/obstacle/prediction_trajectory.hpp</affectedPath><affectedPath>replayer/live_bridge/pnc_live_web_bridge.cpp</affectedPath><affectedPath>scenarios/stage.hpp</affectedPath><affectedPath>data/vehicle/cloud_pnc_config.hpp</affectedPath><affectedPath>replayer/scene_data/vehicle_input_proto_codec.hpp</affectedPath><affectedPath>data/obstacle/obstacle_decider_attr.hpp</affectedPath><affectedPath>proto/pnc_scene/scene_channel.proto</affectedPath><affectedPath>replayer/algorithm_replay/stage_task_replay_engine.hpp</affectedPath><affectedPath>replayer/scene_importer/legacy_boost_plan_frame_decoder.hpp</affectedPath><affectedPath>.gitignore</affectedPath><affectedPath>data/vehicle/container_compensate_info.hpp</affectedPath><affectedPath>proto/pnc_scene/compressed_scene_payload.proto</affectedPath><affectedPath>replayer/live_bridge/pnc_live_bridge_app.cpp</affectedPath><affectedPath>replayer/algorithm_replay/batch_regression_runner.cpp</affectedPath><affectedPath>docs/pnc_algorithm_replay/proto_generation.md</affectedPath><affectedPath>replayer/analysis_server/scene_channel_wire.hpp</affectedPath><affectedPath>tools/pnc_proto_mapper/sync_trajectory_schema.py</affectedPath><affectedPath>proto/pnc_scene/scene_chart.proto</affectedPath><affectedPath>replayer/scene_data/proto_codec_gap.hpp</affectedPath><affectedPath>replayer/algorithm_replay/assertion_engine.hpp</affectedPath><affectedPath>replayer/scene_data/compact_snapshot_stream_decoder.hpp</affectedPath><affectedPath>tools/pnc_scene_importer/main.cpp</affectedPath><affectedPath>replayer/algorithm_replay/generated_variant_config_patch.cpp</affectedPath><affectedPath>data/map/reference/reference_segment.hpp</affectedPath><affectedPath>replayer/case_orchestrator/pnc_case_cli.cpp</affectedPath><affectedPath>data/vehicle/vehicle_status.hpp</affectedPath><affectedPath>replayer/scene_data/generated/hmi_layer_catalog.cpp</affectedPath><affectedPath>replayer/scene_replay/README.md</affectedPath><affectedPath>replayer/scene_data/obstacle_proto_codec.cpp</affectedPath><affectedPath>sink/ros_sink_snapshot_compact_scene.cpp</affectedPath><affectedPath>Testing/scene_replay_foundation_test.cpp</affectedPath><affectedPath>tools/pnc_proto_mapper/hmi_taxonomy_lint.py</affectedPath><affectedPath>tools/pnc_proto_mapper/sync_state_schema.py</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_encoder.cpp</affectedPath><affectedPath>replayer/scene_data/compact_custom_field_proto_codec.hpp</affectedPath><affectedPath>replayer/scene_data/full_proto_custom_encoder.cpp</affectedPath><affectedPath>replayer/live_bridge/config/live_bridge.example.yaml</affectedPath><affectedPath>replayer/algorithm_replay/profiles/full_stage.yaml</affectedPath><affectedPath>tools/pnc_encoding_benchmark/main.cpp</affectedPath><affectedPath>tools/pnc_proto_mapper/baseline/scene_replay_api_descriptor.pb</affectedPath><affectedPath>proto/common.proto</affectedPath><affectedPath>tools/pnc_proto_mapper/audit_task_chains.py</affectedPath><affectedPath>replayer/scene_data/generated/compact_typed_field_codec.cpp</affectedPath><affectedPath>Testing/batch_regression_runner_test.cpp</affectedPath><affectedPath>data/map/pnc_map/road_segments.cpp</affectedPath><affectedPath>replayer/scene_data/proto_bag_scene_builder.hpp</affectedPath><affectedPath>replayer/sdk/replay_backend_c.cpp</affectedPath><affectedPath>proto/pnc_scene/compact_recorded_result.proto</affectedPath><affectedPath>proto/trajectory.proto</affectedPath><affectedPath>data/vehicle/vehicle_state.hpp</affectedPath><affectedPath>tools/pnc_proto_mapper/generator.py</affectedPath><affectedPath>proto/CMakeLists.txt</affectedPath><affectedPath>replayer/scene_importer/legacy_scene_importer.cpp</affectedPath><affectedPath>replayer/live_bridge/live_scene_service_handler.hpp</affectedPath><affectedPath>replayer/algorithm_replay/execution_profile_registry.cpp</affectedPath><affectedPath>algorithm/wbca/linear_velocity_generator.cpp</affectedPath><affectedPath>data/vehicle/cmd_feedback_state.hpp</affectedPath><affectedPath>data/app/app_data.hpp</affectedPath><affectedPath>replayer/scene_data/scene_payload_codec.cpp</affectedPath><affectedPath>replayer/scene_data/generated/state_schema_inputs.json</affectedPath><affectedPath>replayer/algorithm_replay/assertions/longitudinal_trajectory.yaml</affectedPath><affectedPath>replayer/scene_data/plan_frame_field_roles.csv</affectedPath><affectedPath>core/snapshot_async.cpp</affectedPath><affectedPath>data/constrain/block_data.hpp</affectedPath><affectedPath>replayer/algorithm_replay/assertion_pack_registry.cpp</affectedPath><affectedPath>replayer/scene_data/generated/scene_replay_api_descriptor.pb</affectedPath><affectedPath>tools/pnc_proto_mapper/scaffold_mapping.py</affectedPath><affectedPath>.vscode/tasks.json</affectedPath><affectedPath>replayer/scene_data/compact_replay_session.cpp</affectedPath><affectedPath>replayer/sdk/planframe_compat.hpp</affectedPath><affectedPath>scenarios/scenario.hpp</affectedPath><affectedPath>source/ros_source_replayer_snapshot.cpp</affectedPath><affectedPath>replayer/algorithm_replay/assertion_engine.cpp</affectedPath><affectedPath>Testing/legacy_scene_importer_test.cpp</affectedPath><affectedPath>replayer/algorithm_replay/candidate_frame_builder.hpp</affectedPath><affectedPath>Testing/assertion_pack_registry_test.cpp</affectedPath><affectedPath>tools/pnc_proto_mapper/full_schema_lint.py</affectedPath><affectedPath>replayer/logic.cpp</affectedPath><affectedPath>sink/ros_sink_snapshot_compact_scene.hpp</affectedPath><affectedPath>replayer/algorithm_replay/production_variant_runner.cpp</affectedPath><affectedPath>replayer/live_bridge/pnc_live_bridge_app.hpp</affectedPath><affectedPath>Testing/live_bridge_app_test.cpp</affectedPath><affectedPath>replayer/analysis_server/scene_channel_wire.cpp</affectedPath><affectedPath>replayer/analysis_server/compact_scene_service_handler.hpp</affectedPath><affectedPath>proto/replay_v15.proto</affectedPath><affectedPath>replayer/scene_data/generated/container_schema_inputs.json</affectedPath><affectedPath>docs/compact_proto_boost_removal.md</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_encoder.hpp</affectedPath><affectedPath>replayer/analysis_server/proto_http_router.hpp</affectedPath><affectedPath>proto/obstacle_compact.proto</affectedPath><affectedPath>replayer/scene_data/generated/compact_scene_descriptor.pb</affectedPath><affectedPath>tools/pnc_proto_mapper/sync_config_schema.py</affectedPath><affectedPath>docs/pnc_algorithm_replay/examples/pnc_case_promote/request-production-async.yaml</affectedPath><affectedPath>proto/pnc_scene/compact_geometry.proto</affectedPath><affectedPath>data/vehicle/lock_station_data.hpp</affectedPath><affectedPath>replayer/scene_data/longitude_constrain_proto_codec.hpp</affectedPath><affectedPath>scenarios/task_execution_policy.hpp</affectedPath><affectedPath>proto/pnc_scene/compact_recorded_debug.proto</affectedPath><affectedPath>data/lattice/ogm_crash_data.hpp</affectedPath><affectedPath>tasks/task_factory.cpp</affectedPath><affectedPath>proto/pnc_scene/experiment_parameter_patch.proto</affectedPath><affectedPath>data/map/pnc_map/road_segments.h</affectedPath><affectedPath>replayer/scene_importer/legacy_scene_importer.hpp</affectedPath><affectedPath>tools/pnc_proto_mapper/test_build_boundaries.py</affectedPath><affectedPath>data/constrain/disable_stop_range.hpp</affectedPath><affectedPath>replayer/scene_replay/recorded_scene_session.hpp</affectedPath><affectedPath>replayer/scene_data/plan_frame_full_mapping.yaml</affectedPath><affectedPath>replayer/scene_data/remaining_plan_proto_codec.hpp</affectedPath><affectedPath>tools/pnc_replay_backend/ensure_ros_master.sh</affectedPath><affectedPath>data/vehicle/yard_occupy_info.hpp</affectedPath><affectedPath>proto/pnc_scene/scene_envelope.proto</affectedPath><affectedPath>replayer/analysis_server/binary_update_broker.cpp</affectedPath><affectedPath>replayer/scene_data/replayer_data_process_adapter.cpp</affectedPath><affectedPath>data/plan/ssep_data.hpp</affectedPath><affectedPath>replayer/scene_data/compact_geometry_codec.hpp</affectedPath><affectedPath>replayer/algorithm_replay/experiment_session.cpp</affectedPath><affectedPath>offboard/bag_to_keb_scene/bag_to_keb_scene.cc</affectedPath><affectedPath>proto/pnc_scene/live_compact_frame.proto</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_decoder.cpp</affectedPath><affectedPath>replayer/scene_data/compact_scene_archive_codec.hpp</affectedPath><affectedPath>data/vehicle/vehicle_destination.hpp</affectedPath><affectedPath>replayer/algorithm_replay/report_artifact_bundle.hpp</affectedPath><affectedPath>replayer/scene_data/encoding_benchmark.hpp</affectedPath><affectedPath>replayer/analysis_server/beast_analysis_server.hpp</affectedPath><affectedPath>data/config/cfg_lat_plan.hpp</affectedPath><affectedPath>replayer/scene_data/recorded_frame_decoder.cpp</affectedPath><affectedPath>replayer/tagfs/tagfs_adapter.cpp</affectedPath><affectedPath>docs/pnc_algorithm_replay/examples/pnc_case_promote/request-lane-follow.yaml</affectedPath><affectedPath>replayer/algorithm_replay/replay_history.cpp</affectedPath><affectedPath>replayer/algorithm_replay/generated/scenario_task_chains.json</affectedPath><affectedPath>tools/pnc_proto_mapper/import_full_schema_mapping.py</affectedPath><affectedPath>Testing/case_orchestrator_test.cpp</affectedPath><affectedPath>scenarios/lane_follow_scenario/lane_follow_stage.cpp</affectedPath><affectedPath>replayer/algorithm_replay/assertion_profile_loader.hpp</affectedPath><affectedPath>tools/pnc_proto_mapper/schema_lint.py</affectedPath><affectedPath>replayer/scene_data/legacy_location_repair.cpp</affectedPath><affectedPath>replayer/scene_data/versioned_compact_decoder.hpp</affectedPath><affectedPath>replayer/algorithm_replay/profiles/wbca.yaml</affectedPath><affectedPath>replayer/scene_data/map_provider.hpp</affectedPath><affectedPath>replayer/analysis_server/README.md</affectedPath><affectedPath>data/vehicle/parallel_driving_state.hpp</affectedPath><affectedPath>Testing/scene_channel_wire_test.cpp</affectedPath><affectedPath>tools/pnc_proto_mapper/sync_container_schema.py</affectedPath><affectedPath>scenarios/stage.cpp</affectedPath><affectedPath>replayer/scene_data/vehicle_input_proto_codec.cpp</affectedPath><affectedPath>replayer/live_bridge/pnc_live_web_bridge.hpp</affectedPath><affectedPath>replayer/scene_replay/recorded_frame_pipeline.cpp</affectedPath><affectedPath>replayer/analysis_server/analysis_server_app.hpp</affectedPath><affectedPath>plan/prepare/prepare_lane_constrain.cpp</affectedPath><affectedPath>docs/pnc_algorithm_replay/examples/pnc_case_promote/request-ssep.yaml</affectedPath><affectedPath>replayer/scene_data/vehicle_state_proto_codec.cpp</affectedPath><affectedPath>proto/pnc_scene/scene_planning_layer.proto</affectedPath><affectedPath>replayer/algorithm_replay/assertion_pack_registry.hpp</affectedPath><affectedPath>replayer/algorithm_replay/profiles/lattice.yaml</affectedPath><affectedPath>replayer/scene_replay/scene_replay_service.cpp</affectedPath><affectedPath>replayer/scene_data/compact_proto_codec.hpp</affectedPath><affectedPath>replayer/scene_replay/recorded_frame_pipeline.hpp</affectedPath><affectedPath>replayer/scene_data/recorded_frame_decoder.hpp</affectedPath><affectedPath>replayer/scene_data/generated/hmi_layer_catalog.hpp</affectedPath><affectedPath>data/obstacle/obstacle.hpp</affectedPath><affectedPath>replayer/algorithm_replay/experiment_session.hpp</affectedPath><affectedPath>replayer/scene_data/compact_scene_archive_codec.cpp</affectedPath><affectedPath>replayer/scene_importer/legacy_boost_plan_frame_decoder.cpp</affectedPath><affectedPath>scenarios/bulkload_scenario/bulkload_ssep_forward_stage.cpp</affectedPath><affectedPath>replayer/algorithm_replay/batch_regression_runner.hpp</affectedPath><affectedPath>replayer/scene_data/generated/compact_typed_field_codec.hpp</affectedPath><affectedPath>replayer/case_orchestrator/pnc_case_cli.hpp</affectedPath><affectedPath>data/app/fsm_interface.hpp</affectedPath><affectedPath>replayer/scene_data/compact_custom_field_proto_codec.cpp</affectedPath><affectedPath>Testing/regression_task_api_test.cpp</affectedPath><affectedPath>proto/pnc_scene/pnc_mapping_options.proto</affectedPath><affectedPath>data/vehicle/traffic_light_data.hpp</affectedPath><affectedPath>common/util/hdmap_wrapper.cpp</affectedPath><affectedPath>proto/decision.proto</affectedPath><affectedPath>data/map/envelop/map_envelops.cpp</affectedPath><affectedPath>tools/pnc_analysis_server/pnc_analysis_server_main.cpp</affectedPath><affectedPath>Testing/live_web_bridge_test.cpp</affectedPath><affectedPath>proto/pnc_scene/compact_replay_input.proto</affectedPath><affectedPath>tools/pnc_proto_mapper/proto_only_lint.py</affectedPath><affectedPath>tools/pnc_proto_mapper/test_mapping_contract.py</affectedPath><affectedPath>replayer/replayer_data_process/load_snap_data.cpp</affectedPath><affectedPath>Testing/planframe_compat_test.cpp</affectedPath><affectedPath>tools/pnc_proto_mapper/check_custom_encoders.py</affectedPath><affectedPath>proto/pnc_scene/scene_input_layer.proto</affectedPath><affectedPath>proto/pnc_scene/scene_manifest.proto</affectedPath><affectedPath>replayer/scene_data/config_proto_codec.cpp</affectedPath><affectedPath>Taskfile.yml</affectedPath><affectedPath>replayer/scene_replay/scene_replay_proto.hpp</affectedPath><affectedPath>proto/trajectory_compact.proto</affectedPath><affectedPath>data/config/cfg_hmi_layer_mapping.yaml</affectedPath><affectedPath>tools/pnc_replay_backend/publish_bundle.py</affectedPath><affectedPath>.vscode/launch.json</affectedPath><affectedPath>data/ctrl/lka_start_up.hpp</affectedPath><affectedPath>proto/pnc_scene/full_plan_frame.proto</affectedPath><affectedPath>replayer/scene_data/scene_payload_codec.hpp</affectedPath><affectedPath>replayer/algorithm_replay/profile_collectors.hpp</affectedPath><affectedPath>proto/data_path_compact.proto</affectedPath><affectedPath>data/vehicle/lane_detection.hpp</affectedPath><affectedPath>replayer/scene_data/remaining_plan_proto_codec.cpp</affectedPath><affectedPath>Testing/tagfs_adapter_test.cpp</affectedPath><affectedPath>proto/plan_data.proto</affectedPath><affectedPath>replayer/sdk/planframe_compat.cpp</affectedPath><affectedPath>replayer/live_bridge/live_scene_service_handler.cpp</affectedPath><affectedPath>docs/pnc_algorithm_replay/schema_v1_decisions.md</affectedPath><affectedPath>replayer/scene_replay/compressed_frame_ring_buffer.hpp</affectedPath><affectedPath>replayer/algorithm_replay/assertions/dp_reverse_meeting.yaml</affectedPath><affectedPath>tools/pnc_proto_mapper/baseline/compact_scene_descriptor.pb</affectedPath><affectedPath>tools/pnc_proto_mapper/test_hmi_taxonomy_lint.py</affectedPath><affectedPath>data/plan/start_point_data.hpp</affectedPath><affectedPath>data/plan/guide_line_info.hpp</affectedPath><affectedPath>replayer/sdk/replay_backend_c.h</affectedPath><affectedPath>replayer/scene_data/compatibility_gateway.hpp</affectedPath><affectedPath>Testing/profile_collectors_test.cpp</affectedPath><affectedPath>data/ctrl/ctrl_data.hpp</affectedPath><affectedPath>replayer/scene_data/generated/config_schema_inputs.json</affectedPath><affectedPath>data/vehicle/cloud_lane_change_status.hpp</affectedPath><affectedPath>replayer/scene_data/compatibility_registry.hpp</affectedPath><affectedPath>replayer/scene_replay/scene_bundle_codec.cpp</affectedPath><affectedPath>Testing/pnc_map_reflection_test.cpp</affectedPath><affectedPath>replayer/algorithm_replay/experiment_analysis_coordinator.hpp</affectedPath><affectedPath>replayer/algorithm_replay/profiles/keb_production_async.yaml</affectedPath><affectedPath>data/plan/path_data.hpp</affectedPath><affectedPath>replayer/analysis_server/scene_replay_service_handler.hpp</affectedPath><affectedPath>replayer/algorithm_replay/regression_report.hpp</affectedPath><affectedPath>replayer/algorithm_replay/profiles/pjpo.yaml</affectedPath><affectedPath>data/vehicle/veh_his_states.hpp</affectedPath><affectedPath>replayer/case_orchestrator/case_orchestrator.cpp</affectedPath><affectedPath>replayer/algorithm_replay/async_generation_guard.hpp</affectedPath><affectedPath>proto/config.proto</affectedPath><affectedPath>Testing/tagfs_clients_test.cpp</affectedPath><affectedPath>data/config/cfg_stage.hpp</affectedPath><affectedPath>replayer/scene_data/cfg_scenarios_proto_codec.hpp</affectedPath><affectedPath>replayer/analysis_server/compact_geometry_wire.cpp</affectedPath><affectedPath>tools/pnc_live_bridge/main.cpp</affectedPath><affectedPath>replayer/algorithm_replay/stage_task_replay_engine.cpp</affectedPath><affectedPath>replayer/scene_data/live_compact_ingress.hpp</affectedPath><affectedPath>tools/pnc_regression_task/pnc_regression_task_main.cpp</affectedPath><affectedPath>tools/pnc_proto_mapper/test_proto_only_lint.py</affectedPath><affectedPath>source/ros_source_replayer_snapshot.hpp</affectedPath><affectedPath>Testing/analysis_server_app_test.cpp</affectedPath><affectedPath>proto/obstacle.proto</affectedPath><commitId>40a5c6c5e6f7a30544a36b89d60ee22369f8a2e2</commitId><timestamp>1787494317000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>feat: 完善规划场景录制与回放链路

实现自动生成的全量 PlanFrame Proto 与面向带宽的 Compact Proto 编解码，移除新快照链路对 Boost serialize 的依赖。\n\n补齐在线快照、离线回放、算法 Candidate 重建、自动化回归、TagFS 接入、OTA backend SDK，以及按需图层和曲线所需的二进制传输合同。\n\n增加字段审计、合同生成、带宽约束、HMI 分类和端到端回归测试，并提供公共 task、launch 与团队使用文档。
</comment><date>2026-08-23 22:11:57 +0800</date><id>40a5c6c5e6f7a30544a36b89d60ee22369f8a2e2</id><msg>feat: 完善规划场景录制与回放链路</msg><path><editType>add</editType><file>replayer/live_bridge/live_scene_service_handler.hpp</file></path><path><editType>add</editType><file>replayer/scene_importer/legacy_boost_plan_frame_decoder.cpp</file></path><path><editType>add</editType><file>Testing/tagfs_adapter_test.cpp</file></path><path><editType>add</editType><file>replayer/scene_importer/legacy_boost_plan_frame_decoder.hpp</file></path><path><editType>add</editType><file>proto/pnc_scene/compact_replay_input.proto</file></path><path><editType>add</editType><file>proto/pnc_scene/scene_chart.proto</file></path><path><editType>add</editType><file>replayer/scene_data/compact_scene_archive_codec.cpp</file></path><path><editType>add</editType><file>replayer/analysis_server/scene_channel_wire.cpp</file></path><path><editType>add</editType><file>replayer/scene_data/live_compact_ingress.cpp</file></path><path><editType>add</editType><file>replayer/algorithm_replay/profiles/full_stage.yaml</file></path><path><editType>add</editType><file>proto/pnc_scene/scene_map_layer.proto</file></path><path><editType>add</editType><file>replayer/scene_data/generated/plan_frame_decoder.hpp</file></path><path><editType>add</editType><file>proto/debug.proto</file></path><path><editType>add</editType><file>replayer/algorithm_replay/replay_history.cpp</file></path><path><editType>edit</editType><file>.gitignore</file></path><path><editType>add</editType><file>replayer/scene_replay/scene_replay_proto.cpp</file></path><path><editType>add</editType><file>Testing/assertion_pack_registry_test.cpp</file></path><path><editType>edit</editType><file>data/vehicle/parallel_driving_state.hpp</file></path><path><editType>edit</editType><file>scenarios/bulkload_scenario/bulkload_ssep_forward_stage.cpp</file></path><path><editType>add</editType><file>Testing/compact_scene_service_handler_test.cpp</file></path><path><editType>edit</editType><file>data/vehicle/cloud_pnc_config.hpp</file></path><path><editType>edit</editType><file>data/obstacle/perception_obstacle.hpp</file></path><path><editType>edit</editType><file>data/plan/guide_line.hpp</file></path><path><editType>add</editType><file>tools/pnc_encoding_benchmark/main.cpp</file></path><path><editType>add</editType><file>tools/pnc_proto_mapper/baseline/scene_replay_api_descriptor.pb</file></path><path><editType>add</editType><file>replayer/algorithm_replay/async_generation_guard.hpp</file></path><path><editType>add</editType><file>replayer/scene_data/replayer_data_process_adapter.cpp</file></path><path><editType>add</editType><file>Testing/live_web_bridge_test.cpp</file></path><path><editType>add</editType><file>replayer/scene_data/compatibility_registry.cpp</file></path><path><editType>add</editType><file>tools/pnc_proto_mapper/bandwidth_lint.py</file></path><path><editType>add</editType><file>replayer/analysis_server/binary_update_broker.hpp</file></path><path><editType>add</editType><file>replayer/live_bridge/live_scene_service_handler.cpp</file></path><path><editType>add</editType><file>replayer/scene_replay/recorded_scene_session.hpp</file></path><path><editType>add</editType><file>Testing/cfg_scenarios_proto_codec_test.cpp</file></path><path><editType>edit</editType><file>data/dp_poly_path/dp_road_graph.hpp</file></path><path><editType>add</editType><file>replayer/scene_data/generated/plan_frame_decoder.cpp</file></path><path><editType>add</editType><file>replayer/live_bridge/pnc_live_web_bridge.cpp</file></path><path><editType>add</editType><file>tools/pnc_proto_mapper/proto_only_lint.py</file></path><path><editType>add</editType><file>replayer/algorithm_replay/assertion_pack_registry.hpp</file></path><path><editType>add</editType><file>Testing/execution_profile_registry_test.cpp</file></path><path><editType>add</editType><file>proto/pnc_scene/pnc_mapping_options.proto</file></path><path><editType>add</editType><file>proto/scene_replay_api.proto</file></path><path><editType>add</editType><file>replayer/scene_data/full_proto_custom_encoder.hpp</file></path><path><editType>edit</editType><file>data/vehicle/vehicle_destination.hpp</file></path><path><editType>add</editType><file>replayer/algorithm_replay/candidate_frame_builder.cpp</file></path><path><editType>add</editType><file>Taskfile.yml</file></path><path><editType>add</editType><file>Testing/tagfs_clients_test.cpp</file></path><path><editType>add</editType><file>proto/config.proto</file></path><path><editType>add</editType><file>replayer/algorithm_replay/profile_collectors.hpp</file></path><path><editType>add</editType><file>replayer/algorithm_replay/assertion_engine.hpp</file></path><path><editType>add</editType><file>replayer/algorithm_replay/assertion_profile_loader.cpp</file></path><path><editType>add</editType><file>replayer/scene_data/compact_snapshot_stream_decoder.cpp</file></path><path><editType>add</editType><file>replayer/scene_data/proto_codec_gap.hpp</file></path><path><editType>edit</editType><file>data/obstacle/prediction_trajectory.hpp</file></path><path><editType>add</editType><file>replayer/scene_data/versioned_compact_decoder.cpp</file></path><path><editType>add</editType><file>tools/pnc_proto_mapper/generate_hmi_layer_catalog.py</file></path><path><editType>add</editType><file>proto/pnc_scene/scene_envelope.proto</file></path><path><editType>add</editType><file>replayer/scene_data/generated/plan_frame_encoder.cpp</file></path><path><editType>add</editType><file>replayer/scene_data/longitude_constrain_proto_codec.hpp</file></path><path><editType>add</editType><file>Testing/async_generation_guard_test.cpp</file></path><path><editType>add</editType><file>replayer/algorithm_replay/batch_regression_runner.cpp</file></path><path><editType>add</editType><file>replayer/scene_data/vehicle_input_proto_codec.cpp</file></path><path><editType>add</editType><file>replayer/algorithm_replay/experiment_analysis_coordinator.cpp</file></path><path><editType>add</editType><file>.vscode/launch.json</file></path><path><editType>add</editType><file>replayer/scene_data/generated/compact_scene_descriptor.pb</file></path><path><editType>add</editType><file>replayer/scene_replay/recorded_scene_session.cpp</file></path><path><editType>add</editType><file>tools/pnc_proto_mapper/baseline/plan_frame_field_roles.json</file></path><path><editType>add</editType><file>replayer/analysis_server/binary_update_broker.cpp</file></path><path><editType>edit</editType><file>scenarios/parking_scenario/parking_move_stage.cpp</file></path><path><editType>add</editType><file>sink/ros_sink_snapshot_compact_scene.hpp</file></path><path><editType>add</editType><file>proto/obstacle.proto</file></path><path><editType>edit</editType><file>data/map/reference/reference_segment.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/plan_frame_full_mapping.yaml</file></path><path><editType>edit</editType><file>data/constrain/disable_stop_range.hpp</file></path><path><editType>add</editType><file>proto/pnc_scene/full_plan_frame.proto</file></path><path><editType>add</editType><file>replayer/scene_importer/legacy_scene_importer.hpp</file></path><path><editType>add</editType><file>replayer/scene_replay/scene_replay_service.hpp</file></path><path><editType>add</editType><file>replayer/sdk/replay_backend_c.cpp</file></path><path><editType>add</editType><file>replayer/case_orchestrator/case_orchestrator.cpp</file></path><path><editType>add</editType><file>replayer/analysis_server/compact_geometry_wire.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/compact_typed_field_codec.cpp</file></path><path><editType>add</editType><file>proto/pnc_scene/compact_guide_line.proto</file></path><path><editType>add</editType><file>replayer/algorithm_replay/profile_collectors.cpp</file></path><path><editType>edit</editType><file>replayer/replayer_data_process/load_snap_data.cpp</file></path><path><editType>add</editType><file>replayer/algorithm_replay/generated/scenario_task_chains.json</file></path><path><editType>edit</editType><file>replayer/scene_data/remaining_plan_proto_codec.hpp</file></path><path><editType>edit</editType><file>data/config/cfg_stage.hpp</file></path><path><editType>add</editType><file>replayer/algorithm_replay/profiles/lattice.yaml</file></path><path><editType>add</editType><file>tools/pnc_proto_mapper/scaffold_mapping.py</file></path><path><editType>add</editType><file>replayer/scene_replay/live_compressed_frame_ingress.hpp</file></path><path><editType>add</editType><file>Testing/batch_regression_runner_test.cpp</file></path><path><editType>add</editType><file>tools/pnc_proto_mapper/check_custom_encoders.py</file></path><path><editType>add</editType><file>proto/decision.proto</file></path><path><editType>add</editType><file>replayer/analysis_server/proto_http_router.cpp</file></path><path><editType>add</editType><file>replayer/algorithm_replay/profiles/dp.yaml</file></path><path><editType>edit</editType><file>data/obstacle/obstacle.hpp</file></path><path><editType>add</editType><file>tools/pnc_proto_mapper/test_build_boundaries.py</file></path><path><editType>add</editType><file>Testing/legacy_scene_importer_test.cpp</file></path><path><editType>add</editType><file>proto/data_path_compact.proto</file></path><path><editType>add</editType><file>replayer/analysis_server/scene_replay_service_handler.cpp</file></path><path><editType>add</editType><file>proto/trajectory.proto</file></path><path><editType>add</editType><file>replayer/algorithm_replay/assertions/lateral_path.yaml</file></path><path><editType>add</editType><file>proto/pnc_scene/scene_debug_layer.proto</file></path><path><editType>edit</editType><file>data/vehicle/vehicle_status.hpp</file></path><path><editType>add</editType><file>replayer/algorithm_replay/assertion_profile_loader.hpp</file></path><path><editType>add</editType><file>Testing/regression_report_test.cpp</file></path><path><editType>edit</editType><file>data/vehicle/container_compensate_info.hpp</file></path><path><editType>add</editType><file>replayer/scene_replay/scene_replay_proto.hpp</file></path><path><editType>edit</editType><file>data/config/cfg_static.hpp</file></path><path><editType>add</editType><file>replayer/scene_data/compatibility_registry.hpp</file></path><path><editType>add</editType><file>Testing/report_artifact_bundle_test.cpp</file></path><path><editType>add</editType><file>replayer/scene_data/plan_frame_field_roles.csv</file></path><path><editType>edit</editType><file>data/vehicle/traffic_light_data.hpp</file></path><path><editType>add</editType><file>replayer/algorithm_replay/profiles/keb_production_async.yaml</file></path><path><editType>add</editType><file>tools/pnc_proto_mapper/test_hmi_taxonomy_lint.py</file></path><path><editType>add</editType><file>proto/pnc_scene/compact_recorded_result.proto</file></path><path><editType>add</editType><file>replayer/scene_data/compact_geometry_codec.hpp</file></path><path><editType>add</editType><file>proto/common.proto</file></path><path><editType>add</editType><file>.vscode/tasks.json</file></path><path><editType>add</editType><file>proto/pnc_scene/experiment_parameter_patch.proto</file></path><path><editType>add</editType><file>Testing/load_snap_data_compat_test.cpp</file></path><path><editType>edit</editType><file>data/common/guide_path.cpp</file></path><path><editType>add</editType><file>replayer/algorithm_replay/profiles/keb.yaml</file></path><path><editType>add</editType><file>proto/pnc_scene/scene_planning_layer.proto</file></path><path><editType>edit</editType><file>data/vehicle/vehicle_state.hpp</file></path><path><editType>add</editType><file>replayer/scene_data/compact_geometry_codec.cpp</file></path><path><editType>add</editType><file>tools/pnc_case/pnc_case_main.cpp</file></path><path><editType>add</editType><file>replayer/scene_data/map_provider.hpp</file></path><path><editType>add</editType><file>replayer/scene_data/compatibility_gateway.cpp</file></path><path><editType>add</editType><file>data/config/cfg_hmi_layer_mapping.yaml</file></path><path><editType>add</editType><file>replayer/case_orchestrator/pnc_case_cli.hpp</file></path><path><editType>add</editType><file>tools/pnc_proto_mapper/audit_task_chains.py</file></path><path><editType>edit</editType><file>data/vehicle/cloud_lane_change_status.hpp</file></path><path><editType>edit</editType><file>data/ctrl/ctrl_data.hpp</file></path><path><editType>add</editType><file>replayer/scene_data/replayer_data_process_adapter.hpp</file></path><path><editType>add</editType><file>replayer/analysis_server/compact_scene_service_handler.cpp</file></path><path><editType>add</editType><file>tools/pnc_proto_mapper/generator.py</file></path><path><editType>add</editType><file>replayer/algorithm_replay/stage_task_replay_engine.hpp</file></path><path><editType>add</editType><file>replayer/algorithm_replay/regression_report.cpp</file></path><path><editType>add</editType><file>replayer/algorithm_replay/assertions/common.yaml</file></path><path><editType>add</editType><file>replayer/algorithm_replay/candidate_frame_builder.hpp</file></path><path><editType>edit</editType><file>data/lattice/ogm_crash_data.hpp</file></path><path><editType>add</editType><file>replayer/scene_data/generated/config_schema_inputs.json</file></path><path><editType>add</editType><file>replayer/analysis_server/config/analysis_server.lsg.proto_bag.yaml</file></path><path><editType>add</editType><file>replayer/scene_data/compact_custom_field_proto_codec.cpp</file></path><path><editType>add</editType><file>replayer/analysis_server/README.md</file></path><path><editType>add</editType><file>replayer/sdk/replay_backend_c.h</file></path><path><editType>add</editType><file>Testing/live_bridge_app_test.cpp</file></path><path><editType>add</editType><file>replayer/algorithm_replay/production_variant_runner.hpp</file></path><path><editType>add</editType><file>proto/pnc_scene/compact_geometry.proto</file></path><path><editType>add</editType><file>replayer/analysis_server/config/analysis_server.example.yaml</file></path><path><editType>edit</editType><file>scenarios/scenario.cpp</file></path><path><editType>edit</editType><file>scenarios/scenario_supervise.hpp</file></path><path><editType>add</editType><file>replayer/scene_replay/scene_replay_web_page.hpp</file></path><path><editType>add</editType><file>replayer/scene_data/vehicle_state_proto_codec.hpp</file></path><path><editType>add</editType><file>replayer/analysis_server/compact_scene_service_handler.hpp</file></path><path><editType>edit</editType><file>data/plan/reference_line_info.hpp</file></path><path><editType>add</editType><file>replayer/scene_replay/recorded_frame_pipeline.cpp</file></path><path><editType>add</editType><file>tools/pnc_proto_mapper/baseline/compact_scene_descriptor.pb</file></path><path><editType>add</editType><file>replayer/algorithm_replay/batch_regression_runner.hpp</file></path><path><editType>add</editType><file>replayer/analysis_server/compact_geometry_wire.cpp</file></path><path><editType>add</editType><file>replayer/scene_data/scene_payload_codec.hpp</file></path><path><editType>add</editType><file>docs/pnc_algorithm_replay/proto_generation.md</file></path><path><editType>add</editType><file>replayer/scene_replay/payload_codec.cpp</file></path><path><editType>add</editType><file>tools/pnc_proto_mapper/baseline/plan_frame_descriptor.pb</file></path><path><editType>add</editType><file>Testing/experiment_session_test.cpp</file></path><path><editType>add</editType><file>replayer/analysis_server/proto_http_router.hpp</file></path><path><editType>add</editType><file>tools/pnc_live_bridge/main.cpp</file></path><path><editType>add</editType><file>replayer/scene_data/compact_replay_session.cpp</file></path><path><editType>add</editType><file>replayer/case_orchestrator/case_orchestrator.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/remaining_plan_proto_codec.cpp</file></path><path><editType>add</editType><file>replayer/scene_data/compact_snapshot_stream_decoder.hpp</file></path><path><editType>edit</editType><file>data/vehicle/veh_his_states.hpp</file></path><path><editType>add</editType><file>proto/scene_payload.proto</file></path><path><editType>add</editType><file>docs/pnc_algorithm_replay/compact_numeric_encoding_rules.md</file></path><path><editType>add</editType><file>replayer/scene_data/recorded_frame_decoder.cpp</file></path><path><editType>add</editType><file>tools/pnc_proto_mapper/sync_container_schema.py</file></path><path><editType>edit</editType><file>data/vehicle/lock_station_data.hpp</file></path><path><editType>add</editType><file>replayer/scene_replay/README.md</file></path><path><editType>add</editType><file>proto/obstacle_compact.proto</file></path><path><editType>add</editType><file>tools/pnc_scene_importer/main.cpp</file></path><path><editType>add</editType><file>proto/pnc_scene/compact_scene.proto</file></path><path><editType>add</editType><file>replayer/scene_data/map_provider.cpp</file></path><path><editType>add</editType><file>replayer/algorithm_replay/report_artifact_bundle.cpp</file></path><path><editType>add</editType><file>replayer/sdk/planframe_compat.hpp</file></path><path><editType>add</editType><file>replayer/algorithm_replay/async_generation_guard.cpp</file></path><path><editType>add</editType><file>tools/pnc_replay_backend/ensure_ros_master.sh</file></path><path><editType>add</editType><file>Testing/experiment_analysis_coordinator_test.cpp</file></path><path><editType>edit</editType><file>data/map/pnc_map/road_segments.h</file></path><path><editType>add</editType><file>proto/map_data.proto</file></path><path><editType>add</editType><file>replayer/tagfs/tagfs_clients.cpp</file></path><path><editType>edit</editType><file>scenarios/scenario.hpp</file></path><path><editType>add</editType><file>proto/pnc_scene/compressed_frame_chunk.proto</file></path><path><editType>add</editType><file>replayer/analysis_server/analysis_server_app.hpp</file></path><path><editType>add</editType><file>replayer/algorithm_replay/experiment_session.cpp</file></path><path><editType>edit</editType><file>data/map/envelop/map_envelops.cpp</file></path><path><editType>add</editType><file>replayer/scene_data/generated/trajectory_schema_inputs.json</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/compact_typed_field_codec.hpp</file></path><path><editType>add</editType><file>launch/replay/regression_task.launch</file></path><path><editType>add</editType><file>replayer/scene_data/generated/plan_frame_descriptor.pb</file></path><path><editType>edit</editType><file>replayer/replayer_data_process/replayer_data_process.hpp</file></path><path><editType>add</editType><file>proto/pnc_scene/scene_input_layer.proto</file></path><path><editType>add</editType><file>tools/pnc_proto_mapper/import_full_schema_mapping.py</file></path><path><editType>add</editType><file>replayer/scene_replay/scene_replay_service.cpp</file></path><path><editType>add</editType><file>replayer/algorithm_replay/production_variant_runner.cpp</file></path><path><editType>add</editType><file>tools/pnc_replay_backend/publish_bundle.py</file></path><path><editType>add</editType><file>replayer/scene_data/obstacle_proto_codec.hpp</file></path><path><editType>add</editType><file>Testing/regression_task_api_test.cpp</file></path><path><editType>add</editType><file>replayer/scene_data/versioned_compact_decoder.hpp</file></path><path><editType>add</editType><file>proto/replay_v15.proto</file></path><path><editType>add</editType><file>replayer/tagfs/tagfs_adapter.cpp</file></path><path><editType>edit</editType><file>data/plan/side_pass_data.hpp</file></path><path><editType>edit</editType><file>data/vehicle/lock_station_pts.hpp</file></path><path><editType>add</editType><file>replayer/live_bridge/pnc_live_web_bridge.hpp</file></path><path><editType>add</editType><file>replayer/algorithm_replay/execution_profile_registry.cpp</file></path><path><editType>add</editType><file>replayer/scene_data/vehicle_state_proto_codec.cpp</file></path><path><editType>add</editType><file>replayer/algorithm_replay/execution_profile_registry.hpp</file></path><path><editType>edit</editType><file>core/snapshot_async.cpp</file></path><path><editType>edit</editType><file>data/other/flow_control.hpp</file></path><path><editType>edit</editType><file>data/vehicle/cmd_feedback_state.hpp</file></path><path><editType>edit</editType><file>source/ros_source_replayer_snapshot.hpp</file></path><path><editType>add</editType><file>replayer/algorithm_replay/stage_task_replay_engine.cpp</file></path><path><editType>edit</editType><file>scenarios/stage.cpp</file></path><path><editType>add</editType><file>Testing/encoding_benchmark_test.cpp</file></path><path><editType>edit</editType><file>data/app/fsm_interface.hpp</file></path><path><editType>add</editType><file>proto/pnc_scene/compressed_scene_payload.proto</file></path><path><editType>edit</editType><file>CMakeLists.txt</file></path><path><editType>add</editType><file>replayer/scene_data/compact_custom_field_proto_codec.hpp</file></path><path><editType>edit</editType><file>data/obstacle/obstacle_decider_attr.hpp</file></path><path><editType>edit</editType><file>data/app/reaction/app_reaction.hpp</file></path><path><editType>add</editType><file>replayer/algorithm_replay/generated_variant_config_patch.cpp</file></path><path><editType>add</editType><file>Testing/planframe_compat_test.cpp</file></path><path><editType>add</editType><file>Testing/scene_replay_foundation_test.cpp</file></path><path><editType>add</editType><file>replayer/live_bridge/pnc_live_bridge_app.cpp</file></path><path><editType>edit</editType><file>replayer/logic.cpp</file></path><path><editType>add</editType><file>proto/pnc_scene/compact_plan_frame_fields.proto</file></path><path><editType>edit</editType><file>data/vehicle/priori_bay_info.hpp</file></path><path><editType>add</editType><file>tools/pnc_proto_mapper/full_schema_lint.py</file></path><path><editType>add</editType><file>replayer/scene_replay/compressed_frame_ring_buffer.hpp</file></path><path><editType>add</editType><file>proto/pnc_scene/scene_manifest.proto</file></path><path><editType>add</editType><file>replayer/scene_data/obstacle_proto_codec.cpp</file></path><path><editType>add</editType><file>tools/pnc_proto_mapper/audit_plan_frame_fields.py</file></path><path><editType>add</editType><file>replayer/scene_data/vehicle_input_proto_codec.hpp</file></path><path><editType>add</editType><file>replayer/scene_data/compact_numeric_policy.yaml</file></path><path><editType>add</editType><file>replayer/scene_data/recorded_frame_decoder.hpp</file></path><path><editType>edit</editType><file>data/config/cfg_lat_plan.hpp</file></path><path><editType>add</editType><file>replayer/scene_data/generated/container_schema_inputs.json</file></path><path><editType>add</editType><file>replayer/scene_importer/legacy_scene_importer.cpp</file></path><path><editType>edit</editType><file>data/plan/start_point_data.hpp</file></path><path><editType>edit</editType><file>data/ctrl/lka_start_up.hpp</file></path><path><editType>add</editType><file>replayer/scene_data/compact_scene_archive_codec.hpp</file></path><path><editType>add</editType><file>replayer/scene_data/generated/hmi_layer_catalog.cpp</file></path><path><editType>add</editType><file>replayer/scene_data/generated/state_schema_inputs.json</file></path><path><editType>add</editType><file>replayer/algorithm_replay/generated_variant_config_patch.hpp</file></path><path><editType>add</editType><file>replayer/tagfs/tagfs_adapter.hpp</file></path><path><editType>edit</editType><file>data/plan/guide_line_info.hpp</file></path><path><editType>edit</editType><file>offboard/bag_to_keb_scene/bag_to_keb_scene.cc</file></path><path><editType>edit</editType><file>proto/CMakeLists.txt</file></path><path><editType>add</editType><file>replayer/scene_data/compact_replay_session.hpp</file></path><path><editType>add</editType><file>Testing/scene_channel_wire_test.cpp</file></path><path><editType>add</editType><file>replayer/analysis_server/scene_channel_wire.hpp</file></path><path><editType>add</editType><file>proto/pnc_scene/scene_channel.proto</file></path><path><editType>add</editType><file>replayer/scene_data/generated/scene_replay_api_descriptor.pb</file></path><path><editType>add</editType><file>replayer/sdk/planframe_compat.cpp</file></path><path><editType>add</editType><file>sink/ros_sink_snapshot_compact_scene.cpp</file></path><path><editType>add</editType><file>tools/pnc_proto_mapper/test_proto_only_lint.py</file></path><path><editType>add</editType><file>replayer/algorithm_replay/profiles/keb_lane_follow.yaml</file></path><path><editType>edit</editType><file>scenarios/lane_follow_scenario/lane_follow_stage.cpp</file></path><path><editType>add</editType><file>replayer/scene_data/generated/plan_frame_mapping_scaffold.yaml</file></path><path><editType>add</editType><file>replayer/algorithm_replay/experiment_session.hpp</file></path><path><editType>add</editType><file>proto/scenario.proto</file></path><path><editType>add</editType><file>replayer/live_bridge/config/live_bridge.example.yaml</file></path><path><editType>add</editType><file>replayer/tagfs/tagfs_clients.hpp</file></path><path><editType>add</editType><file>replayer/scene_data/config_proto_codec.cpp</file></path><path><editType>edit</editType><file>data/vehicle/lane_detection.hpp</file></path><path><editType>add</editType><file>replayer/algorithm_replay/replay_history.hpp</file></path><path><editType>add</editType><file>replayer/analysis_server/analysis_server_app.cpp</file></path><path><editType>add</editType><file>replayer/scene_data/compatibility_gateway.hpp</file></path><path><editType>edit</editType><file>data/vehicle/yard_occupy_info.hpp</file></path><path><editType>edit</editType><file>data/plan/ssep_data.hpp</file></path><path><editType>add</editType><file>proto/trajectory_compact.proto</file></path><path><editType>add</editType><file>scenarios/task_execution_policy.hpp</file></path><path><editType>add</editType><file>Testing/linear_velocity_generator_test.cpp</file></path><path><editType>add</editType><file>docs/pnc_algorithm_replay/examples/pnc_case_promote/request-lane-follow.yaml</file></path><path><editType>add</editType><file>Testing/generated_variant_config_patch_test.cpp</file></path><path><editType>add</editType><file>replayer/analysis_server/beast_analysis_server.hpp</file></path><path><editType>add</editType><file>tools/pnc_proto_bag_server/main.cpp</file></path><path><editType>add</editType><file>replayer/scene_data/full_proto_custom_encoder.cpp</file></path><path><editType>add</editType><file>replayer/scene_data/generated/plan_frame_member_inputs.json</file></path><path><editType>edit</editType><file>data/map/pnc_map/road_segments.cpp</file></path><path><editType>edit</editType><file>scenarios/into_yard_junction_scenario/into_yard_junction_first_stage.cpp</file></path><path><editType>edit</editType><file>scenarios/stage.hpp</file></path><path><editType>add</editType><file>replayer/scene_data/proto_bag_scene_builder.cpp</file></path><path><editType>add</editType><file>replayer/algorithm_replay/assertion_engine.cpp</file></path><path><editType>add</editType><file>replayer/live_bridge/pnc_live_bridge_app.hpp</file></path><path><editType>add</editType><file>Testing/analysis_server_app_test.cpp</file></path><path><editType>add</editType><file>Testing/compatibility_registry_test.cpp</file></path><path><editType>edit</editType><file>data/app/app_data.hpp</file></path><path><editType>add</editType><file>docs/pnc_algorithm_replay/examples/pnc_case_promote/request-ssep.yaml</file></path><path><editType>edit</editType><file>scenarios/scenario_supervise.cpp</file></path><path><editType>add</editType><file>replayer/scene_data/cfg_scenarios_proto_codec.cpp</file></path><path><editType>add</editType><file>replayer/scene_replay/recorded_frame_pipeline.hpp</file></path><path><editType>add</editType><file>replayer/scene_data/hmi_layer_manifest.yaml</file></path><path><editType>edit</editType><file>data/constrain/block_data.hpp</file></path><path><editType>add</editType><file>replayer/scene_data/legacy_location_repair.hpp</file></path><path><editType>add</editType><file>replayer/scene_replay/scene_bundle_codec.hpp</file></path><path><editType>add</editType><file>replayer/scene_data/legacy_location_repair.cpp</file></path><path><editType>add</editType><file>tools/pnc_regression_task/pnc_regression_task_main.cpp</file></path><path><editType>add</editType><file>tools/pnc_proto_mapper/sync_state_schema.py</file></path><path><editType>add</editType><file>replayer/algorithm_replay/assertion_pack_registry.cpp</file></path><path><editType>add</editType><file>replayer/scene_data/proto_bag_scene_builder.hpp</file></path><path><editType>edit</editType><file>common/util/hdmap_wrapper.cpp</file></path><path><editType>add</editType><file>replayer/scene_data/longitude_constrain_proto_codec.cpp</file></path><path><editType>add</editType><file>replayer/algorithm_replay/assertions/dp_reverse_meeting.yaml</file></path><path><editType>edit</editType><file>replayer/replayer_data_process/replayer_data_process.cpp</file></path><path><editType>add</editType><file>Testing/compact_replay_session_test.cpp</file></path><path><editType>add</editType><file>replayer/scene_replay/scene_bundle_codec.cpp</file></path><path><editType>add</editType><file>replayer/scene_data/encoding_benchmark.cpp</file></path><path><editType>add</editType><file>tools/pnc_proto_mapper/test_mapping_contract.py</file></path><path><editType>add</editType><file>Testing/pnc_case_cli_test.cpp</file></path><path><editType>add</editType><file>proto/pnc_scene/compact_recorded_debug.proto</file></path><path><editType>add</editType><file>replayer/algorithm_replay/regression_report.hpp</file></path><path><editType>add</editType><file>proto/vehicle.proto</file></path><path><editType>add</editType><file>replayer/scene_data/cfg_scenarios_proto_codec.hpp</file></path><path><editType>add</editType><file>replayer/algorithm_replay/assertions/longitudinal_trajectory.yaml</file></path><path><editType>add</editType><file>replayer/algorithm_replay/report_artifact_bundle.hpp</file></path><path><editType>add</editType><file>replayer/scene_data/scene_payload_codec.cpp</file></path><path><editType>add</editType><file>proto/pnc_scene/live_compact_frame.proto</file></path><path><editType>add</editType><file>replayer/algorithm_replay/profiles/wbca.yaml</file></path><path><editType>add</editType><file>Testing/case_orchestrator_test.cpp</file></path><path><editType>add</editType><file>proto/ssep_compact.proto</file></path><path><editType>edit</editType><file>data/vehicle/spreader_protect.hpp</file></path><path><editType>edit</editType><file>algorithm/wbca/linear_velocity_generator.cpp</file></path><path><editType>add</editType><file>replayer/algorithm_replay/profiles/pjpo.yaml</file></path><path><editType>edit</editType><file>data/plan/path_data.hpp</file></path><path><editType>add</editType><file>replayer/scene_data/generated/plan_frame_encoder.hpp</file></path><path><editType>edit</editType><file>tasks/task_factory.cpp</file></path><path><editType>add</editType><file>replayer/analysis_server/scene_replay_service_handler.hpp</file></path><path><editType>add</editType><file>replayer/case_orchestrator/pnc_case_cli.cpp</file></path><path><editType>add</editType><file>replayer/scene_data/generated/plan_frame_field_roles.json</file></path><path><editType>edit</editType><file>source/ros_source_replayer_snapshot.cpp</file></path><path><editType>add</editType><file>tools/pnc_proto_mapper/hmi_taxonomy_lint.py</file></path><path><editType>add</editType><file>tools/pnc_analysis_server/pnc_analysis_server_main.cpp</file></path><path><editType>add</editType><file>Testing/beast_analysis_server_test.cpp</file></path><path><editType>add</editType><file>replayer/scene_data/compact_proto_codec.hpp</file></path><path><editType>add</editType><file>tools/pnc_proto_mapper/sync_config_schema.py</file></path><path><editType>edit</editType><file>data/plan/path_direction_data.hpp</file></path><path><editType>add</editType><file>Testing/profile_collectors_test.cpp</file></path><path><editType>edit</editType><file>data/config/cfg_stage.cpp</file></path><path><editType>add</editType><file>tools/pnc_proto_mapper/schema_lint.py</file></path><path><editType>add</editType><file>tools/pnc_proto_mapper/sync_trajectory_schema.py</file></path><path><editType>add</editType><file>replayer/algorithm_replay/experiment_analysis_coordinator.hpp</file></path><path><editType>edit</editType><file>plan/prepare/prepare_lane_constrain.cpp</file></path><path><editType>add</editType><file>replayer/analysis_server/beast_analysis_server.cpp</file></path><path><editType>add</editType><file>docs/pnc_algorithm_replay/schema_v1_decisions.md</file></path><path><editType>add</editType><file>replayer/scene_data/generated/hmi_layer_catalog.hpp</file></path><path><editType>add</editType><file>Testing/pnc_map_reflection_test.cpp</file></path><path><editType>add</editType><file>replayer/scene_data/compact_proto_codec.cpp</file></path><path><editType>add</editType><file>replayer/scene_data/config_proto_codec.hpp</file></path><path><editType>add</editType><file>replayer/scene_replay/payload_codec.hpp</file></path><path><editType>add</editType><file>docs/pnc_algorithm_replay/examples/pnc_case_promote/request-production-async.yaml</file></path><path><editType>add</editType><file>replayer/scene_data/live_compact_ingress.hpp</file></path><path><editType>add</editType><file>tools/pnc_proto_bag_to_scene/main.cpp</file></path><path><editType>add</editType><file>proto/plan_data.proto</file></path><path><editType>add</editType><file>replayer/scene_data/encoding_benchmark.hpp</file></path><path><editType>add</editType><file>replayer/scene_replay/live_compressed_frame_ingress.cpp</file></path><path><editType>add</editType><file>replayer/scene_replay/compressed_frame_ring_buffer.cpp</file></path><path><editType>add</editType><file>docs/compact_proto_boost_removal.md</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>ssep/protos/params.proto</affectedPath><affectedPath>replayer/scene_data/generated/compact_scene_descriptor.pb</affectedPath><affectedPath>ssep/protos/ssep_scenario_type.proto</affectedPath><affectedPath>replayer/scene_data/generated/compact_typed_field_codec.cpp</affectedPath><affectedPath>ssep/protos/path.proto</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_decoder.cpp</affectedPath><affectedPath>ssep/protos/object.proto</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_decoder.hpp</affectedPath><affectedPath>ssep/protos/scene.proto</affectedPath><affectedPath>replayer/scene_data/generated/compact_typed_field_codec.hpp</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_encoder.cpp</affectedPath><affectedPath>replayer/scene_data/generated/scene_replay_api_descriptor.pb</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_descriptor.pb</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_encoder.hpp</affectedPath><commitId>2d7664732b48998ab378500f24b18c28d3e6422d</commitId><timestamp>1787494586000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>chore: 清理回放 Proto 合同格式

移除 SSEP Proto 中的尾随空白和文件末尾冗余空行，并同步刷新自动生成的 codec schema 标识与 descriptor，保证独立平台首次提交通过 diff 检查。
</comment><date>2026-08-23 22:16:26 +0800</date><id>2d7664732b48998ab378500f24b18c28d3e6422d</id><msg>chore: 清理回放 Proto 合同格式</msg><path><editType>edit</editType><file>ssep/protos/ssep_scenario_type.proto</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_descriptor.pb</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_encoder.hpp</file></path><path><editType>edit</editType><file>ssep/protos/params.proto</file></path><path><editType>edit</editType><file>ssep/protos/scene.proto</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/compact_typed_field_codec.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/compact_typed_field_codec.hpp</file></path><path><editType>edit</editType><file>ssep/protos/object.proto</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_decoder.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/scene_replay_api_descriptor.pb</file></path><path><editType>edit</editType><file>ssep/protos/path.proto</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/compact_scene_descriptor.pb</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_decoder.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_encoder.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>docs/pnc_algorithm_replay/compact_numeric_encoding_rules.md</affectedPath><affectedPath>docs/pnc_algorithm_replay/proto_generation.md</affectedPath><affectedPath>AGENTS.md</affectedPath><affectedPath>docs/pnc_algorithm_replay/plan_frame_field_workflow.md</affectedPath><commitId>543a6afa4446906c89fc01de2a1e00ce530339eb</commitId><timestamp>1787497843000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>docs: 明确 PlanFrame 字段与压缩维护流程

新增字段保存决策、Full/Compact 映射、量化精度、自动生成、测试与发布操作手册。\n\n补充 Compact Proto 到 PlanFrame、ReplayerDataProcess 和诊断 SDK 的完整恢复链路及排障表，并将规范加入 AGENTS 协作约束。\n\n修正文档中 Full Proto decoder 是否自动生成的矛盾说明。
</comment><date>2026-08-23 23:10:43 +0800</date><id>543a6afa4446906c89fc01de2a1e00ce530339eb</id><msg>docs: 明确 PlanFrame 字段与压缩维护流程</msg><path><editType>edit</editType><file>docs/pnc_algorithm_replay/proto_generation.md</file></path><path><editType>edit</editType><file>docs/pnc_algorithm_replay/compact_numeric_encoding_rules.md</file></path><path><editType>edit</editType><file>AGENTS.md</file></path><path><editType>add</editType><file>docs/pnc_algorithm_replay/plan_frame_field_workflow.md</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>proto/scene_replay_api.proto</affectedPath><affectedPath>replayer/live_bridge/pnc_live_bridge_app.cpp</affectedPath><affectedPath>replayer/live_bridge/live_scene_service_handler.cpp</affectedPath><affectedPath>Testing/beast_analysis_server_test.cpp</affectedPath><affectedPath>replayer/live_bridge/pnc_live_bridge_app.hpp</affectedPath><affectedPath>Testing/live_bridge_app_test.cpp</affectedPath><affectedPath>replayer/live_bridge/pnc_live_web_bridge.hpp</affectedPath><affectedPath>replayer/live_bridge/live_map_runtime.hpp</affectedPath><affectedPath>replayer/live_bridge/live_scene_service_handler.hpp</affectedPath><affectedPath>replayer/live_bridge/pnc_live_web_bridge.cpp</affectedPath><affectedPath>replayer/live_bridge/live_map_runtime.cpp</affectedPath><affectedPath>replayer/analysis_server/proto_http_router.cpp</affectedPath><affectedPath>replayer/live_bridge/config/live_bridge.example.yaml</affectedPath><affectedPath>replayer/scene_data/generated/scene_replay_api_descriptor.pb</affectedPath><affectedPath>replayer/analysis_server/proto_http_router.hpp</affectedPath><commitId>17a69428c8ca7a2728ee5461c81a136abacb57c5</commitId><timestamp>1787552491000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>feat: 支持回放服务运行时加载地图

Live Bridge 与 Proto Bag Server 允许省略启动地图配置，无地图时继续提供车辆、障碍物、OGM、路径和轨迹数据。\n\n新增 binary Proto 地图配置接口，前端可提交地图路径和逻辑 ID；接口配置为空时统一使用 /opt/senior/install/share/hdmap_interface/params/hdmap_interface.yaml。\n\n地图加载失败不再阻断非地图帧，并为离线 bag 缓存帧主动重发地图图层。
</comment><date>2026-08-24 14:21:31 +0800</date><id>17a69428c8ca7a2728ee5461c81a136abacb57c5</id><msg>feat: 支持回放服务运行时加载地图</msg><path><editType>edit</editType><file>replayer/analysis_server/proto_http_router.hpp</file></path><path><editType>edit</editType><file>replayer/live_bridge/config/live_bridge.example.yaml</file></path><path><editType>add</editType><file>replayer/live_bridge/live_map_runtime.cpp</file></path><path><editType>edit</editType><file>replayer/live_bridge/pnc_live_bridge_app.cpp</file></path><path><editType>edit</editType><file>replayer/live_bridge/pnc_live_bridge_app.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/scene_replay_api_descriptor.pb</file></path><path><editType>add</editType><file>replayer/live_bridge/live_map_runtime.hpp</file></path><path><editType>edit</editType><file>replayer/live_bridge/pnc_live_web_bridge.cpp</file></path><path><editType>edit</editType><file>Testing/beast_analysis_server_test.cpp</file></path><path><editType>edit</editType><file>Testing/live_bridge_app_test.cpp</file></path><path><editType>edit</editType><file>replayer/analysis_server/proto_http_router.cpp</file></path><path><editType>edit</editType><file>proto/scene_replay_api.proto</file></path><path><editType>edit</editType><file>replayer/live_bridge/live_scene_service_handler.hpp</file></path><path><editType>edit</editType><file>replayer/live_bridge/pnc_live_web_bridge.hpp</file></path><path><editType>edit</editType><file>replayer/live_bridge/live_scene_service_handler.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>tools/pnc_proto_bag_server/main.cpp</affectedPath><affectedPath>Testing/live_bridge_app_test.cpp</affectedPath><affectedPath>proto/scene_replay_api.proto</affectedPath><affectedPath>.vscode/launch.json</affectedPath><affectedPath>replayer/live_bridge/live_scene_service_handler.hpp</affectedPath><affectedPath>replayer/live_bridge/live_scene_service_handler.cpp</affectedPath><affectedPath>replayer/analysis_server/proto_http_router.cpp</affectedPath><affectedPath>replayer/live_bridge/bag_upload_session.hpp</affectedPath><affectedPath>replayer/scene_data/generated/scene_replay_api_descriptor.pb</affectedPath><affectedPath>replayer/live_bridge/bag_upload_session.cpp</affectedPath><affectedPath>replayer/analysis_server/proto_http_router.hpp</affectedPath><commitId>1b80e9fca5a0aa21eb3afdb9b06021c96815dddd</commitId><timestamp>1787553168000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>feat: 支持网页拖拽打开 Proto bag

Proto Bag Server 允许不传 --bag 空载启动，并提供有界 binary Proto 分块上传接口。\n\n浏览器上传按连续 offset 写入受控临时文件，完成后校验 rosbag 与当前 backend runtime/schema，再加载到独立 Replay Session；整包不会进入内存或使用 JSON/base64。\n\n保留命令行直接打开 bag 的原有方式，并补充分块、大小、临时文件清理和版本拒绝测试。
</comment><date>2026-08-24 14:32:48 +0800</date><id>1b80e9fca5a0aa21eb3afdb9b06021c96815dddd</id><msg>feat: 支持网页拖拽打开 Proto bag</msg><path><editType>edit</editType><file>replayer/scene_data/generated/scene_replay_api_descriptor.pb</file></path><path><editType>edit</editType><file>proto/scene_replay_api.proto</file></path><path><editType>edit</editType><file>replayer/live_bridge/live_scene_service_handler.cpp</file></path><path><editType>edit</editType><file>.vscode/launch.json</file></path><path><editType>add</editType><file>replayer/live_bridge/bag_upload_session.cpp</file></path><path><editType>edit</editType><file>replayer/analysis_server/proto_http_router.hpp</file></path><path><editType>edit</editType><file>replayer/analysis_server/proto_http_router.cpp</file></path><path><editType>edit</editType><file>tools/pnc_proto_bag_server/main.cpp</file></path><path><editType>edit</editType><file>Testing/live_bridge_app_test.cpp</file></path><path><editType>edit</editType><file>replayer/live_bridge/live_scene_service_handler.hpp</file></path><path><editType>add</editType><file>replayer/live_bridge/bag_upload_session.hpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>CMakeLists.txt</affectedPath><commitId>57792b9620d5ac60b58c6811a81cb3cb9a806f29</commitId><timestamp>1787553269000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 固化拖拽 Bag Server 的运行时版本

为 pnc_proto_bag_server 注入与 backend 一致的 PNC version/commit，使空载启动后上传的 bag 能执行精确 runtime/schema 校验。
</comment><date>2026-08-24 14:34:29 +0800</date><id>57792b9620d5ac60b58c6811a81cb3cb9a806f29</id><msg>fix: 固化拖拽 Bag Server 的运行时版本</msg><path><editType>edit</editType><file>CMakeLists.txt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>CMakeLists.txt</affectedPath><commitId>eacc88be0b91aa605e4b2932c9cf233a11906657</commitId><timestamp>1787553296000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 补齐 PlanFrame SDK 版本身份

为 exact-version planframe compatibility SDK 注入 PNC version/commit，避免 CurrentPlanFrameCompatContract 返回 unknown。
</comment><date>2026-08-24 14:34:56 +0800</date><id>eacc88be0b91aa605e4b2932c9cf233a11906657</id><msg>fix: 补齐 PlanFrame SDK 版本身份</msg><path><editType>edit</editType><file>CMakeLists.txt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>tools/pnc_replay_backend/publish_bundle.py</affectedPath><commitId>0cf8a38a0169529ec81d2b423944fee60a13819a</commitId><timestamp>1787553487000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>feat: 将 Proto Bag Server 纳入 OTA bundle

随算法 backend 发布支持空载与网页拖拽的 pnc-proto-bag-server，避免部署环境依赖 PNC worktree 构建目录。
</comment><date>2026-08-24 14:38:07 +0800</date><id>0cf8a38a0169529ec81d2b423944fee60a13819a</id><msg>feat: 将 Proto Bag Server 纳入 OTA bundle</msg><path><editType>edit</editType><file>tools/pnc_replay_backend/publish_bundle.py</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>tools/pnc_proto_bag_server/main.cpp</affectedPath><commitId>a144665d473e121ffb3130d80f4c557a9ea1db98</commitId><timestamp>1787555057000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 保留直接回放 Bag 的完整时间轴

Proto Bag Server 使用最多 20000 帧的离线有界缓存并关闭 Live 时间淘汰，避免长于 60 秒的 bag 丢失开头帧。
</comment><date>2026-08-24 15:04:17 +0800</date><id>a144665d473e121ffb3130d80f4c557a9ea1db98</id><msg>fix: 保留直接回放 Bag 的完整时间轴</msg><path><editType>edit</editType><file>tools/pnc_proto_bag_server/main.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>replayer/live_bridge/pnc_live_bridge_app.cpp</affectedPath><affectedPath>tools/pnc_proto_bag_server/main.cpp</affectedPath><affectedPath>Testing/live_bridge_app_test.cpp</affectedPath><affectedPath>CMakeLists.txt</affectedPath><commitId>3c433b5a877a5a26f37f77ff45aee12f1488b984</commitId><timestamp>1787555462000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 按结构合同校验拖拽 Bag

空载 Proto Bag Server 从上传 bag 采用 source version/commit，仅对 RDP contract、Compact schema 和 encoding 保持严格匹配。\n\nLive ROS 模式仍要求显式且精确的 source identity，避免纯工具提交导致刚录制的兼容 bag 无法打开。
</comment><date>2026-08-24 15:11:02 +0800</date><id>3c433b5a877a5a26f37f77ff45aee12f1488b984</id><msg>fix: 按结构合同校验拖拽 Bag</msg><path><editType>edit</editType><file>tools/pnc_proto_bag_server/main.cpp</file></path><path><editType>edit</editType><file>Testing/live_bridge_app_test.cpp</file></path><path><editType>edit</editType><file>replayer/live_bridge/pnc_live_bridge_app.cpp</file></path><path><editType>edit</editType><file>CMakeLists.txt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>tools/pnc_proto_mapper/test_draft_persistence_policy.py</affectedPath><affectedPath>replayer/scene_data/compact_proto_codec.hpp</affectedPath><affectedPath>Testing/legacy_scene_importer_test.cpp</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_decoder.hpp</affectedPath><affectedPath>CMakeLists.txt</affectedPath><affectedPath>replayer/replayer_data_process/replayer_data_process.hpp</affectedPath><affectedPath>tools/pnc_proto_bag_to_scene/main.cpp</affectedPath><affectedPath>tools/pnc_proto_mapper/test_audit_boost_nested_serialization.py</affectedPath><affectedPath>replayer/scene_data/compatibility_registry.cpp</affectedPath><affectedPath>replayer/algorithm_replay/production_variant_runner.cpp</affectedPath><affectedPath>replayer/scene_data/generated/compact_typed_field_codec.hpp</affectedPath><affectedPath>Testing/live_bridge_app_test.cpp</affectedPath><affectedPath>replayer/scene_data/generated/boost_nested_serialization_audit.yaml</affectedPath><affectedPath>replayer/scene_data/compact_custom_field_proto_codec.cpp</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_encoder.hpp</affectedPath><affectedPath>data/constrain/temporary_stop_data.hpp</affectedPath><affectedPath>replayer/scene_data/generated/compact_scene_descriptor.pb</affectedPath><affectedPath>proto/pnc_scene/compact_replay_input.proto</affectedPath><affectedPath>proto/pnc_scene/compact_plan_frame_fields.proto</affectedPath><affectedPath>Taskfile.yml</affectedPath><affectedPath>replayer/scene_data/compact_numeric_policy.yaml</affectedPath><affectedPath>Testing/encoding_benchmark_test.cpp</affectedPath><affectedPath>tools/pnc_proto_mapper/audit_boost_nested_serialization.py</affectedPath><affectedPath>tools/pnc_proto_mapper/test_plan_frame_persistence_catalog.py</affectedPath><affectedPath>tasks/deciders/long_decider/time_path_graph_decider.cpp</affectedPath><affectedPath>replayer/analysis_server/config/analysis_server.lsg.proto_bag.yaml</affectedPath><affectedPath>proto/pnc_scene/compact_guide_line.proto</affectedPath><affectedPath>tools/pnc_proto_bag_server/main.cpp</affectedPath><affectedPath>replayer/scene_data/encoding_benchmark.cpp</affectedPath><affectedPath>data/constrain/disable_stop_range.hpp</affectedPath><affectedPath>Testing/compatibility_registry_test.cpp</affectedPath><affectedPath>docs/pnc_algorithm_replay/plan_frame_field_workflow.md</affectedPath><affectedPath>replayer/scene_data/plan_frame_full_mapping.yaml</affectedPath><affectedPath>replayer/scene_data/plan_frame_persistence_policy.yaml</affectedPath><affectedPath>proto/pnc_scene/full_plan_frame.proto</affectedPath><affectedPath>replayer/scene_data/generated/boost_nested_leaf_matrix.csv</affectedPath><affectedPath>replayer/scene_data/remaining_plan_proto_codec.cpp</affectedPath><affectedPath>replayer/scene_data/compact_proto_codec.cpp</affectedPath><affectedPath>replayer/replayer_data_process/replayer_data_process.cpp</affectedPath><affectedPath>proto/plan_data.proto</affectedPath><affectedPath>Testing/pnc_case_cli_test.cpp</affectedPath><affectedPath>docs/pnc_algorithm_replay/schema_v1_decisions.md</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_decoder.cpp</affectedPath><affectedPath>docs/pnc_algorithm_replay/proto_generation.md</affectedPath><affectedPath>replayer/scene_data/encoding_benchmark.hpp</affectedPath><affectedPath>data/ssep/online_region_contour_creator_test.cpp</affectedPath><affectedPath>replayer/scene_data/compatibility_gateway.hpp</affectedPath><affectedPath>Testing/scene_replay_foundation_test.cpp</affectedPath><affectedPath>replayer/scene_data/generated/boost_nested_omitted_leaves.csv</affectedPath><affectedPath>tools/pnc_proto_mapper/test_encoding_v3_baseline.py</affectedPath><affectedPath>Testing/pnc_map_reflection_test.cpp</affectedPath><affectedPath>data/constrain/temporary_stop_data.cpp</affectedPath><affectedPath>replayer/scene_data/full_proto_custom_encoder.cpp</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_encoder.cpp</affectedPath><affectedPath>docs/pnc_algorithm_replay/plan_frame_persistence_catalog.md</affectedPath><affectedPath>replayer/scene_data/compact_custom_field_proto_codec.hpp</affectedPath><affectedPath>replayer/analysis_server/config/analysis_server.example.yaml</affectedPath><affectedPath>replayer/live_bridge/config/live_bridge.example.yaml</affectedPath><affectedPath>tools/pnc_encoding_benchmark/main.cpp</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_field_roles.json</affectedPath><affectedPath>tools/pnc_proto_mapper/draft_persistence_policy.py</affectedPath><affectedPath>tools/pnc_proto_mapper/generate_plan_frame_persistence_catalog.py</affectedPath><affectedPath>replayer/scene_data/generated/compact_typed_field_codec.cpp</affectedPath><affectedPath>replayer/scene_data/encoding_v3_bandwidth_baseline.yaml</affectedPath><affectedPath>replayer/scene_data/generated/boost_compact_persistence_diff.yaml</affectedPath><affectedPath>proto/pnc_scene/compact_recorded_result.proto</affectedPath><affectedPath>scenarios/stage.cpp</affectedPath><affectedPath>tools/pnc_proto_mapper/generator.py</affectedPath><affectedPath>replayer/scene_data/plan_frame_nested_persistence_review.yaml</affectedPath><affectedPath>proto/vehicle.proto</affectedPath><affectedPath>replayer/scene_data/vehicle_state_proto_codec.cpp</affectedPath><affectedPath>docs/pnc_algorithm_replay/usage.md</affectedPath><affectedPath>docs/pnc_algorithm_replay/compact_numeric_encoding_rules.md</affectedPath><affectedPath>Testing/analysis_server_app_test.cpp</affectedPath><affectedPath>replayer/scene_data/plan_frame_field_roles.csv</affectedPath><affectedPath>data/map/reference/reference_road_section.hpp</affectedPath><affectedPath>replayer/scene_data/generated/scene_replay_api_descriptor.pb</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_descriptor.pb</affectedPath><affectedPath>offboard/bag_to_keb_scene/CMakeLists.txt</affectedPath><commitId>7c978c079fdfe68cf6bc3b5145d0b705be58847d</commitId><timestamp>1787624566000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>feat: 冻结场景回放 encoding v3 基线

完成 PlanFrame Full/Compact Proto 自动生成与持久化审计，冻结 Boost v15 迁移证据和 encoding v3 带宽基线。

GuideLine 仅保留 mode 与 StartPointData，ReferenceLine 使用车体坐标 uint16；raw reference、junction、CenterLine、历史路径轨迹和 SSEP corridor 由回放链路确定性重建。

补齐 BlockData、VehicleState、PncLocalMap 索引恢复，修复 Proto bag 前导 Delta、全量构建链接、Compatibility Registry、Task 异常和 PathTimeGraph 空指针问题。

更新 Live/Bag/replayer 使用文档、OTA 合同与完整回归/带宽工具。
</comment><date>2026-08-25 10:22:46 +0800</date><id>7c978c079fdfe68cf6bc3b5145d0b705be58847d</id><msg>feat: 冻结场景回放 encoding v3 基线</msg><path><editType>edit</editType><file>proto/pnc_scene/compact_replay_input.proto</file></path><path><editType>edit</editType><file>tools/pnc_encoding_benchmark/main.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/compact_typed_field_codec.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/encoding_benchmark.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_field_roles.json</file></path><path><editType>edit</editType><file>replayer/scene_data/vehicle_state_proto_codec.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/remaining_plan_proto_codec.cpp</file></path><path><editType>edit</editType><file>data/constrain/disable_stop_range.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/full_proto_custom_encoder.cpp</file></path><path><editType>add</editType><file>replayer/scene_data/generated/boost_nested_leaf_matrix.csv</file></path><path><editType>edit</editType><file>docs/pnc_algorithm_replay/schema_v1_decisions.md</file></path><path><editType>edit</editType><file>tools/pnc_proto_mapper/generator.py</file></path><path><editType>edit</editType><file>data/ssep/online_region_contour_creator_test.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/compatibility_registry.cpp</file></path><path><editType>edit</editType><file>replayer/analysis_server/config/analysis_server.example.yaml</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_decoder.cpp</file></path><path><editType>edit</editType><file>tools/pnc_proto_bag_server/main.cpp</file></path><path><editType>edit</editType><file>CMakeLists.txt</file></path><path><editType>add</editType><file>tools/pnc_proto_mapper/test_plan_frame_persistence_catalog.py</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/compact_typed_field_codec.hpp</file></path><path><editType>add</editType><file>replayer/scene_data/plan_frame_nested_persistence_review.yaml</file></path><path><editType>add</editType><file>tools/pnc_proto_mapper/generate_plan_frame_persistence_catalog.py</file></path><path><editType>edit</editType><file>proto/pnc_scene/full_plan_frame.proto</file></path><path><editType>edit</editType><file>Testing/legacy_scene_importer_test.cpp</file></path><path><editType>edit</editType><file>replayer/live_bridge/config/live_bridge.example.yaml</file></path><path><editType>edit</editType><file>Testing/pnc_map_reflection_test.cpp</file></path><path><editType>edit</editType><file>proto/pnc_scene/compact_plan_frame_fields.proto</file></path><path><editType>edit</editType><file>replayer/replayer_data_process/replayer_data_process.cpp</file></path><path><editType>edit</editType><file>Taskfile.yml</file></path><path><editType>edit</editType><file>proto/plan_data.proto</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_encoder.hpp</file></path><path><editType>edit</editType><file>proto/vehicle.proto</file></path><path><editType>edit</editType><file>replayer/scene_data/compact_proto_codec.cpp</file></path><path><editType>edit</editType><file>Testing/analysis_server_app_test.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/plan_frame_field_roles.csv</file></path><path><editType>edit</editType><file>Testing/compatibility_registry_test.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/compact_scene_descriptor.pb</file></path><path><editType>edit</editType><file>scenarios/stage.cpp</file></path><path><editType>edit</editType><file>Testing/scene_replay_foundation_test.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/plan_frame_full_mapping.yaml</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_descriptor.pb</file></path><path><editType>add</editType><file>replayer/scene_data/generated/boost_nested_omitted_leaves.csv</file></path><path><editType>add</editType><file>replayer/scene_data/generated/boost_nested_serialization_audit.yaml</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_encoder.cpp</file></path><path><editType>add</editType><file>tools/pnc_proto_mapper/draft_persistence_policy.py</file></path><path><editType>add</editType><file>replayer/scene_data/encoding_v3_bandwidth_baseline.yaml</file></path><path><editType>edit</editType><file>proto/pnc_scene/compact_guide_line.proto</file></path><path><editType>edit</editType><file>replayer/scene_data/compact_proto_codec.hpp</file></path><path><editType>edit</editType><file>replayer/algorithm_replay/production_variant_runner.cpp</file></path><path><editType>add</editType><file>docs/pnc_algorithm_replay/usage.md</file></path><path><editType>edit</editType><file>docs/pnc_algorithm_replay/proto_generation.md</file></path><path><editType>edit</editType><file>proto/pnc_scene/compact_recorded_result.proto</file></path><path><editType>edit</editType><file>replayer/scene_data/compact_numeric_policy.yaml</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_decoder.hpp</file></path><path><editType>edit</editType><file>data/constrain/temporary_stop_data.cpp</file></path><path><editType>edit</editType><file>docs/pnc_algorithm_replay/plan_frame_field_workflow.md</file></path><path><editType>add</editType><file>replayer/scene_data/plan_frame_persistence_policy.yaml</file></path><path><editType>edit</editType><file>Testing/live_bridge_app_test.cpp</file></path><path><editType>add</editType><file>docs/pnc_algorithm_replay/plan_frame_persistence_catalog.md</file></path><path><editType>add</editType><file>tools/pnc_proto_mapper/audit_boost_nested_serialization.py</file></path><path><editType>edit</editType><file>Testing/pnc_case_cli_test.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/compatibility_gateway.hpp</file></path><path><editType>edit</editType><file>docs/pnc_algorithm_replay/compact_numeric_encoding_rules.md</file></path><path><editType>edit</editType><file>tools/pnc_proto_bag_to_scene/main.cpp</file></path><path><editType>add</editType><file>tools/pnc_proto_mapper/test_encoding_v3_baseline.py</file></path><path><editType>edit</editType><file>replayer/scene_data/encoding_benchmark.cpp</file></path><path><editType>add</editType><file>replayer/scene_data/generated/boost_compact_persistence_diff.yaml</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/scene_replay_api_descriptor.pb</file></path><path><editType>edit</editType><file>offboard/bag_to_keb_scene/CMakeLists.txt</file></path><path><editType>edit</editType><file>replayer/scene_data/compact_custom_field_proto_codec.hpp</file></path><path><editType>edit</editType><file>Testing/encoding_benchmark_test.cpp</file></path><path><editType>edit</editType><file>data/map/reference/reference_road_section.hpp</file></path><path><editType>edit</editType><file>replayer/analysis_server/config/analysis_server.lsg.proto_bag.yaml</file></path><path><editType>edit</editType><file>replayer/replayer_data_process/replayer_data_process.hpp</file></path><path><editType>add</editType><file>tools/pnc_proto_mapper/test_audit_boost_nested_serialization.py</file></path><path><editType>add</editType><file>tools/pnc_proto_mapper/test_draft_persistence_policy.py</file></path><path><editType>edit</editType><file>replayer/scene_data/compact_custom_field_proto_codec.cpp</file></path><path><editType>edit</editType><file>tasks/deciders/long_decider/time_path_graph_decider.cpp</file></path><path><editType>edit</editType><file>data/constrain/temporary_stop_data.hpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>docs/pnc_algorithm_replay/usage.md</affectedPath><affectedPath>.vscode/launch.json</affectedPath><affectedPath>tools/pnc_proto_bag_server/main.cpp</affectedPath><commitId>edfdfbbc033baea804605dbc473e5df76ea3062a</commitId><timestamp>1787626642000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 简化离线 bag 服务地图配置

Proto Bag Server 默认使用内置离线服务配置并自动定位 PlanFrame descriptor，不再要求传入 Live YAML。\n\n服务启动时强制忽略 YAML 中的地图路径，由 bag Anchor 提供地图标识、网页按需配置主机地图；同步更新 VS Code 启动项和使用文档。
</comment><date>2026-08-25 10:57:22 +0800</date><id>edfdfbbc033baea804605dbc473e5df76ea3062a</id><msg>fix: 简化离线 bag 服务地图配置</msg><path><editType>edit</editType><file>.vscode/launch.json</file></path><path><editType>edit</editType><file>tools/pnc_proto_bag_server/main.cpp</file></path><path><editType>edit</editType><file>docs/pnc_algorithm_replay/usage.md</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>replayer/live_bridge/pnc_live_bridge_app.hpp</affectedPath><affectedPath>tools/pnc_proto_bag_server/main.cpp</affectedPath><affectedPath>tools/pnc_live_bridge/main.cpp</affectedPath><affectedPath>Testing/live_bridge_app_test.cpp</affectedPath><affectedPath>.vscode/launch.json</affectedPath><affectedPath>docs/pnc_algorithm_replay/usage.md</affectedPath><affectedPath>replayer/live_bridge/pnc_live_bridge_app.cpp</affectedPath><affectedPath>CMakeLists.txt</affectedPath><commitId>dd7adad45f010a552e8833702b9d2fc068042af4</commitId><timestamp>1787628336000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>feat: 支持 Live Bridge 零配置启动

Live Bridge 默认内置 mapless 本地配置，自动采用当前 PNC runtime/schema/encoding 合同并定位 PlanFrame descriptor。\n\n保留 --config 及 bind、port、topic 覆盖能力；复用同一默认配置简化 Proto Bag Server，并同步 VS Code 启动项、回归测试和使用文档。
</comment><date>2026-08-25 11:25:36 +0800</date><id>dd7adad45f010a552e8833702b9d2fc068042af4</id><msg>feat: 支持 Live Bridge 零配置启动</msg><path><editType>edit</editType><file>replayer/live_bridge/pnc_live_bridge_app.hpp</file></path><path><editType>edit</editType><file>CMakeLists.txt</file></path><path><editType>edit</editType><file>docs/pnc_algorithm_replay/usage.md</file></path><path><editType>edit</editType><file>replayer/live_bridge/pnc_live_bridge_app.cpp</file></path><path><editType>edit</editType><file>tools/pnc_live_bridge/main.cpp</file></path><path><editType>edit</editType><file>Testing/live_bridge_app_test.cpp</file></path><path><editType>edit</editType><file>tools/pnc_proto_bag_server/main.cpp</file></path><path><editType>edit</editType><file>.vscode/launch.json</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>docs/pnc_algorithm_replay/usage.md</affectedPath><affectedPath>.vscode/launch.json</affectedPath><commitId>96f4f01f3f9348d724c8861202430b7475581cfc</commitId><timestamp>1787630677000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>docs: 统一回放服务零参数入口

补充 Live Bridge 与 Proto Bag Server 的零 YAML 命令、显式配置覆盖、端口冲突和直接开 bag 示例。\n\n将 VS Code Bag Server launch 拆为零参数空会话与启动时直接打开 bag 两个入口，避免要求用户输入空路径。
</comment><date>2026-08-25 12:04:37 +0800</date><id>96f4f01f3f9348d724c8861202430b7475581cfc</id><msg>docs: 统一回放服务零参数入口</msg><path><editType>edit</editType><file>docs/pnc_algorithm_replay/usage.md</file></path><path><editType>edit</editType><file>.vscode/launch.json</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>docs/pnc_algorithm_replay/usage.md</affectedPath><affectedPath>replayer/live_bridge/live_map_runtime.cpp</affectedPath><affectedPath>Testing/live_bridge_app_test.cpp</affectedPath><affectedPath>replayer/scene_data/map_provider.cpp</affectedPath><commitId>bb50c3eb8e4cd972ecd12a13d6ae6c61d2d76424</commitId><timestamp>1787637735000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 支持网页按地图包目录加载地图

Live Bridge 接受地图 JSON 或包含唯一 map_*.json 的地图包目录，并继续严格校验 Anchor logical ID、district/version 与 SHA256。\n\n地图不匹配错误补充期望 logical ID，新增目录解析回归测试并更新使用文档。
</comment><date>2026-08-25 14:02:15 +0800</date><id>bb50c3eb8e4cd972ecd12a13d6ae6c61d2d76424</id><msg>fix: 支持网页按地图包目录加载地图</msg><path><editType>edit</editType><file>Testing/live_bridge_app_test.cpp</file></path><path><editType>edit</editType><file>replayer/live_bridge/live_map_runtime.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/map_provider.cpp</file></path><path><editType>edit</editType><file>docs/pnc_algorithm_replay/usage.md</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>replayer/live_bridge/pnc_live_bridge_app.hpp</affectedPath><affectedPath>Testing/live_bridge_app_test.cpp</affectedPath><affectedPath>replayer/live_bridge/live_map_runtime.hpp</affectedPath><affectedPath>proto/scene_replay_api.proto</affectedPath><affectedPath>replayer/live_bridge/live_scene_service_handler.hpp</affectedPath><affectedPath>replayer/live_bridge/live_scene_service_handler.cpp</affectedPath><affectedPath>replayer/live_bridge/pnc_live_bridge_app.cpp</affectedPath><affectedPath>replayer/live_bridge/live_map_runtime.cpp</affectedPath><affectedPath>replayer/analysis_server/proto_http_router.cpp</affectedPath><affectedPath>replayer/scene_data/generated/scene_replay_api_descriptor.pb</affectedPath><affectedPath>replayer/analysis_server/proto_http_router.hpp</affectedPath><commitId>ddeab18ea19e4471b10d2a703a3b77e2d4da516b</commitId><timestamp>1787638857000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>feat: 提供受限地图文件浏览接口

新增 binary Proto 地图目录浏览端点，默认仅允许访问 /home/senior/maps 及其子目录，并阻止路径越界。返回目录、map_*.json 与可选地图包信息，供 Web 文件选择器使用。
</comment><date>2026-08-25 14:20:57 +0800</date><id>ddeab18ea19e4471b10d2a703a3b77e2d4da516b</id><msg>feat: 提供受限地图文件浏览接口</msg><path><editType>edit</editType><file>replayer/live_bridge/live_scene_service_handler.cpp</file></path><path><editType>edit</editType><file>replayer/live_bridge/live_map_runtime.cpp</file></path><path><editType>edit</editType><file>replayer/live_bridge/live_scene_service_handler.hpp</file></path><path><editType>edit</editType><file>replayer/live_bridge/pnc_live_bridge_app.hpp</file></path><path><editType>edit</editType><file>proto/scene_replay_api.proto</file></path><path><editType>edit</editType><file>Testing/live_bridge_app_test.cpp</file></path><path><editType>edit</editType><file>replayer/analysis_server/proto_http_router.hpp</file></path><path><editType>edit</editType><file>replayer/live_bridge/pnc_live_bridge_app.cpp</file></path><path><editType>edit</editType><file>replayer/analysis_server/proto_http_router.cpp</file></path><path><editType>edit</editType><file>replayer/live_bridge/live_map_runtime.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/scene_replay_api_descriptor.pb</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</affectedPath><affectedPath>tools/pnc_proto_mapper/audit_compact_inherited_containers.py</affectedPath><affectedPath>data/boundary/road_boundary.hpp</affectedPath><affectedPath>Testing/assertion_pack_registry_test.cpp</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_decoder.hpp</affectedPath><affectedPath>replayer/replayer_data_process/replayer_data_process.hpp</affectedPath><affectedPath>CMakeLists.txt</affectedPath><affectedPath>replayer/scene_data/debug_visualization_replay_contract.yaml</affectedPath><affectedPath>replayer/scene_data/full_proto_custom_encoder.hpp</affectedPath><affectedPath>replayer/algorithm_replay/production_variant_runner.cpp</affectedPath><affectedPath>replayer/scene_data/generated/compact_typed_field_codec.hpp</affectedPath><affectedPath>replayer/scene_data/compact_custom_field_proto_codec.cpp</affectedPath><affectedPath>replayer/analysis_server/scene_channel_wire.cpp</affectedPath><affectedPath>proto/decision.proto</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_encoder.hpp</affectedPath><affectedPath>replayer/scene_data/generated/compact_scene_descriptor.pb</affectedPath><affectedPath>proto/pnc_scene/compact_replay_input.proto</affectedPath><affectedPath>proto/pnc_scene/compact_plan_frame_fields.proto</affectedPath><affectedPath>replayer/algorithm_replay/profiles/debug_keb.yaml</affectedPath><affectedPath>replayer/scene_data/config_proto_codec.cpp</affectedPath><affectedPath>Taskfile.yml</affectedPath><affectedPath>Testing/encoding_benchmark_test.cpp</affectedPath><affectedPath>replayer/scene_data/compact_numeric_policy.yaml</affectedPath><affectedPath>proto/pnc_scene/compact_recorded_debug.proto</affectedPath><affectedPath>data/wbca/wbca_data.hpp</affectedPath><affectedPath>replayer/scene_data/obstacle_proto_codec.hpp</affectedPath><affectedPath>proto/pnc_scene/compact_guide_line.proto</affectedPath><affectedPath>common/util/thr_helper.hpp</affectedPath><affectedPath>tasks/plan/keb_utils.cpp</affectedPath><affectedPath>proto/map_data.proto</affectedPath><affectedPath>docs/pnc_algorithm_replay/plan_frame_field_workflow.md</affectedPath><affectedPath>replayer/scene_data/plan_frame_persistence_policy.yaml</affectedPath><affectedPath>replayer/scene_data/plan_frame_full_mapping.yaml</affectedPath><affectedPath>replayer/scene_data/remaining_plan_proto_codec.hpp</affectedPath><affectedPath>proto/pnc_scene/full_plan_frame.proto</affectedPath><affectedPath>replayer/scene_data/remaining_plan_proto_codec.cpp</affectedPath><affectedPath>replayer/scene_data/compact_proto_codec.cpp</affectedPath><affectedPath>tasks/plan/keb_lane_follow_path_task.cpp</affectedPath><affectedPath>replayer/replayer_data_process/replayer_data_process.cpp</affectedPath><affectedPath>tools/pnc_proto_mapper/audit_compact_nested_boost_contract.py</affectedPath><affectedPath>proto/plan_data.proto</affectedPath><affectedPath>replayer/scene_data/full_custom_codec_exclusions.yaml</affectedPath><affectedPath>data/app/fsm/task_done_verification.hpp</affectedPath><affectedPath>tasks/plan/keb_path_optimize_task.cpp</affectedPath><affectedPath>docs/pnc_algorithm_replay/proto_generation.md</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_decoder.cpp</affectedPath><affectedPath>tools/pnc_proto_mapper/sync_trajectory_schema.py</affectedPath><affectedPath>data/boundary/driving_corridor.hpp</affectedPath><affectedPath>data/map/reference/reference_segment.hpp</affectedPath><affectedPath>replayer/scene_data/compact_nested_boost_contracts.yaml</affectedPath><affectedPath>replayer/scene_data/obstacle_proto_codec.cpp</affectedPath><affectedPath>Testing/scene_replay_foundation_test.cpp</affectedPath><affectedPath>replayer/scene_data/generated/trajectory_schema_inputs.json</affectedPath><affectedPath>tools/pnc_proto_mapper/audit_full_custom_codecs.py</affectedPath><affectedPath>Testing/pnc_map_reflection_test.cpp</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_encoder.cpp</affectedPath><affectedPath>docs/pnc_algorithm_replay/plan_frame_persistence_catalog.md</affectedPath><affectedPath>replayer/scene_data/compact_custom_field_proto_codec.hpp</affectedPath><affectedPath>data/plan/path_data.hpp</affectedPath><affectedPath>replayer/scene_data/full_proto_custom_encoder.cpp</affectedPath><affectedPath>tools/pnc_encoding_benchmark/main.cpp</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_field_roles.json</affectedPath><affectedPath>proto/config.proto</affectedPath><affectedPath>replayer/scene_data/generated/full_custom_codec_coverage_audit.yaml</affectedPath><affectedPath>replayer/algorithm_replay/assertions/debug_observation.yaml</affectedPath><affectedPath>tools/pnc_proto_mapper/audit_debug_replay_contract.py</affectedPath><affectedPath>replayer/scene_data/generated/compact_typed_field_codec.cpp</affectedPath><affectedPath>replayer/scene_data/compact_inherited_container_contracts.yaml</affectedPath><affectedPath>Testing/scene_channel_wire_test.cpp</affectedPath><affectedPath>replayer/analysis_server/compact_geometry_wire.cpp</affectedPath><affectedPath>proto/trajectory.proto</affectedPath><affectedPath>data/config/cfg_dynamic.hpp</affectedPath><affectedPath>data/vehicle/vehicle_state.hpp</affectedPath><affectedPath>replayer/scene_data/plan_frame_nested_persistence_review.yaml</affectedPath><affectedPath>tasks/plan/keb_utils.hpp</affectedPath><affectedPath>docs/pnc_algorithm_replay/usage.md</affectedPath><affectedPath>docs/pnc_algorithm_replay/compact_numeric_encoding_rules.md</affectedPath><affectedPath>replayer/scene_data/generated/state_schema_inputs.json</affectedPath><affectedPath>replayer/scene_data/plan_frame_field_roles.csv</affectedPath><affectedPath>data/map/reference/reference_road_section.hpp</affectedPath><affectedPath>replayer/scene_data/generated/scene_replay_api_descriptor.pb</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_descriptor.pb</affectedPath><commitId>810eb76c74b62be8820ea2acf2098aae22573f43</commitId><timestamp>1788334807000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>feat: 完善场景回放数据合同与调试重建

补齐 PlanFrame Full/Compact 的配置、地图、路径、障碍物与跨帧状态强类型编解码，并为重几何采用车体坐标量化与外层 Zstd。

新增 Full custom codec、继承容器、嵌套 Boost 和高级调试回放合同审计，保留冻结 Proto 字段号及旧消息兼容 tombstone。

支持 KEB/Lattice 等调试图层从 canonical 输入确定性重建，补充字段覆盖、精度、隔离、带宽和回放回归测试。
</comment><date>2026-09-02 15:40:07 +0800</date><id>810eb76c74b62be8820ea2acf2098aae22573f43</id><msg>feat: 完善场景回放数据合同与调试重建</msg><path><editType>edit</editType><file>replayer/algorithm_replay/production_variant_runner.cpp</file></path><path><editType>edit</editType><file>proto/pnc_scene/compact_replay_input.proto</file></path><path><editType>edit</editType><file>replayer/replayer_data_process/replayer_data_process.hpp</file></path><path><editType>edit</editType><file>tools/pnc_proto_mapper/sync_trajectory_schema.py</file></path><path><editType>edit</editType><file>Taskfile.yml</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_encoder.cpp</file></path><path><editType>edit</editType><file>docs/pnc_algorithm_replay/proto_generation.md</file></path><path><editType>add</editType><file>replayer/scene_data/full_custom_codec_exclusions.yaml</file></path><path><editType>edit</editType><file>Testing/assertion_pack_registry_test.cpp</file></path><path><editType>edit</editType><file>replayer/analysis_server/compact_geometry_wire.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_field_roles.json</file></path><path><editType>edit</editType><file>replayer/scene_data/remaining_plan_proto_codec.hpp</file></path><path><editType>add</editType><file>tools/pnc_proto_mapper/audit_debug_replay_contract.py</file></path><path><editType>edit</editType><file>data/map/reference/reference_segment.hpp</file></path><path><editType>add</editType><file>replayer/scene_data/debug_visualization_replay_contract.yaml</file></path><path><editType>edit</editType><file>data/app/fsm/task_done_verification.hpp</file></path><path><editType>edit</editType><file>Testing/encoding_benchmark_test.cpp</file></path><path><editType>edit</editType><file>proto/pnc_scene/compact_guide_line.proto</file></path><path><editType>edit</editType><file>CMakeLists.txt</file></path><path><editType>add</editType><file>tools/pnc_proto_mapper/audit_compact_inherited_containers.py</file></path><path><editType>edit</editType><file>proto/trajectory.proto</file></path><path><editType>edit</editType><file>Testing/scene_replay_foundation_test.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/plan_frame_persistence_policy.yaml</file></path><path><editType>add</editType><file>replayer/algorithm_replay/assertions/debug_observation.yaml</file></path><path><editType>edit</editType><file>replayer/scene_data/plan_frame_field_roles.csv</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_decoder.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/compact_numeric_policy.yaml</file></path><path><editType>edit</editType><file>replayer/scene_data/compact_custom_field_proto_codec.cpp</file></path><path><editType>edit</editType><file>data/map/reference/reference_road_section.hpp</file></path><path><editType>add</editType><file>replayer/scene_data/compact_nested_boost_contracts.yaml</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/trajectory_schema_inputs.json</file></path><path><editType>edit</editType><file>docs/pnc_algorithm_replay/plan_frame_field_workflow.md</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/compact_scene_descriptor.pb</file></path><path><editType>edit</editType><file>docs/pnc_algorithm_replay/usage.md</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_descriptor.pb</file></path><path><editType>edit</editType><file>replayer/scene_data/plan_frame_nested_persistence_review.yaml</file></path><path><editType>edit</editType><file>proto/pnc_scene/full_plan_frame.proto</file></path><path><editType>edit</editType><file>replayer/scene_data/full_proto_custom_encoder.hpp</file></path><path><editType>edit</editType><file>replayer/replayer_data_process/replayer_data_process.cpp</file></path><path><editType>edit</editType><file>proto/decision.proto</file></path><path><editType>edit</editType><file>tasks/plan/keb_path_optimize_task.cpp</file></path><path><editType>edit</editType><file>common/util/thr_helper.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_encoder.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/remaining_plan_proto_codec.cpp</file></path><path><editType>edit</editType><file>docs/pnc_algorithm_replay/plan_frame_persistence_catalog.md</file></path><path><editType>edit</editType><file>replayer/scene_data/obstacle_proto_codec.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/compact_custom_field_proto_codec.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/state_schema_inputs.json</file></path><path><editType>edit</editType><file>replayer/scene_data/compact_proto_codec.cpp</file></path><path><editType>edit</editType><file>data/wbca/wbca_data.hpp</file></path><path><editType>edit</editType><file>data/config/cfg_dynamic.hpp</file></path><path><editType>edit</editType><file>data/boundary/driving_corridor.hpp</file></path><path><editType>edit</editType><file>proto/plan_data.proto</file></path><path><editType>edit</editType><file>data/plan/path_data.hpp</file></path><path><editType>edit</editType><file>proto/pnc_scene/compact_recorded_debug.proto</file></path><path><editType>edit</editType><file>proto/map_data.proto</file></path><path><editType>add</editType><file>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/compact_typed_field_codec.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/compact_typed_field_codec.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_decoder.cpp</file></path><path><editType>edit</editType><file>Testing/scene_channel_wire_test.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/obstacle_proto_codec.cpp</file></path><path><editType>add</editType><file>tools/pnc_proto_mapper/audit_full_custom_codecs.py</file></path><path><editType>edit</editType><file>Testing/pnc_map_reflection_test.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/full_proto_custom_encoder.cpp</file></path><path><editType>edit</editType><file>docs/pnc_algorithm_replay/compact_numeric_encoding_rules.md</file></path><path><editType>edit</editType><file>proto/pnc_scene/compact_plan_frame_fields.proto</file></path><path><editType>add</editType><file>replayer/algorithm_replay/profiles/debug_keb.yaml</file></path><path><editType>edit</editType><file>replayer/analysis_server/scene_channel_wire.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/config_proto_codec.cpp</file></path><path><editType>edit</editType><file>data/vehicle/vehicle_state.hpp</file></path><path><editType>edit</editType><file>tasks/plan/keb_utils.hpp</file></path><path><editType>add</editType><file>replayer/scene_data/compact_inherited_container_contracts.yaml</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/scene_replay_api_descriptor.pb</file></path><path><editType>edit</editType><file>tasks/plan/keb_lane_follow_path_task.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/plan_frame_full_mapping.yaml</file></path><path><editType>edit</editType><file>proto/config.proto</file></path><path><editType>add</editType><file>replayer/scene_data/generated/full_custom_codec_coverage_audit.yaml</file></path><path><editType>add</editType><file>tools/pnc_proto_mapper/audit_compact_nested_boost_contract.py</file></path><path><editType>edit</editType><file>tasks/plan/keb_utils.cpp</file></path><path><editType>edit</editType><file>data/boundary/road_boundary.hpp</file></path><path><editType>edit</editType><file>tools/pnc_encoding_benchmark/main.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>.vscode/tasks.json</affectedPath><affectedPath>Testing/live_bridge_app_test.cpp</affectedPath><affectedPath>replayer/live_bridge/pnc_live_web_bridge.hpp</affectedPath><affectedPath>tools/pnc_regression_task/pnc_regression_task_main.cpp</affectedPath><affectedPath>.vscode/launch.json</affectedPath><affectedPath>replayer/live_bridge/live_scene_service_handler.cpp</affectedPath><affectedPath>replayer/live_bridge/pnc_live_bridge_app.cpp</affectedPath><affectedPath>replayer/live_bridge/pnc_live_web_bridge.cpp</affectedPath><affectedPath>tools/pnc_analysis_server/pnc_analysis_server_main.cpp</affectedPath><affectedPath>Testing/live_web_bridge_test.cpp</affectedPath><commitId>a557ee4cb96deba17c4f3d1da013b1a72da1ac9a</commitId><timestamp>1788334853000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>feat: 完善 Live 回放按需观测链路

保留浏览器选中的 Live 帧及其历史，使滚动缓存淘汰后仍可生成 FullFrame，并在按需请求时重建 Compact 中省略的观察字段。

为 Analysis Server 和回归任务补齐正常 ROS 生命周期，更新调试启动任务并覆盖选帧、无地图降级与持续采集回归。
</comment><date>2026-09-02 15:40:53 +0800</date><id>a557ee4cb96deba17c4f3d1da013b1a72da1ac9a</id><msg>feat: 完善 Live 回放按需观测链路</msg><path><editType>edit</editType><file>Testing/live_web_bridge_test.cpp</file></path><path><editType>edit</editType><file>replayer/live_bridge/live_scene_service_handler.cpp</file></path><path><editType>edit</editType><file>Testing/live_bridge_app_test.cpp</file></path><path><editType>edit</editType><file>tools/pnc_analysis_server/pnc_analysis_server_main.cpp</file></path><path><editType>edit</editType><file>.vscode/launch.json</file></path><path><editType>edit</editType><file>replayer/live_bridge/pnc_live_web_bridge.cpp</file></path><path><editType>edit</editType><file>tools/pnc_regression_task/pnc_regression_task_main.cpp</file></path><path><editType>edit</editType><file>replayer/live_bridge/pnc_live_web_bridge.hpp</file></path><path><editType>edit</editType><file>replayer/live_bridge/pnc_live_bridge_app.cpp</file></path><path><editType>edit</editType><file>.vscode/tasks.json</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>replayer/logic.hpp</affectedPath><affectedPath>replayer/main.cpp</affectedPath><affectedPath>replayer/replayer_data_process/load_snap_data.cpp</affectedPath><affectedPath>replayer/logic.cpp</affectedPath><affectedPath>hmi/replayer_hmi.cpp</affectedPath><commitId>2162e2df544d9582ce4d1f1b8423194d9142d66d</commitId><timestamp>1788334918000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 修复 Replayer 实时模式卡顿与状态竞争

将实时模式切换请求交由工作线程应用，缩短帧队列锁持有时间并修正播放索引上报和边界处理。

在丢弃重入 UI 更新时及时释放生产者背压，补充 realtime 启动参数，并按实际加载类型报告地图与快照状态。
</comment><date>2026-09-02 15:41:58 +0800</date><id>2162e2df544d9582ce4d1f1b8423194d9142d66d</id><msg>fix: 修复 Replayer 实时模式卡顿与状态竞争</msg><path><editType>edit</editType><file>replayer/main.cpp</file></path><path><editType>edit</editType><file>replayer/logic.cpp</file></path><path><editType>edit</editType><file>hmi/replayer_hmi.cpp</file></path><path><editType>edit</editType><file>replayer/logic.hpp</file></path><path><editType>edit</editType><file>replayer/replayer_data_process/load_snap_data.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>hmi/widget/player.hpp</affectedPath><affectedPath>Testing/scene_replay_foundation_test.cpp</affectedPath><affectedPath>source/ros_source_replayer_snapshot.cpp</affectedPath><affectedPath>source/ros_source_replayer_snapshot.hpp</affectedPath><affectedPath>Taskfile.yml</affectedPath><affectedPath>hmi/widget/player.cpp</affectedPath><affectedPath>replayer/logic.cpp</affectedPath><commitId>283c9fc9112dddbbbead9e26f929e2f08cb2f659</commitId><timestamp>1788345702000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 避免实时回放插入解码失败空帧

实时快照只有在 Compact 或旧格式完整解码成功后才进入播放队列，sequence gap 等失败不再产生零位姿 PlanFrame，从而消除界面闪空帧和后续 OpenCV 重建异常。

统一播放器时间格式化并处理零时间、毫秒进位和 localtime 失败，避免切换或退出阶段对短字符串执行 substr 导致崩溃。

增加本地 Replayer 构建入口和时间格式回归测试，并使用 2026-09-02-18-21-39.bag 完成实时播放验证。
</comment><date>2026-09-02 18:41:42 +0800</date><id>283c9fc9112dddbbbead9e26f929e2f08cb2f659</id><msg>fix: 避免实时回放插入解码失败空帧</msg><path><editType>edit</editType><file>Testing/scene_replay_foundation_test.cpp</file></path><path><editType>edit</editType><file>hmi/widget/player.hpp</file></path><path><editType>edit</editType><file>source/ros_source_replayer_snapshot.cpp</file></path><path><editType>edit</editType><file>Taskfile.yml</file></path><path><editType>edit</editType><file>hmi/widget/player.cpp</file></path><path><editType>edit</editType><file>replayer/logic.cpp</file></path><path><editType>edit</editType><file>source/ros_source_replayer_snapshot.hpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>replayer/replayer_data_process/replayer_data_process.cpp</affectedPath><affectedPath>Testing/scene_replay_foundation_test.cpp</affectedPath><commitId>117b9bd75b69187ad1a289cc3bbb42384c28f53c</commitId><timestamp>1788349127000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>feat: 增加回放数据处理分步耗时统计

为 ReplayerDataProcess 各重建阶段增加基于 steady_clock 的具名耗时指标，并写入现有 plan_diagnose_ 性能面板数据源。\n\n每轮处理前清理旧的 RDP 指标，确保条件步骤关闭后不会显示历史值；作用域计时覆盖提前返回和异常路径。补充回归测试验证总耗时、关键阶段和旧指标清理。
</comment><date>2026-09-02 19:38:47 +0800</date><id>117b9bd75b69187ad1a289cc3bbb42384c28f53c</id><msg>feat: 增加回放数据处理分步耗时统计</msg><path><editType>edit</editType><file>Testing/scene_replay_foundation_test.cpp</file></path><path><editType>edit</editType><file>replayer/replayer_data_process/replayer_data_process.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>sink/ros_sink_snapshot_compact_scene.hpp</affectedPath><affectedPath>tools/pnc_proto_mapper/proto_only_lint.py</affectedPath><affectedPath>replayer/replayer_data_process/replayer_data_process.cpp</affectedPath><affectedPath>sink/ros_sink_snapshot_compact_scene.cpp</affectedPath><affectedPath>tools/pnc_proto_mapper/test_proto_only_lint.py</affectedPath><affectedPath>Testing/scene_replay_foundation_test.cpp</affectedPath><affectedPath>source/ros_source_replayer_snapshot.cpp</affectedPath><affectedPath>docs/pnc_algorithm_replay/plan_frame_field_workflow.md</affectedPath><affectedPath>replayer/replayer_data_process/replayer_computation_policy.hpp</affectedPath><affectedPath>replayer/replayer_data_process/replayer_data_process.hpp</affectedPath><affectedPath>replayer/logic.cpp</affectedPath><commitId>274c1f88d47433836aeff90bad764e47676c06e1</commitId><timestamp>1788352981000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 修复实时回放两秒跳帧与无效重算

实时订阅按队列顺序推进 Compact decoder，仅将最新完整帧交给重建和界面，避免丢失 delta 后等待 20 帧 anchor；无新帧时停止重复刷新和重建。\n\n新增 ReplayerComputationPolicy，按 HMI 勾选状态分别控制 OGM 线、预测碰撞、Path-Time Graph、OGM 碰撞、Driving Passage、KEB 等高耗时计算，并恢复 process_path_time_graph 参数的正确语义。\n\n新实时 writer 每帧携带 common/bootstrap 且不依赖 history，保证单帧可独立解析；补充静态合同、空历史回退、队列消费和策略映射测试。
</comment><date>2026-09-02 20:43:01 +0800</date><id>274c1f88d47433836aeff90bad764e47676c06e1</id><msg>fix: 修复实时回放两秒跳帧与无效重算</msg><path><editType>edit</editType><file>replayer/replayer_data_process/replayer_data_process.hpp</file></path><path><editType>edit</editType><file>tools/pnc_proto_mapper/proto_only_lint.py</file></path><path><editType>edit</editType><file>replayer/replayer_data_process/replayer_data_process.cpp</file></path><path><editType>edit</editType><file>Testing/scene_replay_foundation_test.cpp</file></path><path><editType>add</editType><file>replayer/replayer_data_process/replayer_computation_policy.hpp</file></path><path><editType>edit</editType><file>source/ros_source_replayer_snapshot.cpp</file></path><path><editType>edit</editType><file>docs/pnc_algorithm_replay/plan_frame_field_workflow.md</file></path><path><editType>edit</editType><file>sink/ros_sink_snapshot_compact_scene.cpp</file></path><path><editType>edit</editType><file>tools/pnc_proto_mapper/test_proto_only_lint.py</file></path><path><editType>edit</editType><file>replayer/logic.cpp</file></path><path><editType>edit</editType><file>sink/ros_sink_snapshot_compact_scene.hpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>tools/pnc_encoding_benchmark/main.cpp</affectedPath><affectedPath>replayer/scene_data/live_compact_context_codec.hpp</affectedPath><affectedPath>tools/pnc_proto_mapper/proto_only_lint.py</affectedPath><affectedPath>Testing/planframe_compat_test.cpp</affectedPath><affectedPath>replayer/sdk/planframe_compat.cpp</affectedPath><affectedPath>proto/pnc_scene/live_compact_frame.proto</affectedPath><affectedPath>replayer/scene_data/proto_bag_scene_builder.cpp</affectedPath><affectedPath>replayer/scene_data/live_compact_context_codec.cpp</affectedPath><affectedPath>replayer/scene_data/compact_snapshot_stream_decoder.cpp</affectedPath><affectedPath>CMakeLists.txt</affectedPath><affectedPath>tools/pnc_proto_bag_to_scene/main.cpp</affectedPath><affectedPath>replayer/scene_data/live_compact_ingress.cpp</affectedPath><affectedPath>tools/pnc_proto_bag_server/main.cpp</affectedPath><affectedPath>tools/pnc_proto_mapper/test_proto_only_lint.py</affectedPath><affectedPath>sink/ros_sink_snapshot_compact_scene.cpp</affectedPath><affectedPath>Testing/scene_replay_foundation_test.cpp</affectedPath><affectedPath>docs/pnc_algorithm_replay/plan_frame_field_workflow.md</affectedPath><affectedPath>replayer/live_bridge/pnc_live_web_bridge.cpp</affectedPath><commitId>3a4cd5022ccb8a79c45ce382f65385ae26977cf1</commitId><timestamp>1788355313000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 压缩实时回放公共与启动上下文

新增 v2 Live Compact envelope，将每帧自包含的 SceneCommon 和 SceneBootstrap 合并为 Zstd context payload，避免未压缩上下文导致实时带宽翻倍。

解码端、Live Bridge、bag 转换和 SDK 继续兼容 v1 裸上下文；补充协议边界、失败不污染状态、单帧解码和带宽统计验证。
</comment><date>2026-09-02 21:21:53 +0800</date><id>3a4cd5022ccb8a79c45ce382f65385ae26977cf1</id><msg>fix: 压缩实时回放公共与启动上下文</msg><path><editType>edit</editType><file>tools/pnc_proto_bag_server/main.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/compact_snapshot_stream_decoder.cpp</file></path><path><editType>edit</editType><file>replayer/sdk/planframe_compat.cpp</file></path><path><editType>edit</editType><file>proto/pnc_scene/live_compact_frame.proto</file></path><path><editType>edit</editType><file>tools/pnc_encoding_benchmark/main.cpp</file></path><path><editType>edit</editType><file>tools/pnc_proto_bag_to_scene/main.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/proto_bag_scene_builder.cpp</file></path><path><editType>add</editType><file>replayer/scene_data/live_compact_context_codec.hpp</file></path><path><editType>edit</editType><file>Testing/planframe_compat_test.cpp</file></path><path><editType>edit</editType><file>CMakeLists.txt</file></path><path><editType>edit</editType><file>tools/pnc_proto_mapper/proto_only_lint.py</file></path><path><editType>edit</editType><file>Testing/scene_replay_foundation_test.cpp</file></path><path><editType>edit</editType><file>docs/pnc_algorithm_replay/plan_frame_field_workflow.md</file></path><path><editType>add</editType><file>replayer/scene_data/live_compact_context_codec.cpp</file></path><path><editType>edit</editType><file>tools/pnc_proto_mapper/test_proto_only_lint.py</file></path><path><editType>edit</editType><file>replayer/live_bridge/pnc_live_web_bridge.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/live_compact_ingress.cpp</file></path><path><editType>edit</editType><file>sink/ros_sink_snapshot_compact_scene.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>tools/pnc_encoding_benchmark/main.cpp</affectedPath><affectedPath>replayer/scene_data/remaining_plan_proto_codec.cpp</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_field_roles.json</affectedPath><affectedPath>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_decoder.cpp</affectedPath><affectedPath>replayer/scene_data/generated/compact_typed_field_codec.cpp</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_decoder.hpp</affectedPath><affectedPath>tools/pnc_proto_mapper/generator.py</affectedPath><affectedPath>replayer/scene_data/generated/compact_typed_field_codec.hpp</affectedPath><affectedPath>docs/pnc_algorithm_replay/plan_frame_field_workflow.md</affectedPath><affectedPath>Testing/scene_replay_foundation_test.cpp</affectedPath><affectedPath>replayer/scene_data/plan_frame_full_mapping.yaml</affectedPath><affectedPath>data/plan/smooth_data.hpp</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_encoder.cpp</affectedPath><affectedPath>replayer/scene_data/plan_frame_field_roles.csv</affectedPath><affectedPath>replayer/scene_data/remaining_plan_proto_codec.hpp</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_encoder.hpp</affectedPath><commitId>7dae66f67d8e40f5cd7d3a5837483f348f5ab293</commitId><timestamp>1788358352000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>perf: 精简实时回放平滑启动状态

将 SmoothData 的当帧 discretized_path 和 anchor_pts 从 Compact Bootstrap 中移除，仅保留平滑判定所需跨帧状态；Full Proto 继续完整保存观察数据，旧 Compact 数据保持兼容读取。

补充 Bootstrap 字段带宽统计与 Full/Compact 边界测试，实测单帧从 53.53 KB 降至 31.36 KB。
</comment><date>2026-09-02 22:12:32 +0800</date><id>7dae66f67d8e40f5cd7d3a5837483f348f5ab293</id><msg>perf: 精简实时回放平滑启动状态</msg><path><editType>edit</editType><file>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</file></path><path><editType>edit</editType><file>tools/pnc_proto_mapper/generator.py</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_encoder.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_encoder.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/remaining_plan_proto_codec.hpp</file></path><path><editType>edit</editType><file>tools/pnc_encoding_benchmark/main.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_decoder.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_field_roles.json</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_decoder.cpp</file></path><path><editType>edit</editType><file>docs/pnc_algorithm_replay/plan_frame_field_workflow.md</file></path><path><editType>edit</editType><file>replayer/scene_data/plan_frame_full_mapping.yaml</file></path><path><editType>edit</editType><file>Testing/scene_replay_foundation_test.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/plan_frame_field_roles.csv</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/compact_typed_field_codec.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/remaining_plan_proto_codec.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/compact_typed_field_codec.cpp</file></path><path><editType>edit</editType><file>data/plan/smooth_data.hpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>tools/pnc_encoding_benchmark/main.cpp</affectedPath><affectedPath>replayer/scene_data/remaining_plan_proto_codec.cpp</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_field_roles.json</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_decoder.cpp</affectedPath><affectedPath>replayer/scene_data/generated/compact_typed_field_codec.cpp</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_decoder.hpp</affectedPath><affectedPath>replayer/scene_data/generated/compact_typed_field_codec.hpp</affectedPath><affectedPath>Testing/scene_replay_foundation_test.cpp</affectedPath><affectedPath>docs/pnc_algorithm_replay/plan_frame_field_workflow.md</affectedPath><affectedPath>replayer/scene_data/plan_frame_full_mapping.yaml</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_encoder.cpp</affectedPath><affectedPath>replayer/scene_data/plan_frame_field_roles.csv</affectedPath><affectedPath>replayer/scene_data/remaining_plan_proto_codec.hpp</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_encoder.hpp</affectedPath><commitId>66ac64440010c5e64461e7852c88f2a1c1eb4014</commitId><timestamp>1788401106000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 收紧回放公共与启动状态边界

复查 Common 与 Bootstrap 字段用途，为带宽工具补充两类上下文的字段级统计。

SwitchData Compact 仅保留下一帧会复用的换道路径，排除只供 HMI 展示的 OGM 和障碍物安全区域；Full Proto 保持完整观察数据。
</comment><date>2026-09-03 10:05:06 +0800</date><id>66ac64440010c5e64461e7852c88f2a1c1eb4014</id><msg>fix: 收紧回放公共与启动状态边界</msg><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_field_roles.json</file></path><path><editType>edit</editType><file>replayer/scene_data/remaining_plan_proto_codec.hpp</file></path><path><editType>edit</editType><file>tools/pnc_encoding_benchmark/main.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_decoder.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_encoder.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_encoder.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/plan_frame_field_roles.csv</file></path><path><editType>edit</editType><file>replayer/scene_data/remaining_plan_proto_codec.cpp</file></path><path><editType>edit</editType><file>Testing/scene_replay_foundation_test.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/compact_typed_field_codec.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/plan_frame_full_mapping.yaml</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/compact_typed_field_codec.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_decoder.hpp</file></path><path><editType>edit</editType><file>docs/pnc_algorithm_replay/plan_frame_field_workflow.md</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>tools/pnc_encoding_benchmark/main.cpp</affectedPath><affectedPath>replayer/scene_data/compact_proto_codec.cpp</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_field_roles.json</affectedPath><affectedPath>tools/pnc_proto_mapper/proto_only_lint.py</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_decoder.cpp</affectedPath><affectedPath>replayer/scene_data/generated/compact_typed_field_codec.cpp</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_decoder.hpp</affectedPath><affectedPath>replayer/scene_data/encoding_benchmark.cpp</affectedPath><affectedPath>replayer/scene_data/generated/compact_typed_field_codec.hpp</affectedPath><affectedPath>replayer/scene_data/compact_custom_field_proto_codec.cpp</affectedPath><affectedPath>tools/pnc_proto_mapper/test_proto_only_lint.py</affectedPath><affectedPath>Testing/scene_replay_foundation_test.cpp</affectedPath><affectedPath>docs/pnc_algorithm_replay/plan_frame_field_workflow.md</affectedPath><affectedPath>replayer/scene_data/plan_frame_full_mapping.yaml</affectedPath><affectedPath>replayer/scene_data/compact_custom_field_proto_codec.hpp</affectedPath><affectedPath>replayer/scene_data/plan_frame_field_roles.csv</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_encoder.cpp</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_encoder.hpp</affectedPath><commitId>0880db33c3fdab37950dccb1909dbcda3eee795a</commitId><timestamp>1788403090000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>perf: 精简 SSEP 回放中间状态

Compact 不再保存可由 search/smooth path 重建的 ssep_path，并排除 SsepEC online/offline region 构造中间轮廓；最终 plan_region_contour 与下游直接消费的约束几何保持不变。

新增 SSEP 字段级带宽统计和 *_srl_ 镜像读取门禁。最新实录重编码后从 41.61 KB/帧降至 37.34 KB/帧。
</comment><date>2026-09-03 10:38:10 +0800</date><id>0880db33c3fdab37950dccb1909dbcda3eee795a</id><msg>perf: 精简 SSEP 回放中间状态</msg><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_field_roles.json</file></path><path><editType>edit</editType><file>tools/pnc_encoding_benchmark/main.cpp</file></path><path><editType>edit</editType><file>tools/pnc_proto_mapper/proto_only_lint.py</file></path><path><editType>edit</editType><file>Testing/scene_replay_foundation_test.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_decoder.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/compact_custom_field_proto_codec.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/compact_proto_codec.cpp</file></path><path><editType>edit</editType><file>docs/pnc_algorithm_replay/plan_frame_field_workflow.md</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_encoder.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/encoding_benchmark.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/compact_custom_field_proto_codec.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/plan_frame_full_mapping.yaml</file></path><path><editType>edit</editType><file>tools/pnc_proto_mapper/test_proto_only_lint.py</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/compact_typed_field_codec.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_decoder.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/plan_frame_field_roles.csv</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/compact_typed_field_codec.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_encoder.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>docs/pnc_algorithm_replay/usage.md</affectedPath><affectedPath>docs/pnc_algorithm_replay/compact_numeric_encoding_rules.md</affectedPath><affectedPath>replayer/scene_data/encoding_v3_bandwidth_baseline.yaml</affectedPath><affectedPath>docs/pnc_algorithm_replay/live_snapshot_bandwidth_baseline.md</affectedPath><affectedPath>docs/pnc_algorithm_replay/plan_frame_field_workflow.md</affectedPath><affectedPath>tools/pnc_proto_mapper/test_encoding_v3_baseline.py</affectedPath><commitId>a4cf39fe922a1d328c5a0aa64fbaa199ddca0f31</commitId><timestamp>1788404095000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>docs: 冻结实时回放带宽极限基线

以 2026-09-03 最新实录固化 Live v2 每帧独立解析合同、Common/Bootstrap 语义边界、已排除中间字段和复现方法。

将带宽门禁更新为实际 wire 不超过 40 KiB/帧、压缩 Context 不超过 6 KiB/帧；Boost 因合同不等价仅作信息对照。
</comment><date>2026-09-03 10:54:55 +0800</date><id>a4cf39fe922a1d328c5a0aa64fbaa199ddca0f31</id><msg>docs: 冻结实时回放带宽极限基线</msg><path><editType>edit</editType><file>replayer/scene_data/encoding_v3_bandwidth_baseline.yaml</file></path><path><editType>edit</editType><file>docs/pnc_algorithm_replay/plan_frame_field_workflow.md</file></path><path><editType>add</editType><file>docs/pnc_algorithm_replay/live_snapshot_bandwidth_baseline.md</file></path><path><editType>edit</editType><file>docs/pnc_algorithm_replay/usage.md</file></path><path><editType>edit</editType><file>tools/pnc_proto_mapper/test_encoding_v3_baseline.py</file></path><path><editType>edit</editType><file>docs/pnc_algorithm_replay/compact_numeric_encoding_rules.md</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>ssep/CMakeLists.txt</affectedPath><affectedPath>tools/pnc_proto_mapper/test_build_boundaries.py</affectedPath><affectedPath>proto/CMakeLists.txt</affectedPath><affectedPath>replayer/sdk/cmake/pnc_replay_sdkConfig.cmake.in</affectedPath><affectedPath>CMakeLists.txt</affectedPath><affectedPath>replayer/sdk/cmake/workspace_bundle.json.in</affectedPath><commitId>6a5cbab51ee504373953920ec94b0e0f21f5e672</commitId><timestamp>1788409761000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>build: 支持回放 SDK 按需源码联编

新增嵌入式 PlanFrame SDK 构建模式，隔离 pnc_node、HMI 和无关回放目标，只编译兼容解码与 ReplayerDataProcess 所需源集。\n\n为嵌套 Ninja 构建提供独立 Proto/SSEP 静态库和源码工作区 CMake 包，并增加链接完整性与构建边界检查。
</comment><date>2026-09-03 12:29:21 +0800</date><id>6a5cbab51ee504373953920ec94b0e0f21f5e672</id><msg>build: 支持回放 SDK 按需源码联编</msg><path><editType>edit</editType><file>proto/CMakeLists.txt</file></path><path><editType>edit</editType><file>CMakeLists.txt</file></path><path><editType>add</editType><file>replayer/sdk/cmake/workspace_bundle.json.in</file></path><path><editType>edit</editType><file>ssep/CMakeLists.txt</file></path><path><editType>add</editType><file>replayer/sdk/cmake/pnc_replay_sdkConfig.cmake.in</file></path><path><editType>edit</editType><file>tools/pnc_proto_mapper/test_build_boundaries.py</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>Testing/live_bridge_app_test.cpp</affectedPath><affectedPath>replayer/live_bridge/live_map_runtime.hpp</affectedPath><affectedPath>replayer/live_bridge/live_map_runtime.cpp</affectedPath><commitId>14df069da02e3b38cffebf2a9ac0d2a350130833</commitId><timestamp>1788416329000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 允许实时地图等待首帧身份

网页可在首个 Live anchor 到达前只配置地图路径，运行时进入 configured_waiting_for_scene；首帧到达后自动采用其 logical ID 并加载地图。\n\n补充首帧前配置、anchor 到达和默认接口路径回归测试。
</comment><date>2026-09-03 14:18:49 +0800</date><id>14df069da02e3b38cffebf2a9ac0d2a350130833</id><msg>fix: 允许实时地图等待首帧身份</msg><path><editType>edit</editType><file>Testing/live_bridge_app_test.cpp</file></path><path><editType>edit</editType><file>replayer/live_bridge/live_map_runtime.hpp</file></path><path><editType>edit</editType><file>replayer/live_bridge/live_map_runtime.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>replayer/live_bridge/pnc_live_web_bridge.cpp</affectedPath><affectedPath>Testing/live_web_bridge_test.cpp</affectedPath><commitId>dbfe6370d366b07308076c8ed53fa779d698dc82</commitId><timestamp>1788417134000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 从 v2 实时上下文读取地图引用

Live Bridge 在地图 gate 前解压当前 anchor 的 context_payload，不再读取 v2 中已废弃且为空的 envelope.common，避免完整地图被误判为 reference incomplete。\n\n测试默认改用当前 v2 writer 格式，并保留历史 v1 anchor 兼容覆盖。
</comment><date>2026-09-03 14:32:14 +0800</date><id>dbfe6370d366b07308076c8ed53fa779d698dc82</id><msg>fix: 从 v2 实时上下文读取地图引用</msg><path><editType>edit</editType><file>Testing/live_web_bridge_test.cpp</file></path><path><editType>edit</editType><file>replayer/live_bridge/pnc_live_web_bridge.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>tools/pnc_proto_mapper/audit_app_data2_codec.py</affectedPath><affectedPath>replayer/scene_data/full_custom_codec_exclusions.yaml</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_decoder.cpp</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_decoder.hpp</affectedPath><affectedPath>CMakeLists.txt</affectedPath><affectedPath>Testing/cfg_scenarios_proto_codec_test.cpp</affectedPath><affectedPath>replayer/scene_data/compact_nested_boost_contracts.yaml</affectedPath><affectedPath>replayer/scene_data/generated/compact_typed_field_codec.hpp</affectedPath><affectedPath>replayer/scene_data/compact_custom_field_proto_codec.cpp</affectedPath><affectedPath>Testing/scene_replay_foundation_test.cpp</affectedPath><affectedPath>replayer/scene_data/full_proto_custom_encoder.cpp</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_encoder.cpp</affectedPath><affectedPath>docs/pnc_algorithm_replay/plan_frame_persistence_catalog.md</affectedPath><affectedPath>replayer/scene_data/compact_custom_field_proto_codec.hpp</affectedPath><affectedPath>proto/decision.proto</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_encoder.hpp</affectedPath><affectedPath>proto/scenario.proto</affectedPath><affectedPath>replayer/scene_data/generated/compact_scene_descriptor.pb</affectedPath><affectedPath>replayer/scene_data/cfg_scenarios_proto_codec.cpp</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_field_roles.json</affectedPath><affectedPath>proto/pnc_scene/compact_plan_frame_fields.proto</affectedPath><affectedPath>replayer/scene_data/generated/full_custom_codec_coverage_audit.yaml</affectedPath><affectedPath>replayer/scene_data/longitude_constrain_proto_codec.cpp</affectedPath><affectedPath>tools/pnc_proto_mapper/draft_persistence_policy.py</affectedPath><affectedPath>replayer/scene_data/generated/compact_typed_field_codec.cpp</affectedPath><affectedPath>Taskfile.yml</affectedPath><affectedPath>Testing/encoding_benchmark_test.cpp</affectedPath><affectedPath>replayer/scene_data/compact_numeric_policy.yaml</affectedPath><affectedPath>replayer/scene_data/longitude_constrain_proto_codec.hpp</affectedPath><affectedPath>replayer/scene_data/generated/boost_compact_persistence_diff.yaml</affectedPath><affectedPath>replayer/scene_data/cfg_scenarios_proto_codec.hpp</affectedPath><affectedPath>proto/pnc_scene/compact_guide_line.proto</affectedPath><affectedPath>docs/pnc_algorithm_replay/live_snapshot_bandwidth_baseline.md</affectedPath><affectedPath>replayer/scene_data/encoding_benchmark.cpp</affectedPath><affectedPath>tools/pnc_proto_mapper/generator.py</affectedPath><affectedPath>replayer/scene_data/plan_frame_nested_persistence_review.yaml</affectedPath><affectedPath>docs/pnc_algorithm_replay/plan_frame_field_workflow.md</affectedPath><affectedPath>docs/pnc_algorithm_replay/compact_numeric_encoding_rules.md</affectedPath><affectedPath>replayer/scene_data/plan_frame_full_mapping.yaml</affectedPath><affectedPath>replayer/scene_data/plan_frame_persistence_policy.yaml</affectedPath><affectedPath>replayer/scene_data/plan_frame_field_roles.csv</affectedPath><affectedPath>proto/pnc_scene/full_plan_frame.proto</affectedPath><affectedPath>replayer/scene_data/generated/scene_replay_api_descriptor.pb</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_descriptor.pb</affectedPath><commitId>f36b6eacb8f8e3102a252dff8850e4a639a8c1ef</commitId><timestamp>1788444767000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>feat: 完善网页场景回放持久化与压缩

补齐 AppData2、路由响应和 active-stage 场景配置的强类型持久化，确保 Full Proto 与 Candidate 回放状态完整。\n\n为 GuideLine PathBoundary、纵向曲线、纵向约束和 Block Range 增加兼容式 Compact 编码，保留旧 Bag 解码并降低实时快照带宽。\n\n扩展逐成员带宽审计与嵌套 Codec 门禁，修复消融基准浅拷贝污染，并记录最新混合 Stage 实测结果。
</comment><date>2026-09-03 22:12:47 +0800</date><id>f36b6eacb8f8e3102a252dff8850e4a639a8c1ef</id><msg>feat: 完善网页场景回放持久化与压缩</msg><path><editType>edit</editType><file>docs/pnc_algorithm_replay/live_snapshot_bandwidth_baseline.md</file></path><path><editType>edit</editType><file>replayer/scene_data/plan_frame_nested_persistence_review.yaml</file></path><path><editType>edit</editType><file>tools/pnc_proto_mapper/draft_persistence_policy.py</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/boost_compact_persistence_diff.yaml</file></path><path><editType>edit</editType><file>Taskfile.yml</file></path><path><editType>edit</editType><file>replayer/scene_data/full_proto_custom_encoder.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/full_custom_codec_exclusions.yaml</file></path><path><editType>edit</editType><file>Testing/encoding_benchmark_test.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/encoding_benchmark.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/cfg_scenarios_proto_codec.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/plan_frame_full_mapping.yaml</file></path><path><editType>edit</editType><file>replayer/scene_data/plan_frame_persistence_policy.yaml</file></path><path><editType>edit</editType><file>replayer/scene_data/compact_numeric_policy.yaml</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_encoder.cpp</file></path><path><editType>edit</editType><file>proto/pnc_scene/compact_guide_line.proto</file></path><path><editType>edit</editType><file>proto/pnc_scene/compact_plan_frame_fields.proto</file></path><path><editType>edit</editType><file>proto/pnc_scene/full_plan_frame.proto</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_field_roles.json</file></path><path><editType>edit</editType><file>docs/pnc_algorithm_replay/plan_frame_persistence_catalog.md</file></path><path><editType>edit</editType><file>replayer/scene_data/compact_custom_field_proto_codec.cpp</file></path><path><editType>edit</editType><file>docs/pnc_algorithm_replay/plan_frame_field_workflow.md</file></path><path><editType>edit</editType><file>replayer/scene_data/compact_nested_boost_contracts.yaml</file></path><path><editType>edit</editType><file>replayer/scene_data/cfg_scenarios_proto_codec.hpp</file></path><path><editType>edit</editType><file>tools/pnc_proto_mapper/generator.py</file></path><path><editType>edit</editType><file>proto/scenario.proto</file></path><path><editType>edit</editType><file>replayer/scene_data/longitude_constrain_proto_codec.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/compact_scene_descriptor.pb</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_descriptor.pb</file></path><path><editType>edit</editType><file>replayer/scene_data/compact_custom_field_proto_codec.hpp</file></path><path><editType>edit</editType><file>Testing/scene_replay_foundation_test.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/longitude_constrain_proto_codec.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/compact_typed_field_codec.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_decoder.cpp</file></path><path><editType>add</editType><file>tools/pnc_proto_mapper/audit_app_data2_codec.py</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/compact_typed_field_codec.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/full_custom_codec_coverage_audit.yaml</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_decoder.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/scene_replay_api_descriptor.pb</file></path><path><editType>edit</editType><file>CMakeLists.txt</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_encoder.hpp</file></path><path><editType>edit</editType><file>proto/decision.proto</file></path><path><editType>edit</editType><file>docs/pnc_algorithm_replay/compact_numeric_encoding_rules.md</file></path><path><editType>edit</editType><file>replayer/scene_data/plan_frame_field_roles.csv</file></path><path><editType>edit</editType><file>Testing/cfg_scenarios_proto_codec_test.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>Testing/ssep_path_corridor_test.cpp</affectedPath><affectedPath>data/other/flow_control.cpp</affectedPath><commitId>c5737d9170508d933df1242e40f67b36180186c0</commitId><timestamp>1788581619000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 放宽 BulkOut 两点判定的横向容差

将 BulkOut 正反向两点兜底容差设为 10 米，BulkIn 保持 5 米，避免首任务尚无搜索结果时横向调整导致漏判。保留纵向与航向约束，增加现场坐标、容差边界及反向判定回归。
</comment><date>2026-09-05 12:13:39 +0800</date><id>c5737d9170508d933df1242e40f67b36180186c0</id><msg>fix: 放宽 BulkOut 两点判定的横向容差</msg><path><editType>edit</editType><file>Testing/ssep_path_corridor_test.cpp</file></path><path><editType>edit</editType><file>data/other/flow_control.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>Testing/ssep_path_corridor_test.cpp</affectedPath><affectedPath>data/plan/ssep_data.cpp</affectedPath><commitId>d8b7cd36575ec8e5c2d2e51fd8aaa6bd569f0021</commitId><timestamp>1788581637000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 统一双向 IMV 搜索包络的换向航向补偿

将搜索车头相对物理车头的翻转与 vehicle_state 的 reversing_mode 异或，覆盖搜索成功帧及多段换向前后的方向更新。包络匹配和换向点航向检查共用补偿逻辑，保留单向车型及终点退出约束。增加现场首点和连续两次换向回归。
</comment><date>2026-09-05 12:13:57 +0800</date><id>d8b7cd36575ec8e5c2d2e51fd8aaa6bd569f0021</id><msg>fix: 统一双向 IMV 搜索包络的换向航向补偿</msg><path><editType>edit</editType><file>Testing/ssep_path_corridor_test.cpp</file></path><path><editType>edit</editType><file>data/plan/ssep_data.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>ssep/scenarios/scenario_planner_factory.h</affectedPath><affectedPath>data/ssep/forward_ec.cpp</affectedPath><affectedPath>ssep/scenarios/imv_general_planner.h</affectedPath><commitId>7fd59d17d329b575b55226408ae672cc88bf5697</commitId><timestamp>1788581650000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 通过通用参数保持 BulkOut 搜索的车头身份

新增 allow_start_heading_flip 参数，经 extra_params 和规划器工厂传递，默认保留旧行为并校验参数值。振石 BulkOut 调用端禁用起点航向翻转，同时保留途中双向搜索与末段前进约束。原始场景回放成功，生成前进、倒车、前进三段并通过碰撞检查。
</comment><date>2026-09-05 12:14:10 +0800</date><id>7fd59d17d329b575b55226408ae672cc88bf5697</id><msg>fix: 通过通用参数保持 BulkOut 搜索的车头身份</msg><path><editType>edit</editType><file>ssep/scenarios/imv_general_planner.h</file></path><path><editType>edit</editType><file>ssep/scenarios/scenario_planner_factory.h</file></path><path><editType>edit</editType><file>data/ssep/forward_ec.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>Testing/ssep_path_corridor_test.cpp</affectedPath><affectedPath>tasks/deciders/other_decider/replan_decider.cpp</affectedPath><commitId>f910e31bc4994578e4510fe3a20c5d276aa751aa</commitId><timestamp>1788581665000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 清理无搜索阶段的错误重规划上下文

依据当前阶段实际配置的 SSEP_TASK 判断搜索能力，避免普通路口沿线规划误报连续路口搜索重规划。无搜索阶段在冷却判断前清理重规划原因、搜索请求和历史路径保留状态，防止 routing 换向后复用旧参考线。增加有无搜索任务及冷却期残留回归，现场 snapshot 的 24 帧恢复引导线匹配。
</comment><date>2026-09-05 12:14:25 +0800</date><id>f910e31bc4994578e4510fe3a20c5d276aa751aa</id><msg>fix: 清理无搜索阶段的错误重规划上下文</msg><path><editType>edit</editType><file>Testing/ssep_path_corridor_test.cpp</file></path><path><editType>edit</editType><file>tasks/deciders/other_decider/replan_decider.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>ssep/scenarios/scenario_planner_factory.h</affectedPath><affectedPath>ssep/scenarios/imv_general_planner.h</affectedPath><commitId>240e9ad3c3576f5ede013925a1244a244107fec3</commitId><timestamp>1788584580000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 还原反向作业的 IMV 搜索物理车头朝向

禁止起点航向翻转时，根据反向作业模式还原起点 heading 并转换方向，使末段前进约束对应物理车头。构建和执行搜索统一转换，两段组合搜索在途经点后不重复翻转。首任务与反向作业两例现场回放通过，保留途中倒车能力。
</comment><date>2026-09-05 13:03:00 +0800</date><id>240e9ad3c3576f5ede013925a1244a244107fec3</id><msg>fix: 还原反向作业的 IMV 搜索物理车头朝向</msg><path><editType>edit</editType><file>ssep/scenarios/scenario_planner_factory.h</file></path><path><editType>edit</editType><file>ssep/scenarios/imv_general_planner.h</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>ssep/test/local_regression/path_quality.py</affectedPath><affectedPath>ssep/test/local_regression/README.md</affectedPath><affectedPath>ssep/test/local_regression/bulkout_reverse_quality.json</affectedPath><affectedPath>ssep/test/local_regression/run_ssep_regression.py</affectedPath><affectedPath>ssep/test/local_regression/test_path_quality.py</affectedPath><affectedPath>ssep/test/local_regression/bulkout_initial_quality.json</affectedPath><affectedPath>ssep/test/local_regression/imv_bulkout_manifest.tsv</affectedPath><commitId>3179fc951917edf5ecf75c6ba06ea5e73627ff2b</commitId><timestamp>1788584596000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>test: 增加 BulkOut 物理车头与路径质量回归

收录首任务和反向作业重搜两例共享场景，独立验证物理起点航向、末段实际前进、终点误差、换向连续性、运动几何、长度和耗时，并要求最终碰撞检查证据。通过仓库 Proto 解析实际回放输出，保留输入副本、日志及质量报告。增加十一项验收器正反例与非法配置检查，逐例汇总异常；两例完整质量回归通过。
</comment><date>2026-09-05 13:03:16 +0800</date><id>3179fc951917edf5ecf75c6ba06ea5e73627ff2b</id><msg>test: 增加 BulkOut 物理车头与路径质量回归</msg><path><editType>add</editType><file>ssep/test/local_regression/bulkout_reverse_quality.json</file></path><path><editType>edit</editType><file>ssep/test/local_regression/README.md</file></path><path><editType>add</editType><file>ssep/test/local_regression/bulkout_initial_quality.json</file></path><path><editType>add</editType><file>ssep/test/local_regression/test_path_quality.py</file></path><path><editType>add</editType><file>ssep/test/local_regression/imv_bulkout_manifest.tsv</file></path><path><editType>edit</editType><file>ssep/test/local_regression/run_ssep_regression.py</file></path><path><editType>add</editType><file>ssep/test/local_regression/path_quality.py</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>plan/prepare/prepare_ogm.hpp</affectedPath><affectedPath>data/ssep/forward_ec.cpp</affectedPath><affectedPath>plan/prepare/prepare_ogm.cpp</affectedPath><commitId>ada6e49b3b74e5c4140b33c15f00c1578f4be1bb</commitId><timestamp>1788625436000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 为振石 BulkOut 搜索保留完整后方点云

从当前帧原始 OGM 点单独重建搜索线障碍，避免执行阶段的后方忽略状态污染多向重搜输入。执行 OGM 与原始点云保持不变，原始点云无效时拒绝构造不完整搜索环境。
</comment><date>2026-09-06 00:23:56 +0800</date><id>ada6e49b3b74e5c4140b33c15f00c1578f4be1bb</id><msg>fix: 为振石 BulkOut 搜索保留完整后方点云</msg><path><editType>edit</editType><file>plan/prepare/prepare_ogm.hpp</file></path><path><editType>edit</editType><file>data/ssep/forward_ec.cpp</file></path><path><editType>edit</editType><file>plan/prepare/prepare_ogm.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>Testing/ssep_path_corridor_test.cpp</affectedPath><affectedPath>ssep/scenarios/imv_search_extra_params.h</affectedPath><affectedPath>data/ssep/forward_ec.cpp</affectedPath><affectedPath>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</affectedPath><affectedPath>ssep/scenarios/scenario_planner_factory.h</affectedPath><affectedPath>CMakeLists.txt</affectedPath><affectedPath>config/config_imv/ssep_port_scenarios_zhenshi.yaml</affectedPath><affectedPath>ssep/scenarios/imv_general_planner.h</affectedPath><affectedPath>ssep/scenarios/imv_extra_params_compat.h</affectedPath><affectedPath>ssep/scenarios/imv_enter_station_planner.h</affectedPath><affectedPath>data/ssep/ssep_ec.hpp</affectedPath><affectedPath>ssep/scenarios/imv_multi_segment_parking_planner.h</affectedPath><affectedPath>ssep/ssep_planner.cc</affectedPath><affectedPath>data/ssep/ssep_ec.cpp</affectedPath><affectedPath>ssep/coarse_search/searcher_builders/imv_general_searcher_builder.h</affectedPath><commitId>0a9d3633bedd56f4b094f6356afd89c515eb7143</commitId><timestamp>1788625484000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>feat: 统一振石 IMV 场景的搜索参数配置

复用现有场景 YAML 到 SsepInput.extra_params 链路，为 BulkOut、带途经点 BulkIn 和普通 BulkIn 提供场景级参数。IMVGeneral 通过通用方向、车头身份、碰撞裕量和方向代价参数构造搜索，不再使用振石专用构造开关；历史输入在规划入口转换为等价通用参数。显式参数会绕过不兼容的路径仓库与通用热启动，参数解析失败时明确返回错误。
</comment><date>2026-09-06 00:24:44 +0800</date><id>0a9d3633bedd56f4b094f6356afd89c515eb7143</id><msg>feat: 统一振石 IMV 场景的搜索参数配置</msg><path><editType>edit</editType><file>data/ssep/forward_ec.cpp</file></path><path><editType>add</editType><file>config/config_imv/ssep_port_scenarios_zhenshi.yaml</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</file></path><path><editType>add</editType><file>ssep/scenarios/imv_search_extra_params.h</file></path><path><editType>edit</editType><file>ssep/scenarios/imv_general_planner.h</file></path><path><editType>edit</editType><file>Testing/ssep_path_corridor_test.cpp</file></path><path><editType>edit</editType><file>data/ssep/ssep_ec.hpp</file></path><path><editType>edit</editType><file>data/ssep/ssep_ec.cpp</file></path><path><editType>add</editType><file>ssep/scenarios/imv_extra_params_compat.h</file></path><path><editType>edit</editType><file>ssep/scenarios/imv_multi_segment_parking_planner.h</file></path><path><editType>edit</editType><file>CMakeLists.txt</file></path><path><editType>edit</editType><file>ssep/coarse_search/searcher_builders/imv_general_searcher_builder.h</file></path><path><editType>edit</editType><file>ssep/scenarios/scenario_planner_factory.h</file></path><path><editType>edit</editType><file>ssep/ssep_planner.cc</file></path><path><editType>edit</editType><file>ssep/scenarios/imv_enter_station_planner.h</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>ssep/offboard/ssep_input_provider.h</affectedPath><affectedPath>ssep/offboard/ssep_input_provider.cc</affectedPath><affectedPath>ssep/test/local_regression/test_replay_input.py</affectedPath><affectedPath>ssep/offboard/scene_replay/replay_ssep_input_cli.cc</affectedPath><affectedPath>ssep/test/local_regression/README.md</affectedPath><affectedPath>ssep/test/local_regression/run_ssep_regression.py</affectedPath><affectedPath>ssep/test/local_regression/test_raw_replay_cli.py</affectedPath><commitId>129e2e17a7c53ebb43912738e23a831dabdb360f</commitId><timestamp>1788625512000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>test: 严格区分 SSEP 原样回归与参数实验

默认按录制输入中的 extra_params 回放，只有显式参数实验才应用质量配置覆盖，并在产物中记录模式和覆盖项。原始输入回放工具新增参数覆盖入口；解析失败、输入缺失、空目录和规划失败在严格模式下均返回非零。
</comment><date>2026-09-06 00:25:12 +0800</date><id>129e2e17a7c53ebb43912738e23a831dabdb360f</id><msg>test: 严格区分 SSEP 原样回归与参数实验</msg><path><editType>edit</editType><file>ssep/test/local_regression/run_ssep_regression.py</file></path><path><editType>add</editType><file>ssep/test/local_regression/test_raw_replay_cli.py</file></path><path><editType>edit</editType><file>ssep/test/local_regression/README.md</file></path><path><editType>edit</editType><file>ssep/offboard/scene_replay/replay_ssep_input_cli.cc</file></path><path><editType>edit</editType><file>ssep/offboard/ssep_input_provider.h</file></path><path><editType>edit</editType><file>ssep/offboard/ssep_input_provider.cc</file></path><path><editType>add</editType><file>ssep/test/local_regression/test_replay_input.py</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>tasks/plan/smooth_task.cpp</affectedPath><affectedPath>data/plan/ssep_data.cpp</affectedPath><affectedPath>tasks/deciders/other_decider/replan_decider.cpp</affectedPath><affectedPath>tasks/other_tasks/stitch_path_to_reference_line.cpp</affectedPath><affectedPath>tasks/deciders/search_decider/normal_junction_search_decider.cpp</affectedPath><affectedPath>data/plan/ssep_data.hpp</affectedPath><affectedPath>tasks/plan/keb_path_optimize_task.cpp</affectedPath><affectedPath>Testing/reference_line_replan_test.cpp</affectedPath><affectedPath>tasks/other_tasks/stitch_path_to_reference_line.hpp</affectedPath><affectedPath>tasks/other_tasks/create_reference_line.cpp</affectedPath><commitId>ef96197a59beacebe0f4a91adcdc2299a8ea6d50</commitId><timestamp>1788774291000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 重搜期间复用成功路径并实时更新参考线

锁存当前路口最后成功的 SSEP 路径，每帧从完整缓存拼接实时参考线，保留物理末点并处理滚动地图起点裁剪。
普通路口构建失败时保留累计次数；重试耗尽后清理请求，有成功路径则继续拼接，无成功路径则恢复正常参考线更新。
退出搜索时清理等待状态和旧包络，补齐缓存路径的快照坐标转换及投影重建。
保持期间沿实时引导线进行局部规划，避免有限历史输出耗尽。

验证：参考线与重规划状态回归，以及纵向停车和连续性回归。
</comment><date>2026-09-07 17:44:51 +0800</date><id>ef96197a59beacebe0f4a91adcdc2299a8ea6d50</id><msg>fix: 重搜期间复用成功路径并实时更新参考线</msg><path><editType>edit</editType><file>Testing/reference_line_replan_test.cpp</file></path><path><editType>edit</editType><file>tasks/deciders/other_decider/replan_decider.cpp</file></path><path><editType>edit</editType><file>data/plan/ssep_data.hpp</file></path><path><editType>edit</editType><file>tasks/plan/smooth_task.cpp</file></path><path><editType>edit</editType><file>tasks/other_tasks/stitch_path_to_reference_line.cpp</file></path><path><editType>edit</editType><file>data/plan/ssep_data.cpp</file></path><path><editType>edit</editType><file>tasks/other_tasks/stitch_path_to_reference_line.hpp</file></path><path><editType>edit</editType><file>tasks/other_tasks/create_reference_line.cpp</file></path><path><editType>edit</editType><file>tasks/deciders/search_decider/normal_junction_search_decider.cpp</file></path><path><editType>edit</editType><file>tasks/plan/keb_path_optimize_task.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>proto/keb_scene.proto</affectedPath><affectedPath>tasks/plan/keb_lane_follow_path_task.cpp</affectedPath><affectedPath>offboard/keb_path_opt_cli/local_regression/keb_regression_manifest.tsv</affectedPath><affectedPath>algorithm/plan/keb_optimizer.hpp</affectedPath><affectedPath>offboard/bag_to_keb_scene/bag_to_keb_scene.cc</affectedPath><affectedPath>replayer/replayer_data_process/replayer_data_extraction.cpp</affectedPath><affectedPath>tasks/plan/keb_utils_core.cpp</affectedPath><affectedPath>CMakeLists.txt</affectedPath><affectedPath>tasks/plan/keb_utils.cpp</affectedPath><affectedPath>offboard/keb_path_opt_cli/README.md</affectedPath><affectedPath>tasks/plan/keb_utils_core.hpp</affectedPath><affectedPath>offboard/keb_path_opt_cli/local_regression/README.md</affectedPath><affectedPath>algorithm/plan/keb_optimizer.cpp</affectedPath><affectedPath>offboard/keb_path_opt_cli/keb_simulator.cc</affectedPath><affectedPath>Testing/keb_fixed_tail_test.cpp</affectedPath><commitId>70784b598274cb5b48d54cde4ae986b21a0794ea</commitId><timestamp>1788774330000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 自适应调整 KEB 固定尾段优化范围

预检 IMV LaneFollow 的固定尾段，必要时在当前段终点范围内有界前移滚动目标，最多检查四个候选且只求解一次。
检查热启动固定尾段，边界不合法时回退冷启动；最终输出保留完整边界校验。
按实车匹配点计算允许前移距离，同步在线、GUI/CLI 提取、离线回放及 HMI 实际目标；新 KebScene 显式保存前移上限，兼容旧数据。
添加固定段与终点范围回归，并将出堆场 103 帧原始数据登记到共享回归清单。

验证：固定尾段单元测试、完整 KEB 回归清单和 pnc_node 构建。
</comment><date>2026-09-07 17:45:30 +0800</date><id>70784b598274cb5b48d54cde4ae986b21a0794ea</id><msg>fix: 自适应调整 KEB 固定尾段优化范围</msg><path><editType>edit</editType><file>CMakeLists.txt</file></path><path><editType>edit</editType><file>offboard/keb_path_opt_cli/README.md</file></path><path><editType>edit</editType><file>offboard/keb_path_opt_cli/local_regression/keb_regression_manifest.tsv</file></path><path><editType>edit</editType><file>offboard/keb_path_opt_cli/keb_simulator.cc</file></path><path><editType>edit</editType><file>tasks/plan/keb_utils_core.hpp</file></path><path><editType>edit</editType><file>algorithm/plan/keb_optimizer.hpp</file></path><path><editType>edit</editType><file>tasks/plan/keb_utils.cpp</file></path><path><editType>edit</editType><file>proto/keb_scene.proto</file></path><path><editType>edit</editType><file>offboard/keb_path_opt_cli/local_regression/README.md</file></path><path><editType>add</editType><file>Testing/keb_fixed_tail_test.cpp</file></path><path><editType>edit</editType><file>tasks/plan/keb_lane_follow_path_task.cpp</file></path><path><editType>edit</editType><file>offboard/bag_to_keb_scene/bag_to_keb_scene.cc</file></path><path><editType>edit</editType><file>algorithm/plan/keb_optimizer.cpp</file></path><path><editType>edit</editType><file>replayer/replayer_data_process/replayer_data_extraction.cpp</file></path><path><editType>edit</editType><file>tasks/plan/keb_utils_core.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>ssep/test/local_regression/README.md</affectedPath><affectedPath>ssep/test/local_regression/imv_out_yard_pending_cases.json</affectedPath><commitId>fae88de2856a95acf2e39668796bd56902ac66a4</commitId><timestamp>1788774349000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>test: 归档出堆场内圈出口碰撞待修复案例

登记异常和正常对照场景及原始搜索输入，记录共享数据路径和 SHA-256。
明确内圈允许通行，问题是出口处车身碰撞；不得以必须走大圈或路径长度作为验收标准。
记录添加超视距障碍物的规避方案，将算法问题保留为 deferred，不纳入仅校验搜索成功的必过清单。

验证：四个原始文件校验一致，两份场景均可解析。
</comment><date>2026-09-07 17:45:49 +0800</date><id>fae88de2856a95acf2e39668796bd56902ac66a4</id><msg>test: 归档出堆场内圈出口碰撞待修复案例</msg><path><editType>edit</editType><file>ssep/test/local_regression/README.md</file></path><path><editType>add</editType><file>ssep/test/local_regression/imv_out_yard_pending_cases.json</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>data/map/pnc_map/routing_extension/routing_data.cpp</affectedPath><affectedPath>data/config/cfg_static.hpp</affectedPath><affectedPath>Testing/routing_transition_test.cpp</affectedPath><affectedPath>CMakeLists.txt</affectedPath><affectedPath>data/map/pnc_map/routing_extension/routing_transition.hpp</affectedPath><affectedPath>data/map/pnc_map/routing_extension/routing_data.hpp</affectedPath><commitId>06f22cb96e630a15ea10919166754fc049aa7903</commitId><timestamp>1788832537000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 统一分段路径衔接判定并修复双向 IMV 漏换向

将方向计算和 openspace 入口统一为同向接续、直接换向与搜索衔接三类。
双向 IMV 在纵向间隙不超过 1 米、横向偏差不超过 0.1 米、反向角偏差不超过 5 度时直接换向，修复 T304 因端点相距约 0.914 米而漏换向的问题。
补齐缺失的 openspace 连接点并优先保留已有途经点，增加独立回归目标，覆盖方向初始化、段末停车、阈值边界和任务生命周期。
为显式 10/11 掉头途经点与几何换向的优先级添加 TODO，当前保持原行为。
</comment><date>2026-09-08 09:55:37 +0800</date><id>06f22cb96e630a15ea10919166754fc049aa7903</id><msg>fix: 统一分段路径衔接判定并修复双向 IMV 漏换向</msg><path><editType>add</editType><file>data/map/pnc_map/routing_extension/routing_transition.hpp</file></path><path><editType>edit</editType><file>data/map/pnc_map/routing_extension/routing_data.cpp</file></path><path><editType>edit</editType><file>data/map/pnc_map/routing_extension/routing_data.hpp</file></path><path><editType>edit</editType><file>CMakeLists.txt</file></path><path><editType>edit</editType><file>data/config/cfg_static.hpp</file></path><path><editType>add</editType><file>Testing/routing_transition_test.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>Testing/routing_transition_test.cpp</affectedPath><affectedPath>data/map/pnc_map/routing_extension/routing_data.cpp</affectedPath><commitId>7087555b29af0107f6256b7f266e17f05fe74284</commitId><timestamp>1788832554000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 修复重合端点的 openspace 建区退化

端点重合时使用车道法向确定平行搜索框朝向，避免搜索范围错误依赖全局坐标轴。
上下引桥连接线为零长度时，按车道航向直接构造扩展走廊，避免无效子多边形在合并时被丢弃。
新增普通车型重合端点及上下引桥旋转回归。最终 12 项衔接回归与 14 项地图保护回归通过，pnc_node 集群构建成功。
</comment><date>2026-09-08 09:55:54 +0800</date><id>7087555b29af0107f6256b7f266e17f05fe74284</id><msg>fix: 修复重合端点的 openspace 建区退化</msg><path><editType>edit</editType><file>data/map/pnc_map/routing_extension/routing_data.cpp</file></path><path><editType>edit</editType><file>Testing/routing_transition_test.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>data/config/cfg_region.hpp</affectedPath><affectedPath>data/config/cfg_region.cpp</affectedPath><affectedPath>data/ssep/ssep_ec.cpp</affectedPath><affectedPath>data/ssep/forward_ec.cpp</affectedPath><commitId>894b6ed6a27b45f3857ca3a7d22f86f0e76c6f73</commitId><timestamp>1788836917000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>feat: 新增津西区域识别并接入搜索配置

依据津西 map_jx_20260903_v1.1.1 地图包围盒确定区域中心，
沿用 WHBULK 的 3000 米识别半径，并在枚举末尾新增 JIN_XI。

将津西接入 WHBULK 同类前进通道、参考线、途经点采样及
终点通道兜底分支，并支持 TT/CAR 的通用搜索器回退选择。

验证：地图全部 4633 个坐标点被覆盖，与现有 32 个区域不重叠；
git diff --check 及工程 task 的 pnc_node 编译通过。
</comment><date>2026-09-08 11:08:37 +0800</date><id>894b6ed6a27b45f3857ca3a7d22f86f0e76c6f73</id><msg>feat: 新增津西区域识别并接入搜索配置</msg><path><editType>edit</editType><file>data/config/cfg_region.hpp</file></path><path><editType>edit</editType><file>data/ssep/forward_ec.cpp</file></path><path><editType>edit</editType><file>data/config/cfg_region.cpp</file></path><path><editType>edit</editType><file>data/ssep/ssep_ec.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>Testing/ssep_path_corridor_test.cpp</affectedPath><affectedPath>ssep/scenarios/imv_extra_params_compat.h</affectedPath><affectedPath>ssep/ssep_planner.cc</affectedPath><affectedPath>ssep/test/local_regression/README.md</affectedPath><affectedPath>data/ssep/forward_ec.cpp</affectedPath><commitId>856a59b68229c3791c2ed2f23b449f8fba2e9fcf</commitId><timestamp>1788845864000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>refactor: 移除振石出场硬编码参数及旧开关兼容

删除 enable_zhenshi_bulkout_mode 的兼容转换及前进搜索中
振石 BulkOut 的参数补充，搜索参数直接由 YAML 显式配置。
缺项采用 planner 通用默认值，历史输入也不再自动展开旧开关。

同步删除旧开关测试并更新参数配置说明，保留通用参数校验。
</comment><date>2026-09-08 13:37:44 +0800</date><id>856a59b68229c3791c2ed2f23b449f8fba2e9fcf</id><msg>refactor: 移除振石出场硬编码参数及旧开关兼容</msg><path><editType>edit</editType><file>data/ssep/forward_ec.cpp</file></path><path><editType>edit</editType><file>Testing/ssep_path_corridor_test.cpp</file></path><path><editType>edit</editType><file>ssep/test/local_regression/README.md</file></path><path><editType>delete</editType><file>ssep/scenarios/imv_extra_params_compat.h</file></path><path><editType>edit</editType><file>ssep/ssep_planner.cc</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>data/plan/ssep_data.hpp</affectedPath><affectedPath>data/ssep/forward_ec.cpp</affectedPath><affectedPath>CMakeLists.txt</affectedPath><affectedPath>docs/ssep_scenario_config_lifecycle.md</affectedPath><affectedPath>data/ssep/into_yard_junction_ec.hpp</affectedPath><affectedPath>data/ssep/open_space_ec.cpp</affectedPath><affectedPath>data/config/cfg_static.hpp</affectedPath><affectedPath>data/ssep/open_space_ec.hpp</affectedPath><affectedPath>data/ssep/into_yard_junction_ec.cpp</affectedPath><affectedPath>data/ssep/ssep_ec.hpp</affectedPath><affectedPath>data/ssep/forward_ec.hpp</affectedPath><affectedPath>data/ssep/ssep_ec.cpp</affectedPath><affectedPath>Testing/ssep_scenario_config_lifecycle_test.cpp</affectedPath><commitId>5363de0da861e2496b85339ca2ec110a7dc11a08</commitId><timestamp>1788845874000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 统一搜索场景参数生命周期并保护配置优先级

在公共场景匹配入口和 Reset 中清理旧 planner 与参数，
避免未匹配、空配置和重复请求携带上次动态拉直参数。

以匹配标记保护 YAML 选择，场地及车型默认仅用于未匹配回退；
保留 CAR 换向、低贝位和远程引导等运行时切换。
输出参数整组替换并清理旧远程引导线，投影失败时保留 YAML
且停止无效拉直计算。快照版本升级并兼容旧版读取。

新增覆盖九类搜索的 47 项回归和逐场景检查文档。
验证：47 项测试、pnc_node 编译及 git diff --check 通过。
</comment><date>2026-09-08 13:37:54 +0800</date><id>5363de0da861e2496b85339ca2ec110a7dc11a08</id><msg>fix: 统一搜索场景参数生命周期并保护配置优先级</msg><path><editType>add</editType><file>docs/ssep_scenario_config_lifecycle.md</file></path><path><editType>add</editType><file>Testing/ssep_scenario_config_lifecycle_test.cpp</file></path><path><editType>edit</editType><file>data/config/cfg_static.hpp</file></path><path><editType>edit</editType><file>data/ssep/ssep_ec.hpp</file></path><path><editType>edit</editType><file>data/ssep/ssep_ec.cpp</file></path><path><editType>edit</editType><file>data/ssep/into_yard_junction_ec.hpp</file></path><path><editType>edit</editType><file>data/plan/ssep_data.hpp</file></path><path><editType>edit</editType><file>data/ssep/forward_ec.hpp</file></path><path><editType>edit</editType><file>CMakeLists.txt</file></path><path><editType>edit</editType><file>data/ssep/forward_ec.cpp</file></path><path><editType>edit</editType><file>data/ssep/into_yard_junction_ec.cpp</file></path><path><editType>edit</editType><file>data/ssep/open_space_ec.hpp</file></path><path><editType>edit</editType><file>data/ssep/open_space_ec.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>tasks/plan/keb_path_optimize_task.hpp</affectedPath><affectedPath>tasks/plan/keb_path_optimize_task.cpp</affectedPath><commitId>dc8e39e0db33c03dd603121d395be1510ae6361b</commitId><timestamp>1788876169000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>refactor: 统一 KEB 路径优化的请求与结果处理

将同步和异步优化收敛到共享的请求快照、求解和结果写回流程，后台线程不持有 Task 或 PlanFrame。
拆分 SSEP 前置处理、重搜保持与 PJPO 兜底，保留 generation 失效保护和完整输出历史。
检查路径投影写回结果，删除未使用成员、失效注释和无效的局部路径匹配。
</comment><date>2026-09-08 22:02:49 +0800</date><id>dc8e39e0db33c03dd603121d395be1510ae6361b</id><msg>refactor: 统一 KEB 路径优化的请求与结果处理</msg><path><editType>edit</editType><file>tasks/plan/keb_path_optimize_task.cpp</file></path><path><editType>edit</editType><file>tasks/plan/keb_path_optimize_task.hpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>Testing/ssep_path_corridor_test.cpp</affectedPath><affectedPath>tasks/plan/keb_utils.cpp</affectedPath><affectedPath>tasks/plan/keb_path_optimize_task.hpp</affectedPath><affectedPath>tasks/plan/keb_utils.hpp</affectedPath><affectedPath>scenarios/task_condition_evaluator.cpp</affectedPath><affectedPath>tasks/plan/keb_path_optimize_task.cpp</affectedPath><commitId>24f5045653dc407ae8c50c9ebc5f22c13df50e1a</commitId><timestamp>1788876205000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>feat: 支持直行堆场路口 KEB 并保持切换路径连续

NORMAL_FOLLOW 使用 guide line 路口终点构建无 SSEP 的 KEB 输入，延伸距离保留为 0 米。
首次异步等待时放行有效历史路径拼接；末端在区域切换前复用原路口输出，避免无轨迹停车。
远处后续路口不抢占末端复用目标，进入下一路口后正常更新目标；失效输入和真实求解失败仍保留错误处理。
补充选择器、终点、方向、异步等待、末端复用及 Reset 生命周期回归，兼容无 SSEP 的回放可视化输入。

验证：pnc_node 和相关测试目标构建通过，74 项规划回归通过，回放基础测试通过 202/203 项。
已知未解决项：既有 EncodingBenchmarkTest.ReportsSameGroupBoostAndCompactAblations 字节数重复性测试仍失败。
</comment><date>2026-09-08 22:03:25 +0800</date><id>24f5045653dc407ae8c50c9ebc5f22c13df50e1a</id><msg>feat: 支持直行堆场路口 KEB 并保持切换路径连续</msg><path><editType>edit</editType><file>tasks/plan/keb_path_optimize_task.cpp</file></path><path><editType>edit</editType><file>tasks/plan/keb_utils.cpp</file></path><path><editType>edit</editType><file>tasks/plan/keb_utils.hpp</file></path><path><editType>edit</editType><file>Testing/ssep_path_corridor_test.cpp</file></path><path><editType>edit</editType><file>tasks/plan/keb_path_optimize_task.hpp</file></path><path><editType>edit</editType><file>scenarios/task_condition_evaluator.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>tasks/plan/keb_path_optimize_task.hpp</affectedPath><affectedPath>tasks/plan/keb_path_optimize_task.cpp</affectedPath><commitId>0942ec2b21bc9056d0fc2a74d0640ffed7b3c828</commitId><timestamp>1788876462000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>refactor: 统一 KEB 路径优化的请求与结果处理

将同步和异步优化收敛到共享的请求快照、求解和结果写回流程，后台线程不持有 Task 或 PlanFrame。
拆分 SSEP 前置处理、重搜保持与 PJPO 兜底，保留 generation 失效保护和完整输出历史。
检查路径投影写回结果，删除未使用成员、失效注释和无效的局部路径匹配。
</comment><date>2026-09-08 22:07:42 +0800</date><id>0942ec2b21bc9056d0fc2a74d0640ffed7b3c828</id><msg>refactor: 统一 KEB 路径优化的请求与结果处理</msg><path><editType>edit</editType><file>tasks/plan/keb_path_optimize_task.cpp</file></path><path><editType>edit</editType><file>tasks/plan/keb_path_optimize_task.hpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>Testing/ssep_path_corridor_test.cpp</affectedPath><affectedPath>tasks/plan/keb_path_optimize_task.hpp</affectedPath><affectedPath>tasks/plan/keb_utils.cpp</affectedPath><affectedPath>scenarios/task_condition_evaluator.cpp</affectedPath><affectedPath>tasks/plan/keb_utils.hpp</affectedPath><affectedPath>tasks/plan/keb_path_optimize_task.cpp</affectedPath><commitId>abaf5d01dcb656c9138007e91f34fede7bca4eef</commitId><timestamp>1788876560000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>feat: 支持直行堆场路口 KEB 并保持切换路径连续

NORMAL_FOLLOW 使用 guide line 路口终点构建无 SSEP 的 KEB 输入，延伸距离保留为 0 米。
首次异步等待时放行有效历史路径拼接；末端在区域切换前复用原路口输出，避免无轨迹停车。
远处后续路口不抢占末端复用目标，进入下一路口后正常更新目标；失效输入和真实求解失败仍保留错误处理。
补充选择器、终点、方向、异步等待、末端复用及 Reset 生命周期回归，兼容无 SSEP 的回放可视化输入。

验证：pnc_node 和相关测试目标构建通过，74 项规划回归通过，回放基础测试通过 202/203 项。
已知未解决项：既有 EncodingBenchmarkTest.ReportsSameGroupBoostAndCompactAblations 字节数重复性测试仍失败。
</comment><date>2026-09-08 22:09:20 +0800</date><id>abaf5d01dcb656c9138007e91f34fede7bca4eef</id><msg>feat: 支持直行堆场路口 KEB 并保持切换路径连续</msg><path><editType>edit</editType><file>tasks/plan/keb_path_optimize_task.hpp</file></path><path><editType>edit</editType><file>scenarios/task_condition_evaluator.cpp</file></path><path><editType>edit</editType><file>tasks/plan/keb_utils.cpp</file></path><path><editType>edit</editType><file>Testing/ssep_path_corridor_test.cpp</file></path><path><editType>edit</editType><file>tasks/plan/keb_path_optimize_task.cpp</file></path><path><editType>edit</editType><file>tasks/plan/keb_utils.hpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>replayer/scene_data/encoding_benchmark.cpp</affectedPath><commitId>afebc431763585ce073f664189aed383c2c5aae6</commitId><timestamp>1788879780000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 固定回放带宽基准的默认配置

规划配置消融每轮创建栈临时对象，历史构造函数未初始化的标量会使 Proto 字节数波动。
改为复制静态只读默认配置，利用静态初始化清零并保留各配置构造函数的显式默认值。

保留重复测量原始字节数必须相等的断言；回放主回归通过，问题用例连续运行 5 次通过。
</comment><date>2026-09-08 23:03:00 +0800</date><id>afebc431763585ce073f664189aed383c2c5aae6</id><msg>fix: 固定回放带宽基准的默认配置</msg><path><editType>edit</editType><file>replayer/scene_data/encoding_benchmark.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>Testing/platoon_lattice_test.cpp</affectedPath><affectedPath>algorithm/lattice/platoon_trajectory1d_generator.cpp</affectedPath><commitId>50a59f5f3a4b6e322f4aa51ff24c9c7ebf46126c</commitId><timestamp>1788932810000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>Anticipate speed constraints in platoon CACC trajectories
</comment><date>2026-09-09 13:46:50 +0800</date><id>50a59f5f3a4b6e322f4aa51ff24c9c7ebf46126c</id><msg>Anticipate speed constraints in platoon CACC trajectories</msg><path><editType>edit</editType><file>algorithm/lattice/platoon_trajectory1d_generator.cpp</file></path><path><editType>edit</editType><file>Testing/platoon_lattice_test.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>data/boundary/driving_corridor.cpp</affectedPath><affectedPath>CMakeLists.txt</affectedPath><affectedPath>replayer/scene_data/compact_custom_field_proto_codec.cpp</affectedPath><affectedPath>Testing/compact_driving_corridor_restore_test.cpp</affectedPath><commitId>c042c821f0da0eb00dd8cf9a6e54ce439c54bb03</commitId><timestamp>1788934933000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 恢复快照走廊默认状态与历史起点

Compact 省略可重建走廊时保留原生重建范围，显式 Full 字段仍按保存值恢复。
历史起点判断改读当前引导线匹配值，避免读取尚未初始化的本帧缓存。
补齐 Full/Compact、Recorded/Candidate、历史复用及可选真实 bag 回归。
</comment><date>2026-09-09 14:22:13 +0800</date><id>c042c821f0da0eb00dd8cf9a6e54ce439c54bb03</id><msg>fix: 恢复快照走廊默认状态与历史起点</msg><path><editType>edit</editType><file>replayer/scene_data/compact_custom_field_proto_codec.cpp</file></path><path><editType>edit</editType><file>data/boundary/driving_corridor.cpp</file></path><path><editType>add</editType><file>Testing/compact_driving_corridor_restore_test.cpp</file></path><path><editType>edit</editType><file>CMakeLists.txt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>data/boundary/road_wall_band.cpp</affectedPath><affectedPath>Testing/road_wall_band_equivalence_test.cpp</affectedPath><affectedPath>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</affectedPath><affectedPath>data/boundary/driving_corridor.cpp</affectedPath><affectedPath>CMakeLists.txt</affectedPath><affectedPath>data/boundary/road_wall_band.hpp</affectedPath><commitId>2b491858a30362fb1c709ff8dc3b82ad8ec110b2</commitId><timestamp>1788934968000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>perf: 局部计算道路边界带并保持像素结果

在已栅格化墙的包围盒及保守影响余量内计算临时距离，输出保留完整栅格范围。
融合边界带比较与位运算，保持严格阈值、距离算法和按位 mask 语义。
补充全图参考的逐像素回归，并同步数据头文件审计指纹。
</comment><date>2026-09-09 14:22:48 +0800</date><id>2b491858a30362fb1c709ff8dc3b82ad8ec110b2</id><msg>perf: 局部计算道路边界带并保持像素结果</msg><path><editType>add</editType><file>data/boundary/road_wall_band.cpp</file></path><path><editType>add</editType><file>Testing/road_wall_band_equivalence_test.cpp</file></path><path><editType>edit</editType><file>CMakeLists.txt</file></path><path><editType>edit</editType><file>data/boundary/driving_corridor.cpp</file></path><path><editType>add</editType><file>data/boundary/road_wall_band.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>Testing/ogm_distance_equivalence_test.cpp</affectedPath><affectedPath>CMakeLists.txt</affectedPath><affectedPath>data/obstacle/ogm.cpp</affectedPath><commitId>79a36e860d0b7f430c6dcfae684dbf104f41e028</commitId><timestamp>1788935047000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>perf: 精简占用距离场构建的内存操作

将复制、反相及阈值处理合并为等价阈值操作，省去完整距离和标签输出写入前的清零。
写入前释放旧 Mat 引用，保持历史帧和快照浅拷贝隔离。
逐像素验证距离、标签、来源及边界带标志，覆盖尺寸变化、ROI 和共享输出。
</comment><date>2026-09-09 14:24:07 +0800</date><id>79a36e860d0b7f430c6dcfae684dbf104f41e028</id><msg>perf: 精简占用距离场构建的内存操作</msg><path><editType>add</editType><file>Testing/ogm_distance_equivalence_test.cpp</file></path><path><editType>edit</editType><file>CMakeLists.txt</file></path><path><editType>edit</editType><file>data/obstacle/ogm.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>Testing/ogm_distance_equivalence_test.cpp</affectedPath><affectedPath>data/obstacle/ogm.cpp</affectedPath><commitId>ea146ed8a0eb5bcc9d1e15f1dc71f3b2bc9a277a</commitId><timestamp>1788935075000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>perf: 精确复用相同输入的占用距离场

增加线程局部单项缓存，保留数据上限为 32 MiB，以完整灰度和有效边界带逐字节确认输入。
连续两次相同输入后缓存结果，命中时深拷贝输出；输入变化或缓存分配失败时完整计算。
补充缓存失效、输入和输出污染、历史隔离、坐标元数据及线程交错回归。
</comment><date>2026-09-09 14:24:35 +0800</date><id>ea146ed8a0eb5bcc9d1e15f1dc71f3b2bc9a277a</id><msg>perf: 精确复用相同输入的占用距离场</msg><path><editType>edit</editType><file>data/obstacle/ogm.cpp</file></path><path><editType>edit</editType><file>Testing/ogm_distance_equivalence_test.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>data/dp_poly_path/dp_road_graph.cpp</affectedPath><affectedPath>data/dp_poly_path/trajectory_cost.cpp</affectedPath><affectedPath>data/dp_poly_path/trajectory_cost_test.cpp</affectedPath><commitId>56fcf5d5797119577bcc2573e4a078c1bf635722</commitId><timestamp>1788935114000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>perf: 移除 DP 无效计算和临时节点分配

删除没有读取方的每边临时链表写入，保留现有成员和清理逻辑。
动态障碍列表为空时跳过时间循环，保留末尾权重缩放及 NaN、Inf、负零语义。
补充公共代价接口回归，验证空间代价和硬约束标志不变。
</comment><date>2026-09-09 14:25:14 +0800</date><id>56fcf5d5797119577bcc2573e4a078c1bf635722</id><msg>perf: 移除 DP 无效计算和临时节点分配</msg><path><editType>edit</editType><file>data/dp_poly_path/dp_road_graph.cpp</file></path><path><editType>edit</editType><file>data/dp_poly_path/trajectory_cost_test.cpp</file></path><path><editType>edit</editType><file>data/dp_poly_path/trajectory_cost.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>Testing/compact_driving_corridor_restore_test.cpp</affectedPath><affectedPath>docs/pnc_algorithm_replay/dp_corridor_performance.md</affectedPath><commitId>5318c3acfa7bc1055972b55c5c7b6a31208d8306</commitId><timestamp>1788935143000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>test: 固化 DP 优化的结果一致性与耗时基准

为可选真实 bag 回归增加逐帧结果和耗时导出，覆盖完整 DP trace、路径、候选代价与边界。
记录两轮等价优化方法、缓存边界、验证命令及 108 帧精确对比结果。
保持规划覆盖和精度，通道与 DP 平均耗时由 78.8 ms 降至约 22 ms；相关回归和构建已通过。
</comment><date>2026-09-09 14:25:43 +0800</date><id>5318c3acfa7bc1055972b55c5c7b6a31208d8306</id><msg>test: 固化 DP 优化的结果一致性与耗时基准</msg><path><editType>edit</editType><file>Testing/compact_driving_corridor_restore_test.cpp</file></path><path><editType>add</editType><file>docs/pnc_algorithm_replay/dp_corridor_performance.md</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>launch/pnc_leader.launch.py</affectedPath><commitId>ee002d6158972184eeca7d9c13c37ad785331919</commitId><timestamp>1788938786000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>Add leader PNC launch with 30 km/h speed override
</comment><date>2026-09-09 15:26:26 +0800</date><id>ee002d6158972184eeca7d9c13c37ad785331919</id><msg>Add leader PNC launch with 30 km/h speed override</msg><path><editType>add</editType><file>launch/pnc_leader.launch.py</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>Testing/routing_map_guard_test.cpp</affectedPath><commitId>b2527bbde7a5a30c69610f3dd362307ad30ff7ca</commitId><timestamp>1788941486000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>test: 初始化碰撞边界回归的车辆尺寸

碰撞越界回归直接使用未加载的 CfgStatic，部分上层车身尺寸未初始化，偶发产生负长度包围盒并中止测试。
通过 Proto decoder 提供明确的车身尺寸；无效投影测试使用静态零初始化配置。

验证：CrashHelperGuardTest 连续 20 轮通过，routing_map_guard_test 和相关专项回归通过。
</comment><date>2026-09-09 16:11:26 +0800</date><id>b2527bbde7a5a30c69610f3dd362307ad30ff7ca</id><msg>test: 初始化碰撞边界回归的车辆尺寸</msg><path><editType>edit</editType><file>Testing/routing_map_guard_test.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>tasks/deciders/search_decider/search_decider_lifecycle.cpp</affectedPath><affectedPath>tasks/deciders/search_decider/out_yard_junction_search_decider.cpp</affectedPath><affectedPath>tasks/deciders/search_decider/search_decider_lifecycle.hpp</affectedPath><affectedPath>Testing/reference_line_replan_test.cpp</affectedPath><affectedPath>tasks/deciders/search_decider/seaside_junction_search_decider.cpp</affectedPath><affectedPath>CMakeLists.txt</affectedPath><affectedPath>tasks/deciders/search_decider/forward_search_decider.cpp</affectedPath><affectedPath>docs/ssep_search_lifecycle.md</affectedPath><affectedPath>Testing/search_decider_lifecycle_test.cpp</affectedPath><affectedPath>tasks/deciders/search_decider/normal_junction_search_decider.cpp</affectedPath><affectedPath>tasks/deciders/search_decider/open_space_search_decider.cpp</affectedPath><affectedPath>tasks/deciders/search_decider/reverse_search_decider.cpp</affectedPath><affectedPath>tasks/deciders/search_decider/into_yard_junction_search_decider.cpp</affectedPath><affectedPath>tasks/deciders/search_decider/ex_lane_change_search_decider.cpp</affectedPath><affectedPath>tasks/deciders/search_decider/bridge_junction_search_decider.cpp</affectedPath><commitId>650a67ae1c42c64154490dba5c0911063d648f44</commitId><timestamp>1788941525000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 统一搜索生命周期并保留待消费人工请求

九类 SearchDecider 复用构建失败计数、显式重启和帧末收尾，避免 EC Reset 刷新失败预算。
仅在新进入 UNUSE 时结束失败请求，保留等待原有终态门控消费的人工重规划上下文，避免命令脉冲消失后请求被旧搜索失败清掉。
保持各场景重启条件、fallback 顺序和历史输出策略，以及原有成功完成清理时序。
补充九类参数化、普通路口跨帧与 REQUEST/RUNNING/FINISH 人工请求回归，记录生命周期说明。

验证：8 组专项 CTest 通过；pnc_node、pnc_replayer 和回放主测试构建通过。
</comment><date>2026-09-09 16:12:05 +0800</date><id>650a67ae1c42c64154490dba5c0911063d648f44</id><msg>fix: 统一搜索生命周期并保留待消费人工请求</msg><path><editType>add</editType><file>tasks/deciders/search_decider/search_decider_lifecycle.cpp</file></path><path><editType>edit</editType><file>tasks/deciders/search_decider/into_yard_junction_search_decider.cpp</file></path><path><editType>edit</editType><file>tasks/deciders/search_decider/reverse_search_decider.cpp</file></path><path><editType>edit</editType><file>tasks/deciders/search_decider/seaside_junction_search_decider.cpp</file></path><path><editType>add</editType><file>docs/ssep_search_lifecycle.md</file></path><path><editType>edit</editType><file>tasks/deciders/search_decider/out_yard_junction_search_decider.cpp</file></path><path><editType>add</editType><file>tasks/deciders/search_decider/search_decider_lifecycle.hpp</file></path><path><editType>add</editType><file>Testing/search_decider_lifecycle_test.cpp</file></path><path><editType>edit</editType><file>CMakeLists.txt</file></path><path><editType>edit</editType><file>tasks/deciders/search_decider/normal_junction_search_decider.cpp</file></path><path><editType>edit</editType><file>tasks/deciders/search_decider/forward_search_decider.cpp</file></path><path><editType>edit</editType><file>tasks/deciders/search_decider/open_space_search_decider.cpp</file></path><path><editType>edit</editType><file>tasks/deciders/search_decider/bridge_junction_search_decider.cpp</file></path><path><editType>edit</editType><file>Testing/reference_line_replan_test.cpp</file></path><path><editType>edit</editType><file>tasks/deciders/search_decider/ex_lane_change_search_decider.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</affectedPath><affectedPath>data/map/pnc_map/pnc_map_path.cpp</affectedPath><affectedPath>CMakeLists.txt</affectedPath><affectedPath>Testing/pnc_map_overlap_test.cpp</affectedPath><affectedPath>data/map/pnc_map/pnc_map_path.hpp</affectedPath><commitId>17ad1640bc31f74e6ddab67771868645ab7e241f</commitId><timestamp>1788941551000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 统一地图区间投影并保留合并端点

Region、禁停区和减速带同时投影并裁剪两端，避免短区间混用车道累计 s 与实际路径 s，投影后恢复起点排序。
跨车道合并禁停区和减速带时保留最外侧几何端点，避免包含子段或首段端点截断合并范围。
补充 38 项区间投影、裁剪、无效输入、合并边界和停车线回归，并同步源码审计 hash。

验证：routing_map_guard_test 及相关 8 组专项 CTest 通过；生成文件与 Proto 兼容性检查通过。
</comment><date>2026-09-09 16:12:31 +0800</date><id>17ad1640bc31f74e6ddab67771868645ab7e241f</id><msg>fix: 统一地图区间投影并保留合并端点</msg><path><editType>edit</editType><file>data/map/pnc_map/pnc_map_path.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</file></path><path><editType>add</editType><file>Testing/pnc_map_overlap_test.cpp</file></path><path><editType>edit</editType><file>CMakeLists.txt</file></path><path><editType>edit</editType><file>data/map/pnc_map/pnc_map_path.hpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>data/boundary/sidepass_utils.cpp</affectedPath><affectedPath>plan/prepare/prepare_ogm.cpp</affectedPath><affectedPath>tasks/plan/keb_utils.cpp</affectedPath><affectedPath>replayer/replayer_data_process/replayer_data_process.cpp</affectedPath><affectedPath>data/boundary/driving_corridor.cpp</affectedPath><affectedPath>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</affectedPath><affectedPath>data/boundary/sidepass_utils.hpp</affectedPath><affectedPath>Testing/keb_gate_filter_test.cpp</affectedPath><affectedPath>CMakeLists.txt</affectedPath><affectedPath>replayer/replayer_data_process/replayer_data_process.hpp</affectedPath><affectedPath>plan/prepare/prepare_ogm.hpp</affectedPath><commitId>49b79f589bdc32a873cd4b298543d9b1cb87d8a3</commitId><timestamp>1788949102000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 统一 KEB 与 SSEP 的闸口点云过滤

将闸口掩码和拖挂车辆半宽计算抽到 sidepass_utils，供 DrivingCorridor、KEB 和 OGM 轮廓提取共用。

在轮廓提取前过滤临时栅格，保留原始 OGM、采样点和碰撞索引。Prepare 使用历史 guide 与当前车辆位姿；历史 guide 无效时不过滤，不从参考线重建兜底。回放在引导线恢复后刷新车体及 UTM 轮廓。

补充 15 项闸口过滤回归，覆盖上下层、开关、历史位姿、无 guide、原始碰撞输入保留和刷新生命周期；同步生成审计输入指纹。

验证：pnc_node 和 pnc_replayer 通过 icecream -j60 多机编译；polygon_sl_projector 78 项、ssep_path_corridor 74 项测试通过，生成物检查通过。
</comment><date>2026-09-09 18:18:22 +0800</date><id>49b79f589bdc32a873cd4b298543d9b1cb87d8a3</id><msg>fix: 统一 KEB 与 SSEP 的闸口点云过滤</msg><path><editType>add</editType><file>data/boundary/sidepass_utils.hpp</file></path><path><editType>edit</editType><file>CMakeLists.txt</file></path><path><editType>edit</editType><file>data/boundary/driving_corridor.cpp</file></path><path><editType>add</editType><file>data/boundary/sidepass_utils.cpp</file></path><path><editType>edit</editType><file>replayer/replayer_data_process/replayer_data_process.hpp</file></path><path><editType>edit</editType><file>plan/prepare/prepare_ogm.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</file></path><path><editType>edit</editType><file>tasks/plan/keb_utils.cpp</file></path><path><editType>edit</editType><file>replayer/replayer_data_process/replayer_data_process.cpp</file></path><path><editType>edit</editType><file>plan/prepare/prepare_ogm.hpp</file></path><path><editType>add</editType><file>Testing/keb_gate_filter_test.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>data/config/cfg_safe_const.cpp</affectedPath><commitId>f357bcdcb91c19fea619b4fa788f033396e4f9d7</commitId><timestamp>1788949117000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 收紧闸口点云过滤默认横向缓冲

将未配置 gate_sidepass_filter_lateral_buffer_m 时的默认值由 0.5 m 调整为 0.3 m，减少车身边界之外额外清除的点云范围。显式配置仍优先于默认值。
</comment><date>2026-09-09 18:18:37 +0800</date><id>f357bcdcb91c19fea619b4fa788f033396e4f9d7</id><msg>fix: 收紧闸口点云过滤默认横向缓冲</msg><path><editType>edit</editType><file>data/config/cfg_safe_const.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>plan/prepare/prepare_ogm.cpp</affectedPath><affectedPath>tasks/plan/keb_utils.cpp</affectedPath><affectedPath>CMakeLists.txt</affectedPath><affectedPath>plan/prepare/prepare_ogm.hpp</affectedPath><affectedPath>Testing/roadside_contour_test.cpp</affectedPath><commitId>2e3c53e6a82bb958e566997de5338c4332a7fde3</commitId><timestamp>1789006951000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 修复沟点轮廓包络与边缘点丢失

独立生成沟点轮廓，恢复稀疏点簇连接并沿完整占用格边界包住原始点。
按凸包锚点分段简化，逐段校验原始点包含关系，保留明显凹口。
临时栅格四侧补一格并同步中心，防止最近格心落格丢弃边缘点。
补充真实快照、小数坐标、边缘及减段回归；102 项测试通过，多机编译完成。
</comment><date>2026-09-10 10:22:31 +0800</date><id>2e3c53e6a82bb958e566997de5338c4332a7fde3</id><msg>fix: 修复沟点轮廓包络与边缘点丢失</msg><path><editType>edit</editType><file>plan/prepare/prepare_ogm.hpp</file></path><path><editType>edit</editType><file>CMakeLists.txt</file></path><path><editType>edit</editType><file>plan/prepare/prepare_ogm.cpp</file></path><path><editType>add</editType><file>Testing/roadside_contour_test.cpp</file></path><path><editType>edit</editType><file>tasks/plan/keb_utils.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>tasks/plan/keb_lane_follow_path_task.cpp</affectedPath><affectedPath>ssep/keb_optimizer/rigid_truck_keb_optimizer.h</affectedPath><affectedPath>Testing/keb_roadside_config_test.cpp</affectedPath><affectedPath>algorithm/plan/keb_optimizer.hpp</affectedPath><affectedPath>offboard/bag_to_keb_scene/bag_to_keb_scene.cc</affectedPath><affectedPath>tasks/plan/keb_path_optimize_task.cpp</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_decoder.cpp</affectedPath><affectedPath>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</affectedPath><affectedPath>tasks/plan/keb_utils_core.cpp</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_decoder.hpp</affectedPath><affectedPath>CMakeLists.txt</affectedPath><affectedPath>ssep/maps/ogm_builder.cc</affectedPath><affectedPath>tools/pnc_proto_mapper/test_config_schema_presence.py</affectedPath><affectedPath>data/config/cfg_lat_plan.hpp</affectedPath><affectedPath>offboard/keb_path_opt_cli/closed_loop_utils.cc</affectedPath><affectedPath>replayer/scene_data/generated/config_schema_inputs.json</affectedPath><affectedPath>replayer/scene_data/generated/compact_typed_field_codec.hpp</affectedPath><affectedPath>data/config/cfg_lat_plan.cpp</affectedPath><affectedPath>ssep/keb_optimizer/tractor_trailer_keb_optimizer.h</affectedPath><affectedPath>algorithm/plan/keb_optimizer.cpp</affectedPath><affectedPath>Testing/keb_roadside_footprint_test.cpp</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_encoder.cpp</affectedPath><affectedPath>offboard/keb_path_opt_cli/keb_simulator.cc</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_encoder.hpp</affectedPath><affectedPath>replayer/scene_data/generated/compact_scene_descriptor.pb</affectedPath><affectedPath>proto/keb_scene.proto</affectedPath><affectedPath>tools/pnc_proto_mapper/sync_config_schema.py</affectedPath><affectedPath>replayer/scene_data/generated/full_custom_codec_coverage_audit.yaml</affectedPath><affectedPath>proto/config.proto</affectedPath><affectedPath>ssep/keb_optimizer/rigid_truck_keb_optimizer.cc</affectedPath><affectedPath>ssep/keb_optimizer/imv_keb_optimizer.cc</affectedPath><affectedPath>ssep/keb_optimizer/imv_keb_optimizer.h</affectedPath><affectedPath>replayer/scene_data/config_proto_codec.cpp</affectedPath><affectedPath>replayer/replayer_data_process/replayer_data_extraction.cpp</affectedPath><affectedPath>replayer/scene_data/generated/compact_typed_field_codec.cpp</affectedPath><affectedPath>config/config_imv/plan.yaml</affectedPath><affectedPath>tasks/plan/keb_utils_core.hpp</affectedPath><affectedPath>ssep/keb_optimizer/tractor_trailer_keb_optimizer.cc</affectedPath><affectedPath>ssep/maps/ogm_builder.h</affectedPath><affectedPath>Testing/keb_obstacle_visibility_test.cpp</affectedPath><affectedPath>replayer/scene_data/generated/scene_replay_api_descriptor.pb</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_descriptor.pb</affectedPath><commitId>3236b25aa5c2cbbe4ae141dda3c374ac0615ae08</commitId><timestamp>1789007015000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>feat: 完善 KEB 障碍约束配置及回放

起终点清障独立配置，默认保留起点障碍、清除终点占用区域；沟点层保持不清障。
增加默认零值的沟点前后与左右内缩，统一优化和精确碰撞校验使用的几何。
将三车型的沟点代价参数归入 OptParam，构造时复制可选沟点车身几何。
同步 Full、Compact、离线场景与 CLI 参数传递，保留显式 false 和旧场景默认语义。
补充配置持久化、车身内缩和清障组合测试；协议生成、兼容性检查及多机编译通过。
</comment><date>2026-09-10 10:23:35 +0800</date><id>3236b25aa5c2cbbe4ae141dda3c374ac0615ae08</id><msg>feat: 完善 KEB 障碍约束配置及回放</msg><path><editType>edit</editType><file>ssep/keb_optimizer/rigid_truck_keb_optimizer.cc</file></path><path><editType>edit</editType><file>ssep/keb_optimizer/rigid_truck_keb_optimizer.h</file></path><path><editType>edit</editType><file>tasks/plan/keb_lane_follow_path_task.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/compact_scene_descriptor.pb</file></path><path><editType>edit</editType><file>ssep/maps/ogm_builder.cc</file></path><path><editType>edit</editType><file>ssep/keb_optimizer/imv_keb_optimizer.cc</file></path><path><editType>edit</editType><file>config/config_imv/plan.yaml</file></path><path><editType>edit</editType><file>CMakeLists.txt</file></path><path><editType>edit</editType><file>proto/keb_scene.proto</file></path><path><editType>edit</editType><file>tasks/plan/keb_utils_core.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_decoder.cpp</file></path><path><editType>edit</editType><file>algorithm/plan/keb_optimizer.cpp</file></path><path><editType>edit</editType><file>ssep/keb_optimizer/imv_keb_optimizer.h</file></path><path><editType>edit</editType><file>ssep/maps/ogm_builder.h</file></path><path><editType>edit</editType><file>algorithm/plan/keb_optimizer.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/config_proto_codec.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/config_schema_inputs.json</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_descriptor.pb</file></path><path><editType>edit</editType><file>offboard/bag_to_keb_scene/bag_to_keb_scene.cc</file></path><path><editType>edit</editType><file>data/config/cfg_lat_plan.hpp</file></path><path><editType>edit</editType><file>offboard/keb_path_opt_cli/keb_simulator.cc</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_decoder.hpp</file></path><path><editType>edit</editType><file>replayer/replayer_data_process/replayer_data_extraction.cpp</file></path><path><editType>edit</editType><file>tools/pnc_proto_mapper/sync_config_schema.py</file></path><path><editType>add</editType><file>tools/pnc_proto_mapper/test_config_schema_presence.py</file></path><path><editType>edit</editType><file>tasks/plan/keb_path_optimize_task.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/compact_typed_field_codec.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/full_custom_codec_coverage_audit.yaml</file></path><path><editType>edit</editType><file>ssep/keb_optimizer/tractor_trailer_keb_optimizer.h</file></path><path><editType>add</editType><file>Testing/keb_roadside_footprint_test.cpp</file></path><path><editType>edit</editType><file>proto/config.proto</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_encoder.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/scene_replay_api_descriptor.pb</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_encoder.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/compact_typed_field_codec.hpp</file></path><path><editType>edit</editType><file>offboard/keb_path_opt_cli/closed_loop_utils.cc</file></path><path><editType>add</editType><file>Testing/keb_obstacle_visibility_test.cpp</file></path><path><editType>add</editType><file>Testing/keb_roadside_config_test.cpp</file></path><path><editType>edit</editType><file>ssep/keb_optimizer/tractor_trailer_keb_optimizer.cc</file></path><path><editType>edit</editType><file>tasks/plan/keb_utils_core.cpp</file></path><path><editType>edit</editType><file>data/config/cfg_lat_plan.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>data/config/cfg_lat_plan.cpp</affectedPath><commitId>300b1ca727764e2d652d0994e6bc9e01d3912ed6</commitId><timestamp>1789007050000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>chore: 调整沟点硬安全间距默认值

ROS 参数未显式配置时，将沟点硬安全间距默认值从 0.05 m 调整为 0 m。
单独记录此调参，便于独立审查和回退。
</comment><date>2026-09-10 10:24:10 +0800</date><id>300b1ca727764e2d652d0994e6bc9e01d3912ed6</id><msg>chore: 调整沟点硬安全间距默认值</msg><path><editType>edit</editType><file>data/config/cfg_lat_plan.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>algorithm/lattice/fsm_safety_brake.hpp</affectedPath><affectedPath>data/plan/start_point_data.cpp</affectedPath><affectedPath>data/plan/start_point_data.hpp</affectedPath><affectedPath>algorithm/lattice/jerk_limited_stop.hpp</affectedPath><affectedPath>tasks/plan/lattice_task.cpp</affectedPath><affectedPath>Testing/jerk_limited_stop_test.cpp</affectedPath><commitId>45fbd05d800b5f04df7e9156c7c56ccbbcdb2f88</commitId><timestamp>1789009577000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>Preserve stitched acceleration across braking and recovery

Keep the unified initial acceleration for normal and FSM fallback. Preserve inherited braking within physical limits and diagnose exceptional start adjustments. Remove the obsolete acceleration-clear/restore path and cover the revised stop behavior.
</comment><date>2026-09-10 11:06:17 +0800</date><id>45fbd05d800b5f04df7e9156c7c56ccbbcdb2f88</id><msg>Preserve stitched acceleration across braking and recovery</msg><path><editType>edit</editType><file>data/plan/start_point_data.hpp</file></path><path><editType>edit</editType><file>Testing/jerk_limited_stop_test.cpp</file></path><path><editType>edit</editType><file>tasks/plan/lattice_task.cpp</file></path><path><editType>edit</editType><file>algorithm/lattice/fsm_safety_brake.hpp</file></path><path><editType>edit</editType><file>algorithm/lattice/jerk_limited_stop.hpp</file></path><path><editType>edit</editType><file>data/plan/start_point_data.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>data/lattice/lattice_trajectory1d.cpp</affectedPath><affectedPath>Testing/jerk_limited_stop_test.cpp</affectedPath><commitId>57eac5ba7f0d9fd8234826e02495d20a665cf084</commitId><timestamp>1789009587000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>Normalize numerical stop endpoints without erasing acceleration

Apply terminal speed normalization at the exact endpoint as well as the hold segment. Preserve real nonzero terminal acceleration and add a regression.
</comment><date>2026-09-10 11:06:27 +0800</date><id>57eac5ba7f0d9fd8234826e02495d20a665cf084</id><msg>Normalize numerical stop endpoints without erasing acceleration</msg><path><editType>edit</editType><file>data/lattice/lattice_trajectory1d.cpp</file></path><path><editType>edit</editType><file>Testing/jerk_limited_stop_test.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>data/config/cfg_platoon.hpp</affectedPath><affectedPath>data/config/cfg_platoon.cpp</affectedPath><commitId>a20026508d3e1064b0023657af9fa6e6b41b1275</commitId><timestamp>1789009597000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>Add platoon safety and response configuration

Load and validate headway, braking recovery, response and gap-preview settings. Version the replay serialization while retaining older snapshot defaults.
</comment><date>2026-09-10 11:06:37 +0800</date><id>a20026508d3e1064b0023657af9fa6e6b41b1275</id><msg>Add platoon safety and response configuration</msg><path><editType>edit</editType><file>data/config/cfg_platoon.cpp</file></path><path><editType>edit</editType><file>data/config/cfg_platoon.hpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>algorithm/platoon/platoon_leader_predictor.cpp</affectedPath><affectedPath>Testing/platoon_follow_target_builder_test.cpp</affectedPath><commitId>9f67a4e7930a7c5af80300d78b086a00d3ec15b8</commitId><timestamp>1789009602000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>Continue predicted leader braking until standstill

Keep negative estimated acceleration beyond the nominal prediction-duration cutoff, controlled by continue_leader_braking. Test sustained braking and the disabled behavior.
</comment><date>2026-09-10 11:06:42 +0800</date><id>9f67a4e7930a7c5af80300d78b086a00d3ec15b8</id><msg>Continue predicted leader braking until standstill</msg><path><editType>edit</editType><file>Testing/platoon_follow_target_builder_test.cpp</file></path><path><editType>edit</editType><file>algorithm/platoon/platoon_leader_predictor.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>data/platoon/platoon_follow_target.cpp</affectedPath><affectedPath>algorithm/platoon/platoon_follow_target_builder.cpp</affectedPath><affectedPath>algorithm/platoon/platoon_reference_smoother.hpp</affectedPath><affectedPath>Testing/platoon_follow_target_builder_test.cpp</affectedPath><commitId>e78f387aa20fadc91864cf35ae2df181ef3c34fd</commitId><timestamp>1789009608000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>Smooth projected leader motion with consistent derivatives

Fit nonnegative leader velocities within acceleration bounds and reject excessive position correction. Derive interpolated position, speed and acceleration from one model, with a misaligned-motion regression.
</comment><date>2026-09-10 11:06:48 +0800</date><id>e78f387aa20fadc91864cf35ae2df181ef3c34fd</id><msg>Smooth projected leader motion with consistent derivatives</msg><path><editType>edit</editType><file>algorithm/platoon/platoon_follow_target_builder.cpp</file></path><path><editType>edit</editType><file>data/platoon/platoon_follow_target.cpp</file></path><path><editType>add</editType><file>algorithm/platoon/platoon_reference_smoother.hpp</file></path><path><editType>edit</editType><file>Testing/platoon_follow_target_builder_test.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>algorithm/lattice/platoon_safety.hpp</affectedPath><affectedPath>algorithm/lattice/platoon_response.hpp</affectedPath><affectedPath>Testing/platoon_safety_test.cpp</affectedPath><affectedPath>algorithm/lattice/lattice.cpp</affectedPath><affectedPath>algorithm/lattice/lattice.hpp</affectedPath><affectedPath>CMakeLists.txt</affectedPath><affectedPath>tasks/plan/lattice_task.cpp</affectedPath><commitId>54569c422e514eb9fd91c38f3203b997400f4d7f</commitId><timestamp>1789009625000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>Guard platoon candidates with braking reserve and recovery hold

Assess measured headway and braking clearance before mode selection and validate candidate response rollouts. Retain leader obstacle checks during fallback, cap recovery speed, and latch protection across planning stages. Add safety and recovery regressions.
</comment><date>2026-09-10 11:07:05 +0800</date><id>54569c422e514eb9fd91c38f3203b997400f4d7f</id><msg>Guard platoon candidates with braking reserve and recovery hold</msg><path><editType>edit</editType><file>CMakeLists.txt</file></path><path><editType>add</editType><file>algorithm/lattice/platoon_safety.hpp</file></path><path><editType>edit</editType><file>algorithm/lattice/lattice.cpp</file></path><path><editType>add</editType><file>algorithm/lattice/platoon_response.hpp</file></path><path><editType>edit</editType><file>tasks/plan/lattice_task.cpp</file></path><path><editType>add</editType><file>Testing/platoon_safety_test.cpp</file></path><path><editType>edit</editType><file>algorithm/lattice/lattice.hpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>algorithm/lattice/platoon_trajectory1d_generator.cpp</affectedPath><commitId>176f859fb89471859bdc4ffada0ab1631997a40c</commitId><timestamp>1789009646000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>Preserve CACC stop feasibility at low-speed splices

Allow brake-release jerk up to the physical bound when an inherited splice requires it. Compare endpoint roundoff in velocity units, normalize stop residue, and report detailed infeasibility diagnostics.
</comment><date>2026-09-10 11:07:26 +0800</date><id>176f859fb89471859bdc4ffada0ab1631997a40c</id><msg>Preserve CACC stop feasibility at low-speed splices</msg><path><editType>edit</editType><file>algorithm/lattice/platoon_trajectory1d_generator.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>Testing/data/platoon_130937.txt</affectedPath><affectedPath>Testing/platoon_safety_test.cpp</affectedPath><affectedPath>Testing/platoon_lattice_test.cpp</affectedPath><affectedPath>Testing/platoon_response_test.cpp</affectedPath><affectedPath>algorithm/lattice/platoon_trajectory1d_generator.cpp</affectedPath><affectedPath>CMakeLists.txt</affectedPath><affectedPath>Testing/data/platoon_130937_README.md</affectedPath><commitId>26c475b97c41772612ff7e647d9c1511cc141246</commitId><timestamp>1789009658000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>Use vehicle response feedback and braking preview in CACC

Keep output stitching separate from measured-state response prediction. Preview gap and braking reserve before accepting commands, and continue braking when extrapolating a short leader reference. Add measured-feedback, stop-recovery and recorded-failure regressions.
</comment><date>2026-09-10 11:07:38 +0800</date><id>26c475b97c41772612ff7e647d9c1511cc141246</id><msg>Use vehicle response feedback and braking preview in CACC</msg><path><editType>add</editType><file>Testing/platoon_response_test.cpp</file></path><path><editType>add</editType><file>Testing/data/platoon_130937_README.md</file></path><path><editType>edit</editType><file>Testing/platoon_lattice_test.cpp</file></path><path><editType>add</editType><file>Testing/data/platoon_130937.txt</file></path><path><editType>edit</editType><file>algorithm/lattice/platoon_trajectory1d_generator.cpp</file></path><path><editType>edit</editType><file>Testing/platoon_safety_test.cpp</file></path><path><editType>edit</editType><file>CMakeLists.txt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>hmi/widget/lattice_plan_detail.cpp</affectedPath><affectedPath>hmi/widget/lattice_plan_detail.hpp</affectedPath><commitId>bd62bf24d58dc54c5c0af734886eed6425f3c855</commitId><timestamp>1789009670000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>Show platoon headway history with fixed target-centered axes

Replace the separate platoon gap and phase tabs with headway traces in platoon history. Display available headway alongside its minimum and fix the gap/headway axis ranges around configured targets.
</comment><date>2026-09-10 11:07:50 +0800</date><id>bd62bf24d58dc54c5c0af734886eed6425f3c855</id><msg>Show platoon headway history with fixed target-centered axes</msg><path><editType>edit</editType><file>hmi/widget/lattice_plan_detail.hpp</file></path><path><editType>edit</editType><file>hmi/widget/lattice_plan_detail.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>docs/platoon/safety_fallback.md</affectedPath><commitId>5261d92a5131222c52f4c73b4d7ac8ae8e0e65db</commitId><timestamp>1789009674000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>Document platoon safety and response-model behavior

Describe configuration, safety and recovery lifecycle, continuity rules, diagnostics, regression coverage and model limitations.
</comment><date>2026-09-10 11:07:54 +0800</date><id>5261d92a5131222c52f4c73b4d7ac8ae8e0e65db</id><msg>Document platoon safety and response-model behavior</msg><path><editType>add</editType><file>docs/platoon/safety_fallback.md</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>Testing/routing_transition_test.cpp</affectedPath><affectedPath>tasks/plan/ssep_task.cpp</affectedPath><affectedPath>tasks/plan/ssep_task.hpp</affectedPath><commitId>36dbddf7269c44be373058fbc7c99355e61674df</commitId><timestamp>1789019489000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 隔离 SSEP 异步搜索的任务输入与结果

发起搜索时复制配置、输入和场景信息，避免后台线程读取已切换任务的当前帧。
记录搜索所属任务，丢弃旧任务晚到结果；接收成功但执行目标尚未切换时使用新任务 ID。

补充旧任务结果丢弃、接收过渡帧及同任务重搜结果发布回归。
</comment><date>2026-09-10 13:51:29 +0800</date><id>36dbddf7269c44be373058fbc7c99355e61674df</id><msg>fix: 隔离 SSEP 异步搜索的任务输入与结果</msg><path><editType>edit</editType><file>Testing/routing_transition_test.cpp</file></path><path><editType>edit</editType><file>tasks/plan/ssep_task.cpp</file></path><path><editType>edit</editType><file>tasks/plan/ssep_task.hpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>Testing/ssep_path_corridor_test.cpp</affectedPath><affectedPath>data/vehicle/request_routing_data.hpp</affectedPath><affectedPath>data/ssep/open_space_ec.cpp</affectedPath><affectedPath>Testing/routing_transition_test.cpp</affectedPath><affectedPath>tasks/deciders/search_decider/open_space_search_decider.cpp</affectedPath><affectedPath>data/vehicle/request_routing_data.cpp</affectedPath><affectedPath>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</affectedPath><affectedPath>data/map/pnc_map/routing_extension/routing_data.cpp</affectedPath><affectedPath>CMakeLists.txt</affectedPath><affectedPath>data/ssep/ssep_ec.cpp</affectedPath><commitId>b4ee1eea7754b5ba523373bf35b170d0da295408</commitId><timestamp>1789019514000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 修复起点偏移 open space 任务接收与车头交接

先初始化接收路由的偏移信息，再校验方向，修复 VV086 任务因首车道航向差超过 90 度被提前拒绝。
正常车道校验保留当前定位及历史执行车头，维持停车换头规则。

双向 IMV 的 10/11 保留指定车头、12 允许初搜自动选择；搜索期间跟随当前分段，接回路由继承末段方向，重搜临时失去分段时保持执行方向。
修正指定车头重搜姿态及前后轴轮角对应关系，并在新任务接收后失效旧搜索结果和 EC。

补充 VV086 几何、正常车道方向组合、搜索方向生命周期和输入约束回归。刷新测试访问声明对应的头文件审计校验值，未改变协议字段。

验证：routing、SSEP 与地图边界三组回归通过，pnc_node 构建成功。
</comment><date>2026-09-10 13:51:54 +0800</date><id>b4ee1eea7754b5ba523373bf35b170d0da295408</id><msg>fix: 修复起点偏移 open space 任务接收与车头交接</msg><path><editType>edit</editType><file>CMakeLists.txt</file></path><path><editType>edit</editType><file>Testing/routing_transition_test.cpp</file></path><path><editType>edit</editType><file>data/ssep/open_space_ec.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</file></path><path><editType>edit</editType><file>tasks/deciders/search_decider/open_space_search_decider.cpp</file></path><path><editType>edit</editType><file>data/vehicle/request_routing_data.cpp</file></path><path><editType>edit</editType><file>data/ssep/ssep_ec.cpp</file></path><path><editType>edit</editType><file>data/map/pnc_map/routing_extension/routing_data.cpp</file></path><path><editType>edit</editType><file>Testing/ssep_path_corridor_test.cpp</file></path><path><editType>edit</editType><file>data/vehicle/request_routing_data.hpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>algorithm/lattice/platoon_trajectory_evaluator.cpp</affectedPath><affectedPath>algorithm/lattice/platoon_trajectory1d_generator.hpp</affectedPath><affectedPath>algorithm/lattice/platoon_trajectory_evaluator.hpp</affectedPath><affectedPath>data/config/cfg_platoon.cpp</affectedPath><affectedPath>docs/platoon/time_headway_mpc.md</affectedPath><affectedPath>Testing/platoon_test_safety.hpp</affectedPath><affectedPath>data/config/cfg_platoon.hpp</affectedPath><affectedPath>Testing/platoon_lattice_test.cpp</affectedPath><affectedPath>config/platoon.yaml</affectedPath><affectedPath>Testing/data/platoon_100156.txt</affectedPath><affectedPath>Testing/platoon_follow_target_builder_test.cpp</affectedPath><affectedPath>Testing/platoon_safety_test.cpp</affectedPath><affectedPath>data/platoon/platoon_info.hpp</affectedPath><affectedPath>data/platoon/platoon_info.cpp</affectedPath><affectedPath>algorithm/lattice/platoon_safety.hpp</affectedPath><affectedPath>data/platoon/platoon_follow_target.cpp</affectedPath><affectedPath>algorithm/lattice/platoon_response.hpp</affectedPath><affectedPath>hmi/widget/lattice_plan_detail.cpp</affectedPath><affectedPath>algorithm/lattice/lattice.cpp</affectedPath><affectedPath>algorithm/platoon/platoon_follow_target_builder.hpp</affectedPath><affectedPath>algorithm/platoon/platoon_follow_target_builder.cpp</affectedPath><affectedPath>algorithm/lattice/lattice.hpp</affectedPath><affectedPath>docs/platoon/safety_fallback.md</affectedPath><affectedPath>Testing/data/platoon_100156_README.md</affectedPath><affectedPath>Testing/platoon_response_test.cpp</affectedPath><affectedPath>hmi/widget/lattice_plan_detail.hpp</affectedPath><affectedPath>algorithm/lattice/platoon_trajectory1d_generator.cpp</affectedPath><commitId>7a633a6c2a6da54393c4e30b80a2f6564018bdb4</commitId><timestamp>1789020452000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>Replace platoon CACC generator with time-headway MPC
</comment><date>2026-09-10 14:07:32 +0800</date><id>7a633a6c2a6da54393c4e30b80a2f6564018bdb4</id><msg>Replace platoon CACC generator with time-headway MPC</msg><path><editType>edit</editType><file>algorithm/lattice/lattice.cpp</file></path><path><editType>edit</editType><file>algorithm/lattice/platoon_safety.hpp</file></path><path><editType>edit</editType><file>algorithm/platoon/platoon_follow_target_builder.hpp</file></path><path><editType>edit</editType><file>data/platoon/platoon_info.hpp</file></path><path><editType>add</editType><file>Testing/data/platoon_100156.txt</file></path><path><editType>edit</editType><file>algorithm/lattice/platoon_trajectory_evaluator.cpp</file></path><path><editType>edit</editType><file>hmi/widget/lattice_plan_detail.hpp</file></path><path><editType>edit</editType><file>algorithm/lattice/platoon_trajectory_evaluator.hpp</file></path><path><editType>edit</editType><file>data/platoon/platoon_follow_target.cpp</file></path><path><editType>add</editType><file>Testing/platoon_test_safety.hpp</file></path><path><editType>edit</editType><file>data/platoon/platoon_info.cpp</file></path><path><editType>edit</editType><file>data/config/cfg_platoon.hpp</file></path><path><editType>edit</editType><file>Testing/platoon_response_test.cpp</file></path><path><editType>add</editType><file>Testing/data/platoon_100156_README.md</file></path><path><editType>edit</editType><file>algorithm/lattice/platoon_response.hpp</file></path><path><editType>edit</editType><file>algorithm/platoon/platoon_follow_target_builder.cpp</file></path><path><editType>edit</editType><file>Testing/platoon_follow_target_builder_test.cpp</file></path><path><editType>edit</editType><file>data/config/cfg_platoon.cpp</file></path><path><editType>edit</editType><file>algorithm/lattice/lattice.hpp</file></path><path><editType>add</editType><file>config/platoon.yaml</file></path><path><editType>add</editType><file>docs/platoon/time_headway_mpc.md</file></path><path><editType>edit</editType><file>algorithm/lattice/platoon_trajectory1d_generator.hpp</file></path><path><editType>edit</editType><file>docs/platoon/safety_fallback.md</file></path><path><editType>edit</editType><file>Testing/platoon_lattice_test.cpp</file></path><path><editType>edit</editType><file>algorithm/lattice/platoon_trajectory1d_generator.cpp</file></path><path><editType>edit</editType><file>Testing/platoon_safety_test.cpp</file></path><path><editType>edit</editType><file>hmi/widget/lattice_plan_detail.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>Testing/platoon_response_test.cpp</affectedPath><affectedPath>algorithm/lattice/platoon_trajectory1d_generator.cpp</affectedPath><affectedPath>Testing/data/platoon_054525_entry_README.md</affectedPath><affectedPath>docs/platoon/time_headway_mpc.md</affectedPath><affectedPath>Testing/data/platoon_054525_entry.txt</affectedPath><commitId>a3093405ca03a62d8d95ab6cdedec3a399a16d1d</commitId><timestamp>1789022614000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>Fix platoon MPC entry convergence and terminal braking feasibility
</comment><date>2026-09-10 14:43:34 +0800</date><id>a3093405ca03a62d8d95ab6cdedec3a399a16d1d</id><msg>Fix platoon MPC entry convergence and terminal braking feasibility</msg><path><editType>add</editType><file>Testing/data/platoon_054525_entry.txt</file></path><path><editType>add</editType><file>Testing/data/platoon_054525_entry_README.md</file></path><path><editType>edit</editType><file>Testing/platoon_response_test.cpp</file></path><path><editType>edit</editType><file>docs/platoon/time_headway_mpc.md</file></path><path><editType>edit</editType><file>algorithm/lattice/platoon_trajectory1d_generator.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>algorithm/lattice/platoon_qp_polish.hpp</affectedPath><affectedPath>Testing/platoon_safety_test.cpp</affectedPath><affectedPath>algorithm/lattice/platoon_trajectory1d_generator.hpp</affectedPath><affectedPath>data/vehicle/vehicle_chassis.cpp</affectedPath><affectedPath>Testing/data/platoon_065928_constraints_README.md</affectedPath><affectedPath>algorithm/lattice/platoon_response.hpp</affectedPath><affectedPath>algorithm/lattice/lattice.cpp</affectedPath><affectedPath>docs/platoon/time_headway_mpc.md</affectedPath><affectedPath>Testing/platoon_test_safety.hpp</affectedPath><affectedPath>Testing/platoon_response_test.cpp</affectedPath><affectedPath>algorithm/lattice/platoon_response_safety.hpp</affectedPath><affectedPath>algorithm/lattice/platoon_trajectory1d_generator.cpp</affectedPath><affectedPath>Testing/data/platoon_065928_constraints.txt</affectedPath><commitId>ef3e97bb28b9121339d560811f73e8eb505f941d</commitId><timestamp>1789029084000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>Fix platoon MPC speed-limit exits and response safety alignment
</comment><date>2026-09-10 16:31:24 +0800</date><id>ef3e97bb28b9121339d560811f73e8eb505f941d</id><msg>Fix platoon MPC speed-limit exits and response safety alignment</msg><path><editType>edit</editType><file>Testing/platoon_response_test.cpp</file></path><path><editType>add</editType><file>Testing/data/platoon_065928_constraints.txt</file></path><path><editType>add</editType><file>algorithm/lattice/platoon_response_safety.hpp</file></path><path><editType>add</editType><file>Testing/data/platoon_065928_constraints_README.md</file></path><path><editType>edit</editType><file>algorithm/lattice/platoon_response.hpp</file></path><path><editType>edit</editType><file>algorithm/lattice/lattice.cpp</file></path><path><editType>edit</editType><file>data/vehicle/vehicle_chassis.cpp</file></path><path><editType>edit</editType><file>algorithm/lattice/platoon_trajectory1d_generator.cpp</file></path><path><editType>edit</editType><file>Testing/platoon_safety_test.cpp</file></path><path><editType>edit</editType><file>Testing/platoon_test_safety.hpp</file></path><path><editType>edit</editType><file>docs/platoon/time_headway_mpc.md</file></path><path><editType>add</editType><file>algorithm/lattice/platoon_qp_polish.hpp</file></path><path><editType>edit</editType><file>algorithm/lattice/platoon_trajectory1d_generator.hpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>ssep/CMakeLists.txt</affectedPath><commitId>735a09688c39fe8c65023d8ee19c7343dcb60cfa</commitId><timestamp>1789031693000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 修复 ARM 回放共享库链接 CUDA 静态库失败

为 ssep_gpu_lib 开启 POSITION_INDEPENDENT_CODE，使 CUDA 宿主代码使用 -fPIC，修复 ARM 上链接回放共享库时的重定位错误。顶层 CMAKE_CXX_FLAGS 不覆盖 .cu 编译。

已通过 CMake 配置、diff 检查及 x86 CUDA 静态库链接共享库最小验证；ARM 完整构建待服务器复验。
</comment><date>2026-09-10 17:14:53 +0800</date><id>735a09688c39fe8c65023d8ee19c7343dcb60cfa</id><msg>fix: 修复 ARM 回放共享库链接 CUDA 静态库失败</msg><path><editType>edit</editType><file>ssep/CMakeLists.txt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>algorithm/lattice/platoon_qp_polish.hpp</affectedPath><affectedPath>Testing/data/platoon_083648_constraints_README.md</affectedPath><affectedPath>Testing/platoon_response_test.cpp</affectedPath><affectedPath>algorithm/lattice/platoon_trajectory1d_generator.cpp</affectedPath><affectedPath>Testing/data/platoon_083648_constraints.txt</affectedPath><affectedPath>docs/platoon/time_headway_mpc.md</affectedPath><commitId>14cc7c2a27e9f93b3d29381690576332b2a91810</commitId><timestamp>1789032535000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>Improve platoon MPC convergence at speed ceilings
</comment><date>2026-09-10 17:28:55 +0800</date><id>14cc7c2a27e9f93b3d29381690576332b2a91810</id><msg>Improve platoon MPC convergence at speed ceilings</msg><path><editType>edit</editType><file>algorithm/lattice/platoon_trajectory1d_generator.cpp</file></path><path><editType>edit</editType><file>Testing/platoon_response_test.cpp</file></path><path><editType>edit</editType><file>docs/platoon/time_headway_mpc.md</file></path><path><editType>add</editType><file>Testing/data/platoon_083648_constraints.txt</file></path><path><editType>edit</editType><file>algorithm/lattice/platoon_qp_polish.hpp</file></path><path><editType>add</editType><file>Testing/data/platoon_083648_constraints_README.md</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>algorithm/lattice/platoon_safety.hpp</affectedPath><affectedPath>Testing/platoon_safety_test.cpp</affectedPath><affectedPath>data/config/cfg_platoon.cpp</affectedPath><affectedPath>algorithm/lattice/lattice.cpp</affectedPath><affectedPath>docs/platoon/time_headway_mpc.md</affectedPath><affectedPath>data/config/cfg_platoon.hpp</affectedPath><affectedPath>algorithm/lattice/lattice.hpp</affectedPath><affectedPath>config/platoon.yaml</affectedPath><commitId>9afb96bdbecf221d1126368f67f4668e40164b7a</commitId><timestamp>1789035004000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>Remove persistent platoon safety latch
</comment><date>2026-09-10 18:10:04 +0800</date><id>9afb96bdbecf221d1126368f67f4668e40164b7a</id><msg>Remove persistent platoon safety latch</msg><path><editType>edit</editType><file>docs/platoon/time_headway_mpc.md</file></path><path><editType>edit</editType><file>data/config/cfg_platoon.cpp</file></path><path><editType>edit</editType><file>algorithm/lattice/lattice.cpp</file></path><path><editType>edit</editType><file>algorithm/lattice/lattice.hpp</file></path><path><editType>edit</editType><file>Testing/platoon_safety_test.cpp</file></path><path><editType>edit</editType><file>algorithm/lattice/platoon_safety.hpp</file></path><path><editType>edit</editType><file>config/platoon.yaml</file></path><path><editType>edit</editType><file>data/config/cfg_platoon.hpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>docs/pnc_build_profiles.md</affectedPath><affectedPath>CMakeLists.txt</affectedPath><affectedPath>Taskfile.yml</affectedPath><commitId>db7140a64f1543a7dd6f93ca5b9660d9145d73dd</commitId><timestamp>1789035526000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>build: 默认仅构建和安装 PNC 线上程序

新增默认关闭的 PNC_BUILD_OFFLINE_TOOLS 开关，默认构建和安装仅保留 node、replayer、scene_vis_server。离线对象库按消费者依赖编译，开发目标仍可显式构建，开启开关可恢复全量工具和 SDK 安装。

保留测试独立开关及 embedded SDK 的 compat 构建路径，补充线上构建任务和发布目录说明。已验证三个线上目标构建、全新暂存安装、开关切换及测试依赖；telediagnostic 依赖链已静态核对，未重编整个工程。
</comment><date>2026-09-10 18:18:46 +0800</date><id>db7140a64f1543a7dd6f93ca5b9660d9145d73dd</id><msg>build: 默认仅构建和安装 PNC 线上程序</msg><path><editType>add</editType><file>docs/pnc_build_profiles.md</file></path><path><editType>edit</editType><file>CMakeLists.txt</file></path><path><editType>edit</editType><file>Taskfile.yml</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>data/plan/ssep_data.cpp</affectedPath><affectedPath>proto/plan_data.proto</affectedPath><affectedPath>data/app/fsm/motion_fsm/motion_fsm.cpp</affectedPath><affectedPath>data/ssep/out_yard_junction_ec.cpp</affectedPath><affectedPath>data/vehicle/deviation_status.cpp</affectedPath><affectedPath>tasks/deciders/search_decider/seaside_junction_search_decider.cpp</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_decoder.cpp</affectedPath><affectedPath>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_decoder.hpp</affectedPath><affectedPath>data/ssep/ssep_common.hpp</affectedPath><affectedPath>data/ssep/seaside_junction_ec.cpp</affectedPath><affectedPath>tasks/deciders/search_decider/forward_search_decider.cpp</affectedPath><affectedPath>tasks/other_tasks/stitch_trailer_path_to_ref_line.cpp</affectedPath><affectedPath>data/ssep/open_space_ec.cpp</affectedPath><affectedPath>Testing/search_decider_lifecycle_test.cpp</affectedPath><affectedPath>tasks/deciders/other_decider/replan_decider.cpp</affectedPath><affectedPath>replayer/scene_data/generated/compact_typed_field_codec.hpp</affectedPath><affectedPath>tasks/other_tasks/stitch_path_to_reference_line.cpp</affectedPath><affectedPath>tasks/deciders/search_decider/reverse_search_decider.cpp</affectedPath><affectedPath>Testing/scene_replay_foundation_test.cpp</affectedPath><affectedPath>data/ssep/ssep_ec.hpp</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_encoder.cpp</affectedPath><affectedPath>tasks/deciders/search_decider/into_yard_junction_search_decider.cpp</affectedPath><affectedPath>tasks/deciders/search_decider/ex_lane_change_search_decider.cpp</affectedPath><affectedPath>data/ssep/ssep_ec.cpp</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_encoder.hpp</affectedPath><affectedPath>tasks/deciders/search_decider/bridge_junction_search_decider.cpp</affectedPath><affectedPath>Testing/ssep_path_corridor_test.cpp</affectedPath><affectedPath>replayer/scene_data/generated/compact_scene_descriptor.pb</affectedPath><affectedPath>tasks/deciders/search_decider/search_decider_lifecycle.cpp</affectedPath><affectedPath>tasks/deciders/search_decider/out_yard_junction_search_decider.cpp</affectedPath><affectedPath>tasks/deciders/search_decider/search_decider_lifecycle.hpp</affectedPath><affectedPath>data/ssep/normal_junction_ec.cpp</affectedPath><affectedPath>data/ssep/bridge_junction_ec.cpp</affectedPath><affectedPath>replayer/scene_data/generated/compact_typed_field_codec.cpp</affectedPath><affectedPath>tasks/deciders/long_decider/constrain_decider.cpp</affectedPath><affectedPath>docs/ssep_search_lifecycle.md</affectedPath><affectedPath>Testing/routing_map_guard_test.cpp</affectedPath><affectedPath>tasks/deciders/search_decider/open_space_search_decider.cpp</affectedPath><affectedPath>tasks/deciders/search_decider/normal_junction_search_decider.cpp</affectedPath><affectedPath>data/ssep/into_yard_junction_ec.cpp</affectedPath><affectedPath>common/util/express.cpp</affectedPath><affectedPath>replayer/scene_data/generated/scene_replay_api_descriptor.pb</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_descriptor.pb</affectedPath><commitId>ffc82d3f0353a69ab1d90f9268c5f2aedeb37f56</commitId><timestamp>1789040197000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 同路口重搜先停稳并从当前定位构建起点

仅对当前路口内同任务重搜进入 TO_MOTIONLESS，连续搜索与 fallback 保留原流程。
等待请求跨输入异常与阶段重置保留，由停止线负责停车，停稳后再构造环境。
统一定位起点与轮角校验，同步状态编码、场景回放生成物及生命周期回归。
</comment><date>2026-09-10 19:36:37 +0800</date><id>ffc82d3f0353a69ab1d90f9268c5f2aedeb37f56</id><msg>fix: 同路口重搜先停稳并从当前定位构建起点</msg><path><editType>edit</editType><file>data/ssep/open_space_ec.cpp</file></path><path><editType>edit</editType><file>tasks/deciders/search_decider/bridge_junction_search_decider.cpp</file></path><path><editType>edit</editType><file>data/ssep/out_yard_junction_ec.cpp</file></path><path><editType>edit</editType><file>data/app/fsm/motion_fsm/motion_fsm.cpp</file></path><path><editType>edit</editType><file>data/ssep/normal_junction_ec.cpp</file></path><path><editType>edit</editType><file>common/util/express.cpp</file></path><path><editType>edit</editType><file>tasks/deciders/search_decider/seaside_junction_search_decider.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_encoder.hpp</file></path><path><editType>edit</editType><file>data/ssep/seaside_junction_ec.cpp</file></path><path><editType>edit</editType><file>proto/plan_data.proto</file></path><path><editType>edit</editType><file>tasks/deciders/search_decider/reverse_search_decider.cpp</file></path><path><editType>edit</editType><file>data/ssep/ssep_ec.cpp</file></path><path><editType>edit</editType><file>tasks/deciders/search_decider/forward_search_decider.cpp</file></path><path><editType>edit</editType><file>tasks/deciders/search_decider/open_space_search_decider.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_encoder.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_descriptor.pb</file></path><path><editType>edit</editType><file>Testing/scene_replay_foundation_test.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/compact_typed_field_codec.hpp</file></path><path><editType>edit</editType><file>data/ssep/bridge_junction_ec.cpp</file></path><path><editType>edit</editType><file>tasks/other_tasks/stitch_path_to_reference_line.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_decoder.hpp</file></path><path><editType>edit</editType><file>data/ssep/ssep_ec.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/compact_typed_field_codec.cpp</file></path><path><editType>edit</editType><file>Testing/search_decider_lifecycle_test.cpp</file></path><path><editType>edit</editType><file>data/plan/ssep_data.cpp</file></path><path><editType>edit</editType><file>docs/ssep_search_lifecycle.md</file></path><path><editType>edit</editType><file>data/ssep/into_yard_junction_ec.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/compact_scene_descriptor.pb</file></path><path><editType>edit</editType><file>tasks/deciders/search_decider/search_decider_lifecycle.hpp</file></path><path><editType>edit</editType><file>tasks/other_tasks/stitch_trailer_path_to_ref_line.cpp</file></path><path><editType>edit</editType><file>Testing/routing_map_guard_test.cpp</file></path><path><editType>edit</editType><file>tasks/deciders/search_decider/out_yard_junction_search_decider.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/scene_replay_api_descriptor.pb</file></path><path><editType>edit</editType><file>tasks/deciders/long_decider/constrain_decider.cpp</file></path><path><editType>edit</editType><file>data/vehicle/deviation_status.cpp</file></path><path><editType>edit</editType><file>tasks/deciders/search_decider/into_yard_junction_search_decider.cpp</file></path><path><editType>edit</editType><file>tasks/deciders/search_decider/search_decider_lifecycle.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_decoder.cpp</file></path><path><editType>edit</editType><file>tasks/deciders/other_decider/replan_decider.cpp</file></path><path><editType>edit</editType><file>tasks/deciders/search_decider/ex_lane_change_search_decider.cpp</file></path><path><editType>edit</editType><file>tasks/deciders/search_decider/normal_junction_search_decider.cpp</file></path><path><editType>edit</editType><file>data/ssep/ssep_common.hpp</file></path><path><editType>edit</editType><file>Testing/ssep_path_corridor_test.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>Testing/reference_line_replan_test.cpp</affectedPath><affectedPath>tasks/other_tasks/stitch_path_to_reference_line.hpp</affectedPath><affectedPath>tasks/other_tasks/stitch_path_to_reference_line.cpp</affectedPath><affectedPath>Testing/fixtures/stitch_52851_offset_replan.hpp</affectedPath><affectedPath>docs/ssep_search_lifecycle.md</affectedPath><commitId>2c9028f468748a19e17b8d322b8c23c2971ba8b7</commitId><timestamp>1789040216000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 保留车后弯道并平滑拼接 SSEP 参考线

保持准确搜索首点与前方路径，优先沿历史和原参考线补足后视范围。
逐步调整车后连接锚点并校验去重后的实际接缝，移除整段搜索头切线兜底。
加入任务 52851 几何 fixture、大偏移、短历史、弯道及换头回归。
</comment><date>2026-09-10 19:36:56 +0800</date><id>2c9028f468748a19e17b8d322b8c23c2971ba8b7</id><msg>fix: 保留车后弯道并平滑拼接 SSEP 参考线</msg><path><editType>edit</editType><file>tasks/other_tasks/stitch_path_to_reference_line.hpp</file></path><path><editType>add</editType><file>Testing/fixtures/stitch_52851_offset_replan.hpp</file></path><path><editType>edit</editType><file>docs/ssep_search_lifecycle.md</file></path><path><editType>edit</editType><file>Testing/reference_line_replan_test.cpp</file></path><path><editType>edit</editType><file>tasks/other_tasks/stitch_path_to_reference_line.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>Testing/ssep_path_corridor_test.cpp</affectedPath><affectedPath>tasks/plan/keb_path_optimize_task.hpp</affectedPath><affectedPath>docs/ssep_search_lifecycle.md</affectedPath><affectedPath>tasks/plan/keb_path_optimize_task.cpp</affectedPath><commitId>2d26dfb54d41917a06e60f1ab9c36ad017017bad</commitId><timestamp>1789040238000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: SSEP 重搜期间复用有效 KEB 历史路径

校验任务、方向、姿态及剩余长度，补齐车辆至优化首点的历史前缀后写回。
新 SSEP 完成但尚未成功接入时继续保持，接替后释放旧优化输出；失效时按原策略兜底。
补充连续等待、前缀接头、输入失效和新结果接替回归。
</comment><date>2026-09-10 19:37:18 +0800</date><id>2d26dfb54d41917a06e60f1ab9c36ad017017bad</id><msg>fix: SSEP 重搜期间复用有效 KEB 历史路径</msg><path><editType>edit</editType><file>tasks/plan/keb_path_optimize_task.hpp</file></path><path><editType>edit</editType><file>docs/ssep_search_lifecycle.md</file></path><path><editType>edit</editType><file>Testing/ssep_path_corridor_test.cpp</file></path><path><editType>edit</editType><file>tasks/plan/keb_path_optimize_task.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>ssep/scenarios/imv_general_planner.h</affectedPath><affectedPath>ssep/keb_optimizer/imv_keb_optimizer.cc</affectedPath><affectedPath>ssep/keb_optimizer/imv_keb_optimizer.h</affectedPath><affectedPath>ssep/keb_optimizer/keb_problem.h</affectedPath><affectedPath>Testing/imv_keb_start_derivatives_test.cpp</affectedPath><affectedPath>CMakeLists.txt</affectedPath><affectedPath>docs/ssep_search_lifecycle.md</affectedPath><affectedPath>ssep/keb_optimizer/keb_problem.cc</affectedPath><commitId>1124716aaedfe26f79f04c4f26944358b3442658</commitId><timestamp>1789040258000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 优化 SSEP KEB 首段转向状态变化率

IMV General 保持既有首点姿态、曲率和 beta，允许首 pinch 与 beta_dot 在限值内优化。
初始导数收紧到合法范围，其他调用默认保留首点全固定行为。
仅调整 KEB 优化，不修改轮角传输、操作头转换或粗搜索接口，并覆盖正反向及默认兼容测试。
</comment><date>2026-09-10 19:37:38 +0800</date><id>1124716aaedfe26f79f04c4f26944358b3442658</id><msg>fix: 优化 SSEP KEB 首段转向状态变化率</msg><path><editType>edit</editType><file>ssep/keb_optimizer/imv_keb_optimizer.cc</file></path><path><editType>edit</editType><file>docs/ssep_search_lifecycle.md</file></path><path><editType>edit</editType><file>ssep/keb_optimizer/keb_problem.cc</file></path><path><editType>add</editType><file>Testing/imv_keb_start_derivatives_test.cpp</file></path><path><editType>edit</editType><file>CMakeLists.txt</file></path><path><editType>edit</editType><file>ssep/keb_optimizer/keb_problem.h</file></path><path><editType>edit</editType><file>ssep/keb_optimizer/imv_keb_optimizer.h</file></path><path><editType>edit</editType><file>ssep/scenarios/imv_general_planner.h</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>algorithm/lattice/long_target_calculator.cpp</affectedPath><affectedPath>algorithm/platoon/platoon_qp_polish.hpp</affectedPath><affectedPath>algorithm/lattice/platoon_trajectory1d_generator.hpp</affectedPath><affectedPath>data/platoon/platoon_follow_target.hpp</affectedPath><affectedPath>algorithm/lattice/longitudinal_curve_validator.hpp</affectedPath><affectedPath>algorithm/lattice/jerk_limited_stop.hpp</affectedPath><affectedPath>CMakeLists.txt</affectedPath><affectedPath>algorithm/platoon/platoon_response_safety.cpp</affectedPath><affectedPath>algorithm/platoon/leader_reference.cpp</affectedPath><affectedPath>algorithm/platoon/platoon_safety.hpp</affectedPath><affectedPath>docs/platoon/time_headway_mpc.md</affectedPath><affectedPath>algorithm/platoon/leader_reference.hpp</affectedPath><affectedPath>algorithm/platoon/jerk_limited_stop.hpp</affectedPath><affectedPath>algorithm/platoon/command_history.hpp</affectedPath><affectedPath>algorithm/platoon/platoon_response_safety.hpp</affectedPath><affectedPath>tasks/plan/lattice_task.cpp</affectedPath><affectedPath>algorithm/platoon/curve_kinematics.hpp</affectedPath><affectedPath>algorithm/lattice/platoon_qp_polish.hpp</affectedPath><affectedPath>Testing/platoon_safety_test.cpp</affectedPath><affectedPath>algorithm/platoon/longitudinal_mpc.cpp</affectedPath><affectedPath>Testing/platoon_mpc_core_test.cpp</affectedPath><affectedPath>algorithm/platoon/mpc_config.hpp</affectedPath><affectedPath>Testing/jerk_limited_stop_test.cpp</affectedPath><affectedPath>algorithm/lattice/stop_profile_planner.hpp</affectedPath><affectedPath>algorithm/lattice/platoon_safety.hpp</affectedPath><affectedPath>data/platoon/platoon_follow_target.cpp</affectedPath><affectedPath>algorithm/lattice/platoon_response.hpp</affectedPath><affectedPath>algorithm/lattice/lattice.cpp</affectedPath><affectedPath>algorithm/platoon/speed_limits.hpp</affectedPath><affectedPath>algorithm/lattice/lattice.hpp</affectedPath><affectedPath>Testing/platoon_response_test.cpp</affectedPath><affectedPath>algorithm/lattice/platoon_trajectory1d_generator.cpp</affectedPath><affectedPath>algorithm/lattice/platoon_response_safety.hpp</affectedPath><affectedPath>algorithm/platoon/platoon_response.hpp</affectedPath><affectedPath>algorithm/platoon/longitudinal_mpc.hpp</affectedPath><commitId>6eaa935cf44922198166c78bd32fb915f258657c</commitId><timestamp>1789041596000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>Extract MPC solver into algorithm/platoon and remove lattice forwarding files
</comment><date>2026-09-10 19:59:56 +0800</date><id>6eaa935cf44922198166c78bd32fb915f258657c</id><msg>Extract MPC solver into algorithm/platoon and remove lattice forwarding files</msg><path><editType>add</editType><file>algorithm/platoon/platoon_response_safety.hpp</file></path><path><editType>add</editType><file>algorithm/platoon/platoon_safety.hpp</file></path><path><editType>edit</editType><file>algorithm/lattice/platoon_trajectory1d_generator.cpp</file></path><path><editType>delete</editType><file>algorithm/lattice/platoon_response_safety.hpp</file></path><path><editType>edit</editType><file>algorithm/lattice/long_target_calculator.cpp</file></path><path><editType>add</editType><file>algorithm/platoon/speed_limits.hpp</file></path><path><editType>edit</editType><file>Testing/jerk_limited_stop_test.cpp</file></path><path><editType>edit</editType><file>Testing/platoon_response_test.cpp</file></path><path><editType>delete</editType><file>data/platoon/platoon_follow_target.cpp</file></path><path><editType>add</editType><file>algorithm/platoon/platoon_qp_polish.hpp</file></path><path><editType>edit</editType><file>data/platoon/platoon_follow_target.hpp</file></path><path><editType>edit</editType><file>tasks/plan/lattice_task.cpp</file></path><path><editType>add</editType><file>algorithm/platoon/command_history.hpp</file></path><path><editType>edit</editType><file>algorithm/lattice/platoon_trajectory1d_generator.hpp</file></path><path><editType>delete</editType><file>algorithm/lattice/platoon_qp_polish.hpp</file></path><path><editType>add</editType><file>algorithm/platoon/jerk_limited_stop.hpp</file></path><path><editType>edit</editType><file>algorithm/lattice/stop_profile_planner.hpp</file></path><path><editType>edit</editType><file>Testing/platoon_safety_test.cpp</file></path><path><editType>add</editType><file>algorithm/platoon/mpc_config.hpp</file></path><path><editType>add</editType><file>Testing/platoon_mpc_core_test.cpp</file></path><path><editType>edit</editType><file>algorithm/lattice/longitudinal_curve_validator.hpp</file></path><path><editType>edit</editType><file>algorithm/lattice/lattice.hpp</file></path><path><editType>add</editType><file>algorithm/platoon/longitudinal_mpc.cpp</file></path><path><editType>delete</editType><file>algorithm/lattice/platoon_safety.hpp</file></path><path><editType>add</editType><file>algorithm/platoon/platoon_response_safety.cpp</file></path><path><editType>add</editType><file>algorithm/platoon/curve_kinematics.hpp</file></path><path><editType>add</editType><file>algorithm/platoon/platoon_response.hpp</file></path><path><editType>edit</editType><file>docs/platoon/time_headway_mpc.md</file></path><path><editType>edit</editType><file>algorithm/lattice/lattice.cpp</file></path><path><editType>delete</editType><file>algorithm/lattice/jerk_limited_stop.hpp</file></path><path><editType>edit</editType><file>CMakeLists.txt</file></path><path><editType>add</editType><file>algorithm/platoon/leader_reference.cpp</file></path><path><editType>add</editType><file>algorithm/platoon/leader_reference.hpp</file></path><path><editType>delete</editType><file>algorithm/lattice/platoon_response.hpp</file></path><path><editType>add</editType><file>algorithm/platoon/longitudinal_mpc.hpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>algorithm/platoon/qp_solver.hpp</affectedPath><affectedPath>algorithm/platoon/longitudinal_mpc.cpp</affectedPath><affectedPath>algorithm/platoon/qp_solver.cpp</affectedPath><affectedPath>docs/platoon/time_headway_mpc.md</affectedPath><affectedPath>Testing/platoon_qp_solver_test.cpp</affectedPath><affectedPath>CMakeLists.txt</affectedPath><commitId>385069cb37efe2b4eb4542d42ee4452ba09d69da</commitId><timestamp>1789043006000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>Extract independent QP solver from longitudinal MPC
</comment><date>2026-09-10 20:23:26 +0800</date><id>385069cb37efe2b4eb4542d42ee4452ba09d69da</id><msg>Extract independent QP solver from longitudinal MPC</msg><path><editType>add</editType><file>algorithm/platoon/qp_solver.hpp</file></path><path><editType>add</editType><file>Testing/platoon_qp_solver_test.cpp</file></path><path><editType>edit</editType><file>algorithm/platoon/longitudinal_mpc.cpp</file></path><path><editType>edit</editType><file>CMakeLists.txt</file></path><path><editType>add</editType><file>algorithm/platoon/qp_solver.cpp</file></path><path><editType>edit</editType><file>docs/platoon/time_headway_mpc.md</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>algorithm/platoon/longitudinal_mpc.cpp</affectedPath><affectedPath>Testing/platoon_mpc_core_test.cpp</affectedPath><affectedPath>algorithm/platoon/longitudinal_mpc_validation.cpp</affectedPath><affectedPath>docs/platoon/time_headway_mpc.md</affectedPath><affectedPath>algorithm/platoon/longitudinal_mpc_internal.hpp</affectedPath><affectedPath>algorithm/platoon/longitudinal_mpc_prepare.cpp</affectedPath><affectedPath>algorithm/platoon/longitudinal_mpc_rollout.cpp</affectedPath><affectedPath>algorithm/platoon/longitudinal_mpc_qp.cpp</affectedPath><affectedPath>CMakeLists.txt</affectedPath><affectedPath>algorithm/platoon/longitudinal_mpc.hpp</affectedPath><commitId>1798a3c066eb3392e36fec0354766a879046c895</commitId><timestamp>1789044043000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>Split longitudinal MPC generation into maintainable cycle stages
</comment><date>2026-09-10 20:40:43 +0800</date><id>1798a3c066eb3392e36fec0354766a879046c895</id><msg>Split longitudinal MPC generation into maintainable cycle stages</msg><path><editType>add</editType><file>algorithm/platoon/longitudinal_mpc_internal.hpp</file></path><path><editType>add</editType><file>algorithm/platoon/longitudinal_mpc_rollout.cpp</file></path><path><editType>edit</editType><file>CMakeLists.txt</file></path><path><editType>edit</editType><file>docs/platoon/time_headway_mpc.md</file></path><path><editType>edit</editType><file>Testing/platoon_mpc_core_test.cpp</file></path><path><editType>add</editType><file>algorithm/platoon/longitudinal_mpc_qp.cpp</file></path><path><editType>edit</editType><file>algorithm/platoon/longitudinal_mpc.hpp</file></path><path><editType>add</editType><file>algorithm/platoon/longitudinal_mpc_validation.cpp</file></path><path><editType>edit</editType><file>algorithm/platoon/longitudinal_mpc.cpp</file></path><path><editType>add</editType><file>algorithm/platoon/longitudinal_mpc_prepare.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>algorithm/platoon/longitudinal_mpc.cpp</affectedPath><affectedPath>algorithm/platoon/longitudinal_mpc_validation.cpp</affectedPath><affectedPath>docs/platoon/time_headway_mpc.md</affectedPath><affectedPath>algorithm/platoon/longitudinal_mpc_internal.hpp</affectedPath><affectedPath>algorithm/platoon/longitudinal_mpc_prepare.cpp</affectedPath><affectedPath>algorithm/platoon/longitudinal_mpc_rollout.cpp</affectedPath><affectedPath>algorithm/platoon/longitudinal_mpc_qp.cpp</affectedPath><affectedPath>CMakeLists.txt</affectedPath><commitId>346364987e2bf062f83a9eb97dd645007633bc21</commitId><timestamp>1789044326000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>Consolidate MPC stages into longitudinal_mpc.cpp
</comment><date>2026-09-10 20:45:26 +0800</date><id>346364987e2bf062f83a9eb97dd645007633bc21</id><msg>Consolidate MPC stages into longitudinal_mpc.cpp</msg><path><editType>delete</editType><file>algorithm/platoon/longitudinal_mpc_prepare.cpp</file></path><path><editType>delete</editType><file>algorithm/platoon/longitudinal_mpc_rollout.cpp</file></path><path><editType>edit</editType><file>algorithm/platoon/longitudinal_mpc.cpp</file></path><path><editType>delete</editType><file>algorithm/platoon/longitudinal_mpc_internal.hpp</file></path><path><editType>edit</editType><file>CMakeLists.txt</file></path><path><editType>edit</editType><file>docs/platoon/time_headway_mpc.md</file></path><path><editType>delete</editType><file>algorithm/platoon/longitudinal_mpc_qp.cpp</file></path><path><editType>delete</editType><file>algorithm/platoon/longitudinal_mpc_validation.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>docs/platoon/time_headway_mpc.md</affectedPath><affectedPath>algorithm/platoon/longitudinal_mpc.cpp</affectedPath><affectedPath>algorithm/platoon/longitudinal_mpc.hpp</affectedPath><commitId>0d27b36cc302441a7459936d3fbfd470973ec750</commitId><timestamp>1789045342000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>Merge MPC cycle stages into LongitudinalMpc
</comment><date>2026-09-10 21:02:22 +0800</date><id>0d27b36cc302441a7459936d3fbfd470973ec750</id><msg>Merge MPC cycle stages into LongitudinalMpc</msg><path><editType>edit</editType><file>algorithm/platoon/longitudinal_mpc.cpp</file></path><path><editType>edit</editType><file>algorithm/platoon/longitudinal_mpc.hpp</file></path><path><editType>edit</editType><file>docs/platoon/time_headway_mpc.md</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>ssep/keb_optimizer/cost_features/parking_geometric_curvature_constraint.h</affectedPath><affectedPath>ssep/test/CMakeLists.txt</affectedPath><affectedPath>ssep/offboard/ssep_planner_wrapper.cc</affectedPath><affectedPath>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</affectedPath><affectedPath>ssep/data_structures/ssep_input.cc</affectedPath><affectedPath>tasks/deciders/search_decider/forward_search_decider.cpp</affectedPath><affectedPath>ssep/keb_optimizer/keb_problem.cc</affectedPath><affectedPath>ssep/maps/ogm_builder.cc</affectedPath><affectedPath>Testing/search_decider_lifecycle_test.cpp</affectedPath><affectedPath>config/config_truck/ssep_port_scenarios_jinxi.yaml</affectedPath><affectedPath>ssep/keb_optimizer/tractor_trailer_keb_optimizer.h</affectedPath><affectedPath>data/ssep/ssep_ec.hpp</affectedPath><affectedPath>ssep/test/parking_collision_provenance_test.cc</affectedPath><affectedPath>ssep/keb_optimizer/cost_features/tractor_trailer_kinematic_constraint.h</affectedPath><affectedPath>ssep/scenarios/tractor_trailer_parking_curvature.h</affectedPath><affectedPath>ssep/scenarios/tractor_trailer_parking_collision.h</affectedPath><affectedPath>ssep/scenarios/tractor_trailer_parking_maneuver.h</affectedPath><affectedPath>data/ssep/forward_ec.cpp</affectedPath><affectedPath>ssep/maps/ogm.h</affectedPath><affectedPath>ssep/scenarios/scenario_planner_factory.h</affectedPath><affectedPath>ssep/maps/ogm.cc</affectedPath><affectedPath>docs/ssep_scenario_config_lifecycle.md</affectedPath><affectedPath>ssep/test/ssep_planner_test.cc</affectedPath><affectedPath>ssep/keb_optimizer/tractor_trailer_keb_optimizer.cc</affectedPath><affectedPath>ssep/coarse_search/bidirectional_hybrid_astar_search_engine.cc</affectedPath><affectedPath>ssep/coarse_search/bidirectional_hybrid_astar_search_engine.h</affectedPath><affectedPath>ssep/keb_optimizer/keb_problem.h</affectedPath><affectedPath>ssep/coarse_search/searcher_builders/tractor_trailer_single_segment_parking_searcher_builder.cc</affectedPath><affectedPath>ssep/scenarios/tractor_trailer_reverse_priority_parking_planner.h</affectedPath><affectedPath>ssep/ssep_planner.cc</affectedPath><affectedPath>ssep/coarse_search/searcher_builders/tractor_trailer_single_segment_parking_searcher_builder.h</affectedPath><affectedPath>Testing/ssep_scenario_config_lifecycle_test.cpp</affectedPath><commitId>d75778feffec805a3ef4323aede4f58cb33feed9</commitId><timestamp>1789095167000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>feat: 新增可配置的倒车优先拖挂停车策略

通过 ReversePriority 显式启用独立搜索器和规划器，修复假途经点、零米及短距离拉直、短路径起点偏移。
首轮允许双向搜索且不限制前进调整次数，换向代价逐次翻倍，按累计代价和换向次数进行支配剪枝。
保持用户倒车曲率限制，加强优化几何约束，并在输出前检查完整车头和挂车的连续扫掠碰撞。
区分原始线段、独立栅格占用和 access 清除语义，保留旧场景默认行为。

验证：56 项 C++ 测试通过，pnc_node 和离线回放程序构建通过，两份现场及短距离回放通过。
</comment><date>2026-09-11 10:52:47 +0800</date><id>d75778feffec805a3ef4323aede4f58cb33feed9</id><msg>feat: 新增可配置的倒车优先拖挂停车策略</msg><path><editType>edit</editType><file>ssep/keb_optimizer/keb_problem.cc</file></path><path><editType>add</editType><file>ssep/scenarios/tractor_trailer_parking_collision.h</file></path><path><editType>edit</editType><file>tasks/deciders/search_decider/forward_search_decider.cpp</file></path><path><editType>edit</editType><file>ssep/maps/ogm.cc</file></path><path><editType>edit</editType><file>Testing/ssep_scenario_config_lifecycle_test.cpp</file></path><path><editType>edit</editType><file>ssep/data_structures/ssep_input.cc</file></path><path><editType>edit</editType><file>ssep/keb_optimizer/tractor_trailer_keb_optimizer.h</file></path><path><editType>add</editType><file>ssep/scenarios/tractor_trailer_parking_curvature.h</file></path><path><editType>add</editType><file>ssep/scenarios/tractor_trailer_parking_maneuver.h</file></path><path><editType>edit</editType><file>Testing/search_decider_lifecycle_test.cpp</file></path><path><editType>edit</editType><file>ssep/maps/ogm_builder.cc</file></path><path><editType>add</editType><file>ssep/coarse_search/searcher_builders/tractor_trailer_single_segment_parking_searcher_builder.h</file></path><path><editType>edit</editType><file>ssep/coarse_search/bidirectional_hybrid_astar_search_engine.h</file></path><path><editType>edit</editType><file>data/ssep/forward_ec.cpp</file></path><path><editType>edit</editType><file>ssep/keb_optimizer/keb_problem.h</file></path><path><editType>edit</editType><file>ssep/ssep_planner.cc</file></path><path><editType>add</editType><file>ssep/keb_optimizer/cost_features/parking_geometric_curvature_constraint.h</file></path><path><editType>add</editType><file>ssep/test/parking_collision_provenance_test.cc</file></path><path><editType>add</editType><file>config/config_truck/ssep_port_scenarios_jinxi.yaml</file></path><path><editType>edit</editType><file>ssep/test/ssep_planner_test.cc</file></path><path><editType>edit</editType><file>ssep/keb_optimizer/cost_features/tractor_trailer_kinematic_constraint.h</file></path><path><editType>edit</editType><file>ssep/offboard/ssep_planner_wrapper.cc</file></path><path><editType>edit</editType><file>ssep/scenarios/scenario_planner_factory.h</file></path><path><editType>add</editType><file>ssep/coarse_search/searcher_builders/tractor_trailer_single_segment_parking_searcher_builder.cc</file></path><path><editType>edit</editType><file>ssep/maps/ogm.h</file></path><path><editType>edit</editType><file>docs/ssep_scenario_config_lifecycle.md</file></path><path><editType>edit</editType><file>ssep/keb_optimizer/tractor_trailer_keb_optimizer.cc</file></path><path><editType>add</editType><file>ssep/scenarios/tractor_trailer_reverse_priority_parking_planner.h</file></path><path><editType>edit</editType><file>data/ssep/ssep_ec.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</file></path><path><editType>edit</editType><file>ssep/test/CMakeLists.txt</file></path><path><editType>edit</editType><file>ssep/coarse_search/bidirectional_hybrid_astar_search_engine.cc</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>ssep/test/local_regression/parking_collision_quality.py</affectedPath><affectedPath>ssep/test/local_regression/README.md</affectedPath><affectedPath>docs/ssep_jinxi_20260911_parking.md</affectedPath><affectedPath>ssep/test/local_regression/tt_parking_quality.py</affectedPath><affectedPath>ssep/test/local_regression/run_tt_single_parking_case.py</affectedPath><affectedPath>ssep/test/local_regression/run_ssep_regression.py</affectedPath><affectedPath>ssep/test/local_regression/tt_reverse_priority_manifest.tsv</affectedPath><affectedPath>ssep/test/local_regression/tt_reverse_priority_tail0_quality.json</affectedPath><affectedPath>ssep/test/local_regression/tt_reverse_priority_tail1_quality.json</affectedPath><affectedPath>ssep/test/local_regression/test_parking_maneuver.py</affectedPath><affectedPath>ssep/test/local_regression/test_parking_geometric_curvature.py</affectedPath><affectedPath>ssep/test/local_regression/tt_reverse_priority_cases.json</affectedPath><affectedPath>ssep/test/local_regression/test_parking_collision_quality.py</affectedPath><affectedPath>ssep/test/local_regression/test_tt_parking_regression.py</affectedPath><commitId>f33a41d5c3a2946198b43893290ca8246a18ea2e</commitId><timestamp>1789095192000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>test: 收录金玺拖挂停车场景并完善物理质量回归

将两份现场记录和两个短距离合成场景登记为正式回归清单，按共享数据目录保存原始文件及 SHA-256 来源记录。
扩展统一运行器，显式应用场景参数且保持源数据不变，支持不限路径段数的 TT 停车验收。
独立检查运动方向、起终点两航向、曲率及完整车身扫掠碰撞，修复近直线微小转角的数值退化。
增加参数覆盖、源文件校验、异常输出和旧运行器兼容性测试，并记录运行方式。

验证：全部 50 项 Python 测试及统一清单 4 个场景回放通过，归档文件 SHA-256 前后保持一致。
</comment><date>2026-09-11 10:53:12 +0800</date><id>f33a41d5c3a2946198b43893290ca8246a18ea2e</id><msg>test: 收录金玺拖挂停车场景并完善物理质量回归</msg><path><editType>add</editType><file>docs/ssep_jinxi_20260911_parking.md</file></path><path><editType>add</editType><file>ssep/test/local_regression/test_parking_collision_quality.py</file></path><path><editType>add</editType><file>ssep/test/local_regression/tt_reverse_priority_manifest.tsv</file></path><path><editType>edit</editType><file>ssep/test/local_regression/run_ssep_regression.py</file></path><path><editType>edit</editType><file>ssep/test/local_regression/README.md</file></path><path><editType>add</editType><file>ssep/test/local_regression/test_parking_maneuver.py</file></path><path><editType>add</editType><file>ssep/test/local_regression/tt_reverse_priority_cases.json</file></path><path><editType>add</editType><file>ssep/test/local_regression/tt_reverse_priority_tail0_quality.json</file></path><path><editType>add</editType><file>ssep/test/local_regression/test_tt_parking_regression.py</file></path><path><editType>add</editType><file>ssep/test/local_regression/run_tt_single_parking_case.py</file></path><path><editType>add</editType><file>ssep/test/local_regression/parking_collision_quality.py</file></path><path><editType>add</editType><file>ssep/test/local_regression/tt_parking_quality.py</file></path><path><editType>add</editType><file>ssep/test/local_regression/tt_reverse_priority_tail1_quality.json</file></path><path><editType>add</editType><file>ssep/test/local_regression/test_parking_geometric_curvature.py</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>algorithm/platoon/platoon_qp_polish.hpp</affectedPath><affectedPath>algorithm/lattice/platoon_trajectory1d_generator.hpp</affectedPath><affectedPath>algorithm/platoon/mpc/platoon_qp_polish.hpp</affectedPath><affectedPath>CMakeLists.txt</affectedPath><affectedPath>algorithm/platoon/qp_solver.hpp</affectedPath><affectedPath>algorithm/platoon/platoon_response_safety.cpp</affectedPath><affectedPath>algorithm/platoon/qp_solver.cpp</affectedPath><affectedPath>docs/platoon/time_headway_mpc.md</affectedPath><affectedPath>algorithm/platoon/mpc/platoon_response.hpp</affectedPath><affectedPath>algorithm/platoon/command_history.hpp</affectedPath><affectedPath>algorithm/platoon/mpc/qp_solver.cpp</affectedPath><affectedPath>algorithm/platoon/mpc/longitudinal_mpc.cpp</affectedPath><affectedPath>Testing/platoon_qp_solver_test.cpp</affectedPath><affectedPath>algorithm/platoon/mpc/command_history.hpp</affectedPath><affectedPath>algorithm/platoon/platoon_response_safety.hpp</affectedPath><affectedPath>algorithm/platoon/mpc/qp_solver.hpp</affectedPath><affectedPath>algorithm/platoon/curve_kinematics.hpp</affectedPath><affectedPath>algorithm/platoon/mpc/mpc_config.hpp</affectedPath><affectedPath>algorithm/platoon/longitudinal_mpc.cpp</affectedPath><affectedPath>algorithm/platoon/mpc/platoon_response_safety.cpp</affectedPath><affectedPath>Testing/platoon_mpc_core_test.cpp</affectedPath><affectedPath>algorithm/platoon/mpc_config.hpp</affectedPath><affectedPath>algorithm/platoon/mpc/longitudinal_mpc.hpp</affectedPath><affectedPath>algorithm/platoon/mpc/platoon_response_safety.hpp</affectedPath><affectedPath>algorithm/lattice/lattice.cpp</affectedPath><affectedPath>Testing/platoon_response_test.cpp</affectedPath><affectedPath>algorithm/platoon/longitudinal_mpc.hpp</affectedPath><affectedPath>algorithm/platoon/platoon_response.hpp</affectedPath><commitId>305301f0c49544be3a54b31813341cc713c933e7</commitId><timestamp>1789095814000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>Group platoon MPC implementation under mpc directory
</comment><date>2026-09-11 11:03:34 +0800</date><id>305301f0c49544be3a54b31813341cc713c933e7</id><msg>Group platoon MPC implementation under mpc directory</msg><path><editType>delete</editType><file>algorithm/platoon/platoon_response_safety.cpp</file></path><path><editType>add</editType><file>algorithm/platoon/mpc/mpc_config.hpp</file></path><path><editType>delete</editType><file>algorithm/platoon/longitudinal_mpc.hpp</file></path><path><editType>add</editType><file>algorithm/platoon/mpc/command_history.hpp</file></path><path><editType>edit</editType><file>algorithm/lattice/platoon_trajectory1d_generator.hpp</file></path><path><editType>edit</editType><file>algorithm/lattice/lattice.cpp</file></path><path><editType>add</editType><file>algorithm/platoon/mpc/platoon_response_safety.cpp</file></path><path><editType>delete</editType><file>algorithm/platoon/platoon_response_safety.hpp</file></path><path><editType>add</editType><file>algorithm/platoon/mpc/qp_solver.hpp</file></path><path><editType>edit</editType><file>Testing/platoon_response_test.cpp</file></path><path><editType>add</editType><file>algorithm/platoon/mpc/platoon_response_safety.hpp</file></path><path><editType>delete</editType><file>algorithm/platoon/qp_solver.hpp</file></path><path><editType>edit</editType><file>Testing/platoon_mpc_core_test.cpp</file></path><path><editType>add</editType><file>algorithm/platoon/mpc/platoon_response.hpp</file></path><path><editType>delete</editType><file>algorithm/platoon/qp_solver.cpp</file></path><path><editType>delete</editType><file>algorithm/platoon/command_history.hpp</file></path><path><editType>add</editType><file>algorithm/platoon/mpc/longitudinal_mpc.cpp</file></path><path><editType>delete</editType><file>algorithm/platoon/mpc_config.hpp</file></path><path><editType>edit</editType><file>algorithm/platoon/curve_kinematics.hpp</file></path><path><editType>add</editType><file>algorithm/platoon/mpc/qp_solver.cpp</file></path><path><editType>edit</editType><file>CMakeLists.txt</file></path><path><editType>add</editType><file>algorithm/platoon/mpc/longitudinal_mpc.hpp</file></path><path><editType>add</editType><file>algorithm/platoon/mpc/platoon_qp_polish.hpp</file></path><path><editType>delete</editType><file>algorithm/platoon/platoon_response.hpp</file></path><path><editType>edit</editType><file>Testing/platoon_qp_solver_test.cpp</file></path><path><editType>delete</editType><file>algorithm/platoon/longitudinal_mpc.cpp</file></path><path><editType>edit</editType><file>docs/platoon/time_headway_mpc.md</file></path><path><editType>delete</editType><file>algorithm/platoon/platoon_qp_polish.hpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>sink/ros_sink_trajectory.cpp</affectedPath><commitId>1971b35c269c36f285a9ec802041eaf02ae39800</commitId><timestamp>1789105499000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/liuhongshuo</absoluteUrl><fullName>liuhongshuo</fullName></author><authorEmail>liuhongshuo</authorEmail><comment>fix: 规划帧时间被发布时刻替换问题
</comment><date>2026-09-11 13:44:59 +0800</date><id>1971b35c269c36f285a9ec802041eaf02ae39800</id><msg>fix: 规划帧时间被发布时刻替换问题</msg><path><editType>edit</editType><file>sink/ros_sink_trajectory.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>replayer/scene_data/generated/compact_scene_descriptor.pb</affectedPath><affectedPath>replayer/scene_data/generated/full_custom_codec_coverage_audit.yaml</affectedPath><affectedPath>proto/config.proto</affectedPath><affectedPath>plan/prepare/prepare_status.cpp</affectedPath><affectedPath>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</affectedPath><affectedPath>replayer/scene_data/generated/compact_typed_field_codec.cpp</affectedPath><affectedPath>replayer/scene_data/config_proto_codec.cpp</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_decoder.cpp</affectedPath><affectedPath>config/config_imv/plan.yaml</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_decoder.hpp</affectedPath><affectedPath>data/config/cfg_safe_const.hpp</affectedPath><affectedPath>replayer/scene_data/generated/config_schema_inputs.json</affectedPath><affectedPath>replayer/scene_data/generated/compact_typed_field_codec.hpp</affectedPath><affectedPath>data/config/cfg_safe_const.cpp</affectedPath><affectedPath>Testing/scene_replay_foundation_test.cpp</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_encoder.cpp</affectedPath><affectedPath>replayer/scene_data/generated/scene_replay_api_descriptor.pb</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_descriptor.pb</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_encoder.hpp</affectedPath><commitId>12bb70597490c8c5d24c3fa732b290224948b355</commitId><timestamp>1789106395000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>feat: 支持配置低安全阈值区域前后余量

低安全阈值区域交集判定默认向车头前方扩展 5 米、车尾后方扩展 0.5 米，支持独立 ROS 参数配置，负值按 0 使用。

同步 Full 与 Compact 配置合同、编解码和生成产物，确保 Recorded 与 Candidate 回放恢复相同余量；补充默认值与非默认值回放测试。

验证：工程任务入口编译通过，生成物及 Proto 兼容性检查通过；回放基础测试合计 241 项通过，1 项因缺少可选 bag 跳过。
</comment><date>2026-09-11 13:59:55 +0800</date><id>12bb70597490c8c5d24c3fa732b290224948b355</id><msg>feat: 支持配置低安全阈值区域前后余量</msg><path><editType>edit</editType><file>replayer/scene_data/generated/full_custom_codec_coverage_audit.yaml</file></path><path><editType>edit</editType><file>data/config/cfg_safe_const.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/config_schema_inputs.json</file></path><path><editType>edit</editType><file>data/config/cfg_safe_const.hpp</file></path><path><editType>edit</editType><file>Testing/scene_replay_foundation_test.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_descriptor.pb</file></path><path><editType>edit</editType><file>config/config_imv/plan.yaml</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_decoder.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_encoder.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/scene_replay_api_descriptor.pb</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/compact_typed_field_codec.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/compact_typed_field_codec.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/config_proto_codec.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_decoder.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/compact_scene_descriptor.pb</file></path><path><editType>edit</editType><file>plan/prepare/prepare_status.cpp</file></path><path><editType>edit</editType><file>proto/config.proto</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_encoder.hpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>data/app/fsm/task_fsm/task_fsm.cpp</affectedPath><commitId>b413d88eaddcf42f4cfa888ec9f8a63298a0728e</commitId><timestamp>1789106523000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 允许无途径点的充电任务从行驶进入对准

Travel2Align 不再无条件排除 TO_CHARGE；充电任务存在 parking 或 bulk 途径点时继续禁止进入，均不存在时按原有目标有效性、对准距离等条件判断。

验证：通过工程 task 指定的 pnc-build.sh 构建 pnc_node，暂存 diff 检查通过。
</comment><date>2026-09-11 14:02:03 +0800</date><id>b413d88eaddcf42f4cfa888ec9f8a63298a0728e</id><msg>fix: 允许无途径点的充电任务从行驶进入对准</msg><path><editType>edit</editType><file>data/app/fsm/task_fsm/task_fsm.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>data/scenario/scenario_planner_condition.hpp</affectedPath><affectedPath>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</affectedPath><affectedPath>Testing/scenario_search_exit_test.cpp</affectedPath><affectedPath>data/scenario/scenario_planner_action.cpp</affectedPath><affectedPath>data/scenario/scenario_planner_condition.cpp</affectedPath><affectedPath>CMakeLists.txt</affectedPath><commitId>35ddf42fe25dd19dac7c4200f2e72eab9db6f83c</commitId><timestamp>1789115129000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 修复禁搜路口及重搜等待期间的场景退出

搜索场景退出与入口共用准入判断，目标禁搜时保留旧路径收尾，
同类型区域也检查搜索终点、偏离及路径失效条件。

重搜清空原始路径后，使用有效活动缓存或已下发路径判断退出，
保留结果消费和失败回退机会，避免引用更早路口的备份终点。
补充岸边路径结构与规划器切换校验，并刷新头文件审计指纹。

新增 102 个场景退出回归用例；完整回归目标 241 项通过、
13 项按条件跳过，pnc_node 构建通过。
</comment><date>2026-09-11 16:25:29 +0800</date><id>35ddf42fe25dd19dac7c4200f2e72eab9db6f83c</id><msg>fix: 修复禁搜路口及重搜等待期间的场景退出</msg><path><editType>edit</editType><file>data/scenario/scenario_planner_action.cpp</file></path><path><editType>edit</editType><file>data/scenario/scenario_planner_condition.cpp</file></path><path><editType>add</editType><file>Testing/scenario_search_exit_test.cpp</file></path><path><editType>edit</editType><file>data/scenario/scenario_planner_condition.hpp</file></path><path><editType>edit</editType><file>CMakeLists.txt</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>CMakeLists.txt</affectedPath><affectedPath>Testing/continuous_junction_replan_test.cpp</affectedPath><affectedPath>tasks/deciders/other_decider/replan_decider.cpp</affectedPath><commitId>4b80487e9d0b1e2727a74894101e6d7e6f17e245</commitId><timestamp>1789115144000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 禁止禁搜目标触发连续路口自动重搜

普通及桥梁连续路口重搜复用搜索准入条件，在冷却判断前
拦截禁搜目标的自动请求，避免地图变化等后续判定绕过。
保留正在执行的重搜上下文、活动路径及人工重搜语义。

新增 17 个回归用例，覆盖禁搜路口配置、功能开关、冷却残留、
地图变化绕过和活动路径保持。完整回归目标 241 项通过、
13 项按条件跳过，pnc_node 构建通过。
</comment><date>2026-09-11 16:25:44 +0800</date><id>4b80487e9d0b1e2727a74894101e6d7e6f17e245</id><msg>fix: 禁止禁搜目标触发连续路口自动重搜</msg><path><editType>add</editType><file>Testing/continuous_junction_replan_test.cpp</file></path><path><editType>edit</editType><file>tasks/deciders/other_decider/replan_decider.cpp</file></path><path><editType>edit</editType><file>CMakeLists.txt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>plan/prepare/prepare_objs.cpp</affectedPath><affectedPath>plan/prepare/prepare_objs.hpp</affectedPath><affectedPath>Testing/crane_lane_policy_test.cpp</affectedPath><affectedPath>CMakeLists.txt</affectedPath><commitId>278505d8b8fa6b93f61a18676976cbecddff8859</commitId><timestamp>1789117564000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 非最右侧车道缩小龙门吊判断阈值

使用上一帧 PNC local 已匹配的 section 和 current_idx 判断车辆
是否处于最右侧车道，不再进行实时车道匹配。
同侧龙门吊在车辆处于内侧车道时缩小阈值；保留逆向一侧及
特殊区域的原有缩阈值规则，多项条件命中只扣减一次。

每帧复用车道判断结果和历史车道列表，补充桥腿轮廓及地图数据
缺失时的防御检查。新增基于 PNC local section 的回归测试，
覆盖车道索引边界、前后帧车道差异、逆向及重复扣减条件。

验证：20 项龙门吊阈值回归测试全部通过，pnc_node 构建通过。
</comment><date>2026-09-11 17:06:04 +0800</date><id>278505d8b8fa6b93f61a18676976cbecddff8859</id><msg>fix: 非最右侧车道缩小龙门吊判断阈值</msg><path><editType>edit</editType><file>CMakeLists.txt</file></path><path><editType>add</editType><file>Testing/crane_lane_policy_test.cpp</file></path><path><editType>edit</editType><file>plan/prepare/prepare_objs.cpp</file></path><path><editType>edit</editType><file>plan/prepare/prepare_objs.hpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>replayer/scene_data/remaining_plan_proto_codec.cpp</affectedPath><affectedPath>replayer/scene_data/live_compact_ingress.cpp</affectedPath><affectedPath>replayer/sdk/planframe_compat.hpp</affectedPath><affectedPath>replayer/scene_data/pnc_map_decode_scope.hpp</affectedPath><affectedPath>Testing/planframe_compat_test.cpp</affectedPath><affectedPath>replayer/sdk/planframe_compat.cpp</affectedPath><commitId>771e5d3b0bc2e22b93f582ca535bb211e4aa132b</commitId><timestamp>1789368459000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 兼容不同来源版本的快照显示

为远望新增 Recorded 显示策略，解除输入 PNC 版本和提交号与 SDK 构建身份的硬绑定，仍按实际 schema 和 encoding 选择解码器并检查数据完整性。

沿用当前地图解析，允许显示阶段保留无法匹配的历史车道引用；重建失败时从原始 Proto 重新解码记录数据，避免输出部分重建帧。来源或 anchor 上下文变化时重置历史，并保持 Candidate 与严格地图校验隔离。

验证：SDK 与远望构建通过，18 项 SDK 测试通过；本地链路覆盖来源差异、地图差异、失效车道和字段增删。
</comment><date>2026-09-14 14:47:39 +0800</date><id>771e5d3b0bc2e22b93f582ca535bb211e4aa132b</id><msg>fix: 兼容不同来源版本的快照显示</msg><path><editType>add</editType><file>replayer/scene_data/pnc_map_decode_scope.hpp</file></path><path><editType>edit</editType><file>replayer/sdk/planframe_compat.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/remaining_plan_proto_codec.cpp</file></path><path><editType>edit</editType><file>replayer/sdk/planframe_compat.cpp</file></path><path><editType>edit</editType><file>Testing/planframe_compat_test.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/live_compact_ingress.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>tools/pnc_proto_mapper/generate_plan_frame_persistence_catalog.py</affectedPath><affectedPath>docs/pnc_algorithm_replay/proto_generation.md</affectedPath><affectedPath>docs/pnc_algorithm_replay/plan_frame_persistence_catalog.md</affectedPath><affectedPath>docs/pnc_algorithm_replay/plan_frame_field_workflow.md</affectedPath><commitId>5cb8bd106e64e63319a6df43fd84c06e068d4604</commitId><timestamp>1789368459000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>docs: 固化正式 Proto 基线的字段增删兼容规则

以 schema 1 / encoding 3 为正式上线基线，在文档生成器中固定兼容约束并同步生成目录和字段变更流程。

明确字段号不可复用、删除需 reserved、新增须定义缺省行为，禁止原地更改类型、单位、坐标系和语义；区分快照显示兼容与 native ABI、Candidate 合同。开发期 encoding 2 不纳入范围。

验证：生成器一致性检查及 2 项生成测试通过。
</comment><date>2026-09-14 14:47:39 +0800</date><id>5cb8bd106e64e63319a6df43fd84c06e068d4604</id><msg>docs: 固化正式 Proto 基线的字段增删兼容规则</msg><path><editType>edit</editType><file>docs/pnc_algorithm_replay/plan_frame_persistence_catalog.md</file></path><path><editType>edit</editType><file>docs/pnc_algorithm_replay/proto_generation.md</file></path><path><editType>edit</editType><file>docs/pnc_algorithm_replay/plan_frame_field_workflow.md</file></path><path><editType>edit</editType><file>tools/pnc_proto_mapper/generate_plan_frame_persistence_catalog.py</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>data/plan/switch_data.hpp</affectedPath><affectedPath>tasks/deciders/lat_decider/switching_bounds_decider.cpp</affectedPath><affectedPath>data/scenario/scenario_planner_action.cpp</affectedPath><affectedPath>data/plan/switch_data.cpp</affectedPath><affectedPath>Testing/platoon_lane_change_collision_test.cpp</affectedPath><affectedPath>data/platoon/platoon_info.hpp</affectedPath><affectedPath>data/platoon/platoon_info.cpp</affectedPath><affectedPath>CMakeLists.txt</affectedPath><affectedPath>algorithm/platoon/platoon_leader_predictor.hpp</affectedPath><affectedPath>data/config/cfg_platoon.cpp</affectedPath><affectedPath>data/lattice/path_time_graph.hpp</affectedPath><affectedPath>sink/ros_sink_platoon_lane_change.hpp</affectedPath><affectedPath>algorithm/platoon/platoon_leader_predictor.cpp</affectedPath><affectedPath>sink/ros_sink_platoon_lane_change.cpp</affectedPath><affectedPath>data/config/cfg_platoon.hpp</affectedPath><affectedPath>docs/platoon/lane_change.md</affectedPath><affectedPath>plan/scenarios/prepare_scenario.cpp</affectedPath><affectedPath>Testing/platoon_lane_change_test.cpp</affectedPath><affectedPath>config/platoon.yaml</affectedPath><affectedPath>plan/prepare/prepare_platoon.cpp</affectedPath><affectedPath>sink/module.cpp</affectedPath><affectedPath>launch/pnc_test.launch.py</affectedPath><affectedPath>Testing/platoon_follow_target_builder_test.cpp</affectedPath><affectedPath>Testing/platoon_lane_change_test_peer.hpp</affectedPath><commitId>2b1fd33f571c66ae26ac740e7fd6e8ab5c30183f</commitId><timestamp>1789369803000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>feat(platoon): follow leader lane-change anchors
</comment><date>2026-09-14 15:10:03 +0800</date><id>2b1fd33f571c66ae26ac740e7fd6e8ab5c30183f</id><msg>feat(platoon): follow leader lane-change anchors</msg><path><editType>edit</editType><file>sink/module.cpp</file></path><path><editType>edit</editType><file>tasks/deciders/lat_decider/switching_bounds_decider.cpp</file></path><path><editType>edit</editType><file>data/platoon/platoon_info.cpp</file></path><path><editType>edit</editType><file>data/scenario/scenario_planner_action.cpp</file></path><path><editType>edit</editType><file>Testing/platoon_follow_target_builder_test.cpp</file></path><path><editType>edit</editType><file>data/config/cfg_platoon.cpp</file></path><path><editType>edit</editType><file>launch/pnc_test.launch.py</file></path><path><editType>edit</editType><file>algorithm/platoon/platoon_leader_predictor.cpp</file></path><path><editType>edit</editType><file>data/plan/switch_data.cpp</file></path><path><editType>add</editType><file>Testing/platoon_lane_change_test_peer.hpp</file></path><path><editType>edit</editType><file>plan/prepare/prepare_platoon.cpp</file></path><path><editType>edit</editType><file>data/lattice/path_time_graph.hpp</file></path><path><editType>add</editType><file>sink/ros_sink_platoon_lane_change.hpp</file></path><path><editType>edit</editType><file>algorithm/platoon/platoon_leader_predictor.hpp</file></path><path><editType>add</editType><file>sink/ros_sink_platoon_lane_change.cpp</file></path><path><editType>edit</editType><file>data/config/cfg_platoon.hpp</file></path><path><editType>edit</editType><file>data/plan/switch_data.hpp</file></path><path><editType>edit</editType><file>CMakeLists.txt</file></path><path><editType>add</editType><file>Testing/platoon_lane_change_test.cpp</file></path><path><editType>edit</editType><file>config/platoon.yaml</file></path><path><editType>edit</editType><file>data/platoon/platoon_info.hpp</file></path><path><editType>add</editType><file>docs/platoon/lane_change.md</file></path><path><editType>add</editType><file>Testing/platoon_lane_change_collision_test.cpp</file></path><path><editType>edit</editType><file>plan/scenarios/prepare_scenario.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>tasks/deciders/long_decider/constrain_decider.cpp</affectedPath><affectedPath>docs/platoon/lane_change.md</affectedPath><affectedPath>Testing/platoon_lane_change_collision_test.cpp</affectedPath><affectedPath>data/plan/switch_data.cpp</affectedPath><commitId>41d5a6d7891609dfdc014c4a1e3f32f235d668a3</commitId><timestamp>1789378928000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>debug(platoon): trace lane-change slowdown and exclude leader from acceptance checks
</comment><date>2026-09-14 17:42:08 +0800</date><id>41d5a6d7891609dfdc014c4a1e3f32f235d668a3</id><msg>debug(platoon): trace lane-change slowdown and exclude leader from acceptance checks</msg><path><editType>edit</editType><file>Testing/platoon_lane_change_collision_test.cpp</file></path><path><editType>edit</editType><file>docs/platoon/lane_change.md</file></path><path><editType>edit</editType><file>tasks/deciders/long_decider/constrain_decider.cpp</file></path><path><editType>edit</editType><file>data/plan/switch_data.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</affectedPath><affectedPath>Testing/jerk_limited_stop_test.cpp</affectedPath><affectedPath>data/lattice/longitudinal_curve_validator.hpp</affectedPath><commitId>6908e3236f394f2c8c3112d1482169148cf920f3</commitId><timestamp>1789383682000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 限制纵向候选校验采样量以防止规划长时间阻塞

对超过 10000 个采样点的候选在计算前整条拒绝，记录预算失败原因，并改用有界整数索引采样。拒绝非法采样步长，保留完整停车时域的动态约束检查。

补充超长滑行停车、采样预算边界、非法步长和极短曲线回归，补齐旧用例的有效采样配置，并刷新数据头文件审计哈希。

验证：pnc_node 编译通过，84 项纵向停车相关回归全部通过。此提交修复已确认的计算量风险，不代表洋浦 VV079 现场卡住根因已完全闭环。
</comment><date>2026-09-14 19:01:22 +0800</date><id>6908e3236f394f2c8c3112d1482169148cf920f3</id><msg>fix: 限制纵向候选校验采样量以防止规划长时间阻塞</msg><path><editType>edit</editType><file>Testing/jerk_limited_stop_test.cpp</file></path><path><editType>edit</editType><file>data/lattice/longitudinal_curve_validator.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>Testing/platoon_mpc_core_test.cpp</affectedPath><affectedPath>algorithm/platoon/mpc/longitudinal_mpc.hpp</affectedPath><affectedPath>algorithm/platoon/platoon_reference_smoother.hpp</affectedPath><affectedPath>data/plan/switch_data.cpp</affectedPath><affectedPath>Testing/platoon_lane_change_collision_test.cpp</affectedPath><affectedPath>tasks/deciders/long_decider/constrain_decider.cpp</affectedPath><affectedPath>algorithm/lattice/lattice.cpp</affectedPath><affectedPath>docs/platoon/lane_change.md</affectedPath><affectedPath>Testing/platoon_lane_change_test.cpp</affectedPath><affectedPath>algorithm/platoon/platoon_follow_target_builder.cpp</affectedPath><affectedPath>algorithm/platoon/mpc/qp_solver.cpp</affectedPath><affectedPath>data/common/path.cpp</affectedPath><affectedPath>algorithm/platoon/mpc/longitudinal_mpc.cpp</affectedPath><affectedPath>plan/prepare/prepare_platoon.cpp</affectedPath><affectedPath>Testing/platoon_qp_solver_test.cpp</affectedPath><affectedPath>data/plan/path_data.cpp</affectedPath><affectedPath>algorithm/platoon/mpc/qp_solver.hpp</affectedPath><affectedPath>Testing/platoon_follow_target_builder_test.cpp</affectedPath><affectedPath>Testing/platoon_lane_change_test_peer.hpp</affectedPath><commitId>0423ad64a4b577e7722f273fd79688e44b4e2a34</commitId><timestamp>1789437788000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>fix(platoon): stabilize lane-change tracking and braking MPC

Cover the final partial path interval and avoid duplicate resampled endpoints.
Preserve configured platoon lane-change speed caps through fallback and retain
leader identity during lane-change acceptance checks.

Keep warm starts and optimization updates forward-feasible, generate a bounded
continuation beyond accepted history, and stop reusing rejected full proposals.
Preserve stitched initial states, solver deadlines, and nonlinear safety checks.

Remove verbose trajectory, projection, and recurring slowdown/MPC trace dumps;
retain concise failure diagnostics. Add regression coverage and document
validation, including the outstanding recorded-reference required=inf failure.
</comment><date>2026-09-15 10:03:08 +0800</date><id>0423ad64a4b577e7722f273fd79688e44b4e2a34</id><msg>fix(platoon): stabilize lane-change tracking and braking MPC</msg><path><editType>edit</editType><file>algorithm/platoon/mpc/longitudinal_mpc.hpp</file></path><path><editType>edit</editType><file>algorithm/platoon/platoon_reference_smoother.hpp</file></path><path><editType>edit</editType><file>plan/prepare/prepare_platoon.cpp</file></path><path><editType>edit</editType><file>algorithm/lattice/lattice.cpp</file></path><path><editType>edit</editType><file>data/plan/switch_data.cpp</file></path><path><editType>edit</editType><file>Testing/platoon_qp_solver_test.cpp</file></path><path><editType>edit</editType><file>data/plan/path_data.cpp</file></path><path><editType>edit</editType><file>Testing/platoon_lane_change_collision_test.cpp</file></path><path><editType>edit</editType><file>Testing/platoon_follow_target_builder_test.cpp</file></path><path><editType>edit</editType><file>Testing/platoon_mpc_core_test.cpp</file></path><path><editType>edit</editType><file>docs/platoon/lane_change.md</file></path><path><editType>edit</editType><file>Testing/platoon_lane_change_test.cpp</file></path><path><editType>edit</editType><file>data/common/path.cpp</file></path><path><editType>edit</editType><file>algorithm/platoon/platoon_follow_target_builder.cpp</file></path><path><editType>edit</editType><file>algorithm/platoon/mpc/longitudinal_mpc.cpp</file></path><path><editType>edit</editType><file>tasks/deciders/long_decider/constrain_decider.cpp</file></path><path><editType>edit</editType><file>Testing/platoon_lane_change_test_peer.hpp</file></path><path><editType>edit</editType><file>algorithm/platoon/mpc/qp_solver.cpp</file></path><path><editType>edit</editType><file>algorithm/platoon/mpc/qp_solver.hpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>docs/platoon/bend_mpc_replay_results.csv</affectedPath><affectedPath>tools/platoon_mpc_replay.cpp</affectedPath><affectedPath>algorithm/lattice/platoon_trajectory1d_generator.hpp</affectedPath><affectedPath>algorithm/platoon/mpc/platoon_qp_polish.hpp</affectedPath><affectedPath>Testing/data/platoon_mpc/stationary_release.csv</affectedPath><affectedPath>CMakeLists.txt</affectedPath><affectedPath>docs/platoon/failure_csv.md</affectedPath><affectedPath>Testing/data/platoon_mpc/release_boundary.csv</affectedPath><affectedPath>algorithm/platoon/mpc/longitudinal_mpc.cpp</affectedPath><affectedPath>Testing/data/platoon_mpc/bend_entry.csv</affectedPath><affectedPath>tasks/plan/lattice_task.cpp</affectedPath><affectedPath>Testing/data/platoon_mpc/uncontrollable_limit.csv</affectedPath><affectedPath>Testing/data/platoon_mpc/bend_speed_limit.csv</affectedPath><affectedPath>Testing/platoon_mpc_core_test.cpp</affectedPath><affectedPath>algorithm/lattice/platoon_failure_csv.cpp</affectedPath><affectedPath>Testing/platoon_failure_csv_test.cpp</affectedPath><affectedPath>algorithm/platoon/mpc/longitudinal_mpc.hpp</affectedPath><affectedPath>Testing/data/platoon_mpc/leader_braking.csv</affectedPath><affectedPath>Testing/data/platoon_mpc/release_roundoff.csv</affectedPath><affectedPath>Testing/platoon_failure_case_test.cpp</affectedPath><affectedPath>Testing/data/platoon_mpc/insufficient_reserve.csv</affectedPath><affectedPath>algorithm/platoon/mpc/failure_case.cpp</affectedPath><affectedPath>algorithm/platoon/mpc/failure_case.hpp</affectedPath><affectedPath>algorithm/lattice/lattice.hpp</affectedPath><affectedPath>algorithm/lattice/platoon_trajectory1d_generator.cpp</affectedPath><affectedPath>algorithm/lattice/platoon_failure_csv.hpp</affectedPath><affectedPath>docs/platoon/bend_mpc_replay.md</affectedPath><commitId>0c94d6c281820d47727c0227f613484f1f175853</commitId><timestamp>1789448868000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>fix(platoon): stabilize MPC and record replayable failure CSVs
</comment><date>2026-09-15 13:07:48 +0800</date><id>0c94d6c281820d47727c0227f613484f1f175853</id><msg>fix(platoon): stabilize MPC and record replayable failure CSVs</msg><path><editType>add</editType><file>Testing/data/platoon_mpc/leader_braking.csv</file></path><path><editType>add</editType><file>tools/platoon_mpc_replay.cpp</file></path><path><editType>add</editType><file>docs/platoon/bend_mpc_replay_results.csv</file></path><path><editType>add</editType><file>Testing/platoon_failure_csv_test.cpp</file></path><path><editType>edit</editType><file>algorithm/lattice/platoon_trajectory1d_generator.hpp</file></path><path><editType>add</editType><file>Testing/data/platoon_mpc/bend_entry.csv</file></path><path><editType>add</editType><file>Testing/data/platoon_mpc/insufficient_reserve.csv</file></path><path><editType>add</editType><file>Testing/data/platoon_mpc/bend_speed_limit.csv</file></path><path><editType>edit</editType><file>algorithm/platoon/mpc/platoon_qp_polish.hpp</file></path><path><editType>add</editType><file>docs/platoon/bend_mpc_replay.md</file></path><path><editType>edit</editType><file>Testing/platoon_mpc_core_test.cpp</file></path><path><editType>add</editType><file>algorithm/lattice/platoon_failure_csv.cpp</file></path><path><editType>add</editType><file>Testing/data/platoon_mpc/stationary_release.csv</file></path><path><editType>add</editType><file>Testing/platoon_failure_case_test.cpp</file></path><path><editType>add</editType><file>Testing/data/platoon_mpc/uncontrollable_limit.csv</file></path><path><editType>add</editType><file>docs/platoon/failure_csv.md</file></path><path><editType>edit</editType><file>algorithm/lattice/platoon_trajectory1d_generator.cpp</file></path><path><editType>add</editType><file>Testing/data/platoon_mpc/release_roundoff.csv</file></path><path><editType>add</editType><file>Testing/data/platoon_mpc/release_boundary.csv</file></path><path><editType>add</editType><file>algorithm/lattice/platoon_failure_csv.hpp</file></path><path><editType>edit</editType><file>algorithm/platoon/mpc/longitudinal_mpc.hpp</file></path><path><editType>add</editType><file>algorithm/platoon/mpc/failure_case.hpp</file></path><path><editType>add</editType><file>algorithm/platoon/mpc/failure_case.cpp</file></path><path><editType>edit</editType><file>tasks/plan/lattice_task.cpp</file></path><path><editType>edit</editType><file>algorithm/platoon/mpc/longitudinal_mpc.cpp</file></path><path><editType>edit</editType><file>CMakeLists.txt</file></path><path><editType>edit</editType><file>algorithm/lattice/lattice.hpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>launch/pnc_leader.launch.py</affectedPath><commitId>f47ea47a12219065662c119cd7e2da63c9d8cfac</commitId><timestamp>1789451377000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>fix: set leader vehilce speed limit as 70km/h
</comment><date>2026-09-15 13:49:37 +0800</date><id>f47ea47a12219065662c119cd7e2da63c9d8cfac</id><msg>fix: set leader vehilce speed limit as 70km/h</msg><path><editType>edit</editType><file>launch/pnc_leader.launch.py</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>replayer/replayer_data_process/load_snap_data.cpp</affectedPath><affectedPath>Testing/load_snap_data_compat_test.cpp</affectedPath><commitId>638ea1300b20d655b3437e6444715cda33cba346</commitId><timestamp>1789452631000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 修复远望 Compact 快照 ZIP 加载失败

ZIP 入口优先使用 Compact 解码器，保留旧版 Boost/zlib 快照兼容。兼容有无填充的 Base64，校验 JSON 和编码格式，失败时清空已加载帧并记录帧序号及原因。

新增新旧格式 ZIP、序号间断、损坏数据及缺少锚点等回归用例。replayer 编译通过，9 项兼容性测试通过，T809 现场 ZIP 的 113 帧全部加载成功。
</comment><date>2026-09-15 14:10:31 +0800</date><id>638ea1300b20d655b3437e6444715cda33cba346</id><msg>fix: 修复远望 Compact 快照 ZIP 加载失败</msg><path><editType>edit</editType><file>Testing/load_snap_data_compat_test.cpp</file></path><path><editType>edit</editType><file>replayer/replayer_data_process/load_snap_data.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>docs/platoon/lane_change.md</affectedPath><affectedPath>data/plan/switch_data.cpp</affectedPath><affectedPath>Testing/platoon_lane_change_test_peer.hpp</affectedPath><affectedPath>Testing/platoon_lane_change_test.cpp</affectedPath><commitId>5aeffd335215cfaaa2bd6d6ad27334cf30e70c7e</commitId><timestamp>1789456990000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>fix(platoon): suppress autonomous lane changes while enabled
</comment><date>2026-09-15 15:23:10 +0800</date><id>5aeffd335215cfaaa2bd6d6ad27334cf30e70c7e</id><msg>fix(platoon): suppress autonomous lane changes while enabled</msg><path><editType>edit</editType><file>data/plan/switch_data.cpp</file></path><path><editType>edit</editType><file>docs/platoon/lane_change.md</file></path><path><editType>edit</editType><file>Testing/platoon_lane_change_test_peer.hpp</file></path><path><editType>edit</editType><file>Testing/platoon_lane_change_test.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>tools/platoon_mpc_replay.cpp</affectedPath><affectedPath>algorithm/platoon/mpc/platoon_qp_polish.hpp</affectedPath><affectedPath>algorithm/lattice/platoon_trajectory1d_generator.hpp</affectedPath><affectedPath>CMakeLists.txt</affectedPath><affectedPath>docs/platoon/failure_csv.md</affectedPath><affectedPath>data/config/cfg_platoon.cpp</affectedPath><affectedPath>docs/platoon/time_headway_mpc.md</affectedPath><affectedPath>Testing/platoon_test_safety.hpp</affectedPath><affectedPath>data/config/cfg_platoon.hpp</affectedPath><affectedPath>algorithm/platoon/mpc/platoon_response.hpp</affectedPath><affectedPath>Testing/platoon_lattice_test.cpp</affectedPath><affectedPath>algorithm/platoon/mpc/qp_solver.cpp</affectedPath><affectedPath>config/platoon.yaml</affectedPath><affectedPath>algorithm/platoon/mpc/longitudinal_mpc.cpp</affectedPath><affectedPath>Testing/platoon_qp_solver_test.cpp</affectedPath><affectedPath>algorithm/platoon/mpc/qp_solver.hpp</affectedPath><affectedPath>algorithm/platoon/mpc/mpc_config.hpp</affectedPath><affectedPath>Testing/platoon_safety_test.cpp</affectedPath><affectedPath>docs/platoon/linear_mpc_replay.md</affectedPath><affectedPath>Testing/platoon_mpc_core_test.cpp</affectedPath><affectedPath>algorithm/platoon/mpc/platoon_response_safety.cpp</affectedPath><affectedPath>Testing/platoon_failure_csv_test.cpp</affectedPath><affectedPath>algorithm/platoon/mpc/longitudinal_mpc.hpp</affectedPath><affectedPath>algorithm/platoon/mpc/platoon_response_safety.hpp</affectedPath><affectedPath>Testing/platoon_failure_case_test.cpp</affectedPath><affectedPath>algorithm/platoon/mpc/failure_case.cpp</affectedPath><affectedPath>docs/platoon/linear_mpc_latest_csv_verification.md</affectedPath><affectedPath>algorithm/lattice/lattice.cpp</affectedPath><affectedPath>algorithm/platoon/mpc/failure_case.hpp</affectedPath><affectedPath>docs/platoon/safety_fallback.md</affectedPath><affectedPath>algorithm/lattice/lattice.hpp</affectedPath><affectedPath>Testing/platoon_response_test.cpp</affectedPath><affectedPath>algorithm/lattice/platoon_trajectory1d_generator.cpp</affectedPath><affectedPath>docs/platoon/bend_mpc_replay.md</affectedPath><commitId>28c2e74cca8d10752f853b5211742747e5a77830</commitId><timestamp>1789463056000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>refactor(platoon): use linear MPC with frozen braking gap targets
</comment><date>2026-09-15 17:04:16 +0800</date><id>28c2e74cca8d10752f853b5211742747e5a77830</id><msg>refactor(platoon): use linear MPC with frozen braking gap targets</msg><path><editType>edit</editType><file>Testing/platoon_lattice_test.cpp</file></path><path><editType>edit</editType><file>Testing/platoon_qp_solver_test.cpp</file></path><path><editType>edit</editType><file>algorithm/platoon/mpc/failure_case.cpp</file></path><path><editType>edit</editType><file>Testing/platoon_response_test.cpp</file></path><path><editType>delete</editType><file>algorithm/platoon/mpc/platoon_response_safety.hpp</file></path><path><editType>edit</editType><file>docs/platoon/failure_csv.md</file></path><path><editType>edit</editType><file>data/config/cfg_platoon.cpp</file></path><path><editType>edit</editType><file>config/platoon.yaml</file></path><path><editType>edit</editType><file>Testing/platoon_test_safety.hpp</file></path><path><editType>add</editType><file>docs/platoon/linear_mpc_latest_csv_verification.md</file></path><path><editType>edit</editType><file>algorithm/platoon/mpc/mpc_config.hpp</file></path><path><editType>edit</editType><file>algorithm/platoon/mpc/platoon_qp_polish.hpp</file></path><path><editType>edit</editType><file>algorithm/platoon/mpc/qp_solver.cpp</file></path><path><editType>edit</editType><file>data/config/cfg_platoon.hpp</file></path><path><editType>add</editType><file>docs/platoon/linear_mpc_replay.md</file></path><path><editType>edit</editType><file>docs/platoon/bend_mpc_replay.md</file></path><path><editType>edit</editType><file>Testing/platoon_failure_case_test.cpp</file></path><path><editType>edit</editType><file>Testing/platoon_failure_csv_test.cpp</file></path><path><editType>edit</editType><file>algorithm/platoon/mpc/longitudinal_mpc.hpp</file></path><path><editType>edit</editType><file>CMakeLists.txt</file></path><path><editType>edit</editType><file>algorithm/platoon/mpc/platoon_response.hpp</file></path><path><editType>edit</editType><file>tools/platoon_mpc_replay.cpp</file></path><path><editType>edit</editType><file>Testing/platoon_mpc_core_test.cpp</file></path><path><editType>edit</editType><file>Testing/platoon_safety_test.cpp</file></path><path><editType>edit</editType><file>algorithm/lattice/platoon_trajectory1d_generator.hpp</file></path><path><editType>edit</editType><file>algorithm/platoon/mpc/longitudinal_mpc.cpp</file></path><path><editType>edit</editType><file>docs/platoon/safety_fallback.md</file></path><path><editType>edit</editType><file>algorithm/lattice/lattice.hpp</file></path><path><editType>edit</editType><file>docs/platoon/time_headway_mpc.md</file></path><path><editType>edit</editType><file>algorithm/lattice/lattice.cpp</file></path><path><editType>edit</editType><file>algorithm/lattice/platoon_trajectory1d_generator.cpp</file></path><path><editType>edit</editType><file>algorithm/platoon/mpc/failure_case.hpp</file></path><path><editType>delete</editType><file>algorithm/platoon/mpc/platoon_response_safety.cpp</file></path><path><editType>edit</editType><file>algorithm/platoon/mpc/qp_solver.hpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>tasks/deciders/search_decider/open_space_search_decider.cpp</affectedPath><commitId>c2d41c5955603b7b0fe01cb0b35576df1b0ea0bc</commitId><timestamp>1789465276000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/jiayifei</absoluteUrl><fullName>jiayifei</fullName></author><authorEmail>jiayifei@senior.auto</authorEmail><comment>fix：修复局部地图重建时导致的搜索失败次数误累计
</comment><date>2026-09-15 17:41:16 +0800</date><id>c2d41c5955603b7b0fe01cb0b35576df1b0ea0bc</id><msg>fix：修复局部地图重建时导致的搜索失败次数误累计</msg><path><editType>edit</editType><file>tasks/deciders/search_decider/open_space_search_decider.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>docs/platoon/linear_mpc_replay.md</affectedPath><affectedPath>Testing/platoon_mpc_core_test.cpp</affectedPath><affectedPath>Testing/platoon_failure_csv_test.cpp</affectedPath><affectedPath>Testing/data/platoon_mpc/live_delayed_speed_entry.csv</affectedPath><affectedPath>Testing/data/platoon_mpc/live_braking_release.csv</affectedPath><affectedPath>Testing/data/platoon_mpc/live_response_jerk.csv</affectedPath><affectedPath>docs/platoon/linear_mpc_latest_csv_verification.md</affectedPath><affectedPath>Testing/data/platoon_mpc/live_stop_boundary.csv</affectedPath><affectedPath>docs/platoon/time_headway_mpc.md</affectedPath><affectedPath>Testing/data/platoon_mpc/live_near_stop_release.csv</affectedPath><affectedPath>Testing/platoon_lattice_test.cpp</affectedPath><affectedPath>Testing/platoon_response_test.cpp</affectedPath><affectedPath>algorithm/platoon/mpc/longitudinal_mpc.cpp</affectedPath><commitId>d7d6aba19ef018ee18e0aa0baa488e5529fa8570</commitId><timestamp>1789465403000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>fix(platoon): recover inherited response and reserve stopping room
</comment><date>2026-09-15 17:43:23 +0800</date><id>d7d6aba19ef018ee18e0aa0baa488e5529fa8570</id><msg>fix(platoon): recover inherited response and reserve stopping room</msg><path><editType>edit</editType><file>Testing/platoon_lattice_test.cpp</file></path><path><editType>add</editType><file>Testing/data/platoon_mpc/live_near_stop_release.csv</file></path><path><editType>edit</editType><file>Testing/platoon_response_test.cpp</file></path><path><editType>edit</editType><file>docs/platoon/linear_mpc_replay.md</file></path><path><editType>add</editType><file>Testing/data/platoon_mpc/live_stop_boundary.csv</file></path><path><editType>add</editType><file>Testing/data/platoon_mpc/live_delayed_speed_entry.csv</file></path><path><editType>edit</editType><file>Testing/platoon_failure_csv_test.cpp</file></path><path><editType>add</editType><file>Testing/data/platoon_mpc/live_braking_release.csv</file></path><path><editType>add</editType><file>Testing/data/platoon_mpc/live_response_jerk.csv</file></path><path><editType>edit</editType><file>Testing/platoon_mpc_core_test.cpp</file></path><path><editType>edit</editType><file>docs/platoon/time_headway_mpc.md</file></path><path><editType>edit</editType><file>docs/platoon/linear_mpc_latest_csv_verification.md</file></path><path><editType>edit</editType><file>algorithm/platoon/mpc/longitudinal_mpc.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>Testing/data/platoon_mpc/issued_speed_ceiling_5.csv</affectedPath><affectedPath>Testing/data/platoon_mpc/issued_speed_ceiling_0.csv</affectedPath><affectedPath>Testing/platoon_mpc_core_test.cpp</affectedPath><affectedPath>Testing/platoon_failure_csv_test.cpp</affectedPath><affectedPath>algorithm/platoon/mpc/platoon_qp_polish.hpp</affectedPath><affectedPath>Testing/data/platoon_mpc/issued_speed_ceiling_3.csv</affectedPath><affectedPath>Testing/data/platoon_mpc/issued_speed_ceiling_1.csv</affectedPath><affectedPath>docs/platoon/time_headway_mpc.md</affectedPath><affectedPath>Testing/data/platoon_mpc/issued_speed_ceiling_4.csv</affectedPath><affectedPath>docs/platoon/issued_speed_ceiling_recovery.md</affectedPath><affectedPath>Testing/platoon_response_test.cpp</affectedPath><affectedPath>Testing/data/platoon_mpc/issued_speed_ceiling_2.csv</affectedPath><affectedPath>algorithm/platoon/mpc/longitudinal_mpc.cpp</affectedPath><commitId>a123f64089f3e5b0d9a8fcda0f7a38d3cd4206e0</commitId><timestamp>1789467246000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>fix(platoon): recover speed overshoot during input delay
</comment><date>2026-09-15 18:14:06 +0800</date><id>a123f64089f3e5b0d9a8fcda0f7a38d3cd4206e0</id><msg>fix(platoon): recover speed overshoot during input delay</msg><path><editType>add</editType><file>Testing/data/platoon_mpc/issued_speed_ceiling_2.csv</file></path><path><editType>add</editType><file>Testing/data/platoon_mpc/issued_speed_ceiling_5.csv</file></path><path><editType>edit</editType><file>algorithm/platoon/mpc/longitudinal_mpc.cpp</file></path><path><editType>add</editType><file>Testing/data/platoon_mpc/issued_speed_ceiling_1.csv</file></path><path><editType>edit</editType><file>docs/platoon/time_headway_mpc.md</file></path><path><editType>add</editType><file>Testing/data/platoon_mpc/issued_speed_ceiling_4.csv</file></path><path><editType>add</editType><file>Testing/data/platoon_mpc/issued_speed_ceiling_0.csv</file></path><path><editType>add</editType><file>docs/platoon/issued_speed_ceiling_recovery.md</file></path><path><editType>edit</editType><file>Testing/platoon_response_test.cpp</file></path><path><editType>edit</editType><file>Testing/platoon_mpc_core_test.cpp</file></path><path><editType>add</editType><file>Testing/data/platoon_mpc/issued_speed_ceiling_3.csv</file></path><path><editType>edit</editType><file>algorithm/platoon/mpc/platoon_qp_polish.hpp</file></path><path><editType>edit</editType><file>Testing/platoon_failure_csv_test.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>hmi/draw/draw_path.cpp</affectedPath><commitId>0196f15c47efea92947853dcc34dd65ee7858ef3</commitId><timestamp>1789468282000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>feat(hmi): display current and braking-adjusted platoon headway
</comment><date>2026-09-15 18:31:22 +0800</date><id>0196f15c47efea92947853dcc34dd65ee7858ef3</id><msg>feat(hmi): display current and braking-adjusted platoon headway</msg><path><editType>edit</editType><file>hmi/draw/draw_path.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>ssep/CMakeLists.txt</affectedPath><affectedPath>CMakeLists.txt</affectedPath><commitId>11ca02a8b8ff42c8e53f9f3d3f9df0cdc325868d</commitId><timestamp>1789470055000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 统一 Abseil 对象库编译依赖

通过导入目标向 PNC、回放及 SSEP 对象库传递 Abseil 头文件和编译要求，避免安装更新后头文件与链接库版本不一致。

验证：使用分布式编译成功构建 pnc_node 和 pnc_replayer。
</comment><date>2026-09-15 19:00:55 +0800</date><id>11ca02a8b8ff42c8e53f9f3d3f9df0cdc325868d</id><msg>fix: 统一 Abseil 对象库编译依赖</msg><path><editType>edit</editType><file>ssep/CMakeLists.txt</file></path><path><editType>edit</editType><file>CMakeLists.txt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>ssep/test/search_guide_loader_test.cc</affectedPath><affectedPath>tasks/plan/reversing_truck_path_task.cpp</affectedPath><affectedPath>ssep/param_loader/search_guide_loader.cc</affectedPath><affectedPath>ssep/data_structures/ssep_input.cc</affectedPath><affectedPath>CMakeLists.txt</affectedPath><affectedPath>tasks/plan/ssep_task.cpp</affectedPath><affectedPath>ssep/param_loader/search_guide_loader.h</affectedPath><affectedPath>data/vehicle/vehicle_destination.cpp</affectedPath><affectedPath>ssep/keb_optimizer/keb_problem.cc</affectedPath><affectedPath>ssep/maps/ogm_builder.cc</affectedPath><affectedPath>ssep/data_structures/search_via_point.h</affectedPath><affectedPath>ssep/offboard/servers/scene_vis_html_template.cc</affectedPath><affectedPath>data/ssep/ssep_ec.cpp</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_encoder.hpp</affectedPath><affectedPath>Testing/ssep_path_corridor_test.cpp</affectedPath><affectedPath>ssep/protos/params.proto</affectedPath><affectedPath>replayer/scene_data/generated/compact_scene_descriptor.pb</affectedPath><affectedPath>replayer/scene_data/cfg_scenarios_proto_codec.cpp</affectedPath><affectedPath>proto/pnc_scene/compact_plan_frame_fields.proto</affectedPath><affectedPath>replayer/scene_data/compact_numeric_policy.yaml</affectedPath><affectedPath>ssep/protos/scene.proto</affectedPath><affectedPath>ssep/keb_optimizer/tractor_trailer_keb_optimizer.cc</affectedPath><affectedPath>ssep/coarse_search/bidirectional_hybrid_astar_search_engine.cc</affectedPath><affectedPath>docs/pnc_algorithm_replay/plan_frame_field_workflow.md</affectedPath><affectedPath>ssep/keb_optimizer/keb_problem.h</affectedPath><affectedPath>replayer/scene_data/plan_frame_persistence_policy.yaml</affectedPath><affectedPath>ssep/coarse_search/bidirectional_hybrid_astar_search_engine.h</affectedPath><affectedPath>hmi/draw/draw_map.cpp</affectedPath><affectedPath>ssep/coarse_search/searcher_builders/tractor_trailer_single_segment_parking_searcher_builder.h</affectedPath><affectedPath>replayer/scene_data/compact_proto_codec.cpp</affectedPath><affectedPath>ssep/test/CMakeLists.txt</affectedPath><affectedPath>data/other/flow_control.cpp</affectedPath><affectedPath>ssep/offboard/ssep_planner_wrapper.cc</affectedPath><affectedPath>data/plan/ssep_data.hpp</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_decoder.cpp</affectedPath><affectedPath>tasks/deciders/search_decider/forward_search_decider.cpp</affectedPath><affectedPath>Testing/cfg_scenarios_proto_codec_test.cpp</affectedPath><affectedPath>replayer/algorithm_replay/generated/scenario_task_chains.json</affectedPath><affectedPath>docs/reverse_pickup_search.md</affectedPath><affectedPath>scenarios/bulkload_scenario/bulkload_move_forward_stage.cpp</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_field_roles.json</affectedPath><affectedPath>replayer/scene_data/generated/full_custom_codec_coverage_audit.yaml</affectedPath><affectedPath>ssep/common/utils/scene_frame_visualization.cc</affectedPath><affectedPath>data/app/reaction/app_reaction.cpp</affectedPath><affectedPath>ssep/offboard/scene_replay/replay_scene_frame_cli.cc</affectedPath><affectedPath>data/config/cfg_ssep.hpp</affectedPath><affectedPath>ssep/offboard/generate_scene_data/transform_to_body_frame_cli.cc</affectedPath><affectedPath>replayer/scene_data/config_proto_codec.hpp</affectedPath><affectedPath>data/plan/path_direction_data.cpp</affectedPath><affectedPath>ssep/maps/ogm_builder.h</affectedPath><affectedPath>ssep/data_structures/ssep_input.hpp</affectedPath><affectedPath>ssep/test/scene_replay_obstacle_inputs_test.cc</affectedPath><affectedPath>data/ssep/forward_ec.hpp</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_descriptor.pb</affectedPath><affectedPath>data/plan/ssep_data.cpp</affectedPath><affectedPath>data/app/fsm/task_fsm/task_park_fsm/park_fsm_transition/bulk_transition.cpp</affectedPath><affectedPath>ssep/coarse_search/motion_primitive_sampler/reeds_shepp_path.h</affectedPath><affectedPath>replayer/scene_replay/scene_replay_service.cpp</affectedPath><affectedPath>Testing/path_pair_validation_test.cpp</affectedPath><affectedPath>tasks/deciders/search_decider/forward_search_decider.hpp</affectedPath><affectedPath>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</affectedPath><affectedPath>ssep/param_loader/param.h</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_decoder.hpp</affectedPath><affectedPath>scenarios/bulkload_scenario/bulkload_ssep_forward_stage.cpp</affectedPath><affectedPath>Testing/routing_transition_test.cpp</affectedPath><affectedPath>config/config_truck/ssep_port_scenarios_jinxi.yaml</affectedPath><affectedPath>replayer/scene_data/generated/compact_typed_field_codec.hpp</affectedPath><affectedPath>config/config_truck/scenario.yaml</affectedPath><affectedPath>replayer/scene_data/compact_custom_field_proto_codec.cpp</affectedPath><affectedPath>ssep/coarse_search/evaluator/bidirectional_kinematic_heuristic_computer.h</affectedPath><affectedPath>data/other/reverse_pickup.cpp</affectedPath><affectedPath>data/ssep/ssep_activation.cpp</affectedPath><affectedPath>data/plan/path_data.cpp</affectedPath><affectedPath>Testing/reverse_pickup_stage_selector_test.cpp</affectedPath><affectedPath>proto/pnc_scene/compact_replay_input.proto</affectedPath><affectedPath>data/config/cfg_ssep.cpp</affectedPath><affectedPath>data/ssep/forward_ec.cpp</affectedPath><affectedPath>replayer/scene_data/config_proto_codec.cpp</affectedPath><affectedPath>data/config/cfg_stage.cpp</affectedPath><affectedPath>ssep/ssep_planner.h</affectedPath><affectedPath>ssep/CMakeLists.txt</affectedPath><affectedPath>ssep/data_structures/search_guide_match.h</affectedPath><affectedPath>ssep/data_structures/search_guide.h</affectedPath><affectedPath>ssep/scenarios/tractor_trailer_reverse_priority_parking_planner.h</affectedPath><affectedPath>ssep/coarse_search/searcher_builders/tractor_trailer_single_segment_parking_searcher_builder.cc</affectedPath><affectedPath>ssep/ssep_planner.cc</affectedPath><affectedPath>plan/pilot/pilot_update.cpp</affectedPath><affectedPath>proto/plan_data.proto</affectedPath><affectedPath>ssep/coarse_search/motion_primitive_sampler/reeds_shepp_path.cc</affectedPath><affectedPath>tasks/plan/ssep_task.hpp</affectedPath><affectedPath>scenarios/bulkload_scenario/bulkload_ssep_forward_stage.hpp</affectedPath><affectedPath>Testing/reverse_pickup_lifecycle_test.cpp</affectedPath><affectedPath>Testing/search_decider_lifecycle_test.cpp</affectedPath><affectedPath>data/app/fsm/task_fsm/task_fsm.cpp</affectedPath><affectedPath>Testing/scene_replay_foundation_test.cpp</affectedPath><affectedPath>ssep/keb_optimizer/tractor_trailer_keb_optimizer.h</affectedPath><affectedPath>data/other/reverse_pickup.hpp</affectedPath><affectedPath>data/app/fsm/task_command_type.hpp</affectedPath><affectedPath>replayer/scene_data/compact_custom_field_proto_codec.hpp</affectedPath><affectedPath>docs/pnc_algorithm_replay/plan_frame_persistence_catalog.md</affectedPath><affectedPath>replayer/scene_data/full_proto_custom_encoder.cpp</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_encoder.cpp</affectedPath><affectedPath>ssep/scenarios/ordered_search_via_validation.h</affectedPath><affectedPath>data/app/fsm/task_command_type.cpp</affectedPath><affectedPath>tasks/deciders/search_decider/search_decider_lifecycle.hpp</affectedPath><affectedPath>proto/config.proto</affectedPath><affectedPath>replayer/scene_data/generated/compact_typed_field_codec.cpp</affectedPath><affectedPath>ssep/scenarios/scenario_planner_factory.h</affectedPath><affectedPath>data/config/cfg_stage.hpp</affectedPath><affectedPath>ssep/test/ssep_planner_test.cc</affectedPath><affectedPath>config/config_truck/ssep_search_guides.yaml</affectedPath><affectedPath>tools/pnc_proto_mapper/generator.py</affectedPath><affectedPath>replayer/scene_data/plan_frame_field_roles.csv</affectedPath><affectedPath>replayer/scene_data/generated/scene_replay_api_descriptor.pb</affectedPath><affectedPath>ssep/offboard/main_test/main_ssep_input.cc</affectedPath><affectedPath>Testing/ssep_scenario_config_lifecycle_test.cpp</affectedPath><commitId>fa8231b1b6c9d51a1d5a9fce5b2a12231bf19aef</commitId><timestamp>1789470055000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>feat: 支持倒车接货顺序途经搜索与姿态约束

复用 ForwardEC 和 Bulk Stage，在任务终点停车后启动分段搜索，维护顺序途经点进度并支持换向及手动重搜索；保留 PARK_LOCK 的有效路径和引导线。

加入 YAML 搜索引导线、途经点可视化、车头及挂车姿态约束和 KEB 最终验收，优化首段预算与起始姿态适应能力。修复车挂路径配对失效、普通搜索结果发布及精确障碍物回放，补齐 Full/Compact 合同与配套测试。

验证：分布式构建 pnc_node、pnc_replayer 通过；任务与搜索生命周期测试通过；SSEP 搜索测试及现场场景回归通过。
</comment><date>2026-09-15 19:00:55 +0800</date><id>fa8231b1b6c9d51a1d5a9fce5b2a12231bf19aef</id><msg>feat: 支持倒车接货顺序途经搜索与姿态约束</msg><path><editType>add</editType><file>ssep/scenarios/ordered_search_via_validation.h</file></path><path><editType>add</editType><file>data/other/reverse_pickup.hpp</file></path><path><editType>edit</editType><file>data/ssep/forward_ec.hpp</file></path><path><editType>edit</editType><file>ssep/scenarios/tractor_trailer_reverse_priority_parking_planner.h</file></path><path><editType>edit</editType><file>ssep/CMakeLists.txt</file></path><path><editType>edit</editType><file>tasks/deciders/search_decider/forward_search_decider.hpp</file></path><path><editType>edit</editType><file>ssep/offboard/ssep_planner_wrapper.cc</file></path><path><editType>edit</editType><file>hmi/draw/draw_map.cpp</file></path><path><editType>edit</editType><file>tasks/plan/reversing_truck_path_task.cpp</file></path><path><editType>edit</editType><file>data/app/fsm/task_command_type.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/scene_replay_api_descriptor.pb</file></path><path><editType>edit</editType><file>tasks/deciders/search_decider/search_decider_lifecycle.hpp</file></path><path><editType>edit</editType><file>ssep/data_structures/ssep_input.cc</file></path><path><editType>edit</editType><file>ssep/test/ssep_planner_test.cc</file></path><path><editType>edit</editType><file>ssep/offboard/generate_scene_data/transform_to_body_frame_cli.cc</file></path><path><editType>add</editType><file>Testing/reverse_pickup_stage_selector_test.cpp</file></path><path><editType>edit</editType><file>data/plan/path_direction_data.cpp</file></path><path><editType>edit</editType><file>data/vehicle/vehicle_destination.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_descriptor.pb</file></path><path><editType>edit</editType><file>proto/pnc_scene/compact_replay_input.proto</file></path><path><editType>edit</editType><file>scenarios/bulkload_scenario/bulkload_ssep_forward_stage.cpp</file></path><path><editType>edit</editType><file>ssep/common/utils/scene_frame_visualization.cc</file></path><path><editType>edit</editType><file>data/app/fsm/task_fsm/task_fsm.cpp</file></path><path><editType>edit</editType><file>data/ssep/forward_ec.cpp</file></path><path><editType>edit</editType><file>docs/pnc_algorithm_replay/plan_frame_field_workflow.md</file></path><path><editType>edit</editType><file>ssep/coarse_search/motion_primitive_sampler/reeds_shepp_path.h</file></path><path><editType>edit</editType><file>ssep/ssep_planner.cc</file></path><path><editType>edit</editType><file>data/app/fsm/task_command_type.cpp</file></path><path><editType>edit</editType><file>tasks/plan/ssep_task.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_decoder.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/plan_frame_field_roles.csv</file></path><path><editType>edit</editType><file>config/config_truck/scenario.yaml</file></path><path><editType>edit</editType><file>tools/pnc_proto_mapper/generator.py</file></path><path><editType>add</editType><file>Testing/path_pair_validation_test.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/cfg_scenarios_proto_codec.cpp</file></path><path><editType>add</editType><file>ssep/data_structures/search_via_point.h</file></path><path><editType>edit</editType><file>ssep/keb_optimizer/keb_problem.cc</file></path><path><editType>edit</editType><file>ssep/keb_optimizer/keb_problem.h</file></path><path><editType>add</editType><file>ssep/data_structures/search_guide_match.h</file></path><path><editType>edit</editType><file>ssep/offboard/servers/scene_vis_html_template.cc</file></path><path><editType>edit</editType><file>replayer/scene_data/compact_custom_field_proto_codec.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</file></path><path><editType>edit</editType><file>tasks/deciders/search_decider/forward_search_decider.cpp</file></path><path><editType>edit</editType><file>ssep/offboard/main_test/main_ssep_input.cc</file></path><path><editType>edit</editType><file>ssep/test/CMakeLists.txt</file></path><path><editType>edit</editType><file>replayer/algorithm_replay/generated/scenario_task_chains.json</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_decoder.cpp</file></path><path><editType>add</editType><file>ssep/param_loader/search_guide_loader.h</file></path><path><editType>edit</editType><file>CMakeLists.txt</file></path><path><editType>edit</editType><file>docs/pnc_algorithm_replay/plan_frame_persistence_catalog.md</file></path><path><editType>edit</editType><file>ssep/protos/params.proto</file></path><path><editType>edit</editType><file>data/ssep/ssep_activation.cpp</file></path><path><editType>edit</editType><file>ssep/coarse_search/searcher_builders/tractor_trailer_single_segment_parking_searcher_builder.cc</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/compact_scene_descriptor.pb</file></path><path><editType>edit</editType><file>replayer/scene_replay/scene_replay_service.cpp</file></path><path><editType>edit</editType><file>ssep/offboard/scene_replay/replay_scene_frame_cli.cc</file></path><path><editType>edit</editType><file>data/other/flow_control.cpp</file></path><path><editType>edit</editType><file>ssep/coarse_search/evaluator/bidirectional_kinematic_heuristic_computer.h</file></path><path><editType>edit</editType><file>Testing/scene_replay_foundation_test.cpp</file></path><path><editType>edit</editType><file>ssep/scenarios/scenario_planner_factory.h</file></path><path><editType>add</editType><file>Testing/reverse_pickup_lifecycle_test.cpp</file></path><path><editType>edit</editType><file>proto/config.proto</file></path><path><editType>edit</editType><file>scenarios/bulkload_scenario/bulkload_ssep_forward_stage.hpp</file></path><path><editType>edit</editType><file>ssep/maps/ogm_builder.h</file></path><path><editType>edit</editType><file>data/config/cfg_stage.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/plan_frame_persistence_policy.yaml</file></path><path><editType>edit</editType><file>Testing/ssep_scenario_config_lifecycle_test.cpp</file></path><path><editType>edit</editType><file>Testing/routing_transition_test.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/compact_typed_field_codec.cpp</file></path><path><editType>edit</editType><file>plan/pilot/pilot_update.cpp</file></path><path><editType>edit</editType><file>ssep/ssep_planner.h</file></path><path><editType>add</editType><file>config/config_truck/ssep_search_guides.yaml</file></path><path><editType>edit</editType><file>replayer/scene_data/full_proto_custom_encoder.cpp</file></path><path><editType>edit</editType><file>ssep/data_structures/ssep_input.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_encoder.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/config_proto_codec.hpp</file></path><path><editType>add</editType><file>docs/reverse_pickup_search.md</file></path><path><editType>edit</editType><file>ssep/coarse_search/bidirectional_hybrid_astar_search_engine.cc</file></path><path><editType>edit</editType><file>ssep/param_loader/param.h</file></path><path><editType>edit</editType><file>data/config/cfg_ssep.cpp</file></path><path><editType>edit</editType><file>scenarios/bulkload_scenario/bulkload_move_forward_stage.cpp</file></path><path><editType>edit</editType><file>ssep/coarse_search/searcher_builders/tractor_trailer_single_segment_parking_searcher_builder.h</file></path><path><editType>add</editType><file>ssep/param_loader/search_guide_loader.cc</file></path><path><editType>edit</editType><file>ssep/coarse_search/bidirectional_hybrid_astar_search_engine.h</file></path><path><editType>edit</editType><file>ssep/keb_optimizer/tractor_trailer_keb_optimizer.cc</file></path><path><editType>edit</editType><file>config/config_truck/ssep_port_scenarios_jinxi.yaml</file></path><path><editType>edit</editType><file>Testing/cfg_scenarios_proto_codec_test.cpp</file></path><path><editType>edit</editType><file>tasks/plan/ssep_task.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_field_roles.json</file></path><path><editType>add</editType><file>ssep/test/scene_replay_obstacle_inputs_test.cc</file></path><path><editType>edit</editType><file>Testing/search_decider_lifecycle_test.cpp</file></path><path><editType>add</editType><file>ssep/data_structures/search_guide.h</file></path><path><editType>edit</editType><file>data/config/cfg_ssep.hpp</file></path><path><editType>edit</editType><file>proto/pnc_scene/compact_plan_frame_fields.proto</file></path><path><editType>edit</editType><file>Testing/ssep_path_corridor_test.cpp</file></path><path><editType>edit</editType><file>data/plan/ssep_data.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/full_custom_codec_coverage_audit.yaml</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/compact_typed_field_codec.hpp</file></path><path><editType>edit</editType><file>ssep/protos/scene.proto</file></path><path><editType>edit</editType><file>data/config/cfg_stage.cpp</file></path><path><editType>edit</editType><file>proto/plan_data.proto</file></path><path><editType>edit</editType><file>replayer/scene_data/config_proto_codec.cpp</file></path><path><editType>add</editType><file>data/other/reverse_pickup.cpp</file></path><path><editType>edit</editType><file>data/plan/path_data.cpp</file></path><path><editType>add</editType><file>ssep/test/search_guide_loader_test.cc</file></path><path><editType>edit</editType><file>ssep/maps/ogm_builder.cc</file></path><path><editType>edit</editType><file>ssep/coarse_search/motion_primitive_sampler/reeds_shepp_path.cc</file></path><path><editType>edit</editType><file>replayer/scene_data/compact_numeric_policy.yaml</file></path><path><editType>edit</editType><file>replayer/scene_data/compact_custom_field_proto_codec.cpp</file></path><path><editType>edit</editType><file>data/app/reaction/app_reaction.cpp</file></path><path><editType>edit</editType><file>data/plan/ssep_data.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/compact_proto_codec.cpp</file></path><path><editType>edit</editType><file>data/app/fsm/task_fsm/task_park_fsm/park_fsm_transition/bulk_transition.cpp</file></path><path><editType>edit</editType><file>ssep/keb_optimizer/tractor_trailer_keb_optimizer.h</file></path><path><editType>edit</editType><file>data/ssep/ssep_ec.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_encoder.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>ssep/test/local_regression/parking_collision_quality.py</affectedPath><affectedPath>ssep/test/local_regression/tt_ordered_pose_results.json</affectedPath><affectedPath>ssep/test/local_regression/README.md</affectedPath><affectedPath>ssep/test/local_regression/tt_parking_quality.py</affectedPath><affectedPath>Taskfile.yml</affectedPath><affectedPath>ssep/test/local_regression/tt_ordered_via_manifest.tsv</affectedPath><affectedPath>ssep/offboard/scene_replay/CMakeLists.txt</affectedPath><affectedPath>ssep/test/local_regression/tt_ordered_via_cases.json</affectedPath><affectedPath>ssep/test/local_regression/tt_ordered_via_quality.json</affectedPath><affectedPath>ssep/test/local_regression/test_parking_collision_quality.py</affectedPath><affectedPath>ssep/test/local_regression/tt_ordered_pose_cases.json</affectedPath><affectedPath>ssep/test/local_regression/test_tt_parking_regression.py</affectedPath><affectedPath>ssep/test/local_regression/test_pose_regression.py</affectedPath><affectedPath>ssep/test/local_regression/generate_pose_regression.py</affectedPath><affectedPath>ssep/test/local_regression/tt_ordered_pose_manifest.tsv</affectedPath><commitId>8efd7a6dfd64463a69c7007abf34f08b8432ef7b</commitId><timestamp>1789470055000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>test: 增加 SSEP 现场场景和起始姿态扰动回归

归档近期顺序途经搜索案例清单、输入校验信息及质量结果，增加位置、车头角和挂车角扰动生成器，校验途经顺序与精确障碍物碰撞。回放构建支持显式 Release 配置并补充 task 入口。

验证：6 个现场案例与 11 个姿态扰动案例通过，Python 回归测试 58 项通过。
</comment><date>2026-09-15 19:00:55 +0800</date><id>8efd7a6dfd64463a69c7007abf34f08b8432ef7b</id><msg>test: 增加 SSEP 现场场景和起始姿态扰动回归</msg><path><editType>add</editType><file>ssep/test/local_regression/tt_ordered_pose_cases.json</file></path><path><editType>add</editType><file>ssep/test/local_regression/tt_ordered_via_manifest.tsv</file></path><path><editType>edit</editType><file>Taskfile.yml</file></path><path><editType>add</editType><file>ssep/test/local_regression/tt_ordered_pose_results.json</file></path><path><editType>add</editType><file>ssep/test/local_regression/generate_pose_regression.py</file></path><path><editType>add</editType><file>ssep/test/local_regression/test_pose_regression.py</file></path><path><editType>add</editType><file>ssep/test/local_regression/tt_ordered_via_cases.json</file></path><path><editType>add</editType><file>ssep/test/local_regression/tt_ordered_pose_manifest.tsv</file></path><path><editType>edit</editType><file>ssep/offboard/scene_replay/CMakeLists.txt</file></path><path><editType>edit</editType><file>ssep/test/local_regression/tt_parking_quality.py</file></path><path><editType>edit</editType><file>ssep/test/local_regression/README.md</file></path><path><editType>edit</editType><file>ssep/test/local_regression/parking_collision_quality.py</file></path><path><editType>edit</editType><file>ssep/test/local_regression/test_parking_collision_quality.py</file></path><path><editType>add</editType><file>ssep/test/local_regression/tt_ordered_via_quality.json</file></path><path><editType>edit</editType><file>ssep/test/local_regression/test_tt_parking_regression.py</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>hmi/draw/draw_path.cpp</affectedPath><commitId>b13c2d4f89eb42836b3753b9c6d7c87261c7c603</commitId><timestamp>1789475622000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>fix(hmi): exclude standstill gap from current headway
</comment><date>2026-09-15 20:33:42 +0800</date><id>b13c2d4f89eb42836b3753b9c6d7c87261c7c603</id><msg>fix(hmi): exclude standstill gap from current headway</msg><path><editType>edit</editType><file>hmi/draw/draw_path.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>Testing/data/platoon_mpc/limit_active_precision_b.csv</affectedPath><affectedPath>Testing/platoon_mpc_core_test.cpp</affectedPath><affectedPath>Testing/platoon_failure_csv_test.cpp</affectedPath><affectedPath>algorithm/platoon/mpc/platoon_qp_polish.hpp</affectedPath><affectedPath>Testing/data/platoon_mpc/limit_inherited_acceleration.csv</affectedPath><affectedPath>Testing/data/platoon_mpc/limit_bend_braking.csv</affectedPath><affectedPath>docs/platoon/speed_boundary_recovery.md</affectedPath><affectedPath>Testing/data/platoon_mpc/limit_committed_entry.csv</affectedPath><affectedPath>Testing/data/platoon_mpc/limit_active_precision_c.csv</affectedPath><affectedPath>docs/platoon/time_headway_mpc.md</affectedPath><affectedPath>Testing/data/platoon_mpc/limit_active_precision_a.csv</affectedPath><affectedPath>docs/platoon/issued_speed_ceiling_recovery.md</affectedPath><affectedPath>Testing/platoon_lattice_test.cpp</affectedPath><affectedPath>Testing/data/platoon_mpc/limit_post_delay_entry.csv</affectedPath><affectedPath>Testing/platoon_response_test.cpp</affectedPath><affectedPath>algorithm/platoon/mpc/qp_solver.cpp</affectedPath><affectedPath>Testing/data/platoon_mpc/limit_aligned_origin.csv</affectedPath><affectedPath>Testing/data/platoon_mpc/limit_stop_release.csv</affectedPath><affectedPath>algorithm/platoon/mpc/longitudinal_mpc.cpp</affectedPath><affectedPath>Testing/platoon_qp_solver_test.cpp</affectedPath><commitId>84b7b5309baa1aeca0c9b656b9a758af6ce9c2af</commitId><timestamp>1789477834000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>fix(platoon): recover speed-boundary constraints without losing continuity
</comment><date>2026-09-15 21:10:34 +0800</date><id>84b7b5309baa1aeca0c9b656b9a758af6ce9c2af</id><msg>fix(platoon): recover speed-boundary constraints without losing continuity</msg><path><editType>add</editType><file>Testing/data/platoon_mpc/limit_aligned_origin.csv</file></path><path><editType>add</editType><file>Testing/data/platoon_mpc/limit_active_precision_a.csv</file></path><path><editType>add</editType><file>Testing/data/platoon_mpc/limit_committed_entry.csv</file></path><path><editType>add</editType><file>Testing/data/platoon_mpc/limit_bend_braking.csv</file></path><path><editType>edit</editType><file>Testing/platoon_lattice_test.cpp</file></path><path><editType>edit</editType><file>Testing/platoon_qp_solver_test.cpp</file></path><path><editType>edit</editType><file>docs/platoon/time_headway_mpc.md</file></path><path><editType>add</editType><file>Testing/data/platoon_mpc/limit_active_precision_b.csv</file></path><path><editType>add</editType><file>docs/platoon/speed_boundary_recovery.md</file></path><path><editType>edit</editType><file>Testing/platoon_failure_csv_test.cpp</file></path><path><editType>add</editType><file>Testing/data/platoon_mpc/limit_inherited_acceleration.csv</file></path><path><editType>add</editType><file>Testing/data/platoon_mpc/limit_stop_release.csv</file></path><path><editType>edit</editType><file>algorithm/platoon/mpc/platoon_qp_polish.hpp</file></path><path><editType>edit</editType><file>Testing/platoon_mpc_core_test.cpp</file></path><path><editType>edit</editType><file>Testing/platoon_response_test.cpp</file></path><path><editType>edit</editType><file>algorithm/platoon/mpc/longitudinal_mpc.cpp</file></path><path><editType>edit</editType><file>algorithm/platoon/mpc/qp_solver.cpp</file></path><path><editType>edit</editType><file>docs/platoon/issued_speed_ceiling_recovery.md</file></path><path><editType>add</editType><file>Testing/data/platoon_mpc/limit_post_delay_entry.csv</file></path><path><editType>add</editType><file>Testing/data/platoon_mpc/limit_active_precision_c.csv</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>data/ssep/out_yard_junction_ec.hpp</affectedPath><affectedPath>tasks/deciders/search_decider/seaside_junction_search_decider.hpp</affectedPath><affectedPath>data/ssep/seaside_junction_ec.hpp</affectedPath><affectedPath>data/ssep/ex_lane_change_ec.cpp</affectedPath><affectedPath>data/ssep/out_yard_junction_ec.cpp</affectedPath><affectedPath>tasks/deciders/search_decider/seaside_junction_search_decider.cpp</affectedPath><affectedPath>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</affectedPath><affectedPath>tasks/deciders/search_decider/forward_search_decider.hpp</affectedPath><affectedPath>data/ssep/seaside_junction_ec.cpp</affectedPath><affectedPath>tasks/deciders/search_decider/forward_search_decider.cpp</affectedPath><affectedPath>tasks/deciders/search_decider/open_space_search_decider.hpp</affectedPath><affectedPath>data/ssep/open_space_ec.cpp</affectedPath><affectedPath>Testing/search_decider_lifecycle_test.cpp</affectedPath><affectedPath>tasks/deciders/search_decider/bridge_junction_search_decider.hpp</affectedPath><affectedPath>data/ssep/open_space_ec.hpp</affectedPath><affectedPath>tasks/deciders/search_decider/reverse_search_decider.cpp</affectedPath><affectedPath>tasks/deciders/search_decider/into_yard_junction_search_decider.hpp</affectedPath><affectedPath>tasks/deciders/search_decider/ex_lane_change_search_decider.hpp</affectedPath><affectedPath>tasks/deciders/search_decider/into_yard_junction_search_decider.cpp</affectedPath><affectedPath>tasks/deciders/search_decider/ex_lane_change_search_decider.cpp</affectedPath><affectedPath>tasks/deciders/search_decider/bridge_junction_search_decider.cpp</affectedPath><affectedPath>tasks/deciders/search_decider/search_decider_lifecycle.cpp</affectedPath><affectedPath>tasks/deciders/search_decider/out_yard_junction_search_decider.cpp</affectedPath><affectedPath>tasks/deciders/search_decider/search_decider_lifecycle.hpp</affectedPath><affectedPath>data/ssep/reverse_ec.cpp</affectedPath><affectedPath>data/ssep/forward_ec.cpp</affectedPath><affectedPath>data/ssep/bridge_junction_ec.cpp</affectedPath><affectedPath>data/ssep/normal_junction_ec.cpp</affectedPath><affectedPath>Testing/reference_line_replan_test.cpp</affectedPath><affectedPath>tasks/deciders/search_decider/reverse_search_decider.hpp</affectedPath><affectedPath>data/ssep/normal_junction_ec.hpp</affectedPath><affectedPath>data/ssep/bridge_junction_ec.hpp</affectedPath><affectedPath>tasks/deciders/search_decider/out_yard_junction_search_decider.hpp</affectedPath><affectedPath>docs/ssep_search_lifecycle.md</affectedPath><affectedPath>data/ssep/into_yard_junction_ec.hpp</affectedPath><affectedPath>tasks/deciders/search_decider/normal_junction_search_decider.hpp</affectedPath><affectedPath>tasks/deciders/search_decider/normal_junction_search_decider.cpp</affectedPath><affectedPath>tasks/deciders/search_decider/open_space_search_decider.cpp</affectedPath><affectedPath>data/ssep/into_yard_junction_ec.cpp</affectedPath><affectedPath>data/ssep/ex_lane_change_ec.hpp</affectedPath><affectedPath>data/ssep/forward_ec.hpp</affectedPath><affectedPath>data/ssep/reverse_ec.hpp</affectedPath><commitId>ad252560237ce635cae82a55310beda37d002dd7</commitId><timestamp>1789478123000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 区分搜索输入等待与环境构造失败

九类搜索在输入不可用时等待，构造失败清理半成品并继续重试，保留等停请求及搜索回退进度；仅实际搜索失败耗尽回退后进入 UNUSE。
补齐 Forward 在 IDLE 收到人工重搜时的策略准备，避免沿用旧拉直状态，并限制同一请求只重置一次。
更新生命周期文档、生成指纹及输入恢复、计数饱和和终态回归测试。
</comment><date>2026-09-15 21:15:23 +0800</date><id>ad252560237ce635cae82a55310beda37d002dd7</id><msg>fix: 区分搜索输入等待与环境构造失败</msg><path><editType>edit</editType><file>data/ssep/ex_lane_change_ec.cpp</file></path><path><editType>edit</editType><file>tasks/deciders/search_decider/search_decider_lifecycle.hpp</file></path><path><editType>edit</editType><file>tasks/deciders/search_decider/ex_lane_change_search_decider.cpp</file></path><path><editType>edit</editType><file>tasks/deciders/search_decider/ex_lane_change_search_decider.hpp</file></path><path><editType>edit</editType><file>tasks/deciders/search_decider/seaside_junction_search_decider.hpp</file></path><path><editType>edit</editType><file>tasks/deciders/search_decider/bridge_junction_search_decider.cpp</file></path><path><editType>edit</editType><file>Testing/reference_line_replan_test.cpp</file></path><path><editType>edit</editType><file>data/ssep/open_space_ec.cpp</file></path><path><editType>edit</editType><file>tasks/deciders/search_decider/reverse_search_decider.hpp</file></path><path><editType>edit</editType><file>data/ssep/seaside_junction_ec.hpp</file></path><path><editType>edit</editType><file>data/ssep/into_yard_junction_ec.hpp</file></path><path><editType>edit</editType><file>tasks/deciders/search_decider/out_yard_junction_search_decider.cpp</file></path><path><editType>edit</editType><file>data/ssep/out_yard_junction_ec.hpp</file></path><path><editType>edit</editType><file>tasks/deciders/search_decider/seaside_junction_search_decider.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</file></path><path><editType>edit</editType><file>tasks/deciders/search_decider/search_decider_lifecycle.cpp</file></path><path><editType>edit</editType><file>data/ssep/forward_ec.hpp</file></path><path><editType>edit</editType><file>data/ssep/bridge_junction_ec.cpp</file></path><path><editType>edit</editType><file>tasks/deciders/search_decider/open_space_search_decider.hpp</file></path><path><editType>edit</editType><file>data/ssep/normal_junction_ec.cpp</file></path><path><editType>edit</editType><file>tasks/deciders/search_decider/normal_junction_search_decider.hpp</file></path><path><editType>edit</editType><file>data/ssep/seaside_junction_ec.cpp</file></path><path><editType>edit</editType><file>tasks/deciders/search_decider/out_yard_junction_search_decider.hpp</file></path><path><editType>edit</editType><file>data/ssep/open_space_ec.hpp</file></path><path><editType>edit</editType><file>tasks/deciders/search_decider/into_yard_junction_search_decider.hpp</file></path><path><editType>edit</editType><file>tasks/deciders/search_decider/forward_search_decider.cpp</file></path><path><editType>edit</editType><file>data/ssep/ex_lane_change_ec.hpp</file></path><path><editType>edit</editType><file>data/ssep/into_yard_junction_ec.cpp</file></path><path><editType>edit</editType><file>data/ssep/bridge_junction_ec.hpp</file></path><path><editType>edit</editType><file>Testing/search_decider_lifecycle_test.cpp</file></path><path><editType>edit</editType><file>data/ssep/normal_junction_ec.hpp</file></path><path><editType>edit</editType><file>data/ssep/reverse_ec.cpp</file></path><path><editType>edit</editType><file>tasks/deciders/search_decider/normal_junction_search_decider.cpp</file></path><path><editType>edit</editType><file>data/ssep/reverse_ec.hpp</file></path><path><editType>edit</editType><file>docs/ssep_search_lifecycle.md</file></path><path><editType>edit</editType><file>tasks/deciders/search_decider/bridge_junction_search_decider.hpp</file></path><path><editType>edit</editType><file>tasks/deciders/search_decider/reverse_search_decider.cpp</file></path><path><editType>edit</editType><file>data/ssep/forward_ec.cpp</file></path><path><editType>edit</editType><file>tasks/deciders/search_decider/into_yard_junction_search_decider.cpp</file></path><path><editType>edit</editType><file>tasks/deciders/search_decider/open_space_search_decider.cpp</file></path><path><editType>edit</editType><file>data/ssep/out_yard_junction_ec.cpp</file></path><path><editType>edit</editType><file>tasks/deciders/search_decider/forward_search_decider.hpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>Testing/reverse_pickup_stage_selector_test.cpp</affectedPath><affectedPath>tasks/deciders/search_decider/search_decider_lifecycle.cpp</affectedPath><affectedPath>tasks/deciders/search_decider/out_yard_junction_search_decider.cpp</affectedPath><affectedPath>tasks/deciders/search_decider/search_decider_lifecycle.hpp</affectedPath><affectedPath>tasks/deciders/search_decider/seaside_junction_search_decider.cpp</affectedPath><affectedPath>tasks/plan/ssep_task.hpp</affectedPath><affectedPath>tasks/plan/ssep_task.cpp</affectedPath><affectedPath>tasks/deciders/search_decider/forward_search_decider.cpp</affectedPath><affectedPath>docs/ssep_search_lifecycle.md</affectedPath><affectedPath>Testing/search_decider_lifecycle_test.cpp</affectedPath><affectedPath>tasks/deciders/search_decider/open_space_search_decider.cpp</affectedPath><affectedPath>tasks/deciders/search_decider/normal_junction_search_decider.cpp</affectedPath><affectedPath>Testing/routing_transition_test.cpp</affectedPath><affectedPath>tasks/deciders/search_decider/reverse_search_decider.cpp</affectedPath><affectedPath>tasks/deciders/search_decider/into_yard_junction_search_decider.cpp</affectedPath><affectedPath>tasks/deciders/search_decider/ex_lane_change_search_decider.cpp</affectedPath><affectedPath>tasks/deciders/search_decider/bridge_junction_search_decider.cpp</affectedPath><commitId>205596008a5ca6391020ebfe64226b05827da5a5</commitId><timestamp>1789478161000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 修复任务切换后搜索状态卡在 FINISH

九类搜索使用与异步结果一致的有效任务 ID，在任务交接时失效旧构造器及发布快照，防止输入异常后恢复旧状态。
异步 future 提交当帧立即发布运行标志，避免下一帧新请求误过线程门禁后被丢弃。
补充跨任务结果回收、连续切换、异常输入恢复和提交帧运行状态回归，保留同任务重搜及倒车取货结果复用。
</comment><date>2026-09-15 21:16:01 +0800</date><id>205596008a5ca6391020ebfe64226b05827da5a5</id><msg>fix: 修复任务切换后搜索状态卡在 FINISH</msg><path><editType>edit</editType><file>tasks/deciders/search_decider/open_space_search_decider.cpp</file></path><path><editType>edit</editType><file>tasks/plan/ssep_task.hpp</file></path><path><editType>edit</editType><file>tasks/deciders/search_decider/reverse_search_decider.cpp</file></path><path><editType>edit</editType><file>docs/ssep_search_lifecycle.md</file></path><path><editType>edit</editType><file>Testing/reverse_pickup_stage_selector_test.cpp</file></path><path><editType>edit</editType><file>Testing/search_decider_lifecycle_test.cpp</file></path><path><editType>edit</editType><file>tasks/deciders/search_decider/normal_junction_search_decider.cpp</file></path><path><editType>edit</editType><file>tasks/deciders/search_decider/out_yard_junction_search_decider.cpp</file></path><path><editType>edit</editType><file>tasks/deciders/search_decider/seaside_junction_search_decider.cpp</file></path><path><editType>edit</editType><file>tasks/deciders/search_decider/search_decider_lifecycle.cpp</file></path><path><editType>edit</editType><file>tasks/deciders/search_decider/bridge_junction_search_decider.cpp</file></path><path><editType>edit</editType><file>tasks/deciders/search_decider/ex_lane_change_search_decider.cpp</file></path><path><editType>edit</editType><file>tasks/deciders/search_decider/search_decider_lifecycle.hpp</file></path><path><editType>edit</editType><file>Testing/routing_transition_test.cpp</file></path><path><editType>edit</editType><file>tasks/plan/ssep_task.cpp</file></path><path><editType>edit</editType><file>tasks/deciders/search_decider/into_yard_junction_search_decider.cpp</file></path><path><editType>edit</editType><file>tasks/deciders/search_decider/forward_search_decider.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>Testing/ssep_path_corridor_test.cpp</affectedPath><affectedPath>scenarios/task_condition_evaluator.cpp</affectedPath><commitId>03968a21f9e470b48d375582b47f7e7d0234fdab</commitId><timestamp>1789478187000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 选择堆场 KEB 前检查引导线覆盖路口终点

VV087 对位快照同地图重建中，引导线长 83.5 米，直行出场路口终点为 83.6313 米；原选择器选中 KEB 后因终点越界持续输入失败。
非明确进出场区域的几何接管共用完整终点构造检查，目标不可用时走后续配置规划器，保留明确进出场区域的输入异常保护。
增加终点等长及两侧边界测试，并验证 KEB、PJPO 和恢复 KEB 的选择过程。
</comment><date>2026-09-15 21:16:27 +0800</date><id>03968a21f9e470b48d375582b47f7e7d0234fdab</id><msg>fix: 选择堆场 KEB 前检查引导线覆盖路口终点</msg><path><editType>edit</editType><file>Testing/ssep_path_corridor_test.cpp</file></path><path><editType>edit</editType><file>scenarios/task_condition_evaluator.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>algorithm/platoon/mpc/longitudinal_mpc.cpp</affectedPath><affectedPath>hmi/draw/draw_path.cpp</affectedPath><commitId>3cbfb23cc7b803b6f1f58cee679b5622da03f5e5</commitId><timestamp>1789478721000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>fix(hmi): use aligned MPC state for current headway
</comment><date>2026-09-15 21:25:21 +0800</date><id>3cbfb23cc7b803b6f1f58cee679b5622da03f5e5</id><msg>fix(hmi): use aligned MPC state for current headway</msg><path><editType>edit</editType><file>algorithm/platoon/mpc/longitudinal_mpc.cpp</file></path><path><editType>edit</editType><file>hmi/draw/draw_path.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>scripts/install_vehicle_abseil.sh</affectedPath><affectedPath>CMakeLists.txt</affectedPath><affectedPath>scripts/install_vehicle_abseil.md</affectedPath><commitId>0a23a436b1a2c784156b86f7242f470f71a00cd3</commitId><timestamp>1789482728000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>feat: 添加 Abseil 安装脚本及文档以对齐车端基准
</comment><date>2026-09-15 22:32:08 +0800</date><id>0a23a436b1a2c784156b86f7242f470f71a00cd3</id><msg>feat: 添加 Abseil 安装脚本及文档以对齐车端基准</msg><path><editType>add</editType><file>scripts/install_vehicle_abseil.sh</file></path><path><editType>add</editType><file>scripts/install_vehicle_abseil.md</file></path><path><editType>edit</editType><file>CMakeLists.txt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>scripts/install_vehicle_abseil.md</affectedPath><commitId>e53a2f2a35a3cbc597043bd6deada98e313940e4</commitId><timestamp>1789483893000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>docs: 补充 Abseil 验证结果与回滚步骤

记录 GCC 9.4 使用车端基准 Abseil 全量构建 pnc_node 成功，并补充手工恢复动态库后刷新 ldconfig 缓存的步骤。
</comment><date>2026-09-15 22:51:33 +0800</date><id>e53a2f2a35a3cbc597043bd6deada98e313940e4</id><msg>docs: 补充 Abseil 验证结果与回滚步骤</msg><path><editType>edit</editType><file>scripts/install_vehicle_abseil.md</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>docs/platoon/platoon_manager_vehicle_info_interface_zh.md</affectedPath><commitId>c361c63f6d79341524ac0ec29e22c86cba545039</commitId><timestamp>1789525981000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>docs(platoon): document manager VehicleInfo interface in Chinese
</comment><date>2026-09-16 10:33:01 +0800</date><id>c361c63f6d79341524ac0ec29e22c86cba545039</id><msg>docs(platoon): document manager VehicleInfo interface in Chinese</msg><path><editType>add</editType><file>docs/platoon/platoon_manager_vehicle_info_interface_zh.md</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>docs/platoon/platoon_manager_vehicle_info_interface_zh.md</affectedPath><commitId>8b650864538e80ace19cee1cd7b1023e53ddf34e</commitId><timestamp>1789526519000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>docs(platoon): link interface guide to its Confluence child page
</comment><date>2026-09-16 10:41:59 +0800</date><id>8b650864538e80ace19cee1cd7b1023e53ddf34e</id><msg>docs(platoon): link interface guide to its Confluence child page</msg><path><editType>edit</editType><file>docs/platoon/platoon_manager_vehicle_info_interface_zh.md</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>docs/platoon/linear_mpc_design_report_zh.md</affectedPath><commitId>a36934e85bffe55be33b1efeaeb407f300affa31</commitId><timestamp>1789528379000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>docs(platoon): publish linear MPC design report in Chinese
</comment><date>2026-09-16 11:12:59 +0800</date><id>a36934e85bffe55be33b1efeaeb407f300affa31</id><msg>docs(platoon): publish linear MPC design report in Chinese</msg><path><editType>add</editType><file>docs/platoon/linear_mpc_design_report_zh.md</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>Testing/map_envelops_async_test.cpp</affectedPath><affectedPath>Testing/async_union_region_state_test.cpp</affectedPath><affectedPath>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</affectedPath><affectedPath>Taskfile.yml</affectedPath><affectedPath>data/map/envelop/async_union_region_state.hpp</affectedPath><affectedPath>data/map/envelop/map_envelops.cpp</affectedPath><affectedPath>CMakeLists.txt</affectedPath><commitId>ca5ce322943abbb463f2a8a144923ca7aadc62eb</commitId><timestamp>1789532172000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 修复地图轮廓异步任务循环引用导致的内存泄漏

异步任务仅持有计算输入并返回结果，使用 packaged_task 和分离线程解除状态与 future 的循环引用。重置及丢帧不等待任务，计算结束后自动释放资源，保留正常跨帧结果传递和主备轮廓行为。

补充任务生命周期及真实轮廓集成回归，更新测试构建入口和头文件校验摘要。本轮实现已通过 17 项回归及 12800 次任务丢弃压力测试；提交前恢复到当前分支并复核生成校验。
</comment><date>2026-09-16 12:16:12 +0800</date><id>ca5ce322943abbb463f2a8a144923ca7aadc62eb</id><msg>fix: 修复地图轮廓异步任务循环引用导致的内存泄漏</msg><path><editType>add</editType><file>Testing/map_envelops_async_test.cpp</file></path><path><editType>edit</editType><file>data/map/envelop/map_envelops.cpp</file></path><path><editType>edit</editType><file>Taskfile.yml</file></path><path><editType>edit</editType><file>CMakeLists.txt</file></path><path><editType>add</editType><file>Testing/async_union_region_state_test.cpp</file></path><path><editType>add</editType><file>data/map/envelop/async_union_region_state.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>Taskfile.yml</affectedPath><commitId>428687dfb7b596f3f36a84df1de6d7068279a55d</commitId><timestamp>1789532191000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>build: 添加快照内存修复的分布式编译任务

允许显式指定与当前编译器匹配的 icecc 工具链及并行槽位，统一构建生命周期测试、回放集成测试和 PlanFrame 兼容 SDK。
</comment><date>2026-09-16 12:16:31 +0800</date><id>428687dfb7b596f3f36a84df1de6d7068279a55d</id><msg>build: 添加快照内存修复的分布式编译任务</msg><path><editType>edit</editType><file>Taskfile.yml</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>algorithm/wbca/wbca_manager.cpp</affectedPath><affectedPath>algorithm/wbca/car_wbca_manager.cpp</affectedPath><affectedPath>algorithm/wbca/wbca_manager.hpp</affectedPath><affectedPath>tasks/plan/path_optimization_task.cpp</affectedPath><affectedPath>CMakeLists.txt</affectedPath><affectedPath>algorithm/wbca/truck_wbca_manager.cpp</affectedPath><affectedPath>Testing/wbca_leader_history_test.cpp</affectedPath><commitId>97e9bff2e15a18a6e3def9a2bd2531f12aba5608</commitId><timestamp>1789542300000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>feat(platoon): project leader history inside car and truck WBCA
</comment><date>2026-09-16 15:05:00 +0800</date><id>97e9bff2e15a18a6e3def9a2bd2531f12aba5608</id><msg>feat(platoon): project leader history inside car and truck WBCA</msg><path><editType>edit</editType><file>algorithm/wbca/truck_wbca_manager.cpp</file></path><path><editType>edit</editType><file>CMakeLists.txt</file></path><path><editType>edit</editType><file>algorithm/wbca/car_wbca_manager.cpp</file></path><path><editType>edit</editType><file>algorithm/wbca/wbca_manager.cpp</file></path><path><editType>edit</editType><file>algorithm/wbca/wbca_manager.hpp</file></path><path><editType>add</editType><file>Testing/wbca_leader_history_test.cpp</file></path><path><editType>edit</editType><file>tasks/plan/path_optimization_task.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>data/config/cfg_region.cpp</affectedPath><commitId>543d6b7225856f87fd96ba74103edca04777d4ce</commitId><timestamp>1789545614000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 扩大津西区域识别范围以覆盖当前地图

保留原区域中心，将半径由 3000 m 调整为 5100 m，覆盖当前地图最远角点并预留边界余量，避免地图内任务无法识别为津西场景。
</comment><date>2026-09-16 16:00:14 +0800</date><id>543d6b7225856f87fd96ba74103edca04777d4ce</id><msg>fix: 扩大津西区域识别范围以覆盖当前地图</msg><path><editType>edit</editType><file>data/config/cfg_region.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>data/other/reverse_pickup.cpp</affectedPath><affectedPath>docs/reverse_pickup_search.md</affectedPath><affectedPath>Testing/reverse_pickup_lifecycle_test.cpp</affectedPath><commitId>d373a30e14dc6b33299c4d02b740ecfaa06afd48</commitId><timestamp>1789545697000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 支持无一次规划的倒车接货任务进入散货场景

无路由任务使用车头后轴到 a 点的实际距离与停稳状态判断入场，不再依赖无效的路由终点距离。有路由任务保留原有门控。补充任务 46809 坐标及边界、无效状态回归；64 项任务回归通过。
</comment><date>2026-09-16 16:01:37 +0800</date><id>d373a30e14dc6b33299c4d02b740ecfaa06afd48</id><msg>fix: 支持无一次规划的倒车接货任务进入散货场景</msg><path><editType>edit</editType><file>data/other/reverse_pickup.cpp</file></path><path><editType>edit</editType><file>Testing/reverse_pickup_lifecycle_test.cpp</file></path><path><editType>edit</editType><file>docs/reverse_pickup_search.md</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>ssep/coarse_search/motion_primitive_sampler/reeds_shepp_path.cc</affectedPath><affectedPath>ssep/coarse_search/bidirectional_hybrid_astar_search_engine.h</affectedPath><affectedPath>ssep/test/ssep_planner_test.cc</affectedPath><affectedPath>ssep/coarse_search/motion_primitive_sampler/reeds_shepp_path.h</affectedPath><affectedPath>docs/reverse_pickup_search.md</affectedPath><affectedPath>ssep/coarse_search/bidirectional_hybrid_astar_search_engine.cc</affectedPath><commitId>2073156e538df55510cff697edb0ddb7920bef45</commitId><timestamp>1789545814000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>perf: 减少双向搜索启发计算和 RS 候选分配

提前过滤已被支配的节点，减少重复启发计算；使用固定数组保存最短 RS 候选，保持候选顺序和搜索代价语义。补充支配节点过滤回归测试。
</comment><date>2026-09-16 16:03:34 +0800</date><id>2073156e538df55510cff697edb0ddb7920bef45</id><msg>perf: 减少双向搜索启发计算和 RS 候选分配</msg><path><editType>edit</editType><file>ssep/coarse_search/bidirectional_hybrid_astar_search_engine.h</file></path><path><editType>edit</editType><file>ssep/coarse_search/motion_primitive_sampler/reeds_shepp_path.cc</file></path><path><editType>edit</editType><file>ssep/coarse_search/bidirectional_hybrid_astar_search_engine.cc</file></path><path><editType>edit</editType><file>ssep/coarse_search/motion_primitive_sampler/reeds_shepp_path.h</file></path><path><editType>edit</editType><file>docs/reverse_pickup_search.md</file></path><path><editType>edit</editType><file>ssep/test/ssep_planner_test.cc</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>ssep/test/local_regression/README.md</affectedPath><affectedPath>ssep/test/local_regression/tt_ordered_via_manifest.tsv</affectedPath><affectedPath>ssep/keb_optimizer/keb_problem.cc</affectedPath><affectedPath>ssep/test/ssep_planner_test.cc</affectedPath><affectedPath>ssep/test/local_regression/tt_ordered_via_cases.json</affectedPath><affectedPath>ssep/keb_optimizer/tractor_trailer_keb_optimizer.cc</affectedPath><affectedPath>ssep/keb_optimizer/tractor_trailer_keb_optimizer.h</affectedPath><affectedPath>ssep/data_structures/search_guide_match.h</affectedPath><affectedPath>ssep/keb_optimizer/keb_problem.h</affectedPath><affectedPath>ssep/coarse_search/searcher_builders/tractor_trailer_single_segment_parking_searcher_builder.cc</affectedPath><affectedPath>ssep/scenarios/tractor_trailer_reverse_priority_parking_planner.h</affectedPath><affectedPath>docs/reverse_pickup_search.md</affectedPath><affectedPath>ssep/coarse_search/searcher_builders/tractor_trailer_single_segment_parking_searcher_builder.h</affectedPath><commitId>11bc0c0a24736bcc26c206a3e74fdfdd76fb81bf</commitId><timestamp>1789545843000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 改善有序倒车搜索的引导匹配和起始控制约束

允许沿引导线执行端点有限延长匹配，保留横向门限并优先匹配附近记录路径。仅释放输入缺失且初值超限的首曲率，保持实测姿态和已知控制量。调整优化预算并补充引导匹配、控制边界及现场回归用例。
</comment><date>2026-09-16 16:04:03 +0800</date><id>11bc0c0a24736bcc26c206a3e74fdfdd76fb81bf</id><msg>fix: 改善有序倒车搜索的引导匹配和起始控制约束</msg><path><editType>edit</editType><file>ssep/coarse_search/searcher_builders/tractor_trailer_single_segment_parking_searcher_builder.h</file></path><path><editType>edit</editType><file>ssep/test/ssep_planner_test.cc</file></path><path><editType>edit</editType><file>ssep/test/local_regression/tt_ordered_via_manifest.tsv</file></path><path><editType>edit</editType><file>ssep/coarse_search/searcher_builders/tractor_trailer_single_segment_parking_searcher_builder.cc</file></path><path><editType>edit</editType><file>ssep/test/local_regression/README.md</file></path><path><editType>edit</editType><file>docs/reverse_pickup_search.md</file></path><path><editType>edit</editType><file>ssep/test/local_regression/tt_ordered_via_cases.json</file></path><path><editType>edit</editType><file>ssep/keb_optimizer/tractor_trailer_keb_optimizer.h</file></path><path><editType>edit</editType><file>ssep/keb_optimizer/keb_problem.h</file></path><path><editType>edit</editType><file>ssep/data_structures/search_guide_match.h</file></path><path><editType>edit</editType><file>ssep/scenarios/tractor_trailer_reverse_priority_parking_planner.h</file></path><path><editType>edit</editType><file>ssep/keb_optimizer/keb_problem.cc</file></path><path><editType>edit</editType><file>ssep/keb_optimizer/tractor_trailer_keb_optimizer.cc</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>ssep/data_structures/path.cc</affectedPath><affectedPath>data/plan/ssep_data.cpp</affectedPath><affectedPath>Testing/ssep_path_corridor_test.cpp</affectedPath><affectedPath>ssep/test/local_regression/README.md</affectedPath><affectedPath>data/plan/ssep_data.hpp</affectedPath><affectedPath>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</affectedPath><affectedPath>ssep/scenarios/scenario_planner_factory.h</affectedPath><affectedPath>ssep/test/local_regression/tt_multi_short_tail_manifest.tsv</affectedPath><affectedPath>tasks/deciders/search_decider/forward_search_decider.cpp</affectedPath><affectedPath>ssep/coarse_search/searcher_builders/tractor_trailer_multi_segment_parking_bidirectional_searcher_builder.cc</affectedPath><affectedPath>ssep/test/ssep_planner_test.cc</affectedPath><affectedPath>ssep/coarse_search/searcher_builders/tractor_trailer_multi_segment_parking_bidirectional_searcher_builder.h</affectedPath><affectedPath>tasks/deciders/other_decider/replan_decider.cpp</affectedPath><affectedPath>ssep/test/local_regression/tt_multi_ratio_manifest.tsv</affectedPath><affectedPath>ssep/data_structures/search_guide_match.h</affectedPath><affectedPath>ssep/scenarios/stitching_replanner.h</affectedPath><affectedPath>ssep/ssep_planner.cc</affectedPath><affectedPath>ssep/scenarios/tractor_trailer_multi_segment_parking_planner.h</affectedPath><affectedPath>data/ssep/ssep_ec.cpp</affectedPath><affectedPath>ssep/test/local_regression/tt_multi_collision_manifest.tsv</affectedPath><affectedPath>ssep/scenarios/tractor_trailer_single_segment_parking_planner.h</affectedPath><commitId>72a81e9cd47956e18d6e1757524379f47dbbc745</commitId><timestamp>1789545858000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>feat: 支持多段停车历史重规划并完善路径验收

换向和普通人工重规划保留同任务未执行的历史路径，先尝试历史初值，失败后使用软引导搜索并回退无引导搜索；强制拉直仍不使用历史路径。统一停车优化的倒车曲率比例，修复短末端采样，并增加整车及扫掠碰撞验收。裁剪后验收失败时尝试通过验收的原始路径，补充生命周期、引导和现场回归用例。
</comment><date>2026-09-16 16:04:18 +0800</date><id>72a81e9cd47956e18d6e1757524379f47dbbc745</id><msg>feat: 支持多段停车历史重规划并完善路径验收</msg><path><editType>edit</editType><file>ssep/test/local_regression/README.md</file></path><path><editType>edit</editType><file>ssep/data_structures/search_guide_match.h</file></path><path><editType>edit</editType><file>ssep/ssep_planner.cc</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</file></path><path><editType>edit</editType><file>ssep/scenarios/scenario_planner_factory.h</file></path><path><editType>edit</editType><file>ssep/scenarios/stitching_replanner.h</file></path><path><editType>edit</editType><file>ssep/scenarios/tractor_trailer_multi_segment_parking_planner.h</file></path><path><editType>add</editType><file>ssep/test/local_regression/tt_multi_short_tail_manifest.tsv</file></path><path><editType>edit</editType><file>data/plan/ssep_data.hpp</file></path><path><editType>edit</editType><file>ssep/coarse_search/searcher_builders/tractor_trailer_multi_segment_parking_bidirectional_searcher_builder.cc</file></path><path><editType>edit</editType><file>ssep/data_structures/path.cc</file></path><path><editType>edit</editType><file>ssep/scenarios/tractor_trailer_single_segment_parking_planner.h</file></path><path><editType>edit</editType><file>data/plan/ssep_data.cpp</file></path><path><editType>add</editType><file>ssep/test/local_regression/tt_multi_collision_manifest.tsv</file></path><path><editType>edit</editType><file>ssep/test/ssep_planner_test.cc</file></path><path><editType>edit</editType><file>tasks/deciders/other_decider/replan_decider.cpp</file></path><path><editType>edit</editType><file>data/ssep/ssep_ec.cpp</file></path><path><editType>edit</editType><file>tasks/deciders/search_decider/forward_search_decider.cpp</file></path><path><editType>add</editType><file>ssep/test/local_regression/tt_multi_ratio_manifest.tsv</file></path><path><editType>edit</editType><file>ssep/coarse_search/searcher_builders/tractor_trailer_multi_segment_parking_bidirectional_searcher_builder.h</file></path><path><editType>edit</editType><file>Testing/ssep_path_corridor_test.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>data/ssep/out_yard_junction_ec.cpp</affectedPath><commitId>b6df521ba88bd09ef1af16e5addec34c81a40d88</commitId><timestamp>1789549249000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 修复静止出堆场搜索起点落在车后

当停止线回退起点不在当前车位前方时，复用实车位姿和轮角构造搜索起点，并记录起点切换日志。避免车辆越过预设起点后重新下发任务仍从车后搜索。

验证：pnc_node 编译及构建附带检查通过，git diff --check 通过。
</comment><date>2026-09-16 17:00:49 +0800</date><id>b6df521ba88bd09ef1af16e5addec34c81a40d88</id><msg>fix: 修复静止出堆场搜索起点落在车后</msg><path><editType>edit</editType><file>data/ssep/out_yard_junction_ec.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>algorithm/wbca/wbca_manager.cpp</affectedPath><affectedPath>algorithm/wbca/wbca_manager.hpp</affectedPath><affectedPath>source/ros_source_platoon_vehicle_info.cpp</affectedPath><affectedPath>tasks/plan/path_optimization_task.cpp</affectedPath><affectedPath>docs/platoon/wbca_platoon_mode.md</affectedPath><affectedPath>data/platoon/platoon_info.hpp</affectedPath><affectedPath>data/platoon/platoon_info.cpp</affectedPath><affectedPath>plan/prepare/prepare_platoon.cpp</affectedPath><affectedPath>Testing/wbca_leader_history_test.cpp</affectedPath><commitId>b746a56e3ced35563c7bb27d6c9f6f84f63d8012</commitId><timestamp>1789552118000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>Add WBCA platoon mode with leader geometry and issued trajectory timing
</comment><date>2026-09-16 17:48:38 +0800</date><id>b746a56e3ced35563c7bb27d6c9f6f84f63d8012</id><msg>Add WBCA platoon mode with leader geometry and issued trajectory timing</msg><path><editType>edit</editType><file>data/platoon/platoon_info.hpp</file></path><path><editType>edit</editType><file>plan/prepare/prepare_platoon.cpp</file></path><path><editType>edit</editType><file>source/ros_source_platoon_vehicle_info.cpp</file></path><path><editType>edit</editType><file>algorithm/wbca/wbca_manager.hpp</file></path><path><editType>edit</editType><file>Testing/wbca_leader_history_test.cpp</file></path><path><editType>edit</editType><file>tasks/plan/path_optimization_task.cpp</file></path><path><editType>edit</editType><file>algorithm/wbca/wbca_manager.cpp</file></path><path><editType>edit</editType><file>data/platoon/platoon_info.cpp</file></path><path><editType>add</editType><file>docs/platoon/wbca_platoon_mode.md</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>algorithm/wbca/wbca_manager.cpp</affectedPath><affectedPath>docs/platoon/wbca_platoon_mode.md</affectedPath><affectedPath>Testing/wbca_leader_history_test.cpp</affectedPath><commitId>e11598c8e5646cd77ee90036f203ba659b02285f</commitId><timestamp>1789553310000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>Extend WBCA platoon history route along reference line
</comment><date>2026-09-16 18:08:30 +0800</date><id>e11598c8e5646cd77ee90036f203ba659b02285f</id><msg>Extend WBCA platoon history route along reference line</msg><path><editType>edit</editType><file>algorithm/wbca/wbca_manager.cpp</file></path><path><editType>edit</editType><file>docs/platoon/wbca_platoon_mode.md</file></path><path><editType>edit</editType><file>Testing/wbca_leader_history_test.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>Testing/continuous_junction_replan_test.cpp</affectedPath><affectedPath>tasks/deciders/other_decider/replan_decider.cpp</affectedPath><affectedPath>tasks/deciders/other_decider/replan_decider.hpp</affectedPath><affectedPath>docs/ssep_search_lifecycle.md</affectedPath><commitId>ae161134773778488865f4ecc68570717a426bee</commitId><timestamp>1789559354000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 按目标路口触发连续入场重搜

在入场弯前复用搜索环境的停止线筛选规则，比较目标路口与历史 REUSE 搜索路口，避免经过多车道或冷却后漏搜。
同路口、已有请求、旧搜索未完成或输入不完整时不新建请求，保留原路径及即时重搜语义。
补充左右 S 弯、目标筛选、冷却恢复、重复抑制和缺失输入回归。

验证：pnc_node 编译成功；完整回归 344 项通过、45 项跳过，无失败（包含出场接管修复）。
</comment><date>2026-09-16 19:49:14 +0800</date><id>ae161134773778488865f4ecc68570717a426bee</id><msg>fix: 按目标路口触发连续入场重搜</msg><path><editType>edit</editType><file>docs/ssep_search_lifecycle.md</file></path><path><editType>edit</editType><file>tasks/deciders/other_decider/replan_decider.hpp</file></path><path><editType>edit</editType><file>tasks/deciders/other_decider/replan_decider.cpp</file></path><path><editType>edit</editType><file>Testing/continuous_junction_replan_test.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>data/scenario/scenario_manager.cpp</affectedPath><affectedPath>Testing/scenario_search_exit_test.cpp</affectedPath><affectedPath>docs/ssep_search_lifecycle.md</affectedPath><commitId>0c15dfca196f310fe06d3f4c1b87c511378a6ff4</commitId><timestamp>1789559365000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 补齐出堆场 S 弯和 U 弯区域识别

将出场 S 弯、U 弯的左右方向及弯前和弯中纳入区域判断，使入场等搜索场景按准入条件正常让出。
补充出场区域保持、切换到下一入场区域、禁搜及旧路径收尾回归，并记录接管规则。

验证：pnc_node 编译成功；完整回归 344 项通过、45 项跳过，无失败。
</comment><date>2026-09-16 19:49:25 +0800</date><id>0c15dfca196f310fe06d3f4c1b87c511378a6ff4</id><msg>fix: 补齐出堆场 S 弯和 U 弯区域识别</msg><path><editType>edit</editType><file>docs/ssep_search_lifecycle.md</file></path><path><editType>edit</editType><file>Testing/scenario_search_exit_test.cpp</file></path><path><editType>edit</editType><file>data/scenario/scenario_manager.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>algorithm/wbca/wbca_manager.cpp</affectedPath><affectedPath>algorithm/wbca/wbca_manager.hpp</affectedPath><affectedPath>tasks/plan/path_optimization_task.cpp</affectedPath><affectedPath>algorithm/wbca/path_optimization/path_optimization.hpp</affectedPath><affectedPath>docs/platoon/wbca_platoon_mode.md</affectedPath><affectedPath>data/wbca/grid_map/esdf_map.hpp</affectedPath><affectedPath>data/wbca/wbca_data.hpp</affectedPath><affectedPath>CMakeLists.txt</affectedPath><affectedPath>algorithm/wbca/wbca_failure_csv.cpp</affectedPath><affectedPath>data/wbca/grid_map/grid_map.hpp</affectedPath><affectedPath>tools/wbca_failure_replay.cpp</affectedPath><affectedPath>algorithm/wbca/path_optimization/path_optimization.cpp</affectedPath><affectedPath>algorithm/wbca/wbca_failure_csv.hpp</affectedPath><affectedPath>docs/platoon/wbca_failure_replay.md</affectedPath><affectedPath>Testing/wbca_failure_csv_test.cpp</affectedPath><commitId>0691292c6f79f9e0eb84deb29008291648f1c06f</commitId><timestamp>1789563531000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>Capture replayable WBCA failures with time and position save limits
</comment><date>2026-09-16 20:58:51 +0800</date><id>0691292c6f79f9e0eb84deb29008291648f1c06f</id><msg>Capture replayable WBCA failures with time and position save limits</msg><path><editType>edit</editType><file>algorithm/wbca/path_optimization/path_optimization.cpp</file></path><path><editType>edit</editType><file>algorithm/wbca/wbca_manager.cpp</file></path><path><editType>edit</editType><file>tasks/plan/path_optimization_task.cpp</file></path><path><editType>edit</editType><file>data/wbca/grid_map/grid_map.hpp</file></path><path><editType>edit</editType><file>docs/platoon/wbca_platoon_mode.md</file></path><path><editType>add</editType><file>algorithm/wbca/wbca_failure_csv.cpp</file></path><path><editType>add</editType><file>tools/wbca_failure_replay.cpp</file></path><path><editType>edit</editType><file>data/wbca/grid_map/esdf_map.hpp</file></path><path><editType>edit</editType><file>algorithm/wbca/wbca_manager.hpp</file></path><path><editType>add</editType><file>docs/platoon/wbca_failure_replay.md</file></path><path><editType>edit</editType><file>CMakeLists.txt</file></path><path><editType>add</editType><file>Testing/wbca_failure_csv_test.cpp</file></path><path><editType>add</editType><file>algorithm/wbca/wbca_failure_csv.hpp</file></path><path><editType>edit</editType><file>data/wbca/wbca_data.hpp</file></path><path><editType>edit</editType><file>algorithm/wbca/path_optimization/path_optimization.hpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>docs/platoon/wbca_platoon_mode.md</affectedPath><affectedPath>algorithm/wbca/wbca_manager.cpp</affectedPath><affectedPath>Testing/fixtures/wbca_platoon_low_speed_failure.csv</affectedPath><affectedPath>Testing/wbca_failure_csv_test.cpp</affectedPath><affectedPath>Testing/wbca_leader_history_test.cpp</affectedPath><commitId>2447e42b612d0ac60b67e1c2fee6158d0555706d</commitId><timestamp>1789564099000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>Allow WBCA platoon speeds below the reference road speed
</comment><date>2026-09-16 21:08:19 +0800</date><id>2447e42b612d0ac60b67e1c2fee6158d0555706d</id><msg>Allow WBCA platoon speeds below the reference road speed</msg><path><editType>edit</editType><file>docs/platoon/wbca_platoon_mode.md</file></path><path><editType>edit</editType><file>algorithm/wbca/wbca_manager.cpp</file></path><path><editType>add</editType><file>Testing/fixtures/wbca_platoon_low_speed_failure.csv</file></path><path><editType>edit</editType><file>Testing/wbca_failure_csv_test.cpp</file></path><path><editType>edit</editType><file>Testing/wbca_leader_history_test.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>algorithm/wbca/wbca_manager.cpp</affectedPath><affectedPath>docs/platoon/wbca_platoon_mode.md</affectedPath><affectedPath>Testing/wbca_leader_history_test.cpp</affectedPath><commitId>403392c5fe40c01b11c1e76b61596db8b3ed0f5a</commitId><timestamp>1789612175000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>Restore WBCA platoon route endpoint to leader history
</comment><date>2026-09-17 10:29:35 +0800</date><id>403392c5fe40c01b11c1e76b61596db8b3ed0f5a</id><msg>Restore WBCA platoon route endpoint to leader history</msg><path><editType>edit</editType><file>algorithm/wbca/wbca_manager.cpp</file></path><path><editType>edit</editType><file>Testing/wbca_leader_history_test.cpp</file></path><path><editType>edit</editType><file>docs/platoon/wbca_platoon_mode.md</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>docs/platoon/wbca_platoon_mode.md</affectedPath><affectedPath>algorithm/wbca/wbca_manager.cpp</affectedPath><affectedPath>algorithm/wbca/wbca_manager.hpp</affectedPath><affectedPath>Testing/wbca_leader_history_test.cpp</affectedPath><affectedPath>tasks/plan/path_optimization_task.cpp</affectedPath><commitId>fd50a03cbeaec2b7c02db4cff1dab1e9b004bbea</commitId><timestamp>1789613971000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>Initialize platoon WBCA from current speeds and cap route spacing
</comment><date>2026-09-17 10:59:31 +0800</date><id>fd50a03cbeaec2b7c02db4cff1dab1e9b004bbea</id><msg>Initialize platoon WBCA from current speeds and cap route spacing</msg><path><editType>edit</editType><file>docs/platoon/wbca_platoon_mode.md</file></path><path><editType>edit</editType><file>Testing/wbca_leader_history_test.cpp</file></path><path><editType>edit</editType><file>tasks/plan/path_optimization_task.cpp</file></path><path><editType>edit</editType><file>algorithm/wbca/wbca_manager.cpp</file></path><path><editType>edit</editType><file>algorithm/wbca/wbca_manager.hpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>docs/platoon/wbca_platoon_mode.md</affectedPath><affectedPath>algorithm/wbca/wbca_manager.cpp</affectedPath><affectedPath>Testing/wbca_leader_history_test.cpp</affectedPath><commitId>0c258afe2c9d613c98b69c16bae395d22b77812f</commitId><timestamp>1789614714000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>Use planning start velocity for platoon WBCA timing
</comment><date>2026-09-17 11:11:54 +0800</date><id>0c258afe2c9d613c98b69c16bae395d22b77812f</id><msg>Use planning start velocity for platoon WBCA timing</msg><path><editType>edit</editType><file>docs/platoon/wbca_platoon_mode.md</file></path><path><editType>edit</editType><file>Testing/wbca_leader_history_test.cpp</file></path><path><editType>edit</editType><file>algorithm/wbca/wbca_manager.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>algorithm/wbca/wbca_manager.cpp</affectedPath><affectedPath>docs/platoon/wbca_platoon_mode.md</affectedPath><affectedPath>Testing/wbca_leader_history_test.cpp</affectedPath><commitId>51b43b6b58c029f448ad8b9106de3bb64a8e1367</commitId><timestamp>1789615586000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>Restore configured platoon WBCA route spacing
</comment><date>2026-09-17 11:26:26 +0800</date><id>51b43b6b58c029f448ad8b9106de3bb64a8e1367</id><msg>Restore configured platoon WBCA route spacing</msg><path><editType>edit</editType><file>algorithm/wbca/wbca_manager.cpp</file></path><path><editType>edit</editType><file>docs/platoon/wbca_platoon_mode.md</file></path><path><editType>edit</editType><file>Testing/wbca_leader_history_test.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>algorithm/wbca/wbca_manager.cpp</affectedPath><affectedPath>algorithm/wbca/path_optimization/truck_path_optimization.hpp</affectedPath><affectedPath>algorithm/wbca/wbca_manager.hpp</affectedPath><affectedPath>docs/platoon/wbca_platoon_mode.md</affectedPath><affectedPath>Testing/wbca_leader_history_test.cpp</affectedPath><affectedPath>algorithm/wbca/path_optimization/truck_path_optimization.cpp</affectedPath><affectedPath>algorithm/wbca/path_optimization/car_path_optimization.cpp</affectedPath><commitId>d17455e2c4c5f57b73335f87c580571a867c8784</commitId><timestamp>1789618293000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>Optimize platoon prefix and normal tail in parallel
</comment><date>2026-09-17 12:11:33 +0800</date><id>d17455e2c4c5f57b73335f87c580571a867c8784</id><msg>Optimize platoon prefix and normal tail in parallel</msg><path><editType>edit</editType><file>algorithm/wbca/path_optimization/truck_path_optimization.hpp</file></path><path><editType>edit</editType><file>Testing/wbca_leader_history_test.cpp</file></path><path><editType>edit</editType><file>algorithm/wbca/path_optimization/car_path_optimization.cpp</file></path><path><editType>edit</editType><file>algorithm/wbca/path_optimization/truck_path_optimization.cpp</file></path><path><editType>edit</editType><file>algorithm/wbca/wbca_manager.hpp</file></path><path><editType>edit</editType><file>algorithm/wbca/wbca_manager.cpp</file></path><path><editType>edit</editType><file>docs/platoon/wbca_platoon_mode.md</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>algorithm/wbca/wbca_manager.cpp</affectedPath><affectedPath>data/config/cfg_lat_plan.hpp</affectedPath><affectedPath>algorithm/wbca/wbca_manager.hpp</affectedPath><affectedPath>data/config/cfg_lat_plan.cpp</affectedPath><affectedPath>tasks/plan/path_optimization_task.cpp</affectedPath><affectedPath>docs/platoon/wbca_platoon_mode.md</affectedPath><affectedPath>docs/platoon/wbca_segment_pipeline_validation.md</affectedPath><affectedPath>Testing/wbca_leader_history_test.cpp</affectedPath><commitId>767696ece0de64a0c47e2a5829e974892aa3ea37</commitId><timestamp>1789630431000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>Refactor WBCA into configurable ordered segment pipeline
</comment><date>2026-09-17 15:33:51 +0800</date><id>767696ece0de64a0c47e2a5829e974892aa3ea37</id><msg>Refactor WBCA into configurable ordered segment pipeline</msg><path><editType>edit</editType><file>data/config/cfg_lat_plan.cpp</file></path><path><editType>add</editType><file>docs/platoon/wbca_segment_pipeline_validation.md</file></path><path><editType>edit</editType><file>tasks/plan/path_optimization_task.cpp</file></path><path><editType>edit</editType><file>data/config/cfg_lat_plan.hpp</file></path><path><editType>edit</editType><file>Testing/wbca_leader_history_test.cpp</file></path><path><editType>edit</editType><file>docs/platoon/wbca_platoon_mode.md</file></path><path><editType>edit</editType><file>algorithm/wbca/wbca_manager.cpp</file></path><path><editType>edit</editType><file>algorithm/wbca/wbca_manager.hpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>algorithm/wbca/wbca_manager.cpp</affectedPath><affectedPath>docs/platoon/wbca_segment_pipeline_validation.md</affectedPath><affectedPath>Testing/fixtures/wbca_segment_short_seam_failure.csv</affectedPath><affectedPath>Testing/wbca_leader_history_test.cpp</affectedPath><affectedPath>Testing/fixtures/wbca_segment_tail_timing_failure.csv</affectedPath><commitId>5642f6f33fe234070a4e0a6b8e62965737b6adf5</commitId><timestamp>1789633010000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>Fix WBCA tail timing and shared articulation initialization
</comment><date>2026-09-17 16:16:50 +0800</date><id>5642f6f33fe234070a4e0a6b8e62965737b6adf5</id><msg>Fix WBCA tail timing and shared articulation initialization</msg><path><editType>add</editType><file>Testing/fixtures/wbca_segment_tail_timing_failure.csv</file></path><path><editType>add</editType><file>Testing/fixtures/wbca_segment_short_seam_failure.csv</file></path><path><editType>edit</editType><file>algorithm/wbca/wbca_manager.cpp</file></path><path><editType>edit</editType><file>docs/platoon/wbca_segment_pipeline_validation.md</file></path><path><editType>edit</editType><file>Testing/wbca_leader_history_test.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>algorithm/wbca/wbca_manager.cpp</affectedPath><affectedPath>algorithm/wbca/CLAUDE.md</affectedPath><affectedPath>algorithm/wbca/imv_wbca_manager.hpp</affectedPath><affectedPath>algorithm/wbca/imv_wbca_manager.cpp</affectedPath><affectedPath>algorithm/wbca/wbca_manager.hpp</affectedPath><commitId>ec6a7315335724e2b225da2483beec9eec830075</commitId><timestamp>1789635876000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>Remove unused WBCA local optimization mode
</comment><date>2026-09-17 17:04:36 +0800</date><id>ec6a7315335724e2b225da2483beec9eec830075</id><msg>Remove unused WBCA local optimization mode</msg><path><editType>edit</editType><file>algorithm/wbca/imv_wbca_manager.cpp</file></path><path><editType>edit</editType><file>algorithm/wbca/imv_wbca_manager.hpp</file></path><path><editType>edit</editType><file>algorithm/wbca/wbca_manager.hpp</file></path><path><editType>edit</editType><file>algorithm/wbca/wbca_manager.cpp</file></path><path><editType>edit</editType><file>algorithm/wbca/CLAUDE.md</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>algorithm/wbca/wbca_manager.cpp</affectedPath><affectedPath>Testing/wbca_smooth_continuity_test.cpp</affectedPath><affectedPath>docs/wbca_history_geometry.md</affectedPath><affectedPath>algorithm/wbca/wbca_manager.hpp</affectedPath><commitId>b3e4653f9d9c898b6ccf178e4fdea6386fa97c01</commitId><timestamp>1789698276000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>fix(wbca): replace divergent history beyond direct-link prefix
</comment><date>2026-09-18 10:24:36 +0800</date><id>b3e4653f9d9c898b6ccf178e4fdea6386fa97c01</id><msg>fix(wbca): replace divergent history beyond direct-link prefix</msg><path><editType>add</editType><file>docs/wbca_history_geometry.md</file></path><path><editType>edit</editType><file>algorithm/wbca/wbca_manager.cpp</file></path><path><editType>edit</editType><file>algorithm/wbca/wbca_manager.hpp</file></path><path><editType>edit</editType><file>Testing/wbca_smooth_continuity_test.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>algorithm/wbca/wbca_manager.cpp</affectedPath><affectedPath>docs/platoon/wbca_segment_pipeline_validation.md</affectedPath><affectedPath>Testing/wbca_leader_history_test.cpp</affectedPath><commitId>21c77160573d9a69b08b921ad9fc2a7f78c016e1</commitId><timestamp>1789710641000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>Resample WBCA second segment from leader boundary to endpoint
</comment><date>2026-09-18 13:50:41 +0800</date><id>21c77160573d9a69b08b921ad9fc2a7f78c016e1</id><msg>Resample WBCA second segment from leader boundary to endpoint</msg><path><editType>edit</editType><file>docs/platoon/wbca_segment_pipeline_validation.md</file></path><path><editType>edit</editType><file>algorithm/wbca/wbca_manager.cpp</file></path><path><editType>edit</editType><file>Testing/wbca_leader_history_test.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>Testing/CMakeLists.txt</affectedPath><affectedPath>CMakeLists.txt</affectedPath><affectedPath>tools/pnc_proto_mapper/test_build_boundaries.py</affectedPath><commitId>202aa8a21799c5bff20a40ef9dbb0f77d0a8a2ed</commitId><timestamp>1789723104000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>refactor: 将测试构建配置集中到 Testing 目录

将测试目标和 GTest 依赖迁入 Testing/CMakeLists.txt，顶层保留测试开关和子目录入口。
保持测试名称、输出路径及 CTest 工作目录，同步适配构建边界检查。

验证：构建边界检查通过，原有测试定义归一化比对一致，回放基础测试通过。
</comment><date>2026-09-18 17:18:24 +0800</date><id>202aa8a21799c5bff20a40ef9dbb0f77d0a8a2ed</id><msg>refactor: 将测试构建配置集中到 Testing 目录</msg><path><editType>add</editType><file>Testing/CMakeLists.txt</file></path><path><editType>edit</editType><file>tools/pnc_proto_mapper/test_build_boundaries.py</file></path><path><editType>edit</editType><file>CMakeLists.txt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>replayer/scene_data/generated/compact_scene_descriptor.pb</affectedPath><affectedPath>proto/config.proto</affectedPath><affectedPath>replayer/scene_data/generated/full_custom_codec_coverage_audit.yaml</affectedPath><affectedPath>data/plan/guide_line.cpp</affectedPath><affectedPath>docs/bend_speed_up_junction_config.md</affectedPath><affectedPath>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</affectedPath><affectedPath>replayer/scene_data/config_proto_codec.cpp</affectedPath><affectedPath>replayer/scene_data/generated/compact_typed_field_codec.cpp</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_decoder.cpp</affectedPath><affectedPath>data/config/cfg_func_sw.hpp</affectedPath><affectedPath>data/config/cfg_func_sw.cpp</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_decoder.hpp</affectedPath><affectedPath>replayer/scene_data/generated/compact_typed_field_codec.hpp</affectedPath><affectedPath>replayer/scene_data/generated/config_schema_inputs.json</affectedPath><affectedPath>Testing/guide_line_speed_limit_test.cpp</affectedPath><affectedPath>Testing/scene_replay_foundation_test.cpp</affectedPath><affectedPath>data/plan/guide_line.hpp</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_encoder.cpp</affectedPath><affectedPath>replayer/scene_data/generated/scene_replay_api_descriptor.pb</affectedPath><affectedPath>Testing/CMakeLists.txt</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_descriptor.pb</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_encoder.hpp</affectedPath><commitId>4900b070373d7be5654cead2ca94773e2ee4a446</commitId><timestamp>1789723123000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>feat: 支持按路口 ID 禁用弯道前后提速

新增 disable_bend_speed_up_junction_ids 配置，命中路口沿用地图限速，空名单保持现有行为。
补齐 Full、Compact 和 Candidate 配置读写及兼容合同生成物，并添加配置说明。
新增限速专项测试，覆盖精确匹配、全局开关、短弯和反复更新恢复；补充回放与旧消息测试。

验证：通过 -j68 分布式构建；6 个限速用例通过；回放测试 259 个通过、2 个可选数据用例跳过；生成物及 Proto 兼容性检查通过。
</comment><date>2026-09-18 17:18:43 +0800</date><id>4900b070373d7be5654cead2ca94773e2ee4a446</id><msg>feat: 支持按路口 ID 禁用弯道前后提速</msg><path><editType>edit</editType><file>data/plan/guide_line.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_descriptor.pb</file></path><path><editType>edit</editType><file>data/config/cfg_func_sw.cpp</file></path><path><editType>edit</editType><file>Testing/scene_replay_foundation_test.cpp</file></path><path><editType>edit</editType><file>proto/config.proto</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/compact_typed_field_codec.hpp</file></path><path><editType>add</editType><file>Testing/guide_line_speed_limit_test.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/config_schema_inputs.json</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_encoder.cpp</file></path><path><editType>edit</editType><file>data/plan/guide_line.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/scene_replay_api_descriptor.pb</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</file></path><path><editType>edit</editType><file>replayer/scene_data/config_proto_codec.cpp</file></path><path><editType>edit</editType><file>data/config/cfg_func_sw.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/compact_typed_field_codec.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/full_custom_codec_coverage_audit.yaml</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_encoder.hpp</file></path><path><editType>edit</editType><file>Testing/CMakeLists.txt</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_decoder.cpp</file></path><path><editType>add</editType><file>docs/bend_speed_up_junction_config.md</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/compact_scene_descriptor.pb</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_decoder.hpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>data/map/reference/center_line.cpp</affectedPath><commitId>0e2488992f0efd846cc82d2ff9c40763e2d33bf1</commitId><timestamp>1789741701000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix：解决西联Z型途经点导致的提前变道问题
</comment><date>2026-09-18 22:28:21 +0800</date><id>0e2488992f0efd846cc82d2ff9c40763e2d33bf1</id><msg>fix：解决西联Z型途经点导致的提前变道问题</msg><path><editType>edit</editType><file>data/map/reference/center_line.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>replayer/scene_data/compact_geometry_codec.cpp</affectedPath><affectedPath>replayer/replayer_data_process/replayer_data_process.cpp</affectedPath><affectedPath>Testing/compact_path_projection_test.cpp</affectedPath><affectedPath>hmi/draw/draw_collision_detection.cpp</affectedPath><affectedPath>Testing/CMakeLists.txt</affectedPath><affectedPath>Testing/hmi_collision_render_test.cpp</affectedPath><affectedPath>data/map/pnc_map/pnc_map.cpp</affectedPath><commitId>c631484f4581fff526a32cfe7de6177d5444b200</commitId><timestamp>1789742808000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 修复 bulk 快照引导线重建和碰撞框绘制

限制弯道横向支路长度，并兼容旧快照记录的超长支路。中心线重建失败时沿用在线无效状态处理，继续构建引导线。

恢复世界坐标路径的投影缓存，补充碰撞轮廓索引检查，避免快照绘制异常中断刷新。增加路径投影、包络显示及现场快照回归测试。
</comment><date>2026-09-18 22:46:48 +0800</date><id>c631484f4581fff526a32cfe7de6177d5444b200</id><msg>fix: 修复 bulk 快照引导线重建和碰撞框绘制</msg><path><editType>edit</editType><file>Testing/CMakeLists.txt</file></path><path><editType>edit</editType><file>replayer/scene_data/compact_geometry_codec.cpp</file></path><path><editType>add</editType><file>Testing/hmi_collision_render_test.cpp</file></path><path><editType>edit</editType><file>replayer/replayer_data_process/replayer_data_process.cpp</file></path><path><editType>add</editType><file>Testing/compact_path_projection_test.cpp</file></path><path><editType>edit</editType><file>data/map/pnc_map/pnc_map.cpp</file></path><path><editType>edit</editType><file>hmi/draw/draw_collision_detection.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>CMakeLists.txt</affectedPath><affectedPath>.vscode/launch.json</affectedPath><commitId>399b4e4ce4af1d1e9894fb29cf9d0c77081cdefb</commitId><timestamp>1789742819000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>build: 为优化构建保留调试符号并配置 LLDB 查找路径

在 Release 和 RelWithDebInfo 构建中启用调试信息，Clang 使用分离调试符号。为 VS Code 调试入口配置 build 目录搜索路径。
</comment><date>2026-09-18 22:46:59 +0800</date><id>399b4e4ce4af1d1e9894fb29cf9d0c77081cdefb</id><msg>build: 为优化构建保留调试符号并配置 LLDB 查找路径</msg><path><editType>edit</editType><file>CMakeLists.txt</file></path><path><editType>edit</editType><file>.vscode/launch.json</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>CMakeLists.txt</affectedPath><commitId>d9bd27bd5353cad1c8e06248135cd4845f656dcf</commitId><timestamp>1789746072000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix(build): 恢复 Release 现场发布的编译配置

Release 保持默认构建类型，不再自动附加调试符号及分离调试信息。调试参数仅对 Debug 和 RelWithDebInfo 生效。
</comment><date>2026-09-18 23:41:12 +0800</date><id>d9bd27bd5353cad1c8e06248135cd4845f656dcf</id><msg>fix(build): 恢复 Release 现场发布的编译配置</msg><path><editType>edit</editType><file>CMakeLists.txt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>docs/platoon/time_headway_mpc.md</affectedPath><affectedPath>algorithm/platoon/mpc/platoon_qp_polish.hpp</affectedPath><affectedPath>algorithm/platoon/mpc/qp_solver.cpp</affectedPath><affectedPath>Testing/platoon_response_test.cpp</affectedPath><affectedPath>algorithm/platoon/mpc/longitudinal_mpc.cpp</affectedPath><affectedPath>CMakeLists.txt</affectedPath><affectedPath>Testing/platoon_qp_solver_test.cpp</affectedPath><affectedPath>algorithm/platoon/mpc/qp_solver.hpp</affectedPath><commitId>cc8562509eab44abf5636024201d226e900befbf</commitId><timestamp>1789871292000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>Use qpOASES for platoon MPC quadratic programs

Replace the custom active-set and OSQP solver paths with qpOASES QProblem,
using the control module's MPC preset and termination tolerance. Accept
successful library solutions directly, remove external KKT and MPC
post-solve validation, and retain separate lattice safety checks.

Remove obsolete solver options, diagnostics and custom-polishing tests;
update the solver tests, linkage and MPC documentation.

Validation: PNC, replay and test targets build successfully. Core tests
pass 40/40; lattice tests pass 106/132. The 118-capture trial solves 41
cases, with 76 timeouts and one solver-reported infeasible case.

This is the qpOASES trial, not a fix for the remaining timeout or duplicate
constraint cycling issues. No running planners were restarted.
</comment><date>2026-09-20 10:28:12 +0800</date><id>cc8562509eab44abf5636024201d226e900befbf</id><msg>Use qpOASES for platoon MPC quadratic programs</msg><path><editType>edit</editType><file>algorithm/platoon/mpc/longitudinal_mpc.cpp</file></path><path><editType>delete</editType><file>algorithm/platoon/mpc/platoon_qp_polish.hpp</file></path><path><editType>edit</editType><file>CMakeLists.txt</file></path><path><editType>edit</editType><file>algorithm/platoon/mpc/qp_solver.cpp</file></path><path><editType>edit</editType><file>Testing/platoon_qp_solver_test.cpp</file></path><path><editType>edit</editType><file>algorithm/platoon/mpc/qp_solver.hpp</file></path><path><editType>edit</editType><file>docs/platoon/time_headway_mpc.md</file></path><path><editType>edit</editType><file>Testing/platoon_response_test.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>algorithm/lattice/condition_sampler.cpp</affectedPath><affectedPath>plan/prepare/prepare_platoon.hpp</affectedPath><affectedPath>Testing/platoon_safety_test.cpp</affectedPath><affectedPath>docs/platoon/qpoases_timeout_replay_results.csv</affectedPath><affectedPath>tools/platoon_mpc_replay.cpp</affectedPath><affectedPath>tools/platoon_mpc_batch_replay.py</affectedPath><affectedPath>Testing/platoon_failure_csv_test.cpp</affectedPath><affectedPath>docs/platoon/qpoases_timeout_replay.md</affectedPath><affectedPath>data/config/cfg_platoon.cpp</affectedPath><affectedPath>docs/platoon/time_headway_mpc.md</affectedPath><affectedPath>data/config/cfg_platoon.hpp</affectedPath><affectedPath>Testing/platoon_lane_change_test.cpp</affectedPath><affectedPath>Testing/platoon_lattice_test.cpp</affectedPath><affectedPath>algorithm/platoon/mpc/qp_solver.cpp</affectedPath><affectedPath>config/platoon.yaml</affectedPath><affectedPath>plan/prepare/prepare_platoon.cpp</affectedPath><affectedPath>Testing/platoon_qp_solver_test.cpp</affectedPath><commitId>41584d5d806680b17697bd92d592b69dbc26b4bb</commitId><timestamp>1789880042000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>Gate platoon following by ego path and mitigate MPC timeouts
</comment><date>2026-09-20 12:54:02 +0800</date><id>41584d5d806680b17697bd92d592b69dbc26b4bb</id><msg>Gate platoon following by ego path and mitigate MPC timeouts</msg><path><editType>edit</editType><file>plan/prepare/prepare_platoon.cpp</file></path><path><editType>edit</editType><file>tools/platoon_mpc_replay.cpp</file></path><path><editType>add</editType><file>docs/platoon/qpoases_timeout_replay.md</file></path><path><editType>edit</editType><file>Testing/platoon_lattice_test.cpp</file></path><path><editType>edit</editType><file>Testing/platoon_safety_test.cpp</file></path><path><editType>edit</editType><file>algorithm/lattice/condition_sampler.cpp</file></path><path><editType>edit</editType><file>plan/prepare/prepare_platoon.hpp</file></path><path><editType>edit</editType><file>Testing/platoon_qp_solver_test.cpp</file></path><path><editType>edit</editType><file>data/config/cfg_platoon.cpp</file></path><path><editType>edit</editType><file>data/config/cfg_platoon.hpp</file></path><path><editType>add</editType><file>tools/platoon_mpc_batch_replay.py</file></path><path><editType>edit</editType><file>algorithm/platoon/mpc/qp_solver.cpp</file></path><path><editType>edit</editType><file>config/platoon.yaml</file></path><path><editType>edit</editType><file>Testing/platoon_lane_change_test.cpp</file></path><path><editType>edit</editType><file>Testing/platoon_failure_csv_test.cpp</file></path><path><editType>add</editType><file>docs/platoon/qpoases_timeout_replay_results.csv</file></path><path><editType>edit</editType><file>docs/platoon/time_headway_mpc.md</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>Testing/ssep_path_corridor_test.cpp</affectedPath><affectedPath>ssep/maps/ogm_config_utils.h</affectedPath><affectedPath>ssep/maps/ogm.cc</affectedPath><affectedPath>ssep/maps/ogm_limits.h</affectedPath><affectedPath>ssep/maps/ogm_config_utils.cc</affectedPath><commitId>675478c9fb0a41ff880dbf9d15691dcb1ecc6c05</commitId><timestamp>1789884882000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 限制搜索地图范围并校验 OGM 分配尺寸

搜索工作空间每边限制为 3000 米，保留每侧 10 米扩边。统一检查普通与 Proto 构造入口的范围、分辨率及栅格索引容量，在分配前拒绝异常输入。补充边界、UTM、扩边和溢出回归测试。
</comment><date>2026-09-20 14:14:42 +0800</date><id>675478c9fb0a41ff880dbf9d15691dcb1ecc6c05</id><msg>fix: 限制搜索地图范围并校验 OGM 分配尺寸</msg><path><editType>edit</editType><file>ssep/maps/ogm_config_utils.h</file></path><path><editType>edit</editType><file>ssep/maps/ogm.cc</file></path><path><editType>add</editType><file>ssep/maps/ogm_limits.h</file></path><path><editType>edit</editType><file>Testing/ssep_path_corridor_test.cpp</file></path><path><editType>edit</editType><file>ssep/maps/ogm_config_utils.cc</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>tasks/deciders/search_decider/out_yard_junction_search_decider.cpp</affectedPath><affectedPath>tasks/deciders/search_decider/search_decider_lifecycle.hpp</affectedPath><affectedPath>Testing/reference_line_replan_test.cpp</affectedPath><affectedPath>tasks/deciders/search_decider/seaside_junction_search_decider.cpp</affectedPath><affectedPath>tasks/plan/ssep_task.hpp</affectedPath><affectedPath>tasks/plan/ssep_task.cpp</affectedPath><affectedPath>tasks/deciders/search_decider/forward_search_decider.cpp</affectedPath><affectedPath>Testing/search_decider_lifecycle_test.cpp</affectedPath><affectedPath>Testing/routing_transition_test.cpp</affectedPath><affectedPath>tasks/deciders/search_decider/open_space_search_decider.cpp</affectedPath><affectedPath>tasks/deciders/search_decider/normal_junction_search_decider.cpp</affectedPath><affectedPath>tasks/deciders/search_decider/reverse_search_decider.cpp</affectedPath><affectedPath>tasks/deciders/search_decider/into_yard_junction_search_decider.cpp</affectedPath><affectedPath>tasks/deciders/search_decider/ex_lane_change_search_decider.cpp</affectedPath><affectedPath>tasks/deciders/search_decider/bridge_junction_search_decider.cpp</affectedPath><commitId>5de9ede7b0ef7ce9a53a87446f936cad038663f7</commitId><timestamp>1789884899000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 阻止取消任务后重启搜索或接收旧结果

统一搜索决策器的有效任务门禁，在环境构建前清理取消和无任务请求。SsepTask 在 Execute、Reset、提交和消费路径作废旧结果，保留后台 watcher 防止重叠提交。覆盖取消、同 ID 恢复、任务切换和新任务恢复的回归测试。
</comment><date>2026-09-20 14:14:59 +0800</date><id>5de9ede7b0ef7ce9a53a87446f936cad038663f7</id><msg>fix: 阻止取消任务后重启搜索或接收旧结果</msg><path><editType>edit</editType><file>Testing/reference_line_replan_test.cpp</file></path><path><editType>edit</editType><file>tasks/deciders/search_decider/forward_search_decider.cpp</file></path><path><editType>edit</editType><file>tasks/plan/ssep_task.hpp</file></path><path><editType>edit</editType><file>tasks/deciders/search_decider/search_decider_lifecycle.hpp</file></path><path><editType>edit</editType><file>tasks/deciders/search_decider/out_yard_junction_search_decider.cpp</file></path><path><editType>edit</editType><file>tasks/plan/ssep_task.cpp</file></path><path><editType>edit</editType><file>tasks/deciders/search_decider/bridge_junction_search_decider.cpp</file></path><path><editType>edit</editType><file>Testing/routing_transition_test.cpp</file></path><path><editType>edit</editType><file>tasks/deciders/search_decider/reverse_search_decider.cpp</file></path><path><editType>edit</editType><file>tasks/deciders/search_decider/open_space_search_decider.cpp</file></path><path><editType>edit</editType><file>tasks/deciders/search_decider/seaside_junction_search_decider.cpp</file></path><path><editType>edit</editType><file>Testing/search_decider_lifecycle_test.cpp</file></path><path><editType>edit</editType><file>tasks/deciders/search_decider/normal_junction_search_decider.cpp</file></path><path><editType>edit</editType><file>tasks/deciders/search_decider/ex_lane_change_search_decider.cpp</file></path><path><editType>edit</editType><file>tasks/deciders/search_decider/into_yard_junction_search_decider.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>ssep/scenarios/tractor_trailer_multi_segment_parking_planner.h</affectedPath><affectedPath>ssep/scenarios/tractor_trailer_single_segment_parking_planner.h</affectedPath><commitId>f77cf0272d003a7fdba607e9c35676e7d7d0fba7</commitId><timestamp>1789884911000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 补齐牵引车泊车规划器的粗路径输出

单段、多段及拉直模式规划记录优化前的粗路径，供搜索结果展示使用。每次规划和拉直失败回退时清空旧记录，避免展示上一轮或失败分支的路径。
</comment><date>2026-09-20 14:15:11 +0800</date><id>f77cf0272d003a7fdba607e9c35676e7d7d0fba7</id><msg>fix: 补齐牵引车泊车规划器的粗路径输出</msg><path><editType>edit</editType><file>ssep/scenarios/tractor_trailer_multi_segment_parking_planner.h</file></path><path><editType>edit</editType><file>ssep/scenarios/tractor_trailer_single_segment_parking_planner.h</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>ssep/scenarios/planner_utils.cc</affectedPath><affectedPath>ssep/scenarios/planner_utils.h</affectedPath><affectedPath>hmi/draw/draw_ssep.cpp</affectedPath><affectedPath>ssep/scenarios/scenario_planner_factory.h</affectedPath><affectedPath>ssep/common/utils/imv_pass_point.h</affectedPath><affectedPath>plan/prepare/ssep_input_params.hpp</affectedPath><affectedPath>hmi/draw/draw_map.cpp</affectedPath><affectedPath>ssep/ssep_planner.cc</affectedPath><affectedPath>data/ssep/ssep_ec.cpp</affectedPath><affectedPath>data/ssep/ssep_activation.cpp</affectedPath><affectedPath>Testing/ssep_scenario_config_lifecycle_test.cpp</affectedPath><affectedPath>Testing/hmi_collision_render_test.cpp</affectedPath><commitId>00794a2712bad54f003f16d5d29ac13b8c7c8c7e</commitId><timestamp>1789885030000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 在环境构建阶段统一途经点判定与显示

IMV 和牵引车泊车使用最终环境姿态及实际搜索参数判定途经点，同步有效点至搜索输入和界面，并兼容旧录包入口。接收新任务时保留新任务自己的途经点显示。采样前排除非有限姿态及超范围起终点，补充场景与绘图回归测试。
</comment><date>2026-09-20 14:17:10 +0800</date><id>00794a2712bad54f003f16d5d29ac13b8c7c8c7e</id><msg>fix: 在环境构建阶段统一途经点判定与显示</msg><path><editType>add</editType><file>ssep/common/utils/imv_pass_point.h</file></path><path><editType>edit</editType><file>data/ssep/ssep_ec.cpp</file></path><path><editType>edit</editType><file>ssep/scenarios/planner_utils.cc</file></path><path><editType>edit</editType><file>Testing/ssep_scenario_config_lifecycle_test.cpp</file></path><path><editType>add</editType><file>plan/prepare/ssep_input_params.hpp</file></path><path><editType>edit</editType><file>hmi/draw/draw_map.cpp</file></path><path><editType>edit</editType><file>Testing/hmi_collision_render_test.cpp</file></path><path><editType>edit</editType><file>hmi/draw/draw_ssep.cpp</file></path><path><editType>edit</editType><file>ssep/ssep_planner.cc</file></path><path><editType>edit</editType><file>ssep/scenarios/scenario_planner_factory.h</file></path><path><editType>edit</editType><file>data/ssep/ssep_activation.cpp</file></path><path><editType>edit</editType><file>ssep/scenarios/planner_utils.h</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>algorithm/platoon/mpc/mpc_config.hpp</affectedPath><affectedPath>Testing/platoon_safety_test.cpp</affectedPath><affectedPath>Testing/platoon_failure_csv_test.cpp</affectedPath><affectedPath>Testing/platoon_failure_case_test.cpp</affectedPath><affectedPath>algorithm/platoon/mpc/failure_case.cpp</affectedPath><affectedPath>algorithm/lattice/lattice.cpp</affectedPath><affectedPath>data/config/cfg_platoon.cpp</affectedPath><affectedPath>algorithm/platoon/platoon_safety.hpp</affectedPath><affectedPath>docs/platoon/time_headway_mpc.md</affectedPath><affectedPath>data/config/cfg_platoon.hpp</affectedPath><affectedPath>Testing/platoon_lattice_test.cpp</affectedPath><affectedPath>algorithm/lattice/platoon_trajectory1d_generator.cpp</affectedPath><affectedPath>algorithm/platoon/mpc/longitudinal_mpc.cpp</affectedPath><affectedPath>config/platoon.yaml</affectedPath><affectedPath>plan/prepare/prepare_platoon.cpp</affectedPath><commitId>fa7825775cefad3a2023020aacd4c5b98ef2ffd2</commitId><timestamp>1789956979000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>Revise platoon braking reserve and leader deceleration limits
</comment><date>2026-09-21 10:16:19 +0800</date><id>fa7825775cefad3a2023020aacd4c5b98ef2ffd2</id><msg>Revise platoon braking reserve and leader deceleration limits</msg><path><editType>edit</editType><file>Testing/platoon_failure_case_test.cpp</file></path><path><editType>edit</editType><file>algorithm/lattice/platoon_trajectory1d_generator.cpp</file></path><path><editType>edit</editType><file>algorithm/platoon/mpc/failure_case.cpp</file></path><path><editType>edit</editType><file>algorithm/lattice/lattice.cpp</file></path><path><editType>edit</editType><file>algorithm/platoon/mpc/mpc_config.hpp</file></path><path><editType>edit</editType><file>docs/platoon/time_headway_mpc.md</file></path><path><editType>edit</editType><file>Testing/platoon_lattice_test.cpp</file></path><path><editType>edit</editType><file>Testing/platoon_failure_csv_test.cpp</file></path><path><editType>edit</editType><file>data/config/cfg_platoon.hpp</file></path><path><editType>edit</editType><file>Testing/platoon_safety_test.cpp</file></path><path><editType>edit</editType><file>algorithm/platoon/mpc/longitudinal_mpc.cpp</file></path><path><editType>edit</editType><file>algorithm/platoon/platoon_safety.hpp</file></path><path><editType>edit</editType><file>data/config/cfg_platoon.cpp</file></path><path><editType>edit</editType><file>plan/prepare/prepare_platoon.cpp</file></path><path><editType>edit</editType><file>config/platoon.yaml</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>algorithm/platoon/mpc/mpc_config.hpp</affectedPath><affectedPath>Testing/platoon_safety_test.cpp</affectedPath><affectedPath>Testing/platoon_failure_csv_test.cpp</affectedPath><affectedPath>Testing/platoon_failure_case_test.cpp</affectedPath><affectedPath>algorithm/platoon/mpc/failure_case.cpp</affectedPath><affectedPath>algorithm/lattice/lattice.cpp</affectedPath><affectedPath>data/config/cfg_platoon.cpp</affectedPath><affectedPath>docs/platoon/time_headway_mpc.md</affectedPath><affectedPath>data/config/cfg_platoon.hpp</affectedPath><affectedPath>Testing/platoon_lattice_test.cpp</affectedPath><affectedPath>algorithm/lattice/platoon_trajectory1d_generator.cpp</affectedPath><affectedPath>config/platoon.yaml</affectedPath><affectedPath>algorithm/platoon/mpc/longitudinal_mpc.cpp</affectedPath><affectedPath>plan/prepare/prepare_platoon.cpp</affectedPath><commitId>36b6c645fdaa74947e48ace47702e028bbf13def</commitId><timestamp>1789958688000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>Use ego platoon deceleration limit for leader braking
</comment><date>2026-09-21 10:44:48 +0800</date><id>36b6c645fdaa74947e48ace47702e028bbf13def</id><msg>Use ego platoon deceleration limit for leader braking</msg><path><editType>edit</editType><file>Testing/platoon_lattice_test.cpp</file></path><path><editType>edit</editType><file>plan/prepare/prepare_platoon.cpp</file></path><path><editType>edit</editType><file>Testing/platoon_failure_csv_test.cpp</file></path><path><editType>edit</editType><file>config/platoon.yaml</file></path><path><editType>edit</editType><file>algorithm/platoon/mpc/failure_case.cpp</file></path><path><editType>edit</editType><file>algorithm/lattice/lattice.cpp</file></path><path><editType>edit</editType><file>algorithm/lattice/platoon_trajectory1d_generator.cpp</file></path><path><editType>edit</editType><file>Testing/platoon_safety_test.cpp</file></path><path><editType>edit</editType><file>algorithm/platoon/mpc/mpc_config.hpp</file></path><path><editType>edit</editType><file>Testing/platoon_failure_case_test.cpp</file></path><path><editType>edit</editType><file>data/config/cfg_platoon.hpp</file></path><path><editType>edit</editType><file>data/config/cfg_platoon.cpp</file></path><path><editType>edit</editType><file>algorithm/platoon/mpc/longitudinal_mpc.cpp</file></path><path><editType>edit</editType><file>docs/platoon/time_headway_mpc.md</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>Testing/keb_fixed_tail_test.cpp</affectedPath><affectedPath>algorithm/plan/keb_optimizer.cpp</affectedPath><affectedPath>algorithm/plan/keb_optimizer.hpp</affectedPath><commitId>a64dd4a6b8729a84db4812a0740662b1d14f2fa4</commitId><timestamp>1789969553000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 按优化路径目标投影修正 KEB 验收边界

动态约束验收使用目标在优化路径上的投影弧长，路沿间距与障碍物
碰撞验收使用重采样路径上的投影，避免混用参考线弧长造成误检或漏检。
保留完整延长段输出，同步覆盖 SSEP 与 Lane Follow 共用的优化入口。

新增路径缩短、路径加长及目标位于采样点之间的边界测试。
验证：工程 task 构建通过，KebFixedTailTest 共 7 项通过。

已知限制：全局最近投影在优化后回环邻近段可能存在歧义；当前测试
覆盖投影与裁剪边界，尚未覆盖实际验收调用链或原 bag 回放。
</comment><date>2026-09-21 13:45:53 +0800</date><id>a64dd4a6b8729a84db4812a0740662b1d14f2fa4</id><msg>fix: 按优化路径目标投影修正 KEB 验收边界</msg><path><editType>edit</editType><file>Testing/keb_fixed_tail_test.cpp</file></path><path><editType>edit</editType><file>algorithm/plan/keb_optimizer.hpp</file></path><path><editType>edit</editType><file>algorithm/plan/keb_optimizer.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>hmi/draw/draw_collision_detection.cpp</affectedPath><affectedPath>Testing/hmi_collision_render_test.cpp</affectedPath><affectedPath>data/lattice/ogm_crash_data.cpp</affectedPath><commitId>9ef4fb30bc8ae80e1dc23ff06220570ce1812af8</commitId><timestamp>1789977411000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 按首次碰撞位置绘制车体并清理上层碰撞状态

使用路径弧长恢复碰撞区间内的插值比例，使 HMI 车体框与首次命中位置一致。补齐上层检测关闭、无命中及重置时的索引和距离清理，增加上下层绘制回归与快照诊断。
</comment><date>2026-09-21 15:56:51 +0800</date><id>9ef4fb30bc8ae80e1dc23ff06220570ce1812af8</id><msg>fix: 按首次碰撞位置绘制车体并清理上层碰撞状态</msg><path><editType>edit</editType><file>hmi/draw/draw_collision_detection.cpp</file></path><path><editType>edit</editType><file>Testing/hmi_collision_render_test.cpp</file></path><path><editType>edit</editType><file>data/lattice/ogm_crash_data.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>ssep/coarse_search/searcher_builders/tractor_trailer_bidirectional_searcher_builder.cc</affectedPath><affectedPath>ssep/coarse_search/evaluator/evaluator.h</affectedPath><affectedPath>ssep/offboard/tools/tractor_trailer_shortest_path_heuristic_generator/generate_tables_batch.py</affectedPath><affectedPath>ssep/coarse_search/evaluator/shortest_path_heur_table.h</affectedPath><affectedPath>ssep/coarse_search/evaluator/trailer_shortest_path_heur_computer.cc</affectedPath><affectedPath>ssep/test/CMakeLists.txt</affectedPath><affectedPath>ssep/coarse_search/evaluator/trailer_heuristic_metadata.h</affectedPath><affectedPath>data/config/cfg_ssep.cpp</affectedPath><affectedPath>ssep/offboard/tools/tractor_trailer_shortest_path_heuristic_generator/README.md</affectedPath><affectedPath>ssep/offboard/tools/tractor_trailer_shortest_path_heuristic_generator/shortest_path_expander.h</affectedPath><affectedPath>ssep/offboard/tools/tractor_trailer_shortest_path_heuristic_generator/package_generator_runtime.py</affectedPath><affectedPath>ssep/offboard/scene_replay/CMakeLists.txt</affectedPath><affectedPath>ssep/offboard/tools/tractor_trailer_shortest_path_heuristic_generator/generate_shortest_path_heur_cli.cc</affectedPath><affectedPath>ssep/offboard/tools/tractor_trailer_shortest_path_heuristic_generator/test_package_generator_runtime.py</affectedPath><affectedPath>ssep/offboard/tools/tractor_trailer_shortest_path_heuristic_generator/batch_jobs.example.json</affectedPath><affectedPath>ssep/coarse_search/evaluator/trailer_shortest_path_heur_computer.h</affectedPath><affectedPath>ssep/offboard/tools/tractor_trailer_shortest_path_heuristic_generator/shortest_path_expander.cc</affectedPath><affectedPath>ssep/test/trailer_heuristic_table_test.cc</affectedPath><affectedPath>ssep/offboard/tools/tractor_trailer_shortest_path_heuristic_generator/test_generate_tables_batch.py</affectedPath><commitId>a29f2da93480e3b9ce431f0aa1f82dca409796b9</commitId><timestamp>1789977470000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>feat: 按车型校验压缩启发表并支持多服务器生成

为车头轴距、挂车轴距、铰接偏移及前后曲率建立版本化元数据，区分前进后退可达状态并压缩存储。补充原子生成、加载缓存与参数匹配校验，以及多服务器任务和运行时打包脚本。通用双向搜索按车辆参数加载，停车搜索尚不消费该表。Python 15 项及启发表 14 项回归通过。
</comment><date>2026-09-21 15:57:50 +0800</date><id>a29f2da93480e3b9ce431f0aa1f82dca409796b9</id><msg>feat: 按车型校验压缩启发表并支持多服务器生成</msg><path><editType>edit</editType><file>ssep/coarse_search/evaluator/trailer_shortest_path_heur_computer.h</file></path><path><editType>edit</editType><file>ssep/coarse_search/searcher_builders/tractor_trailer_bidirectional_searcher_builder.cc</file></path><path><editType>add</editType><file>ssep/test/trailer_heuristic_table_test.cc</file></path><path><editType>add</editType><file>ssep/offboard/tools/tractor_trailer_shortest_path_heuristic_generator/test_package_generator_runtime.py</file></path><path><editType>edit</editType><file>ssep/offboard/tools/tractor_trailer_shortest_path_heuristic_generator/generate_shortest_path_heur_cli.cc</file></path><path><editType>edit</editType><file>ssep/coarse_search/evaluator/shortest_path_heur_table.h</file></path><path><editType>edit</editType><file>ssep/coarse_search/evaluator/trailer_shortest_path_heur_computer.cc</file></path><path><editType>edit</editType><file>ssep/coarse_search/evaluator/evaluator.h</file></path><path><editType>edit</editType><file>ssep/offboard/tools/tractor_trailer_shortest_path_heuristic_generator/README.md</file></path><path><editType>edit</editType><file>data/config/cfg_ssep.cpp</file></path><path><editType>add</editType><file>ssep/offboard/tools/tractor_trailer_shortest_path_heuristic_generator/generate_tables_batch.py</file></path><path><editType>edit</editType><file>ssep/offboard/scene_replay/CMakeLists.txt</file></path><path><editType>edit</editType><file>ssep/test/CMakeLists.txt</file></path><path><editType>add</editType><file>ssep/coarse_search/evaluator/trailer_heuristic_metadata.h</file></path><path><editType>add</editType><file>ssep/offboard/tools/tractor_trailer_shortest_path_heuristic_generator/batch_jobs.example.json</file></path><path><editType>edit</editType><file>ssep/offboard/tools/tractor_trailer_shortest_path_heuristic_generator/shortest_path_expander.h</file></path><path><editType>edit</editType><file>ssep/offboard/tools/tractor_trailer_shortest_path_heuristic_generator/shortest_path_expander.cc</file></path><path><editType>add</editType><file>ssep/offboard/tools/tractor_trailer_shortest_path_heuristic_generator/test_generate_tables_batch.py</file></path><path><editType>add</editType><file>ssep/offboard/tools/tractor_trailer_shortest_path_heuristic_generator/package_generator_runtime.py</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>ssep/offboard/tools/export_driver_search_guides.py</affectedPath><affectedPath>ssep/offboard/tools/test_export_driver_search_guides.py</affectedPath><affectedPath>docs/ssep/driver_search_guide_export.md</affectedPath><affectedPath>offboard/bag_to_keb_scene/snapshot_vehicle_trace.cc</affectedPath><affectedPath>ssep/offboard/tools/plot_driver_search_guides.py</affectedPath><affectedPath>ssep/offboard/tools/export_trailer_search_guide.py</affectedPath><affectedPath>offboard/bag_to_keb_scene/CMakeLists.txt</affectedPath><commitId>8e42114286b5d15774764bd5907dd4f6d7f5bb53</commitId><timestamp>1789977486000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>feat: 从司机快照提取姿态引导线并生成核对图

导出人工驾驶车头和挂车轨迹，按档位、有效性和连续性选择倒车段，支持起终姿态匹配、重采样及 YAML 输出。提供可复用命令和路径可视化，9 项导出测试通过。
</comment><date>2026-09-21 15:58:06 +0800</date><id>8e42114286b5d15774764bd5907dd4f6d7f5bb53</id><msg>feat: 从司机快照提取姿态引导线并生成核对图</msg><path><editType>add</editType><file>offboard/bag_to_keb_scene/snapshot_vehicle_trace.cc</file></path><path><editType>add</editType><file>docs/ssep/driver_search_guide_export.md</file></path><path><editType>add</editType><file>ssep/offboard/tools/export_driver_search_guides.py</file></path><path><editType>add</editType><file>ssep/offboard/tools/export_trailer_search_guide.py</file></path><path><editType>add</editType><file>ssep/offboard/tools/plot_driver_search_guides.py</file></path><path><editType>add</editType><file>ssep/offboard/tools/test_export_driver_search_guides.py</file></path><path><editType>edit</editType><file>offboard/bag_to_keb_scene/CMakeLists.txt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>Testing/ssep_path_curvature_test.cpp</affectedPath><affectedPath>Testing/CMakeLists.txt</affectedPath><affectedPath>data/ssep/ssep_util.cpp</affectedPath><commitId>ce030599417433c0d9062c791983f1bca51b52cd</commitId><timestamp>1789977551000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 修正 SSEP 三点曲率计算的纵坐标读取

中间点误用 x 作为 y，导致曲率依赖世界坐标平移。改为读取 y，并补圆弧曲率、UTM 平移不变性及重载一致性回归，3 项测试通过。
</comment><date>2026-09-21 15:59:11 +0800</date><id>ce030599417433c0d9062c791983f1bca51b52cd</id><msg>fix: 修正 SSEP 三点曲率计算的纵坐标读取</msg><path><editType>add</editType><file>Testing/ssep_path_curvature_test.cpp</file></path><path><editType>edit</editType><file>data/ssep/ssep_util.cpp</file></path><path><editType>edit</editType><file>Testing/CMakeLists.txt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>ssep/keb_optimizer/cost_features/parking_geometric_curvature_constraint.h</affectedPath><affectedPath>ssep/test/keb_collision_weight_test.cc</affectedPath><affectedPath>ssep/test/CMakeLists.txt</affectedPath><affectedPath>ssep/scenarios/tractor_trailer_parking_collision.h</affectedPath><affectedPath>ssep/offboard/scene_replay/CMakeLists.txt</affectedPath><affectedPath>ssep/scenarios/parking_staged_optimization.h</affectedPath><affectedPath>ssep/keb_optimizer/keb_problem.cc</affectedPath><affectedPath>ssep/test/tractor_trailer_cusp_initialization_test.cc</affectedPath><affectedPath>docs/ssep/parking_sustained_curvature.md</affectedPath><affectedPath>ssep/keb_optimizer/tractor_trailer_kinematic_diagnostics.h</affectedPath><affectedPath>ssep/keb_optimizer/keb_utils.cc</affectedPath><affectedPath>ssep/keb_optimizer/tractor_trailer_keb_optimizer.cc</affectedPath><affectedPath>ssep/test/tractor_trailer_kinematic_weight_test.cc</affectedPath><affectedPath>ssep/keb_optimizer/tractor_trailer_keb_optimizer.h</affectedPath><affectedPath>ssep/scenarios/tractor_trailer_sustained_curvature.h</affectedPath><affectedPath>ssep/keb_optimizer/keb_problem.h</affectedPath><affectedPath>ssep/keb_optimizer/keb_utils.h</affectedPath><affectedPath>docs/ssep/parking_staged_optimization.md</affectedPath><affectedPath>ssep/test/tractor_trailer_kinematic_diagnostics_test.cc</affectedPath><affectedPath>ssep/test/tractor_trailer_sustained_curvature_test.cc</affectedPath><commitId>5d7ed8fa26b67931e904923c0535e8ad6979c176</commitId><timestamp>1789977722000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>feat: 增加停车分阶段优化并统一换挡与曲率校验

同步强化运动学和碰撞代价，仅保留通过完整验收且一致性改善的候选，失败阶段原地恢复状态与步长。统一牵引车出发方向及弯道换挡曲率初值，将真实机械上限与求解余量分开，并增加持续大曲率距离校验和碰撞位置诊断。新增初始化、倍率、恢复、曲率和阶段回归；统一 SSEP 72 项测试及四份现场快照通过。
</comment><date>2026-09-21 16:02:02 +0800</date><id>5d7ed8fa26b67931e904923c0535e8ad6979c176</id><msg>feat: 增加停车分阶段优化并统一换挡与曲率校验</msg><path><editType>edit</editType><file>ssep/scenarios/tractor_trailer_parking_collision.h</file></path><path><editType>edit</editType><file>ssep/keb_optimizer/cost_features/parking_geometric_curvature_constraint.h</file></path><path><editType>add</editType><file>ssep/test/tractor_trailer_kinematic_diagnostics_test.cc</file></path><path><editType>edit</editType><file>ssep/test/CMakeLists.txt</file></path><path><editType>edit</editType><file>ssep/keb_optimizer/keb_utils.cc</file></path><path><editType>edit</editType><file>ssep/keb_optimizer/keb_problem.h</file></path><path><editType>add</editType><file>ssep/test/tractor_trailer_sustained_curvature_test.cc</file></path><path><editType>add</editType><file>ssep/scenarios/parking_staged_optimization.h</file></path><path><editType>edit</editType><file>ssep/keb_optimizer/keb_problem.cc</file></path><path><editType>add</editType><file>ssep/scenarios/tractor_trailer_sustained_curvature.h</file></path><path><editType>edit</editType><file>ssep/keb_optimizer/tractor_trailer_keb_optimizer.cc</file></path><path><editType>add</editType><file>ssep/test/keb_collision_weight_test.cc</file></path><path><editType>add</editType><file>ssep/keb_optimizer/tractor_trailer_kinematic_diagnostics.h</file></path><path><editType>add</editType><file>ssep/test/tractor_trailer_cusp_initialization_test.cc</file></path><path><editType>add</editType><file>docs/ssep/parking_sustained_curvature.md</file></path><path><editType>edit</editType><file>ssep/keb_optimizer/keb_utils.h</file></path><path><editType>edit</editType><file>ssep/offboard/scene_replay/CMakeLists.txt</file></path><path><editType>add</editType><file>docs/ssep/parking_staged_optimization.md</file></path><path><editType>edit</editType><file>ssep/keb_optimizer/tractor_trailer_keb_optimizer.h</file></path><path><editType>add</editType><file>ssep/test/tractor_trailer_kinematic_weight_test.cc</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>replayer/scene_data/compact_proto_codec.cpp</affectedPath><affectedPath>ssep/offboard/ssep_planner_wrapper.cc</affectedPath><affectedPath>ssep/test/search_guide_loader_test.cc</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_decoder.cpp</affectedPath><affectedPath>ssep/param_loader/search_guide_loader.cc</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_decoder.hpp</affectedPath><affectedPath>ssep/data_structures/ssep_input.cc</affectedPath><affectedPath>replayer/scene_data/generated/compact_typed_field_codec.hpp</affectedPath><affectedPath>replayer/scene_data/compact_custom_field_proto_codec.cpp</affectedPath><affectedPath>Testing/scene_replay_foundation_test.cpp</affectedPath><affectedPath>replayer/scene_data/full_proto_custom_encoder.cpp</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_encoder.cpp</affectedPath><affectedPath>ssep/test/local_regression/generate_pose_regression.py</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_encoder.hpp</affectedPath><affectedPath>replayer/scene_data/generated/compact_scene_descriptor.pb</affectedPath><affectedPath>proto/pnc_scene/compact_replay_input.proto</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_field_roles.json</affectedPath><affectedPath>replayer/scene_data/generated/compact_typed_field_codec.cpp</affectedPath><affectedPath>replayer/scene_data/compact_numeric_policy.yaml</affectedPath><affectedPath>ssep/offboard/scene_replay/replay_scene_frame_cli.cc</affectedPath><affectedPath>ssep/protos/scene.proto</affectedPath><affectedPath>ssep/offboard/generate_scene_data/transform_to_body_frame_cli.cc</affectedPath><affectedPath>docs/pnc_algorithm_replay/plan_frame_field_workflow.md</affectedPath><affectedPath>ssep/data_structures/search_guide.h</affectedPath><affectedPath>replayer/scene_data/plan_frame_persistence_policy.yaml</affectedPath><affectedPath>ssep/test/local_regression/test_pose_regression.py</affectedPath><affectedPath>replayer/scene_data/plan_frame_field_roles.csv</affectedPath><affectedPath>replayer/scene_data/generated/scene_replay_api_descriptor.pb</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_descriptor.pb</affectedPath><commitId>fa385029dd592461c18533baeaeb8e9962181c04</commitId><timestamp>1789977761000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>feat: 统一保存和回放带挂车姿态的搜索引导库

复用现有 YAML 引导库，支持车头及挂车姿态并校验点数、坐标和有限值。Full 保留原值，Compact 复用量化 XY 并无损保存姿态元数据，兼容旧 XY 引导线，支持 Candidate 独立恢复。同步独立 SSEP 快照与坐标转换，完成字段生成、兼容性检查及编解码回归。
</comment><date>2026-09-21 16:02:41 +0800</date><id>fa385029dd592461c18533baeaeb8e9962181c04</id><msg>feat: 统一保存和回放带挂车姿态的搜索引导库</msg><path><editType>edit</editType><file>replayer/scene_data/generated/scene_replay_api_descriptor.pb</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/compact_typed_field_codec.cpp</file></path><path><editType>edit</editType><file>ssep/test/local_regression/generate_pose_regression.py</file></path><path><editType>edit</editType><file>Testing/scene_replay_foundation_test.cpp</file></path><path><editType>edit</editType><file>proto/pnc_scene/compact_replay_input.proto</file></path><path><editType>edit</editType><file>ssep/param_loader/search_guide_loader.cc</file></path><path><editType>edit</editType><file>replayer/scene_data/full_proto_custom_encoder.cpp</file></path><path><editType>edit</editType><file>ssep/test/local_regression/test_pose_regression.py</file></path><path><editType>edit</editType><file>ssep/data_structures/search_guide.h</file></path><path><editType>edit</editType><file>ssep/offboard/scene_replay/replay_scene_frame_cli.cc</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/compact_typed_field_codec.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_field_roles.json</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_descriptor.pb</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_decoder.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/compact_numeric_policy.yaml</file></path><path><editType>edit</editType><file>ssep/test/search_guide_loader_test.cc</file></path><path><editType>edit</editType><file>replayer/scene_data/plan_frame_persistence_policy.yaml</file></path><path><editType>edit</editType><file>replayer/scene_data/plan_frame_field_roles.csv</file></path><path><editType>edit</editType><file>ssep/offboard/ssep_planner_wrapper.cc</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_encoder.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/compact_scene_descriptor.pb</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_decoder.hpp</file></path><path><editType>edit</editType><file>ssep/protos/scene.proto</file></path><path><editType>edit</editType><file>replayer/scene_data/compact_proto_codec.cpp</file></path><path><editType>edit</editType><file>ssep/data_structures/ssep_input.cc</file></path><path><editType>edit</editType><file>ssep/offboard/generate_scene_data/transform_to_body_frame_cli.cc</file></path><path><editType>edit</editType><file>docs/pnc_algorithm_replay/plan_frame_field_workflow.md</file></path><path><editType>edit</editType><file>replayer/scene_data/compact_custom_field_proto_codec.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_encoder.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>ssep/scenarios/scenario_planner_factory.h</affectedPath><affectedPath>ssep/test/search_guide_scene_test.cc</affectedPath><affectedPath>ssep/scenarios/trailer_search_guide_progress.h</affectedPath><affectedPath>ssep/offboard/scene_replay/CMakeLists.txt</affectedPath><affectedPath>docs/ssep/trailer_search_guide.md</affectedPath><affectedPath>ssep/test/ssep_planner_test.cc</affectedPath><affectedPath>ssep/coarse_search/searcher_builders/tractor_trailer_multi_segment_parking_bidirectional_searcher_builder.cc</affectedPath><affectedPath>ssep/coarse_search/searcher_builders/tractor_trailer_multi_segment_parking_bidirectional_searcher_builder.h</affectedPath><affectedPath>config/config_truck/ssep_port_scenarios_jinxi.yaml</affectedPath><affectedPath>ssep/test/trailer_search_guide_test.cc</affectedPath><affectedPath>ssep/coarse_search/evaluator/trailer_search_guide.h</affectedPath><affectedPath>ssep/data_structures/search_guide_match.h</affectedPath><affectedPath>ssep/coarse_search/evaluator/trailer_search_guide.cc</affectedPath><affectedPath>ssep/coarse_search/searcher_builders/tractor_trailer_single_segment_parking_searcher_builder.cc</affectedPath><affectedPath>ssep/scenarios/tractor_trailer_reverse_priority_parking_planner.h</affectedPath><affectedPath>ssep/scenarios/search_guide_fallback_planner.h</affectedPath><affectedPath>hmi/draw/draw_map.cpp</affectedPath><affectedPath>ssep/ssep_planner.cc</affectedPath><affectedPath>ssep/scenarios/tractor_trailer_multi_segment_parking_planner.h</affectedPath><affectedPath>ssep/coarse_search/searcher_builders/tractor_trailer_single_segment_parking_searcher_builder.h</affectedPath><affectedPath>data/ssep/ssep_ec.cpp</affectedPath><affectedPath>ssep/scenarios/tractor_trailer_single_segment_parking_planner.h</affectedPath><commitId>647f84a8e409d94048136ff98d919a3afe9a3538</commitId><timestamp>1789977796000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>feat: 自动匹配挂车参考路径引导停车搜索并接入分阶段验收

复用共享引导库，区分多段任务与倒车重搜索，按实际起点渐变适配挂轴参考并保留匹配区间顺序，防止重叠路径投影回退。引导失败回退普通搜索，记录粗路径，HMI 显示停车参考。接入可配置多步优化与持续曲率验收，明确真实机械上限。补匹配、进度、非法输入及重叠边界测试，四份现场快照回归通过。
</comment><date>2026-09-21 16:03:16 +0800</date><id>647f84a8e409d94048136ff98d919a3afe9a3538</id><msg>feat: 自动匹配挂车参考路径引导停车搜索并接入分阶段验收</msg><path><editType>add</editType><file>ssep/scenarios/trailer_search_guide_progress.h</file></path><path><editType>edit</editType><file>ssep/coarse_search/searcher_builders/tractor_trailer_single_segment_parking_searcher_builder.h</file></path><path><editType>add</editType><file>ssep/test/trailer_search_guide_test.cc</file></path><path><editType>edit</editType><file>ssep/coarse_search/searcher_builders/tractor_trailer_single_segment_parking_searcher_builder.cc</file></path><path><editType>add</editType><file>docs/ssep/trailer_search_guide.md</file></path><path><editType>add</editType><file>ssep/coarse_search/evaluator/trailer_search_guide.cc</file></path><path><editType>edit</editType><file>ssep/scenarios/tractor_trailer_single_segment_parking_planner.h</file></path><path><editType>add</editType><file>ssep/coarse_search/evaluator/trailer_search_guide.h</file></path><path><editType>edit</editType><file>ssep/coarse_search/searcher_builders/tractor_trailer_multi_segment_parking_bidirectional_searcher_builder.h</file></path><path><editType>add</editType><file>ssep/scenarios/search_guide_fallback_planner.h</file></path><path><editType>edit</editType><file>ssep/offboard/scene_replay/CMakeLists.txt</file></path><path><editType>edit</editType><file>ssep/data_structures/search_guide_match.h</file></path><path><editType>edit</editType><file>ssep/scenarios/tractor_trailer_multi_segment_parking_planner.h</file></path><path><editType>edit</editType><file>hmi/draw/draw_map.cpp</file></path><path><editType>edit</editType><file>ssep/ssep_planner.cc</file></path><path><editType>edit</editType><file>config/config_truck/ssep_port_scenarios_jinxi.yaml</file></path><path><editType>add</editType><file>ssep/test/search_guide_scene_test.cc</file></path><path><editType>edit</editType><file>ssep/test/ssep_planner_test.cc</file></path><path><editType>edit</editType><file>data/ssep/ssep_ec.cpp</file></path><path><editType>edit</editType><file>ssep/coarse_search/searcher_builders/tractor_trailer_multi_segment_parking_bidirectional_searcher_builder.cc</file></path><path><editType>edit</editType><file>ssep/scenarios/scenario_planner_factory.h</file></path><path><editType>edit</editType><file>ssep/scenarios/tractor_trailer_reverse_priority_parking_planner.h</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>config/config_truck/ssep_port_scenarios_jinxi.yaml</affectedPath><affectedPath>Testing/search_decider_lifecycle_test.cpp</affectedPath><affectedPath>tasks/deciders/search_decider/forward_search_decider.cpp</affectedPath><commitId>868661bc704beda97ee046170900442506bbc4de</commitId><timestamp>1789977811000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>feat: 按停车场景控制指令重规划的拉直点生成

匹配当前请求场景读取 enable_command_replan_straighten，津西关闭自动拉直时保留任务途经点并清除残留拉直状态。覆盖开关关闭、开启和缺省行为回归。
</comment><date>2026-09-21 16:03:31 +0800</date><id>868661bc704beda97ee046170900442506bbc4de</id><msg>feat: 按停车场景控制指令重规划的拉直点生成</msg><path><editType>edit</editType><file>config/config_truck/ssep_port_scenarios_jinxi.yaml</file></path><path><editType>edit</editType><file>tasks/deciders/search_decider/forward_search_decider.cpp</file></path><path><editType>edit</editType><file>Testing/search_decider_lifecycle_test.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>data/ssep/normal_junction_ec.cpp</affectedPath><affectedPath>data/ssep/out_yard_junction_ec.cpp</affectedPath><commitId>199428b11ed85db60ccd57733a5ab3d6040c674f</commitId><timestamp>1789977846000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 调整津西和中铁联集搜索通道构造

津西普通路口不构造默认终点通道，中铁联集出堆场不构造默认起点通道，沿用各场景重建前清空通道的流程。已完成 pnc_node 编译。
</comment><date>2026-09-21 16:04:06 +0800</date><id>199428b11ed85db60ccd57733a5ab3d6040c674f</id><msg>fix: 调整津西和中铁联集搜索通道构造</msg><path><editType>edit</editType><file>data/ssep/normal_junction_ec.cpp</file></path><path><editType>edit</editType><file>data/ssep/out_yard_junction_ec.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>data/plan/guide_line.cpp</affectedPath><commitId>f64f308926a530239acc7205a5bbb19eaaaacb8d</commitId><timestamp>1789977846000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 将 SSEP 首段引导线向起点前延伸二十米

首段起点前的几何补线由十米增加为二十米，沿用原方向和半米采样间隔。已完成 pnc_node 编译。
</comment><date>2026-09-21 16:04:06 +0800</date><id>f64f308926a530239acc7205a5bbb19eaaaacb8d</id><msg>fix: 将 SSEP 首段引导线向起点前延伸二十米</msg><path><editType>edit</editType><file>data/plan/guide_line.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>ssep/keb_optimizer/imv_keb_optimizer.cc</affectedPath><commitId>78c221b234cf8aacf42aac13c5d3935c249324c6</commitId><timestamp>1789977846000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>chore: 减少 IMV 运动学验收失败时的逐点日志

保留失败边和归一化误差日志，关闭整条路径的逐点打印，避免现场重复失败产生大量日志。
</comment><date>2026-09-21 16:04:06 +0800</date><id>78c221b234cf8aacf42aac13c5d3935c249324c6</id><msg>chore: 减少 IMV 运动学验收失败时的逐点日志</msg><path><editType>edit</editType><file>ssep/keb_optimizer/imv_keb_optimizer.cc</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>plan/prepare/prepare_platoon.hpp</affectedPath><affectedPath>Testing/platoon_safety_test.cpp</affectedPath><affectedPath>Testing/platoon_mpc_core_test.cpp</affectedPath><affectedPath>Testing/platoon_failure_csv_test.cpp</affectedPath><affectedPath>algorithm/platoon/mpc/longitudinal_mpc.hpp</affectedPath><affectedPath>data/config/cfg_platoon.cpp</affectedPath><affectedPath>docs/platoon/qp_warm_start.md</affectedPath><affectedPath>data/config/cfg_platoon.hpp</affectedPath><affectedPath>Testing/platoon_lane_change_test.cpp</affectedPath><affectedPath>Testing/platoon_lattice_test.cpp</affectedPath><affectedPath>algorithm/platoon/mpc/qp_solver.cpp</affectedPath><affectedPath>algorithm/platoon/mpc/longitudinal_mpc.cpp</affectedPath><affectedPath>Testing/platoon_qp_solver_test.cpp</affectedPath><affectedPath>plan/prepare/prepare_platoon.cpp</affectedPath><affectedPath>algorithm/platoon/mpc/qp_solver.hpp</affectedPath><commitId>b7390ea5f18ff317f0e6dc095eb3c0e264a0f0e1</commitId><timestamp>1789979267000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>Optimize platoon QP reuse and gate low-speed following

Retain qpOASES state for compatible problems and remove rows guaranteed by
native variable bounds. Honor the configured MPC time budget without the
40 ms clamps. Add a configurable 0.5 m/s minimum ego speed for platoon
eligibility, with diagnostics and backward-compatible config serialization.

Validate with distributed production builds, 46 core tests, 45 targeted
eligibility/integration tests, and recorded CSV replay. Document remaining
cold-start performance limitations and existing broader integration failures.
</comment><date>2026-09-21 16:27:47 +0800</date><id>b7390ea5f18ff317f0e6dc095eb3c0e264a0f0e1</id><msg>Optimize platoon QP reuse and gate low-speed following</msg><path><editType>edit</editType><file>Testing/platoon_safety_test.cpp</file></path><path><editType>edit</editType><file>algorithm/platoon/mpc/qp_solver.cpp</file></path><path><editType>edit</editType><file>Testing/platoon_qp_solver_test.cpp</file></path><path><editType>edit</editType><file>Testing/platoon_failure_csv_test.cpp</file></path><path><editType>edit</editType><file>algorithm/platoon/mpc/qp_solver.hpp</file></path><path><editType>edit</editType><file>Testing/platoon_lattice_test.cpp</file></path><path><editType>edit</editType><file>algorithm/platoon/mpc/longitudinal_mpc.cpp</file></path><path><editType>edit</editType><file>Testing/platoon_mpc_core_test.cpp</file></path><path><editType>edit</editType><file>plan/prepare/prepare_platoon.hpp</file></path><path><editType>edit</editType><file>data/config/cfg_platoon.cpp</file></path><path><editType>edit</editType><file>Testing/platoon_lane_change_test.cpp</file></path><path><editType>edit</editType><file>data/config/cfg_platoon.hpp</file></path><path><editType>add</editType><file>docs/platoon/qp_warm_start.md</file></path><path><editType>edit</editType><file>algorithm/platoon/mpc/longitudinal_mpc.hpp</file></path><path><editType>edit</editType><file>plan/prepare/prepare_platoon.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>sink/ros_sink_platoon_info.hpp</affectedPath><affectedPath>Testing/ego_trajectory_encoding_test.cpp</affectedPath><affectedPath>sink/ros_sink_platoon_info.cpp</affectedPath><affectedPath>Testing/platoon_lane_change_collision_test.cpp</affectedPath><affectedPath>data/platoon/platoon_info.cpp</affectedPath><affectedPath>CMakeLists.txt</affectedPath><affectedPath>sink/ego_trajectory_encoding.hpp</affectedPath><affectedPath>docs/platoon/platoon_manager_vehicle_info_interface_zh.md</affectedPath><affectedPath>sink/ros_sink_platoon_lane_change.hpp</affectedPath><affectedPath>sink/ros_sink_platoon_lane_change.cpp</affectedPath><affectedPath>docs/platoon/lane_change.md</affectedPath><affectedPath>Testing/platoon_lane_change_test.cpp</affectedPath><affectedPath>sink/module.cpp</affectedPath><commitId>fdb289b855a8018d9a7302101bafe99deb354d19</commitId><timestamp>1789994399000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>Publish compact current trajectory and lane-change fields in PNCInfo
</comment><date>2026-09-21 20:39:59 +0800</date><id>fdb289b855a8018d9a7302101bafe99deb354d19</id><msg>Publish compact current trajectory and lane-change fields in PNCInfo</msg><path><editType>add</editType><file>Testing/ego_trajectory_encoding_test.cpp</file></path><path><editType>edit</editType><file>data/platoon/platoon_info.cpp</file></path><path><editType>delete</editType><file>sink/ros_sink_platoon_lane_change.cpp</file></path><path><editType>edit</editType><file>docs/platoon/platoon_manager_vehicle_info_interface_zh.md</file></path><path><editType>add</editType><file>sink/ros_sink_platoon_info.hpp</file></path><path><editType>add</editType><file>sink/ros_sink_platoon_info.cpp</file></path><path><editType>edit</editType><file>sink/module.cpp</file></path><path><editType>edit</editType><file>docs/platoon/lane_change.md</file></path><path><editType>edit</editType><file>Testing/platoon_lane_change_collision_test.cpp</file></path><path><editType>add</editType><file>sink/ego_trajectory_encoding.hpp</file></path><path><editType>edit</editType><file>Testing/platoon_lane_change_test.cpp</file></path><path><editType>edit</editType><file>CMakeLists.txt</file></path><path><editType>delete</editType><file>sink/ros_sink_platoon_lane_change.hpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>Testing/generated_variant_config_patch_test.cpp</affectedPath><affectedPath>Testing/path_pair_validation_test.cpp</affectedPath><affectedPath>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_decoder.cpp</affectedPath><affectedPath>scenarios/bulkload_scenario/bulkload_ssep_forward_stage.hpp</affectedPath><affectedPath>scenarios/task_condition_evaluator.hpp</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_decoder.hpp</affectedPath><affectedPath>scenarios/bulkload_scenario/bulkload_ssep_forward_stage.cpp</affectedPath><affectedPath>scenarios/task_condition_evaluator.cpp</affectedPath><affectedPath>Testing/cfg_scenarios_proto_codec_test.cpp</affectedPath><affectedPath>replayer/scene_data/generated/compact_typed_field_codec.hpp</affectedPath><affectedPath>config/config_truck/scenario.yaml</affectedPath><affectedPath>Testing/scene_replay_foundation_test.cpp</affectedPath><affectedPath>replayer/algorithm_replay/generated/scenario_task_chains.json</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_encoder.cpp</affectedPath><affectedPath>tasks/other_tasks/create_guide_line.cpp</affectedPath><affectedPath>docs/reverse_pickup_search.md</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_encoder.hpp</affectedPath><affectedPath>tasks/other_tasks/stitch_path_data_to_path.cpp</affectedPath><affectedPath>Testing/reverse_pickup_stage_selector_test.cpp</affectedPath><affectedPath>replayer/scene_data/generated/compact_scene_descriptor.pb</affectedPath><affectedPath>replayer/scene_data/cfg_scenarios_proto_codec.cpp</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_field_roles.json</affectedPath><affectedPath>proto/config.proto</affectedPath><affectedPath>replayer/scene_data/generated/compact_typed_field_codec.cpp</affectedPath><affectedPath>data/config/cfg_stage.cpp</affectedPath><affectedPath>data/config/cfg_stage.hpp</affectedPath><affectedPath>docs/pnc_algorithm_replay/plan_frame_field_workflow.md</affectedPath><affectedPath>replayer/scene_data/plan_frame_field_roles.csv</affectedPath><affectedPath>replayer/scene_data/generated/scene_replay_api_descriptor.pb</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_descriptor.pb</affectedPath><commitId>fc82595f13ddc93bf540df4db32d17980c9648b5</commitId><timestamp>1789995244000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>refactor: 用任务选择组统一 Bulk SSEP 规划链

使用可选 SSEP_WAIT、TRAILER_REVERSE 和默认 FORWARD 组选择差异任务，公共任务只在 task 列表配置一次。
等待期间复用历史引导线和路径，继续执行现有纵向停车链；无 WAIT 配置保持正常任务执行。
删除 ssep_result_tasks 及冗余过滤，保留 Proto 字段号并同步回放合同与生成物，覆盖旧配置兼容和任务选择回归。

验证：最终改动集 346 项测试通过、2 项可选数据测试跳过；合同生成和兼容性检查通过，PNC 编译成功。
</comment><date>2026-09-21 20:54:04 +0800</date><id>fc82595f13ddc93bf540df4db32d17980c9648b5</id><msg>refactor: 用任务选择组统一 Bulk SSEP 规划链</msg><path><editType>edit</editType><file>tasks/other_tasks/create_guide_line.cpp</file></path><path><editType>edit</editType><file>Testing/reverse_pickup_stage_selector_test.cpp</file></path><path><editType>edit</editType><file>data/config/cfg_stage.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_decoder.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</file></path><path><editType>edit</editType><file>replayer/scene_data/plan_frame_field_roles.csv</file></path><path><editType>edit</editType><file>replayer/scene_data/cfg_scenarios_proto_codec.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/compact_typed_field_codec.cpp</file></path><path><editType>edit</editType><file>Testing/scene_replay_foundation_test.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_encoder.hpp</file></path><path><editType>edit</editType><file>docs/reverse_pickup_search.md</file></path><path><editType>edit</editType><file>docs/pnc_algorithm_replay/plan_frame_field_workflow.md</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/scene_replay_api_descriptor.pb</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/compact_typed_field_codec.hpp</file></path><path><editType>edit</editType><file>replayer/algorithm_replay/generated/scenario_task_chains.json</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_encoder.cpp</file></path><path><editType>edit</editType><file>scenarios/bulkload_scenario/bulkload_ssep_forward_stage.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/compact_scene_descriptor.pb</file></path><path><editType>edit</editType><file>Testing/path_pair_validation_test.cpp</file></path><path><editType>edit</editType><file>config/config_truck/scenario.yaml</file></path><path><editType>edit</editType><file>Testing/generated_variant_config_patch_test.cpp</file></path><path><editType>edit</editType><file>proto/config.proto</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_field_roles.json</file></path><path><editType>edit</editType><file>scenarios/bulkload_scenario/bulkload_ssep_forward_stage.cpp</file></path><path><editType>edit</editType><file>scenarios/task_condition_evaluator.hpp</file></path><path><editType>edit</editType><file>Testing/cfg_scenarios_proto_codec_test.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_descriptor.pb</file></path><path><editType>edit</editType><file>data/config/cfg_stage.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_decoder.cpp</file></path><path><editType>edit</editType><file>scenarios/task_condition_evaluator.cpp</file></path><path><editType>edit</editType><file>tasks/other_tasks/stitch_path_data_to_path.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>docs/reverse_pickup_search.md</affectedPath><affectedPath>Testing/path_pair_validation_test.cpp</affectedPath><affectedPath>plan/prepare/prepare_default.cpp</affectedPath><commitId>e86593c17bb6ce216cdbe05e45c6bddd9b4e46fa</commitId><timestamp>1789995244000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 保留倒车历史回落的车头挂车配对

上一帧输出失效后，从 last_path 恢复 TT 倒车路径时使用成对转换，避免单路径转换丢失挂车历史。
配对缺失或匹配失败时清理完整输出；补充真实预处理到 WAIT 拼接的恢复、缺配对拒绝和前进路径回归。
</comment><date>2026-09-21 20:54:04 +0800</date><id>e86593c17bb6ce216cdbe05e45c6bddd9b4e46fa</id><msg>fix: 保留倒车历史回落的车头挂车配对</msg><path><editType>edit</editType><file>docs/reverse_pickup_search.md</file></path><path><editType>edit</editType><file>Testing/path_pair_validation_test.cpp</file></path><path><editType>edit</editType><file>plan/prepare/prepare_default.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>Testing/routing_map_guard_test.cpp</affectedPath><affectedPath>tasks/deciders/long_decider/constrain_decider.cpp</affectedPath><commitId>8131459bc5f1581d87871d05c08d3a63e876e603</commitId><timestamp>1790000088000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 修正非零自车路径起点的 OGM 约束位置

地面和上层碰撞约束在查询路径位置时加回 ego_match.s()，保留已按自车计算的碰撞距离，避免重复扣减。碰撞轮廓直接使用命中索引，避免固定采样距离推算造成偏移。

新增零与非零起点、正反向及上下层约束回归；RelWithDebInfo 构建和工程生成文件检查通过，pnc_routing_map_guard_test 全部 58 项测试通过。
</comment><date>2026-09-21 22:14:48 +0800</date><id>8131459bc5f1581d87871d05c08d3a63e876e603</id><msg>fix: 修正非零自车路径起点的 OGM 约束位置</msg><path><editType>edit</editType><file>Testing/routing_map_guard_test.cpp</file></path><path><editType>edit</editType><file>tasks/deciders/long_decider/constrain_decider.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>data/plan/ssep_data.cpp</affectedPath><affectedPath>proto/plan_data.proto</affectedPath><affectedPath>data/plan/ssep_data.hpp</affectedPath><affectedPath>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_decoder.cpp</affectedPath><affectedPath>tasks/plan/ssep_task.hpp</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_decoder.hpp</affectedPath><affectedPath>tasks/plan/ssep_task.cpp</affectedPath><affectedPath>Testing/search_decider_lifecycle_test.cpp</affectedPath><affectedPath>Testing/routing_transition_test.cpp</affectedPath><affectedPath>data/other/parking_pass_progress.cpp</affectedPath><affectedPath>replayer/scene_data/generated/compact_typed_field_codec.hpp</affectedPath><affectedPath>replayer/scene_data/compact_custom_field_proto_codec.cpp</affectedPath><affectedPath>Testing/scene_replay_foundation_test.cpp</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_encoder.cpp</affectedPath><affectedPath>data/other/parking_pass_progress.hpp</affectedPath><affectedPath>replayer/scene_data/full_proto_custom_encoder.cpp</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_encoder.hpp</affectedPath><affectedPath>replayer/scene_data/generated/compact_scene_descriptor.pb</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_field_roles.json</affectedPath><affectedPath>replayer/scene_data/generated/full_custom_codec_coverage_audit.yaml</affectedPath><affectedPath>data/ssep/forward_ec.cpp</affectedPath><affectedPath>replayer/scene_data/generated/compact_typed_field_codec.cpp</affectedPath><affectedPath>plan/prepare/prepare_state.cpp</affectedPath><affectedPath>Testing/parking_pass_progress_test.cpp</affectedPath><affectedPath>docs/pnc_algorithm_replay/plan_frame_field_workflow.md</affectedPath><affectedPath>data/ssep/forward_ec.hpp</affectedPath><affectedPath>replayer/scene_data/plan_frame_field_roles.csv</affectedPath><affectedPath>Testing/CMakeLists.txt</affectedPath><affectedPath>replayer/scene_data/generated/scene_replay_api_descriptor.pb</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_descriptor.pb</affectedPath><commitId>a3271a566b889611d111a2ef05255397fc88c3e0</commitId><timestamp>1790001416000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 重搜索时移除已完成的停车途经点

按任务身份和实际换向进度记录停车途经点完成状态，跨重搜和路径清空保留，
取消、换任务或任务几何变化时失效。仅清除搜索请求中的旧途经点及其采样，
保留原始任务点、场景匹配、拉直和历史路径复用策略。

补充停车异步结果归属校验及单次消费，避免同 ID 任务点变更后接收旧结果。
新增 Full/Compact 原值持久化和旧消息兼容处理，并同步生成物及合同说明。

验证：117 项 SSEP 回归通过；拉直开关 true/false/缺省与途经点完成状态的
6 种组合通过；任务切换及 Full/Compact 回归已通过；生成物检查通过；
pnc_node 已经项目分布式编译入口构建成功。
</comment><date>2026-09-21 22:36:56 +0800</date><id>a3271a566b889611d111a2ef05255397fc88c3e0</id><msg>fix: 重搜索时移除已完成的停车途经点</msg><path><editType>edit</editType><file>replayer/scene_data/generated/compact_scene_descriptor.pb</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_decoder.hpp</file></path><path><editType>edit</editType><file>tasks/plan/ssep_task.hpp</file></path><path><editType>edit</editType><file>Testing/routing_transition_test.cpp</file></path><path><editType>edit</editType><file>data/plan/ssep_data.cpp</file></path><path><editType>add</editType><file>data/other/parking_pass_progress.cpp</file></path><path><editType>edit</editType><file>plan/prepare/prepare_state.cpp</file></path><path><editType>edit</editType><file>Testing/scene_replay_foundation_test.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</file></path><path><editType>edit</editType><file>Testing/CMakeLists.txt</file></path><path><editType>edit</editType><file>proto/plan_data.proto</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_encoder.cpp</file></path><path><editType>edit</editType><file>Testing/search_decider_lifecycle_test.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_field_roles.json</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/compact_typed_field_codec.hpp</file></path><path><editType>add</editType><file>Testing/parking_pass_progress_test.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/compact_custom_field_proto_codec.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_descriptor.pb</file></path><path><editType>edit</editType><file>docs/pnc_algorithm_replay/plan_frame_field_workflow.md</file></path><path><editType>edit</editType><file>data/ssep/forward_ec.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/scene_replay_api_descriptor.pb</file></path><path><editType>edit</editType><file>data/ssep/forward_ec.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_encoder.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/plan_frame_field_roles.csv</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/full_custom_codec_coverage_audit.yaml</file></path><path><editType>edit</editType><file>data/plan/ssep_data.hpp</file></path><path><editType>add</editType><file>data/other/parking_pass_progress.hpp</file></path><path><editType>edit</editType><file>tasks/plan/ssep_task.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/full_proto_custom_encoder.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_decoder.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/compact_typed_field_codec.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>ssep/test/ssep_planner_test.cc</affectedPath><affectedPath>ssep/scenarios/tractor_trailer_parking_maneuver.h</affectedPath><affectedPath>ssep/keb_optimizer/tractor_trailer_keb_optimizer.cc</affectedPath><affectedPath>ssep/coarse_search/bidirectional_hybrid_astar_search_engine.cc</affectedPath><affectedPath>ssep/keb_optimizer/tractor_trailer_keb_optimizer.h</affectedPath><affectedPath>ssep/scenarios/stitching_replanner.h</affectedPath><affectedPath>ssep/scenarios/tractor_trailer_reverse_priority_parking_planner.h</affectedPath><affectedPath>ssep/scenarios/scenario_planner_factory.h</affectedPath><affectedPath>ssep/ssep_planner.cc</affectedPath><commitId>58c0bd4539ab857f22a735775d14f6a3a5f1c864</commitId><timestamp>1790042983000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 完善多段停车暖启动验收与搜索兜底

停车重搜索优先对剩余历史路径进行多步优化，手动热启动和换向重搜均可进入；失败后才执行引导搜索与普通搜索。
移除已完成途经点后保留前进调整能力，允许多段停车双向起步，保持单段倒车及有序途经点约束。首步候选按实际方向执行碰撞检查，避免未知方向漏检或虚增换向代价。
统一历史路径方向、固定尾段运动学、机械及持续曲率、全车碰撞和端点验收。实测首控制保持固定，未知首曲率在多步优化中使用真实机械上限。

验证：57 项相关 C++ 回归通过，5 组现场回放通过，pnc_node 与回放工具分布式构建通过。
</comment><date>2026-09-22 10:09:43 +0800</date><id>58c0bd4539ab857f22a735775d14f6a3a5f1c864</id><msg>fix: 完善多段停车暖启动验收与搜索兜底</msg><path><editType>edit</editType><file>ssep/keb_optimizer/tractor_trailer_keb_optimizer.cc</file></path><path><editType>edit</editType><file>ssep/scenarios/tractor_trailer_parking_maneuver.h</file></path><path><editType>edit</editType><file>ssep/ssep_planner.cc</file></path><path><editType>edit</editType><file>ssep/test/ssep_planner_test.cc</file></path><path><editType>edit</editType><file>ssep/coarse_search/bidirectional_hybrid_astar_search_engine.cc</file></path><path><editType>edit</editType><file>ssep/scenarios/tractor_trailer_reverse_priority_parking_planner.h</file></path><path><editType>edit</editType><file>ssep/scenarios/stitching_replanner.h</file></path><path><editType>edit</editType><file>ssep/scenarios/scenario_planner_factory.h</file></path><path><editType>edit</editType><file>ssep/keb_optimizer/tractor_trailer_keb_optimizer.h</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>ssep/test/local_regression/test_scene_vis_geometry.py</affectedPath><affectedPath>ssep/offboard/servers/scene_vis_html_template.cc</affectedPath><affectedPath>ssep/test/local_regression/test_scene_vis_obstacles.py</affectedPath><affectedPath>ssep/common/utils/scene_frame_visualization.cc</affectedPath><commitId>e117ac9fd5bdc34d2d983a644cf009fe394e6952</commitId><timestamp>1790042993000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 对齐停车回放挂车轮廓与实际障碍输入

修正网页当前、目标和路径挂车框的铰接偏移符号，补齐离线绘图的铰接偏移，统一车辆模型的参考点。
存在精确障碍输入时默认显示原始障碍线，将派生显示轮廓独立标注并允许切换；兼容旧快照显示。

验证：2 项执行生产 JavaScript 的几何与图层回归通过，可视化服务构建通过。
</comment><date>2026-09-22 10:09:53 +0800</date><id>e117ac9fd5bdc34d2d983a644cf009fe394e6952</id><msg>fix: 对齐停车回放挂车轮廓与实际障碍输入</msg><path><editType>add</editType><file>ssep/test/local_regression/test_scene_vis_obstacles.py</file></path><path><editType>edit</editType><file>ssep/common/utils/scene_frame_visualization.cc</file></path><path><editType>add</editType><file>ssep/test/local_regression/test_scene_vis_geometry.py</file></path><path><editType>edit</editType><file>ssep/offboard/servers/scene_vis_html_template.cc</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>Testing/routing_transition_test.cpp</affectedPath><affectedPath>data/map/pnc_map/routing_extension/routing_data.cpp</affectedPath><commitId>6143bcb0a88322720d9a9cebaa94d13396afa6b7</commitId><timestamp>1790052360000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 按实际车道航向判断岸边平行连接

岸边道路接入非纵向道路时，改用驶出终点与驶入起点的车道航向判断形状，保留原有角度阈值，避免场区岸线配置与地图不一致时误判为交叉。

补充同向、反向、垂直及旋转场景回归，并覆盖潍坊默认岸线配置导致 A002 任务误分类的问题。

验证：路由回归 91 项通过；A002 任务仿真回放进入 PARALLEL，终点延伸 25 米且搜索成功。
</comment><date>2026-09-22 12:46:00 +0800</date><id>6143bcb0a88322720d9a9cebaa94d13396afa6b7</id><msg>fix: 按实际车道航向判断岸边平行连接</msg><path><editType>edit</editType><file>data/map/pnc_map/routing_extension/routing_data.cpp</file></path><path><editType>edit</editType><file>Testing/routing_transition_test.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>data/ssep/open_space_ec.cpp</affectedPath><commitId>39b5eba2e4e5c710d7a272e42e21bb0e25de2e50</commitId><timestamp>1790052367000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>feat: 增加开放空间搜索模式与终点诊断日志

构造搜索终点时记录任务、形状模式、场景、搜索阶段、回退条件和车型；记录终点来源、参考线选择、延伸距离、目标 s、参考线长度及最终车道与坐标。

日志随搜索环境构造输出，便于区分模式覆盖与参考线长度不足。

验证：PNC 与专项测试目标编译通过；任务回放已采集修改前后模式和终点计算日志。
</comment><date>2026-09-22 12:46:07 +0800</date><id>39b5eba2e4e5c710d7a272e42e21bb0e25de2e50</id><msg>feat: 增加开放空间搜索模式与终点诊断日志</msg><path><editType>edit</editType><file>data/ssep/open_space_ec.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>Testing/ssep_path_corridor_test.cpp</affectedPath><affectedPath>data/plan/ssep_data.cpp</affectedPath><affectedPath>data/plan/ssep_data.hpp</affectedPath><affectedPath>ssep/coarse_search/searcher_builders/tractor_trailer_general_searcher_builder.h</affectedPath><affectedPath>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</affectedPath><affectedPath>ssep/scenarios/scenario_planner_factory.h</affectedPath><affectedPath>ssep/scenarios/tractor_trailer_exit_parking_spot_planner.h</affectedPath><affectedPath>tasks/deciders/search_decider/forward_search_decider.cpp</affectedPath><affectedPath>docs/ssep_scenario_config_lifecycle.md</affectedPath><affectedPath>ssep/test/ssep_planner_test.cc</affectedPath><affectedPath>Testing/search_decider_lifecycle_test.cpp</affectedPath><affectedPath>config/config_truck/ssep_port_scenarios_jinxi.yaml</affectedPath><affectedPath>ssep/coarse_search/multi_stage_hybrid_astar_search_engine.cc</affectedPath><affectedPath>ssep/coarse_search/searcher_builders/tractor_trailer_general_searcher_builder.cc</affectedPath><affectedPath>ssep/scenarios/stitching_replanner.h</affectedPath><affectedPath>ssep/coarse_search/multi_stage_hybrid_astar_search_engine.h</affectedPath><affectedPath>ssep/ssep_planner.cc</affectedPath><affectedPath>Testing/CMakeLists.txt</affectedPath><affectedPath>data/ssep/ssep_ec.cpp</affectedPath><affectedPath>Testing/ssep_scenario_config_lifecycle_test.cpp</affectedPath><commitId>96062bb8b9e0ebb5de09c55f829327aa9bdb3f6f</commitId><timestamp>1790059273000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>feat: 支持津西自动换向出场及剩余路径重搜

津西拖挂车 BulkOut 使用 Auto 出场策略，优先纯前进，失败后在共用粗搜索预算内允许倒车调整，并要求最终前进接入。
增加方向状态区分和超时完整候选保留，保持旧场景行为。
重搜按执行索引裁剪历史，只匹配当前剩余段；无效历史回退完整搜索，指令重搜清除旧拉直状态。
补充配置、粗搜索、历史裁剪和在线重搜生命周期回归。

验证：相关测试 505 项通过、61 项按场景跳过；生成物和协议兼容性检查通过；pnc_node 分布式编译通过。
</comment><date>2026-09-22 14:41:13 +0800</date><id>96062bb8b9e0ebb5de09c55f829327aa9bdb3f6f</id><msg>feat: 支持津西自动换向出场及剩余路径重搜</msg><path><editType>edit</editType><file>ssep/coarse_search/searcher_builders/tractor_trailer_general_searcher_builder.cc</file></path><path><editType>edit</editType><file>tasks/deciders/search_decider/forward_search_decider.cpp</file></path><path><editType>edit</editType><file>Testing/ssep_path_corridor_test.cpp</file></path><path><editType>edit</editType><file>Testing/CMakeLists.txt</file></path><path><editType>edit</editType><file>ssep/ssep_planner.cc</file></path><path><editType>edit</editType><file>ssep/scenarios/scenario_planner_factory.h</file></path><path><editType>edit</editType><file>ssep/coarse_search/searcher_builders/tractor_trailer_general_searcher_builder.h</file></path><path><editType>edit</editType><file>config/config_truck/ssep_port_scenarios_jinxi.yaml</file></path><path><editType>edit</editType><file>data/plan/ssep_data.cpp</file></path><path><editType>edit</editType><file>data/ssep/ssep_ec.cpp</file></path><path><editType>edit</editType><file>ssep/coarse_search/multi_stage_hybrid_astar_search_engine.cc</file></path><path><editType>edit</editType><file>ssep/test/ssep_planner_test.cc</file></path><path><editType>edit</editType><file>ssep/coarse_search/multi_stage_hybrid_astar_search_engine.h</file></path><path><editType>edit</editType><file>data/plan/ssep_data.hpp</file></path><path><editType>edit</editType><file>Testing/ssep_scenario_config_lifecycle_test.cpp</file></path><path><editType>edit</editType><file>Testing/search_decider_lifecycle_test.cpp</file></path><path><editType>edit</editType><file>docs/ssep_scenario_config_lifecycle.md</file></path><path><editType>edit</editType><file>ssep/scenarios/tractor_trailer_exit_parking_spot_planner.h</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</file></path><path><editType>edit</editType><file>ssep/scenarios/stitching_replanner.h</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>data/app/fsm/task_fsm/task_travel/task_travel_fsm.cpp</affectedPath><affectedPath>Testing/scenario_search_exit_test.cpp</affectedPath><affectedPath>Testing/CMakeLists.txt</affectedPath><affectedPath>docs/ssep_search_lifecycle.md</affectedPath><commitId>58c22a82ed636a088416e5c9966bff51cfc233df</commitId><timestamp>1790059293000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 防止出场换向时提前退出 Bulk 场景

切段后等待当前路径和历史路径的末段信息一致，再使用历史引导线判断完成。
取消因终点无法投影或超出引导线范围而直接退出的逻辑；换向停车只有到达真正末点才允许结束出场。
保留无 SSEP 的原倒车出场分支，补充 9 项退出条件回归与现场原因说明。

验证：9 项 Bulk 退出回归通过；相关测试集 376 项通过、61 项按场景跳过；pnc_node 编译通过。
</comment><date>2026-09-22 14:41:33 +0800</date><id>58c22a82ed636a088416e5c9966bff51cfc233df</id><msg>fix: 防止出场换向时提前退出 Bulk 场景</msg><path><editType>edit</editType><file>Testing/CMakeLists.txt</file></path><path><editType>edit</editType><file>data/app/fsm/task_fsm/task_travel/task_travel_fsm.cpp</file></path><path><editType>edit</editType><file>docs/ssep_search_lifecycle.md</file></path><path><editType>edit</editType><file>Testing/scenario_search_exit_test.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>Testing/CMakeLists.txt</affectedPath><affectedPath>Testing/bulk_speed_limit_test.cpp</affectedPath><affectedPath>tasks/deciders/long_decider/constrain_decider.cpp</affectedPath><commitId>966a15a594920fd936694ca4d276c19ea7411cb1</commitId><timestamp>1790060053000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 按路径分段优化出堆场限速

根据原始段长和真实段尾投影计算沿程进度，剔除路径延长部分，每次切段后重新按起步档位提速。

为非最后一段提前添加 15、10、5 米低速区约束，最后一段接路时不额外降速；保留独立停车约束职责，匹配失效时保持起步档。

新增 8 项回归测试，覆盖换段、路径延长、倒车、弯路、短段、过终点和停车约束保留；构建及测试通过。
</comment><date>2026-09-22 14:54:13 +0800</date><id>966a15a594920fd936694ca4d276c19ea7411cb1</id><msg>fix: 按路径分段优化出堆场限速</msg><path><editType>edit</editType><file>tasks/deciders/long_decider/constrain_decider.cpp</file></path><path><editType>edit</editType><file>Testing/CMakeLists.txt</file></path><path><editType>add</editType><file>Testing/bulk_speed_limit_test.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>docs/platoon/platoon_manager_vehicle_info_interface_zh.md</affectedPath><affectedPath>algorithm/platoon/platoon_leader_predictor.cpp</affectedPath><affectedPath>algorithm/platoon/vehicle_info_to_obstacle.cpp</affectedPath><affectedPath>algorithm/platoon/platoon_follow_target_builder.cpp</affectedPath><affectedPath>data/platoon/platoon_info.hpp</affectedPath><affectedPath>data/platoon/platoon_info.cpp</affectedPath><affectedPath>plan/prepare/prepare_platoon.cpp</affectedPath><affectedPath>Testing/platoon_follow_target_builder_test.cpp</affectedPath><affectedPath>algorithm/platoon/platoon_leader_predictor.hpp</affectedPath><commitId>fe57ba2ae116a729c218a2405d5bacaa4814d6db</commitId><timestamp>1790061850000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>fix: use received leader trajectories in auto-drive mode
</comment><date>2026-09-22 15:24:10 +0800</date><id>fe57ba2ae116a729c218a2405d5bacaa4814d6db</id><msg>fix: use received leader trajectories in auto-drive mode</msg><path><editType>edit</editType><file>algorithm/platoon/platoon_follow_target_builder.cpp</file></path><path><editType>edit</editType><file>algorithm/platoon/platoon_leader_predictor.cpp</file></path><path><editType>edit</editType><file>plan/prepare/prepare_platoon.cpp</file></path><path><editType>edit</editType><file>docs/platoon/platoon_manager_vehicle_info_interface_zh.md</file></path><path><editType>edit</editType><file>data/platoon/platoon_info.hpp</file></path><path><editType>edit</editType><file>Testing/platoon_follow_target_builder_test.cpp</file></path><path><editType>edit</editType><file>data/platoon/platoon_info.cpp</file></path><path><editType>edit</editType><file>algorithm/platoon/platoon_leader_predictor.hpp</file></path><path><editType>edit</editType><file>algorithm/platoon/vehicle_info_to_obstacle.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>Testing/full_proto_snapshot_test.cpp</affectedPath><affectedPath>replayer/scene_data/full_proto_snapshot.hpp</affectedPath><affectedPath>replayer/main.cpp</affectedPath><affectedPath>replayer/scene_data/full_proto_snapshot.cpp</affectedPath><affectedPath>hmi/widget/full_proto_detail.hpp</affectedPath><affectedPath>hmi/replayer_hmi.hpp</affectedPath><affectedPath>replayer/logic.hpp</affectedPath><affectedPath>CMakeLists.txt</affectedPath><affectedPath>replayer/logic.cpp</affectedPath><affectedPath>hmi/replayer_hmi.cpp</affectedPath><affectedPath>hmi/node_hmi.hpp</affectedPath><affectedPath>node/logic.cpp</affectedPath><affectedPath>Testing/full_proto_detail_test.cpp</affectedPath><affectedPath>node/main.cpp</affectedPath><affectedPath>node/logic.hpp</affectedPath><affectedPath>Testing/CMakeLists.txt</affectedPath><affectedPath>hmi/widget/full_proto_detail.cpp</affectedPath><affectedPath>hmi/node_hmi.cpp</affectedPath><commitId>8d2254ca3442f45e7b69a312168204217a53177f</commitId><timestamp>1790070987000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>feat: 为 PNC 和回放界面增加全量 Proto 树形查看窗口

在两个 Qt 界面的显示菜单接入独立窗口，仅在打开或手动更新时请求
数据线程编码当前 Full Proto，避免逐帧刷新和跨线程读取可变规划帧。
无当前帧或更新失败时保留历史快照，并展示编码缺失信息。

支持对象和数组按需展开、全部折叠，以及忽略大小写的不连续字符
模糊搜索；搜索命中后自动展开父节点，提供前后跳转和快捷键。

补充树形展示、快照历史、搜索、快捷键和 64 位精度回归测试。
验证：pnc_node、pnc_replayer 构建通过，14 项相关测试全部通过。
</comment><date>2026-09-22 17:56:27 +0800</date><id>8d2254ca3442f45e7b69a312168204217a53177f</id><msg>feat: 为 PNC 和回放界面增加全量 Proto 树形查看窗口</msg><path><editType>add</editType><file>hmi/widget/full_proto_detail.hpp</file></path><path><editType>edit</editType><file>node/main.cpp</file></path><path><editType>edit</editType><file>CMakeLists.txt</file></path><path><editType>edit</editType><file>node/logic.hpp</file></path><path><editType>add</editType><file>Testing/full_proto_snapshot_test.cpp</file></path><path><editType>edit</editType><file>replayer/logic.cpp</file></path><path><editType>edit</editType><file>replayer/logic.hpp</file></path><path><editType>add</editType><file>replayer/scene_data/full_proto_snapshot.hpp</file></path><path><editType>add</editType><file>hmi/widget/full_proto_detail.cpp</file></path><path><editType>edit</editType><file>hmi/node_hmi.hpp</file></path><path><editType>edit</editType><file>Testing/CMakeLists.txt</file></path><path><editType>add</editType><file>replayer/scene_data/full_proto_snapshot.cpp</file></path><path><editType>edit</editType><file>node/logic.cpp</file></path><path><editType>edit</editType><file>replayer/main.cpp</file></path><path><editType>add</editType><file>Testing/full_proto_detail_test.cpp</file></path><path><editType>edit</editType><file>hmi/replayer_hmi.hpp</file></path><path><editType>edit</editType><file>hmi/replayer_hmi.cpp</file></path><path><editType>edit</editType><file>hmi/node_hmi.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>Testing/ssep_path_corridor_test.cpp</affectedPath><affectedPath>ssep/test/ssep_planner_test.cc</affectedPath><affectedPath>ssep/scenarios/imv_search_extra_params.h</affectedPath><affectedPath>ssep/scenarios/imv_general_planner.h</affectedPath><affectedPath>ssep/scenarios/imv_enter_station_planner.h</affectedPath><affectedPath>ssep/scenarios/imv_multi_segment_parking_planner.h</affectedPath><affectedPath>ssep/scenarios/search_extra_params.h</affectedPath><commitId>c53cfc5da9ae336a7070f0f08e067ebd3ce5c51e</commitId><timestamp>1790078907000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>refactor: 统一场景数值参数解析

提取公共有限数及正数参数解析函数，保持缺省值和失败不写回语义。
IMV 场景及方向代价复用公共解析，补充数值边界回归测试。

验证：共享解析及 IMV 参数测试通过，增量分布式编译通过。
</comment><date>2026-09-22 20:08:27 +0800</date><id>c53cfc5da9ae336a7070f0f08e067ebd3ce5c51e</id><msg>refactor: 统一场景数值参数解析</msg><path><editType>edit</editType><file>ssep/scenarios/imv_multi_segment_parking_planner.h</file></path><path><editType>edit</editType><file>ssep/scenarios/imv_search_extra_params.h</file></path><path><editType>edit</editType><file>ssep/scenarios/imv_general_planner.h</file></path><path><editType>edit</editType><file>ssep/test/ssep_planner_test.cc</file></path><path><editType>edit</editType><file>ssep/scenarios/imv_enter_station_planner.h</file></path><path><editType>add</editType><file>ssep/scenarios/search_extra_params.h</file></path><path><editType>edit</editType><file>Testing/ssep_path_corridor_test.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>ssep/test/ssep_planner_test.cc</affectedPath><affectedPath>config/config_truck/ssep_port_scenarios_jinxi.yaml</affectedPath><affectedPath>ssep/coarse_search/multi_stage_hybrid_astar_search_engine.cc</affectedPath><affectedPath>ssep/keb_optimizer/tractor_trailer_keb_optimizer.cc</affectedPath><affectedPath>ssep/keb_optimizer/tractor_trailer_keb_optimizer.h</affectedPath><affectedPath>ssep/scenarios/scenario_planner_factory.h</affectedPath><affectedPath>ssep/scenarios/tractor_trailer_exit_parking_spot_planner.h</affectedPath><affectedPath>ssep/coarse_search/multi_stage_hybrid_astar_search_engine.h</affectedPath><commitId>6101fe90314cb6eaf505fce402f0d30c1d5e628e</commitId><timestamp>1790078929000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 支持 Auto 出场局部倒车调整并外置调参

保留纯前进优先，失败后按配置逐步增加初始倒车距离并尝试两侧姿态。
全部重试共用时间预算，最终路径检查后退位移、完整车体碰撞与机械曲率。
优化裕量和权重从场景 custom_params 读取，同步津西配置及通用参数命名。
补充初始方向、真实倒车距离、转向和参数校验回归测试。

验证：30 项 SSEP 测试及 6 项 IMV 参数测试通过；两个现场场景回放通过，
碰撞和曲率验收通过；主程序、回放及测试目标增量分布式编译通过。
</comment><date>2026-09-22 20:08:49 +0800</date><id>6101fe90314cb6eaf505fce402f0d30c1d5e628e</id><msg>fix: 支持 Auto 出场局部倒车调整并外置调参</msg><path><editType>edit</editType><file>ssep/keb_optimizer/tractor_trailer_keb_optimizer.h</file></path><path><editType>edit</editType><file>ssep/test/ssep_planner_test.cc</file></path><path><editType>edit</editType><file>ssep/scenarios/scenario_planner_factory.h</file></path><path><editType>edit</editType><file>ssep/scenarios/tractor_trailer_exit_parking_spot_planner.h</file></path><path><editType>edit</editType><file>config/config_truck/ssep_port_scenarios_jinxi.yaml</file></path><path><editType>edit</editType><file>ssep/coarse_search/multi_stage_hybrid_astar_search_engine.cc</file></path><path><editType>edit</editType><file>ssep/coarse_search/multi_stage_hybrid_astar_search_engine.h</file></path><path><editType>edit</editType><file>ssep/keb_optimizer/tractor_trailer_keb_optimizer.cc</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>tools/pnc_proto_mapper/generator.py</affectedPath><affectedPath>replayer/scene_data/generated/compact_typed_field_codec.hpp</affectedPath><affectedPath>docs/pnc_algorithm_replay/plan_frame_field_workflow.md</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_decoder.cpp</affectedPath><affectedPath>replayer/scene_data/generated/compact_typed_field_codec.cpp</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_encoder.cpp</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_decoder.hpp</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_encoder.hpp</affectedPath><commitId>95fdfbd553bb04a58ec73dfe4d00461845b79d62</commitId><timestamp>1790085839000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>refactor: 去除生成源码中重复的 Schema 哈希注释

保留 DO NOT EDIT 标记、运行时 schema 哈希和兼容性校验。
清理仅用于注释的生成器参数，减少字段变化导致的无关文件 diff。

验证：check-generated、check-proto-breaking 通过。
</comment><date>2026-09-22 22:03:59 +0800</date><id>95fdfbd553bb04a58ec73dfe4d00461845b79d62</id><msg>refactor: 去除生成源码中重复的 Schema 哈希注释</msg><path><editType>edit</editType><file>tools/pnc_proto_mapper/generator.py</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_decoder.hpp</file></path><path><editType>edit</editType><file>docs/pnc_algorithm_replay/plan_frame_field_workflow.md</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_decoder.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/compact_typed_field_codec.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_encoder.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_encoder.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/compact_typed_field_codec.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>tools/pnc_proto_mapper/sync_config_schema.py</affectedPath><affectedPath>replayer/scene_data/generated/compact_scene_descriptor.pb</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_field_roles.json</affectedPath><affectedPath>proto/config.proto</affectedPath><affectedPath>replayer/scene_data/generated/full_custom_codec_coverage_audit.yaml</affectedPath><affectedPath>tasks/deciders/long_decider/constrain_decider.hpp</affectedPath><affectedPath>replayer/scene_data/config_proto_codec.cpp</affectedPath><affectedPath>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</affectedPath><affectedPath>replayer/scene_data/compact_numeric_policy.yaml</affectedPath><affectedPath>tasks/deciders/long_decider/constrain_decider.cpp</affectedPath><affectedPath>docs/bulk_open_space_speed_limit.md</affectedPath><affectedPath>Testing/bulk_speed_limit_test.cpp</affectedPath><affectedPath>data/config/cfg_long_plan.hpp</affectedPath><affectedPath>config/config_truck/plan.yaml</affectedPath><affectedPath>data/config/cfg_long_plan.cpp</affectedPath><affectedPath>replayer/scene_data/generated/config_schema_inputs.json</affectedPath><affectedPath>Testing/scene_replay_foundation_test.cpp</affectedPath><affectedPath>replayer/scene_data/plan_frame_field_roles.csv</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_encoder.cpp</affectedPath><affectedPath>replayer/scene_data/generated/scene_replay_api_descriptor.pb</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_descriptor.pb</affectedPath><commitId>b345ba5abc57b9fa1ef823badd1a6a2004fef669</commitId><timestamp>1790085874000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>feat: 支持 bulk 和 open space 参数限速框

在 CfgLongPlan 中按顶点数组加载限速框及统一速度，默认关闭。
投影 SL 包络后，在车身前缘距入口 10 米内添加限速约束，
限速位置保持框的 start_s，车身完全离开后释放，支持倒车和挂车尺寸。

通过 typed Proto 保存配置，保留 UTM double 精度并使用 Zstd 压缩，
支持 Full、Compact Recorded 和 Candidate 恢复以及旧消息默认关闭。

验证：15 个限速测试、完整 scene_replay_foundation_test、
check-generated 和 check-proto-breaking 全部通过。
</comment><date>2026-09-22 22:04:34 +0800</date><id>b345ba5abc57b9fa1ef823badd1a6a2004fef669</id><msg>feat: 支持 bulk 和 open space 参数限速框</msg><path><editType>edit</editType><file>replayer/scene_data/compact_numeric_policy.yaml</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/scene_replay_api_descriptor.pb</file></path><path><editType>edit</editType><file>replayer/scene_data/config_proto_codec.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/config_schema_inputs.json</file></path><path><editType>edit</editType><file>replayer/scene_data/plan_frame_field_roles.csv</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_descriptor.pb</file></path><path><editType>edit</editType><file>proto/config.proto</file></path><path><editType>add</editType><file>docs/bulk_open_space_speed_limit.md</file></path><path><editType>edit</editType><file>config/config_truck/plan.yaml</file></path><path><editType>edit</editType><file>tasks/deciders/long_decider/constrain_decider.cpp</file></path><path><editType>edit</editType><file>Testing/bulk_speed_limit_test.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_field_roles.json</file></path><path><editType>edit</editType><file>tools/pnc_proto_mapper/sync_config_schema.py</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/compact_scene_descriptor.pb</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/full_custom_codec_coverage_audit.yaml</file></path><path><editType>edit</editType><file>Testing/scene_replay_foundation_test.cpp</file></path><path><editType>edit</editType><file>data/config/cfg_long_plan.cpp</file></path><path><editType>edit</editType><file>data/config/cfg_long_plan.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_encoder.cpp</file></path><path><editType>edit</editType><file>tasks/deciders/long_decider/constrain_decider.hpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>tools/trailer_detection_bag_to_html.py</affectedPath><affectedPath>tools/trailer_detection_bag_to_html.md</affectedPath><commitId>140da468cc3a9f8c4d547901b1b10487f1d5cded</commitId><timestamp>1790129073000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>feat: add standalone trailer detection bag-to-HTML converter
</comment><date>2026-09-23 10:04:33 +0800</date><id>140da468cc3a9f8c4d547901b1b10487f1d5cded</id><msg>feat: add standalone trailer detection bag-to-HTML converter</msg><path><editType>add</editType><file>tools/trailer_detection_bag_to_html.py</file></path><path><editType>add</editType><file>tools/trailer_detection_bag_to_html.md</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>replayer/scene_data/generated/compact_scene_descriptor.pb</affectedPath><affectedPath>proto/config.proto</affectedPath><affectedPath>replayer/scene_data/generated/full_custom_codec_coverage_audit.yaml</affectedPath><affectedPath>Testing/path_pair_validation_test.cpp</affectedPath><affectedPath>docs/ssep_path_tangent_refinement.md</affectedPath><affectedPath>replayer/scene_data/config_proto_codec.cpp</affectedPath><affectedPath>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</affectedPath><affectedPath>tasks/plan/reversing_truck_path_task.cpp</affectedPath><affectedPath>data/config/cfg_func_sw.hpp</affectedPath><affectedPath>data/config/cfg_func_sw.cpp</affectedPath><affectedPath>tasks/plan/reversing_truck_path_task.hpp</affectedPath><affectedPath>config/config_truck/plan.yaml</affectedPath><affectedPath>replayer/scene_data/generated/config_schema_inputs.json</affectedPath><affectedPath>Testing/scene_replay_foundation_test.cpp</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_encoder.cpp</affectedPath><affectedPath>replayer/scene_data/generated/scene_replay_api_descriptor.pb</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_descriptor.pb</affectedPath><commitId>c73d19c7f1d584a2d1913bd103f110156f785379</commitId><timestamp>1790142306000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>feat(plan): add configurable SSEP path heading refinement
</comment><date>2026-09-23 13:45:06 +0800</date><id>c73d19c7f1d584a2d1913bd103f110156f785379</id><msg>feat(plan): add configurable SSEP path heading refinement</msg><path><editType>edit</editType><file>tasks/plan/reversing_truck_path_task.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_descriptor.pb</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/config_schema_inputs.json</file></path><path><editType>edit</editType><file>config/config_truck/plan.yaml</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_encoder.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/config_proto_codec.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/compact_scene_descriptor.pb</file></path><path><editType>edit</editType><file>Testing/scene_replay_foundation_test.cpp</file></path><path><editType>edit</editType><file>Testing/path_pair_validation_test.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/scene_replay_api_descriptor.pb</file></path><path><editType>add</editType><file>docs/ssep_path_tangent_refinement.md</file></path><path><editType>edit</editType><file>proto/config.proto</file></path><path><editType>edit</editType><file>tasks/plan/reversing_truck_path_task.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</file></path><path><editType>edit</editType><file>data/config/cfg_func_sw.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/full_custom_codec_coverage_audit.yaml</file></path><path><editType>edit</editType><file>data/config/cfg_func_sw.hpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>plan/prepare/prepare_objs.cpp</affectedPath><commitId>828c6df22a9994afa42583fecb0c52264e05fa9b</commitId><timestamp>1790143378000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 修正多车道场桥障碍物位置

按云端场桥位置选择单车道侧边或多车道桥腿间隙，覆盖 2 至 6 车道布局。保留原有纵向 min_s 与负 s 补偿，避免障碍物沿车道方向偏移。
</comment><date>2026-09-23 14:02:58 +0800</date><id>828c6df22a9994afa42583fecb0c52264e05fa9b</id><msg>fix: 修正多车道场桥障碍物位置</msg><path><editType>edit</editType><file>plan/prepare/prepare_objs.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>algorithm/platoon/leader_reference.cpp</affectedPath><affectedPath>algorithm/platoon/platoon_follow_target_builder.hpp</affectedPath><affectedPath>algorithm/lattice/lattice.cpp</affectedPath><affectedPath>algorithm/platoon/platoon_leader_predictor.cpp</affectedPath><affectedPath>algorithm/platoon/platoon_follow_target_builder.cpp</affectedPath><affectedPath>Testing/platoon_response_test.cpp</affectedPath><affectedPath>data/platoon/platoon_info.hpp</affectedPath><affectedPath>data/platoon/platoon_info.cpp</affectedPath><affectedPath>algorithm/platoon/platoon_leader_predictor.hpp</affectedPath><affectedPath>Testing/platoon_follow_target_builder_test.cpp</affectedPath><commitId>f67e4c414fa3d547ac8b45765f5afc7d9af46258</commitId><timestamp>1790146146000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>fix: preserve leader stop motion and separate trajectory freshness from coverage
</comment><date>2026-09-23 14:49:06 +0800</date><id>f67e4c414fa3d547ac8b45765f5afc7d9af46258</id><msg>fix: preserve leader stop motion and separate trajectory freshness from coverage</msg><path><editType>edit</editType><file>Testing/platoon_response_test.cpp</file></path><path><editType>edit</editType><file>algorithm/platoon/leader_reference.cpp</file></path><path><editType>edit</editType><file>algorithm/platoon/platoon_leader_predictor.cpp</file></path><path><editType>edit</editType><file>data/platoon/platoon_info.hpp</file></path><path><editType>edit</editType><file>data/platoon/platoon_info.cpp</file></path><path><editType>edit</editType><file>algorithm/platoon/platoon_follow_target_builder.hpp</file></path><path><editType>edit</editType><file>algorithm/platoon/platoon_leader_predictor.hpp</file></path><path><editType>edit</editType><file>Testing/platoon_follow_target_builder_test.cpp</file></path><path><editType>edit</editType><file>algorithm/lattice/lattice.cpp</file></path><path><editType>edit</editType><file>algorithm/platoon/platoon_follow_target_builder.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>data/config/cfg_platoon.cpp</affectedPath><commitId>e56ecb57a728d412ca05453a28b8db72cb48a05a</commitId><timestamp>1790146926000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>fix: MPC time budget 80ms
</comment><date>2026-09-23 15:02:06 +0800</date><id>e56ecb57a728d412ca05453a28b8db72cb48a05a</id><msg>fix: MPC time budget 80ms</msg><path><editType>edit</editType><file>data/config/cfg_platoon.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>data/app/fsm/motion_fsm/motion_fsm.cpp</affectedPath><affectedPath>Testing/routing_map_guard_test.cpp</affectedPath><affectedPath>Taskfile.yml</affectedPath><commitId>aae9b08b9dbdb9a9bd90b4ee4ad741e8a7c9743b</commitId><timestamp>1790148755000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 修复换向点停稳后 Motion 状态机未进入停车态

车辆停稳且处于换向容差内时，核对历史有效停车终点和当前换向约束，进入 STOP_AUTO 并记录换向停车原因。保留急停、guardian 和其他停车约束的优先级。

换向约束仍在附近时保持停车，约束解除后恢复自动起步。增加真实 Motion FSM 回归，覆盖两份现场快照距离、停车保持与释放、无效条件以及停车优先级；63 项测试通过，本机 pnc_node 编译通过。
</comment><date>2026-09-23 15:32:35 +0800</date><id>aae9b08b9dbdb9a9bd90b4ee4ad741e8a7c9743b</id><msg>fix: 修复换向点停稳后 Motion 状态机未进入停车态</msg><path><editType>edit</editType><file>data/app/fsm/motion_fsm/motion_fsm.cpp</file></path><path><editType>edit</editType><file>Taskfile.yml</file></path><path><editType>edit</editType><file>Testing/routing_map_guard_test.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>data/config/cfg_lat_plan.hpp</affectedPath><affectedPath>config/config_truck/plan.yaml</affectedPath><affectedPath>tasks/plan/path_optimization_task.hpp</affectedPath><affectedPath>data/config/cfg_lat_plan.cpp</affectedPath><affectedPath>tasks/plan/path_optimization_task.cpp</affectedPath><affectedPath>Testing/wbca_leader_history_test.cpp</affectedPath><commitId>26c340c28d49d096a9032d56d846015b466b2263</commitId><timestamp>1790149099000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>fix: configure WBCA path length by ego speed
</comment><date>2026-09-23 15:38:19 +0800</date><id>26c340c28d49d096a9032d56d846015b466b2263</id><msg>fix: configure WBCA path length by ego speed</msg><path><editType>edit</editType><file>config/config_truck/plan.yaml</file></path><path><editType>edit</editType><file>data/config/cfg_lat_plan.cpp</file></path><path><editType>edit</editType><file>tasks/plan/path_optimization_task.cpp</file></path><path><editType>edit</editType><file>data/config/cfg_lat_plan.hpp</file></path><path><editType>edit</editType><file>tasks/plan/path_optimization_task.hpp</file></path><path><editType>edit</editType><file>Testing/wbca_leader_history_test.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>hmi/draw/draw_perception.cpp</affectedPath><commitId>de060180d215581d80a2752803d637cf323e3fed</commitId><timestamp>1790152314000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>feat: 在障碍物标注中显示跟踪帧数

在类型后显示 age 数值，未初始化值显示问号；将车速统一格式化为一位小数，保留旧快照的后续诊断信息。普通及变道不安全障碍物共用显示格式。

验证：pnc_node、pnc_replayer 编译通过，git diff --check 通过。
</comment><date>2026-09-23 16:31:54 +0800</date><id>de060180d215581d80a2752803d637cf323e3fed</id><msg>feat: 在障碍物标注中显示跟踪帧数</msg><path><editType>edit</editType><file>hmi/draw/draw_perception.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>data/obstacle/decision/obstacle_decision.cpp</affectedPath><affectedPath>data/obstacle/decision/obstacle_decision.hpp</affectedPath><affectedPath>data/obstacle/decision/obstacle_decision_test.cpp</affectedPath><commitId>9400659a6fb905588498dc7aa6b40598beb1b89a</commitId><timestamp>1790165936000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 修正切入车辆跟车与绕行承诺

先更新本帧位置再识别切入和通行策略；切入优先解除绕行承诺，普通侧方避让及消抖旧标签不能建立新承诺。
切入完成后保持跟车，退回邻车道后释放跟车锁存。补充左右切入和承诺生命周期回归。
验证：分布式构建通过，polygon_sl_projector_test 共 126 项通过。
</comment><date>2026-09-23 20:18:56 +0800</date><id>9400659a6fb905588498dc7aa6b40598beb1b89a</id><msg>fix: 修正切入车辆跟车与绕行承诺</msg><path><editType>edit</editType><file>data/obstacle/decision/obstacle_decision_test.cpp</file></path><path><editType>edit</editType><file>data/obstacle/decision/obstacle_decision.hpp</file></path><path><editType>edit</editType><file>data/obstacle/decision/obstacle_decision.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>data/boundary/driving_corridor.cpp</affectedPath><affectedPath>data/boundary/driving_corridor_test.cpp</affectedPath><commitId>cd45d025fff50ff766c0a72baf3f156e55b0b84a</commitId><timestamp>1790165936000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 避免切入收边强迫已越线车辆回归

移除切入来源侧固定 12 米收边，按实车和有效拼接起点的牵引车及挂车外廓判定越线。
已越线时保留来源侧原道路空间，避免截断向外连续转向；回到车道内后恢复限制。
验证：分布式构建和 126 项决策、边界回归通过，覆盖双侧切入、拼接点、挂车及 DP 采样范围。
</comment><date>2026-09-23 20:18:56 +0800</date><id>cd45d025fff50ff766c0a72baf3f156e55b0b84a</id><msg>fix: 避免切入收边强迫已越线车辆回归</msg><path><editType>edit</editType><file>data/boundary/driving_corridor_test.cpp</file></path><path><editType>edit</editType><file>data/boundary/driving_corridor.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>replayer/scene_data/generated/compact_scene_descriptor.pb</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_field_roles.json</affectedPath><affectedPath>replayer/scene_data/obstacle_proto_codec.cpp</affectedPath><affectedPath>docs/pnc_algorithm_replay/plan_frame_field_workflow.md</affectedPath><affectedPath>Testing/scene_replay_foundation_test.cpp</affectedPath><affectedPath>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</affectedPath><affectedPath>replayer/scene_data/plan_frame_field_roles.csv</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_encoder.cpp</affectedPath><affectedPath>data/obstacle/obstacle_decider_attr.hpp</affectedPath><affectedPath>proto/obstacle.proto</affectedPath><affectedPath>replayer/scene_data/generated/scene_replay_api_descriptor.pb</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_descriptor.pb</affectedPath><commitId>fcde6e4ee2b22fd71b394e2a366faf60ec065fe9</commitId><timestamp>1790165936000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 在场景快照中恢复切入跨帧状态

为切入标志、来源方向及解除计数补充原值 Proto 编解码，Full、Compact 和 Candidate 均恢复。
同步字段合同与生成产物，采用 Proto 默认值，不增加观测有效性兼容状态。
验证：scaffold、generate、check-generated 和 breaking 检查通过，切入编解码及带宽测试通过。
</comment><date>2026-09-23 20:18:56 +0800</date><id>fcde6e4ee2b22fd71b394e2a366faf60ec065fe9</id><msg>fix: 在场景快照中恢复切入跨帧状态</msg><path><editType>edit</editType><file>replayer/scene_data/generated/compact_scene_descriptor.pb</file></path><path><editType>edit</editType><file>replayer/scene_data/plan_frame_field_roles.csv</file></path><path><editType>edit</editType><file>data/obstacle/obstacle_decider_attr.hpp</file></path><path><editType>edit</editType><file>proto/obstacle.proto</file></path><path><editType>edit</editType><file>docs/pnc_algorithm_replay/plan_frame_field_workflow.md</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_descriptor.pb</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_field_roles.json</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/scene_replay_api_descriptor.pb</file></path><path><editType>edit</editType><file>Testing/scene_replay_foundation_test.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_encoder.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/obstacle_proto_codec.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>hmi/common/obstacle_details.hpp</affectedPath><affectedPath>hmi/common/pnc_graphics_view.cpp</affectedPath><affectedPath>hmi/draw/draw_perception.cpp</affectedPath><affectedPath>hmi/widget/pnc_mat.cpp</affectedPath><affectedPath>hmi/common/pnc_graphics_view.hpp</affectedPath><affectedPath>hmi/widget/replayer_pnc_mat.cpp</affectedPath><affectedPath>hmi/draw/draw_perception.hpp</affectedPath><affectedPath>Testing/CMakeLists.txt</affectedPath><affectedPath>Testing/obstacle_detail_render_test.cpp</affectedPath><affectedPath>hmi/node_hmi.cpp</affectedPath><affectedPath>hmi/replayer_hmi.cpp</affectedPath><commitId>581ea80168e914b83207df2d07a1e5913ad2dbce</commitId><timestamp>1790165937000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>feat: 显示障碍物切入状态和中文详细属性

在实时与回放 HMI 增加详细属性开关，单击障碍物显示位置、策略、承诺及切入生命周期。
切入目标增加橙色方向标注；暂停切换、目标消失及隐藏障碍物时同步更新面板。
验证：实时及回放程序分布式构建通过，HMI 10 项测试通过，2 项可选快照测试跳过。
</comment><date>2026-09-23 20:18:57 +0800</date><id>581ea80168e914b83207df2d07a1e5913ad2dbce</id><msg>feat: 显示障碍物切入状态和中文详细属性</msg><path><editType>add</editType><file>Testing/obstacle_detail_render_test.cpp</file></path><path><editType>edit</editType><file>hmi/widget/replayer_pnc_mat.cpp</file></path><path><editType>add</editType><file>hmi/common/obstacle_details.hpp</file></path><path><editType>edit</editType><file>hmi/node_hmi.cpp</file></path><path><editType>edit</editType><file>hmi/draw/draw_perception.cpp</file></path><path><editType>edit</editType><file>Testing/CMakeLists.txt</file></path><path><editType>edit</editType><file>hmi/replayer_hmi.cpp</file></path><path><editType>edit</editType><file>hmi/draw/draw_perception.hpp</file></path><path><editType>edit</editType><file>hmi/common/pnc_graphics_view.hpp</file></path><path><editType>edit</editType><file>hmi/common/pnc_graphics_view.cpp</file></path><path><editType>edit</editType><file>hmi/widget/pnc_mat.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>replayer/scene_data/encoding_benchmark.cpp</affectedPath><commitId>c17d8ba11638dc92398af030030612ce6f13c89b</commitId><timestamp>1790166051000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 稳定编码基准的引导线消融默认状态

消融重置反复创建临时引导线对象，DP 标签未初始化导致 Compact 字节数随机波动。
整体、主备用及嵌套 DP 消融统一复制静态零初始化默认对象，保证同输入重复测量一致。

验证：分布式增量构建通过；三组回归共 417 项通过、4 项可选快照跳过；重复消融测试连续 10 次通过。
</comment><date>2026-09-23 20:20:51 +0800</date><id>c17d8ba11638dc92398af030030612ce6f13c89b</id><msg>fix: 稳定编码基准的引导线消融默认状态</msg><path><editType>edit</editType><file>replayer/scene_data/encoding_benchmark.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>tasks/deciders/lat_decider/switching_bounds_decider.cpp</affectedPath><affectedPath>data/obstacle/cluster_lane_change_safety_test.cpp</affectedPath><affectedPath>data/plan/switch_data.cpp</affectedPath><commitId>440615906e0c9528d2857a14d6f758cea98c451d</commitId><timestamp>1790180724000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 将变道距离锁存推迟到进入变道状态

准备阶段按最新速度更新完成距离，进入 SWITCHING 时确定距离和起终点，持续变道时继承锁存几何，避免减速后仍沿用高速边界。

历史候选失效时清除未锁存几何，边界兜底同步更新安全检查距离；补充减速、状态切换、候选失效和重置回归。分布式编译及 19 项相关测试通过。
</comment><date>2026-09-24 00:25:24 +0800</date><id>440615906e0c9528d2857a14d6f758cea98c451d</id><msg>fix: 将变道距离锁存推迟到进入变道状态</msg><path><editType>edit</editType><file>data/plan/switch_data.cpp</file></path><path><editType>edit</editType><file>tasks/deciders/lat_decider/switching_bounds_decider.cpp</file></path><path><editType>edit</editType><file>data/obstacle/cluster_lane_change_safety_test.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>replayer/scene_data/generated/compact_scene_descriptor.pb</affectedPath><affectedPath>replayer/scene_data/generated/full_custom_codec_coverage_audit.yaml</affectedPath><affectedPath>proto/config.proto</affectedPath><affectedPath>data/plan/switch_data.cpp</affectedPath><affectedPath>data/config/cfg_lat_decide.cpp</affectedPath><affectedPath>replayer/scene_data/config_proto_codec.cpp</affectedPath><affectedPath>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</affectedPath><affectedPath>config/config_imv/plan.yaml</affectedPath><affectedPath>data/config/cfg_lat_decide.hpp</affectedPath><affectedPath>config/config_truck/plan.yaml</affectedPath><affectedPath>replayer/scene_data/generated/config_schema_inputs.json</affectedPath><affectedPath>data/obstacle/cluster_lane_change_safety_test.cpp</affectedPath><affectedPath>Testing/scene_replay_foundation_test.cpp</affectedPath><affectedPath>docs/pnc_algorithm_replay/plan_frame_field_workflow.md</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_encoder.cpp</affectedPath><affectedPath>config/config_car/plan.yaml</affectedPath><affectedPath>config/config_truck/config_truck_reverse/plan.yaml</affectedPath><affectedPath>replayer/scene_data/generated/scene_replay_api_descriptor.pb</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_descriptor.pb</affectedPath><commitId>f6e9beb190e8b47a0160ccfa3511da7c45149e3e</commitId><timestamp>1790181868000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>feat: 支持普通变道到最外侧车道的独立速度配置

根据 mlt_center_lines 的目标索引是否为最后一条车道选择 switch_in_normal_outermost_km_h，未配置时继承 switch_in_normal_km_h，并同步普通路口变道准备距离计算。

补齐 Full/Compact/Candidate typed 配置及旧消息缺字段回退，新增速度选择、边界和回放兼容回归。合同生成与兼容检查通过，分布式编译通过；22 项变道测试通过，回放测试 285 项通过、2 项因缺少外部数据跳过。
</comment><date>2026-09-24 00:44:28 +0800</date><id>f6e9beb190e8b47a0160ccfa3511da7c45149e3e</id><msg>feat: 支持普通变道到最外侧车道的独立速度配置</msg><path><editType>edit</editType><file>config/config_imv/plan.yaml</file></path><path><editType>edit</editType><file>data/obstacle/cluster_lane_change_safety_test.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_descriptor.pb</file></path><path><editType>edit</editType><file>replayer/scene_data/config_proto_codec.cpp</file></path><path><editType>edit</editType><file>data/config/cfg_lat_decide.cpp</file></path><path><editType>edit</editType><file>Testing/scene_replay_foundation_test.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/full_custom_codec_coverage_audit.yaml</file></path><path><editType>edit</editType><file>config/config_truck/config_truck_reverse/plan.yaml</file></path><path><editType>edit</editType><file>config/config_truck/plan.yaml</file></path><path><editType>edit</editType><file>docs/pnc_algorithm_replay/plan_frame_field_workflow.md</file></path><path><editType>edit</editType><file>proto/config.proto</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/config_schema_inputs.json</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/scene_replay_api_descriptor.pb</file></path><path><editType>edit</editType><file>config/config_car/plan.yaml</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/compact_scene_descriptor.pb</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</file></path><path><editType>edit</editType><file>data/plan/switch_data.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_encoder.cpp</file></path><path><editType>edit</editType><file>data/config/cfg_lat_decide.hpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>Testing/long_target_activation_test.cpp</affectedPath><affectedPath>Testing/CMakeLists.txt</affectedPath><affectedPath>data/constrain/long_target.cpp</affectedPath><commitId>acb9f2343e96a0264c62697bdfa04d461ea8bb39</commitId><timestamp>1790182202000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 避免巡航负加速度误激活远端停车

停车激活评估不再把普通负加速度视为已进入终点制动，保留候选起点 v/a、硬制动可达性和已激活停车的连续性。

补充现场 bag 参数、连续重规划、目标移远、约束消失及近距离硬制动回归。
</comment><date>2026-09-24 00:50:02 +0800</date><id>acb9f2343e96a0264c62697bdfa04d461ea8bb39</id><msg>fix: 避免巡航负加速度误激活远端停车</msg><path><editType>add</editType><file>Testing/long_target_activation_test.cpp</file></path><path><editType>edit</editType><file>Testing/CMakeLists.txt</file></path><path><editType>edit</editType><file>data/constrain/long_target.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>data/lattice/lattice_trajectory1d.cpp</affectedPath><affectedPath>math/curve1d/curve1d.hpp</affectedPath><affectedPath>algorithm/plan/lattice.cpp</affectedPath><affectedPath>math/piecewise_jerk/piecewise_jerk_traj.cpp</affectedPath><affectedPath>Testing/longitudinal_curve_validation_test.cpp</affectedPath><affectedPath>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</affectedPath><affectedPath>data/lattice/longitudinal_curve_validator.hpp</affectedPath><affectedPath>data/lattice/lattice_trajectory1d.hpp</affectedPath><affectedPath>math/piecewise_jerk/piecewise_jerk_traj.hpp</affectedPath><affectedPath>Testing/CMakeLists.txt</affectedPath><affectedPath>Testing/jerk_limited_stop_test.cpp</affectedPath><commitId>8fd5a80b8aae60764c9d37775d6826ab6cb4c672</commitId><timestamp>1790182204000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 解析校验长时域停车曲线以避免候选误拒绝

分段常 jerk 曲线检查完整时域端点、内部速度极值和分段边界，支持历史时间重基与终点保持；未知曲线继续保留采样预算保护。

补充远端停车及低速恢复回归，并在规划失败日志中输出首个前置候选拒绝原因。刷新本次头文件变化对应的审计哈希，不改变持久化字段。
</comment><date>2026-09-24 00:50:04 +0800</date><id>8fd5a80b8aae60764c9d37775d6826ab6cb4c672</id><msg>fix: 解析校验长时域停车曲线以避免候选误拒绝</msg><path><editType>edit</editType><file>algorithm/plan/lattice.cpp</file></path><path><editType>edit</editType><file>data/lattice/lattice_trajectory1d.cpp</file></path><path><editType>edit</editType><file>math/curve1d/curve1d.hpp</file></path><path><editType>edit</editType><file>math/piecewise_jerk/piecewise_jerk_traj.hpp</file></path><path><editType>edit</editType><file>Testing/CMakeLists.txt</file></path><path><editType>add</editType><file>Testing/longitudinal_curve_validation_test.cpp</file></path><path><editType>edit</editType><file>data/lattice/longitudinal_curve_validator.hpp</file></path><path><editType>edit</editType><file>math/piecewise_jerk/piecewise_jerk_traj.cpp</file></path><path><editType>edit</editType><file>Testing/jerk_limited_stop_test.cpp</file></path><path><editType>edit</editType><file>data/lattice/lattice_trajectory1d.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>data/common/trajectory_point.cpp</affectedPath><affectedPath>Testing/trajectory_point_interpolation_test.cpp</affectedPath><affectedPath>Testing/CMakeLists.txt</affectedPath><commitId>4470e60a991e108dc7e0629c4f1653e242a1f754</commitId><timestamp>1790182204000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 按时间插值消除低速轨迹起点锁存

时间匹配直接按时间比例插值，避免亚毫米制动轨迹被 1 cm 空间容差或 1 ms 时间容差截断；保留角度和 z 哨兵语义。

新增低速、静止、亚毫秒、分段端点和重复时间回归。三个修复合并验证：99 项纵向规划测试通过，pnc_node 分布式构建通过。
</comment><date>2026-09-24 00:50:04 +0800</date><id>4470e60a991e108dc7e0629c4f1653e242a1f754</id><msg>fix: 按时间插值消除低速轨迹起点锁存</msg><path><editType>add</editType><file>Testing/trajectory_point_interpolation_test.cpp</file></path><path><editType>edit</editType><file>Testing/CMakeLists.txt</file></path><path><editType>edit</editType><file>data/common/trajectory_point.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>replayer/replayer_data_process/replayer_data_process.cpp</affectedPath><affectedPath>replayer/algorithm_replay/production_variant_runner.cpp</affectedPath><affectedPath>replayer/replayer_data_process/replayer_data_process.hpp</affectedPath><affectedPath>Testing/scene_replay_foundation_test.cpp</affectedPath><commitId>c463af0de6aa16dc8cb5d1088faaa3fc18bf8935</commitId><timestamp>1790182321000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 恢复回放帧配置并保护共享配置访问

逐帧同步 WBCA 等生产算法读取的配置单例，避免离线默认零速度覆盖录制配置。
回放重建与任务执行共用递归互斥锁，防止并发回放互相覆盖配置。
补充连续帧限速和相关配置恢复回归测试。
</comment><date>2026-09-24 00:52:01 +0800</date><id>c463af0de6aa16dc8cb5d1088faaa3fc18bf8935</id><msg>fix: 恢复回放帧配置并保护共享配置访问</msg><path><editType>edit</editType><file>replayer/replayer_data_process/replayer_data_process.hpp</file></path><path><editType>edit</editType><file>Testing/scene_replay_foundation_test.cpp</file></path><path><editType>edit</editType><file>replayer/algorithm_replay/production_variant_runner.cpp</file></path><path><editType>edit</editType><file>replayer/replayer_data_process/replayer_data_process.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>data/dp_poly_path/trajectory_cost.hpp</affectedPath><affectedPath>data/boundary/driving_corridor.cpp</affectedPath><affectedPath>data/constrain/longitude_constrain.cpp</affectedPath><affectedPath>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</affectedPath><affectedPath>data/dp_poly_path/trajectory_cost.cpp</affectedPath><affectedPath>data/boundary/driving_corridor_test.cpp</affectedPath><affectedPath>data/boundary/driving_corridor.hpp</affectedPath><affectedPath>replayer/scene_data/obstacle_proto_codec.cpp</affectedPath><affectedPath>Testing/scene_replay_foundation_test.cpp</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_encoder.cpp</affectedPath><affectedPath>replayer/scene_data/generated/compact_scene_descriptor.pb</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_field_roles.json</affectedPath><affectedPath>data/obstacle/decision/obstacle_decision_test.cpp</affectedPath><affectedPath>data/dp_poly_path/dp_road_graph.cpp</affectedPath><affectedPath>data/obstacle/decision/obstacle_decision.hpp</affectedPath><affectedPath>data/obstacle/decision/obstacle_decision.cpp</affectedPath><affectedPath>replayer/scene_data/plan_frame_nested_persistence_review.yaml</affectedPath><affectedPath>Testing/compact_driving_corridor_restore_test.cpp</affectedPath><affectedPath>docs/pnc_algorithm_replay/plan_frame_field_workflow.md</affectedPath><affectedPath>data/obstacle/obstacle_decider_attr.cpp</affectedPath><affectedPath>data/dp_poly_path/trajectory_cost_test.cpp</affectedPath><affectedPath>replayer/scene_data/plan_frame_field_roles.csv</affectedPath><affectedPath>data/obstacle/obstacle_decider_attr.hpp</affectedPath><affectedPath>replayer/scene_data/generated/scene_replay_api_descriptor.pb</affectedPath><affectedPath>proto/obstacle.proto</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_descriptor.pb</affectedPath><commitId>4b28b4a4fa1c8cdaccdc57a377777622248da7c3</commitId><timestamp>1790182338000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 提前准备会车右让空间并补齐预测尾点检查

会车预判覆盖纵向规划时域并检查真实预测尾点，自车与障碍物按同一时刻评估。
提前生成右让准备段，考虑实车及有效拼接车身占用，保留可行通道和车身保护。
按目标记录边界贡献，切入或换侧时撤销失效贡献并迁移代表位置，缺失保持迟滞。
持久化会车确认状态，完善 Full、Compact、Candidate 及边界与动态代价回归。

验证：分布式构建节点、回放器和测试目标；440 项常规测试通过；合同生成与兼容检查通过。
两份 bag 重建完成，提前右让时机未退后；新增尾点碰撞使部分录制状态帧无解，尚未完成闭环连续通过验收。
</comment><date>2026-09-24 00:52:18 +0800</date><id>4b28b4a4fa1c8cdaccdc57a377777622248da7c3</id><msg>fix: 提前准备会车右让空间并补齐预测尾点检查</msg><path><editType>edit</editType><file>replayer/scene_data/plan_frame_nested_persistence_review.yaml</file></path><path><editType>edit</editType><file>data/obstacle/obstacle_decider_attr.hpp</file></path><path><editType>edit</editType><file>docs/pnc_algorithm_replay/plan_frame_field_workflow.md</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_descriptor.pb</file></path><path><editType>edit</editType><file>data/boundary/driving_corridor.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/scene_replay_api_descriptor.pb</file></path><path><editType>edit</editType><file>data/obstacle/decision/obstacle_decision_test.cpp</file></path><path><editType>edit</editType><file>proto/obstacle.proto</file></path><path><editType>edit</editType><file>data/obstacle/decision/obstacle_decision.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_field_roles.json</file></path><path><editType>edit</editType><file>data/dp_poly_path/trajectory_cost_test.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/compact_scene_descriptor.pb</file></path><path><editType>edit</editType><file>Testing/scene_replay_foundation_test.cpp</file></path><path><editType>edit</editType><file>data/dp_poly_path/dp_road_graph.cpp</file></path><path><editType>edit</editType><file>Testing/compact_driving_corridor_restore_test.cpp</file></path><path><editType>edit</editType><file>data/obstacle/decision/obstacle_decision.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/obstacle_proto_codec.cpp</file></path><path><editType>edit</editType><file>data/boundary/driving_corridor.hpp</file></path><path><editType>edit</editType><file>data/constrain/longitude_constrain.cpp</file></path><path><editType>edit</editType><file>data/boundary/driving_corridor_test.cpp</file></path><path><editType>edit</editType><file>data/obstacle/obstacle_decider_attr.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_encoder.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/plan_frame_field_roles.csv</file></path><path><editType>edit</editType><file>data/dp_poly_path/trajectory_cost.cpp</file></path><path><editType>edit</editType><file>data/dp_poly_path/trajectory_cost.hpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>Testing/ssep_path_corridor_test.cpp</affectedPath><affectedPath>tasks/plan/keb_utils.cpp</affectedPath><affectedPath>scenarios/task_condition_evaluator.cpp</affectedPath><affectedPath>tasks/plan/keb_utils.hpp</affectedPath><commitId>ebf79838cebf70c654ad674503a1cedbe50bb8c0</commitId><timestamp>1790185524000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 按任务终点与路口中点选择堆场规划器

使用当前行驶段剩余距离判断任务终点是否越过进出场路口中点，避免延长引导线和区域提前判定误触发 KEB。终点在中点或之前时按已开启的堆场 PJPO 开关选择 PJPO，超过中点时保留 KEB。

选择器与 KEB 目标构造共用终点检查，保留缺输入报错及带缓存路口的尾段复用。补充中点边界、规划器切换、换向段终点、无效输入与连续路口回归。分布式编译及 19 项相关测试通过。
</comment><date>2026-09-24 01:45:24 +0800</date><id>ebf79838cebf70c654ad674503a1cedbe50bb8c0</id><msg>fix: 按任务终点与路口中点选择堆场规划器</msg><path><editType>edit</editType><file>scenarios/task_condition_evaluator.cpp</file></path><path><editType>edit</editType><file>tasks/plan/keb_utils.hpp</file></path><path><editType>edit</editType><file>tasks/plan/keb_utils.cpp</file></path><path><editType>edit</editType><file>Testing/ssep_path_corridor_test.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>data/config/cfg_env_const.hpp</affectedPath><affectedPath>math/filter/median_filter.hpp</affectedPath><affectedPath>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</affectedPath><affectedPath>data/config/cfg_env_const.cpp</affectedPath><affectedPath>CMakeLists.txt</affectedPath><affectedPath>replayer/scene_data/compact_custom_field_proto_codec.cpp</affectedPath><affectedPath>Testing/scene_replay_foundation_test.cpp</affectedPath><affectedPath>data/constrain/temporary_stop_data.cpp</affectedPath><affectedPath>tools/pnc_proto_mapper/audit_full_custom_codecs.py</affectedPath><affectedPath>replayer/scene_data/full_proto_custom_encoder.cpp</affectedPath><affectedPath>docs/pnc_algorithm_replay/plan_frame_persistence_catalog.md</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_encoder.cpp</affectedPath><affectedPath>proto/decision.proto</affectedPath><affectedPath>data/constrain/temporary_stop_data.hpp</affectedPath><affectedPath>replayer/scene_data/generated/compact_scene_descriptor.pb</affectedPath><affectedPath>data/constrain/block_data.cpp</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_field_roles.json</affectedPath><affectedPath>proto/pnc_scene/compact_plan_frame_fields.proto</affectedPath><affectedPath>replayer/scene_data/generated/full_custom_codec_coverage_audit.yaml</affectedPath><affectedPath>proto/config.proto</affectedPath><affectedPath>Testing/disable_stop_regression_test.cpp</affectedPath><affectedPath>replayer/scene_data/config_proto_codec.cpp</affectedPath><affectedPath>replayer/scene_data/generated/compact_typed_field_codec.cpp</affectedPath><affectedPath>replayer/scene_data/compact_numeric_policy.yaml</affectedPath><affectedPath>data/constrain/disable_stop_range.cpp</affectedPath><affectedPath>data/constrain/disable_stop_range.hpp</affectedPath><affectedPath>replayer/scene_data/config_proto_codec.hpp</affectedPath><affectedPath>replayer/scene_data/plan_frame_nested_persistence_review.yaml</affectedPath><affectedPath>docs/pnc_algorithm_replay/plan_frame_field_workflow.md</affectedPath><affectedPath>Testing/disable_stop_queue_test.cpp</affectedPath><affectedPath>replayer/scene_data/plan_frame_full_mapping.yaml</affectedPath><affectedPath>replayer/scene_data/plan_frame_persistence_policy.yaml</affectedPath><affectedPath>replayer/scene_data/plan_frame_field_roles.csv</affectedPath><affectedPath>data/constrain/disable_stop_queue.hpp</affectedPath><affectedPath>data/constrain/block_data.hpp</affectedPath><affectedPath>Testing/CMakeLists.txt</affectedPath><affectedPath>replayer/scene_data/generated/scene_replay_api_descriptor.pb</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_descriptor.pb</affectedPath><commitId>70146373ee82184f8d33a368003d6fc2f3c8eb94</commitId><timestamp>1790220559000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 合入禁停队列预测并修正整车范围与缓存退出

仅合入 6055d1444943aeae3754e02473b6ba418b9ab5cb，保留当前分支的信号灯禁停策略和 can_jump 语义。

路口与普通禁停区已扩展整车长度，预测匹配避免重复计入；岸桥保留挂车占用判断。通过点锚点缺失时按累计位移推进缓存，并在整段通过后退出。修复连续过期条目清理的迭代器失效。

按帧复用队列预测结果，保持原前车选择与预测参数；删除 use_func_disable_stop_debug_ 参数及专用日志。

为新增预测、滤波窗口、保持状态、路口缓存和入口偏移补齐 typed Full/Compact 合同及回放测试；统一显式空 Full codec 的生成与审计语义。

验证：分布式构建 pnc_node 和两个测试目标成功；routing_map_guard 78 项通过，scene_replay_foundation 288 项通过、2 项因缺可选样本跳过；其中 3 项本地服务测试解除端口沙箱限制后重跑通过。生成检查、Proto breaking 检查和持久化目录检查通过。
</comment><date>2026-09-24 11:29:19 +0800</date><id>70146373ee82184f8d33a368003d6fc2f3c8eb94</id><msg>fix: 合入禁停队列预测并修正整车范围与缓存退出</msg><path><editType>edit</editType><file>data/config/cfg_env_const.hpp</file></path><path><editType>add</editType><file>Testing/disable_stop_queue_test.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/compact_custom_field_proto_codec.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/plan_frame_field_roles.csv</file></path><path><editType>edit</editType><file>replayer/scene_data/plan_frame_nested_persistence_review.yaml</file></path><path><editType>edit</editType><file>replayer/scene_data/plan_frame_full_mapping.yaml</file></path><path><editType>edit</editType><file>Testing/CMakeLists.txt</file></path><path><editType>edit</editType><file>replayer/scene_data/full_proto_custom_encoder.cpp</file></path><path><editType>edit</editType><file>data/constrain/disable_stop_range.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/config_proto_codec.cpp</file></path><path><editType>edit</editType><file>proto/decision.proto</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/compact_scene_descriptor.pb</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_descriptor.pb</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_field_roles.json</file></path><path><editType>edit</editType><file>data/constrain/block_data.hpp</file></path><path><editType>edit</editType><file>data/constrain/temporary_stop_data.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/scene_replay_api_descriptor.pb</file></path><path><editType>edit</editType><file>docs/pnc_algorithm_replay/plan_frame_persistence_catalog.md</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_encoder.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/full_custom_codec_coverage_audit.yaml</file></path><path><editType>edit</editType><file>proto/config.proto</file></path><path><editType>add</editType><file>data/constrain/disable_stop_queue.hpp</file></path><path><editType>edit</editType><file>data/constrain/disable_stop_range.cpp</file></path><path><editType>edit</editType><file>data/constrain/temporary_stop_data.cpp</file></path><path><editType>edit</editType><file>tools/pnc_proto_mapper/audit_full_custom_codecs.py</file></path><path><editType>edit</editType><file>Testing/scene_replay_foundation_test.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/plan_frame_persistence_policy.yaml</file></path><path><editType>edit</editType><file>replayer/scene_data/compact_numeric_policy.yaml</file></path><path><editType>edit</editType><file>proto/pnc_scene/compact_plan_frame_fields.proto</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/compact_typed_field_codec.cpp</file></path><path><editType>edit</editType><file>data/constrain/block_data.cpp</file></path><path><editType>edit</editType><file>math/filter/median_filter.hpp</file></path><path><editType>add</editType><file>Testing/disable_stop_regression_test.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/config_proto_codec.hpp</file></path><path><editType>edit</editType><file>CMakeLists.txt</file></path><path><editType>edit</editType><file>docs/pnc_algorithm_replay/plan_frame_field_workflow.md</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</file></path><path><editType>edit</editType><file>data/config/cfg_env_const.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>docs/pnc_algorithm_replay/proto_generation.md</affectedPath><affectedPath>AGENTS.md</affectedPath><affectedPath>docs/pnc_algorithm_replay/plan_frame_field_workflow.md</affectedPath><commitId>344373f6f048c4464359e98d3c30ed0af1229ce2</commitId><timestamp>1790221008000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>docs: 补充多分支 Proto 兼容与发布规范

明确固定 baseline 检查无法覆盖并行分支冲突，要求统一核对字段编号、对活跃发布版本检查描述符及双向读写，并记录发布物合同。将流程提醒加入 AGENTS.md，供后续代码修改遵循。
</comment><date>2026-09-24 11:36:48 +0800</date><id>344373f6f048c4464359e98d3c30ed0af1229ce2</id><msg>docs: 补充多分支 Proto 兼容与发布规范</msg><path><editType>edit</editType><file>docs/pnc_algorithm_replay/plan_frame_field_workflow.md</file></path><path><editType>edit</editType><file>docs/pnc_algorithm_replay/proto_generation.md</file></path><path><editType>edit</editType><file>AGENTS.md</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>data/obstacle/cluster_lane_change_safety_test.cpp</affectedPath><commitId>de3f72d5741168549187d530d99818f0700baae7</commitId><timestamp>1790250243000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>test: 适配临时停车范围的障碍物参数

为凸包换道安全测试补齐 AddDisableRange 新增的障碍物映射参数，恢复测试目标编译。
</comment><date>2026-09-24 19:44:03 +0800</date><id>de3f72d5741168549187d530d99818f0700baae7</id><msg>test: 适配临时停车范围的障碍物参数</msg><path><editType>edit</editType><file>data/obstacle/cluster_lane_change_safety_test.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>data/boundary/driving_corridor.cpp</affectedPath><affectedPath>data/boundary/driving_corridor_test.cpp</affectedPath><commitId>67d43604b8c435034219db009741feec09406e3d</commitId><timestamp>1790250243000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 避免会车准备段过度收缩绕行空间

会车近侧目标保持在统一 SL 坐标系，移除按源段与当地安全右界差值平移目标的逻辑，避免将远处静态障碍缺口扩大到上游。保留源段可行性和当地完整车宽保护，并补充障碍缺口与借道宽度变化回归。
</comment><date>2026-09-24 19:44:03 +0800</date><id>67d43604b8c435034219db009741feec09406e3d</id><msg>fix: 避免会车准备段过度收缩绕行空间</msg><path><editType>edit</editType><file>data/boundary/driving_corridor.cpp</file></path><path><editType>edit</editType><file>data/boundary/driving_corridor_test.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>replayer/scene_data/generated/compact_scene_descriptor.pb</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_field_roles.json</affectedPath><affectedPath>data/obstacle/decision/obstacle_decision_test.cpp</affectedPath><affectedPath>replayer/scene_data/generated/full_custom_codec_coverage_audit.yaml</affectedPath><affectedPath>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</affectedPath><affectedPath>replayer/scene_data/compact_numeric_policy.yaml</affectedPath><affectedPath>data/obstacle/obstacle.hpp</affectedPath><affectedPath>tools/pnc_proto_mapper/sync_container_schema.py</affectedPath><affectedPath>data/obstacle/decision/obstacle_decision.hpp</affectedPath><affectedPath>data/obstacle/decision/obstacle_decision.cpp</affectedPath><affectedPath>Testing/compact_driving_corridor_restore_test.cpp</affectedPath><affectedPath>replayer/scene_data/obstacle_proto_codec.cpp</affectedPath><affectedPath>Testing/scene_replay_foundation_test.cpp</affectedPath><affectedPath>docs/pnc_algorithm_replay/plan_frame_field_workflow.md</affectedPath><affectedPath>tools/pnc_proto_mapper/test_container_schema_registration.py</affectedPath><affectedPath>replayer/scene_data/generated/container_schema_inputs.json</affectedPath><affectedPath>replayer/scene_data/plan_frame_field_roles.csv</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_encoder.cpp</affectedPath><affectedPath>replayer/scene_data/generated/scene_replay_api_descriptor.pb</affectedPath><affectedPath>proto/obstacle.proto</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_descriptor.pb</affectedPath><commitId>3673d874187d6c64feb572f3f1d9755df30c1caa</commitId><timestamp>1790250262000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 保留静止障碍物短时漏检后的绕行确认依据

保存最长 0.5 秒的同 ID 静止确认依据，恢复前核对类型、跟踪年龄、位置、尺寸及原始和滤波运动证据。仅恢复确认计数，绕行策略与承诺仍按当前场景计算，避免 OBJ 与凸包反复切换造成重复等待。

在 feat_proto_jinxi 登记 ObstaclesProto 字段 8，同步 Full、Compact 和 Candidate 编解码及缺字段默认行为，修复旧容器清单覆盖新字段登记的问题。新增生命周期、运动否决、合同兼容与带宽回归。

验证：分布式构建 pnc_node、pnc_replayer 及测试目标通过；162 项决策与走廊测试、290 项回放测试通过。453 场景 90 帧回放验证第 41、65、74 帧恢复即允许绕行，初次检测仍等待确认；合同生成及兼容检查通过。
</comment><date>2026-09-24 19:44:22 +0800</date><id>3673d874187d6c64feb572f3f1d9755df30c1caa</id><msg>fix: 保留静止障碍物短时漏检后的绕行确认依据</msg><path><editType>edit</editType><file>Testing/scene_replay_foundation_test.cpp</file></path><path><editType>edit</editType><file>tools/pnc_proto_mapper/sync_container_schema.py</file></path><path><editType>edit</editType><file>data/obstacle/decision/obstacle_decision.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</file></path><path><editType>edit</editType><file>replayer/scene_data/compact_numeric_policy.yaml</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_field_roles.json</file></path><path><editType>edit</editType><file>docs/pnc_algorithm_replay/plan_frame_field_workflow.md</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/container_schema_inputs.json</file></path><path><editType>edit</editType><file>replayer/scene_data/plan_frame_field_roles.csv</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/full_custom_codec_coverage_audit.yaml</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/scene_replay_api_descriptor.pb</file></path><path><editType>add</editType><file>tools/pnc_proto_mapper/test_container_schema_registration.py</file></path><path><editType>edit</editType><file>data/obstacle/decision/obstacle_decision.cpp</file></path><path><editType>edit</editType><file>proto/obstacle.proto</file></path><path><editType>edit</editType><file>data/obstacle/obstacle.hpp</file></path><path><editType>edit</editType><file>data/obstacle/decision/obstacle_decision_test.cpp</file></path><path><editType>edit</editType><file>Testing/compact_driving_corridor_restore_test.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/compact_scene_descriptor.pb</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_descriptor.pb</file></path><path><editType>edit</editType><file>replayer/scene_data/obstacle_proto_codec.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_encoder.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>Testing/CMakeLists.txt</affectedPath><affectedPath>Testing/task_align_terminal_stop_test.cpp</affectedPath><affectedPath>data/app/fsm/task_fsm/task_align_fsm/task_align_fsm.cpp</affectedPath><commitId>e146a0387c90cd0e721513f101f7f0fb507312e6</commitId><timestamp>1790572026000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 修复一次对准终点停车后未进入锁定状态

允许车辆已静止且因绝对终点停车进入 STOP_CTRL 时，在正向偏差不超过停车线接管阈值的情况下进入 ALIGN_LOCK，避免约 2 cm 剩余偏差使任务停留在 ALIGN_1ST。保留原有负偏差转换行为，并补充距离边界、静止条件和停车原因回归测试。
</comment><date>2026-09-28 13:07:06 +0800</date><id>e146a0387c90cd0e721513f101f7f0fb507312e6</id><msg>fix: 修复一次对准终点停车后未进入锁定状态</msg><path><editType>edit</editType><file>Testing/CMakeLists.txt</file></path><path><editType>edit</editType><file>data/app/fsm/task_fsm/task_align_fsm/task_align_fsm.cpp</file></path><path><editType>add</editType><file>Testing/task_align_terminal_stop_test.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>algorithm/wbca/path_optimization/truck_path_optimization.hpp</affectedPath><affectedPath>Testing/fixtures/wbca_truck_collision_gradient_7.csv</affectedPath><affectedPath>algorithm/wbca/path_optimization/path_optimization.hpp</affectedPath><affectedPath>Testing/fixtures/wbca_truck_collision_gradient_8.csv</affectedPath><affectedPath>algorithm/wbca/path_optimization/path_optimization.cpp</affectedPath><affectedPath>algorithm/wbca/path_optimization/truck_path_optimization.cpp</affectedPath><affectedPath>Testing/wbca_failure_csv_test.cpp</affectedPath><affectedPath>docs/platoon/wbca_failure_replay.md</affectedPath><commitId>0cdb4d93c35b8ff0cf7cdd2ba49d8be835409ca0</commitId><timestamp>1790581320000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>fix(wbca): correct collision and distance cost gradients
</comment><date>2026-09-28 15:42:00 +0800</date><id>0cdb4d93c35b8ff0cf7cdd2ba49d8be835409ca0</id><msg>fix(wbca): correct collision and distance cost gradients</msg><path><editType>edit</editType><file>algorithm/wbca/path_optimization/path_optimization.hpp</file></path><path><editType>edit</editType><file>algorithm/wbca/path_optimization/truck_path_optimization.cpp</file></path><path><editType>edit</editType><file>algorithm/wbca/path_optimization/truck_path_optimization.hpp</file></path><path><editType>edit</editType><file>Testing/wbca_failure_csv_test.cpp</file></path><path><editType>edit</editType><file>algorithm/wbca/path_optimization/path_optimization.cpp</file></path><path><editType>edit</editType><file>docs/platoon/wbca_failure_replay.md</file></path><path><editType>add</editType><file>Testing/fixtures/wbca_truck_collision_gradient_7.csv</file></path><path><editType>add</editType><file>Testing/fixtures/wbca_truck_collision_gradient_8.csv</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>offboard/keb_vis_server/test_heading_diagnostics.js</affectedPath><affectedPath>data/config/cfg_hmi_layer_mapping.yaml</affectedPath><affectedPath>offboard/keb_vis_server/keb_vis_html_template.cc</affectedPath><affectedPath>replayer/scene_data/hmi_layer_manifest.yaml</affectedPath><affectedPath>ssep/offboard/servers/scene_vis_html_template.cc</affectedPath><affectedPath>hmi/widget/pnc_mat_shared.cpp</affectedPath><affectedPath>replayer/scene_data/generated/hmi_layer_catalog.cpp</affectedPath><affectedPath>hmi/draw/draw_all.cpp</affectedPath><affectedPath>ssep/offboard/servers/test_heading_diagnostics.js</affectedPath><affectedPath>hmi/draw/draw_keb_debug.hpp</affectedPath><affectedPath>hmi/draw/keb_heading_deviation.hpp</affectedPath><affectedPath>hmi/draw/draw_keb_debug.cpp</affectedPath><affectedPath>Testing/CMakeLists.txt</affectedPath><affectedPath>Testing/keb_heading_deviation_test.cpp</affectedPath><commitId>1e690475945ef9fb1b162332ff6e4d6e221df555</commitId><timestamp>1790585514000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>feat: 为 KEB 可视化标注最大航向偏差

在 HMI 的 SSEP/实时 KEB、独立 KEB 网页和场景网页中标注车头与挂车最大角差点、车框、点序号和角度。
按到达方向处理倒车和换向，使用挂车后轴几何；缺挡位时明确采用轴线差，IMV 按 beta 可用性标注。
补充 C++/JavaScript 回归和 HMI 图层登记，覆盖首点未知方向、换向后最大点、零值字段及退化路径。
</comment><date>2026-09-28 16:51:54 +0800</date><id>1e690475945ef9fb1b162332ff6e4d6e221df555</id><msg>feat: 为 KEB 可视化标注最大航向偏差</msg><path><editType>edit</editType><file>replayer/scene_data/hmi_layer_manifest.yaml</file></path><path><editType>edit</editType><file>data/config/cfg_hmi_layer_mapping.yaml</file></path><path><editType>add</editType><file>hmi/draw/keb_heading_deviation.hpp</file></path><path><editType>add</editType><file>offboard/keb_vis_server/test_heading_diagnostics.js</file></path><path><editType>edit</editType><file>Testing/CMakeLists.txt</file></path><path><editType>edit</editType><file>hmi/draw/draw_keb_debug.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/hmi_layer_catalog.cpp</file></path><path><editType>add</editType><file>Testing/keb_heading_deviation_test.cpp</file></path><path><editType>edit</editType><file>ssep/offboard/servers/scene_vis_html_template.cc</file></path><path><editType>edit</editType><file>hmi/draw/draw_all.cpp</file></path><path><editType>edit</editType><file>hmi/draw/draw_keb_debug.cpp</file></path><path><editType>edit</editType><file>hmi/widget/pnc_mat_shared.cpp</file></path><path><editType>edit</editType><file>offboard/keb_vis_server/keb_vis_html_template.cc</file></path><path><editType>add</editType><file>ssep/offboard/servers/test_heading_diagnostics.js</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>ssep/offboard/servers/scene_vis_html_template.cc</affectedPath><commitId>ef78186a4b5cda1ac989eb14077fc05504d3bdf4</commitId><timestamp>1790585525000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>feat: 为场景网页增加搜索起终点车框开关

在图例中分别控制搜索起点和终点的车头框、挂车框及位置标记，默认保持显示。
兼容 Proto JSON 省略的零值坐标和朝向；已通过浏览器独立隐藏与恢复验证。
</comment><date>2026-09-28 16:52:05 +0800</date><id>ef78186a4b5cda1ac989eb14077fc05504d3bdf4</id><msg>feat: 为场景网页增加搜索起终点车框开关</msg><path><editType>edit</editType><file>ssep/offboard/servers/scene_vis_html_template.cc</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>algorithm/wbca/path_optimization/path_optimization.cpp</affectedPath><affectedPath>algorithm/wbca/path_optimization/truck_path_optimization.hpp</affectedPath><affectedPath>Testing/CMakeLists.txt</affectedPath><affectedPath>algorithm/wbca/path_optimization/truck_path_optimization.cpp</affectedPath><affectedPath>Testing/wbca_cost_gradient_test.cpp</affectedPath><affectedPath>algorithm/wbca/path_optimization/path_optimization.hpp</affectedPath><commitId>220cf88ad8837fbca150f5f48ac4f59217bfea82</commitId><timestamp>1790588982000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>fix(wbca): correct path cost gradients

Differentiate trailer collision costs through the discrete integration across samples and segment durations. Correct the tractor collision Jacobian transpose and the initial-sample minimum-distance gradient.

Add a standalone finite-difference regression target covering forward and reverse coefficients and durations.
</comment><date>2026-09-28 17:49:42 +0800</date><id>220cf88ad8837fbca150f5f48ac4f59217bfea82</id><msg>fix(wbca): correct path cost gradients</msg><path><editType>edit</editType><file>algorithm/wbca/path_optimization/path_optimization.cpp</file></path><path><editType>edit</editType><file>Testing/CMakeLists.txt</file></path><path><editType>add</editType><file>Testing/wbca_cost_gradient_test.cpp</file></path><path><editType>edit</editType><file>algorithm/wbca/path_optimization/truck_path_optimization.cpp</file></path><path><editType>edit</editType><file>algorithm/wbca/path_optimization/path_optimization.hpp</file></path><path><editType>edit</editType><file>algorithm/wbca/path_optimization/truck_path_optimization.hpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>ssep/coarse_search/searcher_builders/tractor_trailer_bidirectional_searcher_builder.cc</affectedPath><affectedPath>ssep/scenarios/truck_multi_seg_general_planner.h</affectedPath><affectedPath>ssep/test/coarse_search_stop_clearance_test.cc</affectedPath><affectedPath>ssep/coarse_search/searcher_builders/imv_bidirectional_searcher_builder.h</affectedPath><affectedPath>ssep/test/gpu_collision_disk_packing_test.cc</affectedPath><affectedPath>ssep/scenarios/imv_exit_parking_spot_planner.h</affectedPath><affectedPath>ssep/keb_optimizer/keb_problem.cc</affectedPath><affectedPath>ssep/coarse_search/searcher_builders/truck_reference_following_searcher_builder.cc</affectedPath><affectedPath>ssep/test/keb_normal_extension_test.cc</affectedPath><affectedPath>ssep/scenarios/imv_enter_yard_planner.h</affectedPath><affectedPath>ssep/coarse_search/searcher_builders/tractor_trailer_general_searcher_builder.cc</affectedPath><affectedPath>data/config/cfg_lat_plan.cpp</affectedPath><affectedPath>ssep/test/bidirectional_stop_collision_test.cc</affectedPath><affectedPath>replayer/scene_data/generated/compact_scene_descriptor.pb</affectedPath><affectedPath>ssep/coarse_search/evaluator/trailer_collision_cost_computer.h</affectedPath><affectedPath>ssep/coarse_search/searcher_builders/imv_general_searcher_builder.cc</affectedPath><affectedPath>ssep/keb_optimizer/imv_keb_optimizer.h</affectedPath><affectedPath>ssep/test/gpu_collision_test.cc</affectedPath><affectedPath>ssep/coarse_search/searcher_builders/tractor_trailer_lane_change_searcher_builder.cc</affectedPath><affectedPath>ssep/scenarios/truck_general_planner.h</affectedPath><affectedPath>ssep/coarse_search/gpu_context.cc</affectedPath><affectedPath>tasks/plan/keb_utils_core.hpp</affectedPath><affectedPath>ssep/keb_optimizer/tractor_trailer_keb_optimizer.cc</affectedPath><affectedPath>ssep/coarse_search/bidirectional_hybrid_astar_search_engine.cc</affectedPath><affectedPath>docs/pnc_algorithm_replay/plan_frame_field_workflow.md</affectedPath><affectedPath>ssep/coarse_search/searcher_builders/tractor_trailer_lane_change_searcher_builder.h</affectedPath><affectedPath>ssep/keb_optimizer/keb_problem.h</affectedPath><affectedPath>ssep/coarse_search/searcher_builders/tractor_trailer_single_segment_parking_searcher_builder.h</affectedPath><affectedPath>ssep/scenarios/straddle_carrier_pick_vehicle_planner.h</affectedPath><affectedPath>ssep/keb_optimizer/rigid_truck_keb_optimizer.h</affectedPath><affectedPath>ssep/test/CMakeLists.txt</affectedPath><affectedPath>tasks/plan/keb_path_optimize_task.cpp</affectedPath><affectedPath>ssep/coarse_search/gpu_collision_disk_packing.h</affectedPath><affectedPath>ssep/coarse_search/geometric_searcher/bulk_yard_geometric_searcher.cc</affectedPath><affectedPath>ssep/scenarios/two_stage_planner_composer.h</affectedPath><affectedPath>data/config/cfg_lat_plan.hpp</affectedPath><affectedPath>ssep/scenarios/imv_enter_station_planner.h</affectedPath><affectedPath>ssep/scenarios/tractor_trailer_enter_parking_spot_planner.h</affectedPath><affectedPath>ssep/scenarios/forward_collision_check_params.h</affectedPath><affectedPath>ssep/keb_optimizer/keb_utils.h</affectedPath><affectedPath>ssep/coarse_search/searcher_builders/imv_general_searcher_builder.h</affectedPath><affectedPath>ssep/coarse_search/gpu_context.h</affectedPath><affectedPath>ssep/coarse_search/searcher_builders/imv_bidirectional_searcher_builder.cc</affectedPath><affectedPath>ssep/coarse_search/evaluator/evaluator.h</affectedPath><affectedPath>replayer/scene_data/generated/full_custom_codec_coverage_audit.yaml</affectedPath><affectedPath>ssep/coarse_search/searcher_builders/truck_multi_segment_parking_bidirectional_searcher_builder.h</affectedPath><affectedPath>ssep/keb_optimizer/rigid_truck_keb_optimizer.cc</affectedPath><affectedPath>ssep/scenarios/tractor_trailer_enter_yard_planner.h</affectedPath><affectedPath>ssep/scenarios/truck_fuzzy_reversing_planner.h</affectedPath><affectedPath>ssep/keb_optimizer/imv_keb_optimizer.cc</affectedPath><affectedPath>ssep/coarse_search/evaluator/gpu_collision_cost_computer.cc</affectedPath><affectedPath>ssep/gpu/device_types.h</affectedPath><affectedPath>ssep/coarse_search/searcher_builders/tractor_trailer_multi_segment_parking_bidirectional_searcher_builder.cc</affectedPath><affectedPath>ssep/coarse_search/searcher_builders/tractor_trailer_multi_segment_parking_bidirectional_searcher_builder.h</affectedPath><affectedPath>ssep/scenarios/straddle_carrier_general_planner.h</affectedPath><affectedPath>ssep/coarse_search/multi_stage_hybrid_astar_search_engine.cc</affectedPath><affectedPath>ssep/scenarios/stitching_replanner.h</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_descriptor.pb</affectedPath><affectedPath>docs/ssep_stop_collision_extension.md</affectedPath><affectedPath>ssep/scenarios/truck_bulk_yark_in_out_planner.cc</affectedPath><affectedPath>ssep/coarse_search/searcher_builders/tractor_trailer_general_searcher_builder.h</affectedPath><affectedPath>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</affectedPath><affectedPath>ssep/scenarios/truck_remote_guided_escape_planner.h</affectedPath><affectedPath>ssep/test/keb_stop_collision_test.cc</affectedPath><affectedPath>ssep/coarse_search/searcher_builders/bulk_yard_in_out_path_searcher_builder.h</affectedPath><affectedPath>ssep/coarse_search/searcher_builders/truck_reference_following_searcher_builder.h</affectedPath><affectedPath>ssep/coarse_search/evaluator/collision_cost_computer.h</affectedPath><affectedPath>ssep/scenarios/scenario_planner_interface.h</affectedPath><affectedPath>ssep/scenarios/tractor_trailer_multi_segment_parking_planner.h</affectedPath><affectedPath>ssep/scenarios/legacy_planner.h</affectedPath><affectedPath>ssep/coarse_search/searcher_builders/truck_multi_segment_parking_bidirectional_searcher_builder.cc</affectedPath><affectedPath>replayer/scene_data/config_proto_codec.cpp</affectedPath><affectedPath>ssep/coarse_search/evaluator/forward_collision_check_lengths.h</affectedPath><affectedPath>ssep/scenarios/truck_accurate_reversing_planner.cc</affectedPath><affectedPath>ssep/scenarios/tractor_trailer_reverse_priority_parking_planner.h</affectedPath><affectedPath>ssep/coarse_search/searcher_builders/tractor_trailer_single_segment_parking_searcher_builder.cc</affectedPath><affectedPath>ssep/ssep_planner.cc</affectedPath><affectedPath>ssep/scenarios/imv_pullover_planner.h</affectedPath><affectedPath>tasks/plan/keb_lane_follow_path_task.cpp</affectedPath><affectedPath>ssep/coarse_search/searcher_builders/imv_multi_segment_parking_bidirectional_searcher_builder.h</affectedPath><affectedPath>Testing/keb_roadside_config_test.cpp</affectedPath><affectedPath>ssep/keb_optimizer/README.md</affectedPath><affectedPath>tasks/plan/keb_utils_core.cpp</affectedPath><affectedPath>ssep/coarse_search/motion_primitive_sampler/reverse_primitive_decorator.h</affectedPath><affectedPath>ssep/scenarios/tractor_trailer_exit_parking_spot_planner.h</affectedPath><affectedPath>ssep/coarse_search/motion_primitive.h</affectedPath><affectedPath>ssep/scenarios/imv_general_planner.h</affectedPath><affectedPath>ssep/coarse_search/searcher_builders/rigid_truck_general_searcher_builder.h</affectedPath><affectedPath>replayer/scene_data/generated/config_schema_inputs.json</affectedPath><affectedPath>ssep/scenarios/truck_u_turn_planner.h</affectedPath><affectedPath>ssep/keb_optimizer/tractor_trailer_keb_optimizer.h</affectedPath><affectedPath>ssep/scenarios/imv_multi_segment_parking_planner.h</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_encoder.cpp</affectedPath><affectedPath>ssep/coarse_search/motion_primitive_sampler/dir_change_path_extention_decorator.h</affectedPath><affectedPath>ssep/scenarios/truck_multi_segment_parking_planner.h</affectedPath><affectedPath>ssep/coarse_search/searcher_builders/bulk_yard_in_out_path_searcher_builder.cc</affectedPath><affectedPath>ssep/gpu/collision/collision_checker.cuh</affectedPath><affectedPath>proto/config.proto</affectedPath><affectedPath>ssep/coarse_search/searcher_builders/rigid_truck_general_searcher_builder.cc</affectedPath><affectedPath>ssep/scenarios/tractor_trailer_general_planner.h</affectedPath><affectedPath>ssep/scenarios/tractor_trailer_short_distance_planner.h</affectedPath><affectedPath>ssep/scenarios/scenario_planner_factory.h</affectedPath><affectedPath>Testing/keb_gate_filter_test.cpp</affectedPath><affectedPath>ssep/coarse_search/searcher_builders/tractor_trailer_bidirectional_searcher_builder.h</affectedPath><affectedPath>ssep/scenarios/tractor_trailer_lane_change_planner.h</affectedPath><affectedPath>ssep/test/ssep_planner_test.cc</affectedPath><affectedPath>ssep/keb_optimizer/keb_utils.cc</affectedPath><affectedPath>ssep/test/forward_collision_check_params_test.cc</affectedPath><affectedPath>replayer/scene_data/generated/scene_replay_api_descriptor.pb</affectedPath><affectedPath>ssep/scenarios/tractor_trailer_single_segment_parking_planner.h</affectedPath><affectedPath>ssep/coarse_search/searcher_builders/imv_multi_segment_parking_bidirectional_searcher_builder.cc</affectedPath><commitId>7e0f45d37fb930216c00fea5b70932253bc88d4d</commitId><timestamp>1790599005000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>feat: 区分普通点与停车点的前向碰撞检查长度

为 SSEP 粗搜索、搜索后 KEB 和实时 KEB 分别配置普通点及换向/终点的前向额外长度，停车包络按驶入方向选择，并保留既有场景豁免行为。

补齐场景参数传播与实时配置回放合同，保留旧消息默认值及显式零值。修复 GPU 圆盘容量越界、长路径尾部截断和 KEB 非法几何/数量转换，拒绝无效参数而不缩小检测范围。

最终工作树验证：SSEP 229 项测试、6 例场景回归通过；RTX 4060 上 10 项 GPU 测试通过，Compute Sanitizer memcheck 报告 0 errors；主工程及实时配置入口测试通过。
</comment><date>2026-09-28 20:36:45 +0800</date><id>7e0f45d37fb930216c00fea5b70932253bc88d4d</id><msg>feat: 区分普通点与停车点的前向碰撞检查长度</msg><path><editType>edit</editType><file>ssep/scenarios/imv_enter_yard_planner.h</file></path><path><editType>edit</editType><file>tasks/plan/keb_lane_follow_path_task.cpp</file></path><path><editType>edit</editType><file>ssep/keb_optimizer/imv_keb_optimizer.cc</file></path><path><editType>edit</editType><file>ssep/keb_optimizer/keb_utils.cc</file></path><path><editType>add</editType><file>ssep/scenarios/forward_collision_check_params.h</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/compact_scene_descriptor.pb</file></path><path><editType>add</editType><file>ssep/coarse_search/gpu_collision_disk_packing.h</file></path><path><editType>edit</editType><file>ssep/keb_optimizer/tractor_trailer_keb_optimizer.h</file></path><path><editType>edit</editType><file>ssep/scenarios/tractor_trailer_enter_yard_planner.h</file></path><path><editType>edit</editType><file>ssep/coarse_search/searcher_builders/imv_bidirectional_searcher_builder.h</file></path><path><editType>edit</editType><file>ssep/scenarios/imv_exit_parking_spot_planner.h</file></path><path><editType>edit</editType><file>ssep/scenarios/straddle_carrier_general_planner.h</file></path><path><editType>edit</editType><file>ssep/coarse_search/searcher_builders/imv_general_searcher_builder.h</file></path><path><editType>edit</editType><file>ssep/scenarios/stitching_replanner.h</file></path><path><editType>edit</editType><file>ssep/coarse_search/searcher_builders/tractor_trailer_bidirectional_searcher_builder.h</file></path><path><editType>edit</editType><file>ssep/keb_optimizer/tractor_trailer_keb_optimizer.cc</file></path><path><editType>edit</editType><file>ssep/scenarios/tractor_trailer_multi_segment_parking_planner.h</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_descriptor.pb</file></path><path><editType>edit</editType><file>ssep/coarse_search/evaluator/evaluator.h</file></path><path><editType>edit</editType><file>ssep/coarse_search/motion_primitive.h</file></path><path><editType>edit</editType><file>ssep/coarse_search/searcher_builders/tractor_trailer_bidirectional_searcher_builder.cc</file></path><path><editType>edit</editType><file>tasks/plan/keb_utils_core.cpp</file></path><path><editType>edit</editType><file>ssep/scenarios/imv_general_planner.h</file></path><path><editType>edit</editType><file>ssep/scenarios/truck_multi_segment_parking_planner.h</file></path><path><editType>add</editType><file>ssep/coarse_search/evaluator/forward_collision_check_lengths.h</file></path><path><editType>edit</editType><file>ssep/coarse_search/searcher_builders/tractor_trailer_lane_change_searcher_builder.h</file></path><path><editType>edit</editType><file>data/config/cfg_lat_plan.hpp</file></path><path><editType>add</editType><file>ssep/test/coarse_search_stop_clearance_test.cc</file></path><path><editType>edit</editType><file>ssep/coarse_search/motion_primitive_sampler/reverse_primitive_decorator.h</file></path><path><editType>edit</editType><file>ssep/coarse_search/searcher_builders/rigid_truck_general_searcher_builder.cc</file></path><path><editType>edit</editType><file>ssep/test/gpu_collision_test.cc</file></path><path><editType>edit</editType><file>ssep/scenarios/imv_multi_segment_parking_planner.h</file></path><path><editType>edit</editType><file>Testing/keb_gate_filter_test.cpp</file></path><path><editType>edit</editType><file>ssep/scenarios/imv_enter_station_planner.h</file></path><path><editType>edit</editType><file>ssep/coarse_search/searcher_builders/bulk_yard_in_out_path_searcher_builder.h</file></path><path><editType>edit</editType><file>ssep/coarse_search/searcher_builders/rigid_truck_general_searcher_builder.h</file></path><path><editType>edit</editType><file>ssep/ssep_planner.cc</file></path><path><editType>edit</editType><file>ssep/scenarios/tractor_trailer_enter_parking_spot_planner.h</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/full_custom_codec_coverage_audit.yaml</file></path><path><editType>edit</editType><file>ssep/scenarios/tractor_trailer_reverse_priority_parking_planner.h</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_encoder.cpp</file></path><path><editType>edit</editType><file>ssep/coarse_search/evaluator/collision_cost_computer.h</file></path><path><editType>edit</editType><file>ssep/coarse_search/searcher_builders/imv_general_searcher_builder.cc</file></path><path><editType>edit</editType><file>ssep/coarse_search/evaluator/gpu_collision_cost_computer.cc</file></path><path><editType>edit</editType><file>ssep/scenarios/legacy_planner.h</file></path><path><editType>edit</editType><file>ssep/coarse_search/gpu_context.h</file></path><path><editType>edit</editType><file>ssep/coarse_search/searcher_builders/tractor_trailer_multi_segment_parking_bidirectional_searcher_builder.h</file></path><path><editType>edit</editType><file>ssep/keb_optimizer/rigid_truck_keb_optimizer.h</file></path><path><editType>edit</editType><file>ssep/coarse_search/searcher_builders/tractor_trailer_single_segment_parking_searcher_builder.cc</file></path><path><editType>edit</editType><file>ssep/coarse_search/searcher_builders/truck_reference_following_searcher_builder.h</file></path><path><editType>edit</editType><file>ssep/coarse_search/motion_primitive_sampler/dir_change_path_extention_decorator.h</file></path><path><editType>edit</editType><file>ssep/coarse_search/searcher_builders/imv_bidirectional_searcher_builder.cc</file></path><path><editType>edit</editType><file>ssep/coarse_search/searcher_builders/truck_multi_segment_parking_bidirectional_searcher_builder.h</file></path><path><editType>edit</editType><file>ssep/scenarios/truck_general_planner.h</file></path><path><editType>edit</editType><file>ssep/gpu/device_types.h</file></path><path><editType>add</editType><file>ssep/test/gpu_collision_disk_packing_test.cc</file></path><path><editType>edit</editType><file>ssep/coarse_search/multi_stage_hybrid_astar_search_engine.cc</file></path><path><editType>edit</editType><file>ssep/scenarios/straddle_carrier_pick_vehicle_planner.h</file></path><path><editType>edit</editType><file>ssep/keb_optimizer/keb_problem.cc</file></path><path><editType>edit</editType><file>ssep/scenarios/tractor_trailer_short_distance_planner.h</file></path><path><editType>edit</editType><file>ssep/coarse_search/geometric_searcher/bulk_yard_geometric_searcher.cc</file></path><path><editType>edit</editType><file>ssep/coarse_search/searcher_builders/tractor_trailer_lane_change_searcher_builder.cc</file></path><path><editType>edit</editType><file>ssep/gpu/collision/collision_checker.cuh</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/scene_replay_api_descriptor.pb</file></path><path><editType>edit</editType><file>ssep/coarse_search/searcher_builders/tractor_trailer_general_searcher_builder.cc</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/config_schema_inputs.json</file></path><path><editType>edit</editType><file>ssep/coarse_search/searcher_builders/imv_multi_segment_parking_bidirectional_searcher_builder.h</file></path><path><editType>add</editType><file>docs/ssep_stop_collision_extension.md</file></path><path><editType>edit</editType><file>ssep/test/CMakeLists.txt</file></path><path><editType>edit</editType><file>ssep/scenarios/truck_fuzzy_reversing_planner.h</file></path><path><editType>edit</editType><file>ssep/coarse_search/bidirectional_hybrid_astar_search_engine.cc</file></path><path><editType>edit</editType><file>docs/pnc_algorithm_replay/plan_frame_field_workflow.md</file></path><path><editType>edit</editType><file>data/config/cfg_lat_plan.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/config_proto_codec.cpp</file></path><path><editType>edit</editType><file>ssep/coarse_search/searcher_builders/tractor_trailer_single_segment_parking_searcher_builder.h</file></path><path><editType>edit</editType><file>ssep/scenarios/truck_bulk_yark_in_out_planner.cc</file></path><path><editType>edit</editType><file>ssep/scenarios/two_stage_planner_composer.h</file></path><path><editType>edit</editType><file>ssep/scenarios/truck_accurate_reversing_planner.cc</file></path><path><editType>edit</editType><file>ssep/coarse_search/gpu_context.cc</file></path><path><editType>edit</editType><file>ssep/scenarios/tractor_trailer_single_segment_parking_planner.h</file></path><path><editType>edit</editType><file>ssep/coarse_search/searcher_builders/imv_multi_segment_parking_bidirectional_searcher_builder.cc</file></path><path><editType>edit</editType><file>ssep/keb_optimizer/rigid_truck_keb_optimizer.cc</file></path><path><editType>edit</editType><file>Testing/keb_roadside_config_test.cpp</file></path><path><editType>edit</editType><file>ssep/keb_optimizer/keb_problem.h</file></path><path><editType>edit</editType><file>ssep/scenarios/truck_u_turn_planner.h</file></path><path><editType>edit</editType><file>ssep/coarse_search/searcher_builders/truck_reference_following_searcher_builder.cc</file></path><path><editType>add</editType><file>ssep/test/bidirectional_stop_collision_test.cc</file></path><path><editType>edit</editType><file>ssep/keb_optimizer/README.md</file></path><path><editType>edit</editType><file>ssep/scenarios/imv_pullover_planner.h</file></path><path><editType>edit</editType><file>ssep/scenarios/truck_remote_guided_escape_planner.h</file></path><path><editType>add</editType><file>ssep/test/forward_collision_check_params_test.cc</file></path><path><editType>edit</editType><file>ssep/keb_optimizer/imv_keb_optimizer.h</file></path><path><editType>edit</editType><file>ssep/scenarios/truck_multi_seg_general_planner.h</file></path><path><editType>edit</editType><file>ssep/keb_optimizer/keb_utils.h</file></path><path><editType>edit</editType><file>ssep/scenarios/tractor_trailer_general_planner.h</file></path><path><editType>edit</editType><file>ssep/test/ssep_planner_test.cc</file></path><path><editType>edit</editType><file>proto/config.proto</file></path><path><editType>edit</editType><file>ssep/coarse_search/searcher_builders/truck_multi_segment_parking_bidirectional_searcher_builder.cc</file></path><path><editType>edit</editType><file>ssep/coarse_search/searcher_builders/bulk_yard_in_out_path_searcher_builder.cc</file></path><path><editType>edit</editType><file>ssep/scenarios/tractor_trailer_exit_parking_spot_planner.h</file></path><path><editType>edit</editType><file>ssep/coarse_search/searcher_builders/tractor_trailer_multi_segment_parking_bidirectional_searcher_builder.cc</file></path><path><editType>edit</editType><file>ssep/scenarios/tractor_trailer_lane_change_planner.h</file></path><path><editType>edit</editType><file>ssep/coarse_search/evaluator/trailer_collision_cost_computer.h</file></path><path><editType>edit</editType><file>ssep/scenarios/scenario_planner_factory.h</file></path><path><editType>edit</editType><file>ssep/coarse_search/searcher_builders/tractor_trailer_general_searcher_builder.h</file></path><path><editType>edit</editType><file>tasks/plan/keb_utils_core.hpp</file></path><path><editType>edit</editType><file>ssep/scenarios/scenario_planner_interface.h</file></path><path><editType>edit</editType><file>tasks/plan/keb_path_optimize_task.cpp</file></path><path><editType>add</editType><file>ssep/test/keb_stop_collision_test.cc</file></path><path><editType>add</editType><file>ssep/test/keb_normal_extension_test.cc</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>ssep/test/forward_precise_planner_test.cc</affectedPath><affectedPath>ssep/test/CMakeLists.txt</affectedPath><affectedPath>ssep/coarse_search/searcher_builders/tractor_trailer_general_searcher_builder.h</affectedPath><affectedPath>data/ssep/forward_ec.cpp</affectedPath><affectedPath>ssep/scenarios/tractor_trailer_general_planner.h</affectedPath><affectedPath>ssep/keb_optimizer/keb_problem.cc</affectedPath><affectedPath>ssep/test/keb_stop_collision_test.cc</affectedPath><affectedPath>ssep/test/forward_precise_routing_test.cc</affectedPath><affectedPath>ssep/keb_optimizer/tractor_trailer_keb_optimizer.cc</affectedPath><affectedPath>ssep/coarse_search/searcher_builders/tractor_trailer_general_searcher_builder.cc</affectedPath><affectedPath>docs/ssep_forward_precise_arrival.md</affectedPath><affectedPath>ssep/keb_optimizer/tractor_trailer_keb_optimizer.h</affectedPath><affectedPath>ssep/scenarios/stitching_replanner.h</affectedPath><affectedPath>ssep/ssep_planner.cc</affectedPath><affectedPath>Testing/ssep_scenario_config_lifecycle_test.cpp</affectedPath><commitId>680f27a422524859d41d0c66d9c02a2c36d2e9a0</commitId><timestamp>1790599031000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>feat: 支持拖挂车单向精确到达与可配置末端直线

在 TractorTrailerGeneral 中新增可选 ForwardPrecise 策略，沿用单向前进搜索，固定默认 3 m 的可配置尾段并校验精确终点位姿、运动学与连续车身扫掠。

增加尾段碰撞忽略开关，保留入口与此前路径检查；禁止路径库或历史拼接绕过精确到达约束。实时场景每帧保留显式尾段配置，退出策略后恢复动态距离。

补充策略、固定尾段、碰撞忽略与配置生命周期回归。津西记录验证终点 x/y、车头与挂车航向误差均为 0，完整 3 m 直线保留，独立扫掠无碰撞。
</comment><date>2026-09-28 20:37:11 +0800</date><id>680f27a422524859d41d0c66d9c02a2c36d2e9a0</id><msg>feat: 支持拖挂车单向精确到达与可配置末端直线</msg><path><editType>edit</editType><file>ssep/keb_optimizer/tractor_trailer_keb_optimizer.cc</file></path><path><editType>add</editType><file>ssep/test/forward_precise_planner_test.cc</file></path><path><editType>edit</editType><file>ssep/keb_optimizer/tractor_trailer_keb_optimizer.h</file></path><path><editType>edit</editType><file>ssep/coarse_search/searcher_builders/tractor_trailer_general_searcher_builder.h</file></path><path><editType>add</editType><file>ssep/test/forward_precise_routing_test.cc</file></path><path><editType>edit</editType><file>Testing/ssep_scenario_config_lifecycle_test.cpp</file></path><path><editType>edit</editType><file>ssep/keb_optimizer/keb_problem.cc</file></path><path><editType>edit</editType><file>ssep/scenarios/tractor_trailer_general_planner.h</file></path><path><editType>edit</editType><file>ssep/coarse_search/searcher_builders/tractor_trailer_general_searcher_builder.cc</file></path><path><editType>edit</editType><file>ssep/scenarios/stitching_replanner.h</file></path><path><editType>edit</editType><file>ssep/test/keb_stop_collision_test.cc</file></path><path><editType>edit</editType><file>data/ssep/forward_ec.cpp</file></path><path><editType>add</editType><file>docs/ssep_forward_precise_arrival.md</file></path><path><editType>edit</editType><file>ssep/ssep_planner.cc</file></path><path><editType>edit</editType><file>ssep/test/CMakeLists.txt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>ssep/offboard/tools/tractor_trailer_shortest_path_heuristic_generator/generate_tables_batch.py</affectedPath><affectedPath>ssep/test/gpu_collision_test_kernel.cu</affectedPath><affectedPath>ssep/coarse_search/motion_primitive_sampler/multi_curvature_motion_primitive_sampler.cc</affectedPath><affectedPath>ssep/coarse_search/evaluator/trailer_heuristic_metadata.h</affectedPath><affectedPath>ssep/gpu/samplers/multi_curvature_sampler.cuh</affectedPath><affectedPath>ssep/offboard/path_drawing_tool/hermite_path_generator.cc</affectedPath><affectedPath>ssep/coarse_search/motion_primitive_sampler/trailer_heading_motion_primitive_decorator.h</affectedPath><affectedPath>ssep/offboard/tools/tractor_trailer_shortest_path_heuristic_generator/README.md</affectedPath><affectedPath>ssep/param_loader/param.h</affectedPath><affectedPath>ssep/test/gpu_collision_test.cc</affectedPath><affectedPath>ssep/keb_optimizer/keb_utils.cc</affectedPath><affectedPath>ssep/data_structures/type_definition.cc</affectedPath><affectedPath>ssep/keb_optimizer/tractor_trailer_keb_optimizer.cc</affectedPath><affectedPath>ssep/test/tractor_trailer_kinematic_weight_test.cc</affectedPath><affectedPath>ssep/test/gpu_collision_test_kernel.cuh</affectedPath><affectedPath>ssep/test/trailer_heuristic_table_test.cc</affectedPath><affectedPath>ssep/keb_optimizer/cost_features/tractor_trailer_kinematic_constraint.h</affectedPath><affectedPath>ssep/test/tractor_trailer_kinematic_diagnostics_test.cc</affectedPath><affectedPath>ssep/coarse_search/legacy_searchers/hybrid_a_star_tt.cc</affectedPath><affectedPath>ssep/offboard/tools/tractor_trailer_shortest_path_heuristic_generator/test_generate_tables_batch.py</affectedPath><affectedPath>ssep/gpu/collision/collision_checker.cuh</affectedPath><affectedPath>ssep/data_structures/path_utils.h</affectedPath><commitId>fe6ed2265341e86db3400f32d2baa5bab7bab42c</commitId><timestamp>1790608554000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 统一拖挂车前置铰接点的运动学与碰撞模型

按铰接点位于后轴前方为正的定义，将 CPU/GPU 搜索、KEB 约束与验收、
路径递推统一为 +h，修正 GPU 碰撞几何并将启发式生成器版本升级为 g2。
补充独立轴心无侧滑、CPU/GPU 一致性及旧模型表拒绝测试。

验证：CPU 单测和启发表脚本通过；GPU +h 版本此前 12 项及 memcheck 通过。
原预算下 16:08:56 和旧 05:43:31 搜索失败仍保留，未放宽安全验收。
</comment><date>2026-09-28 23:15:54 +0800</date><id>fe6ed2265341e86db3400f32d2baa5bab7bab42c</id><msg>fix: 统一拖挂车前置铰接点的运动学与碰撞模型</msg><path><editType>edit</editType><file>ssep/offboard/tools/tractor_trailer_shortest_path_heuristic_generator/test_generate_tables_batch.py</file></path><path><editType>edit</editType><file>ssep/test/gpu_collision_test_kernel.cuh</file></path><path><editType>edit</editType><file>ssep/coarse_search/legacy_searchers/hybrid_a_star_tt.cc</file></path><path><editType>edit</editType><file>ssep/keb_optimizer/cost_features/tractor_trailer_kinematic_constraint.h</file></path><path><editType>edit</editType><file>ssep/test/trailer_heuristic_table_test.cc</file></path><path><editType>edit</editType><file>ssep/gpu/samplers/multi_curvature_sampler.cuh</file></path><path><editType>edit</editType><file>ssep/test/gpu_collision_test_kernel.cu</file></path><path><editType>edit</editType><file>ssep/keb_optimizer/keb_utils.cc</file></path><path><editType>edit</editType><file>ssep/offboard/path_drawing_tool/hermite_path_generator.cc</file></path><path><editType>edit</editType><file>ssep/offboard/tools/tractor_trailer_shortest_path_heuristic_generator/README.md</file></path><path><editType>edit</editType><file>ssep/test/tractor_trailer_kinematic_diagnostics_test.cc</file></path><path><editType>edit</editType><file>ssep/coarse_search/motion_primitive_sampler/trailer_heading_motion_primitive_decorator.h</file></path><path><editType>edit</editType><file>ssep/gpu/collision/collision_checker.cuh</file></path><path><editType>edit</editType><file>ssep/param_loader/param.h</file></path><path><editType>edit</editType><file>ssep/offboard/tools/tractor_trailer_shortest_path_heuristic_generator/generate_tables_batch.py</file></path><path><editType>edit</editType><file>ssep/coarse_search/evaluator/trailer_heuristic_metadata.h</file></path><path><editType>edit</editType><file>ssep/coarse_search/motion_primitive_sampler/multi_curvature_motion_primitive_sampler.cc</file></path><path><editType>edit</editType><file>ssep/test/tractor_trailer_kinematic_weight_test.cc</file></path><path><editType>edit</editType><file>ssep/data_structures/path_utils.h</file></path><path><editType>edit</editType><file>ssep/keb_optimizer/tractor_trailer_keb_optimizer.cc</file></path><path><editType>edit</editType><file>ssep/data_structures/type_definition.cc</file></path><path><editType>edit</editType><file>ssep/test/gpu_collision_test.cc</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>ssep/test/tractor_trailer_kinematic_weight_test.cc</affectedPath><affectedPath>ssep/keb_optimizer/keb_problem.cc</affectedPath><commitId>dabfb7aea639e328d03c840c56ff0a2f4e903c42</commitId><timestamp>1790608563000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 补齐固定尾段入口的三点曲率约束

将三点中心覆盖到固定尾段入口，保留左侧可变点对连接曲率的约束。
检查右邻点存在，跳过真实换向和全固定三元组；新增入口、换向、
全固定及普通末端边界测试，不改变最终下发曲率验收。

验证：运动学与权重 75 项、规划 230 项测试通过。
</comment><date>2026-09-28 23:16:03 +0800</date><id>dabfb7aea639e328d03c840c56ff0a2f4e903c42</id><msg>fix: 补齐固定尾段入口的三点曲率约束</msg><path><editType>edit</editType><file>ssep/keb_optimizer/keb_problem.cc</file></path><path><editType>edit</editType><file>ssep/test/tractor_trailer_kinematic_weight_test.cc</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>ssep/test/local_regression/tt_heading_quality.json</affectedPath><affectedPath>ssep/test/local_regression/tt_heading_cases.json</affectedPath><affectedPath>ssep/test/local_regression/tt_heading_quality.py</affectedPath><affectedPath>ssep/keb_optimizer/tractor_trailer_kinematic_diagnostics.h</affectedPath><affectedPath>ssep/test/local_regression/README.md</affectedPath><affectedPath>ssep/keb_optimizer/tractor_trailer_keb_optimizer.cc</affectedPath><affectedPath>ssep/test/local_regression/run_ssep_regression.py</affectedPath><affectedPath>ssep/test/local_regression/test_tt_heading_quality.py</affectedPath><affectedPath>docs/ssep_hitch_model_validation.md</affectedPath><affectedPath>ssep/scenarios/tractor_trailer_reverse_priority_parking_planner.h</affectedPath><affectedPath>ssep/test/tractor_trailer_kinematic_diagnostics_test.cc</affectedPath><affectedPath>ssep/test/local_regression/tt_heading_manifest.tsv</affectedPath><commitId>a9134bdaec29e5e572101316101ffe33eb3ab13a</commitId><timestamp>1790608586000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>test: 收录津西航向偏差场景并补充挂车几何诊断

归档 10 份原始场景，提交相对路径、来源和 SHA-256；保留原始参数和预算。
新增非等距点切向统计及输入有效性测试，角度只观察，不添加拒绝门槛。
补充挂车轴心弦向诊断及失败边日志，记录实验性细化撤回依据和剩余问题。

撤回未提交的场景归一化、新软约束和多组合重试，保持原三次细化策略。
验证：新集 9/10、旧 TT 3/4、IMV 2/2；312 项 C++ 与 38 项相关 Python
测试通过，pnc_node 编译通过。失败保留为已知问题，不跳过或扩大预算。
</comment><date>2026-09-28 23:16:26 +0800</date><id>a9134bdaec29e5e572101316101ffe33eb3ab13a</id><msg>test: 收录津西航向偏差场景并补充挂车几何诊断</msg><path><editType>edit</editType><file>ssep/test/local_regression/run_ssep_regression.py</file></path><path><editType>edit</editType><file>ssep/keb_optimizer/tractor_trailer_kinematic_diagnostics.h</file></path><path><editType>add</editType><file>ssep/test/local_regression/test_tt_heading_quality.py</file></path><path><editType>edit</editType><file>ssep/keb_optimizer/tractor_trailer_keb_optimizer.cc</file></path><path><editType>add</editType><file>docs/ssep_hitch_model_validation.md</file></path><path><editType>add</editType><file>ssep/test/local_regression/tt_heading_quality.json</file></path><path><editType>add</editType><file>ssep/test/local_regression/tt_heading_cases.json</file></path><path><editType>edit</editType><file>ssep/test/tractor_trailer_kinematic_diagnostics_test.cc</file></path><path><editType>add</editType><file>ssep/test/local_regression/tt_heading_quality.py</file></path><path><editType>edit</editType><file>ssep/scenarios/tractor_trailer_reverse_priority_parking_planner.h</file></path><path><editType>edit</editType><file>ssep/test/local_regression/README.md</file></path><path><editType>add</editType><file>ssep/test/local_regression/tt_heading_manifest.tsv</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>ssep/common/utils/common.hpp</affectedPath><affectedPath>ssep/test/local_regression/test_parking_geometric_curvature.py</affectedPath><affectedPath>ssep/ssep_planner.cc</affectedPath><affectedPath>ssep/test/local_regression/tt_parking_quality.py</affectedPath><affectedPath>ssep/test/consistent_path_profile_test.cc</affectedPath><affectedPath>ssep/common/utils/plotter.hpp</affectedPath><commitId>20c61e00477176af12569a9d0937f5186ece1b4d</commitId><timestamp>1790632892000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 修正路径曲率与轮角导出的一致性

使用有向三点圆曲率及有效弧长中心插值，消除端点半曲率与加密后导数伪差。
保留入段换向控制语义，拒绝退化或非有限几何，并向调用方传播轮角计算失败。
同步停车质量检查，补充非等距圆弧、变化曲率及退化输入测试。
</comment><date>2026-09-29 06:01:32 +0800</date><id>20c61e00477176af12569a9d0937f5186ece1b4d</id><msg>fix: 修正路径曲率与轮角导出的一致性</msg><path><editType>edit</editType><file>ssep/common/utils/common.hpp</file></path><path><editType>edit</editType><file>ssep/test/local_regression/tt_parking_quality.py</file></path><path><editType>edit</editType><file>ssep/test/local_regression/test_parking_geometric_curvature.py</file></path><path><editType>edit</editType><file>ssep/ssep_planner.cc</file></path><path><editType>edit</editType><file>ssep/common/utils/plotter.hpp</file></path><path><editType>add</editType><file>ssep/test/consistent_path_profile_test.cc</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>ssep/test/local_regression/tt_heading_cases.json</affectedPath><affectedPath>ssep/test/local_regression/README.md</affectedPath><affectedPath>ssep/test/local_regression/tt_heading_manifest.tsv</affectedPath><commitId>a821300c7f7c3cfef26fa2c9e4416b1b70a096d2</commitId><timestamp>1790632901000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>test: 补充三份津西拖挂航向偏差回归记录

将 23:46:31、23:49:23、23:51:37 三份原始记录加入清单，固定来源、大小及 SHA-256。
观察集扩至 13 例，保留原输入和预算；注明历史失败与当前验收的区别。
</comment><date>2026-09-29 06:01:41 +0800</date><id>a821300c7f7c3cfef26fa2c9e4416b1b70a096d2</id><msg>test: 补充三份津西拖挂航向偏差回归记录</msg><path><editType>edit</editType><file>ssep/test/local_regression/tt_heading_cases.json</file></path><path><editType>edit</editType><file>ssep/test/local_regression/tt_heading_manifest.tsv</file></path><path><editType>edit</editType><file>ssep/test/local_regression/README.md</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>ssep/keb_optimizer/control_space_path_adapter.cc</affectedPath><affectedPath>ssep/test/continuous_path_sampling_test.cc</affectedPath><affectedPath>ssep/test/control_space_refiner_test.cc</affectedPath><affectedPath>ssep/coarse_search/legacy_searchers/hybrid_a_star_tt.h</affectedPath><affectedPath>ssep/keb_optimizer/continuous_path_sampling.h</affectedPath><affectedPath>ssep/scenarios/tractor_trailer_exit_parking_spot_planner.h</affectedPath><affectedPath>ssep/keb_optimizer/geometry_projection.h</affectedPath><affectedPath>ssep/test/path_geometric_constraints_test.cc</affectedPath><affectedPath>ssep/keb_optimizer/keb_problem.cc</affectedPath><affectedPath>ssep/test/exported_control_constraints_test.cc</affectedPath><affectedPath>ssep/keb_optimizer/path_geometric_constraints.h</affectedPath><affectedPath>ssep/keb_optimizer/tractor_trailer_kinematic_diagnostics.h</affectedPath><affectedPath>ssep/keb_optimizer/tractor_trailer_keb_optimizer.h</affectedPath><affectedPath>ssep/test/parking_collision_provenance_test.cc</affectedPath><affectedPath>ssep/test/geometry_heading_projection_test.cc</affectedPath><affectedPath>ssep/keb_optimizer/control_space_refiner.cc</affectedPath><affectedPath>ssep/scenarios/tractor_trailer_multi_segment_parking_planner.h</affectedPath><affectedPath>ssep/keb_optimizer/cost_features/tractor_trailer_kinematic_constraint.h</affectedPath><affectedPath>ssep/scenarios/tractor_trailer_parking_collision.h</affectedPath><affectedPath>ssep/data_structures/path_linear_constraint.h</affectedPath><affectedPath>ssep/scenarios/tractor_trailer_general_planner.h</affectedPath><affectedPath>ssep/offboard/scene_replay/CMakeLists.txt</affectedPath><affectedPath>ssep/test/ssep_planner_test.cc</affectedPath><affectedPath>ssep/CMakeLists.txt</affectedPath><affectedPath>ssep/keb_optimizer/exported_control_constraints.h</affectedPath><affectedPath>docs/ssep_continuous_kinematic_correction.md</affectedPath><affectedPath>ssep/keb_optimizer/control_space_path_adapter.h</affectedPath><affectedPath>ssep/keb_optimizer/tractor_trailer_keb_optimizer.cc</affectedPath><affectedPath>ssep/keb_optimizer/tractor_trailer_continuous_model.h</affectedPath><affectedPath>ssep/test/tractor_trailer_kinematic_weight_test.cc</affectedPath><affectedPath>ssep/scenarios/stitching_replanner.h</affectedPath><affectedPath>ssep/keb_optimizer/keb_problem.h</affectedPath><affectedPath>ssep/scenarios/tractor_trailer_reverse_priority_parking_planner.h</affectedPath><affectedPath>ssep/data_structures/body_collision_constraint.h</affectedPath><affectedPath>ssep/keb_optimizer/control_space_refiner.h</affectedPath><affectedPath>ssep/coarse_search/legacy_searchers/hybrid_a_star_tt.cc</affectedPath><affectedPath>ssep/scenarios/tractor_trailer_single_segment_parking_planner.h</affectedPath><commitId>1512ba285bc90202b09be2366440f674d5fdbef8</commitId><timestamp>1790632940000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>feat: 用几何约束与连续积分改善拖挂路径航向

统一使用前置铰接点连续模型，通过控制空间积分及真实双轴几何目标投影改善路径，
再以剩余预算精化连续运动学残差，替代单纯提高软约束权重的细化方式。
保留固定状态、机械界、途经点及完整碰撞验收，冻结原合法候选的控制变化上限；
分离最优原节点快照与实际输出诊断，保持原硬截止语义，不增加角度拒绝门槛。
共用 QP、回溯和验收，修复 OSQP 内部计时重置问题，补充碰撞约束生成和回归测试。

正式原始输入回放 13/13 成功，11/13 双角小于 1 度；两 General 最大误差仍为
1.741/3.589 度。部分无优化总期限的旧多段流程耗时增加，详见方案文档。
验证：173 项相关单测通过；主测试 238 项通过、13 项缺少历史数据；Python 68 项
执行完成（1 项跳过）；IMV 2/2，倒车优先 3/4（保留原粗搜索节点上限失败）。
</comment><date>2026-09-29 06:02:20 +0800</date><id>1512ba285bc90202b09be2366440f674d5fdbef8</id><msg>feat: 用几何约束与连续积分改善拖挂路径航向</msg><path><editType>add</editType><file>ssep/test/path_geometric_constraints_test.cc</file></path><path><editType>add</editType><file>ssep/keb_optimizer/exported_control_constraints.h</file></path><path><editType>edit</editType><file>ssep/scenarios/stitching_replanner.h</file></path><path><editType>edit</editType><file>ssep/scenarios/tractor_trailer_reverse_priority_parking_planner.h</file></path><path><editType>add</editType><file>ssep/test/geometry_heading_projection_test.cc</file></path><path><editType>edit</editType><file>ssep/scenarios/tractor_trailer_exit_parking_spot_planner.h</file></path><path><editType>edit</editType><file>ssep/keb_optimizer/cost_features/tractor_trailer_kinematic_constraint.h</file></path><path><editType>edit</editType><file>ssep/keb_optimizer/tractor_trailer_keb_optimizer.cc</file></path><path><editType>add</editType><file>ssep/test/continuous_path_sampling_test.cc</file></path><path><editType>add</editType><file>ssep/keb_optimizer/control_space_refiner.h</file></path><path><editType>add</editType><file>ssep/keb_optimizer/control_space_refiner.cc</file></path><path><editType>edit</editType><file>ssep/keb_optimizer/keb_problem.h</file></path><path><editType>edit</editType><file>ssep/test/ssep_planner_test.cc</file></path><path><editType>edit</editType><file>ssep/keb_optimizer/keb_problem.cc</file></path><path><editType>edit</editType><file>ssep/offboard/scene_replay/CMakeLists.txt</file></path><path><editType>add</editType><file>ssep/keb_optimizer/control_space_path_adapter.h</file></path><path><editType>edit</editType><file>ssep/coarse_search/legacy_searchers/hybrid_a_star_tt.cc</file></path><path><editType>add</editType><file>ssep/keb_optimizer/tractor_trailer_continuous_model.h</file></path><path><editType>add</editType><file>ssep/keb_optimizer/continuous_path_sampling.h</file></path><path><editType>add</editType><file>ssep/test/exported_control_constraints_test.cc</file></path><path><editType>add</editType><file>docs/ssep_continuous_kinematic_correction.md</file></path><path><editType>add</editType><file>ssep/data_structures/path_linear_constraint.h</file></path><path><editType>edit</editType><file>ssep/test/parking_collision_provenance_test.cc</file></path><path><editType>edit</editType><file>ssep/scenarios/tractor_trailer_multi_segment_parking_planner.h</file></path><path><editType>add</editType><file>ssep/data_structures/body_collision_constraint.h</file></path><path><editType>add</editType><file>ssep/keb_optimizer/path_geometric_constraints.h</file></path><path><editType>edit</editType><file>ssep/scenarios/tractor_trailer_single_segment_parking_planner.h</file></path><path><editType>add</editType><file>ssep/test/control_space_refiner_test.cc</file></path><path><editType>edit</editType><file>ssep/scenarios/tractor_trailer_general_planner.h</file></path><path><editType>edit</editType><file>ssep/scenarios/tractor_trailer_parking_collision.h</file></path><path><editType>edit</editType><file>ssep/coarse_search/legacy_searchers/hybrid_a_star_tt.h</file></path><path><editType>edit</editType><file>ssep/keb_optimizer/tractor_trailer_keb_optimizer.h</file></path><path><editType>add</editType><file>ssep/keb_optimizer/control_space_path_adapter.cc</file></path><path><editType>edit</editType><file>ssep/keb_optimizer/tractor_trailer_kinematic_diagnostics.h</file></path><path><editType>edit</editType><file>ssep/test/tractor_trailer_kinematic_weight_test.cc</file></path><path><editType>edit</editType><file>ssep/CMakeLists.txt</file></path><path><editType>add</editType><file>ssep/keb_optimizer/geometry_projection.h</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>ssep/keb_optimizer/control_space_path_adapter.cc</affectedPath><affectedPath>ssep/test/control_space_refiner_test.cc</affectedPath><affectedPath>ssep/keb_optimizer/control_space_refiner.cc</affectedPath><affectedPath>ssep/keb_optimizer/control_space_refiner.h</affectedPath><commitId>360391b024803eee5a54b2644bd2857fc4f7c321</commitId><timestamp>1790637440000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 为拖挂几何校正保留不可行初值的恢复预算

为已有合法后备路径的控制空间优化增加显式恢复策略。初始活动碰撞约束
违反、硬 QP 报不可行且尚无接受步时，返回后续几何校正；保留默认恢复、
纯端点恢复及迭代上限处理，不将局部线性不可行解释为原任务无解。

补充两种策略下的端点恢复回归；完整方案专项测试与原始场景回归通过。
</comment><date>2026-09-29 07:17:20 +0800</date><id>360391b024803eee5a54b2644bd2857fc4f7c321</id><msg>fix: 为拖挂几何校正保留不可行初值的恢复预算</msg><path><editType>edit</editType><file>ssep/keb_optimizer/control_space_refiner.h</file></path><path><editType>edit</editType><file>ssep/keb_optimizer/control_space_path_adapter.cc</file></path><path><editType>edit</editType><file>ssep/test/control_space_refiner_test.cc</file></path><path><editType>edit</editType><file>ssep/keb_optimizer/control_space_refiner.cc</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>docs/ssep_continuous_kinematic_correction.md</affectedPath><affectedPath>ssep/keb_optimizer/tractor_trailer_keb_optimizer.cc</affectedPath><affectedPath>ssep/keb_optimizer/continuous_path_sampling.h</affectedPath><affectedPath>ssep/test/tractor_trailer_kinematic_weight_test.cc</affectedPath><affectedPath>ssep/keb_optimizer/keb_problem.h</affectedPath><affectedPath>ssep/test/geometry_heading_projection_test.cc</affectedPath><affectedPath>ssep/keb_optimizer/keb_problem.cc</affectedPath><commitId>aecef14000c2b39339218150e10823591040263b</commitId><timestamp>1790637453000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 修正拖挂几何投影可行性边界并在接近目标时停止

物理残差零阶值采用原世界坐标验收运算，保留局部自动微分 Jacobian。
为场景合法但物理不可行的改善点增加可行性修正和合法基线回缩，核验
固定维、Subset、参数边界、步长及分段合同，全部候选仍通过原完整验收。
独立保存在硬截止内完成验收的最佳输出；统一以 1° 求解、1.01° 停止
可选改善，复用实际导出 Profile 指标，不增加角度拒绝门槛。

新增 UTM 浮点边界及参数合同测试，更新近目标停止断言和正式回归报告。
13 份原始场景全部成功，双角最大 1.002810°；两份困难 General 复跑一致。
专项 180 项通过，主测试 238 项通过；13 项仍因既有数据目录缺失而失败。
</comment><date>2026-09-29 07:17:33 +0800</date><id>aecef14000c2b39339218150e10823591040263b</id><msg>fix: 修正拖挂几何投影可行性边界并在接近目标时停止</msg><path><editType>edit</editType><file>ssep/test/geometry_heading_projection_test.cc</file></path><path><editType>edit</editType><file>ssep/keb_optimizer/tractor_trailer_keb_optimizer.cc</file></path><path><editType>edit</editType><file>ssep/keb_optimizer/keb_problem.cc</file></path><path><editType>edit</editType><file>ssep/keb_optimizer/continuous_path_sampling.h</file></path><path><editType>edit</editType><file>ssep/test/tractor_trailer_kinematic_weight_test.cc</file></path><path><editType>edit</editType><file>docs/ssep_continuous_kinematic_correction.md</file></path><path><editType>edit</editType><file>ssep/keb_optimizer/keb_problem.h</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>ssep/test/ssep_planner_test.cc</affectedPath><affectedPath>ssep/keb_optimizer/exported_control_constraints.h</affectedPath><affectedPath>ssep/scenarios/tractor_trailer_parking_collision.h</affectedPath><affectedPath>ssep/keb_optimizer/tractor_trailer_keb_optimizer.cc</affectedPath><affectedPath>ssep/keb_optimizer/continuous_path_sampling.h</affectedPath><affectedPath>ssep/test/tractor_trailer_kinematic_weight_test.cc</affectedPath><affectedPath>ssep/keb_optimizer/tractor_trailer_keb_optimizer.h</affectedPath><affectedPath>ssep/keb_optimizer/keb_problem.h</affectedPath><affectedPath>ssep/scenarios/tractor_trailer_exit_parking_spot_planner.h</affectedPath><affectedPath>ssep/test/parking_collision_provenance_test.cc</affectedPath><affectedPath>ssep/keb_optimizer/keb_problem.cc</affectedPath><commitId>83f5c95769f2cda57552757f1bb042d943847da2</commitId><timestamp>1790653594000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 恢复自动出库首个合法候选并保留较优路径

为显式分阶段优化增加首合法候选恢复，同时约束原始及下发曲率、运动学和当前碰撞见证；只有完整验收通过才能保存，失败或硬超时恢复快照。自动出库按实际下发几何误差择优，保留合法兜底，接近目标只提前停止探索。原安全约束和总预算保持不变，实时 KEB 不变。

验证：分布式构建主程序、回放及测试；186 项专项和 242 项主测试通过，另 13 项缺少历史数据目录。新四份及原十三份记录全部成功，最大几何误差 1.00335 度。
</comment><date>2026-09-29 11:46:34 +0800</date><id>83f5c95769f2cda57552757f1bb042d943847da2</id><msg>fix: 恢复自动出库首个合法候选并保留较优路径</msg><path><editType>edit</editType><file>ssep/keb_optimizer/continuous_path_sampling.h</file></path><path><editType>edit</editType><file>ssep/keb_optimizer/keb_problem.cc</file></path><path><editType>edit</editType><file>ssep/keb_optimizer/exported_control_constraints.h</file></path><path><editType>edit</editType><file>ssep/test/tractor_trailer_kinematic_weight_test.cc</file></path><path><editType>edit</editType><file>ssep/keb_optimizer/tractor_trailer_keb_optimizer.h</file></path><path><editType>edit</editType><file>ssep/scenarios/tractor_trailer_exit_parking_spot_planner.h</file></path><path><editType>edit</editType><file>ssep/scenarios/tractor_trailer_parking_collision.h</file></path><path><editType>edit</editType><file>ssep/test/parking_collision_provenance_test.cc</file></path><path><editType>edit</editType><file>ssep/test/ssep_planner_test.cc</file></path><path><editType>edit</editType><file>ssep/keb_optimizer/tractor_trailer_keb_optimizer.cc</file></path><path><editType>edit</editType><file>ssep/keb_optimizer/keb_problem.h</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>ssep/test/local_regression/README.md</affectedPath><affectedPath>ssep/test/local_regression/tt_exit_feasibility_manifest.tsv</affectedPath><affectedPath>docs/ssep_continuous_kinematic_correction.md</affectedPath><commitId>e19e3de9acdd3229daaeb324af9e0aa3521f06cf</commitId><timestamp>1790653609000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>test: 收录四份自动出库恢复回归记录

保存三份失败记录及一份同环境成功对照的原始数据哈希，沿用原参数和预算进行回放；补充恢复机制、候选择优与十七份回归结果。原始记录已校验归档到共享回归数据目录。
</comment><date>2026-09-29 11:46:49 +0800</date><id>e19e3de9acdd3229daaeb324af9e0aa3521f06cf</id><msg>test: 收录四份自动出库恢复回归记录</msg><path><editType>edit</editType><file>ssep/test/local_regression/README.md</file></path><path><editType>add</editType><file>ssep/test/local_regression/tt_exit_feasibility_manifest.tsv</file></path><path><editType>edit</editType><file>docs/ssep_continuous_kinematic_correction.md</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>ssep/offboard/servers/scene_vis_server.cc</affectedPath><affectedPath>ssep/test/local_regression/test_scene_vis_directory.py</affectedPath><affectedPath>ssep/offboard/servers/scene_vis_html_template.cc</affectedPath><commitId>c0e0eb362722a967ddad265892c635ba21cdc9ae</commitId><timestamp>1790656905000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>feat: 优化场景可视化目录浏览并支持多选下载

在场景查看页加入可折叠目录侧栏，支持点击文件查看、当前文件高亮和同目录勾选状态保留。统一目录样式，固定路径与下载操作栏，文件列表独立滚动。

新增多文件 tar 下载接口，校验文件类型、数量及总大小，支持中文、长文件名和同名文件。补充目录选择与下载失败恢复回归测试。

验证：服务编译、3 项场景可视化回归测试及 HTTP 下载联调通过。
</comment><date>2026-09-29 12:41:45 +0800</date><id>c0e0eb362722a967ddad265892c635ba21cdc9ae</id><msg>feat: 优化场景可视化目录浏览并支持多选下载</msg><path><editType>edit</editType><file>ssep/offboard/servers/scene_vis_server.cc</file></path><path><editType>add</editType><file>ssep/test/local_regression/test_scene_vis_directory.py</file></path><path><editType>edit</editType><file>ssep/offboard/servers/scene_vis_html_template.cc</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>ssep/test/local_regression/tt_ordered_feasibility_manifest.tsv</affectedPath><affectedPath>docs/ssep_continuous_kinematic_correction.md</affectedPath><affectedPath>ssep/scenarios/tractor_trailer_reverse_priority_parking_planner.h</affectedPath><affectedPath>ssep/test/local_regression/README.md</affectedPath><commitId>8aa962d184b5f0bb6aba2da6533313a200d1df7d</commitId><timestamp>1790657562000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 为有序途经点停车接入首合法候选恢复

分阶段停车使用原双地图生成恢复约束，保留固定尾段、精确终点、途经点及完整场景验收。解决初始曲率超限或运动学不可行后只能重复软权重优化的问题，不改变实时 KEB、权重或预算。

两份现场失败记录按原10秒预算回放成功，头挂最大几何误差分别为0.726/0.063度及1.067/1.048度；已有17例全部成功。分布式编译通过，主测试242项通过，13项缺少历史输入目录。补充原始数据哈希和回归清单。
</comment><date>2026-09-29 12:52:42 +0800</date><id>8aa962d184b5f0bb6aba2da6533313a200d1df7d</id><msg>fix: 为有序途经点停车接入首合法候选恢复</msg><path><editType>edit</editType><file>ssep/test/local_regression/README.md</file></path><path><editType>add</editType><file>ssep/test/local_regression/tt_ordered_feasibility_manifest.tsv</file></path><path><editType>edit</editType><file>docs/ssep_continuous_kinematic_correction.md</file></path><path><editType>edit</editType><file>ssep/scenarios/tractor_trailer_reverse_priority_parking_planner.h</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>algorithm/wbca/path_optimization/reversing_truck_path_optimizer.cpp</affectedPath><affectedPath>algorithm/wbca/path_optimization/reversing_truck_path_optimizer.hpp</affectedPath><commitId>aa270a365c0d6e630c1e88746acae4283316679c</commitId><timestamp>1790661899000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>feat(wbca): add trailer-led reversing path optimizer
</comment><date>2026-09-29 14:04:59 +0800</date><id>aa270a365c0d6e630c1e88746acae4283316679c</id><msg>feat(wbca): add trailer-led reversing path optimizer</msg><path><editType>add</editType><file>algorithm/wbca/path_optimization/reversing_truck_path_optimizer.hpp</file></path><path><editType>add</editType><file>algorithm/wbca/path_optimization/reversing_truck_path_optimizer.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>data/plan/ssep_data.cpp</affectedPath><affectedPath>replayer/scene_data/full_custom_codec_exclusions.yaml</affectedPath><affectedPath>data/plan/ssep_data.hpp</affectedPath><affectedPath>data/vehicle/request_routing_data.cpp</affectedPath><affectedPath>plan/prepare/prepare_status.cpp</affectedPath><affectedPath>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</affectedPath><affectedPath>tasks/plan/reversing_truck_path_task.cpp</affectedPath><affectedPath>tasks/plan/ssep_task.cpp</affectedPath><affectedPath>tasks/plan/reversing_truck_path_task.hpp</affectedPath><affectedPath>Testing/reversing_truck_path_optimizer_test.cpp</affectedPath><affectedPath>Testing/scene_replay_foundation_test.cpp</affectedPath><affectedPath>data/ssep/ssep_activation.hpp</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_encoder.cpp</affectedPath><affectedPath>data/other/reverse_pickup.cpp</affectedPath><affectedPath>data/ssep/ssep_activation.cpp</affectedPath><affectedPath>tasks/deciders/search_decider/search_decider_lifecycle.hpp</affectedPath><affectedPath>replayer/scene_data/generated/full_custom_codec_coverage_audit.yaml</affectedPath><affectedPath>docs/reversing_truck_path_optimizer.md</affectedPath><affectedPath>hmi/draw/draw_wbca_rlt.cpp</affectedPath><affectedPath>tools/reversing_wbca_replay.cpp</affectedPath><affectedPath>Testing/reversing_path_wbca_test.cpp</affectedPath><affectedPath>algorithm/wbca/reversing_truck_wbca_manager.hpp</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_member_inputs.json</affectedPath><affectedPath>algorithm/wbca/reversing_truck_wbca_manager.cpp</affectedPath><affectedPath>replayer/scene_data/plan_frame_full_mapping.yaml</affectedPath><affectedPath>data/plan_frame.hpp</affectedPath><affectedPath>data/plan_frame.cpp</affectedPath><affectedPath>Testing/CMakeLists.txt</affectedPath><commitId>398e6a273420b68c794a5c7cd3c9b9fde1fb3842</commitId><timestamp>1790668677000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>feat(wbca): integrate reversing truck manager with SSEP
</comment><date>2026-09-29 15:57:57 +0800</date><id>398e6a273420b68c794a5c7cd3c9b9fde1fb3842</id><msg>feat(wbca): integrate reversing truck manager with SSEP</msg><path><editType>edit</editType><file>data/plan/ssep_data.hpp</file></path><path><editType>edit</editType><file>tasks/deciders/search_decider/search_decider_lifecycle.hpp</file></path><path><editType>add</editType><file>Testing/reversing_truck_path_optimizer_test.cpp</file></path><path><editType>edit</editType><file>tasks/plan/ssep_task.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_encoder.cpp</file></path><path><editType>edit</editType><file>data/ssep/ssep_activation.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/plan_frame_full_mapping.yaml</file></path><path><editType>add</editType><file>docs/reversing_truck_path_optimizer.md</file></path><path><editType>edit</editType><file>hmi/draw/draw_wbca_rlt.cpp</file></path><path><editType>add</editType><file>algorithm/wbca/reversing_truck_wbca_manager.hpp</file></path><path><editType>add</editType><file>tools/reversing_wbca_replay.cpp</file></path><path><editType>edit</editType><file>data/other/reverse_pickup.cpp</file></path><path><editType>add</editType><file>Testing/reversing_path_wbca_test.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/full_custom_codec_coverage_audit.yaml</file></path><path><editType>edit</editType><file>plan/prepare/prepare_status.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</file></path><path><editType>edit</editType><file>replayer/scene_data/full_custom_codec_exclusions.yaml</file></path><path><editType>edit</editType><file>data/vehicle/request_routing_data.cpp</file></path><path><editType>edit</editType><file>Testing/scene_replay_foundation_test.cpp</file></path><path><editType>edit</editType><file>data/plan_frame.hpp</file></path><path><editType>edit</editType><file>data/plan_frame.cpp</file></path><path><editType>edit</editType><file>data/plan/ssep_data.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_member_inputs.json</file></path><path><editType>edit</editType><file>data/ssep/ssep_activation.hpp</file></path><path><editType>edit</editType><file>tasks/plan/reversing_truck_path_task.cpp</file></path><path><editType>add</editType><file>algorithm/wbca/reversing_truck_wbca_manager.cpp</file></path><path><editType>edit</editType><file>tasks/plan/reversing_truck_path_task.hpp</file></path><path><editType>edit</editType><file>Testing/CMakeLists.txt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>algorithm/wbca/reversing_truck_wbca_manager.hpp</affectedPath><affectedPath>tasks/plan/reversing_truck_path_task.cpp</affectedPath><affectedPath>algorithm/wbca/reversing_truck_wbca_manager.cpp</affectedPath><affectedPath>Testing/reversing_path_wbca_test.cpp</affectedPath><commitId>d9ef30d021b2ff32d8b8349d610e0e35a56d3d02</commitId><timestamp>1790671949000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>fix(wbca): use nearby ego pose for reversing path start
</comment><date>2026-09-29 16:52:29 +0800</date><id>d9ef30d021b2ff32d8b8349d610e0e35a56d3d02</id><msg>fix(wbca): use nearby ego pose for reversing path start</msg><path><editType>edit</editType><file>algorithm/wbca/reversing_truck_wbca_manager.cpp</file></path><path><editType>edit</editType><file>tasks/plan/reversing_truck_path_task.cpp</file></path><path><editType>edit</editType><file>algorithm/wbca/reversing_truck_wbca_manager.hpp</file></path><path><editType>edit</editType><file>Testing/reversing_path_wbca_test.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>data/other/reverse_pickup.cpp</affectedPath><affectedPath>docs/reverse_pickup_search.md</affectedPath><affectedPath>Testing/reverse_pickup_lifecycle_test.cpp</affectedPath><commitId>0347725b412cb6a3b3f573e9d3c3644d76f90ad5</commitId><timestamp>1790684579000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 按已验收倒车路径更新途经点进度

实车在原途经点位置圆外但沿合法路径连续跨越时，使用路径投影与现有跟踪容差更新顺序进度。保留同任务同路径、倒车分段、头挂角和定位跳变检查，不追溯补记点后静止状态。新增现场坐标及边界回归，105 项测试通过。
</comment><date>2026-09-29 20:22:59 +0800</date><id>0347725b412cb6a3b3f573e9d3c3644d76f90ad5</id><msg>fix: 按已验收倒车路径更新途经点进度</msg><path><editType>edit</editType><file>data/other/reverse_pickup.cpp</file></path><path><editType>edit</editType><file>docs/reverse_pickup_search.md</file></path><path><editType>edit</editType><file>Testing/reverse_pickup_lifecycle_test.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>ssep/scenarios/tractor_trailer_parking_collision.h</affectedPath><affectedPath>ssep/test/local_regression/README.md</affectedPath><affectedPath>ssep/maps/ogm.h</affectedPath><affectedPath>ssep/maps/ogm_builder.h</affectedPath><affectedPath>ssep/test/parking_collision_provenance_test.cc</affectedPath><affectedPath>ssep/test/local_regression/tt_exit_feasibility_manifest.tsv</affectedPath><affectedPath>ssep/maps/ogm.cc</affectedPath><affectedPath>docs/ssep_stop_collision_extension.md</affectedPath><affectedPath>ssep/maps/ogm_builder.cc</affectedPath><commitId>e5fdd10ad41212911cbf5f22d43cdaebf0ab0f93</commitId><timestamp>1790684579000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 统一起终点清障与停车碰撞验收

沿用已有清障开关和范围，同步裁剪最终验收的障碍来源，保留区外残段、点云与Access分层语义及道路边界。原始场景输入继续完整保存。

新增32种清障组合回归及19:52:49自动出库案例。原始10秒预算回放约2.32秒成功，20份场景、60项几何及88项碰撞场景测试通过。
</comment><date>2026-09-29 20:22:59 +0800</date><id>e5fdd10ad41212911cbf5f22d43cdaebf0ab0f93</id><msg>fix: 统一起终点清障与停车碰撞验收</msg><path><editType>edit</editType><file>ssep/test/parking_collision_provenance_test.cc</file></path><path><editType>edit</editType><file>ssep/maps/ogm.cc</file></path><path><editType>edit</editType><file>ssep/maps/ogm.h</file></path><path><editType>edit</editType><file>ssep/scenarios/tractor_trailer_parking_collision.h</file></path><path><editType>edit</editType><file>ssep/maps/ogm_builder.h</file></path><path><editType>edit</editType><file>ssep/maps/ogm_builder.cc</file></path><path><editType>edit</editType><file>docs/ssep_stop_collision_extension.md</file></path><path><editType>edit</editType><file>ssep/test/local_regression/README.md</file></path><path><editType>edit</editType><file>ssep/test/local_regression/tt_exit_feasibility_manifest.tsv</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>ssep/offboard/servers/scene_vis_html_template.cc</affectedPath><affectedPath>ssep/test/local_regression/test_scene_vis_directory.py</affectedPath><commitId>983b11a4254f00e262f730582d7e24f104063a6d</commitId><timestamp>1790684593000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 切换场景文件后自动滚动定位当前文件

目录加载后在下一绘制帧将当前文件滚动至可视区域中央，保留当前文件高亮。补充有当前文件和无当前文件时的滚动定位回归验证。

验证：场景服务编译及 3 项可视化回归测试通过。
</comment><date>2026-09-29 20:23:13 +0800</date><id>983b11a4254f00e262f730582d7e24f104063a6d</id><msg>fix: 切换场景文件后自动滚动定位当前文件</msg><path><editType>edit</editType><file>ssep/offboard/servers/scene_vis_html_template.cc</file></path><path><editType>edit</editType><file>ssep/test/local_regression/test_scene_vis_directory.py</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>replayer/scene_data/generated/compact_scene_descriptor.pb</affectedPath><affectedPath>proto/config.proto</affectedPath><affectedPath>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</affectedPath><affectedPath>data/ssep/offline_obstacles_loader.hpp</affectedPath><affectedPath>data/ssep/offline_obstacles_loader.cpp</affectedPath><affectedPath>docs/ssep_offline_obstacles.md</affectedPath><affectedPath>Testing/scene_replay_foundation_test.cpp</affectedPath><affectedPath>docs/pnc_algorithm_replay/plan_frame_field_workflow.md</affectedPath><affectedPath>data/ssep/ssep_ec.hpp</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_encoder.cpp</affectedPath><affectedPath>replayer/scene_data/full_proto_custom_encoder.cpp</affectedPath><affectedPath>data/ssep/ssep_ec.cpp</affectedPath><affectedPath>replayer/scene_data/generated/scene_replay_api_descriptor.pb</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_descriptor.pb</affectedPath><affectedPath>Testing/ssep_scenario_config_lifecycle_test.cpp</affectedPath><commitId>e4a4e9091eb6108f8fa1a20d2a261e897a7c06bd</commitId><timestamp>1790692164000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>feat: 支持离线障碍物按坐标半径匹配

新增 Point 条件，按世界坐标和可配置非负半径匹配搜索起终点。
起点条件改为可选，省略时只判断必填的终点条件；配置后要求两端均匹配。
校验非法坐标和半径，保留未知旧式 type/id 条件不匹配且不影响其他障碍的行为。

补充 Full Proto 坐标与半径字段、生成物和配置说明，保持既有 Compact 配置合同。
增加可选起点、半径边界、非法配置、旧条件兼容及 Full 编码回归测试。
</comment><date>2026-09-29 22:29:24 +0800</date><id>e4a4e9091eb6108f8fa1a20d2a261e897a7c06bd</id><msg>feat: 支持离线障碍物按坐标半径匹配</msg><path><editType>add</editType><file>docs/ssep_offline_obstacles.md</file></path><path><editType>edit</editType><file>Testing/scene_replay_foundation_test.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_encoder.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</file></path><path><editType>edit</editType><file>data/ssep/ssep_ec.cpp</file></path><path><editType>edit</editType><file>data/ssep/offline_obstacles_loader.cpp</file></path><path><editType>edit</editType><file>docs/pnc_algorithm_replay/plan_frame_field_workflow.md</file></path><path><editType>edit</editType><file>replayer/scene_data/full_proto_custom_encoder.cpp</file></path><path><editType>edit</editType><file>proto/config.proto</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/scene_replay_api_descriptor.pb</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_descriptor.pb</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/compact_scene_descriptor.pb</file></path><path><editType>edit</editType><file>Testing/ssep_scenario_config_lifecycle_test.cpp</file></path><path><editType>edit</editType><file>data/ssep/ssep_ec.hpp</file></path><path><editType>edit</editType><file>data/ssep/offline_obstacles_loader.hpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>ssep/offboard/servers/scene_vis_html_template.cc</affectedPath><affectedPath>ssep/test/local_regression/test_scene_vis_directory.py</affectedPath><commitId>809874369f7a26a6acea801e5b7a545dcdef1314</commitId><timestamp>1790692708000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 保留场景目录点击文件后的滚动位置

按目录保存点击文件时的滚动偏移，页面重载后优先恢复原位置；无有效记录时仍定位当前文件。补充滚动位置保存、恢复及无效记录回退测试。
</comment><date>2026-09-29 22:38:28 +0800</date><id>809874369f7a26a6acea801e5b7a545dcdef1314</id><msg>fix: 保留场景目录点击文件后的滚动位置</msg><path><editType>edit</editType><file>ssep/offboard/servers/scene_vis_html_template.cc</file></path><path><editType>edit</editType><file>ssep/test/local_regression/test_scene_vis_directory.py</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>ssep/scenarios/tractor_trailer_general_planner.h</affectedPath><affectedPath>ssep/test/local_regression/tt_precise_feasibility_manifest.tsv</affectedPath><affectedPath>docs/ssep_continuous_kinematic_correction.md</affectedPath><affectedPath>ssep/test/forward_precise_planner_test.cc</affectedPath><affectedPath>ssep/test/local_regression/README.md</affectedPath><commitId>b5cc322584a93b6c6bf2267896278c93d7c06d0e</commitId><timestamp>1790693494000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 为精确终点搜索接入首合法候选恢复

保持实测起点、精确终点和既有验收上限，初轮无合法候选时使用现有有界恢复流程。末端直线豁免与最终碰撞验收保持一致。

新增起点碰撞不可通过移动位姿绕过的测试，归档22:16:36失败及22:18:33成功对照。两例与原20份场景通过，89项专项测试通过；记录原预算下角度精化随剩余时间变化的限制。
</comment><date>2026-09-29 22:51:34 +0800</date><id>b5cc322584a93b6c6bf2267896278c93d7c06d0e</id><msg>fix: 为精确终点搜索接入首合法候选恢复</msg><path><editType>add</editType><file>ssep/test/local_regression/tt_precise_feasibility_manifest.tsv</file></path><path><editType>edit</editType><file>docs/ssep_continuous_kinematic_correction.md</file></path><path><editType>edit</editType><file>ssep/test/local_regression/README.md</file></path><path><editType>edit</editType><file>ssep/scenarios/tractor_trailer_general_planner.h</file></path><path><editType>edit</editType><file>ssep/test/forward_precise_planner_test.cc</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>Testing/ssep_scenario_config_lifecycle_test.cpp</affectedPath><affectedPath>data/ssep/reverse_ec.cpp</affectedPath><commitId>d1ebee114e4c90e458f7b74330cbbed59be168ea</commitId><timestamp>1790693494000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 刷新倒车重搜接口的实车起点

停稳重搜起点接口复用既有起点构造，避免空实现返回成功并留下旧请求位姿。当前生产倒车分支未调用该重搜接口，此项为防御修复。新增连续请求更新头挂位姿和无效底盘拒绝测试。
</comment><date>2026-09-29 22:51:34 +0800</date><id>d1ebee114e4c90e458f7b74330cbbed59be168ea</id><msg>fix: 刷新倒车重搜接口的实车起点</msg><path><editType>edit</editType><file>Testing/ssep_scenario_config_lifecycle_test.cpp</file></path><path><editType>edit</editType><file>data/ssep/reverse_ec.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>data/plan/switch_data.cpp</affectedPath><commitId>ca51e8b514abe01ab149f3e2ef1d196c7a1cf960</commitId><timestamp>1790734437000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 合入变道途经点起终点横向约束

按目标参考线所选终点回查同一途经点记录，检查当前参考线起点横向距离；完整记录起点不合格时不退入仅终点触发。保留当前分支的动态变道准备距离。

验证：pnc_node 分布式构建通过。

Original-Commit: 624719ffd99ab23502c2006391c7bd76d87b4708
Original-Subject: fix：针对西联z型场景追加变道起终点横向约束
</comment><date>2026-09-30 10:13:57 +0800</date><id>ca51e8b514abe01ab149f3e2ef1d196c7a1cf960</id><msg>fix: 合入变道途经点起终点横向约束</msg><path><editType>edit</editType><file>data/plan/switch_data.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</affectedPath><affectedPath>data/constrain/block_data.cpp</affectedPath><affectedPath>data/constrain/temporary_stop_data.cpp</affectedPath><affectedPath>data/constrain/block_data.hpp</affectedPath><affectedPath>Testing/CMakeLists.txt</affectedPath><affectedPath>Testing/shore_crane_follow_stop_test.cpp</affectedPath><commitId>15f24f39fbb148ff81013584f9bab47e9bd5168f</commitId><timestamp>1790734437000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 合入岸桥人工对位防遮挡跟车判断

旁车道近停作业车触发实时跟车检查，转换原始参考线和 GuideLine 坐标后判断最近前车对应的整车停车占用；共用现有 1 s 保持。保留当前队列预计算、整车范围匹配和缓存修复，并合并普通与禁停 ST 遍历。

补充旁车道条件、最近前车、坐标转换、挂车占用、速度边界与道路外排除回归。

验证：岸桥 6 项行为回归通过，pnc_node 分布式构建通过。

Original-Commit: 96885bd974a3ca884bb24971fd4ab9dcdd2263f7
Original-Commit: 6bd8ded81c8e490562765bb445295ea2324a6e62
Original-Subject: fix：岸桥人工车防遮挡逻辑
Original-Subject: fix：岸桥人工对位防遮挡逻辑更新
</comment><date>2026-09-30 10:13:57 +0800</date><id>15f24f39fbb148ff81013584f9bab47e9bd5168f</id><msg>fix: 合入岸桥人工对位防遮挡跟车判断</msg><path><editType>edit</editType><file>Testing/CMakeLists.txt</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</file></path><path><editType>edit</editType><file>data/constrain/block_data.cpp</file></path><path><editType>edit</editType><file>data/constrain/block_data.hpp</file></path><path><editType>edit</editType><file>data/constrain/temporary_stop_data.cpp</file></path><path><editType>add</editType><file>Testing/shore_crane_follow_stop_test.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>data/constrain/temporary_stop_data.cpp</affectedPath><affectedPath>Testing/temporary_stop_startup_test.cpp</affectedPath><affectedPath>Testing/CMakeLists.txt</affectedPath><commitId>f5895d79507ff3e817f49e75145f2abcb80e7186</commitId><timestamp>1790734437000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 合入 SS 优先解除进堆场等待策略

启动指令优先解除 3 m 内可跳过的进堆场等待；自动放行保留原停车线选择，延续当前不可跳过保护和历史 JUMP 行为。

补充 SS、自动请求、距离边界、任务标志、路口原因与连续解除回归。

验证：SS 7 项行为回归通过；完整禁停与路由回归 94 项通过。

Original-Commit: b1da3611f26e17062ede234d544aa8810091a5b7
Original-Subject: fix：ss优先解除堆高机禁停
</comment><date>2026-09-30 10:13:57 +0800</date><id>f5895d79507ff3e817f49e75145f2abcb80e7186</id><msg>fix: 合入 SS 优先解除进堆场等待策略</msg><path><editType>edit</editType><file>data/constrain/temporary_stop_data.cpp</file></path><path><editType>add</editType><file>Testing/temporary_stop_startup_test.cpp</file></path><path><editType>edit</editType><file>Testing/CMakeLists.txt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>replayer/scene_data/generated/compact_scene_descriptor.pb</affectedPath><affectedPath>tools/pnc_proto_mapper/sync_config_schema.py</affectedPath><affectedPath>proto/config.proto</affectedPath><affectedPath>replayer/scene_data/generated/full_custom_codec_coverage_audit.yaml</affectedPath><affectedPath>replayer/scene_data/config_proto_codec.cpp</affectedPath><affectedPath>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</affectedPath><affectedPath>data/config/cfg_long_plan.hpp</affectedPath><affectedPath>data/config/cfg_long_plan.cpp</affectedPath><affectedPath>replayer/scene_data/generated/config_schema_inputs.json</affectedPath><affectedPath>Testing/scene_replay_foundation_test.cpp</affectedPath><affectedPath>docs/pnc_algorithm_replay/plan_frame_field_workflow.md</affectedPath><affectedPath>Testing/stacking_safe_distance_test.cpp</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_encoder.cpp</affectedPath><affectedPath>replayer/scene_data/generated/scene_replay_api_descriptor.pb</affectedPath><affectedPath>Testing/CMakeLists.txt</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_descriptor.pb</affectedPath><commitId>2fb5bd802dd73fd3bdf2796aec92d03738061590</commitId><timestamp>1790734437000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 统一堆高机场终点跟车距离并修复配置回放

将终点前 50 m 的基础跟车距离选择移入 CfgLongPlan::GetSafeDistance，保留闸口、短距、变道和对位策略优先级；线上缺参及旧场景缺字段时继承堆场配置。

SafeDistance 增加带 presence 的独立障碍物跟车距离，旧消息继承普通跟车距离，显式 0 保留；补齐 Full、Compact Recorded/Candidate 和旧读端转发回归。原提交的 Proto 118 与当前散货限速字段冲突，按本地分支合同核对后改用未占用的 120，并同步生成描述符与审计文件。

验证：scaffold/generate/check-generated/check-proto-breaking 通过；pnc_node 分布式构建通过；回放测试 306 项通过、2 项缺可选样本跳过，统一距离测试 6 项通过。

Original-Commit: b1745de9fa1049a25cabf83797bc056266a2de32
Original-Subject: fix：低贝位堆高机场新增大车距参数
</comment><date>2026-09-30 10:13:57 +0800</date><id>2fb5bd802dd73fd3bdf2796aec92d03738061590</id><msg>fix: 统一堆高机场终点跟车距离并修复配置回放</msg><path><editType>edit</editType><file>proto/config.proto</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/scene_replay_api_descriptor.pb</file></path><path><editType>edit</editType><file>data/config/cfg_long_plan.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/compact_scene_descriptor.pb</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/config_schema_inputs.json</file></path><path><editType>edit</editType><file>replayer/scene_data/config_proto_codec.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/full_custom_codec_coverage_audit.yaml</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_encoder.cpp</file></path><path><editType>edit</editType><file>tools/pnc_proto_mapper/sync_config_schema.py</file></path><path><editType>edit</editType><file>Testing/CMakeLists.txt</file></path><path><editType>edit</editType><file>data/config/cfg_long_plan.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_descriptor.pb</file></path><path><editType>edit</editType><file>Testing/scene_replay_foundation_test.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</file></path><path><editType>add</editType><file>Testing/stacking_safe_distance_test.cpp</file></path><path><editType>edit</editType><file>docs/pnc_algorithm_replay/plan_frame_field_workflow.md</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>data/constrain/block_data.cpp</affectedPath><affectedPath>replayer/scene_data/generated/compact_scene_descriptor.pb</affectedPath><affectedPath>proto/config.proto</affectedPath><affectedPath>replayer/scene_data/generated/full_custom_codec_coverage_audit.yaml</affectedPath><affectedPath>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</affectedPath><affectedPath>replayer/scene_data/config_proto_codec.cpp</affectedPath><affectedPath>data/config/cfg_func_sw.hpp</affectedPath><affectedPath>data/config/cfg_func_sw.cpp</affectedPath><affectedPath>replayer/scene_data/generated/config_schema_inputs.json</affectedPath><affectedPath>Testing/scene_replay_foundation_test.cpp</affectedPath><affectedPath>docs/pnc_algorithm_replay/plan_frame_field_workflow.md</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_encoder.cpp</affectedPath><affectedPath>replayer/scene_data/generated/scene_replay_api_descriptor.pb</affectedPath><affectedPath>Testing/shore_crane_follow_stop_test.cpp</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_descriptor.pb</affectedPath><commitId>d7b98d2e34368274dd5237eebfb80d26426cba56</commitId><timestamp>1790736118000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>feat: 增加默认关闭的岸桥防遮挡跟车开关

新增 use_func_shore_crane_follow_stop，默认关闭，支持 ROS 参数热更新。
门控岸桥人工对位时的实时前车跟车停车检测，保留既有预测策略。
补齐 Full/Compact 配置回放、旧包默认关闭及开关启停回归。

Related-Commit: 15f24f39fbb148ff81013584f9bab47e9bd5168f
</comment><date>2026-09-30 10:41:58 +0800</date><id>d7b98d2e34368274dd5237eebfb80d26426cba56</id><msg>feat: 增加默认关闭的岸桥防遮挡跟车开关</msg><path><editType>edit</editType><file>replayer/scene_data/generated/scene_replay_api_descriptor.pb</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_encoder.cpp</file></path><path><editType>edit</editType><file>proto/config.proto</file></path><path><editType>edit</editType><file>Testing/shore_crane_follow_stop_test.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</file></path><path><editType>edit</editType><file>data/constrain/block_data.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/config_schema_inputs.json</file></path><path><editType>edit</editType><file>Testing/scene_replay_foundation_test.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/full_custom_codec_coverage_audit.yaml</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_descriptor.pb</file></path><path><editType>edit</editType><file>docs/pnc_algorithm_replay/plan_frame_field_workflow.md</file></path><path><editType>edit</editType><file>data/config/cfg_func_sw.cpp</file></path><path><editType>edit</editType><file>data/config/cfg_func_sw.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/config_proto_codec.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/compact_scene_descriptor.pb</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>Testing/stacking_safe_distance_test.cpp</affectedPath><affectedPath>data/config/cfg_long_plan.cpp</affectedPath><affectedPath>Testing/CMakeLists.txt</affectedPath><affectedPath>docs/pnc_algorithm_replay/plan_frame_field_workflow.md</affectedPath><affectedPath>data/map/reference/reference_road_section.cpp</affectedPath><commitId>f6a62de6082e1edeb84140d47ed4675b2e7f092b</commitId><timestamp>1790736127000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 平滑堆高机场终点跟车距离并保护地图索引

使用有效 PNC local map 当前路段判定堆高机场，修复路段和分段索引等于容器大小时的越界。
普通跟车从终点前 50 m 开始按 smoothstep 过渡整份 SafeDistance，到终点完全采用目标配置。
过渡仅由当前距离计算，不累积 getter 调用次数；保持高优先策略，复用闸口距离插值。
补充距离入口连续、弯道单调过渡、整档配置和索引边界回归。

Related-Commit: b1745de9fa1049a25cabf83797bc056266a2de32
</comment><date>2026-09-30 10:42:07 +0800</date><id>f6a62de6082e1edeb84140d47ed4675b2e7f092b</id><msg>fix: 平滑堆高机场终点跟车距离并保护地图索引</msg><path><editType>edit</editType><file>docs/pnc_algorithm_replay/plan_frame_field_workflow.md</file></path><path><editType>edit</editType><file>Testing/CMakeLists.txt</file></path><path><editType>edit</editType><file>data/config/cfg_long_plan.cpp</file></path><path><editType>edit</editType><file>Testing/stacking_safe_distance_test.cpp</file></path><path><editType>edit</editType><file>data/map/reference/reference_road_section.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>ssep/test/ssep_planner_test.cc</affectedPath><affectedPath>ssep/test/local_regression/README.md</affectedPath><affectedPath>ssep/coarse_search/multi_stage_hybrid_astar_search_engine.cc</affectedPath><affectedPath>ssep/keb_optimizer/tractor_trailer_keb_optimizer.cc</affectedPath><affectedPath>ssep/test/tractor_trailer_kinematic_weight_test.cc</affectedPath><affectedPath>ssep/scenarios/tractor_trailer_exit_parking_spot_planner.h</affectedPath><affectedPath>ssep/test/local_regression/tt_exit_feasibility_manifest.tsv</affectedPath><affectedPath>ssep/coarse_search/multi_stage_hybrid_astar_search_engine.h</affectedPath><affectedPath>ssep/keb_optimizer/keb_problem.cc</affectedPath><commitId>bb88788b89fc25801c3bc62dfdcbc9ad25ada5f7</commitId><timestamp>1790739115000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 支持拖挂出库禁止倒车并恢复前进可行路径

Auto 出库增加 allow_reverse_adjustment 参数；关闭时仅搜索前进路径，
使用完整原始预算，并在最终验收中拒绝倒车方向。

前进优化失败时在同一预算内释放额外固定尾段，保留粗搜索首末位姿硬约束。
粗搜索提前检查不可释放的终点车身碰撞；单层 KEB 尊重显式终点约束模式。
首合法恢复 QP 向验收边界内预留数值裕量，最终物理和碰撞阈值保持原值。

归档原始出库记录及明确标注的禁止倒车派生记录，新增边界和方向回归。
验证：90 项搜索/碰撞专项、122 项运动学测试及 24 个场景回归通过。
本例单段前进成功，角度误差约 4.73°/1.75°，尚未稳定达到 1°。
</comment><date>2026-09-30 11:31:55 +0800</date><id>bb88788b89fc25801c3bc62dfdcbc9ad25ada5f7</id><msg>fix: 支持拖挂出库禁止倒车并恢复前进可行路径</msg><path><editType>edit</editType><file>ssep/coarse_search/multi_stage_hybrid_astar_search_engine.cc</file></path><path><editType>edit</editType><file>ssep/scenarios/tractor_trailer_exit_parking_spot_planner.h</file></path><path><editType>edit</editType><file>ssep/keb_optimizer/keb_problem.cc</file></path><path><editType>edit</editType><file>ssep/keb_optimizer/tractor_trailer_keb_optimizer.cc</file></path><path><editType>edit</editType><file>ssep/test/local_regression/README.md</file></path><path><editType>edit</editType><file>ssep/test/local_regression/tt_exit_feasibility_manifest.tsv</file></path><path><editType>edit</editType><file>ssep/coarse_search/multi_stage_hybrid_astar_search_engine.h</file></path><path><editType>edit</editType><file>ssep/test/tractor_trailer_kinematic_weight_test.cc</file></path><path><editType>edit</editType><file>ssep/test/ssep_planner_test.cc</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>replayer/scene_data/generated/compact_scene_descriptor.pb</affectedPath><affectedPath>proto/config.proto</affectedPath><affectedPath>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</affectedPath><affectedPath>replayer/scene_data/config_proto_codec.cpp</affectedPath><affectedPath>data/ssep/ssep_scenario_config_loader.cpp</affectedPath><affectedPath>data/ssep/offline_obstacles_loader.hpp</affectedPath><affectedPath>docs/ssep_scenario_config_lifecycle.md</affectedPath><affectedPath>data/ssep/offline_obstacles_loader.cpp</affectedPath><affectedPath>config/config_truck/ssep_port_scenarios_jinxi.yaml</affectedPath><affectedPath>Testing/scene_replay_foundation_test.cpp</affectedPath><affectedPath>docs/pnc_algorithm_replay/plan_frame_field_workflow.md</affectedPath><affectedPath>data/ssep/ssep_ec.hpp</affectedPath><affectedPath>data/ssep/ssep_scenario_config.cpp</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_encoder.cpp</affectedPath><affectedPath>replayer/scene_data/generated/scene_replay_api_descriptor.pb</affectedPath><affectedPath>data/ssep/ssep_ec.cpp</affectedPath><affectedPath>Testing/ssep_scenario_config_lifecycle_test.cpp</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_descriptor.pb</affectedPath><affectedPath>data/ssep/ssep_scenario_config.hpp</affectedPath><commitId>de9a82af60f6dd821942c41c6c56a43914537465</commitId><timestamp>1790739164000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>feat: 为 SSEP 场景增加双端位置触发条件

场景 start 条件读取当前有效车辆定位，end 条件读取当前有效任务终点，
支持 Point 的 UTM 坐标和可配置半径、Lane ID 及 YardArea 区域名称。
位置条件与既有任务条件按 AND 匹配，保持首匹配及原有起终点构造顺序。
共用离线障碍条件的解析和几何判断，按区域名称获取完整 YardArea 几何，
避免顶点距离预筛选漏掉大区域内部点。

两端位置条件沿现有 Full/Compact ReplayInput 以 typed double 保存，
缺字段保持无对应端限制，保留零半径与缺半径的区别，并更新生成合同。
津西示例增加指定起点半径 5 米的禁止倒车出库规则，优先于通用出库。

验证：78 项配置/生命周期测试和 312 项回放基础测试通过，
另 2 项可选外部 fixture 测试跳过；合同生成及 breaking 检查、pnc_node 编译通过。
</comment><date>2026-09-30 11:32:44 +0800</date><id>de9a82af60f6dd821942c41c6c56a43914537465</id><msg>feat: 为 SSEP 场景增加双端位置触发条件</msg><path><editType>edit</editType><file>replayer/scene_data/generated/scene_replay_api_descriptor.pb</file></path><path><editType>edit</editType><file>data/ssep/offline_obstacles_loader.cpp</file></path><path><editType>edit</editType><file>data/ssep/ssep_scenario_config.hpp</file></path><path><editType>edit</editType><file>Testing/ssep_scenario_config_lifecycle_test.cpp</file></path><path><editType>edit</editType><file>data/ssep/ssep_ec.cpp</file></path><path><editType>edit</editType><file>data/ssep/ssep_scenario_config_loader.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</file></path><path><editType>edit</editType><file>Testing/scene_replay_foundation_test.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_descriptor.pb</file></path><path><editType>edit</editType><file>replayer/scene_data/config_proto_codec.cpp</file></path><path><editType>edit</editType><file>config/config_truck/ssep_port_scenarios_jinxi.yaml</file></path><path><editType>edit</editType><file>data/ssep/offline_obstacles_loader.hpp</file></path><path><editType>edit</editType><file>data/ssep/ssep_ec.hpp</file></path><path><editType>edit</editType><file>docs/pnc_algorithm_replay/plan_frame_field_workflow.md</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/compact_scene_descriptor.pb</file></path><path><editType>edit</editType><file>docs/ssep_scenario_config_lifecycle.md</file></path><path><editType>edit</editType><file>proto/config.proto</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_encoder.cpp</file></path><path><editType>edit</editType><file>data/ssep/ssep_scenario_config.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>ssep/test/parking_collision_provenance_test.cc</affectedPath><affectedPath>ssep/scenarios/tractor_trailer_parking_collision.h</affectedPath><affectedPath>ssep/keb_optimizer/tractor_trailer_keb_optimizer.cc</affectedPath><affectedPath>ssep/test/tractor_trailer_kinematic_weight_test.cc</affectedPath><commitId>5dfd63b356cc12e0b1524887362c5d725a18d4f4</commitId><timestamp>1790761442000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 修复拖挂出库碰撞恢复与曲率边界收敛

碰撞恢复选取每段扫掠中穿透最深的见证，并生成严格分离余量，避免反复将碰撞推到下一采样点。
曲率生成目标略收紧到机械边界内，最终验收继续使用原机械上限。
软约束恢复遇到真实车身碰撞时提前进入联合恢复，明显收敛时在原请求截止和预留预算内延续迭代；超时回滚且完整验收保持不变。

验证：86 项碰撞测试、123 项运动学测试通过；29 个场景回归通过，新增 5 个出库失败案例均恢复成功，独立车身扫掠检查无碰撞。
</comment><date>2026-09-30 17:44:02 +0800</date><id>5dfd63b356cc12e0b1524887362c5d725a18d4f4</id><msg>fix: 修复拖挂出库碰撞恢复与曲率边界收敛</msg><path><editType>edit</editType><file>ssep/keb_optimizer/tractor_trailer_keb_optimizer.cc</file></path><path><editType>edit</editType><file>ssep/scenarios/tractor_trailer_parking_collision.h</file></path><path><editType>edit</editType><file>ssep/test/tractor_trailer_kinematic_weight_test.cc</file></path><path><editType>edit</editType><file>ssep/test/parking_collision_provenance_test.cc</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>ssep/test/local_regression/tt_exit_feasibility_manifest.tsv</affectedPath><commitId>ccb50f2df494433f4a45e154aa8e6bf9b0ab95e7</commitId><timestamp>1790761455000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>test: 增加五个拖挂出库失败场景回归

归档 2026-09-30 的 16:11:29、16:14:04、16:32:44、16:33:07 和 16:39:14 原始记录，清单记录 SHA-256 并保留原始参数和搜索预算。
覆盖完整车身碰撞恢复、曲率边界及单段前进出库；16:14:04 校验仅一段路径。
几何航向误差继续统计，不新增拒绝门槛；16:11:29 挂车误差约 5.2 度仍需后续改善。
</comment><date>2026-09-30 17:44:15 +0800</date><id>ccb50f2df494433f4a45e154aa8e6bf9b0ab95e7</id><msg>test: 增加五个拖挂出库失败场景回归</msg><path><editType>edit</editType><file>ssep/test/local_regression/tt_exit_feasibility_manifest.tsv</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>ssep/coarse_search/motion_primitive_sampler/arc_path_motion_primitive_sampler.cc</affectedPath><affectedPath>ssep/test/coarse_search_stop_clearance_test.cc</affectedPath><commitId>90fc56dc64fd424ba1f5ac48866dd4f0a4b71d6f</commitId><timestamp>1790768257000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 保留圆弧基元曲率限幅的转向方向

修复负曲率超过上限时被错误翻转为正曲率的问题。
使用带符号限幅，并覆盖左右转参考圆弧的回归测试。
</comment><date>2026-09-30 19:37:37 +0800</date><id>90fc56dc64fd424ba1f5ac48866dd4f0a4b71d6f</id><msg>fix: 保留圆弧基元曲率限幅的转向方向</msg><path><editType>edit</editType><file>ssep/coarse_search/motion_primitive_sampler/arc_path_motion_primitive_sampler.cc</file></path><path><editType>edit</editType><file>ssep/test/coarse_search_stop_clearance_test.cc</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>data/plan/ssep_data.cpp</affectedPath><affectedPath>replayer/scene_data/compact_geometry_codec.cpp</affectedPath><affectedPath>proto/plan_data.proto</affectedPath><affectedPath>ssep/test/CMakeLists.txt</affectedPath><affectedPath>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</affectedPath><affectedPath>ssep/test/bidirectional_candidate_validation_test.cc</affectedPath><affectedPath>ssep/data_structures/path.h</affectedPath><affectedPath>data/other/parking_pass_progress.cpp</affectedPath><affectedPath>ssep/test/bidirectional_stop_collision_test.cc</affectedPath><affectedPath>replayer/scene_data/compact_custom_field_proto_codec.cpp</affectedPath><affectedPath>ssep/scenarios/planner_utils.cc</affectedPath><affectedPath>Testing/scene_replay_foundation_test.cpp</affectedPath><affectedPath>ssep/scenarios/planner_utils.h</affectedPath><affectedPath>ssep/scenarios/parking_approach_loop.h</affectedPath><affectedPath>data/other/parking_pass_progress.hpp</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_encoder.cpp</affectedPath><affectedPath>replayer/scene_data/full_proto_custom_encoder.cpp</affectedPath><affectedPath>ssep/scenarios/tractor_trailer_multi_segment_parking_planner.h</affectedPath><affectedPath>data/ssep/ssep_ec.cpp</affectedPath><affectedPath>data/ssep/ssep_activation.cpp</affectedPath><affectedPath>ssep/data_structures/path.cc</affectedPath><affectedPath>replayer/scene_data/generated/compact_scene_descriptor.pb</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_field_roles.json</affectedPath><affectedPath>proto/pnc_scene/compact_geometry.proto</affectedPath><affectedPath>ssep/protos/path.proto</affectedPath><affectedPath>replayer/scene_data/compact_numeric_policy.yaml</affectedPath><affectedPath>ssep/coarse_search/searcher_builders/tractor_trailer_multi_segment_parking_bidirectional_searcher_builder.cc</affectedPath><affectedPath>ssep/test/ssep_planner_test.cc</affectedPath><affectedPath>ssep/coarse_search/searcher_builders/tractor_trailer_multi_segment_parking_bidirectional_searcher_builder.h</affectedPath><affectedPath>Testing/parking_pass_progress_test.cpp</affectedPath><affectedPath>ssep/data_structures/type_definition.h</affectedPath><affectedPath>ssep/data_structures/type_definition.cc</affectedPath><affectedPath>ssep/coarse_search/bidirectional_hybrid_astar_search_engine.cc</affectedPath><affectedPath>docs/pnc_algorithm_replay/plan_frame_field_workflow.md</affectedPath><affectedPath>ssep/coarse_search/bidirectional_hybrid_astar_search_engine.h</affectedPath><affectedPath>ssep/ssep_planner.cc</affectedPath><affectedPath>replayer/scene_data/plan_frame_field_roles.csv</affectedPath><affectedPath>replayer/scene_data/generated/scene_replay_api_descriptor.pb</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_descriptor.pb</affectedPath><affectedPath>ssep/test/parking_approach_loop_test.cc</affectedPath><commitId>33461e4ad3de9bfca4aa7ab7c54f81ac540480f6</commitId><timestamp>1790768257000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 修复拖挂停车搜索优先级与任务换向进度

优先一次前进到参考倒车点后倒入，失败或出现闭环再尝试多段调整。
最后兜底阶段拒绝闭环候选后继续原搜索队列，保留搜索预算和完整车身验收。

显式传递真实任务换向标记，覆盖路径裁剪、拼接、下发、执行进度及现场记录，
避免局部调整提前消耗任务途经点。同步 Full/Compact 字段与旧数据缺省行为。

增加搜索候选继续扩展、闭环识别、任务换向和回放测试。
验证：265 项可运行 C++ 测试、23 项进度测试、2 项回放测试及 Proto 检查通过；
pnc_node 和回放工具编译通过。13 项依赖缺失本地数据目录的场景测试未完成。
</comment><date>2026-09-30 19:37:37 +0800</date><id>33461e4ad3de9bfca4aa7ab7c54f81ac540480f6</id><msg>fix: 修复拖挂停车搜索优先级与任务换向进度</msg><path><editType>edit</editType><file>data/other/parking_pass_progress.hpp</file></path><path><editType>edit</editType><file>ssep/coarse_search/bidirectional_hybrid_astar_search_engine.cc</file></path><path><editType>edit</editType><file>ssep/coarse_search/searcher_builders/tractor_trailer_multi_segment_parking_bidirectional_searcher_builder.h</file></path><path><editType>edit</editType><file>ssep/test/bidirectional_stop_collision_test.cc</file></path><path><editType>edit</editType><file>proto/plan_data.proto</file></path><path><editType>edit</editType><file>ssep/coarse_search/searcher_builders/tractor_trailer_multi_segment_parking_bidirectional_searcher_builder.cc</file></path><path><editType>edit</editType><file>ssep/data_structures/type_definition.cc</file></path><path><editType>edit</editType><file>ssep/ssep_planner.cc</file></path><path><editType>edit</editType><file>data/other/parking_pass_progress.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/scene_replay_api_descriptor.pb</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_encoder.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</file></path><path><editType>edit</editType><file>ssep/scenarios/tractor_trailer_multi_segment_parking_planner.h</file></path><path><editType>edit</editType><file>replayer/scene_data/compact_numeric_policy.yaml</file></path><path><editType>edit</editType><file>replayer/scene_data/compact_geometry_codec.cpp</file></path><path><editType>edit</editType><file>ssep/test/ssep_planner_test.cc</file></path><path><editType>edit</editType><file>data/ssep/ssep_ec.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_field_roles.json</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/compact_scene_descriptor.pb</file></path><path><editType>edit</editType><file>replayer/scene_data/plan_frame_field_roles.csv</file></path><path><editType>edit</editType><file>docs/pnc_algorithm_replay/plan_frame_field_workflow.md</file></path><path><editType>edit</editType><file>ssep/protos/path.proto</file></path><path><editType>add</editType><file>ssep/test/parking_approach_loop_test.cc</file></path><path><editType>edit</editType><file>ssep/test/CMakeLists.txt</file></path><path><editType>edit</editType><file>replayer/scene_data/full_proto_custom_encoder.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/compact_custom_field_proto_codec.cpp</file></path><path><editType>edit</editType><file>ssep/data_structures/path.cc</file></path><path><editType>edit</editType><file>Testing/scene_replay_foundation_test.cpp</file></path><path><editType>edit</editType><file>ssep/scenarios/planner_utils.h</file></path><path><editType>edit</editType><file>data/plan/ssep_data.cpp</file></path><path><editType>add</editType><file>ssep/test/bidirectional_candidate_validation_test.cc</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_descriptor.pb</file></path><path><editType>add</editType><file>ssep/scenarios/parking_approach_loop.h</file></path><path><editType>edit</editType><file>Testing/parking_pass_progress_test.cpp</file></path><path><editType>edit</editType><file>ssep/coarse_search/bidirectional_hybrid_astar_search_engine.h</file></path><path><editType>edit</editType><file>data/ssep/ssep_activation.cpp</file></path><path><editType>edit</editType><file>proto/pnc_scene/compact_geometry.proto</file></path><path><editType>edit</editType><file>ssep/scenarios/planner_utils.cc</file></path><path><editType>edit</editType><file>ssep/data_structures/path.h</file></path><path><editType>edit</editType><file>ssep/data_structures/type_definition.h</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>ssep/test/local_regression/test_tt_reference_cusp_quality.py</affectedPath><affectedPath>ssep/test/local_regression/run_ssep_regression.py</affectedPath><affectedPath>ssep/test/local_regression/tt_reference_cusp_quality.json</affectedPath><affectedPath>ssep/test/local_regression/README.md</affectedPath><affectedPath>ssep/test/local_regression/tt_reference_cusp_quality.py</affectedPath><affectedPath>ssep/test/local_regression/tt_reference_cusp_manifest.tsv</affectedPath><commitId>4a1c00ccd7c6c8fd01bc45edf32896c325282f68</commitId><timestamp>1790768257000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>test: 增加参考倒车点闭环与两段路径回归

记录五个参考倒车点场景及源文件哈希，独立验收任务换向和完整车身扫掠。
增加同档位闭环检查，明确拒绝旧绕圈结果，保留正常 U/S 形及跨换向退回。
18:59:44、19:00:26 单独要求两段完成，其他多段场景不统一限制换向次数。

验证：16 项 Python 测试及 5 个重点回放通过；19:00:36 额外复测通过，
头/挂航向误差约 0.63°/1.00°。
</comment><date>2026-09-30 19:37:37 +0800</date><id>4a1c00ccd7c6c8fd01bc45edf32896c325282f68</id><msg>test: 增加参考倒车点闭环与两段路径回归</msg><path><editType>add</editType><file>ssep/test/local_regression/tt_reference_cusp_quality.json</file></path><path><editType>edit</editType><file>ssep/test/local_regression/README.md</file></path><path><editType>add</editType><file>ssep/test/local_regression/tt_reference_cusp_quality.py</file></path><path><editType>add</editType><file>ssep/test/local_regression/test_tt_reference_cusp_quality.py</file></path><path><editType>add</editType><file>ssep/test/local_regression/tt_reference_cusp_manifest.tsv</file></path><path><editType>edit</editType><file>ssep/test/local_regression/run_ssep_regression.py</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>data/ssep/offline_obstacles_loader.cpp</affectedPath><affectedPath>data/ssep/ssep_ec.cpp</affectedPath><affectedPath>docs/ssep_offline_obstacles.md</affectedPath><affectedPath>Testing/ssep_scenario_config_lifecycle_test.cpp</affectedPath><commitId>7b4622697a7a8fcecdfc90486054b945c5eb9713</commitId><timestamp>1790787253000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 支持离线障碍物仅按起点条件加载

允许 start 和 end 任一条件单独配置，同时配置时要求两者均匹配，继续拒绝缺少全部条件或显式空条件。修复仅配置 start 导致整份离线障碍物列表加载失败的问题。

补充混合条件加载、半径边界及无效配置回归测试，并更新配置文档。分布式编译通过，离线障碍物测试 7/7 通过；完整 SSEP 测试 78/79 通过，TractorTrailerPassPointSelectionUsesActualParameters 失败，失败路径不经过本次修改。
</comment><date>2026-10-01 00:54:13 +0800</date><id>7b4622697a7a8fcecdfc90486054b945c5eb9713</id><msg>fix: 支持离线障碍物仅按起点条件加载</msg><path><editType>edit</editType><file>docs/ssep_offline_obstacles.md</file></path><path><editType>edit</editType><file>Testing/ssep_scenario_config_lifecycle_test.cpp</file></path><path><editType>edit</editType><file>data/ssep/offline_obstacles_loader.cpp</file></path><path><editType>edit</editType><file>data/ssep/ssep_ec.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>data/plan/ssep_data.cpp</affectedPath><affectedPath>Testing/parking_pass_progress_test.cpp</affectedPath><commitId>3371203dfaaaacdb4608a45dc0d85533c5e405a3</commitId><timestamp>1790865393000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 修复 SSEP 倒超换向点后无法切段

换向线触发停车后，允许纵向越过不超过 2 米且横向偏差小于 1 米的车辆切换下一段。使用原始路径的末端切向，避免延长段和倒车航向翻转影响判定，保留停车及防连续跳段检查。

补充倒超恢复、距离边界、正反向、量化误差、异常路径和连续换向回归。147 项 SSEP 专项测试通过，pnc_node 编译通过；现场快照停车后的 244 帧均满足新几何恢复条件。
</comment><date>2026-10-01 22:36:33 +0800</date><id>3371203dfaaaacdb4608a45dc0d85533c5e405a3</id><msg>fix: 修复 SSEP 倒超换向点后无法切段</msg><path><editType>edit</editType><file>Testing/parking_pass_progress_test.cpp</file></path><path><editType>edit</editType><file>data/plan/ssep_data.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>replayer/scene_data/generated/compact_scene_descriptor.pb</affectedPath><affectedPath>proto/config.proto</affectedPath><affectedPath>replayer/scene_data/generated/full_custom_codec_coverage_audit.yaml</affectedPath><affectedPath>Testing/keb_roadside_config_test.cpp</affectedPath><affectedPath>replayer/scene_data/config_proto_codec.cpp</affectedPath><affectedPath>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</affectedPath><affectedPath>tasks/plan/reversing_truck_path_task.cpp</affectedPath><affectedPath>Testing/reversing_path_wbca_test.cpp</affectedPath><affectedPath>data/config/cfg_lat_plan.hpp</affectedPath><affectedPath>algorithm/wbca/reversing_truck_wbca_manager.hpp</affectedPath><affectedPath>replayer/scene_data/generated/config_schema_inputs.json</affectedPath><affectedPath>algorithm/wbca/reversing_truck_wbca_manager.cpp</affectedPath><affectedPath>data/config/cfg_lat_plan.cpp</affectedPath><affectedPath>docs/pnc_algorithm_replay/plan_frame_field_workflow.md</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_encoder.cpp</affectedPath><affectedPath>replayer/scene_data/generated/scene_replay_api_descriptor.pb</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_descriptor.pb</affectedPath><commitId>610888a71bc167e2dfdb5b706760c7b8839d220d</commitId><timestamp>1790867379000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>feat(wbca): configure reversing corridor deviation allowance
</comment><date>2026-10-01 23:09:39 +0800</date><id>610888a71bc167e2dfdb5b706760c7b8839d220d</id><msg>feat(wbca): configure reversing corridor deviation allowance</msg><path><editType>edit</editType><file>replayer/scene_data/config_proto_codec.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/compact_scene_descriptor.pb</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_encoder.cpp</file></path><path><editType>edit</editType><file>proto/config.proto</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/config_schema_inputs.json</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_descriptor.pb</file></path><path><editType>edit</editType><file>algorithm/wbca/reversing_truck_wbca_manager.cpp</file></path><path><editType>edit</editType><file>Testing/keb_roadside_config_test.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/full_custom_codec_coverage_audit.yaml</file></path><path><editType>edit</editType><file>docs/pnc_algorithm_replay/plan_frame_field_workflow.md</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/scene_replay_api_descriptor.pb</file></path><path><editType>edit</editType><file>data/config/cfg_lat_plan.hpp</file></path><path><editType>edit</editType><file>algorithm/wbca/reversing_truck_wbca_manager.hpp</file></path><path><editType>edit</editType><file>data/config/cfg_lat_plan.cpp</file></path><path><editType>edit</editType><file>tasks/plan/reversing_truck_path_task.cpp</file></path><path><editType>edit</editType><file>Testing/reversing_path_wbca_test.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>ssep/scenarios/tractor_trailer_parking_collision.h</affectedPath><affectedPath>ssep/maps/ogm_config_utils.cc</affectedPath><affectedPath>ssep/maps/ogm.h</affectedPath><affectedPath>ssep/maps/ogm_builder.h</affectedPath><affectedPath>ssep/test/scene_replay_obstacle_inputs_test.cc</affectedPath><affectedPath>ssep/test/parking_collision_provenance_test.cc</affectedPath><affectedPath>ssep/maps/ogm.cc</affectedPath><affectedPath>ssep/maps/ogm_builder.cc</affectedPath><commitId>178853c2cec1dc1855887fd36fe43b2a7ebbfa7f</commitId><timestamp>1790869776000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 修复拖挂停车起点派生占用与豁免生命周期

在停车约束建图中按真实头挂车身与整格相交恢复起点新增占用，
保留原始线段和已有实体，并正确处理挂接偏移及车体坐标。

保存临时豁免来源，仅允许匹配建图起点的完整路径使用；
车辆整体脱离后恢复约束，避免返回起点或分段验收重启豁免。
同步优化碰撞修复、地图克隆及重建的状态处理。

验证：50 项相关测试通过；新增两条离线约束的现场场景回放
及独立车身碰撞检查通过；并行编译与 diff 检查通过。
</comment><date>2026-10-01 23:49:36 +0800</date><id>178853c2cec1dc1855887fd36fe43b2a7ebbfa7f</id><msg>fix: 修复拖挂停车起点派生占用与豁免生命周期</msg><path><editType>edit</editType><file>ssep/test/scene_replay_obstacle_inputs_test.cc</file></path><path><editType>edit</editType><file>ssep/scenarios/tractor_trailer_parking_collision.h</file></path><path><editType>edit</editType><file>ssep/test/parking_collision_provenance_test.cc</file></path><path><editType>edit</editType><file>ssep/maps/ogm_builder.cc</file></path><path><editType>edit</editType><file>ssep/maps/ogm.h</file></path><path><editType>edit</editType><file>ssep/maps/ogm_builder.h</file></path><path><editType>edit</editType><file>ssep/maps/ogm.cc</file></path><path><editType>edit</editType><file>ssep/maps/ogm_config_utils.cc</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>source/ros_source_ads_target.hpp</affectedPath><affectedPath>source/ros_source_ads_target.cpp</affectedPath><commitId>3455c3d9997ff28b5f918899b0ded314c6715f31</commitId><timestamp>1790869805000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 保存任务 bag 的挂车姿态快照

复用 TrailerPosture 保存相对物理车头的挂角和有效标记，与 Target 使用同一时间戳。
在互斥锁下取得车头及挂车快照，异步保存按值捕获，避免姿态读取竞争。
验证：diff 检查通过；全量构建受现有 ssep/maps/ogm.h 的 cv::Mat 运算错误阻断。
</comment><date>2026-10-01 23:50:05 +0800</date><id>3455c3d9997ff28b5f918899b0ded314c6715f31</id><msg>fix: 保存任务 bag 的挂车姿态快照</msg><path><editType>edit</editType><file>source/ros_source_ads_target.cpp</file></path><path><editType>edit</editType><file>source/ros_source_ads_target.hpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>data/ssep/out_yard_junction_ec.cpp</affectedPath><commitId>49f604896aa26adb2186a24659bd0cb43e0e8791</commitId><timestamp>1790872470000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 调整中铁联集出场引导线起点后延距离

将中铁联集场景的起点后延距离由 25 米调整为 2 米，使默认起点位于基准停止线前 2 米。
</comment><date>2026-10-02 00:34:30 +0800</date><id>49f604896aa26adb2186a24659bd0cb43e0e8791</id><msg>fix: 调整中铁联集出场引导线起点后延距离</msg><path><editType>edit</editType><file>data/ssep/out_yard_junction_ec.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>plan/prepare/prepare_hmi_virtual_obs.cpp</affectedPath><affectedPath>data/config/cfg_func_sw.cpp</affectedPath><affectedPath>hmi/common/pnc_graphics_view.cpp</affectedPath><commitId>8ef11502f052d1046e6cc554ceee839e0b67c3c2</commitId><timestamp>1790986962000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 补齐 HMI 虚拟障碍线操作与持久化诊断日志

记录右键操作的 Shift 状态、新增删除坐标、删除命中数量及初始化加载数量，统一使用 HmiVirtualObs 日志前缀，便于排查超视距线删除后再次出现的问题。

补充保存路径、失败原因及文件写入关闭结果检查，区分内存删除与文件保存结果。
</comment><date>2026-10-03 08:22:42 +0800</date><id>8ef11502f052d1046e6cc554ceee839e0b67c3c2</id><msg>fix: 补齐 HMI 虚拟障碍线操作与持久化诊断日志</msg><path><editType>edit</editType><file>plan/prepare/prepare_hmi_virtual_obs.cpp</file></path><path><editType>edit</editType><file>data/config/cfg_func_sw.cpp</file></path><path><editType>edit</editType><file>hmi/common/pnc_graphics_view.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</affectedPath><affectedPath>data/plan/switch_helper.cpp</affectedPath><affectedPath>data/plan/switch_helper.hpp</affectedPath><affectedPath>data/obstacle/cluster_lane_change_safety_test.cpp</affectedPath><affectedPath>data/plan/switch_data.cpp</affectedPath><commitId>4eedba65046c4305a667821bb80a0fbc6edd17f6</commitId><timestamp>1790988543000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 提前准备堆场途径点变道并保留起点门禁

堆场变道此前仅按固定距离进入准备，车辆从较高速度减速后已接近
出口路口，导致 ATTEMPT 阶段反复因变道路径越过路口而取消。

复用舒适减速度、载重限制和 jerk 曲线计算减速准备距离，并预留
状态等待距离。双向 IMV 的定位加速度按行驶方向换算。
保留原有起点附近的横向变道门禁与路口保护，补充路口取消原因日志。

新增减速准备、正反向加速度、无效参数和起点门禁回归测试，
27 项变道相关测试通过；同步更新数据头文件审计指纹。
</comment><date>2026-10-03 08:49:03 +0800</date><id>4eedba65046c4305a667821bb80a0fbc6edd17f6</id><msg>fix: 提前准备堆场途径点变道并保留起点门禁</msg><path><editType>edit</editType><file>data/plan/switch_data.cpp</file></path><path><editType>edit</editType><file>data/plan/switch_helper.cpp</file></path><path><editType>edit</editType><file>data/obstacle/cluster_lane_change_safety_test.cpp</file></path><path><editType>edit</editType><file>data/plan/switch_helper.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>hmi/common/pnc_graphics_view.cpp</affectedPath><affectedPath>hmi/common/pnc_graphics_view.hpp</affectedPath><affectedPath>Testing/hmi_virtual_obs_interaction_test.cpp</affectedPath><affectedPath>Testing/CMakeLists.txt</affectedPath><commitId>6b98f901915cf71f2ff27c2afc06f4a16293feab</commitId><timestamp>1790999013000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 修复右键重复释放误删超视距线

按右键按下时的操作类型配对处理新增和删除，忽略无对应操作的释放及右键双击，避免取消短线时误删已有线且未触发保存。

取消绘制时仅清理本次临时线，保护待处理请求并忽略空列表删除，避免 Shift 变化或连续操作导致状态错乱。

新增 10 个 Qt 交互回归用例，覆盖测距双击、重复释放、Shift 切换、取消恢复及待处理请求保护。回归测试、pnc_node 分布式编译与 Proto 检查通过。
</comment><date>2026-10-03 11:43:33 +0800</date><id>6b98f901915cf71f2ff27c2afc06f4a16293feab</id><msg>fix: 修复右键重复释放误删超视距线</msg><path><editType>add</editType><file>Testing/hmi_virtual_obs_interaction_test.cpp</file></path><path><editType>edit</editType><file>Testing/CMakeLists.txt</file></path><path><editType>edit</editType><file>hmi/common/pnc_graphics_view.hpp</file></path><path><editType>edit</editType><file>hmi/common/pnc_graphics_view.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>data/plan/ssep_data.cpp</affectedPath><affectedPath>tasks/deciders/search_decider/search_decider_lifecycle.cpp</affectedPath><affectedPath>tasks/deciders/search_decider/search_decider_lifecycle.hpp</affectedPath><affectedPath>data/plan/ssep_task_context.hpp</affectedPath><affectedPath>data/map/reference/reference_road_section.cpp</affectedPath><affectedPath>Testing/reference_line_replan_test.cpp</affectedPath><affectedPath>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</affectedPath><affectedPath>docs/ssep_search_lifecycle.md</affectedPath><affectedPath>Testing/search_decider_lifecycle_test.cpp</affectedPath><affectedPath>tasks/deciders/other_decider/replan_decider.cpp</affectedPath><affectedPath>plan/scenarios/prepare_scenario.cpp</affectedPath><affectedPath>Testing/scenario_search_exit_test.cpp</affectedPath><affectedPath>data/plan/ssep_task_context.cpp</affectedPath><affectedPath>tasks/deciders/other_decider/replan_decider.hpp</affectedPath><affectedPath>data/map/reference/reference_road_section.hpp</affectedPath><commitId>7adda00e8acb9466ab1572f444ed62b94f03fe11</commitId><timestamp>1791203589000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 修复任务切换后沿用旧路口搜索路径

新任务通过连续性校验后重新检查路口规划器准入，清理不匹配的搜索路径、
备用路径和重搜上下文，避免旧引导线覆盖新路线。前置任务失败时也通过
ReplanDecider::Reset 完成清理，防止错过任务切换首帧。

基于 pnc_local_map 的实际连接和目标车道判断普通路口及入堆场搜索复用，
同路线换任务或车道索引重排不重新搜索。共用判定置于数据层，支持轻量
回放 SDK 独立链接，并同步头文件审计缓存及生命周期文档。

验证：pnc_node 和独立 embedded SDK 编译链接通过；参考线与搜索生命周期
回归测试 401 项通过、61 项跳过；git diff --check 通过。
</comment><date>2026-10-05 20:33:09 +0800</date><id>7adda00e8acb9466ab1572f444ed62b94f03fe11</id><msg>fix: 修复任务切换后沿用旧路口搜索路径</msg><path><editType>edit</editType><file>tasks/deciders/search_decider/search_decider_lifecycle.hpp</file></path><path><editType>add</editType><file>data/plan/ssep_task_context.hpp</file></path><path><editType>add</editType><file>data/plan/ssep_task_context.cpp</file></path><path><editType>edit</editType><file>plan/scenarios/prepare_scenario.cpp</file></path><path><editType>edit</editType><file>data/plan/ssep_data.cpp</file></path><path><editType>edit</editType><file>docs/ssep_search_lifecycle.md</file></path><path><editType>edit</editType><file>tasks/deciders/other_decider/replan_decider.hpp</file></path><path><editType>edit</editType><file>Testing/scenario_search_exit_test.cpp</file></path><path><editType>edit</editType><file>data/map/reference/reference_road_section.hpp</file></path><path><editType>edit</editType><file>tasks/deciders/search_decider/search_decider_lifecycle.cpp</file></path><path><editType>edit</editType><file>data/map/reference/reference_road_section.cpp</file></path><path><editType>edit</editType><file>Testing/search_decider_lifecycle_test.cpp</file></path><path><editType>edit</editType><file>tasks/deciders/other_decider/replan_decider.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</file></path><path><editType>edit</editType><file>Testing/reference_line_replan_test.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>data/other/reverse_pickup.cpp</affectedPath><affectedPath>Testing/reverse_pickup_lifecycle_test.cpp</affectedPath><commitId>cc9da62d5fc49b59e7e38f30d79e2ef808910f15</commitId><timestamp>1791209175000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 将倒车接货终点到位阈值调整为 0.8 米

将终点位置容差与搜索途经点容差分离，允许停稳车辆在目标点 0.8 米范围内进入 PARK_LOCK，解决 AT001 场景距离约 0.559 米时无法锁定的问题。

补充现场偏差、半径边界、二维距离、停稳和朝向条件回归，48 项倒车接货相关测试通过。
</comment><date>2026-10-05 22:06:15 +0800</date><id>cc9da62d5fc49b59e7e38f30d79e2ef808910f15</id><msg>fix: 将倒车接货终点到位阈值调整为 0.8 米</msg><path><editType>edit</editType><file>data/other/reverse_pickup.cpp</file></path><path><editType>edit</editType><file>Testing/reverse_pickup_lifecycle_test.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>data/obstacle/decision/obstacle_decision.cpp</affectedPath><affectedPath>data/obstacle/decision/obstacle_decision_test.cpp</affectedPath><commitId>84e522a37b53a560f2393f34260841ce9fe83301</commitId><timestamp>1791209576000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 修复静止对向车辆绕行许可反复撤销

对已确认静止且沿道路对齐的车辆使用车身朝向判断对向绕行准入，
避免静止时运动方向归为同向后持续进入跟车等待。
静止车辆靠边放行统一要求连续确认，并在短暂放行期间保留等待进度，
防止靠边证据抖动反复撤销绕行准备、清零久停计数。

新增五项连续帧回归，覆盖对向准入、靠边抖动、等待进度及运动、
切入和斜向退出。相关 175 项测试通过，pnc_node 与 pnc_replayer
分布式编译通过。
使用哈希匹配的津西 1.0.11 地图顺序重算 AT001 现场 bag 全部
460 帧，7480 持续获得许可，DP 全程左绕，所选节点无碰撞或越界标记。
</comment><date>2026-10-05 22:12:56 +0800</date><id>84e522a37b53a560f2393f34260841ce9fe83301</id><msg>fix: 修复静止对向车辆绕行许可反复撤销</msg><path><editType>edit</editType><file>data/obstacle/decision/obstacle_decision.cpp</file></path><path><editType>edit</editType><file>data/obstacle/decision/obstacle_decision_test.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>replayer/scene_data/generated/compact_scene_descriptor.pb</affectedPath><affectedPath>data/obstacle/decision/obstacle_decision_test.cpp</affectedPath><affectedPath>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</affectedPath><affectedPath>data/config/cfg_lat_plan.hpp</affectedPath><affectedPath>replayer/scene_data/generated/config_schema_inputs.json</affectedPath><affectedPath>data/obstacle/decision/obstacle_decision.cpp</affectedPath><affectedPath>Testing/compact_driving_corridor_restore_test.cpp</affectedPath><affectedPath>replayer/scene_data/obstacle_proto_codec.cpp</affectedPath><affectedPath>Testing/scene_replay_foundation_test.cpp</affectedPath><affectedPath>docs/pnc_algorithm_replay/plan_frame_field_workflow.md</affectedPath><affectedPath>data/obstacle/obstacle_decider_attr.cpp</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_encoder.cpp</affectedPath><affectedPath>data/obstacle/obstacle_decider_attr.hpp</affectedPath><affectedPath>replayer/scene_data/generated/scene_replay_api_descriptor.pb</affectedPath><affectedPath>proto/obstacle.proto</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_descriptor.pb</affectedPath><affectedPath>docs/pnc_algorithm_replay/dp_corridor_performance.md</affectedPath><commitId>d9e75b3754da247f7dadf9e36de80468fb7757aa</commitId><timestamp>1791391759000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 按实际时间确认静止车辆绕行等待

沿用既有帧数配置并按 10 Hz 换算等待时长，使用规划时间戳推进计时，避免决策频率和重复快照导致等待延长。静止对向车辆独立确认朝向，防止 bbox 短暂翻转或残留 REVERSE 状态提前放行。

补齐时钟及对向确认状态的跨帧继承、失效重置和 Full/Compact 回放合同，增加行为与协议回归测试、策略隔离重算诊断及说明。

验证：pnc_node 和 pnc_replayer 编译通过；184 项行为测试、321 项回放基础测试通过；现场 AT001 2026-10-07 bag 460 帧完整重算通过。协议生成、一致性及兼容检查通过。
</comment><date>2026-10-08 00:49:19 +0800</date><id>d9e75b3754da247f7dadf9e36de80468fb7757aa</id><msg>fix: 按实际时间确认静止车辆绕行等待</msg><path><editType>edit</editType><file>data/obstacle/decision/obstacle_decision_test.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_encoder.cpp</file></path><path><editType>edit</editType><file>data/obstacle/decision/obstacle_decision.cpp</file></path><path><editType>edit</editType><file>Testing/scene_replay_foundation_test.cpp</file></path><path><editType>edit</editType><file>data/config/cfg_lat_plan.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/scene_replay_api_descriptor.pb</file></path><path><editType>edit</editType><file>docs/pnc_algorithm_replay/dp_corridor_performance.md</file></path><path><editType>edit</editType><file>proto/obstacle.proto</file></path><path><editType>edit</editType><file>docs/pnc_algorithm_replay/plan_frame_field_workflow.md</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/compact_scene_descriptor.pb</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_descriptor.pb</file></path><path><editType>edit</editType><file>Testing/compact_driving_corridor_restore_test.cpp</file></path><path><editType>edit</editType><file>data/obstacle/obstacle_decider_attr.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/obstacle_proto_codec.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</file></path><path><editType>edit</editType><file>data/obstacle/obstacle_decider_attr.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/config_schema_inputs.json</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>.gitignore</affectedPath><affectedPath>tools/wbca_debug/tests/test_native.py</affectedPath><affectedPath>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</affectedPath><affectedPath>tasks/plan/reversing_truck_path_task.cpp</affectedPath><affectedPath>tools/pnc_proto_mapper/test_config_schema_presence.py</affectedPath><affectedPath>data/config/cfg_lat_plan.hpp</affectedPath><affectedPath>Testing/reversing_truck_path_optimizer_test.cpp</affectedPath><affectedPath>replayer/scene_data/generated/config_schema_inputs.json</affectedPath><affectedPath>tools/wbca_debug/static/app.js</affectedPath><affectedPath>data/config/cfg_lat_plan.cpp</affectedPath><affectedPath>Testing/scene_replay_foundation_test.cpp</affectedPath><affectedPath>tools/wbca_debug/static/index.html</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_encoder.cpp</affectedPath><affectedPath>config/config_truck/config_truck_reverse/plan.yaml</affectedPath><affectedPath>tools/wbca_debug/tests/test_server.py</affectedPath><affectedPath>replayer/scene_data/generated/compact_scene_descriptor.pb</affectedPath><affectedPath>tools/pnc_proto_mapper/sync_config_schema.py</affectedPath><affectedPath>replayer/scene_data/generated/full_custom_codec_coverage_audit.yaml</affectedPath><affectedPath>proto/config.proto</affectedPath><affectedPath>tools/wbca_debug/server.py</affectedPath><affectedPath>tools/wbca_debug/start_up.sh</affectedPath><affectedPath>tools/wbca_debug/worker.cpp</affectedPath><affectedPath>algorithm/wbca/path_optimization/reversing_truck_path_optimizer.cpp</affectedPath><affectedPath>tools/wbca_debug/README.md</affectedPath><affectedPath>replayer/scene_data/config_proto_codec.cpp</affectedPath><affectedPath>tools/wbca_debug/stop_server.py</affectedPath><affectedPath>Testing/reversing_path_wbca_test.cpp</affectedPath><affectedPath>algorithm/wbca/reversing_truck_wbca_manager.hpp</affectedPath><affectedPath>tools/wbca_debug/CMakeLists.txt</affectedPath><affectedPath>config/config_truck/plan.yaml</affectedPath><affectedPath>tools/wbca_debug/.gitignore</affectedPath><affectedPath>algorithm/wbca/reversing_truck_wbca_manager.cpp</affectedPath><affectedPath>tools/wbca_debug/tests/test_startup.py</affectedPath><affectedPath>docs/pnc_algorithm_replay/plan_frame_field_workflow.md</affectedPath><affectedPath>Testing/CMakeLists.txt</affectedPath><affectedPath>replayer/scene_data/generated/scene_replay_api_descriptor.pb</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_descriptor.pb</affectedPath><affectedPath>tools/wbca_debug/static/style.css</affectedPath><commitId>bf120db6bfe072f5b559374c753ec6df90fac77c</commitId><timestamp>1791440247000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>feat: add WBCA debug tool and truck reversing configuration

Add browser visualization and C++ optimizer replay with editable parameters and server startup management. Introduce the REVERSING_TRUCK scene and dedicated configuration with normal-parameter fallback, typed replay persistence, and regression coverage. Ignore local artifacts.
</comment><date>2026-10-08 14:17:27 +0800</date><id>bf120db6bfe072f5b559374c753ec6df90fac77c</id><msg>feat: add WBCA debug tool and truck reversing configuration</msg><path><editType>edit</editType><file>algorithm/wbca/reversing_truck_wbca_manager.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</file></path><path><editType>edit</editType><file>tasks/plan/reversing_truck_path_task.cpp</file></path><path><editType>add</editType><file>tools/wbca_debug/tests/test_native.py</file></path><path><editType>add</editType><file>tools/wbca_debug/worker.cpp</file></path><path><editType>edit</editType><file>config/config_truck/config_truck_reverse/plan.yaml</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_descriptor.pb</file></path><path><editType>edit</editType><file>.gitignore</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/full_custom_codec_coverage_audit.yaml</file></path><path><editType>add</editType><file>tools/wbca_debug/start_up.sh</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/compact_scene_descriptor.pb</file></path><path><editType>edit</editType><file>Testing/CMakeLists.txt</file></path><path><editType>edit</editType><file>Testing/scene_replay_foundation_test.cpp</file></path><path><editType>edit</editType><file>data/config/cfg_lat_plan.cpp</file></path><path><editType>edit</editType><file>algorithm/wbca/reversing_truck_wbca_manager.hpp</file></path><path><editType>edit</editType><file>config/config_truck/plan.yaml</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/config_schema_inputs.json</file></path><path><editType>add</editType><file>tools/wbca_debug/static/app.js</file></path><path><editType>edit</editType><file>Testing/reversing_path_wbca_test.cpp</file></path><path><editType>add</editType><file>tools/wbca_debug/CMakeLists.txt</file></path><path><editType>edit</editType><file>tools/pnc_proto_mapper/test_config_schema_presence.py</file></path><path><editType>edit</editType><file>data/config/cfg_lat_plan.hpp</file></path><path><editType>add</editType><file>tools/wbca_debug/static/index.html</file></path><path><editType>edit</editType><file>proto/config.proto</file></path><path><editType>edit</editType><file>Testing/reversing_truck_path_optimizer_test.cpp</file></path><path><editType>edit</editType><file>tools/pnc_proto_mapper/sync_config_schema.py</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_encoder.cpp</file></path><path><editType>add</editType><file>tools/wbca_debug/.gitignore</file></path><path><editType>add</editType><file>tools/wbca_debug/stop_server.py</file></path><path><editType>add</editType><file>tools/wbca_debug/server.py</file></path><path><editType>add</editType><file>tools/wbca_debug/tests/test_startup.py</file></path><path><editType>edit</editType><file>docs/pnc_algorithm_replay/plan_frame_field_workflow.md</file></path><path><editType>add</editType><file>tools/wbca_debug/README.md</file></path><path><editType>add</editType><file>tools/wbca_debug/tests/test_server.py</file></path><path><editType>add</editType><file>tools/wbca_debug/static/style.css</file></path><path><editType>edit</editType><file>replayer/scene_data/config_proto_codec.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/scene_replay_api_descriptor.pb</file></path><path><editType>edit</editType><file>algorithm/wbca/path_optimization/reversing_truck_path_optimizer.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>data/config/cfg_lat_plan.cpp</affectedPath><commitId>941625f66f78deeb2c167af93984d7f2c5611ad3</commitId><timestamp>1791440590000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>fix: reversing wbca distance_thr 0.05
</comment><date>2026-10-08 14:23:10 +0800</date><id>941625f66f78deeb2c167af93984d7f2c5611ad3</id><msg>fix: reversing wbca distance_thr 0.05</msg><path><editType>edit</editType><file>data/config/cfg_lat_plan.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>data/ssep/out_yard_junction_ec.cpp</affectedPath><commitId>ab4897ce845172ae7aed8b857e36603dca37ce9a</commitId><timestamp>1791440973000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 关闭大榭出场右转掉头终点右侧通道校准

在右转掉头出场前和出场内阶段禁用终点右侧通道校准，覆盖此前按场区和终点车道位置启用的校准标志。
</comment><date>2026-10-08 14:29:33 +0800</date><id>ab4897ce845172ae7aed8b857e36603dca37ce9a</id><msg>fix: 关闭大榭出场右转掉头终点右侧通道校准</msg><path><editType>edit</editType><file>data/ssep/out_yard_junction_ec.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>tools/wbca_debug/CMakeLists.txt</affectedPath><affectedPath>algorithm/wbca/reversing_truck_wbca_manager.hpp</affectedPath><affectedPath>tools/wbca_debug/plot_esdf_comparison.py</affectedPath><affectedPath>algorithm/wbca/reversing_truck_wbca_manager.cpp</affectedPath><affectedPath>tools/wbca_debug/README.md</affectedPath><affectedPath>tools/wbca_debug/compare_ssep_esdf.cpp</affectedPath><affectedPath>Testing/reversing_path_wbca_test.cpp</affectedPath><commitId>1084b7392cc4b7b48e68e532845c75782e04ab75</commitId><timestamp>1791447535000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>feat: fill reversing WBCA obstacle-to-corridor gaps

Close effective SSEP obstacle segments to the outward corridor boundary and retain the connected reference-side free region. Keep filled occupancy even where it overlaps the reference envelope, preserving source obstacles and clearing rules.

Add production SSEP-to-ESDF comparison and plotting tools, documentation, and regressions. Validated with distributed compilation and 46 passing WBCA tests.
</comment><date>2026-10-08 16:18:55 +0800</date><id>1084b7392cc4b7b48e68e532845c75782e04ab75</id><msg>feat: fill reversing WBCA obstacle-to-corridor gaps</msg><path><editType>edit</editType><file>Testing/reversing_path_wbca_test.cpp</file></path><path><editType>edit</editType><file>algorithm/wbca/reversing_truck_wbca_manager.cpp</file></path><path><editType>edit</editType><file>tools/wbca_debug/CMakeLists.txt</file></path><path><editType>add</editType><file>tools/wbca_debug/plot_esdf_comparison.py</file></path><path><editType>edit</editType><file>tools/wbca_debug/README.md</file></path><path><editType>edit</editType><file>algorithm/wbca/reversing_truck_wbca_manager.hpp</file></path><path><editType>add</editType><file>tools/wbca_debug/compare_ssep_esdf.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>replayer/scene_data/compact_replay_session.cpp</affectedPath><affectedPath>source/ros_source_crane_info.cpp</affectedPath><affectedPath>replayer/scene_data/compact_proto_codec.hpp</affectedPath><affectedPath>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</affectedPath><affectedPath>Testing/legacy_scene_importer_test.cpp</affectedPath><affectedPath>data/obstacle/obstacle.hpp</affectedPath><affectedPath>replayer/scene_data/compact_snapshot_stream_decoder.cpp</affectedPath><affectedPath>replayer/scene_data/compact_scene_archive_codec.cpp</affectedPath><affectedPath>Testing/hmi_collision_render_test.cpp</affectedPath><affectedPath>replayer/scene_data/versioned_compact_decoder.cpp</affectedPath><affectedPath>plan/prepare/prepare_objs.cpp</affectedPath><affectedPath>data/vehicle/crane_info.cpp</affectedPath><affectedPath>replayer/scene_data/generated/container_schema_inputs.json</affectedPath><affectedPath>proto/obstacle_compact.proto</affectedPath><affectedPath>replayer/scene_data/generated/compact_scene_descriptor.pb</affectedPath><affectedPath>data/constrain/block_data.cpp</affectedPath><affectedPath>proto/pnc_scene/compact_replay_input.proto</affectedPath><affectedPath>Testing/planframe_compat_test.cpp</affectedPath><affectedPath>Testing/crane_motion_history_test.cpp</affectedPath><affectedPath>replayer/replayer_data_process/replayer_data_extraction.cpp</affectedPath><affectedPath>replayer/scene_data/compact_numeric_policy.yaml</affectedPath><affectedPath>Testing/obstacle_detail_render_test.cpp</affectedPath><affectedPath>replayer/scene_data/live_compact_ingress.cpp</affectedPath><affectedPath>hmi/common/obstacle_details.hpp</affectedPath><affectedPath>Testing/crane_lane_policy_test.cpp</affectedPath><affectedPath>replayer/scene_data/remaining_plan_proto_codec.cpp</affectedPath><affectedPath>replayer/scene_data/compact_proto_codec.cpp</affectedPath><affectedPath>replayer/replayer_data_process/replayer_data_process.cpp</affectedPath><affectedPath>Testing/pnc_case_cli_test.cpp</affectedPath><affectedPath>replayer/scene_data/compact_snapshot_stream_decoder.hpp</affectedPath><affectedPath>replayer/scene_data/compatibility_gateway.hpp</affectedPath><affectedPath>plan/prepare/prepare_objs.hpp</affectedPath><affectedPath>replayer/scene_data/obstacle_proto_codec.cpp</affectedPath><affectedPath>Testing/scene_replay_foundation_test.cpp</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_encoder.cpp</affectedPath><affectedPath>data/vehicle/crane_info.hpp</affectedPath><affectedPath>Testing/live_compact_version_test.cpp</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_field_roles.json</affectedPath><affectedPath>replayer/scene_data/generated/full_custom_codec_coverage_audit.yaml</affectedPath><affectedPath>hmi/draw/draw_perception.cpp</affectedPath><affectedPath>replayer/scene_data/versioned_compact_decoder.hpp</affectedPath><affectedPath>tools/pnc_proto_mapper/sync_container_schema.py</affectedPath><affectedPath>data/obstacle/obstacle.cpp</affectedPath><affectedPath>replayer/scene_data/live_compact_ingress.hpp</affectedPath><affectedPath>Testing/analysis_server_app_test.cpp</affectedPath><affectedPath>replayer/scene_data/plan_frame_field_roles.csv</affectedPath><affectedPath>Testing/CMakeLists.txt</affectedPath><affectedPath>replayer/scene_data/generated/scene_replay_api_descriptor.pb</affectedPath><affectedPath>proto/obstacle.proto</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_descriptor.pb</affectedPath><commitId>a2b8741034ea418943b6d1f0a9763741a5916f35</commitId><timestamp>1791454218000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>feat: 完善桥吊动静先验关联与场景回放保存

增加桥吊状态及方向输入、感知防抖与云端状态融合、唯一桥名绑定和 HMI 诊断。
保留短时漏检运动证据并校验目标身份，修复地图桥腿投影和动静防护扩张。
Compact 升级 encoding 5，增加桥坐标量化及云端相对时间，兼容读取 3/4/5 并隔离会话版本。

验证：基础回归及策略/HMI/兼容测试、T711 绑定探针通过，pnc_node 与 pnc_replayer 编译通过。
</comment><date>2026-10-08 18:10:18 +0800</date><id>a2b8741034ea418943b6d1f0a9763741a5916f35</id><msg>feat: 完善桥吊动静先验关联与场景回放保存</msg><path><editType>edit</editType><file>Testing/analysis_server_app_test.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/live_compact_ingress.hpp</file></path><path><editType>edit</editType><file>Testing/CMakeLists.txt</file></path><path><editType>edit</editType><file>replayer/scene_data/compatibility_gateway.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/full_custom_codec_coverage_audit.yaml</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_encoder.cpp</file></path><path><editType>add</editType><file>Testing/crane_motion_history_test.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/compact_proto_codec.hpp</file></path><path><editType>edit</editType><file>Testing/legacy_scene_importer_test.cpp</file></path><path><editType>edit</editType><file>Testing/hmi_collision_render_test.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_field_roles.json</file></path><path><editType>edit</editType><file>replayer/scene_data/live_compact_ingress.cpp</file></path><path><editType>edit</editType><file>data/vehicle/crane_info.hpp</file></path><path><editType>edit</editType><file>hmi/draw/draw_perception.cpp</file></path><path><editType>edit</editType><file>data/vehicle/crane_info.cpp</file></path><path><editType>edit</editType><file>replayer/replayer_data_process/replayer_data_process.cpp</file></path><path><editType>edit</editType><file>data/obstacle/obstacle.hpp</file></path><path><editType>edit</editType><file>Testing/crane_lane_policy_test.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/compact_scene_archive_codec.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/remaining_plan_proto_codec.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_descriptor.pb</file></path><path><editType>edit</editType><file>proto/obstacle_compact.proto</file></path><path><editType>edit</editType><file>replayer/scene_data/compact_snapshot_stream_decoder.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/compact_scene_descriptor.pb</file></path><path><editType>edit</editType><file>tools/pnc_proto_mapper/sync_container_schema.py</file></path><path><editType>edit</editType><file>Testing/obstacle_detail_render_test.cpp</file></path><path><editType>edit</editType><file>plan/prepare/prepare_objs.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/plan_frame_field_roles.csv</file></path><path><editType>edit</editType><file>data/obstacle/obstacle.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/compact_proto_codec.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/versioned_compact_decoder.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/compact_numeric_policy.yaml</file></path><path><editType>add</editType><file>Testing/live_compact_version_test.cpp</file></path><path><editType>edit</editType><file>source/ros_source_crane_info.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/container_schema_inputs.json</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</file></path><path><editType>edit</editType><file>proto/pnc_scene/compact_replay_input.proto</file></path><path><editType>edit</editType><file>plan/prepare/prepare_objs.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/scene_replay_api_descriptor.pb</file></path><path><editType>edit</editType><file>data/constrain/block_data.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/compact_snapshot_stream_decoder.cpp</file></path><path><editType>edit</editType><file>replayer/replayer_data_process/replayer_data_extraction.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/compact_replay_session.cpp</file></path><path><editType>edit</editType><file>Testing/pnc_case_cli_test.cpp</file></path><path><editType>edit</editType><file>proto/obstacle.proto</file></path><path><editType>edit</editType><file>hmi/common/obstacle_details.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/versioned_compact_decoder.cpp</file></path><path><editType>edit</editType><file>Testing/scene_replay_foundation_test.cpp</file></path><path><editType>edit</editType><file>Testing/planframe_compat_test.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/obstacle_proto_codec.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>replayer/live_bridge/pnc_live_web_bridge.cpp</affectedPath><affectedPath>Testing/live_web_bridge_test.cpp</affectedPath><commitId>bf94c08ac70847527cfcdc04a0b14b512ef9f38f</commitId><timestamp>1791454219000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 回放会话切换时立即清除旧缓存和历史

将 ingress 与上层固定帧、缓存及双路历史在同一会话边界清空。
新会话首个 anchor 解码失败时，后续有效帧不再继承旧会话状态。
增加在线和离线回归，验证旧帧不可访问及新帧使用空历史。
</comment><date>2026-10-08 18:10:19 +0800</date><id>bf94c08ac70847527cfcdc04a0b14b512ef9f38f</id><msg>fix: 回放会话切换时立即清除旧缓存和历史</msg><path><editType>edit</editType><file>replayer/live_bridge/pnc_live_web_bridge.cpp</file></path><path><editType>edit</editType><file>Testing/live_web_bridge_test.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>tools/pnc_proto_mapper/test_compact_numeric_leaves.py</affectedPath><affectedPath>docs/pnc_algorithm_replay/plan_frame_field_contract_notes.md</affectedPath><affectedPath>tools/pnc_proto_mapper/audit_compact_numeric_leaves.py</affectedPath><affectedPath>replayer/scene_data/compact_numeric_leaf_contract.csv</affectedPath><affectedPath>AGENTS.md</affectedPath><affectedPath>docs/pnc_algorithm_replay/plan_frame_field_workflow.md</affectedPath><affectedPath>docs/pnc_algorithm_replay/compact_numeric_encoding_rules.md</affectedPath><affectedPath>Taskfile.yml</affectedPath><affectedPath>CMakeLists.txt</affectedPath><commitId>acdd8c703edcb79ea4298d75955ec6136962a1c0</commitId><timestamp>1791454219000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>chore: 增加 Compact 嵌套数值字段审计与编码规则

递归检查 Compact schema 数值叶子和 message 引用边，冻结存量待审清单。
新增字段或签名及可达范围变化必须显式审查，pending 不代表压缩验收完成。
接入 Taskfile 和编译门禁，补充 9 项回归测试。
统一字段级编码规则并将具体字段合同记录移入附录，精简操作手册。

验证：check-generated、check-proto-breaking 和审计单元测试通过。
</comment><date>2026-10-08 18:10:19 +0800</date><id>acdd8c703edcb79ea4298d75955ec6136962a1c0</id><msg>chore: 增加 Compact 嵌套数值字段审计与编码规则</msg><path><editType>edit</editType><file>docs/pnc_algorithm_replay/plan_frame_field_workflow.md</file></path><path><editType>edit</editType><file>AGENTS.md</file></path><path><editType>add</editType><file>docs/pnc_algorithm_replay/plan_frame_field_contract_notes.md</file></path><path><editType>add</editType><file>replayer/scene_data/compact_numeric_leaf_contract.csv</file></path><path><editType>edit</editType><file>Taskfile.yml</file></path><path><editType>add</editType><file>tools/pnc_proto_mapper/audit_compact_numeric_leaves.py</file></path><path><editType>add</editType><file>tools/pnc_proto_mapper/test_compact_numeric_leaves.py</file></path><path><editType>edit</editType><file>CMakeLists.txt</file></path><path><editType>edit</editType><file>docs/pnc_algorithm_replay/compact_numeric_encoding_rules.md</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>algorithm/wbca/path_optimization/reversing_truck_path_optimizer.cpp</affectedPath><commitId>1fab5aecef20d30f12ddebb95fbd1e9c7187eade</commitId><timestamp>1791464434000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>fix: use readable timestamps for reversing WBCA snapshots
</comment><date>2026-10-08 21:00:34 +0800</date><id>1fab5aecef20d30f12ddebb95fbd1e9c7187eade</id><msg>fix: use readable timestamps for reversing WBCA snapshots</msg><path><editType>edit</editType><file>algorithm/wbca/path_optimization/reversing_truck_path_optimizer.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>tools/wbca_debug/README.md</affectedPath><affectedPath>tools/wbca_debug/static/app.js</affectedPath><affectedPath>tools/wbca_debug/static/index.html</affectedPath><commitId>c6d2c62428b7b2ea1bc71e6aa0823969d3c3d450</commitId><timestamp>1791464446000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>feat: display trajectory bounding boxes in WBCA debug viewer
</comment><date>2026-10-08 21:00:46 +0800</date><id>c6d2c62428b7b2ea1bc71e6aa0823969d3c3d450</id><msg>feat: display trajectory bounding boxes in WBCA debug viewer</msg><path><editType>edit</editType><file>tools/wbca_debug/static/index.html</file></path><path><editType>edit</editType><file>tools/wbca_debug/README.md</file></path><path><editType>edit</editType><file>tools/wbca_debug/static/app.js</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>plan/prepare/prepare_ogm.cpp</affectedPath><affectedPath>plan/prepare/prepare_ogm.hpp</affectedPath><affectedPath>Testing/keb_gate_filter_test.cpp</affectedPath><commitId>733d4b8c0569aa43a9bbd21c0b101dd70fe47452</commitId><timestamp>1791464869000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>feat: 按道路边界收窄 OGM 精细采样区域

使用历史道路断面及规划扩宽范围生成连续掩码，按当前车辆位姿投影，
加入保护带与栅格误差余量，减少直行时道路两侧高密度采样点。
边界缺失、异常、端部及未覆盖路径保留原 12 m 路径带回退。
覆盖判定在保护带膨胀前执行，避免道路外路径被误判为已覆盖。

补充直道、弯道、位姿、异常边界、局部回退及上下层密度回归测试。
分布式编译和 22 个相关测试通过；指定 bag 前 50 帧离线 A/B 复验通过。
</comment><date>2026-10-08 21:07:49 +0800</date><id>733d4b8c0569aa43a9bbd21c0b101dd70fe47452</id><msg>feat: 按道路边界收窄 OGM 精细采样区域</msg><path><editType>edit</editType><file>Testing/keb_gate_filter_test.cpp</file></path><path><editType>edit</editType><file>plan/prepare/prepare_ogm.cpp</file></path><path><editType>edit</editType><file>plan/prepare/prepare_ogm.hpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>replayer/scene_data/compact_proto_codec.cpp</affectedPath><affectedPath>replayer/scene_data/compact_replay_session.cpp</affectedPath><affectedPath>replayer/scene_data/compact_exact_numeric_codec.cpp</affectedPath><affectedPath>replayer/scene_data/generated/compact_exact_numeric_visitor.cpp</affectedPath><affectedPath>Testing/compact_ssep_ec_geometry_test.cpp</affectedPath><affectedPath>docs/pnc_algorithm_replay/compact_exact_numeric_validation.md</affectedPath><affectedPath>Testing/compact_future_numeric_compat_test.cpp</affectedPath><affectedPath>proto/pnc_scene/compact_exact_numeric.proto</affectedPath><affectedPath>replayer/scene_data/compact_proto_codec.hpp</affectedPath><affectedPath>replayer/scene_data/compact_snapshot_stream_decoder.cpp</affectedPath><affectedPath>replayer/scene_data/compact_scene_archive_codec.cpp</affectedPath><affectedPath>CMakeLists.txt</affectedPath><affectedPath>replayer/scene_data/compact_exact_numeric_codec.hpp</affectedPath><affectedPath>replayer/scene_data/compatibility_gateway.hpp</affectedPath><affectedPath>replayer/scene_data/compact_ssep_ec_geometry_codec.hpp</affectedPath><affectedPath>docs/pnc_algorithm_replay/plan_frame_field_contract_notes.md</affectedPath><affectedPath>replayer/scene_data/versioned_compact_decoder.cpp</affectedPath><affectedPath>Testing/compact_exact_numeric_test.cpp</affectedPath><affectedPath>sink/ros_sink_snapshot_compact_scene.cpp</affectedPath><affectedPath>Testing/scene_replay_foundation_test.cpp</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_encoder.cpp</affectedPath><affectedPath>Testing/live_compact_version_test.cpp</affectedPath><affectedPath>replayer/scene_data/generated/compact_scene_descriptor.pb</affectedPath><affectedPath>proto/pnc_scene/compact_replay_input.proto</affectedPath><affectedPath>proto/pnc_scene/compact_scene.proto</affectedPath><affectedPath>replayer/scene_data/compact_numeric_policy.yaml</affectedPath><affectedPath>Taskfile.yml</affectedPath><affectedPath>tools/pnc_proto_mapper/test_exact_numeric_codegen.py</affectedPath><affectedPath>replayer/scene_data/compact_ssep_ec_geometry_codec.cpp</affectedPath><affectedPath>docs/pnc_algorithm_replay/compact_exact_numeric_coverage.csv</affectedPath><affectedPath>replayer/scene_data/live_compact_ingress.cpp</affectedPath><affectedPath>proto/CMakeLists.txt</affectedPath><affectedPath>replayer/scene_data/compact_numeric_leaf_contract.csv</affectedPath><affectedPath>docs/pnc_algorithm_replay/plan_frame_field_workflow.md</affectedPath><affectedPath>docs/pnc_algorithm_replay/compact_numeric_encoding_rules.md</affectedPath><affectedPath>Testing/CMakeLists.txt</affectedPath><affectedPath>tools/pnc_proto_mapper/generate_exact_numeric_codec.py</affectedPath><affectedPath>replayer/scene_data/generated/compact_exact_numeric_visitor.hpp</affectedPath><commitId>73b677e2e6a24f75328c27f72182986bf1f803f1</commitId><timestamp>1791465116000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>feat: 增加 Compact 精确数值编码与 SSEP 几何压缩

以静态生成的字段路径保存精确 float32、XOR 和相对时间列，保留未知列、生产帧基准及转发元数据。SSEP 几何按当前车体坐标分块量化，验证世界坐标误差不超过 2.5 mm。

writer 升级为 encoding 7，reader 兼容 3 至 7；修复未知列重复解码递归及非法锚点污染 Live 上下文的问题。补齐字段合同、生成器门禁及 Recorded/Candidate 回归。

验证：统一生成及 breaking 检查通过，分布式构建通过；470 项常规测试通过，真实 bag 前 50 帧精度和顺序/随机回放通过。
</comment><date>2026-10-08 21:11:56 +0800</date><id>73b677e2e6a24f75328c27f72182986bf1f803f1</id><msg>feat: 增加 Compact 精确数值编码与 SSEP 几何压缩</msg><path><editType>add</editType><file>Testing/compact_future_numeric_compat_test.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/compact_scene_archive_codec.cpp</file></path><path><editType>edit</editType><file>docs/pnc_algorithm_replay/plan_frame_field_workflow.md</file></path><path><editType>add</editType><file>docs/pnc_algorithm_replay/compact_exact_numeric_coverage.csv</file></path><path><editType>add</editType><file>Testing/compact_exact_numeric_test.cpp</file></path><path><editType>add</editType><file>tools/pnc_proto_mapper/test_exact_numeric_codegen.py</file></path><path><editType>add</editType><file>docs/pnc_algorithm_replay/compact_exact_numeric_validation.md</file></path><path><editType>edit</editType><file>replayer/scene_data/compact_proto_codec.cpp</file></path><path><editType>edit</editType><file>Testing/live_compact_version_test.cpp</file></path><path><editType>add</editType><file>replayer/scene_data/compact_ssep_ec_geometry_codec.hpp</file></path><path><editType>edit</editType><file>sink/ros_sink_snapshot_compact_scene.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_encoder.cpp</file></path><path><editType>edit</editType><file>CMakeLists.txt</file></path><path><editType>add</editType><file>replayer/scene_data/compact_exact_numeric_codec.cpp</file></path><path><editType>add</editType><file>tools/pnc_proto_mapper/generate_exact_numeric_codec.py</file></path><path><editType>add</editType><file>replayer/scene_data/generated/compact_exact_numeric_visitor.cpp</file></path><path><editType>edit</editType><file>Testing/scene_replay_foundation_test.cpp</file></path><path><editType>edit</editType><file>docs/pnc_algorithm_replay/plan_frame_field_contract_notes.md</file></path><path><editType>edit</editType><file>replayer/scene_data/compact_numeric_leaf_contract.csv</file></path><path><editType>add</editType><file>replayer/scene_data/compact_ssep_ec_geometry_codec.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/compact_numeric_policy.yaml</file></path><path><editType>edit</editType><file>replayer/scene_data/compatibility_gateway.hpp</file></path><path><editType>add</editType><file>proto/pnc_scene/compact_exact_numeric.proto</file></path><path><editType>add</editType><file>replayer/scene_data/compact_exact_numeric_codec.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/live_compact_ingress.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/compact_replay_session.cpp</file></path><path><editType>add</editType><file>replayer/scene_data/generated/compact_exact_numeric_visitor.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/versioned_compact_decoder.cpp</file></path><path><editType>edit</editType><file>Testing/CMakeLists.txt</file></path><path><editType>edit</editType><file>Taskfile.yml</file></path><path><editType>edit</editType><file>docs/pnc_algorithm_replay/compact_numeric_encoding_rules.md</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/compact_scene_descriptor.pb</file></path><path><editType>edit</editType><file>proto/CMakeLists.txt</file></path><path><editType>edit</editType><file>replayer/scene_data/compact_snapshot_stream_decoder.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/compact_proto_codec.hpp</file></path><path><editType>add</editType><file>Testing/compact_ssep_ec_geometry_test.cpp</file></path><path><editType>edit</editType><file>proto/pnc_scene/compact_replay_input.proto</file></path><path><editType>edit</editType><file>proto/pnc_scene/compact_scene.proto</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>docs/pnc_algorithm_replay/compact_bandwidth_boost_comparison_20261008.md</affectedPath><affectedPath>tools/pnc_encoding_benchmark/main.cpp</affectedPath><affectedPath>Testing/encoding_benchmark_test.cpp</affectedPath><affectedPath>replayer/scene_data/encoding_benchmark.cpp</affectedPath><affectedPath>replayer/scene_data/encoding_benchmark.hpp</affectedPath><affectedPath>docs/pnc_algorithm_replay/compact_bandwidth_member_details_20261008.md</affectedPath><commitId>45f4c073763271b91cd47c1f66031a03caf3d634</commitId><timestamp>1791465139000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>test: 完善 Boost 与 Compact 带宽对照

对同一原始载荷分别统计 zlib 和 Zstd level 3 大小，避免压缩器差异混入序列化比较；修正 Boost binary archive 标签，并在 Compact 基准中编码 Common 精确数值列。

增加统计不随计时迭代数变化的回归，记录最新 bag 前 50 帧的带宽组成、字段边际贡献和 SSEP 优化收益。相关测试及真实样本验证通过。
</comment><date>2026-10-08 21:12:19 +0800</date><id>45f4c073763271b91cd47c1f66031a03caf3d634</id><msg>test: 完善 Boost 与 Compact 带宽对照</msg><path><editType>edit</editType><file>replayer/scene_data/encoding_benchmark.cpp</file></path><path><editType>edit</editType><file>tools/pnc_encoding_benchmark/main.cpp</file></path><path><editType>edit</editType><file>Testing/encoding_benchmark_test.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/encoding_benchmark.hpp</file></path><path><editType>add</editType><file>docs/pnc_algorithm_replay/compact_bandwidth_boost_comparison_20261008.md</file></path><path><editType>add</editType><file>docs/pnc_algorithm_replay/compact_bandwidth_member_details_20261008.md</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>tools/pnc_proto_mapper/schema_lint.py</affectedPath><affectedPath>tools/pnc_proto_mapper/test_exact_numeric_codegen.py</affectedPath><affectedPath>tools/pnc_proto_mapper/audit_compact_numeric_leaves.py</affectedPath><affectedPath>tools/pnc_proto_mapper/generate_exact_numeric_codec.py</affectedPath><affectedPath>tools/pnc_proto_mapper/descriptor_compat.py</affectedPath><commitId>94aa9badce3aa7df9845d38bc381aa62bee4efd9</commitId><timestamp>1791508711000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 兼容 OTA 旧版 protobuf 的字段描述符

统一兼容读取 proto3_optional，旧版运行时从 wire 字段恢复标记，避免代码生成和审计检查崩溃并保留 optional 语义。

调整测试数据构造并覆盖旧版兼容分支；完整 check-generated 检查链及协议兼容检查通过。
</comment><date>2026-10-09 09:18:31 +0800</date><id>94aa9badce3aa7df9845d38bc381aa62bee4efd9</id><msg>fix: 兼容 OTA 旧版 protobuf 的字段描述符</msg><path><editType>edit</editType><file>tools/pnc_proto_mapper/generate_exact_numeric_codec.py</file></path><path><editType>edit</editType><file>tools/pnc_proto_mapper/test_exact_numeric_codegen.py</file></path><path><editType>add</editType><file>tools/pnc_proto_mapper/descriptor_compat.py</file></path><path><editType>edit</editType><file>tools/pnc_proto_mapper/schema_lint.py</file></path><path><editType>edit</editType><file>tools/pnc_proto_mapper/audit_compact_numeric_leaves.py</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>replayer/scene_data/generated/compact_scene_descriptor.pb</affectedPath><affectedPath>replayer/scene_data/compact_proto_codec.cpp</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_field_roles.json</affectedPath><affectedPath>proto/pnc_scene/compact_replay_input.proto</affectedPath><affectedPath>replayer/scene_data/generated/full_custom_codec_coverage_audit.yaml</affectedPath><affectedPath>proto/config.proto</affectedPath><affectedPath>data/config/cfg_ssep.cpp</affectedPath><affectedPath>data/ssep/forward_ec.cpp</affectedPath><affectedPath>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</affectedPath><affectedPath>replayer/scene_data/compact_numeric_policy.yaml</affectedPath><affectedPath>data/config/cfg_ssep.hpp</affectedPath><affectedPath>Testing/scene_replay_foundation_test.cpp</affectedPath><affectedPath>docs/pnc_algorithm_replay/plan_frame_field_workflow.md</affectedPath><affectedPath>config/config_truck/config_truck_reverse/ssep.yaml</affectedPath><affectedPath>replayer/scene_data/plan_frame_persistence_policy.yaml</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_encoder.cpp</affectedPath><affectedPath>replayer/scene_data/plan_frame_field_roles.csv</affectedPath><affectedPath>replayer/scene_data/full_proto_custom_encoder.cpp</affectedPath><affectedPath>replayer/scene_data/generated/scene_replay_api_descriptor.pb</affectedPath><affectedPath>Testing/ssep_scenario_config_lifecycle_test.cpp</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_descriptor.pb</affectedPath><commitId>aa3bfa60570332cfb0c9bf6719906a51bd605c2b</commitId><timestamp>1791513118000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>feat: configure reverse-pickup goal heading offsets
</comment><date>2026-10-09 10:31:58 +0800</date><id>aa3bfa60570332cfb0c9bf6719906a51bd605c2b</id><msg>feat: configure reverse-pickup goal heading offsets</msg><path><editType>edit</editType><file>data/ssep/forward_ec.cpp</file></path><path><editType>edit</editType><file>data/config/cfg_ssep.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_encoder.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/scene_replay_api_descriptor.pb</file></path><path><editType>edit</editType><file>replayer/scene_data/plan_frame_field_roles.csv</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/compact_scene_descriptor.pb</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/full_custom_codec_coverage_audit.yaml</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_field_roles.json</file></path><path><editType>edit</editType><file>Testing/ssep_scenario_config_lifecycle_test.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/compact_numeric_policy.yaml</file></path><path><editType>edit</editType><file>replayer/scene_data/full_proto_custom_encoder.cpp</file></path><path><editType>edit</editType><file>data/config/cfg_ssep.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/plan_frame_persistence_policy.yaml</file></path><path><editType>edit</editType><file>proto/config.proto</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_descriptor.pb</file></path><path><editType>edit</editType><file>Testing/scene_replay_foundation_test.cpp</file></path><path><editType>edit</editType><file>docs/pnc_algorithm_replay/plan_frame_field_workflow.md</file></path><path><editType>edit</editType><file>replayer/scene_data/compact_proto_codec.cpp</file></path><path><editType>edit</editType><file>proto/pnc_scene/compact_replay_input.proto</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</file></path><path><editType>edit</editType><file>config/config_truck/config_truck_reverse/ssep.yaml</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>Testing/ssep_scenario_config_lifecycle_test.cpp</affectedPath><affectedPath>data/ssep/forward_ec.cpp</affectedPath><affectedPath>docs/pnc_algorithm_replay/plan_frame_field_workflow.md</affectedPath><affectedPath>config/config_truck/config_truck_reverse/ssep.yaml</affectedPath><commitId>3cd7db960d7c2210d84a027b4522156a4e5ca1c0</commitId><timestamp>1791517639000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>fix: apply goal heading offsets to multi-segment parking
</comment><date>2026-10-09 11:47:19 +0800</date><id>3cd7db960d7c2210d84a027b4522156a4e5ca1c0</id><msg>fix: apply goal heading offsets to multi-segment parking</msg><path><editType>edit</editType><file>Testing/ssep_scenario_config_lifecycle_test.cpp</file></path><path><editType>edit</editType><file>docs/pnc_algorithm_replay/plan_frame_field_workflow.md</file></path><path><editType>edit</editType><file>config/config_truck/config_truck_reverse/ssep.yaml</file></path><path><editType>edit</editType><file>data/ssep/forward_ec.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>hmi/draw/draw_perception.cpp</affectedPath><affectedPath>Testing/CMakeLists.txt</affectedPath><affectedPath>Testing/cloud_obstacle_label_test.cpp</affectedPath><commitId>a01f5c2ccda9de3ea28485564a5e30811279d96b</commitId><timestamp>1791525306000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 修复无界面模式下桥吊标注的 Qt 字体崩溃风险

云端和本地界面统一复用 OpenCV 绘制虚拟桥吊标注，移除 QPainter 及其 GUI 字体依赖。使用 ASCII 标注显示障碍物 ID、绑定状态、动静状态和停止确认状态。

新增独立进程回归，覆盖无 application、QCoreApplication 和 QApplication 三种环境，以及虚拟岸桥、场桥、空集合和其他障碍物。三项 CTest 通过，pnc_node 分布式构建通过。
</comment><date>2026-10-09 13:55:06 +0800</date><id>a01f5c2ccda9de3ea28485564a5e30811279d96b</id><msg>fix: 修复无界面模式下桥吊标注的 Qt 字体崩溃风险</msg><path><editType>add</editType><file>Testing/cloud_obstacle_label_test.cpp</file></path><path><editType>edit</editType><file>hmi/draw/draw_perception.cpp</file></path><path><editType>edit</editType><file>Testing/CMakeLists.txt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>data/vehicle/deviation_status.cpp</affectedPath><affectedPath>Testing/scene_replay_foundation_test.cpp</affectedPath><commitId>0a71c2d4aecbb9034ed993a33df9bb11b5aa71ea</commitId><timestamp>1791530310000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>fix: restrict straightening triggers to final reversing segment
</comment><date>2026-10-09 15:18:30 +0800</date><id>0a71c2d4aecbb9034ed993a33df9bb11b5aa71ea</id><msg>fix: restrict straightening triggers to final reversing segment</msg><path><editType>edit</editType><file>data/vehicle/deviation_status.cpp</file></path><path><editType>edit</editType><file>Testing/scene_replay_foundation_test.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>Testing/CMakeLists.txt</affectedPath><affectedPath>data/ssep/forward_ec.cpp</affectedPath><affectedPath>Testing/bulk_goal_obstacle_filter_test.cpp</affectedPath><commitId>2ae401026d8e4d92144f624531ffe6209dc328b1</commitId><timestamp>1791616627000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 过滤 BulkIn 固定终点重叠障碍物

根据现有场景、目标引导线和末端直线距离判断终点是否固定，
过滤与终点完整头挂车身重叠的静态对象，并关联过滤对应头挂。
关联仅扩展一层，保留可调整终点场景的对象，避免跨帧残留障碍标志。

增加 15 项回归测试，覆盖车身姿态、头挂关联及固定终点判断边界。
分布式编译和过滤回归测试通过。
</comment><date>2026-10-10 15:17:07 +0800</date><id>2ae401026d8e4d92144f624531ffe6209dc328b1</id><msg>fix: 过滤 BulkIn 固定终点重叠障碍物</msg><path><editType>edit</editType><file>Testing/CMakeLists.txt</file></path><path><editType>add</editType><file>Testing/bulk_goal_obstacle_filter_test.cpp</file></path><path><editType>edit</editType><file>data/ssep/forward_ec.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>ssep/test/tractor_trailer_kinematic_weight_test.cc</affectedPath><affectedPath>ssep/keb_optimizer/cost_features/parking_geometric_curvature_constraint.h</affectedPath><affectedPath>ssep/keb_optimizer/keb_problem.cc</affectedPath><commitId>6251c424ee411adf5b3af4a815f18b0df524d036</commitId><timestamp>1791617122000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 约束牵引车停车路径的端点控制曲率

对每个行驶方向段增加四点端点曲率残差，与控制路径首尾外推公式一致，避免三点曲率合规但导出控制曲率超限。
保留换向点共用及固定尾段边界约束，覆盖非均匀采样、正负曲率和自动微分回归。

验证：128 项运动学与曲率测试通过，现场失败帧及相邻场景回放通过。
</comment><date>2026-10-10 15:25:22 +0800</date><id>6251c424ee411adf5b3af4a815f18b0df524d036</id><msg>fix: 约束牵引车停车路径的端点控制曲率</msg><path><editType>edit</editType><file>ssep/keb_optimizer/keb_problem.cc</file></path><path><editType>edit</editType><file>ssep/test/tractor_trailer_kinematic_weight_test.cc</file></path><path><editType>edit</editType><file>ssep/keb_optimizer/cost_features/parking_geometric_curvature_constraint.h</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>ssep/test/bounded_priority_queue_test.cc</affectedPath><affectedPath>ssep/coarse_search/bounded_priority_queue.h</affectedPath><affectedPath>ssep/test/CMakeLists.txt</affectedPath><commitId>d48112ba60721d6e10f0df8d4e3353e25a6c50bb</commitId><timestamp>1791617138000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 稳定 GPU 搜索候选队列的优先级顺序

有界队列的读取、删除和淘汰统一遵循搜索器传入的比较器，同代价按节点生成顺序处理，避免哈希表遍历顺序改变搜索分支。
补充等代价排序、自定义比较器及单项与批量操作一致性测试。

验证：RTX 4060 上目标帧重复 10 次均为一前一倒，输出路径完全一致；队列回归通过。
</comment><date>2026-10-10 15:25:38 +0800</date><id>d48112ba60721d6e10f0df8d4e3353e25a6c50bb</id><msg>fix: 稳定 GPU 搜索候选队列的优先级顺序</msg><path><editType>add</editType><file>ssep/test/bounded_priority_queue_test.cc</file></path><path><editType>edit</editType><file>ssep/coarse_search/bounded_priority_queue.h</file></path><path><editType>edit</editType><file>ssep/test/CMakeLists.txt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>ssep/test/ssep_planner_test.cc</affectedPath><affectedPath>ssep/test/bidirectional_candidate_validation_test.cc</affectedPath><affectedPath>ssep/scenarios/tractor_trailer_multi_segment_parking_planner.h</affectedPath><affectedPath>ssep/coarse_search/bidirectional_hybrid_astar_search_engine.cc</affectedPath><commitId>7a597f7c839fda04da7c8b747b8350013e0cfb8b</commitId><timestamp>1791617202000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 优先完成停车单次换向搜索再回退多段调整

一次换向搜索在单侧队列耗尽后允许另一侧继续连接已访问节点；参考点附近搜索失败后先放宽换向位置，再启用多段调整。
保留方向、连接碰撞及整段验收，并补充超时与匹配拒绝分类日志。
覆盖三种队列、两种扩展策略和任一侧先耗尽的回归，以及参考位置放宽后仍只换向一次的场景。
</comment><date>2026-10-10 15:26:42 +0800</date><id>7a597f7c839fda04da7c8b747b8350013e0cfb8b</id><msg>fix: 优先完成停车单次换向搜索再回退多段调整</msg><path><editType>edit</editType><file>ssep/test/bidirectional_candidate_validation_test.cc</file></path><path><editType>edit</editType><file>ssep/coarse_search/bidirectional_hybrid_astar_search_engine.cc</file></path><path><editType>edit</editType><file>ssep/test/ssep_planner_test.cc</file></path><path><editType>edit</editType><file>ssep/scenarios/tractor_trailer_multi_segment_parking_planner.h</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>ssep/test/ssep_planner_test.cc</affectedPath><affectedPath>ssep/test/parking_history_collision_test.cc</affectedPath><affectedPath>ssep/test/CMakeLists.txt</affectedPath><affectedPath>ssep/scenarios/stitching_replanner.h</affectedPath><affectedPath>ssep/scenarios/scenario_planner_factory.h</affectedPath><affectedPath>ssep/scenarios/tractor_trailer_reverse_priority_parking_planner.h</affectedPath><affectedPath>ssep/ssep_planner.cc</affectedPath><commitId>067d54ce4ae9e7baa511b58e0a94333a5c953b03</commitId><timestamp>1791617213000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 换向后优先接续有效倒车路径并保留调整回退

有效纯倒车历史先在当前环境下重新优化验收，失败后优先纯倒车搜索，再按配置允许前进调整；各尝试共享请求截止时间并保留参考引导线。
历史路径补验显式搜索与优化前方包络，保持完整运动学、端点、曲率和扫掠碰撞检查。
补充当前障碍变化、重复规划、禁止调整和截止时间回归。
</comment><date>2026-10-10 15:26:53 +0800</date><id>067d54ce4ae9e7baa511b58e0a94333a5c953b03</id><msg>fix: 换向后优先接续有效倒车路径并保留调整回退</msg><path><editType>edit</editType><file>ssep/ssep_planner.cc</file></path><path><editType>edit</editType><file>ssep/scenarios/scenario_planner_factory.h</file></path><path><editType>edit</editType><file>ssep/scenarios/tractor_trailer_reverse_priority_parking_planner.h</file></path><path><editType>add</editType><file>ssep/test/parking_history_collision_test.cc</file></path><path><editType>edit</editType><file>ssep/scenarios/stitching_replanner.h</file></path><path><editType>edit</editType><file>ssep/test/CMakeLists.txt</file></path><path><editType>edit</editType><file>ssep/test/ssep_planner_test.cc</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>AGENTS.md</affectedPath><commitId>6f24df7ce3639516a96dd06b98fd69e734a3f9a3</commitId><timestamp>1791617221000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>docs: 记录 GPU 测试服务器及验证约定

记录已授权的 GPU 测试入口、独立工作目录要求和 CPU/GPU 后端结果区分，凭据不进入仓库。
</comment><date>2026-10-10 15:27:01 +0800</date><id>6f24df7ce3639516a96dd06b98fd69e734a3f9a3</id><msg>docs: 记录 GPU 测试服务器及验证约定</msg><path><editType>edit</editType><file>AGENTS.md</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>tasks/deciders/lat_decider/path_bounds_decider.cpp</affectedPath><affectedPath>Testing/path_bounds_reference_test.cpp</affectedPath><affectedPath>Testing/pjpo_bag_regression_test.cpp</affectedPath><affectedPath>Testing/CMakeLists.txt</affectedPath><affectedPath>tasks/deciders/lat_decider/path_bounds_decider.hpp</affectedPath><commitId>35331d19db1606b201da8507d1bc1ea9dba5ce23</commitId><timestamp>1791630063000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 保留正向 DP 参考并约束历史边界融合

正向 PJPO 使用 DP 已选参考，避免通道变宽时被边界中点牵引横移；短缺或无效 DP 保留引导线及通道中点回退。
将历史边界投影到当前引导线法向后融合，只收紧当前边界，并跳过方向变化、无效或不相交历史。

验证：17 项路径参考及边界专项测试通过；249 帧现场记录输入的 CPU DP/PJPO 独立帧对照均求解成功。新增可选 bag 回归入口，结果不作为闭环验证。
</comment><date>2026-10-10 19:01:03 +0800</date><id>35331d19db1606b201da8507d1bc1ea9dba5ce23</id><msg>fix: 保留正向 DP 参考并约束历史边界融合</msg><path><editType>edit</editType><file>Testing/CMakeLists.txt</file></path><path><editType>add</editType><file>Testing/path_bounds_reference_test.cpp</file></path><path><editType>edit</editType><file>tasks/deciders/lat_decider/path_bounds_decider.hpp</file></path><path><editType>add</editType><file>Testing/pjpo_bag_regression_test.cpp</file></path><path><editType>edit</editType><file>tasks/deciders/lat_decider/path_bounds_decider.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>ssep/test/ssep_planner_test.cc</affectedPath><affectedPath>ssep/test/CMakeLists.txt</affectedPath><affectedPath>ssep/test/parking_search_stages_test.cc</affectedPath><affectedPath>ssep/scenarios/scenario_planner_factory.h</affectedPath><affectedPath>ssep/scenarios/tractor_trailer_reverse_priority_parking_planner.h</affectedPath><affectedPath>ssep/scenarios/search_guide_fallback_planner.h</affectedPath><affectedPath>ssep/ssep_planner.cc</affectedPath><commitId>a384e9210a1979458ac5b374906e9f6aa7308cb9</commitId><timestamp>1791630223000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 剩余停车优先纯倒车并统一历史回退预算

无途经点的剩余停车依次尝试带引导纯倒车、普通纯倒车和允许前进调整的兜底，缺少历史时同样生效。构建、搜索与优化共享请求绝对截止时间。
历史重优化最多占三分之一预算；失败后按剩余预算重建阶段，避免搜索尚未开始就过期。保留显式禁止调整、OrderedVia 和碰撞验收语义。

验证：停车相关 114 项测试通过；六帧 GPU 版本回放成功，18:04:32 从三段变为一段倒车。剩余倒车分支实际采用 CPU 搜索。预算分配仍可能压缩复杂调整场景的搜索时间。
</comment><date>2026-10-10 19:03:43 +0800</date><id>a384e9210a1979458ac5b374906e9f6aa7308cb9</id><msg>fix: 剩余停车优先纯倒车并统一历史回退预算</msg><path><editType>edit</editType><file>ssep/test/CMakeLists.txt</file></path><path><editType>edit</editType><file>ssep/scenarios/search_guide_fallback_planner.h</file></path><path><editType>add</editType><file>ssep/test/parking_search_stages_test.cc</file></path><path><editType>edit</editType><file>ssep/scenarios/scenario_planner_factory.h</file></path><path><editType>edit</editType><file>ssep/test/ssep_planner_test.cc</file></path><path><editType>edit</editType><file>ssep/scenarios/tractor_trailer_reverse_priority_parking_planner.h</file></path><path><editType>edit</editType><file>ssep/ssep_planner.cc</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>ssep/coarse_search/bidirectional_hybrid_astar_search_engine.h</affectedPath><affectedPath>ssep/test/ssep_planner_test.cc</affectedPath><affectedPath>ssep/test/bidirectional_candidate_validation_test.cc</affectedPath><affectedPath>ssep/scenarios/tractor_trailer_multi_segment_parking_planner.h</affectedPath><affectedPath>ssep/coarse_search/bidirectional_hybrid_astar_search_engine.cc</affectedPath><commitId>e4d57b5c54ce7716fb347acefd0bffb296ec6440</commitId><timestamp>1791630226000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 在单次停车换向中择优主挂车姿态

以输入途经点主挂车朝向及换向附近曲率变化评价粗搜索候选，限定额外时间、迭代和候选数量；多次调整兜底仍沿用首解策略。
评分前排除几何换向无效或绕圈路径，超时保留已验证粗候选，停止条件满足后不再扩展当前批次；单树终点命中时清理旧双树连接。

验证：114 项停车测试通过，六帧 GPU 版本回放及独立碰撞、机械曲率检查通过。18:01:54 实际 GPU 换向夹角从约 14.6 度降至 2.4 度，保留一前一倒；11:32:46 保持原四次换向。未提高平滑权重或放宽物理验收。
</comment><date>2026-10-10 19:03:46 +0800</date><id>e4d57b5c54ce7716fb347acefd0bffb296ec6440</id><msg>fix: 在单次停车换向中择优主挂车姿态</msg><path><editType>edit</editType><file>ssep/coarse_search/bidirectional_hybrid_astar_search_engine.cc</file></path><path><editType>edit</editType><file>ssep/coarse_search/bidirectional_hybrid_astar_search_engine.h</file></path><path><editType>edit</editType><file>ssep/scenarios/tractor_trailer_multi_segment_parking_planner.h</file></path><path><editType>edit</editType><file>ssep/test/ssep_planner_test.cc</file></path><path><editType>edit</editType><file>ssep/test/bidirectional_candidate_validation_test.cc</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>ssep/coarse_search/bidirectional_hybrid_astar_search_engine.h</affectedPath><affectedPath>ssep/coarse_search/bounded_priority_queue.h</affectedPath><affectedPath>ssep/test/bounded_priority_queue_test.cc</affectedPath><affectedPath>ssep/test/bidirectional_candidate_validation_test.cc</affectedPath><affectedPath>ssep/coarse_search/bidirectional_hybrid_astar_search_engine.cc</affectedPath><commitId>dea1739cc22e2186ef4ed491af976e6193fed47a</commitId><timestamp>1791792781000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>feat: 为双向 Beam 搜索保留可恢复候选

增加可选备用队列，在活动队列耗尽或快速尝试期限到达时恢复未扩展候选。
恢复沿用原搜索图、已访问状态及总截止时间，默认 Beam 行为保持不变。
覆盖同格更新、终点优先、清理生命周期和不重复根扩展等回归测试。
</comment><date>2026-10-12 16:13:01 +0800</date><id>dea1739cc22e2186ef4ed491af976e6193fed47a</id><msg>feat: 为双向 Beam 搜索保留可恢复候选</msg><path><editType>edit</editType><file>ssep/coarse_search/bidirectional_hybrid_astar_search_engine.h</file></path><path><editType>edit</editType><file>ssep/coarse_search/bidirectional_hybrid_astar_search_engine.cc</file></path><path><editType>edit</editType><file>ssep/coarse_search/bounded_priority_queue.h</file></path><path><editType>edit</editType><file>ssep/test/bounded_priority_queue_test.cc</file></path><path><editType>edit</editType><file>ssep/test/bidirectional_candidate_validation_test.cc</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>ssep/coarse_search/searcher_builders/tractor_trailer_multi_segment_parking_bidirectional_searcher_builder.cc</affectedPath><affectedPath>ssep/scenarios/parking_reference_region.h</affectedPath><affectedPath>ssep/test/ssep_planner_test.cc</affectedPath><affectedPath>data/ssep/forward_ec.cpp</affectedPath><affectedPath>ssep/test/trailer_search_guide_test.cc</affectedPath><affectedPath>ssep/coarse_search/evaluator/trailer_search_guide.h</affectedPath><affectedPath>ssep/coarse_search/evaluator/trailer_search_guide.cc</affectedPath><affectedPath>ssep/common/utils/search_guide_body_sweep.h</affectedPath><affectedPath>ssep/scenarios/scenario_planner_factory.h</affectedPath><affectedPath>ssep/scenarios/search_guide_fallback_planner.h</affectedPath><affectedPath>ssep/scenarios/tractor_trailer_multi_segment_parking_planner.h</affectedPath><commitId>00aa2bf3aa1f4c22e17dce1aa96c606508df2be0</commitId><timestamp>1791792804000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 优化停车引导匹配并约束换向搜索

在配置的换向区域内匹配引导入口，并校验最终任务换向位置。
仅过滤与本次匹配引导车身扫掠范围重叠的静态对象，过滤后要求阶段与引导一致。
按作业约定忽略静态行人；换向姿态采用相对参考的软排序，保留必要夹角。
GPU 简单搜索使用有预算上限的 Beam 候选恢复及完整队列兼容兜底。
引导与普通分支比较共享搜索、优化和验收截止时间，到期保留已有可行解。

验证：PNC 与 GPU 回放编译通过，56 项相关 C++ 测试通过。
当前配置 21 例通过 18 例，3 个既有问题保持记录；35 个原输入均有解且段数与坐标不变。
</comment><date>2026-10-12 16:13:24 +0800</date><id>00aa2bf3aa1f4c22e17dce1aa96c606508df2be0</id><msg>fix: 优化停车引导匹配并约束换向搜索</msg><path><editType>edit</editType><file>ssep/coarse_search/searcher_builders/tractor_trailer_multi_segment_parking_bidirectional_searcher_builder.cc</file></path><path><editType>add</editType><file>ssep/common/utils/search_guide_body_sweep.h</file></path><path><editType>edit</editType><file>ssep/coarse_search/evaluator/trailer_search_guide.cc</file></path><path><editType>edit</editType><file>ssep/test/trailer_search_guide_test.cc</file></path><path><editType>edit</editType><file>ssep/scenarios/tractor_trailer_multi_segment_parking_planner.h</file></path><path><editType>edit</editType><file>data/ssep/forward_ec.cpp</file></path><path><editType>edit</editType><file>ssep/coarse_search/evaluator/trailer_search_guide.h</file></path><path><editType>add</editType><file>ssep/scenarios/parking_reference_region.h</file></path><path><editType>edit</editType><file>ssep/scenarios/scenario_planner_factory.h</file></path><path><editType>edit</editType><file>ssep/scenarios/search_guide_fallback_planner.h</file></path><path><editType>edit</editType><file>ssep/test/ssep_planner_test.cc</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>ssep/test/local_regression/tt_guide_filtered_gpu_manifest.tsv</affectedPath><affectedPath>ssep/test/local_regression/tt_recent_parking_quality.py</affectedPath><affectedPath>ssep/test/local_regression/tt_recent_parking_adjustment_quality.json</affectedPath><affectedPath>ssep/test/local_regression/tt_recent_parking_cases.json</affectedPath><affectedPath>ssep/test/local_regression/README.md</affectedPath><affectedPath>ssep/test/local_regression/test_configured_regression.py</affectedPath><affectedPath>ssep/test/local_regression/run_ssep_regression.py</affectedPath><affectedPath>ssep/test/local_regression/test_recent_regression_backend.py</affectedPath><affectedPath>ssep/test/local_regression/test_remote_replay_cli.py</affectedPath><affectedPath>ssep/test/local_regression/tt_recent_parking_two_segments_quality.json</affectedPath><affectedPath>ssep/test/local_regression/tt_recent_parking_configured_gpu_manifest.tsv</affectedPath><affectedPath>ssep/test/local_regression/tt_recent_parking_gpu_manifest.tsv</affectedPath><affectedPath>ssep/test/local_regression/test_tt_recent_parking_quality.py</affectedPath><affectedPath>ssep/test/local_regression/tt_recent_parking_cpu_manifest.tsv</affectedPath><affectedPath>ssep/test/local_regression/test_tt_parking_regression.py</affectedPath><affectedPath>ssep/test/local_regression/tt_recent_parking_pure_reverse_quality.json</affectedPath><affectedPath>ssep/test/local_regression/tt_recent_parking_cusp_cpu_quality.json</affectedPath><affectedPath>ssep/test/local_regression/tt_recent_parking_cusp_gpu_quality.json</affectedPath><affectedPath>ssep/test/local_regression/remote_replay_cli.py</affectedPath><affectedPath>ssep/test/local_regression/tt_current_15m_input_overlay.json</affectedPath><commitId>c5759f0ea4257941b03b86f319ec01f04396fc49</commitId><timestamp>1791792878000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>test: 固化停车场景回归并完善远端超时清理

新增 CPU、GPU 和当前 15 米配置清单，原始输入引用指定 NAS 回归目录。
显式记录配置覆盖及输入哈希，校验实际搜索后端、新策略日志和终点航向。
远端回放使用独立进程组与截止时间，覆盖传输超时、取消及子孙进程清理。
本地执行器有界清理进程组，避免继承输出管道导致超时后永久等待。
记录场景质量、已知失败及归档路径，不放宽原有验收条件。

验证：Python 运行 129 项测试，1 项因缺少本地数据跳过，其余通过。
21 例当前配置与35例原始输入均完成 GPU 服务器对照，实际后端分别记录。
</comment><date>2026-10-12 16:14:38 +0800</date><id>c5759f0ea4257941b03b86f319ec01f04396fc49</id><msg>test: 固化停车场景回归并完善远端超时清理</msg><path><editType>add</editType><file>ssep/test/local_regression/test_remote_replay_cli.py</file></path><path><editType>add</editType><file>ssep/test/local_regression/remote_replay_cli.py</file></path><path><editType>add</editType><file>ssep/test/local_regression/tt_recent_parking_cusp_gpu_quality.json</file></path><path><editType>add</editType><file>ssep/test/local_regression/tt_recent_parking_cpu_manifest.tsv</file></path><path><editType>add</editType><file>ssep/test/local_regression/tt_recent_parking_cusp_cpu_quality.json</file></path><path><editType>edit</editType><file>ssep/test/local_regression/run_ssep_regression.py</file></path><path><editType>add</editType><file>ssep/test/local_regression/tt_recent_parking_cases.json</file></path><path><editType>add</editType><file>ssep/test/local_regression/tt_recent_parking_gpu_manifest.tsv</file></path><path><editType>add</editType><file>ssep/test/local_regression/tt_recent_parking_quality.py</file></path><path><editType>add</editType><file>ssep/test/local_regression/test_recent_regression_backend.py</file></path><path><editType>edit</editType><file>ssep/test/local_regression/test_tt_parking_regression.py</file></path><path><editType>edit</editType><file>ssep/test/local_regression/README.md</file></path><path><editType>add</editType><file>ssep/test/local_regression/test_configured_regression.py</file></path><path><editType>add</editType><file>ssep/test/local_regression/tt_guide_filtered_gpu_manifest.tsv</file></path><path><editType>add</editType><file>ssep/test/local_regression/tt_recent_parking_two_segments_quality.json</file></path><path><editType>add</editType><file>ssep/test/local_regression/tt_recent_parking_pure_reverse_quality.json</file></path><path><editType>add</editType><file>ssep/test/local_regression/test_tt_recent_parking_quality.py</file></path><path><editType>add</editType><file>ssep/test/local_regression/tt_current_15m_input_overlay.json</file></path><path><editType>add</editType><file>ssep/test/local_regression/tt_recent_parking_adjustment_quality.json</file></path><path><editType>add</editType><file>ssep/test/local_regression/tt_recent_parking_configured_gpu_manifest.tsv</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>ssep/scenarios/tractor_trailer_multi_segment_parking_planner.h</affectedPath><commitId>f399a832e9fdcc31eda810061591a7a15d85f385</commitId><timestamp>1791797691000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 补充停车兼容搜索的起点半曲率采样

在引导匹配且限制换向范围的 GPU 完整队列重试中，将起点前进曲率从三档补充为五档，改善离散采样对初始航向的敏感性。搜索结束后清除临时采样器，保持后续扩展、碰撞验收和总搜索预算。

22:23:50 场景在当前 15 米配置下由五段降为一前一倒，换向夹角约 1.26 度。24 例配置回归无新增失败，保留三例既有失败；相关 C++ 和 Python 测试及 PNC、GPU 回放编译通过。
</comment><date>2026-10-12 17:34:51 +0800</date><id>f399a832e9fdcc31eda810061591a7a15d85f385</id><msg>fix: 补充停车兼容搜索的起点半曲率采样</msg><path><editType>edit</editType><file>ssep/scenarios/tractor_trailer_multi_segment_parking_planner.h</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>ssep/test/local_regression/tt_recent_parking_configured_gpu_manifest.tsv</affectedPath><affectedPath>ssep/test/local_regression/tt_recent_parking_cases.json</affectedPath><affectedPath>ssep/test/local_regression/README.md</affectedPath><affectedPath>ssep/test/local_regression/test_configured_regression.py</affectedPath><affectedPath>ssep/test/local_regression/tt_recent_parking_gpu_manifest.tsv</affectedPath><commitId>e63f42ff881e1ab34895c79561c80c52fbd814be</commitId><timestamp>1791797708000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>test: 固化津西夜间停车场景及起点采样回归

新增 22:50:56、22:51:50 和 22:23:50 的原始文件来源及哈希，固定当前配置套件的两段、单段倒车和连续单换向验收要求。原始数据引用持久 NAS 目录。

配置套件扩为 24 例，21 例质量通过、23 例搜索成功，三例既有失败保留。文档记录路径净空变化、GPU 实际执行后端及结果归档位置，并明确异常例的原始参数不属于已修复验收范围。
</comment><date>2026-10-12 17:35:08 +0800</date><id>e63f42ff881e1ab34895c79561c80c52fbd814be</id><msg>test: 固化津西夜间停车场景及起点采样回归</msg><path><editType>edit</editType><file>ssep/test/local_regression/tt_recent_parking_cases.json</file></path><path><editType>edit</editType><file>ssep/test/local_regression/README.md</file></path><path><editType>edit</editType><file>ssep/test/local_regression/test_configured_regression.py</file></path><path><editType>edit</editType><file>ssep/test/local_regression/tt_recent_parking_configured_gpu_manifest.tsv</file></path><path><editType>edit</editType><file>ssep/test/local_regression/tt_recent_parking_gpu_manifest.tsv</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>ssep/offboard/servers/scene_vis_server.cc</affectedPath><affectedPath>ssep/offboard/servers/scene_audit_html.h</affectedPath><affectedPath>ssep/offboard/servers/scene_vis_html_template.cc</affectedPath><affectedPath>ssep/test/local_regression/README.md</affectedPath><affectedPath>ssep/test/local_regression/test_scene_audit.py</affectedPath><affectedPath>ssep/test/local_regression/test_scene_audit_ui.py</affectedPath><affectedPath>ssep/offboard/servers/scene_audit.h</affectedPath><commitId>34e4130ef1a4f64b5b09047a3504b1123540b0a3</commitId><timestamp>1791803196000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>feat: 增加 SSEP 全天场景巡检与多条件筛选界面

在可视化服务中增加目录巡检入口，按实际场景类型分类，支持多类别、状态、时间、换向次数、夹角及关键词组合筛选。逐例保留失败证据、未知状态与覆盖范围，复用嵌入模式查看完整路径。

支持导出所选原始场景及来源清单，供本地 skill 深入分析；车端仅执行只读初筛。增加独立端口启动选项、缺失输入和异常文件保护，以及接口、筛选、分析包和嵌入模式测试。

验证：275 个现场场景完成初筛；可视化程序编译通过，13 项相关测试及真实浏览器筛选与路径展示检查通过。
</comment><date>2026-10-12 19:06:36 +0800</date><id>34e4130ef1a4f64b5b09047a3504b1123540b0a3</id><msg>feat: 增加 SSEP 全天场景巡检与多条件筛选界面</msg><path><editType>add</editType><file>ssep/offboard/servers/scene_audit_html.h</file></path><path><editType>add</editType><file>ssep/offboard/servers/scene_audit.h</file></path><path><editType>edit</editType><file>ssep/offboard/servers/scene_vis_html_template.cc</file></path><path><editType>add</editType><file>ssep/test/local_regression/test_scene_audit_ui.py</file></path><path><editType>add</editType><file>ssep/test/local_regression/test_scene_audit.py</file></path><path><editType>edit</editType><file>ssep/offboard/servers/scene_vis_server.cc</file></path><path><editType>edit</editType><file>ssep/test/local_regression/README.md</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>data/obstacle/decision/obstacle_decision.hpp</affectedPath><affectedPath>tasks/plan/keb_utils.cpp</affectedPath><affectedPath>data/obstacle/decision/obstacle_decision_test.cpp</affectedPath><affectedPath>data/boundary/driving_corridor.cpp</affectedPath><affectedPath>docs/pnc_algorithm_replay/plan_frame_field_contract_notes.md</affectedPath><affectedPath>data/obstacle/decision/obstacle_decision.cpp</affectedPath><affectedPath>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</affectedPath><affectedPath>data/boundary/driving_corridor_test.cpp</affectedPath><commitId>f08a4edd489ccc91c4ad2797d5d25a2ad8bca142</commitId><timestamp>1791808313000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 修复障碍物与凸包切换导致的绕行占用中断

复用静止证据缓存，在 obj、TYPE_CLUSTER 和感知 ID 切换时保留当前观测与固定历史区域的交集。
支持拆框、合框的多片占用续期，DP 与 KEB 分片消费；严格的一对一策略恢复和未初始化限制保持独立。
复用凸包 tracker 的运动确认迟滞，并处理量化后的微小凹角；运动冲突同时禁止旧缓存续期和新缓存重建。
补充真实现场几何、运动撤销、缓存生命周期及 DP/KEB 回归，同步缓存合同说明与生成审计指纹。

验证：211 项决策、走廊和 KEB 测试通过，生成文件与 Proto 兼容性检查通过。
</comment><date>2026-10-12 20:31:53 +0800</date><id>f08a4edd489ccc91c4ad2797d5d25a2ad8bca142</id><msg>fix: 修复障碍物与凸包切换导致的绕行占用中断</msg><path><editType>edit</editType><file>data/boundary/driving_corridor.cpp</file></path><path><editType>edit</editType><file>data/obstacle/decision/obstacle_decision_test.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</file></path><path><editType>edit</editType><file>data/obstacle/decision/obstacle_decision.hpp</file></path><path><editType>edit</editType><file>data/obstacle/decision/obstacle_decision.cpp</file></path><path><editType>edit</editType><file>tasks/plan/keb_utils.cpp</file></path><path><editType>edit</editType><file>data/boundary/driving_corridor_test.cpp</file></path><path><editType>edit</editType><file>docs/pnc_algorithm_replay/plan_frame_field_contract_notes.md</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>Testing/compact_driving_corridor_restore_test.cpp</affectedPath><commitId>4b77e7e1763020ab188ac2d24fe674b3fc0d8bbd</commitId><timestamp>1791808328000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>test: 增加静止占用跨帧续接的场景回归

顺序重算时从历史推进障碍物决策和 runtime cluster tracker，避免每帧录制缓存掩盖续接问题。
增加帧范围选择、指定静止锚点逐帧续期断言，以及缓存、运动证据和占用片诊断输出。
使用现场 bag 与精确津西地图验证问题区间 246 帧，锚点持续续期且无占用中断。
该入口保留其他录制规划输入，用于局部决策和边界回归，不作为完整闭环验证。
</comment><date>2026-10-12 20:32:08 +0800</date><id>4b77e7e1763020ab188ac2d24fe674b3fc0d8bbd</id><msg>test: 增加静止占用跨帧续接的场景回归</msg><path><editType>edit</editType><file>Testing/compact_driving_corridor_restore_test.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>data/obstacle/decision/obstacle_decision.cpp</affectedPath><affectedPath>data/obstacle/decision/obstacle_decision_test.cpp</affectedPath><commitId>7a56b34c30768cc83b9987c83da571d0d30351c4</commitId><timestamp>1791811848000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 修复静止绕行证据匹配中的非凸轮廓崩溃

统一校验 cluster 观测与跟踪轮廓，在计算 IoU 前重建非凸轮廓的凸包，
并检查凸性、有限坐标和有效面积，避免 ComputeOverlap 断言退出。
无效轮廓跳过静止证据匹配并限频记录，保留成熟度、IoU 阈值及唯一匹配约束。

补充观测、跟踪及双方非凸，以及空轮廓、零面积、NaN、Inf 回归。
验证：29 项静止绕行证据测试通过；津西 AT001 复现 bag 修复前触发同一断言，
修复后全部 610 帧 CPU 障碍物决策重算通过；pnc_node 构建通过。
</comment><date>2026-10-12 21:30:48 +0800</date><id>7a56b34c30768cc83b9987c83da571d0d30351c4</id><msg>fix: 修复静止绕行证据匹配中的非凸轮廓崩溃</msg><path><editType>edit</editType><file>data/obstacle/decision/obstacle_decision.cpp</file></path><path><editType>edit</editType><file>data/obstacle/decision/obstacle_decision_test.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>data/obstacle/ogm.cpp</affectedPath><affectedPath>Testing/ogm_distance_equivalence_test.cpp</affectedPath><affectedPath>data/boundary/driving_corridor.cpp</affectedPath><affectedPath>data/obstacle/ogm.hpp</affectedPath><affectedPath>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</affectedPath><affectedPath>replayer/scene_data/generated/state_schema_inputs.json</affectedPath><affectedPath>replayer/scene_data/generated/container_schema_inputs.json</affectedPath><affectedPath>data/boundary/driving_corridor_test.cpp</affectedPath><commitId>b497f7f479b7d1322a192cb791e6ad9bf6371dd5</commitId><timestamp>1791812078000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 修复侧避栅格越界导致的走廊末端假收缩

按完整走廊扫描范围和道路墙扩展独立侧避栅格，并重画原始占用；
修正默认栅格宽度计算，避免转弯后走廊超出原感知范围。
距离与来源查询统一检查覆盖范围，图外返回 0/NONE，停止重复读取边缘道路墙。
扩容前检查像素索引及面积，异常几何清空当前图，避免溢出及旧图残留。

补充四向扩容、原图外真实点云/实体占用、异常几何和查询边界回归；
同步 OGM 头文件注释对应的生成审计指纹，不改变序列化字段。

验证：68 槽位 Icecream 集群编译通过；216 项走廊测试和 19 项 OGM/恢复测试通过。
AT001 2026-10-11 场景 960 帧 CPU 走廊/DP 回放通过；截图帧末端 27 个断面
假分隔消失，s=116～125 m 的真实障碍约束保持一致。
</comment><date>2026-10-12 21:34:38 +0800</date><id>b497f7f479b7d1322a192cb791e6ad9bf6371dd5</id><msg>fix: 修复侧避栅格越界导致的走廊末端假收缩</msg><path><editType>edit</editType><file>data/boundary/driving_corridor_test.cpp</file></path><path><editType>edit</editType><file>data/obstacle/ogm.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/container_schema_inputs.json</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/state_schema_inputs.json</file></path><path><editType>edit</editType><file>Testing/ogm_distance_equivalence_test.cpp</file></path><path><editType>edit</editType><file>data/obstacle/ogm.cpp</file></path><path><editType>edit</editType><file>data/boundary/driving_corridor.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>data/ssep/forward_ec.cpp</affectedPath><affectedPath>Testing/bulk_goal_obstacle_filter_test.cpp</affectedPath><commitId>42db84b5c336772d0bbac5ebc3178d1c6587182d</commitId><timestamp>1791817391000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 防止前向搜索障碍过滤触发退化多边形崩溃

前向搜索直接过滤聚类障碍，避免使用其可能退化的包围盒。对其余候选静态障碍在重叠过滤前统一校验尺寸、有限坐标和实际面积；无效时记录限频诊断并拒绝本轮环境构建，避免断言退出或误删实体障碍。

补充聚类过滤、零尺寸、非有限坐标、面积阈值、大坐标退化及失败恢复回归。项目分布式构建通过，BulkGoalObstacleFilterTest 的 22 项测试全部通过。
</comment><date>2026-10-12 23:03:11 +0800</date><id>42db84b5c336772d0bbac5ebc3178d1c6587182d</id><msg>fix: 防止前向搜索障碍过滤触发退化多边形崩溃</msg><path><editType>edit</editType><file>data/ssep/forward_ec.cpp</file></path><path><editType>edit</editType><file>Testing/bulk_goal_obstacle_filter_test.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>tasks/deciders/long_decider/constrain_decider.cpp</affectedPath><commitId>702c7f224ec69a8214a30645c1874c33f1bff59e</commitId><timestamp>1791817611000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 修正倒车对象停车线位置偏移

在 CreateStGraphConstrain 中按路径方向选择车头或车尾偏移，
修正倒车对象停车线仍使用车头偏移导致的位置错误。
沿用已有匹配点计算与 HMI 绘制流程，保留负停车余量和路径边界检查。

验证：pnc_node、pnc_replayer 分布式编译通过；
obstacle_stop_constraint_stabilizer_test 回归通过。
</comment><date>2026-10-12 23:06:51 +0800</date><id>702c7f224ec69a8214a30645c1874c33f1bff59e</id><msg>fix: 修正倒车对象停车线位置偏移</msg><path><editType>edit</editType><file>tasks/deciders/long_decider/constrain_decider.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>data/plan/cloud_trajectory.cpp</affectedPath><affectedPath>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</affectedPath><affectedPath>data/config/cfg_env_const.hpp</affectedPath><affectedPath>Testing/CMakeLists.txt</affectedPath><affectedPath>Testing/cloud_trajectory_test.cpp</affectedPath><commitId>61c6c6cc095a165dc8ac730fb4338b2fd6238a64</commitId><timestamp>1791861603000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>feat: 云端短轨迹平滑补接引导线

保持代码默认长度为 64 米，按配置目标长度延伸不足的云端轨迹。
使用五次曲线衔接位置、切向和曲率，按几何弧长插值，支持倒车并保留停车限长。
修正挂车配对点插值并续算延长段航向；当前位置兜底、无效数据和生成失败不保留补接结果。
回退时清空历史车道与长度信息，刷新配置头文件对应的序列化审计摘要。

验证：19 项轨迹生成回归通过；使用 Icecream 三节点、68 槽编译。
</comment><date>2026-10-13 11:20:03 +0800</date><id>61c6c6cc095a165dc8ac730fb4338b2fd6238a64</id><msg>feat: 云端短轨迹平滑补接引导线</msg><path><editType>edit</editType><file>data/plan/cloud_trajectory.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</file></path><path><editType>edit</editType><file>data/config/cfg_env_const.hpp</file></path><path><editType>edit</editType><file>Testing/CMakeLists.txt</file></path><path><editType>add</editType><file>Testing/cloud_trajectory_test.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>sink/ros_sink_cloud_trajectory.hpp</affectedPath><affectedPath>Testing/CMakeLists.txt</affectedPath><affectedPath>sink/ros_sink_cloud_trajectory.cpp</affectedPath><affectedPath>Testing/cloud_search_indices_test.cpp</affectedPath><commitId>5f32e34a4aff5812353716ac70ae4e18fde3571a</commitId><timestamp>1791861628000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>feat: 上报 SSEP 搜索起终点的云端轨迹下标

使用 reserved_uint8s[0/1] 保存当前搜索起终点在主云端轨迹中的下标。
255 表示无效，254 表示已驶过、超出展示范围或超过可编码下标范围。
按实际发布坐标匹配，结合 ego 位置与完整引导线处理历史保留点、倒车及 U 形弯道越界。
保护 float32 边界、无效消息和主备轨迹分隔，并清除失效搜索留下的旧下标。

验证：14 项下标编码回归通过；完整 33 项专项回归通过。
</comment><date>2026-10-13 11:20:28 +0800</date><id>5f32e34a4aff5812353716ac70ae4e18fde3571a</id><msg>feat: 上报 SSEP 搜索起终点的云端轨迹下标</msg><path><editType>edit</editType><file>Testing/CMakeLists.txt</file></path><path><editType>edit</editType><file>sink/ros_sink_cloud_trajectory.cpp</file></path><path><editType>add</editType><file>Testing/cloud_search_indices_test.cpp</file></path><path><editType>edit</editType><file>sink/ros_sink_cloud_trajectory.hpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>Testing/CMakeLists.txt</affectedPath><affectedPath>Testing/median_filter_test.cpp</affectedPath><affectedPath>math/filter/median_filter.hpp</affectedPath><commitId>810084baed68775234dd2852410f72b7bab54596</commitId><timestamp>1791870301000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 清理中值滤波器重置时遗留的删除记录

重置 DualHeap 时同步清空 delayed_，避免历史删除标记误删新窗口样本，造成滤波结果错误及空堆访问风险。

新增独立回归测试，覆盖重置后重复样本、跨帧复制、反复重置恢复及不同窗口的连续输入，并逐帧对照排序窗口中值。原实现对照用例失败，修复后 4 项测试通过，pnc_node 分布式构建通过。
</comment><date>2026-10-13 13:45:01 +0800</date><id>810084baed68775234dd2852410f72b7bab54596</id><msg>fix: 清理中值滤波器重置时遗留的删除记录</msg><path><editType>edit</editType><file>Testing/CMakeLists.txt</file></path><path><editType>edit</editType><file>math/filter/median_filter.hpp</file></path><path><editType>add</editType><file>Testing/median_filter_test.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</affectedPath><affectedPath>tasks/plan/keb_utils.cpp</affectedPath><affectedPath>data/obstacle/decision/obstacle_decision.hpp</affectedPath><affectedPath>data/obstacle/decision/obstacle_decision_test.cpp</affectedPath><affectedPath>data/obstacle/decision/obstacle_decision.cpp</affectedPath><commitId>c3109a22f4f6b3aac46840c71d0580f26e76614d</commitId><timestamp>1791875299000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></author><authorEmail>wuyanjun110@126.com</authorEmail><comment>fix: 排除 KEB 的 cut-in 障碍物实体框

KEB 障碍物准入复用普通走廊筛选，移除 cut-in 对象的特殊准入，避免切入让速场景施加横向实体框约束。

更新注释及头文件审计指纹，补充历史绕行承诺、成熟度旁路和退出 cut-in 后恢复准入的回归断言。分布式编译通过，43 项相关回归测试通过。
</comment><date>2026-10-13 15:08:19 +0800</date><id>c3109a22f4f6b3aac46840c71d0580f26e76614d</id><msg>fix: 排除 KEB 的 cut-in 障碍物实体框</msg><path><editType>edit</editType><file>data/obstacle/decision/obstacle_decision_test.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</file></path><path><editType>edit</editType><file>tasks/plan/keb_utils.cpp</file></path><path><editType>edit</editType><file>data/obstacle/decision/obstacle_decision.cpp</file></path><path><editType>edit</editType><file>data/obstacle/decision/obstacle_decision.hpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>data/vehicle/related_offset.hpp</affectedPath><affectedPath>proto/offline_capture.proto</affectedPath><affectedPath>Testing/load_snap_data_compat_test.cpp</affectedPath><affectedPath>data/decide/decide_reaction.hpp</affectedPath><affectedPath>data/app/cmd/cmd_pover.hpp</affectedPath><affectedPath>CMakeLists.txt</affectedPath><affectedPath>math/piecewise_jerk/piecewise_jerk_traj.hpp</affectedPath><affectedPath>data/app/cmd/cmd_update_config.hpp</affectedPath><affectedPath>data/vehicle/localization_estimate.hpp</affectedPath><affectedPath>algorithm/wbca/wbca_failure_csv.cpp</affectedPath><affectedPath>math/curve1d/curve1d.hpp</affectedPath><affectedPath>data/plan/start_point_data.cpp</affectedPath><affectedPath>math/curve1d/cubic_polynomial_curve1d.hpp</affectedPath><affectedPath>data/map/reference/reference_segment.cpp</affectedPath><affectedPath>data/ssep/offline_region_contour_loader.cpp</affectedPath><affectedPath>offboard/bag_to_keb_scene/bag_reader.cc</affectedPath><affectedPath>data/app/cmd/cmd_reduce_safe_distance.hpp</affectedPath><affectedPath>data/app/cmd/cmd_remote.hpp</affectedPath><affectedPath>data/ctrl/ctrl_data.cpp</affectedPath><affectedPath>math/smoothing/fem_pos_deviation_interface.h</affectedPath><affectedPath>Testing/wbca_failure_csv_test.cpp</affectedPath><affectedPath>data/constrain/temporary_stop_data.hpp</affectedPath><affectedPath>replayer/scene_data/platoon_proto_codec.hpp</affectedPath><affectedPath>Testing/platoon_follow_target_builder_test.cpp</affectedPath><affectedPath>Testing/ssep_path_corridor_test.cpp</affectedPath><affectedPath>data/constrain/block_data.cpp</affectedPath><affectedPath>math/util/polygon_2d.hpp</affectedPath><affectedPath>proto/pnc_scene/compact_plan_frame_fields.proto</affectedPath><affectedPath>data/obstacle/decision/obstacle_decision_test.cpp</affectedPath><affectedPath>math/curve1d/quartic_polynomial_curve1d_rt.hpp</affectedPath><affectedPath>data/constrain/disable_stop_scope.hpp</affectedPath><affectedPath>io/serialization.hpp</affectedPath><affectedPath>math/piecewise_jerk/constant_jerk_traj.hpp</affectedPath><affectedPath>data/plan/center_line_info.hpp</affectedPath><affectedPath>data/vehicle/spreader_protect.hpp</affectedPath><affectedPath>tools/pnc_proto_mapper/baseline/boost_v15_evidence.json</affectedPath><affectedPath>data/app/reaction/app_reaction.hpp</affectedPath><affectedPath>data/map/routing/birdge_position_ack.hpp</affectedPath><affectedPath>data/common/path_point.hpp</affectedPath><affectedPath>data/plan/path_direction_data.hpp</affectedPath><affectedPath>io/proto_io.hpp</affectedPath><affectedPath>data/dp_poly_path/dp_road_graph.hpp</affectedPath><affectedPath>math/curve1d/linear_polynomial_curve1d.hpp</affectedPath><affectedPath>replayer/scene_data/plan_frame_persistence_policy.yaml</affectedPath><affectedPath>data/vehicle/priori_bay_info.hpp</affectedPath><affectedPath>data/constrain/pnc_junction.hpp</affectedPath><affectedPath>ssep/test/trailer_heuristic_table_test.cc</affectedPath><affectedPath>math/util/box_2d.cpp</affectedPath><affectedPath>io/geometry_proto_persistence.cpp</affectedPath><affectedPath>data/config/cfg_env_const.hpp</affectedPath><affectedPath>data/vehicle/related_motion_tf.hpp</affectedPath><affectedPath>data/vehicle/trailer_state.hpp</affectedPath><affectedPath>ssep/test/CMakeLists.txt</affectedPath><affectedPath>data/obstacle/reverse_lane_approach.hpp</affectedPath><affectedPath>data/map/pnc_map/routing_extension/routing_data.hpp</affectedPath><affectedPath>data/app/cmd/cmd_fsm/ifsm.hpp</affectedPath><affectedPath>data/wbca/grid_map/esdf_map.hpp</affectedPath><affectedPath>ssep/offboard/main_test/main_test_diagonal.cc</affectedPath><affectedPath>math/util/vec_2d.cpp</affectedPath><affectedPath>data/config/cfg_static.hpp</affectedPath><affectedPath>data/lattice/ogm_crash_data.cpp</affectedPath><affectedPath>data/ssep/ssep_ec.hpp</affectedPath><affectedPath>replayer/scene_data/generated/trajectory_schema_inputs.json</affectedPath><affectedPath>Testing/proto_roundtrip.hpp</affectedPath><affectedPath>math/curve1d/polynomial_curve1d.hpp</affectedPath><affectedPath>data/plan/side_pass_data.hpp</affectedPath><affectedPath>proto/scenario.proto</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_field_roles.json</affectedPath><affectedPath>replayer/scene_data/generated/full_custom_codec_coverage_audit.yaml</affectedPath><affectedPath>Testing/fixtures/wbca_truck_collision_gradient_8.csv</affectedPath><affectedPath>data/obstacle/ogm.hpp</affectedPath><affectedPath>data/platoon/platoon_info.hpp</affectedPath><affectedPath>data/app/cmd/cmd_cancel_lock.hpp</affectedPath><affectedPath>data/semantic/semantic_description.hpp</affectedPath><affectedPath>data/vehicle/station_manager.hpp</affectedPath><affectedPath>data/snapshot_data.hpp</affectedPath><affectedPath>Testing/jerk_limited_stop_test.cpp</affectedPath><affectedPath>data/obstacle/obstacle.cpp</affectedPath><affectedPath>data/map/routing/routing_response.cpp</affectedPath><affectedPath>data/config/cfg_dynamic.hpp</affectedPath><affectedPath>data/scenario/scenario_manager.hpp</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_member_inputs.json</affectedPath><affectedPath>data/app/cmd/cmd_reversing.hpp</affectedPath><affectedPath>replayer/scene_data/config_proto_codec.hpp</affectedPath><affectedPath>data/app/cmd/cmd_right.hpp</affectedPath><affectedPath>data/ssep/ex_lane_change_ec.hpp</affectedPath><affectedPath>data/plan/guide_line_base.hpp</affectedPath><affectedPath>ssep/data_structures/ssep_input.hpp</affectedPath><affectedPath>data/obstacle/cluster_motion_tracker.hpp</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_descriptor.pb</affectedPath><affectedPath>data/vehicle/request_routing_data.cpp</affectedPath><affectedPath>data/app/cmd/cmd_fsm/cmd_fsm.hpp</affectedPath><affectedPath>math/filter/median_filter.hpp</affectedPath><affectedPath>data/obstacle/perception_obstacle.hpp</affectedPath><affectedPath>ssep/data_structures/proto_persistence.cc</affectedPath><affectedPath>data/map/pnc_map/routing_extension/routing_data.cpp</affectedPath><affectedPath>data/other/flow_control.hpp</affectedPath><affectedPath>data/vehicle/vehicle_chassis.hpp</affectedPath><affectedPath>data/config/cfg_func_sw.cpp</affectedPath><affectedPath>data/app/cmd/cmd_force.hpp</affectedPath><affectedPath>ssep/data_structures/ssep_output.hpp</affectedPath><affectedPath>common/util/switch_value_steady.hpp</affectedPath><affectedPath>data/plan/side_pass_data.cpp</affectedPath><affectedPath>data/ssep/open_space_ec.hpp</affectedPath><affectedPath>data/wbca/grid_map/grid_map.hpp</affectedPath><affectedPath>data/config/cfg_platoon.hpp</affectedPath><affectedPath>data/plan/guide_line.hpp</affectedPath><affectedPath>data/vehicle/lock_station_pts.hpp</affectedPath><affectedPath>data/map/routing/routing_response.h</affectedPath><affectedPath>data/app/cmd/cmd_startup.hpp</affectedPath><affectedPath>data/ssep/ssep_activation.cpp</affectedPath><affectedPath>data/plan/path_data.cpp</affectedPath><affectedPath>data/plan/switch_data.hpp</affectedPath><affectedPath>data/map/reference/bends_decider/bend_decider.hpp</affectedPath><affectedPath>data/map/reference/bends_decider/bends_decider.hpp</affectedPath><affectedPath>data/app/cmd/cmd_align.hpp</affectedPath><affectedPath>data/map/reference/reference_road_section.cpp</affectedPath><affectedPath>data/vehicle/vehicle_command.hpp</affectedPath><affectedPath>data/app/cmd/cmd_cancel_expand.hpp</affectedPath><affectedPath>math/curve2d/curve2d.hpp</affectedPath><affectedPath>Testing/encoding_benchmark_test.cpp</affectedPath><affectedPath>tools/pnc_proto_mapper/audit_boost_nested_serialization.py</affectedPath><affectedPath>data/plan/reference_line_info.hpp</affectedPath><affectedPath>ssep/offboard/ssep_input_provider.cc</affectedPath><affectedPath>data/app/cmd/cmd_cancel_safe.hpp</affectedPath><affectedPath>data/config/cfg_safe_const.hpp</affectedPath><affectedPath>data/config/cfg_system.hpp</affectedPath><affectedPath>ssep/data_structures/type_definition.h</affectedPath><affectedPath>data/obstacle/ogm.cpp</affectedPath><affectedPath>replayer/scene_data/encoding_benchmark.cpp</affectedPath><affectedPath>data/map/reference/bends_decider/bend_attr.hpp</affectedPath><affectedPath>ssep/protos/snapshot.proto</affectedPath><affectedPath>Testing/platoon_lane_change_test.cpp</affectedPath><affectedPath>data/obstacle/prediction_trajectory.hpp</affectedPath><affectedPath>data/constrain/longitude_data.hpp</affectedPath><affectedPath>data/vehicle/cloud_pnc_config.hpp</affectedPath><affectedPath>data/obstacle/obstacle_decider_attr.hpp</affectedPath><affectedPath>math/curve2d/arc_curve2d.hpp</affectedPath><affectedPath>ssep/offboard/main_test/main_ssep.cc</affectedPath><affectedPath>data/vehicle/container_compensate_info.hpp</affectedPath><affectedPath>data/common/trajectory.hpp</affectedPath><affectedPath>data/app/cmd/cmd_unlock.hpp</affectedPath><affectedPath>data/constrain/longitude_constrain.cpp</affectedPath><affectedPath>data/app/cmd/cmd_base.hpp</affectedPath><affectedPath>data/vehicle/vehicle_config.hpp</affectedPath><affectedPath>algorithm/plan/pjpo.hpp</affectedPath><affectedPath>common/time/time.hpp</affectedPath><affectedPath>Testing/wbca_leader_history_test.cpp</affectedPath><affectedPath>data/map/pnc_map/pnc_map_path.hpp</affectedPath><affectedPath>data/vehicle/vehicle_pose.hpp</affectedPath><affectedPath>data/common/sl_boundary.hpp</affectedPath><affectedPath>data/map/reference/reference_segment.hpp</affectedPath><affectedPath>ssep/offboard/main_test/main_test_zhoushan.cc</affectedPath><affectedPath>data/app/cmd/cmd_bend_cloud_decider.hpp</affectedPath><affectedPath>data/vehicle/vehicle_status.hpp</affectedPath><affectedPath>data/common/point.hpp</affectedPath><affectedPath>data/semantic/vehicle.hpp</affectedPath><affectedPath>data/plan/predict_path.hpp</affectedPath><affectedPath>data/config/cfg_hdmap.hpp</affectedPath><affectedPath>Testing/scene_replay_foundation_test.cpp</affectedPath><affectedPath>data/semantic/state.hpp</affectedPath><affectedPath>data/map/envelop/map_envelops.hpp</affectedPath><affectedPath>tools/pnc_proto_mapper/audit_full_custom_codecs.py</affectedPath><affectedPath>data/common/path.cpp</affectedPath><affectedPath>data/map/envelop/map_envelop.hpp</affectedPath><affectedPath>replayer/scene_data/full_proto_custom_encoder.cpp</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_encoder.cpp</affectedPath><affectedPath>ssep/offboard/tools/executable/main_obstacle_publisher.cc</affectedPath><affectedPath>docs/platoon/wbca_failure_replay.md</affectedPath><affectedPath>Testing/platoon_safety_test.cpp</affectedPath><affectedPath>data/wbca/wbca_data.cpp</affectedPath><affectedPath>data/hmi_frame.hpp</affectedPath><affectedPath>tools/pnc_encoding_benchmark/main.cpp</affectedPath><affectedPath>data/decide/error_info.hpp</affectedPath><affectedPath>data/boundary/path_boundary.hpp</affectedPath><affectedPath>data/app/cmd/cmd_traffic_light.hpp</affectedPath><affectedPath>replayer/scene_data/generated/compact_typed_field_codec.cpp</affectedPath><affectedPath>data/ssep/bridge_junction_ec.hpp</affectedPath><affectedPath>data/config/cfg_lat_decide.hpp</affectedPath><affectedPath>ssep/offboard/scene_replay/CMakeLists.txt</affectedPath><affectedPath>data/config/cfg_long_plan.hpp</affectedPath><affectedPath>ssep/data_structures/ssep_recursion_obstacle.hpp</affectedPath><affectedPath>math/curve2d/icurve.hpp</affectedPath><affectedPath>data/obstacle/block.hpp</affectedPath><affectedPath>data/vehicle/vehicle_state.hpp</affectedPath><affectedPath>math/util/frenet_point.hpp</affectedPath><affectedPath>data/app/cmd/cmd_dead_lock_force_park.hpp</affectedPath><affectedPath>proto/CMakeLists.txt</affectedPath><affectedPath>Testing/fixtures/wbca_truck_collision_gradient_7.csv</affectedPath><affectedPath>data/app/app_data.hpp</affectedPath><affectedPath>data/vehicle/cmd_feedback_state.hpp</affectedPath><affectedPath>replayer/scene_data/generated/state_schema_inputs.json</affectedPath><affectedPath>replayer/scene_data/plan_frame_field_roles.csv</affectedPath><affectedPath>core/snapshot_async.cpp</affectedPath><affectedPath>data/constrain/block_data.hpp</affectedPath><affectedPath>data/ssep/field_region_contour.h</affectedPath><affectedPath>ssep/offboard/main_test/main_ssep_input.cc</affectedPath><affectedPath>replayer/scene_data/generated/scene_replay_api_descriptor.pb</affectedPath><affectedPath>Testing/ssep_scenario_config_lifecycle_test.cpp</affectedPath><affectedPath>data/vehicle/priori_bay_info.cpp</affectedPath><affectedPath>data/app/cmd/cmd_fright.hpp</affectedPath><affectedPath>data/ssep/out_yard_junction_ec.hpp</affectedPath><affectedPath>data/vehicle/trailer_state.cpp</affectedPath><affectedPath>source/ros_source_replayer_snapshot.cpp</affectedPath><affectedPath>data/common/guide_path.hpp</affectedPath><affectedPath>data/plan/guide_line_info.cpp</affectedPath><affectedPath>Testing/legacy_scene_importer_test.cpp</affectedPath><affectedPath>math/util/vec_2d.hpp</affectedPath><affectedPath>io/snapshot_proto_persistence.cpp</affectedPath><affectedPath>data/app/cmd/cmd_dead_lock.hpp</affectedPath><affectedPath>data/plan/predict_path.cpp</affectedPath><affectedPath>data/common/sl_point.hpp</affectedPath><affectedPath>math/curve1d/quintic_polynomial_curve1d_rt.hpp</affectedPath><affectedPath>ssep/offboard/generate_scene_data/CMakeLists.txt</affectedPath><affectedPath>data/app/cmd/cmd_left.hpp</affectedPath><affectedPath>replayer/scene_data/generated/container_schema_inputs.json</affectedPath><affectedPath>data/common/path.hpp</affectedPath><affectedPath>docs/compact_proto_boost_removal.md</affectedPath><affectedPath>data/ssep/ssep_ec.cpp</affectedPath><affectedPath>replayer/scene_data/platoon_proto_codec.cpp</affectedPath><affectedPath>tools/pnc_proto_mapper/sync_config_schema.py</affectedPath><affectedPath>replayer/scene_data/generated/compact_scene_descriptor.pb</affectedPath><affectedPath>data/lattice/stop_planning_context.hpp</affectedPath><affectedPath>data/vehicle/veh_his_states.cpp</affectedPath><affectedPath>data/vehicle/lock_station_data.hpp</affectedPath><affectedPath>data/app/cmd/cmd_remote_ctrl.hpp</affectedPath><affectedPath>Testing/platoon_failure_csv_test.cpp</affectedPath><affectedPath>io/basic_proto_persistence.cpp</affectedPath><affectedPath>data/lattice/ogm_crash_data.hpp</affectedPath><affectedPath>data/map/pnc_map/road_segments.h</affectedPath><affectedPath>ssep/common/math/vec2d.h</affectedPath><affectedPath>data/constrain/disable_stop_range.hpp</affectedPath><affectedPath>data/obstacle/cluster_motion_tracker.cpp</affectedPath><affectedPath>proto/platoon.proto</affectedPath><affectedPath>replayer/scene_data/plan_frame_full_mapping.yaml</affectedPath><affectedPath>math/curve1d/quartic_polynomial_curve1d.hpp</affectedPath><affectedPath>data/plan_frame.hpp</affectedPath><affectedPath>math/smoothing/qp_spline_interface.h</affectedPath><affectedPath>data/vehicle/yard_occupy_info.hpp</affectedPath><affectedPath>data/vehicle/request_routing_data.hpp</affectedPath><affectedPath>ssep/offboard/sdk/ssep_activation_impl.cc</affectedPath><affectedPath>data/plan/ssep_data.hpp</affectedPath><affectedPath>data/app/cmd/cmd_lock.hpp</affectedPath><affectedPath>replayer/scene_data/generated/plan_frame_decoder.cpp</affectedPath><affectedPath>data/vehicle/vehicle_destination.hpp</affectedPath><affectedPath>replayer/scene_data/encoding_benchmark.hpp</affectedPath><affectedPath>data/ssep/ssep_common.hpp</affectedPath><affectedPath>data/app/cmd/cmd_set_target.hpp</affectedPath><affectedPath>data/config/cfg_lat_plan.hpp</affectedPath><affectedPath>data/object.hpp</affectedPath><affectedPath>data/vehicle/trailer_posture.hpp</affectedPath><affectedPath>ssep/offboard/main_test/main_ssep_test.cc</affectedPath><affectedPath>Testing/fixtures/wbca_segment_short_seam_failure.csv</affectedPath><affectedPath>data/semantic/semantic_description.cpp</affectedPath><affectedPath>data/plan/smooth_data.hpp</affectedPath><affectedPath>common/time/duration.hpp</affectedPath><affectedPath>data/vehicle/crane_info.hpp</affectedPath><affectedPath>data/config/cfg_station.hpp</affectedPath><affectedPath>core/hmi_sync.cpp</affectedPath><affectedPath>Testing/fixtures/wbca_platoon_low_speed_failure.csv</affectedPath><affectedPath>tools/pnc_proto_mapper/schema_lint.py</affectedPath><affectedPath>data/config/cfg_decision.hpp</affectedPath><affectedPath>math/util/polygon_2d.cpp</affectedPath><affectedPath>tools/pnc_proto_mapper/draft_persistence_policy.py</affectedPath><affectedPath>data/plan/reference_line_info.cpp</affectedPath><affectedPath>data/map/pnc_map/pnc_map.hpp</affectedPath><affectedPath>data/app/reaction/app_reaction.cpp</affectedPath><affectedPath>data/app/cmd/cmd_estop.hpp</affectedPath><affectedPath>ssep/offboard/main_test/main_test_park.cc</affectedPath><affectedPath>data/app/cmd/cmd_fleft.hpp</affectedPath><affectedPath>data/plan/keb_visualize_data.hpp</affectedPath><affectedPath>data/vehicle/parallel_driving_state.hpp</affectedPath><affectedPath>data/map/reference/center_line.hpp</affectedPath><affectedPath>data/dp_poly_path/dp_road_graph.cpp</affectedPath><affectedPath>data/ssep/into_yard_junction_ec.hpp</affectedPath><affectedPath>data/ssep/trailer_parking_safety.cpp</affectedPath><affectedPath>math/util/box_2d.hpp</affectedPath><affectedPath>data/app/cmd/cmd_fsm/fsm_base.hpp</affectedPath><affectedPath>data/ssep/forward_ec.hpp</affectedPath><affectedPath>sink/ros_sink_snapshot.cpp</affectedPath><affectedPath>data/plan/ssep_data.cpp</affectedPath><affectedPath>data/ssep/field_junction_ec.hpp</affectedPath><affectedPath>data/ssep/seaside_junction_ec.hpp</affectedPath><affectedPath>Testing/fixtures/wbca_segment_tail_timing_failure.csv</affectedPath><affectedPath>math/curve1d/quintic_polynomial_curve1d.hpp</affectedPath><affectedPath>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</affectedPath><affectedPath>data/obstacle/obstacle.hpp</affectedPath><affectedPath>ssep/param_loader/param.h</affectedPath><affectedPath>data/app/cmd/cmd_bend_right.hpp</affectedPath><affectedPath>replayer/scene_importer/legacy_boost_plan_frame_decoder.cpp</affectedPath><affectedPath>data/plan/cloud_trajectory.hpp</affectedPath><affectedPath>data/app/fsm_interface.hpp</affectedPath><affectedPath>replayer/scene_data/compact_custom_field_proto_codec.cpp</affectedPath><affectedPath>data/vehicle/traffic_light_data.hpp</affectedPath><affectedPath>data/vehicle/deviation_status.hpp</affectedPath><affectedPath>data/vehicle/crane_info.cpp</affectedPath><affectedPath>data/common/point.cpp</affectedPath><affectedPath>io/persistence.hpp</affectedPath><affectedPath>tools/pnc_proto_mapper/proto_only_lint.py</affectedPath><affectedPath>data/app/fsm/stop_reason.hpp</affectedPath><affectedPath>replayer/replayer_data_process/load_snap_data.cpp</affectedPath><affectedPath>data/config/iconfig.hpp</affectedPath><affectedPath>Testing/planframe_compat_test.cpp</affectedPath><affectedPath>data/map/reference/reference_line.hpp</affectedPath><affectedPath>data/ssep/normal_junction_ec.hpp</affectedPath><affectedPath>replayer/scene_data/config_proto_codec.cpp</affectedPath><affectedPath>data/app/cmd/cmd_bend_left.hpp</affectedPath><affectedPath>data/wbca/wbca_data.hpp</affectedPath><affectedPath>ssep/offboard/path_drawing_tool/CMakeLists.txt</affectedPath><affectedPath>ssep/CMakeLists.txt</affectedPath><affectedPath>ssep/data_structures/ssep_recursion_og.hpp</affectedPath><affectedPath>data/map/routing/flip_seaside_map.hpp</affectedPath><affectedPath>data/ssep/trailer_parking_safety.hpp</affectedPath><affectedPath>math/curve1d/quartic_bezier_curve1d.hpp</affectedPath><affectedPath>data/ctrl/lka_start_up.hpp</affectedPath><affectedPath>Testing/proto_persistence_test.cpp</affectedPath><affectedPath>data/app/cmd/cmd_replan.hpp</affectedPath><affectedPath>sink/ros_sink_snapshot.hpp</affectedPath><affectedPath>data/constrain/longitude_constrain.hpp</affectedPath><affectedPath>data/obstacle/block.cpp</affectedPath><affectedPath>proto/pnc_scene/full_plan_frame.proto</affectedPath><affectedPath>data/vehicle/lane_detection.hpp</affectedPath><affectedPath>data/ssep/reverse_ec.hpp</affectedPath><affectedPath>data/map/routing/destination.hpp</affectedPath><affectedPath>replayer/scene_data/remaining_plan_proto_codec.cpp</affectedPath><affectedPath>proto/plan_data.proto</affectedPath><affectedPath>replayer/scene_data/full_custom_codec_exclusions.yaml</affectedPath><affectedPath>replayer/sdk/planframe_compat.cpp</affectedPath><affectedPath>data/constrain/constrain_data.hpp</affectedPath><affectedPath>data/semantic/semantic.hpp</affectedPath><affectedPath>ssep/data_structures/map_element_polyline.h</affectedPath><affectedPath>data/config/cfg_func_sw.hpp</affectedPath><affectedPath>data/plan/start_point_data.hpp</affectedPath><affectedPath>data/vehicle/related_offset.cpp</affectedPath><affectedPath>data/obstacle/perception_obstacle.cpp</affectedPath><affectedPath>data/plan/guide_line_info.hpp</affectedPath><affectedPath>data/config/cfg_calib_ssep.hpp</affectedPath><affectedPath>data/ctrl/ctrl_data.hpp</affectedPath><affectedPath>replayer/scene_data/generated/config_schema_inputs.json</affectedPath><affectedPath>data/constrain/long_target.hpp</affectedPath><affectedPath>data/vehicle/cloud_lane_change_status.hpp</affectedPath><affectedPath>ssep/offboard/tools/executable/inference_ml_trajectory_cli.cc</affectedPath><affectedPath>docs/pnc_algorithm_replay/plan_frame_persistence_catalog.md</affectedPath><affectedPath>data/plan/path_data.hpp</affectedPath><affectedPath>math/util/discrete_match_helper.hpp</affectedPath><affectedPath>data/lattice/lattice_trajectory1d.hpp</affectedPath><affectedPath>data/vehicle/veh_his_states.hpp</affectedPath><affectedPath>ssep/coarse_search/evaluator/shortest_path_heur_table.h</affectedPath><affectedPath>proto/config.proto</affectedPath><affectedPath>math/filter/mean_filter.hpp</affectedPath><affectedPath>data/plan/switch_data.cpp</affectedPath><affectedPath>data/common/trajectory_point.hpp</affectedPath><affectedPath>data/lattice/lattice_debug_data.hpp</affectedPath><affectedPath>replayer/scene_data/generated/boost_compact_persistence_diff.yaml</affectedPath><affectedPath>data/vehicle/cloud_pnc_config.cpp</affectedPath><affectedPath>scenarios/scenario_interface.hpp</affectedPath><affectedPath>common/util/error_code_data.hpp</affectedPath><affectedPath>ssep/offboard/servers/CMakeLists.txt</affectedPath><affectedPath>data/map/pnc_map/pnc_map_path.cpp</affectedPath><affectedPath>data/constrain/disable_stop_range.cpp</affectedPath><affectedPath>Testing/obstacle_stop_constraint_stabilizer_test.cpp</affectedPath><affectedPath>ssep/offboard/generate_path_repository/CMakeLists.txt</affectedPath><affectedPath>ssep/data_structures/type_definition.cc</affectedPath><affectedPath>tools/pnc_proto_mapper/test_proto_only_lint.py</affectedPath><affectedPath>ssep/offboard/CMakeLists.txt</affectedPath><affectedPath>data/map/reference/reference_road_section.hpp</affectedPath><affectedPath>data/plan_frame.cpp</affectedPath><affectedPath>data/app/cmd/cmd_nstop.hpp</affectedPath><affectedPath>data/common/trajectory.cpp</affectedPath><affectedPath>ssep/offboard/main_test/main_test_qhd.cc</affectedPath><commitId>b064d692a1b500df5f561fa141a12cb76cb90e2f</commitId><timestamp>1791875305000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>Migrate remaining Boost serialization to typed Protobuf
</comment><date>2026-10-13 15:08:25 +0800</date><id>b064d692a1b500df5f561fa141a12cb76cb90e2f</id><msg>Migrate remaining Boost serialization to typed Protobuf</msg><path><editType>edit</editType><file>data/map/reference/reference_road_section.cpp</file></path><path><editType>edit</editType><file>data/app/cmd/cmd_reduce_safe_distance.hpp</file></path><path><editType>edit</editType><file>ssep/common/math/vec2d.h</file></path><path><editType>edit</editType><file>data/app/cmd/cmd_fsm/cmd_fsm.hpp</file></path><path><editType>edit</editType><file>core/hmi_sync.cpp</file></path><path><editType>edit</editType><file>tools/pnc_proto_mapper/proto_only_lint.py</file></path><path><editType>edit</editType><file>Testing/ssep_scenario_config_lifecycle_test.cpp</file></path><path><editType>edit</editType><file>CMakeLists.txt</file></path><path><editType>edit</editType><file>ssep/offboard/ssep_input_provider.cc</file></path><path><editType>edit</editType><file>ssep/offboard/generate_scene_data/CMakeLists.txt</file></path><path><editType>edit</editType><file>math/curve1d/quintic_polynomial_curve1d.hpp</file></path><path><editType>edit</editType><file>data/other/flow_control.hpp</file></path><path><editType>edit</editType><file>data/app/cmd/cmd_pover.hpp</file></path><path><editType>edit</editType><file>tools/pnc_proto_mapper/schema_lint.py</file></path><path><editType>edit</editType><file>common/util/error_code_data.hpp</file></path><path><editType>edit</editType><file>data/ssep/open_space_ec.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_member_inputs.json</file></path><path><editType>edit</editType><file>data/snapshot_data.hpp</file></path><path><editType>edit</editType><file>math/curve2d/curve2d.hpp</file></path><path><editType>edit</editType><file>data/lattice/stop_planning_context.hpp</file></path><path><editType>edit</editType><file>data/app/cmd/cmd_estop.hpp</file></path><path><editType>edit</editType><file>data/plan/ssep_data.hpp</file></path><path><editType>edit</editType><file>data/plan/start_point_data.hpp</file></path><path><editType>edit</editType><file>math/curve1d/curve1d.hpp</file></path><path><editType>edit</editType><file>data/app/cmd/cmd_unlock.hpp</file></path><path><editType>edit</editType><file>Testing/legacy_scene_importer_test.cpp</file></path><path><editType>edit</editType><file>data/ssep/normal_junction_ec.hpp</file></path><path><editType>edit</editType><file>data/common/path.cpp</file></path><path><editType>edit</editType><file>data/ssep/trailer_parking_safety.hpp</file></path><path><editType>edit</editType><file>data/vehicle/cloud_lane_change_status.hpp</file></path><path><editType>edit</editType><file>data/config/cfg_hdmap.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/config_schema_inputs.json</file></path><path><editType>edit</editType><file>math/util/box_2d.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/config_proto_codec.cpp</file></path><path><editType>edit</editType><file>data/ssep/offline_region_contour_loader.cpp</file></path><path><editType>edit</editType><file>data/ssep/ssep_ec.cpp</file></path><path><editType>edit</editType><file>ssep/offboard/main_test/main_test_park.cc</file></path><path><editType>delete</editType><file>io/serialization.hpp</file></path><path><editType>edit</editType><file>data/map/pnc_map/pnc_map.hpp</file></path><path><editType>edit</editType><file>tools/pnc_proto_mapper/audit_boost_nested_serialization.py</file></path><path><editType>edit</editType><file>docs/pnc_algorithm_replay/plan_frame_persistence_catalog.md</file></path><path><editType>edit</editType><file>ssep/data_structures/ssep_recursion_og.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_field_roles.json</file></path><path><editType>edit</editType><file>data/config/cfg_static.hpp</file></path><path><editType>edit</editType><file>data/wbca/grid_map/esdf_map.hpp</file></path><path><editType>edit</editType><file>data/app/app_data.hpp</file></path><path><editType>edit</editType><file>data/app/cmd/cmd_force.hpp</file></path><path><editType>edit</editType><file>data/app/cmd/cmd_traffic_light.hpp</file></path><path><editType>edit</editType><file>data/common/sl_boundary.hpp</file></path><path><editType>edit</editType><file>data/app/cmd/cmd_cancel_safe.hpp</file></path><path><editType>edit</editType><file>replayer/sdk/planframe_compat.cpp</file></path><path><editType>edit</editType><file>math/curve1d/cubic_polynomial_curve1d.hpp</file></path><path><editType>edit</editType><file>data/app/cmd/cmd_set_target.hpp</file></path><path><editType>edit</editType><file>data/map/envelop/map_envelop.hpp</file></path><path><editType>edit</editType><file>data/obstacle/obstacle.cpp</file></path><path><editType>edit</editType><file>data/plan/path_data.hpp</file></path><path><editType>edit</editType><file>math/util/discrete_match_helper.hpp</file></path><path><editType>edit</editType><file>data/map/reference/bends_decider/bend_attr.hpp</file></path><path><editType>edit</editType><file>ssep/data_structures/type_definition.h</file></path><path><editType>edit</editType><file>data/ssep/ex_lane_change_ec.hpp</file></path><path><editType>add</editType><file>replayer/scene_data/platoon_proto_codec.hpp</file></path><path><editType>edit</editType><file>data/vehicle/localization_estimate.hpp</file></path><path><editType>edit</editType><file>Testing/ssep_path_corridor_test.cpp</file></path><path><editType>edit</editType><file>common/util/switch_value_steady.hpp</file></path><path><editType>add</editType><file>proto/offline_capture.proto</file></path><path><editType>edit</editType><file>replayer/replayer_data_process/load_snap_data.cpp</file></path><path><editType>edit</editType><file>data/config/cfg_env_const.hpp</file></path><path><editType>edit</editType><file>ssep/data_structures/ssep_output.hpp</file></path><path><editType>edit</editType><file>data/constrain/block_data.hpp</file></path><path><editType>edit</editType><file>math/piecewise_jerk/constant_jerk_traj.hpp</file></path><path><editType>edit</editType><file>data/app/cmd/cmd_lock.hpp</file></path><path><editType>edit</editType><file>data/constrain/disable_stop_range.hpp</file></path><path><editType>edit</editType><file>data/vehicle/vehicle_chassis.hpp</file></path><path><editType>edit</editType><file>data/vehicle/yard_occupy_info.hpp</file></path><path><editType>edit</editType><file>data/lattice/ogm_crash_data.cpp</file></path><path><editType>edit</editType><file>data/plan/guide_line_base.hpp</file></path><path><editType>edit</editType><file>data/app/reaction/app_reaction.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/full_proto_custom_encoder.cpp</file></path><path><editType>edit</editType><file>data/vehicle/vehicle_config.hpp</file></path><path><editType>edit</editType><file>math/filter/mean_filter.hpp</file></path><path><editType>edit</editType><file>Testing/fixtures/wbca_segment_short_seam_failure.csv</file></path><path><editType>edit</editType><file>data/constrain/longitude_constrain.hpp</file></path><path><editType>edit</editType><file>tools/pnc_proto_mapper/sync_config_schema.py</file></path><path><editType>edit</editType><file>data/obstacle/obstacle.hpp</file></path><path><editType>edit</editType><file>data/plan/cloud_trajectory.hpp</file></path><path><editType>edit</editType><file>data/vehicle/vehicle_status.hpp</file></path><path><editType>edit</editType><file>data/plan_frame.cpp</file></path><path><editType>edit</editType><file>io/persistence.hpp</file></path><path><editType>edit</editType><file>ssep/offboard/tools/executable/inference_ml_trajectory_cli.cc</file></path><path><editType>edit</editType><file>tools/pnc_proto_mapper/test_proto_only_lint.py</file></path><path><editType>edit</editType><file>replayer/scene_data/remaining_plan_proto_codec.cpp</file></path><path><editType>edit</editType><file>data/plan/ssep_data.cpp</file></path><path><editType>edit</editType><file>common/time/time.hpp</file></path><path><editType>edit</editType><file>data/config/cfg_system.hpp</file></path><path><editType>edit</editType><file>data/map/reference/reference_segment.hpp</file></path><path><editType>edit</editType><file>Testing/load_snap_data_compat_test.cpp</file></path><path><editType>edit</editType><file>data/common/point.cpp</file></path><path><editType>edit</editType><file>proto/pnc_scene/compact_plan_frame_fields.proto</file></path><path><editType>edit</editType><file>ssep/offboard/servers/CMakeLists.txt</file></path><path><editType>edit</editType><file>data/app/cmd/cmd_fsm/ifsm.hpp</file></path><path><editType>edit</editType><file>common/time/duration.hpp</file></path><path><editType>edit</editType><file>Testing/fixtures/wbca_segment_tail_timing_failure.csv</file></path><path><editType>edit</editType><file>data/ssep/trailer_parking_safety.cpp</file></path><path><editType>edit</editType><file>ssep/offboard/tools/executable/main_obstacle_publisher.cc</file></path><path><editType>edit</editType><file>data/decide/error_info.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_encoder.cpp</file></path><path><editType>edit</editType><file>data/map/pnc_map/pnc_map_path.hpp</file></path><path><editType>edit</editType><file>math/piecewise_jerk/piecewise_jerk_traj.hpp</file></path><path><editType>edit</editType><file>data/vehicle/request_routing_data.cpp</file></path><path><editType>edit</editType><file>data/common/path_point.hpp</file></path><path><editType>edit</editType><file>data/vehicle/cloud_pnc_config.cpp</file></path><path><editType>edit</editType><file>math/util/vec_2d.cpp</file></path><path><editType>edit</editType><file>data/config/cfg_func_sw.cpp</file></path><path><editType>edit</editType><file>math/curve2d/icurve.hpp</file></path><path><editType>add</editType><file>Testing/proto_persistence_test.cpp</file></path><path><editType>edit</editType><file>data/plan/guide_line.hpp</file></path><path><editType>edit</editType><file>data/ssep/ssep_ec.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/full_custom_codec_exclusions.yaml</file></path><path><editType>edit</editType><file>data/obstacle/cluster_motion_tracker.cpp</file></path><path><editType>edit</editType><file>data/constrain/disable_stop_range.cpp</file></path><path><editType>edit</editType><file>data/plan/switch_data.cpp</file></path><path><editType>edit</editType><file>Testing/obstacle_stop_constraint_stabilizer_test.cpp</file></path><path><editType>edit</editType><file>data/app/cmd/cmd_fright.hpp</file></path><path><editType>edit</editType><file>tools/pnc_proto_mapper/audit_full_custom_codecs.py</file></path><path><editType>edit</editType><file>data/vehicle/lane_detection.hpp</file></path><path><editType>edit</editType><file>Testing/platoon_follow_target_builder_test.cpp</file></path><path><editType>edit</editType><file>data/plan/start_point_data.cpp</file></path><path><editType>edit</editType><file>math/smoothing/qp_spline_interface.h</file></path><path><editType>delete</editType><file>sink/ros_sink_snapshot.cpp</file></path><path><editType>edit</editType><file>data/obstacle/prediction_trajectory.hpp</file></path><path><editType>edit</editType><file>data/common/sl_point.hpp</file></path><path><editType>edit</editType><file>proto/plan_data.proto</file></path><path><editType>edit</editType><file>data/ssep/out_yard_junction_ec.hpp</file></path><path><editType>edit</editType><file>ssep/offboard/generate_path_repository/CMakeLists.txt</file></path><path><editType>edit</editType><file>replayer/scene_data/plan_frame_field_roles.csv</file></path><path><editType>edit</editType><file>data/map/pnc_map/pnc_map_path.cpp</file></path><path><editType>edit</editType><file>math/curve2d/arc_curve2d.hpp</file></path><path><editType>edit</editType><file>data/plan/path_direction_data.hpp</file></path><path><editType>edit</editType><file>ssep/offboard/main_test/main_test_qhd.cc</file></path><path><editType>edit</editType><file>ssep/offboard/main_test/main_ssep_test.cc</file></path><path><editType>edit</editType><file>ssep/offboard/main_test/main_ssep.cc</file></path><path><editType>edit</editType><file>math/curve1d/quintic_polynomial_curve1d_rt.hpp</file></path><path><editType>edit</editType><file>data/vehicle/related_motion_tf.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_descriptor.pb</file></path><path><editType>edit</editType><file>data/vehicle/vehicle_command.hpp</file></path><path><editType>edit</editType><file>data/app/cmd/cmd_right.hpp</file></path><path><editType>edit</editType><file>data/common/guide_path.hpp</file></path><path><editType>edit</editType><file>math/util/box_2d.hpp</file></path><path><editType>edit</editType><file>data/wbca/grid_map/grid_map.hpp</file></path><path><editType>edit</editType><file>ssep/coarse_search/evaluator/shortest_path_heur_table.h</file></path><path><editType>edit</editType><file>Testing/encoding_benchmark_test.cpp</file></path><path><editType>edit</editType><file>data/vehicle/vehicle_state.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/container_schema_inputs.json</file></path><path><editType>edit</editType><file>data/config/cfg_func_sw.hpp</file></path><path><editType>edit</editType><file>data/app/cmd/cmd_nstop.hpp</file></path><path><editType>edit</editType><file>data/ctrl/ctrl_data.cpp</file></path><path><editType>edit</editType><file>data/vehicle/traffic_light_data.hpp</file></path><path><editType>edit</editType><file>data/app/fsm_interface.hpp</file></path><path><editType>edit</editType><file>data/vehicle/vehicle_destination.hpp</file></path><path><editType>edit</editType><file>data/ssep/reverse_ec.hpp</file></path><path><editType>edit</editType><file>data/app/cmd/cmd_remote.hpp</file></path><path><editType>edit</editType><file>scenarios/scenario_interface.hpp</file></path><path><editType>edit</editType><file>data/config/cfg_decision.hpp</file></path><path><editType>edit</editType><file>data/app/cmd/cmd_fleft.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/plan_frame_full_mapping.yaml</file></path><path><editType>edit</editType><file>data/app/cmd/cmd_remote_ctrl.hpp</file></path><path><editType>edit</editType><file>data/app/cmd/cmd_bend_left.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/plan_frame_persistence_policy.yaml</file></path><path><editType>edit</editType><file>replayer/scene_importer/legacy_boost_plan_frame_decoder.cpp</file></path><path><editType>edit</editType><file>data/map/reference/reference_road_section.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/compact_typed_field_codec.cpp</file></path><path><editType>edit</editType><file>data/plan/smooth_data.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/encoding_benchmark.hpp</file></path><path><editType>edit</editType><file>data/ssep/bridge_junction_ec.hpp</file></path><path><editType>edit</editType><file>data/obstacle/reverse_lane_approach.hpp</file></path><path><editType>delete</editType><file>sink/ros_sink_snapshot.hpp</file></path><path><editType>edit</editType><file>ssep/data_structures/ssep_input.hpp</file></path><path><editType>edit</editType><file>math/filter/median_filter.hpp</file></path><path><editType>edit</editType><file>data/vehicle/deviation_status.hpp</file></path><path><editType>edit</editType><file>data/map/routing/destination.hpp</file></path><path><editType>edit</editType><file>data/vehicle/trailer_state.cpp</file></path><path><editType>edit</editType><file>ssep/offboard/main_test/main_test_zhoushan.cc</file></path><path><editType>edit</editType><file>data/app/cmd/cmd_align.hpp</file></path><path><editType>edit</editType><file>Testing/planframe_compat_test.cpp</file></path><path><editType>edit</editType><file>math/util/frenet_point.hpp</file></path><path><editType>edit</editType><file>data/config/cfg_long_plan.hpp</file></path><path><editType>edit</editType><file>data/app/cmd/cmd_update_config.hpp</file></path><path><editType>edit</editType><file>data/map/reference/bends_decider/bends_decider.hpp</file></path><path><editType>edit</editType><file>data/map/routing/routing_response.cpp</file></path><path><editType>edit</editType><file>Testing/platoon_safety_test.cpp</file></path><path><editType>edit</editType><file>Testing/fixtures/wbca_platoon_low_speed_failure.csv</file></path><path><editType>edit</editType><file>data/common/point.hpp</file></path><path><editType>edit</editType><file>data/plan/center_line_info.hpp</file></path><path><editType>edit</editType><file>data/plan/reference_line_info.cpp</file></path><path><editType>edit</editType><file>data/semantic/semantic_description.hpp</file></path><path><editType>edit</editType><file>Testing/scene_replay_foundation_test.cpp</file></path><path><editType>edit</editType><file>data/common/trajectory.hpp</file></path><path><editType>edit</editType><file>data/map/reference/center_line.hpp</file></path><path><editType>edit</editType><file>data/constrain/longitude_constrain.cpp</file></path><path><editType>edit</editType><file>data/decide/decide_reaction.hpp</file></path><path><editType>edit</editType><file>data/map/reference/reference_segment.cpp</file></path><path><editType>edit</editType><file>data/app/cmd/cmd_base.hpp</file></path><path><editType>edit</editType><file>data/config/cfg_dynamic.hpp</file></path><path><editType>edit</editType><file>math/curve1d/quartic_polynomial_curve1d.hpp</file></path><path><editType>edit</editType><file>data/lattice/lattice_debug_data.hpp</file></path><path><editType>edit</editType><file>data/config/cfg_safe_const.hpp</file></path><path><editType>edit</editType><file>data/vehicle/related_offset.cpp</file></path><path><editType>edit</editType><file>data/constrain/block_data.cpp</file></path><path><editType>edit</editType><file>data/constrain/pnc_junction.hpp</file></path><path><editType>edit</editType><file>data/ssep/ssep_activation.cpp</file></path><path><editType>edit</editType><file>data/obstacle/block.hpp</file></path><path><editType>edit</editType><file>ssep/offboard/main_test/main_ssep_input.cc</file></path><path><editType>edit</editType><file>data/ctrl/lka_start_up.hpp</file></path><path><editType>edit</editType><file>data/map/routing/routing_response.h</file></path><path><editType>edit</editType><file>data/semantic/semantic_description.cpp</file></path><path><editType>add</editType><file>Testing/proto_roundtrip.hpp</file></path><path><editType>edit</editType><file>data/config/cfg_lat_decide.hpp</file></path><path><editType>edit</editType><file>data/lattice/lattice_trajectory1d.hpp</file></path><path><editType>edit</editType><file>math/util/vec_2d.hpp</file></path><path><editType>edit</editType><file>ssep/param_loader/param.h</file></path><path><editType>edit</editType><file>data/map/pnc_map/routing_extension/routing_data.hpp</file></path><path><editType>edit</editType><file>data/vehicle/crane_info.cpp</file></path><path><editType>edit</editType><file>data/vehicle/veh_his_states.hpp</file></path><path><editType>edit</editType><file>data/lattice/ogm_crash_data.hpp</file></path><path><editType>edit</editType><file>source/ros_source_replayer_snapshot.cpp</file></path><path><editType>edit</editType><file>core/snapshot_async.cpp</file></path><path><editType>edit</editType><file>math/smoothing/fem_pos_deviation_interface.h</file></path><path><editType>edit</editType><file>data/vehicle/station_manager.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/compact_scene_descriptor.pb</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/scene_replay_api_descriptor.pb</file></path><path><editType>edit</editType><file>Testing/fixtures/wbca_truck_collision_gradient_7.csv</file></path><path><editType>edit</editType><file>data/plan/side_pass_data.hpp</file></path><path><editType>add</editType><file>io/proto_io.hpp</file></path><path><editType>add</editType><file>ssep/protos/snapshot.proto</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/full_custom_codec_coverage_audit.yaml</file></path><path><editType>edit</editType><file>data/app/cmd/cmd_startup.hpp</file></path><path><editType>edit</editType><file>data/platoon/platoon_info.hpp</file></path><path><editType>edit</editType><file>data/app/cmd/cmd_dead_lock_force_park.hpp</file></path><path><editType>add</editType><file>replayer/scene_data/platoon_proto_codec.cpp</file></path><path><editType>edit</editType><file>data/map/pnc_map/routing_extension/routing_data.cpp</file></path><path><editType>edit</editType><file>data/wbca/wbca_data.hpp</file></path><path><editType>edit</editType><file>data/plan/reference_line_info.hpp</file></path><path><editType>edit</editType><file>data/vehicle/spreader_protect.hpp</file></path><path><editType>edit</editType><file>data/app/cmd/cmd_bend_cloud_decider.hpp</file></path><path><editType>edit</editType><file>data/app/cmd/cmd_fsm/fsm_base.hpp</file></path><path><editType>edit</editType><file>data/ssep/field_region_contour.h</file></path><path><editType>edit</editType><file>data/obstacle/perception_obstacle.cpp</file></path><path><editType>edit</editType><file>proto/config.proto</file></path><path><editType>edit</editType><file>data/config/cfg_platoon.hpp</file></path><path><editType>edit</editType><file>data/plan/guide_line_info.hpp</file></path><path><editType>edit</editType><file>data/plan/keb_visualize_data.hpp</file></path><path><editType>edit</editType><file>data/plan/switch_data.hpp</file></path><path><editType>edit</editType><file>proto/scenario.proto</file></path><path><editType>edit</editType><file>data/vehicle/parallel_driving_state.hpp</file></path><path><editType>edit</editType><file>Testing/jerk_limited_stop_test.cpp</file></path><path><editType>edit</editType><file>data/map/routing/birdge_position_ack.hpp</file></path><path><editType>edit</editType><file>data/semantic/semantic.hpp</file></path><path><editType>edit</editType><file>data/common/path.hpp</file></path><path><editType>edit</editType><file>data/vehicle/crane_info.hpp</file></path><path><editType>edit</editType><file>data/obstacle/ogm.cpp</file></path><path><editType>edit</editType><file>data/ssep/into_yard_junction_ec.hpp</file></path><path><editType>edit</editType><file>proto/CMakeLists.txt</file></path><path><editType>add</editType><file>proto/platoon.proto</file></path><path><editType>edit</editType><file>data/app/fsm/stop_reason.hpp</file></path><path><editType>edit</editType><file>data/common/trajectory.cpp</file></path><path><editType>edit</editType><file>data/obstacle/block.cpp</file></path><path><editType>edit</editType><file>data/plan/predict_path.cpp</file></path><path><editType>edit</editType><file>data/boundary/path_boundary.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/full_custom_cpp_member_inputs.json</file></path><path><editType>edit</editType><file>data/map/pnc_map/road_segments.h</file></path><path><editType>edit</editType><file>data/common/trajectory_point.hpp</file></path><path><editType>edit</editType><file>data/map/reference/reference_line.hpp</file></path><path><editType>edit</editType><file>data/vehicle/container_compensate_info.hpp</file></path><path><editType>edit</editType><file>algorithm/wbca/wbca_failure_csv.cpp</file></path><path><editType>edit</editType><file>data/plan/predict_path.hpp</file></path><path><editType>edit</editType><file>data/ssep/ssep_common.hpp</file></path><path><editType>edit</editType><file>docs/compact_proto_boost_removal.md</file></path><path><editType>edit</editType><file>math/curve1d/polynomial_curve1d.hpp</file></path><path><editType>edit</editType><file>proto/pnc_scene/full_plan_frame.proto</file></path><path><editType>edit</editType><file>ssep/test/trailer_heuristic_table_test.cc</file></path><path><editType>edit</editType><file>docs/platoon/wbca_failure_replay.md</file></path><path><editType>edit</editType><file>Testing/platoon_failure_csv_test.cpp</file></path><path><editType>edit</editType><file>data/plan/side_pass_data.cpp</file></path><path><editType>edit</editType><file>data/vehicle/veh_his_states.cpp</file></path><path><editType>edit</editType><file>ssep/data_structures/ssep_recursion_obstacle.hpp</file></path><path><editType>edit</editType><file>data/ssep/forward_ec.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/trajectory_schema_inputs.json</file></path><path><editType>edit</editType><file>math/curve1d/quartic_bezier_curve1d.hpp</file></path><path><editType>edit</editType><file>ssep/CMakeLists.txt</file></path><path><editType>edit</editType><file>data/map/reference/bends_decider/bend_decider.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/compact_custom_field_proto_codec.cpp</file></path><path><editType>edit</editType><file>Testing/wbca_leader_history_test.cpp</file></path><path><editType>edit</editType><file>tools/pnc_proto_mapper/draft_persistence_policy.py</file></path><path><editType>edit</editType><file>data/app/cmd/cmd_left.hpp</file></path><path><editType>edit</editType><file>data/vehicle/lock_station_data.hpp</file></path><path><editType>edit</editType><file>data/wbca/wbca_data.cpp</file></path><path><editType>edit</editType><file>data/plan/guide_line_info.cpp</file></path><path><editType>edit</editType><file>data/app/reaction/app_reaction.cpp</file></path><path><editType>edit</editType><file>data/ctrl/ctrl_data.hpp</file></path><path><editType>edit</editType><file>data/obstacle/ogm.hpp</file></path><path><editType>edit</editType><file>data/vehicle/lock_station_pts.hpp</file></path><path><editType>edit</editType><file>data/vehicle/priori_bay_info.cpp</file></path><path><editType>edit</editType><file>data/plan_frame.hpp</file></path><path><editType>edit</editType><file>data/app/cmd/cmd_cancel_expand.hpp</file></path><path><editType>edit</editType><file>data/app/cmd/cmd_cancel_lock.hpp</file></path><path><editType>edit</editType><file>offboard/bag_to_keb_scene/bag_reader.cc</file></path><path><editType>edit</editType><file>math/util/polygon_2d.hpp</file></path><path><editType>add</editType><file>tools/pnc_proto_mapper/baseline/boost_v15_evidence.json</file></path><path><editType>edit</editType><file>data/ssep/seaside_junction_ec.hpp</file></path><path><editType>edit</editType><file>data/hmi_frame.hpp</file></path><path><editType>edit</editType><file>ssep/test/CMakeLists.txt</file></path><path><editType>edit</editType><file>Testing/wbca_failure_csv_test.cpp</file></path><path><editType>edit</editType><file>data/dp_poly_path/dp_road_graph.hpp</file></path><path><editType>edit</editType><file>data/vehicle/trailer_state.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/state_schema_inputs.json</file></path><path><editType>edit</editType><file>Testing/fixtures/wbca_truck_collision_gradient_8.csv</file></path><path><editType>edit</editType><file>data/map/routing/flip_seaside_map.hpp</file></path><path><editType>add</editType><file>io/geometry_proto_persistence.cpp</file></path><path><editType>edit</editType><file>data/app/cmd/cmd_reversing.hpp</file></path><path><editType>edit</editType><file>math/curve1d/linear_polynomial_curve1d.hpp</file></path><path><editType>edit</editType><file>data/app/cmd/cmd_dead_lock.hpp</file></path><path><editType>edit</editType><file>data/dp_poly_path/dp_road_graph.cpp</file></path><path><editType>edit</editType><file>data/vehicle/related_offset.hpp</file></path><path><editType>edit</editType><file>data/plan/path_data.cpp</file></path><path><editType>edit</editType><file>math/util/polygon_2d.cpp</file></path><path><editType>edit</editType><file>replayer/scene_data/config_proto_codec.hpp</file></path><path><editType>edit</editType><file>data/config/iconfig.hpp</file></path><path><editType>edit</editType><file>data/config/cfg_calib_ssep.hpp</file></path><path><editType>edit</editType><file>data/app/cmd/cmd_bend_right.hpp</file></path><path><editType>edit</editType><file>data/vehicle/priori_bay_info.hpp</file></path><path><editType>edit</editType><file>data/obstacle/obstacle_decider_attr.hpp</file></path><path><editType>edit</editType><file>data/semantic/state.hpp</file></path><path><editType>edit</editType><file>Testing/platoon_lane_change_test.cpp</file></path><path><editType>edit</editType><file>data/vehicle/cloud_pnc_config.hpp</file></path><path><editType>edit</editType><file>data/semantic/vehicle.hpp</file></path><path><editType>edit</editType><file>math/curve1d/quartic_polynomial_curve1d_rt.hpp</file></path><path><editType>edit</editType><file>data/config/cfg_lat_plan.hpp</file></path><path><editType>edit</editType><file>data/ssep/field_junction_ec.hpp</file></path><path><editType>edit</editType><file>data/vehicle/cmd_feedback_state.hpp</file></path><path><editType>edit</editType><file>tools/pnc_encoding_benchmark/main.cpp</file></path><path><editType>edit</editType><file>data/constrain/longitude_data.hpp</file></path><path><editType>edit</editType><file>data/obstacle/cluster_motion_tracker.hpp</file></path><path><editType>edit</editType><file>data/vehicle/request_routing_data.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/boost_compact_persistence_diff.yaml</file></path><path><editType>edit</editType><file>ssep/data_structures/map_element_polyline.h</file></path><path><editType>edit</editType><file>data/map/envelop/map_envelops.hpp</file></path><path><editType>edit</editType><file>ssep/offboard/main_test/main_test_diagonal.cc</file></path><path><editType>add</editType><file>io/snapshot_proto_persistence.cpp</file></path><path><editType>edit</editType><file>data/vehicle/trailer_posture.hpp</file></path><path><editType>edit</editType><file>data/app/cmd/cmd_replan.hpp</file></path><path><editType>edit</editType><file>data/vehicle/vehicle_pose.hpp</file></path><path><editType>edit</editType><file>data/constrain/constrain_data.hpp</file></path><path><editType>edit</editType><file>data/obstacle/perception_obstacle.hpp</file></path><path><editType>edit</editType><file>ssep/offboard/CMakeLists.txt</file></path><path><editType>add</editType><file>io/basic_proto_persistence.cpp</file></path><path><editType>edit</editType><file>algorithm/plan/pjpo.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/generated/plan_frame_decoder.cpp</file></path><path><editType>edit</editType><file>data/constrain/temporary_stop_data.hpp</file></path><path><editType>edit</editType><file>replayer/scene_data/encoding_benchmark.cpp</file></path><path><editType>edit</editType><file>data/constrain/long_target.hpp</file></path><path><editType>edit</editType><file>ssep/offboard/scene_replay/CMakeLists.txt</file></path><path><editType>edit</editType><file>ssep/data_structures/type_definition.cc</file></path><path><editType>edit</editType><file>data/scenario/scenario_manager.hpp</file></path><path><editType>edit</editType><file>data/config/cfg_station.hpp</file></path><path><editType>add</editType><file>ssep/data_structures/proto_persistence.cc</file></path><path><editType>edit</editType><file>data/object.hpp</file></path><path><editType>edit</editType><file>data/constrain/disable_stop_scope.hpp</file></path><path><editType>edit</editType><file>data/obstacle/decision/obstacle_decision_test.cpp</file></path><path><editType>edit</editType><file>ssep/offboard/path_drawing_tool/CMakeLists.txt</file></path><path><editType>edit</editType><file>ssep/offboard/sdk/ssep_activation_impl.cc</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>algorithm/lattice/long_target_calculator.cpp</affectedPath><affectedPath>Testing/jerk_limited_stop_test.cpp</affectedPath><commitId>fa72c4184c220ae79f323005536e4272929b3527</commitId><timestamp>1791876247000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>fix: preserve actual distances for longitudinal terminal targets
</comment><date>2026-10-13 15:24:07 +0800</date><id>fa72c4184c220ae79f323005536e4272929b3527</id><msg>fix: preserve actual distances for longitudinal terminal targets</msg><path><editType>edit</editType><file>algorithm/lattice/long_target_calculator.cpp</file></path><path><editType>edit</editType><file>Testing/jerk_limited_stop_test.cpp</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>CMakeLists.txt</affectedPath><commitId>d91ca0e6bdcd735a27a0491bd255d7cd33e5d7c8</commitId><timestamp>1792564868000</timestamp><author><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></author><authorEmail>chenran@senior.auto</authorEmail><comment>fix: restore GCC compatibility with vehicle Abseil archives
</comment><date>2026-10-21 14:41:08 +0800</date><id>d91ca0e6bdcd735a27a0491bd255d7cd33e5d7c8</id><msg>fix: restore GCC compatibility with vehicle Abseil archives</msg><path><editType>edit</editType><file>CMakeLists.txt</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://159.27.114.184:8080/jenkins/user/wuyanjun110</absoluteUrl><fullName>wuyanjun110</fullName></culprit><culprit><absoluteUrl>http://159.27.114.184:8080/jenkins/user/jiayifei</absoluteUrl><fullName>jiayifei</fullName></culprit><culprit><absoluteUrl>http://159.27.114.184:8080/jenkins/user/chenran</absoluteUrl><fullName>chenran</fullName></culprit><culprit><absoluteUrl>http://159.27.114.184:8080/jenkins/user/liuhongshuo</absoluteUrl><fullName>liuhongshuo</fullName></culprit><nextBuild><number>2178</number><url>http://159.27.114.184:8080/jenkins/user/chenliang/my-views/view/all/job/module-pnc_replayer/2178/</url></nextBuild><previousBuild><number>2176</number><url>http://159.27.114.184:8080/jenkins/user/chenliang/my-views/view/all/job/module-pnc_replayer/2176/</url></previousBuild></previousBuild></workflowRun>