Console Output

Warning: A secret was passed to "httpRequest" using Groovy String interpolation, which is insecure.
		 Affected argument(s) used the following variable(s): [gitlabToken]
		 See https://jenkins.io/redirect/groovy-string-interpolation for details.
HttpMethod: GET
URL: http://159.27.226.4/api/v4/projects/49/repository/commits/c79d46b
Content-Type: application/json
PRIVATE-TOKEN: *****
Sending request to url: http://159.27.226.4/api/v4/projects/49/repository/commits/c79d46b
Response Code: HTTP/1.1 200 OK
Response: 
{"id":"c79d46b5b008dad757283353a87af89b4bc8f01f","short_id":"c79d46b5","created_at":"2026-09-15T07:42:00.000-04:00","parent_ids":["118f3bab0d5a8f3e56b62b6461a64f8fd8010e61"],"title":"crane_align: Init() 失败时退出,不再带病进主循环","message":"crane_align: Init() 失败时退出,不再带病进主循环\n\n潍坊集装箱车 crane_align_node 拉起即 SIGSEGV @ ShoreCraneAlign()。\n\n根因不在算法:main() 第 149 行 `crane_align.Init();` 丢弃了返回值。\n参数加载失败时 LoadParams() 已把缺失的 key 打进日志并让 Init() 返回\nfalse,但程序照样往下走,用未初始化的状态进主循环,在 ShoreCraneAlign()\n里解引用空指针。一次配置错误被放大成段错误,日志里真正有用的\n\"Load crane_align_node config failure.key: - xxx -\" 反而被 crash 栈淹没。\n\n改为检查返回值,失败即停心跳并 return -1(此时三个工作线程尚未启动,\n无需 join,与 183 行正常退出路径一致)。\n\n配置错误从此表现为一条明确的启动失败,而不是段错误。\n","author_name":"lanxiaosong","author_email":"lanxiaosong@senior.auto","authored_date":"2026-09-15T07:42:00.000-04:00","committer_name":"lanxiaosong","committer_email":"lanxiaosong@senior.auto","committed_date":"2026-09-15T07:42:00.000-04:00","trailers":{},"web_url":"http://159.27.226.4/lidar_localization_mapping/crane_align/-/commit/c79d46b5b008dad757283353a87af89b4bc8f01f","stats":{"additions":8,"deletions":1,"total":9},"status":null,"project_id":49,"last_pipeline":null}
Success: Status code 200 is in the accepted range: 100:399