travel-r11.json 116 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317
  1. {
  2. "companyId": 338,
  3. "includeStress": true,
  4. "dialogueIndustry": "travel",
  5. "startedAt": "2026-06-23 06:13:11",
  6. "sections": {
  7. "enginePrompts": {
  8. "expectedCatalogKeys": 50,
  9. "newlyInserted": 0,
  10. "missingKeys": [
  11. ],
  12. "platformKeyCount": 50,
  13. "passed": true,
  14. "message": "platform engine prompts complete (50 keys)"
  15. },
  16. "triggerExclude": {
  17. "passed": true,
  18. "errors": [
  19. ],
  20. "message": "trigger exclude/sarcasm/schedule checks ok"
  21. },
  22. "runtimeCapabilities": {
  23. "capabilityTags": [
  24. "product",
  25. "weather",
  26. "logistics",
  27. "survey",
  28. "live",
  29. "article",
  30. "order",
  31. "order_list",
  32. "coupon",
  33. "crm",
  34. "sms"
  35. ],
  36. "toolCount": 11,
  37. "intentChecks": [
  38. {
  39. "message": "这几条线路看起来不错",
  40. "expectedTool": "query_product",
  41. "matchedTool": "query_product",
  42. "passed": "true"
  43. },
  44. {
  45. "message": "云南天气怎么样",
  46. "expectedTool": "query_weather",
  47. "matchedTool": "query_weather",
  48. "passed": "true"
  49. },
  50. {
  51. "message": "我的快递发货了吗",
  52. "expectedTool": "query_logistics",
  53. "matchedTool": "query_logistics",
  54. "passed": "true"
  55. },
  56. {
  57. "message": "满意度打分",
  58. "expectedTool": "start_survey",
  59. "matchedTool": "start_survey",
  60. "passed": "true"
  61. },
  62. {
  63. "message": "有没有新线路优惠",
  64. "expectedTool": "query_product",
  65. "matchedTool": "query_product",
  66. "passed": "true"
  67. },
  68. {
  69. "message": "有直播吗",
  70. "expectedTool": "push_live",
  71. "matchedTool": "push_live",
  72. "passed": "true"
  73. },
  74. {
  75. "message": "发我看看文章",
  76. "expectedTool": "push_article",
  77. "matchedTool": "push_article",
  78. "passed": "true"
  79. }
  80. ],
  81. "surveySmoke": true,
  82. "issues": [
  83. ],
  84. "passed": true,
  85. "message": "运行时能力校验通过"
  86. },
  87. "capabilityDialogue": {
  88. "lines": [
  89. {
  90. "message": "云南7月份天气怎么样,需要带什么衣服",
  91. "matchedTool": "query_weather",
  92. "triggered": true,
  93. "toolStatus": "ok",
  94. "summary": "已查询 云南 天气"
  95. },
  96. {
  97. "message": "快递发货了吗,帮我查一下物流",
  98. "matchedTool": "query_logistics",
  99. "triggered": true,
  100. "toolStatus": "ok",
  101. "summary": "{success=false, error=未找到物流单号,请确认是否已发货}"
  102. },
  103. {
  104. "message": "有没有适合带老人的新线路推荐",
  105. "matchedTool": "query_product",
  106. "triggered": true,
  107. "toolStatus": "ok",
  108. "summary": "{products=[], count=0}"
  109. },
  110. {
  111. "message": "今晚有直播吗,发我直播间链接",
  112. "matchedTool": "push_live",
  113. "triggered": true,
  114. "toolStatus": "ok",
  115. "summary": "暂无可用直播,请稍后再试"
  116. },
  117. {
  118. "message": "有没有出行攻略文章发我看看",
  119. "matchedTool": "push_article",
  120. "triggered": true,
  121. "toolStatus": "ok",
  122. "summary": "为您推荐文章:测试0603"
  123. },
  124. {
  125. "message": "满意度打5分,服务挺好的",
  126. "matchedTool": "start_survey",
  127. "triggered": true,
  128. "toolStatus": "ok",
  129. "summary": "已记录客户参与「satisfaction」问卷意向,请在对话中自然引导完成反馈"
  130. }
  131. ],
  132. "lineCount": 6,
  133. "warnings": [
  134. ],
  135. "issues": [
  136. ],
  137. "passed": true,
  138. "message": "capabilityTriggers 联调通过"
  139. },
  140. "template": {
  141. "passed": true,
  142. "workflowId": 66,
  143. "templateCode": "LOB_1782155428994",
  144. "source": "existing",
  145. "message": "travel template found"
  146. },
  147. "lifecycleCoverage": {
  148. "coverageRatio": 1.0,
  149. "minCoverage": 0.75,
  150. "nodeCount": 16,
  151. "requiredNodeCount": 15,
  152. "missingNodes": [
  153. ],
  154. "passed": true,
  155. "message": "lifecycle nodes covered"
  156. },
  157. "sopDefaults": {
  158. "qwSopTempId": "LOBSTER_TRAVEL_POST_BOOKING",
  159. "wxSopTempId": "LOBSTER_TRAVEL_POST_BOOKING_WX",
  160. "tenantHint": "Create qw_sop/wx_sop tasks with temp_id matching the values above",
  161. "sopEnrollNodeConfig": "{\"sopTempId\":\"LOBSTER_TRAVEL_POST_BOOKING\",\"wxSopTempId\":\"LOBSTER_TRAVEL_POST_BOOKING_WX\",\"plannedIndustry\":\"travel\",\"systemPromptKey\":\"node_LOB_1782155428994_SOP_ENROLL_system\",\"preferContactAccount\":true,\"plannedRole\":\"MESSAGE\",\"instructionPromptKey\":\"node_LOB_1782155428994_SOP_ENROLL_instruction\",\"actionOnly\":true,\"promptPlanned\":true}",
  162. "hasSopEnrollNode": true,
  163. "passed": true,
  164. "message": "travel SOP defaults and SOP_ENROLL node present"
  165. },
  166. "sopEnrollment": {
  167. "qwTaskConfigured": false,
  168. "wxTaskConfigured": false,
  169. "tenantSopReady": false,
  170. "qwChannel": {
  171. "success": false,
  172. "skipped": null,
  173. "channelType": "QW",
  174. "message": "未找到可用的 SOP 任务(请配置 sopId 或 tempId)",
  175. "tempId": null,
  176. "sopId": null,
  177. "reachable": true
  178. },
  179. "wxChannel": {
  180. "success": false,
  181. "skipped": null,
  182. "channelType": "WX",
  183. "message": "未找到个微 SOP 任务(配置 sopId 或 wxSopTempId/tempId)",
  184. "tempId": null,
  185. "sopId": null,
  186. "reachable": true
  187. },
  188. "passed": true,
  189. "notes": [
  190. "tenant missing qw_sop temp_id=LOBSTER_TRAVEL_POST_BOOKING",
  191. "tenant missing wx_sop temp_id=LOBSTER_TRAVEL_POST_BOOKING_WX"
  192. ],
  193. "message": "routing ok; tenant missing qw_sop temp_id=LOBSTER_TRAVEL_POST_BOOKING; tenant missing wx_sop temp_id=LOBSTER_TRAVEL_POST_BOOKING_WX"
  194. },
  195. "nodePromptsPlanned": {
  196. "promptNodeTarget": 6,
  197. "promptNodeFilled": 6,
  198. "emptyPromptNodes": [
  199. ],
  200. "passed": true,
  201. "message": "key node prompts present"
  202. },
  203. "lifecycleSimulation": {
  204. "waitPreTripConfigured": true,
  205. "tagAutoConfigured": true,
  206. "orderActionConfigured": true,
  207. "holidayWaitConfigured": true,
  208. "passed": true,
  209. "message": "lifecycle orchestration nodes configured"
  210. },
  211. "lifecycleRuntime": {
  212. "simMinuteUnit": 10,
  213. "simDayEqualsMinutes": 10,
  214. "schedulerWakeWaitMs": 3500,
  215. "preTripWaitSchedule10m": {
  216. "waitUntil": 1782166800000,
  217. "expectedWaitAt": 1782166800000,
  218. "travelAt": "2026-06-23T07:13:25.541079200",
  219. "waitInRealMinutes": 6,
  220. "diffMinutes": 0,
  221. "simTimeScale": true,
  222. "passed": true,
  223. "message": "T-5 10m sim schedule ok"
  224. },
  225. "preTripWaitWake": {
  226. "passed": true,
  227. "message": "lifecycle wait wake ok",
  228. "statusAfter": "running",
  229. "resumeIndex": 8,
  230. "currentIndexAfter": 9,
  231. "instanceId": 544
  232. },
  233. "preTripSchedulerWake10m": {
  234. "scheduledWakeAt": 1782166413005,
  235. "schedulerWaitMs": 3500,
  236. "passed": true,
  237. "message": "scheduler 10m sim wake ok",
  238. "statusAfter": "running",
  239. "resumeIndex": 8,
  240. "currentIndexAfter": 9,
  241. "instanceId": 545
  242. },
  243. "holidayWaitSchedule10m": {
  244. "waitUntil": 1782184200000,
  245. "expectedWaitAt": 1782184200000,
  246. "waitInRealMinutes": 296,
  247. "simHolidayDays": 30,
  248. "simRealMinutes": 300,
  249. "diffMinutes": 0,
  250. "passed": true,
  251. "message": "holiday 10m sim schedule ok"
  252. },
  253. "holidayWaitWake": {
  254. "passed": true,
  255. "message": "lifecycle wait wake ok",
  256. "statusAfter": "completed",
  257. "resumeIndex": 13,
  258. "currentIndexAfter": 13,
  259. "instanceId": 546
  260. },
  261. "holidaySchedulerWake10m": {
  262. "scheduledWakeAt": 1782166421644,
  263. "schedulerWaitMs": 3500,
  264. "passed": true,
  265. "message": "scheduler 10m sim wake ok",
  266. "statusAfter": "completed",
  267. "resumeIndex": 13,
  268. "currentIndexAfter": 13,
  269. "instanceId": 547
  270. },
  271. "passed": true,
  272. "message": "lifecycle 10m sim schedule/wake ok"
  273. },
  274. "lifecycleFullFlowSim": {
  275. "instanceId": 548,
  276. "finalStatus": "completed",
  277. "finalNodeIndex": 13,
  278. "milestones": [
  279. "STARTED",
  280. "T5_SCHEDULED",
  281. "T5_WAITING",
  282. "PRE_TRIP_CARE",
  283. "PRE_TRIP_MULTITURN",
  284. "HOLIDAY_WAITING",
  285. "HOLIDAY_PROMO"
  286. ],
  287. "errors": [
  288. ],
  289. "passed": true,
  290. "message": "full lifecycle 10m sim flow ok",
  291. "simMinuteUnit": 10
  292. },
  293. "lifecycleExceptions": {
  294. "waitNotExpired": {
  295. "passed": true,
  296. "message": "not-expired wait rejected advance",
  297. "statusAfter": "waiting"
  298. },
  299. "prematureScheduler": {
  300. "passed": true,
  301. "message": "premature scheduler did not wake"
  302. },
  303. "blockedSchedulerSkip": {
  304. "passed": true,
  305. "message": "blocked instance skipped by scheduler"
  306. },
  307. "blockedForceWake": {
  308. "passed": true,
  309. "message": "blocked force wake rejected"
  310. },
  311. "overdueT5SkipWait": {
  312. "waitUntil": 1782164400000,
  313. "overdue": true,
  314. "wouldSkipSchedule": true,
  315. "passed": true,
  316. "message": "overdue T-5 skips wait schedule"
  317. },
  318. "missingTravelDate": {
  319. "waitUntil": 1782167093465,
  320. "expectedFallbackMinutes": 10,
  321. "passed": true,
  322. "message": "missing travel_date sim fallback ok"
  323. },
  324. "completedRejectWake": {
  325. "passed": true,
  326. "message": "completed instance rejects wake"
  327. },
  328. "missingResumeIndex": {
  329. "passed": true,
  330. "message": "missing resume index fallback ok"
  331. },
  332. "doubleWake": {
  333. "passed": true,
  334. "message": "double wake idempotent",
  335. "statusAfter": "running"
  336. },
  337. "passed": true,
  338. "message": "lifecycle exception handling ok"
  339. },
  340. "lifecycleMultiTurnDialogue": {
  341. "bookingTurnCount": 10,
  342. "postBookingTurnCount": 9,
  343. "dialogueSource": "bookingFunnel+postBookingLifecycle",
  344. "consultMultiTurn": {
  345. "turns": 5,
  346. "avgScore": 64.2,
  347. "minScore": 0.0,
  348. "passed": true,
  349. "message": "node multiTurn ok",
  350. "instanceId": 556,
  351. "inputCount": 6
  352. },
  353. "postBookingMultiTurnFlow": {
  354. "instanceId": 557,
  355. "preTripMultiTurn": {
  356. "turns": 3,
  357. "avgScore": 85.0,
  358. "minScore": 78.0,
  359. "passed": true,
  360. "message": "node multiTurn ok"
  361. },
  362. "holidayMultiTurn": {
  363. "turns": 1,
  364. "avgScore": 79.0,
  365. "minScore": 79.0,
  366. "earlyCompletion": true,
  367. "passed": true,
  368. "message": "node multiTurn ok"
  369. },
  370. "milestones": [
  371. "PRE_TRIP",
  372. "PRE_TRIP_MT",
  373. "HOLIDAY",
  374. "HOLIDAY_MT"
  375. ],
  376. "errors": [
  377. ],
  378. "dialogueTurns": 9,
  379. "passed": true,
  380. "message": "post-booking multi-turn flow ok"
  381. },
  382. "passed": true,
  383. "message": "lifecycle multi-turn dialogue ok"
  384. },
  385. "e2eDialogue": {
  386. "dialogueStage": "bookingFunnel",
  387. "dialogueTurnCount": 10,
  388. "runId": "4394aacb375f43c78e4afd4c0a43a939",
  389. "status": "SUCCESS",
  390. "instanceId": 558,
  391. "totalScore": 71.81,
  392. "passedNodeCnt": 10,
  393. "totalNodeCnt": 10,
  394. "evolutionCount": 1,
  395. "nodeTraces": 10,
  396. "minNodeScore": 76.25,
  397. "maxNodeScore": 88.75,
  398. "nodesBelowTarget": 0,
  399. "nodesBelowMin": 0,
  400. "nodeScoreDetail": [
  401. {
  402. "nodeCode": "初始化咨询阶段",
  403. "score": 88.75,
  404. "passed": true
  405. },
  406. {
  407. "nodeCode": "直播加微推直播间",
  408. "score": 77.5,
  409. "passed": true
  410. },
  411. {
  412. "nodeCode": "推送出行攻略文章",
  413. "score": 78.125,
  414. "passed": true
  415. },
  416. {
  417. "nodeCode": "推送出行攻略文章",
  418. "score": 76.25,
  419. "passed": true
  420. },
  421. {
  422. "nodeCode": "推送出行攻略文章",
  423. "score": 84.375,
  424. "passed": true
  425. },
  426. {
  427. "nodeCode": "推送出行攻略文章",
  428. "score": 76.25,
  429. "passed": true
  430. },
  431. {
  432. "nodeCode": "推送出行攻略文章",
  433. "score": 79.375,
  434. "passed": true
  435. },
  436. {
  437. "nodeCode": "推送出行攻略文章",
  438. "score": 80.625,
  439. "passed": true
  440. },
  441. {
  442. "nodeCode": "推送出行攻略文章",
  443. "score": 76.875,
  444. "passed": true
  445. }
  446. ],
  447. "passed": true,
  448. "message": "e2e ok"
  449. },
  450. "qualityGate": {
  451. "enabled": true,
  452. "targetScorePercent": 75.0,
  453. "minE2eAvgScorePercent": 75.0,
  454. "minNodeScorePercent": 60.0,
  455. "passScorePercent": 90,
  456. "rawTotalScore": 71.81,
  457. "scoredNodeAvg": 79.79166666666667,
  458. "totalScore": 79.79166666666667,
  459. "nodesBelowTarget": 0,
  460. "nodesBelowMin": 0,
  461. "minNodeScore": 76.25,
  462. "maxNodeScore": 88.75,
  463. "nodeScoreDetail": [
  464. {
  465. "nodeCode": "初始化咨询阶段",
  466. "score": 88.75,
  467. "passed": true
  468. },
  469. {
  470. "nodeCode": "直播加微推直播间",
  471. "score": 77.5,
  472. "passed": true
  473. },
  474. {
  475. "nodeCode": "推送出行攻略文章",
  476. "score": 78.125,
  477. "passed": true
  478. },
  479. {
  480. "nodeCode": "推送出行攻略文章",
  481. "score": 76.25,
  482. "passed": true
  483. },
  484. {
  485. "nodeCode": "推送出行攻略文章",
  486. "score": 84.375,
  487. "passed": true
  488. },
  489. {
  490. "nodeCode": "推送出行攻略文章",
  491. "score": 76.25,
  492. "passed": true
  493. },
  494. {
  495. "nodeCode": "推送出行攻略文章",
  496. "score": 79.375,
  497. "passed": true
  498. },
  499. {
  500. "nodeCode": "推送出行攻略文章",
  501. "score": 80.625,
  502. "passed": true
  503. },
  504. {
  505. "nodeCode": "推送出行攻略文章",
  506. "score": 76.875,
  507. "passed": true
  508. }
  509. ],
  510. "passed": true,
  511. "message": "quality gate ok"
  512. },
  513. "summary": {
  514. "instanceId": 558,
  515. "externalUserId": "999338001",
  516. "asyncDbSummary": true,
  517. "historyLines": 20,
  518. "syncSummaryLength": 62,
  519. "microSummaryLength": 210,
  520. "cachedSummaryOk": true,
  521. "dbSummaryRows": 1,
  522. "passed": true,
  523. "message": "summary persisted to DB"
  524. },
  525. "memoryPipeline": {
  526. "externalUserId": "999338001",
  527. "instanceId": 558,
  528. "summaryOk": true,
  529. "factCount": 20,
  530. "factKeys": [
  531. ],
  532. "passed": true,
  533. "message": "summary or customer_fact persisted"
  534. },
  535. "evolutionAnalyze": {
  536. "e2eEvolutionCount": 1,
  537. "evolutionLogsBefore": 36,
  538. "analyzeInvoked": true,
  539. "analyzeMessage": "analyzeAndSuggest ok",
  540. "evolutionLogsAfter": 36,
  541. "evolutionLogsDelta": 0,
  542. "pendingSuggestions": 0,
  543. "passed": true,
  544. "message": "evolution analyze ok"
  545. },
  546. "sensitiveWord": {
  547. "scopeNote": "lobster SensitiveWordService + evolve step9; not live/call/CompanyAiSensitiveWord AC",
  548. "layers": {
  549. "defaultLib": {
  550. "detectCount": 1,
  551. "filtered": "推荐云南精品线,***,欢迎咨询",
  552. "passed": true
  553. },
  554. "customCrud": {
  555. "word": "LOBSTER_VAL_338",
  556. "hit": true,
  557. "filtered": "行程含***内容",
  558. "passed": true
  559. },
  560. "highRisk": {
  561. "word": "LOBSTER_FRAUD_338",
  562. "highRisk": true,
  563. "passed": true
  564. },
  565. "evolveStep9Simulation": {
  566. "rawHasSensitive": true,
  567. "wouldTransferToHuman": true,
  568. "finalReply": "欢迎咨询,预期收益,***",
  569. "passed": true
  570. },
  571. "wordListLoaded": {
  572. "count": 141,
  573. "passed": true
  574. }
  575. },
  576. "passed": true,
  577. "message": "sensitive word pipeline ok"
  578. },
  579. "executionPolicy": {
  580. "scopeNote": "resolve() strict/content/flow gates used by executor + prompt fallback",
  581. "strictFixedWorkflow": false,
  582. "contentPersonalization": true,
  583. "flowPersonalization": true,
  584. "allowContent": true,
  585. "allowFlow": true,
  586. "executionMode": "HYBRID",
  587. "issues": [
  588. ],
  589. "passed": true,
  590. "message": "execution policy gates ok"
  591. },
  592. "aiGenerate": {
  593. "recordNo": "LOB_1782166913714",
  594. "generateUseLlm": false,
  595. "fallbackGenerate": true,
  596. "finalStatus": 1,
  597. "detail": {
  598. "conversationModel": {
  599. "defaultStage": "consult",
  600. "description": "旅游全链路:会话常驻,节点负责打标/签单/出行关怀/满意度/节日营销",
  601. "version": 2,
  602. "stages": [
  603. {
  604. "code": "consult",
  605. "promptHint": "你是小美,测试旅行社旅行顾问。客户来自直播间,先破冰并了解是否已有出行计划。",
  606. "label": "直播加微破冰",
  607. "goals": [
  608. ]
  609. },
  610. {
  611. "code": "collect",
  612. "promptHint": "逐步询问目的地、日期、人数、预算;一次只问一个关键问题。",
  613. "label": "需求采集打标",
  614. "goals": [
  615. {
  616. "collected": false,
  617. "label": "目的地",
  618. "required": true,
  619. "field": "destination"
  620. },
  621. {
  622. "collected": false,
  623. "label": "出行日期",
  624. "required": true,
  625. "field": "travel_date"
  626. },
  627. {
  628. "collected": false,
  629. "label": "预算",
  630. "required": true,
  631. "field": "budget"
  632. },
  633. {
  634. "collected": false,
  635. "label": "出行人数",
  636. "required": true,
  637. "field": "pax"
  638. }
  639. ]
  640. },
  641. {
  642. "code": "offer",
  643. "promptHint": "基于采集信息推荐云南精品线,突出亮点与优惠,自然引导签单。",
  644. "label": "线路推荐促单",
  645. "goals": [
  646. ]
  647. },
  648. {
  649. "code": "pre_trip",
  650. "promptHint": "出行前5天提醒证件、行李、当地天气与注意事项。",
  651. "label": "出行前关怀",
  652. "goals": [
  653. ]
  654. },
  655. {
  656. "code": "in_trip",
  657. "promptHint": "行程中主动问候,询问是否遇到问题,给出景点玩要建议。",
  658. "label": "行中关怀",
  659. "goals": [
  660. ]
  661. },
  662. {
  663. "code": "post_trip",
  664. "promptHint": "行程结束后收集满意度与改进建议。",
  665. "label": "满意度回访",
  666. "goals": [
  667. ]
  668. },
  669. {
  670. "code": "repurchase",
  671. "promptHint": "大节日前30天关怀,了解是否有新的出行计划并推荐产品。",
  672. "label": "节日营销",
  673. "goals": [
  674. ]
  675. }
  676. ],
  677. "sideTasks": [
  678. {
  679. "triggerIntents": [
  680. "purchase",
  681. "high_intent",
  682. "booked"
  683. ],
  684. "nodeCode": "TAG_AUTO",
  685. "nodeType": 9,
  686. "action": "add_tag"
  687. },
  688. {
  689. "triggerIntents": [
  690. "purchase",
  691. "order",
  692. "book"
  693. ],
  694. "nodeCode": "ORDER_ACTION",
  695. "nodeType": 7,
  696. "action": "create_order"
  697. }
  698. ]
  699. },
  700. "variables": [
  701. {
  702. "varName": "客户姓名",
  703. "label": "客户姓名",
  704. "source": "user_profile",
  705. "type": "string",
  706. "required": 0,
  707. "varType": "string",
  708. "sourceType": "user_profile",
  709. "name": "customerName",
  710. "varCode": "customerName"
  711. },
  712. {
  713. "varName": "目的地",
  714. "label": "目的地",
  715. "source": "conversation",
  716. "type": "string",
  717. "required": 0,
  718. "varType": "string",
  719. "sourceType": "conversation",
  720. "name": "destination",
  721. "varCode": "destination"
  722. },
  723. {
  724. "varName": "出行日期",
  725. "label": "出行日期",
  726. "source": "conversation",
  727. "type": "date",
  728. "required": 0,
  729. "varType": "date",
  730. "sourceType": "conversation",
  731. "name": "travel_date",
  732. "varCode": "travel_date"
  733. },
  734. {
  735. "varName": "预算",
  736. "label": "预算",
  737. "source": "conversation",
  738. "type": "string",
  739. "required": 0,
  740. "varType": "string",
  741. "sourceType": "conversation",
  742. "name": "budget",
  743. "varCode": "budget"
  744. },
  745. {
  746. "varName": "出行人数",
  747. "label": "出行人数",
  748. "source": "conversation",
  749. "type": "number",
  750. "required": 0,
  751. "varType": "number",
  752. "sourceType": "conversation",
  753. "name": "pax",
  754. "varCode": "pax"
  755. },
  756. {
  757. "varName": "测试旅行社",
  758. "label": "测试旅行社",
  759. "source": "manual",
  760. "type": "string",
  761. "required": 0,
  762. "varType": "string",
  763. "sourceType": "manual",
  764. "name": "company_short_name",
  765. "varCode": "company_short_name"
  766. },
  767. {
  768. "varName": "小美",
  769. "label": "小美",
  770. "source": "manual",
  771. "type": "string",
  772. "required": 0,
  773. "varType": "string",
  774. "sourceType": "manual",
  775. "name": "advisor_name",
  776. "varCode": "advisor_name"
  777. },
  778. {
  779. "varName": "云南精品线",
  780. "label": "云南精品线",
  781. "source": "manual",
  782. "type": "string",
  783. "required": 0,
  784. "varType": "string",
  785. "sourceType": "manual",
  786. "name": "main_product",
  787. "varCode": "main_product"
  788. },
  789. {
  790. "varName": "当前阶段",
  791. "label": "当前阶段",
  792. "source": "manual",
  793. "type": "string",
  794. "required": 0,
  795. "varType": "string",
  796. "sourceType": "manual",
  797. "name": "workflowStage",
  798. "varCode": "workflowStage"
  799. },
  800. {
  801. "varName": "客户意向",
  802. "label": "客户意向",
  803. "source": "conversation",
  804. "type": "string",
  805. "required": 0,
  806. "varType": "string",
  807. "sourceType": "conversation",
  808. "name": "customerIntent",
  809. "varCode": "customerIntent"
  810. },
  811. {
  812. "varName": "行业类型",
  813. "defaultValue": "travel",
  814. "label": "行业类型",
  815. "source": "manual",
  816. "type": "string",
  817. "required": 0,
  818. "varType": "string",
  819. "sourceType": "manual",
  820. "name": "industryType",
  821. "varCode": "industryType"
  822. },
  823. {
  824. "varName": "企微SOP模板ID",
  825. "defaultValue": "LOBSTER_TRAVEL_POST_BOOKING",
  826. "label": "企微SOP模板ID",
  827. "source": "manual",
  828. "type": "string",
  829. "required": 0,
  830. "varType": "string",
  831. "sourceType": "manual",
  832. "name": "sopTempId",
  833. "varCode": "sopTempId"
  834. },
  835. {
  836. "varName": "个微SOP模板ID",
  837. "defaultValue": "LOBSTER_TRAVEL_POST_BOOKING_WX",
  838. "label": "个微SOP模板ID",
  839. "source": "manual",
  840. "type": "string",
  841. "required": 0,
  842. "varType": "string",
  843. "sourceType": "manual",
  844. "name": "wxSopTempId",
  845. "varCode": "wxSopTempId"
  846. }
  847. ],
  848. "edges": [
  849. {
  850. "targetNodeCode": "INIT_STAGE",
  851. "sourceNodeCode": "START",
  852. "edgeLabel": "启动"
  853. },
  854. {
  855. "targetNodeCode": "LIVE_PUSH",
  856. "sourceNodeCode": "INIT_STAGE",
  857. "edgeLabel": "直播加微推直播间"
  858. },
  859. {
  860. "targetNodeCode": "ARTICLE_PUSH",
  861. "sourceNodeCode": "LIVE_PUSH",
  862. "edgeLabel": "推送攻略文章"
  863. },
  864. {
  865. "targetNodeCode": "TAG_AUTO",
  866. "sourceNodeCode": "ARTICLE_PUSH",
  867. "edgeLabel": "进入采集打标"
  868. },
  869. {
  870. "targetNodeCode": "JUDGE",
  871. "sourceNodeCode": "TAG_AUTO",
  872. "edgeLabel": "分支"
  873. },
  874. {
  875. "targetNodeCode": "ORDER_ACTION",
  876. "sourceNodeCode": "JUDGE",
  877. "edgeLabel": "签单"
  878. },
  879. {
  880. "targetNodeCode": "WAIT_PRE_TRIP",
  881. "sourceNodeCode": "JUDGE",
  882. "edgeLabel": "已订"
  883. },
  884. {
  885. "targetNodeCode": "WAIT_HOLIDAY",
  886. "sourceNodeCode": "JUDGE",
  887. "edgeLabel": "培育"
  888. },
  889. {
  890. "targetNodeCode": "SOP_ENROLL",
  891. "sourceNodeCode": "ORDER_ACTION",
  892. "edgeLabel": "SOP入营"
  893. },
  894. {
  895. "targetNodeCode": "WAIT_PRE_TRIP",
  896. "sourceNodeCode": "SOP_ENROLL",
  897. "edgeLabel": "进入出行前"
  898. },
  899. {
  900. "targetNodeCode": "PRE_TRIP_CARE",
  901. "sourceNodeCode": "WAIT_PRE_TRIP",
  902. "edgeLabel": "T-5触达"
  903. },
  904. {
  905. "targetNodeCode": "WEATHER_TIPS",
  906. "sourceNodeCode": "PRE_TRIP_CARE",
  907. "edgeLabel": "天气建议"
  908. },
  909. {
  910. "targetNodeCode": "IN_TRIP_CARE",
  911. "sourceNodeCode": "WEATHER_TIPS",
  912. "edgeLabel": "行中"
  913. },
  914. {
  915. "targetNodeCode": "SURVEY",
  916. "sourceNodeCode": "IN_TRIP_CARE",
  917. "edgeLabel": "满意度"
  918. },
  919. {
  920. "targetNodeCode": "WAIT_HOLIDAY",
  921. "sourceNodeCode": "SURVEY",
  922. "edgeLabel": "节日等待"
  923. },
  924. {
  925. "targetNodeCode": "HOLIDAY_PROMO",
  926. "sourceNodeCode": "WAIT_HOLIDAY",
  927. "edgeLabel": "节日营销"
  928. },
  929. {
  930. "targetNodeCode": "END",
  931. "sourceNodeCode": "HOLIDAY_PROMO",
  932. "edgeLabel": "结束"
  933. }
  934. ],
  935. "description": "旅游公司销冠全流程:直播加微→破冰→采集出行需求→线路推荐→促单签单→出行前关怀→旅途中关怀→回访调研→节日营销→循环推荐",
  936. "templateCode": "TRAVEL_TOP_SALES_001",
  937. "errorMsg": "已使用行业兜底模板: validation fast fallback",
  938. "brandContext": {
  939. "advisorName": "小美",
  940. "companyShortName": "测试旅行社",
  941. "advisorRole": "金牌旅行顾问",
  942. "mainProduct": "云南精品线"
  943. },
  944. "_fallbackSource": "travel_lifecycle_full",
  945. "nodes": [
  946. {
  947. "nodeName": "开始",
  948. "nextNodeCode": "INIT_STAGE",
  949. "nodeCode": "START",
  950. "maxRounds": 0,
  951. "nodeType": 1,
  952. "nodeConfig": "{\"autoAdvance\":true,\"channelHint\":\"QW\"}",
  953. "sortNo": 1,
  954. "conditionExpr": "",
  955. "messageTemplate": "您好${customerName},我是小美,测试旅行社旅行顾问。看到您从直播间过来,打算去哪里玩呢?"
  956. },
  957. {
  958. "nodeName": "初始化咨询阶段",
  959. "nextNodeCode": "LIVE_PUSH",
  960. "nodeCode": "INIT_STAGE",
  961. "maxRounds": 0,
  962. "nodeType": 16,
  963. "nodeConfig": "{\"assignments\":{\"workflowStage\":\"consult\"},\"stageGate\":true}",
  964. "sortNo": 2,
  965. "conditionExpr": "",
  966. "messageTemplate": ""
  967. },
  968. {
  969. "nodeName": "直播加微推直播间",
  970. "nextNodeCode": "ARTICLE_PUSH",
  971. "nodeCode": "LIVE_PUSH",
  972. "maxRounds": 0,
  973. "nodeType": 54,
  974. "nodeConfig": "{\"delivery\":\"proactive\",\"channelHint\":\"QW\",\"actionOnly\":false,\"keyword\":\"云南精品线\",\"liveBaseUrl\":\"/live/watch\"}",
  975. "sortNo": 3,
  976. "conditionExpr": "",
  977. "messageTemplate": ""
  978. },
  979. {
  980. "nodeName": "推送出行攻略文章",
  981. "nextNodeCode": "TAG_AUTO",
  982. "nodeCode": "ARTICLE_PUSH",
  983. "maxRounds": 0,
  984. "nodeType": 55,
  985. "nodeConfig": "{\"delivery\":\"proactive\",\"actionOnly\":false,\"keyword\":\"云南精品线\",\"articleBaseUrl\":\"/article/detail\"}",
  986. "sortNo": 4,
  987. "conditionExpr": "",
  988. "messageTemplate": ""
  989. },
  990. {
  991. "nodeName": "自动打标",
  992. "nextNodeCode": "JUDGE",
  993. "nodeCode": "TAG_AUTO",
  994. "maxRounds": 0,
  995. "nodeType": 9,
  996. "nodeConfig": "{\"sideTask\":true,\"actionOnly\":true,\"action\":\"add_tag\",\"tags\":[\"travel_lead\",\"qw_live\"],\"triggerIntents\":[\"purchase\",\"high_intent\"]}",
  997. "sortNo": 5,
  998. "conditionExpr": "",
  999. "messageTemplate": ""
  1000. },
  1001. {
  1002. "nodeName": "签单动作",
  1003. "nextNodeCode": "SOP_ENROLL",
  1004. "nodeCode": "ORDER_ACTION",
  1005. "maxRounds": 0,
  1006. "nodeType": 7,
  1007. "nodeConfig": "{\"sideTask\":true,\"actionOnly\":true,\"action\":\"create_order\",\"triggerIntents\":[\"purchase\",\"order\"]}",
  1008. "sortNo": 6,
  1009. "conditionExpr": "",
  1010. "messageTemplate": ""
  1011. },
  1012. {
  1013. "nodeName": "签单后SOP入营",
  1014. "nextNodeCode": "WAIT_PRE_TRIP",
  1015. "nodeCode": "SOP_ENROLL",
  1016. "maxRounds": 0,
  1017. "nodeType": 50,
  1018. "nodeConfig": "{\"sopTempId\":\"LOBSTER_TRAVEL_POST_BOOKING\",\"wxSopTempId\":\"LOBSTER_TRAVEL_POST_BOOKING_WX\",\"preferContactAccount\":true,\"actionOnly\":true}",
  1019. "sortNo": 7,
  1020. "conditionExpr": "",
  1021. "messageTemplate": ""
  1022. },
  1023. {
  1024. "nodeName": "出行前5天等待",
  1025. "nextNodeCode": "PRE_TRIP_CARE",
  1026. "nodeCode": "WAIT_PRE_TRIP",
  1027. "maxRounds": 0,
  1028. "nodeType": 4,
  1029. "nodeConfig": "{\"waitType\":\"date_offset\",\"offsetDays\":-5,\"dateField\":\"travel_date\",\"timeoutHours\":720}",
  1030. "sortNo": 8,
  1031. "conditionExpr": "",
  1032. "messageTemplate": ""
  1033. },
  1034. {
  1035. "nodeName": "出行前提醒",
  1036. "nextNodeCode": "WEATHER_TIPS",
  1037. "nodeCode": "PRE_TRIP_CARE",
  1038. "maxRounds": 0,
  1039. "nodeType": 10,
  1040. "nodeConfig": "{\"delivery\":\"proactive\",\"careType\":\"pre_trip\",\"awaitReply\":true}",
  1041. "sortNo": 9,
  1042. "conditionExpr": "",
  1043. "messageTemplate": "您好,离您的云南精品线出行还有5天啦!请准备好身份证/护照、常用药品和舒适鞋服。需要我帮您核对行程清单吗?"
  1044. },
  1045. {
  1046. "nodeName": "天气与玩要建议",
  1047. "nextNodeCode": "IN_TRIP_CARE",
  1048. "nodeCode": "WEATHER_TIPS",
  1049. "maxRounds": 0,
  1050. "nodeType": 14,
  1051. "nodeConfig": "{\"apiKey\":\"weather_travel_tips\",\"sideTask\":false,\"smartApi\":true}",
  1052. "sortNo": 10,
  1053. "conditionExpr": "",
  1054. "messageTemplate": "根据您目的地近期天气和同行人员情况,建议您注意防晒补水、老人小孩备常用药。具体玩游项目我会结合天气给您建议。"
  1055. },
  1056. {
  1057. "nodeName": "行中关怀",
  1058. "nextNodeCode": "SURVEY",
  1059. "nodeCode": "IN_TRIP_CARE",
  1060. "maxRounds": 0,
  1061. "nodeType": 10,
  1062. "nodeConfig": "{\"delivery\":\"proactive\",\"careType\":\"in_trip\",\"awaitReply\":true}",
  1063. "sortNo": 11,
  1064. "conditionExpr": "",
  1065. "messageTemplate": "旅途还顺利吗?景点玩得怎么样?如有任何问题随时告诉我,小美一直在线。"
  1066. },
  1067. {
  1068. "nodeName": "满意度调查",
  1069. "nextNodeCode": "WAIT_HOLIDAY",
  1070. "nodeCode": "SURVEY",
  1071. "maxRounds": 0,
  1072. "nodeType": 11,
  1073. "nodeConfig": "{\"surveyType\":\"satisfaction\",\"awaitReply\":true}",
  1074. "sortNo": 12,
  1075. "conditionExpr": "",
  1076. "messageTemplate": "感谢您选择测试旅行社!方便用1分钟做个满意度调查吗?您的反馈帮我们做得更好。"
  1077. },
  1078. {
  1079. "nodeName": "节日营销等待",
  1080. "nextNodeCode": "HOLIDAY_PROMO",
  1081. "nodeCode": "WAIT_HOLIDAY",
  1082. "maxRounds": 0,
  1083. "nodeType": 32,
  1084. "nodeConfig": "{\"delayDays\":30,\"cronHint\":\"holiday_minus_30d\"}",
  1085. "sortNo": 13,
  1086. "conditionExpr": "",
  1087. "messageTemplate": ""
  1088. },
  1089. {
  1090. "nodeName": "节日营销触达",
  1091. "nextNodeCode": "END",
  1092. "nodeCode": "HOLIDAY_PROMO",
  1093. "maxRounds": 0,
  1094. "nodeType": 13,
  1095. "nodeConfig": "{\"repurchaseType\":\"holiday\",\"delivery\":\"proactive\"}",
  1096. "sortNo": 14,
  1097. "conditionExpr": "",
  1098. "messageTemplate": "您好!临近节日,想了解下您近期有没有出行计划?云南精品线有新线路优惠,感兴趣我发您看看。"
  1099. },
  1100. {
  1101. "nodeName": "意向分支",
  1102. "nextNodeCode": "",
  1103. "nodeCode": "JUDGE",
  1104. "maxRounds": 0,
  1105. "nodeType": 3,
  1106. "nodeConfig": "{}",
  1107. "sortNo": 15,
  1108. "conditionExpr": "{\"branches\":[{\"nextNodeCode\":\"ORDER_ACTION\",\"condition\":{\"field\":\"customerIntent\",\"operator\":\"eq\",\"value\":\"purchase\"},\"desc\":\"\\u7b7e\\u5355\"},{\"nextNodeCode\":\"WAIT_PRE_TRIP\",\"condition\":{\"field\":\"customerIntent\",\"operator\":\"eq\",\"value\":\"booked\"},\"desc\":\"\\u5df2\\u8ba2\\u8fdb\\u5165\\u51fa\\u884c\\u524d\"},{\"nextNodeCode\":\"HOLIDAY_PROMO\",\"condition\":{\"field\":\"customerIntent\",\"operator\":\"eq\",\"value\":\"inquiry\"},\"desc\":\"\\u7ee7\\u7eed\\u57f9\\u80b2\"}],\"defaultNodeCode\":\"WAIT_HOLIDAY\"}",
  1109. "messageTemplate": ""
  1110. },
  1111. {
  1112. "nodeName": "结束",
  1113. "nextNodeCode": "",
  1114. "nodeCode": "END",
  1115. "maxRounds": 0,
  1116. "nodeType": 5,
  1117. "nodeConfig": "{}",
  1118. "sortNo": 16,
  1119. "conditionExpr": "",
  1120. "messageTemplate": ""
  1121. }
  1122. ],
  1123. "industryType": "travel",
  1124. "templateName": "旅游销冠全链路(A旅游公司)",
  1125. "_generateParam": {
  1126. "advisorName": "小美",
  1127. "companyShortName": "测试旅行社",
  1128. "industryType": "travel",
  1129. "advisorRole": "金牌旅行顾问",
  1130. "mainProduct": "云南精品线"
  1131. },
  1132. "status": 1
  1133. },
  1134. "usedFallback": true,
  1135. "passed": true,
  1136. "workflowId": 67,
  1137. "message": "generate and confirm ok"
  1138. },
  1139. "phase2Learning": {
  1140. "hotReplayRowsBefore": 76,
  1141. "hotReplayRowsAfter": 78,
  1142. "delta": 2,
  1143. "passed": true,
  1144. "status": "ok",
  1145. "hint": "async write ok",
  1146. "message": "learning replay ok",
  1147. "verify": {
  1148. "companyId": 338,
  1149. "archiveTableExists": false,
  1150. "hotIndexExists": true,
  1151. "hotReplayRows": 78,
  1152. "eventLogRows": 78,
  1153. "archiveRows": 0,
  1154. "archiveNote": "table missing or query failed",
  1155. "status": "ok"
  1156. }
  1157. },
  1158. "stress": {
  1159. "multiTurn": {
  1160. "dialogueStage": "stressMultiTurn",
  1161. "turns": 6,
  1162. "avgScore": 73.83333333333333,
  1163. "minScore": 38.0,
  1164. "passed": true,
  1165. "message": "multiTurn ok"
  1166. },
  1167. "rateLimit": {
  1168. "cooldownAt": 6,
  1169. "passed": true,
  1170. "message": "rate limit triggered",
  1171. "instanceId": 560
  1172. },
  1173. "waitWake": {
  1174. "passed": true,
  1175. "message": "lifecycle wait wake ok",
  1176. "statusAfter": "running",
  1177. "resumeIndex": 8,
  1178. "currentIndexAfter": 9,
  1179. "instanceId": 561
  1180. },
  1181. "longMessage": {
  1182. "passed": true,
  1183. "message": "long message handled",
  1184. "code": 200,
  1185. "messageLength": 11000
  1186. },
  1187. "concurrentStart": {
  1188. "passed": true,
  1189. "successCount": 3,
  1190. "instanceIds": [
  1191. 563,
  1192. 564,
  1193. 565
  1194. ],
  1195. "message": "3 burst starts ok"
  1196. },
  1197. "emptyMessage": {
  1198. "passed": true,
  1199. "code": 200,
  1200. "message": "empty message handled"
  1201. },
  1202. "completedReentry": {
  1203. "statusBeforeReentry": "completed",
  1204. "responseMsg": "工作流实例不在运行状态",
  1205. "passed": true,
  1206. "message": "completed reentry handled"
  1207. },
  1208. "instanceState": {
  1209. "passed": true,
  1210. "state": {
  1211. "variables": {
  1212. "_lobsterSimMinuteUnit": 10,
  1213. "workflowStage": "consult",
  1214. "channelType": "TEST",
  1215. "_actionOutcomes": [
  1216. ],
  1217. "activeGoals": [
  1218. ],
  1219. "_recentOutbound": [
  1220. ],
  1221. "conversationMode": "active",
  1222. "_conversationModel": "{\"stages\":[{\"code\":\"consult\",\"promptHint\":\"你是小美,测试旅行社旅行顾问。客户来自直播间,先破冰并了解是否已有出行计划。\",\"label\":\"直播加微破冰\",\"goals\":[]},{\"code\":\"collect\",\"promptHint\":\"逐步询问目的地、日期、人数、预算;一次只问一个关键问题。\",\"label\":\"需求采集打标\",\"goals\":[{\"field\":\"destination\",\"collected\":false,\"label\":\"目的地\",\"required\":true},{\"field\":\"travel_date\",\"collected\":false,\"label\":\"出行日期\",\"required\":true},{\"field\":\"budget\",\"collected\":false,\"label\":\"预算\",\"required\":true},{\"field\":\"pax\",\"collected\":false,\"label\":\"出行人数\",\"required\":true}]},{\"code\":\"offer\",\"promptHint\":\"基于采集信息推荐云南精品线,突出亮点与优惠,自然引导签单。\",\"label\":\"线路推荐促单\",\"goals\":[]},{\"code\":\"pre_trip\",\"promptHint\":\"出行前5天提醒证件、行李、当地天气与注意事项。\",\"label\":\"出行前关怀\",\"goals\":[]},{\"code\":\"in_trip\",\"promptHint\":\"行程中主动问候,询问是否遇到问题,给出景点玩要建议。\",\"label\":\"行中关怀\",\"goals\":[]},{\"code\":\"post_trip\",\"promptHint\":\"行程结束后收集满意度与改进建议。\",\"label\":\"满意度回访\",\"goals\":[]},{\"code\":\"repurchase\",\"promptHint\":\"大节日前30天关怀,了解是否有新的出行计划并推荐产品。\",\"label\":\"节日营销\",\"goals\":[]}],\"sideTasks\":[{\"triggerIntents\":[\"purchase\",\"high_intent\",\"booked\"],\"nodeCode\":\"TAG_AUTO\",\"action\":\"add_tag\",\"nodeType\":9},{\"triggerIntents\":[\"purchase\",\"order\",\"book\"],\"nodeCode\":\"ORDER_ACTION\",\"action\":\"create_order\",\"nodeType\":7}],\"defaultStage\":\"consult\",\"description\":\"旅游全链路:会话常驻,节点负责打标/签单/出行关怀/满意度/节日营销\",\"version\":2}",
  1223. "validation": true
  1224. },
  1225. "instanceId": 568,
  1226. "completedNodes": 0,
  1227. "heartbeat": {
  1228. "instanceId": 568,
  1229. "registered": true,
  1230. "lastHeartbeatTime": "Tue Jun 23 06:23:48 CST 2026",
  1231. "lastHeartbeatTimestamp": 1782167028019,
  1232. "elapsedMinutes": 0,
  1233. "timeoutMinutes": 1440,
  1234. "active": true,
  1235. "status": "active",
  1236. "message": "实例心跳正常"
  1237. },
  1238. "currentNodeName": "开始",
  1239. "startTime": "2026-06-23 06:23:45",
  1240. "currentNodeIndex": 0,
  1241. "lastActivityTime": "2026-06-23 06:23:45",
  1242. "status": "running",
  1243. "totalNodes": 16
  1244. },
  1245. "message": "instance state ok"
  1246. },
  1247. "qualityDirect": {
  1248. "rawScore": 120,
  1249. "normalizedPercent": 75.0,
  1250. "passThreshold": 144,
  1251. "passScorePercent": 90,
  1252. "floorRaw": 96,
  1253. "productionTargetMet": false,
  1254. "passed": true,
  1255. "message": "score ok but below production target 144"
  1256. }
  1257. }
  1258. },
  1259. "dialogueScript": {
  1260. "industryType": "travel",
  1261. "industryLabel": "旅游销冠全链路",
  1262. "stageKeys": [
  1263. "postBookingPreTripMultiTurn",
  1264. "capabilityTriggers",
  1265. "consultMultiTurn",
  1266. "postBookingLifecycle",
  1267. "bookingFunnel",
  1268. "stressMultiTurn",
  1269. "holidayPromoMultiTurn",
  1270. "preTripCareMultiTurn"
  1271. ],
  1272. "stageLineCounts": {
  1273. "postBookingPreTripMultiTurn": 3,
  1274. "capabilityTriggers": 6,
  1275. "consultMultiTurn": 6,
  1276. "postBookingLifecycle": 9,
  1277. "bookingFunnel": 10,
  1278. "stressMultiTurn": 6,
  1279. "holidayPromoMultiTurn": 3,
  1280. "preTripCareMultiTurn": 3
  1281. }
  1282. },
  1283. "qualityGateConfig": {
  1284. "enabled": true,
  1285. "passScorePercent": 90,
  1286. "targetScorePercent": 75,
  1287. "minNodeScorePercent": 60,
  1288. "minE2eAvgScorePercent": 75,
  1289. "multiturnMinAvgScorePercent": 45
  1290. },
  1291. "failures": [
  1292. ],
  1293. "passed": true,
  1294. "durationMs": 640148,
  1295. "templateIdUsed": 66
  1296. }