agentworkshop 0.7.7 → 0.7.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (337) hide show
  1. package/.AgentWorkShop/prompts/host-tools.json +1 -1
  2. package/.output/.AgentWorkShop/prompts/host-tools.json +1 -1
  3. package/.output/nitro.json +1 -1
  4. package/.output/public/_nuxt/-6OnbLFb.js +1 -0
  5. package/.output/public/_nuxt/{BUxYN2mw.js → -nb2uqVg.js} +1 -1
  6. package/.output/public/_nuxt/{DM8DS9MA.js → 6PZPfFcO.js} +1 -1
  7. package/.output/public/_nuxt/91DZTUMJ.js +1 -0
  8. package/.output/public/_nuxt/B0HpdCKS.js +1 -0
  9. package/.output/public/_nuxt/B1g8pJmr.js +2 -0
  10. package/.output/public/_nuxt/B1kA8LhC.js +14 -0
  11. package/.output/public/_nuxt/{uBbDCfTz.js → B5S_UyaC.js} +1 -1
  12. package/.output/public/_nuxt/{DZk24ego.js → B7wL3pDk.js} +1 -1
  13. package/.output/public/_nuxt/B9MUiDFl.js +1 -0
  14. package/.output/public/_nuxt/B9dLFSYI.js +1 -0
  15. package/.output/public/_nuxt/BC8s1Guv.js +1 -0
  16. package/.output/public/_nuxt/{BSXx2vqR.js → BCJFMBQ6.js} +1 -1
  17. package/.output/public/_nuxt/{BYL0Rjqj.js → BDASpD_i.js} +3 -3
  18. package/.output/public/_nuxt/{VnIWJ0ts.js → BN_PdN3J.js} +1 -1
  19. package/.output/public/_nuxt/BUPj10t4.js +1 -0
  20. package/.output/public/_nuxt/BZGNTgTQ2.js +1 -0
  21. package/.output/public/_nuxt/{NIM0Wglj2.js → BaMkWl5i2.js} +1 -1
  22. package/.output/public/_nuxt/BmHvC_OU.js +1 -0
  23. package/.output/public/_nuxt/{BkfchkK62.js → Bp5luxkg2.js} +1 -1
  24. package/.output/public/_nuxt/{ZugRk0CM2.js → BuktKVqK2.js} +1 -1
  25. package/.output/public/_nuxt/By8BpbKH.js +1 -0
  26. package/.output/public/_nuxt/{pRQri7vQ2.js → BytVi9VX2.js} +1 -1
  27. package/.output/public/_nuxt/{D5KJ7_0V.js → C3tCneTM.js} +1 -1
  28. package/.output/public/_nuxt/{CblLEiCZ.js → C9cU_Ujd.js} +3 -3
  29. package/.output/public/_nuxt/{BJ-fxrSw.js → CBciOiTQ.js} +1 -1
  30. package/.output/public/_nuxt/CFn4vHwD.js +1 -0
  31. package/.output/public/_nuxt/{DCXIGxzT.js → CKfhtOt7.js} +2 -2
  32. package/.output/public/_nuxt/CUMdhxg9.js +1 -0
  33. package/.output/public/_nuxt/{ChEKFMxj.js → CUXCQXjG.js} +1 -1
  34. package/.output/public/_nuxt/CfVAr2nf.js +1 -0
  35. package/.output/public/_nuxt/{CvbHIGQY2.js → CgvGu2IO.js} +1 -1
  36. package/.output/public/_nuxt/CjDQPXfv.js +1 -0
  37. package/.output/public/_nuxt/{B4Fia4FB.js → CmHzfVc5.js} +1 -1
  38. package/.output/public/_nuxt/{Do88WZG2.js → Cn3J3NXR.js} +1 -1
  39. package/.output/public/_nuxt/{DNzaswei.js → Cst47G4-.js} +1 -1
  40. package/.output/public/_nuxt/{DYZBdSSg2.js → Ct68Z0232.js} +1 -1
  41. package/.output/public/_nuxt/{BsMpJf7S.js → D-Ca4BGY.js} +6 -6
  42. package/.output/public/_nuxt/D0Szyn_D.js +1 -0
  43. package/.output/public/_nuxt/{CsCpu2Zh.js → D1z7i2UP.js} +1 -1
  44. package/.output/public/_nuxt/{Du-eSpo2.js → D3VJ3lex.js} +1 -1
  45. package/.output/public/_nuxt/D8CqF0yy.js +1 -0
  46. package/.output/public/_nuxt/D8EfUxO2.js +1 -0
  47. package/.output/public/_nuxt/D8wyHvcz2.js +1 -0
  48. package/.output/public/_nuxt/{zwdqvGN_.js → DDdEnkdw.js} +1 -1
  49. package/.output/public/_nuxt/DM4CNkXz.js +1 -0
  50. package/.output/public/_nuxt/DN5RuZ8k.js +18 -0
  51. package/.output/public/_nuxt/DXRZPxGs.js +1 -0
  52. package/.output/public/_nuxt/{C2iWjzEC2.js → DoLasgPj2.js} +1 -1
  53. package/.output/public/_nuxt/{DRq09ZmT.js → DpojD719.js} +1 -1
  54. package/.output/public/_nuxt/Dqj2h40U.js +1 -0
  55. package/.output/public/_nuxt/{BCipft_k2.js → DsUUYP292.js} +1 -1
  56. package/.output/public/_nuxt/DtBu71ev.js +32 -0
  57. package/.output/public/_nuxt/{fQUs58kX2.js → DvgKXPgu2.js} +1 -1
  58. package/.output/public/_nuxt/{C_gFA2H_2.js → DxrgFxIr2.js} +1 -1
  59. package/.output/public/_nuxt/Dy-mxvXY2.js +1 -0
  60. package/.output/public/_nuxt/G0qIw7Gq2.js +1 -0
  61. package/.output/public/_nuxt/{DCEyMaN-.js → MyA0Oeqd.js} +3 -3
  62. package/.output/public/_nuxt/{tRBT-plo.js → OV6PBW2z.js} +1 -1
  63. package/.output/public/_nuxt/TownView.BHLKAjEu.css +1 -0
  64. package/.output/public/_nuxt/VLI2Zy4t.js +5 -0
  65. package/.output/public/_nuxt/_id_.DIxEKj88.css +1 -0
  66. package/.output/public/_nuxt/_id_.DTvjd6VN.css +1 -0
  67. package/.output/public/_nuxt/{_wsId_.COUzMXpP.css → _wsId_.BFyCuUwS.css} +1 -1
  68. package/.output/public/_nuxt/agents.CEbox5-D.css +1 -0
  69. package/.output/public/_nuxt/builds/latest.json +1 -1
  70. package/.output/public/_nuxt/builds/meta/92d6bd39-dbc5-46d5-90d8-8387f36715fa.json +1 -0
  71. package/.output/public/_nuxt/channel-templates.De5ZvrGz.css +1 -0
  72. package/.output/public/_nuxt/daq.6IrhVVfy.css +1 -0
  73. package/.output/public/_nuxt/dcw.DcDjwvqv.css +1 -0
  74. package/.output/public/_nuxt/{default.V3_hUJq1.css → default.BR3e5fPY.css} +1 -1
  75. package/.output/public/_nuxt/{entry.DvlXlPwx.css → entry.5qf6EqfN.css} +1 -1
  76. package/.output/public/_nuxt/{Cyk3du4K2.js → kZV5TQvh2.js} +1 -1
  77. package/.output/public/_nuxt/logs.BO-BSyjm.css +1 -0
  78. package/.output/public/_nuxt/{D4qXvjuV.js → niDwBOZW.js} +2 -2
  79. package/.output/public/_nuxt/pKv_VWR4.js +1 -0
  80. package/.output/public/_nuxt/plugins.Clsky_kl.css +1 -0
  81. package/.output/public/_nuxt/rqZ-1SoP.js +2 -0
  82. package/.output/public/_nuxt/teams.CUMnbQGf.css +1 -0
  83. package/.output/public/_nuxt/tokens.BPLe9ioQ.css +1 -0
  84. package/.output/public/_nuxt/{C8dxXc6K.js → u7KWCGSb.js} +1 -1
  85. package/.output/public/_nuxt/{Bi6AiCuP.js → vJ4FPb-_.js} +1 -1
  86. package/.output/public/_nuxt/wirVyscc.js +1 -0
  87. package/.output/public/_nuxt/workshop.BIdoGfoC.css +1 -0
  88. package/.output/server/chunks/_/nitro.mjs +2042 -1967
  89. package/.output/server/chunks/_/nitro.mjs.map +1 -1
  90. package/.output/server/chunks/build/{TownView-B5KifIaT.mjs → TownView-D8DSdO3H.mjs} +182 -181
  91. package/.output/server/chunks/build/{TownView-B5KifIaT.mjs.map → TownView-D8DSdO3H.mjs.map} +1 -1
  92. package/.output/server/chunks/build/{_id_-Ct4Jhvl1.mjs → _id_-BV4FfiYd.mjs} +37 -36
  93. package/.output/server/chunks/build/_id_-BV4FfiYd.mjs.map +1 -0
  94. package/.output/server/chunks/build/{_id_-C-ewLgfl.mjs → _id_-TP9hvnBM.mjs} +126 -125
  95. package/.output/server/chunks/build/_id_-TP9hvnBM.mjs.map +1 -0
  96. package/.output/server/chunks/build/{_wsId_-CanI_6Su.mjs → _wsId_-Mm9sQSz2.mjs} +125 -124
  97. package/.output/server/chunks/build/{_wsId_-CanI_6Su.mjs.map → _wsId_-Mm9sQSz2.mjs.map} +1 -1
  98. package/.output/server/chunks/build/{agents-DSOptxXA.mjs → agents-To3a5xcZ.mjs} +16 -15
  99. package/.output/server/chunks/build/agents-To3a5xcZ.mjs.map +1 -0
  100. package/.output/server/chunks/build/api-error-dul30BYQ.mjs +47 -0
  101. package/.output/server/chunks/build/api-error-dul30BYQ.mjs.map +1 -0
  102. package/.output/server/chunks/build/{channel-templates-BK0KuPOd.mjs → channel-templates-DRsP-qxl.mjs} +23 -22
  103. package/.output/server/chunks/build/channel-templates-DRsP-qxl.mjs.map +1 -0
  104. package/.output/server/chunks/build/{daq-D9RA_uze.mjs → daq-_hCEaYLd.mjs} +112 -111
  105. package/.output/server/chunks/build/daq-_hCEaYLd.mjs.map +1 -0
  106. package/.output/server/chunks/build/{dcw-BTM5YU-B.mjs → dcw-C7pJ4Y0p.mjs} +47 -46
  107. package/.output/server/chunks/build/dcw-C7pJ4Y0p.mjs.map +1 -0
  108. package/.output/server/chunks/build/{default-BfWGTlbj.mjs → default-Dnjs36e8.mjs} +16 -15
  109. package/.output/server/chunks/build/{default-BfWGTlbj.mjs.map → default-Dnjs36e8.mjs.map} +1 -1
  110. package/.output/server/chunks/build/{logs-Dyk0I2I9.mjs → logs-C039TFW1.mjs} +38 -37
  111. package/.output/server/chunks/build/logs-C039TFW1.mjs.map +1 -0
  112. package/.output/server/chunks/build/{pages-DR2bzczM.mjs → pages-C_VSGSGo.mjs} +5 -4
  113. package/.output/server/chunks/build/pages-C_VSGSGo.mjs.map +1 -0
  114. package/.output/server/chunks/build/{plugins-DnOBIWGg.mjs → plugins-4FMWkN8d.mjs} +25 -22
  115. package/.output/server/chunks/build/plugins-4FMWkN8d.mjs.map +1 -0
  116. package/.output/server/chunks/build/table-Cswq-l2r.mjs +1 -1
  117. package/.output/server/chunks/build/{teams-BhSKBBBM.mjs → teams-DA1lkf1n.mjs} +19 -18
  118. package/.output/server/chunks/build/teams-DA1lkf1n.mjs.map +1 -0
  119. package/.output/server/chunks/build/{tokens-D_eyxmcv.mjs → tokens-DKMvvk3e.mjs} +18 -17
  120. package/.output/server/chunks/build/tokens-DKMvvk3e.mjs.map +1 -0
  121. package/.output/server/chunks/build/{town-DPtOPRRO.mjs → town-D0thZ7PK.mjs} +6 -5
  122. package/.output/server/chunks/build/town-D0thZ7PK.mjs.map +1 -0
  123. package/.output/server/chunks/build/{useDaqStream-hwkhJHFU.mjs → useDaqStream-BVTRw8_H.mjs} +5 -4
  124. package/.output/server/chunks/build/useDaqStream-BVTRw8_H.mjs.map +1 -0
  125. package/.output/server/chunks/build/{useDcwStream-Bdew_yrr.mjs → useDcwStream-DNsivqI_.mjs} +5 -4
  126. package/.output/server/chunks/build/useDcwStream-DNsivqI_.mjs.map +1 -0
  127. package/.output/server/chunks/build/{useDeviceTwins-C6EBg9oN.mjs → useDeviceTwins-WeIom7A6.mjs} +4 -3
  128. package/.output/server/chunks/build/useDeviceTwins-WeIom7A6.mjs.map +1 -0
  129. package/.output/server/chunks/build/useLocalTime-9a4B-aHv.mjs +1 -1
  130. package/.output/server/chunks/build/{useOpsLog-DdCqKVVG.mjs → useOpsLog-DcKnPO43.mjs} +5 -4
  131. package/.output/server/chunks/build/useOpsLog-DcKnPO43.mjs.map +1 -0
  132. package/.output/server/chunks/build/useWorkshopApi-D2gq06N2.mjs +1 -1
  133. package/.output/server/chunks/build/{workshop-iCzNRifn.mjs → workshop-BhWnJMWs.mjs} +50 -43
  134. package/.output/server/chunks/build/workshop-BhWnJMWs.mjs.map +1 -0
  135. package/.output/server/chunks/routes/api/users/setup-status.get.mjs +25 -0
  136. package/.output/server/chunks/routes/api/users/setup-status.get.mjs.map +1 -0
  137. package/.output/server/chunks/routes/api/workshop/caller.mjs +1 -1
  138. package/.output/server/chunks/routes/api/workshop/channel-templates/_id/instantiate.post.mjs +1 -1
  139. package/.output/server/chunks/routes/api/workshop/channels.post.mjs +1 -1
  140. package/.output/server/chunks/routes/api/workshop/daq/_id/samples.get.mjs +3 -2
  141. package/.output/server/chunks/routes/api/workshop/daq/_id/samples.get.mjs.map +1 -1
  142. package/.output/server/chunks/routes/api/workshop/daq/index.post.mjs +1 -1
  143. package/.output/server/chunks/routes/api/workshop/daq/infra/reconnect.post.mjs +1 -1
  144. package/.output/server/chunks/routes/api/workshop/daq/infra.get.mjs +1 -1
  145. package/.output/server/chunks/routes/api/workshop/daq/templates/_key_.delete.mjs +1 -1
  146. package/.output/server/chunks/routes/api/workshop/daq/templates/_key_.patch.mjs +1 -1
  147. package/.output/server/chunks/routes/api/workshop/daq/test-driver.post.mjs +1 -1
  148. package/.output/server/chunks/routes/api/workshop/dcw/_id/bind.post.mjs +1 -1
  149. package/.output/server/chunks/routes/api/workshop/dcw/_id/param-ledger.get.mjs +1 -1
  150. package/.output/server/chunks/routes/api/workshop/dcw/_id/read.post.mjs +1 -1
  151. package/.output/server/chunks/routes/api/workshop/dcw/_id/test.post.mjs +1 -1
  152. package/.output/server/chunks/routes/api/workshop/dcw/_id/write.post.mjs +1 -1
  153. package/.output/server/chunks/routes/api/workshop/dcw/_id_.delete.mjs +1 -1
  154. package/.output/server/chunks/routes/api/workshop/dcw/_id_.patch.mjs +1 -1
  155. package/.output/server/chunks/routes/api/workshop/dcw/controller.post.mjs +1 -1
  156. package/.output/server/chunks/routes/api/workshop/dcw/index.get.mjs +1 -1
  157. package/.output/server/chunks/routes/api/workshop/dcw/index.post.mjs +1 -1
  158. package/.output/server/chunks/routes/api/workshop/dcw/index2.get.mjs +1 -1
  159. package/.output/server/chunks/routes/api/workshop/dcw/index2.post.mjs +1 -1
  160. package/.output/server/chunks/routes/api/workshop/dcw/index3.get.mjs +1 -1
  161. package/.output/server/chunks/routes/api/workshop/dcw/index4.post.mjs +1 -1
  162. package/.output/server/chunks/routes/api/workshop/dcw/journal/node/_nodeId/rollback.post.mjs +1 -1
  163. package/.output/server/chunks/routes/api/workshop/dcw/line/query.get.mjs +1 -1
  164. package/.output/server/chunks/routes/api/workshop/dcw/lines/_id/start.post.mjs +1 -1
  165. package/.output/server/chunks/routes/api/workshop/dcw/lines/_id/stop.post.mjs +1 -1
  166. package/.output/server/chunks/routes/api/workshop/dcw/lines/_id_.delete.mjs +1 -1
  167. package/.output/server/chunks/routes/api/workshop/dcw/lines/_id_.patch.mjs +1 -1
  168. package/.output/server/chunks/routes/api/workshop/dcw/optimizations/_id/judge.post.mjs +1 -1
  169. package/.output/server/chunks/routes/api/workshop/dcw/optimizations/_id/rollback.post.mjs +1 -1
  170. package/.output/server/chunks/routes/api/workshop/dcw/optimizations/_id/series.get.mjs +1 -1
  171. package/.output/server/chunks/routes/api/workshop/dcw/optimizations/_id_.get.mjs +1 -1
  172. package/.output/server/chunks/routes/api/workshop/dcw/products/_id_.delete.mjs +1 -1
  173. package/.output/server/chunks/routes/api/workshop/dcw/products/_id_.patch.mjs +1 -1
  174. package/.output/server/chunks/routes/api/workshop/dcw/recipes/_id/apply.post.mjs +1 -1
  175. package/.output/server/chunks/routes/api/workshop/dcw/recipes/_id/mark-good.post.mjs +1 -1
  176. package/.output/server/chunks/routes/api/workshop/dcw/recipes/_id/rollback-good.post.mjs +1 -1
  177. package/.output/server/chunks/routes/api/workshop/dcw/runs/_id/close.post.mjs +1 -1
  178. package/.output/server/chunks/routes/api/workshop/dcw/runs/_id/data.get.mjs +1 -1
  179. package/.output/server/chunks/routes/api/workshop/dcw/runs/_id/rollback.post.mjs +1 -1
  180. package/.output/server/chunks/routes/api/workshop/dcw/templates/_key_.delete.mjs +1 -1
  181. package/.output/server/chunks/routes/api/workshop/dcw/templates/_key_.patch.mjs +1 -1
  182. package/.output/server/chunks/routes/api/workshop/dcw/test-driver.post.mjs +1 -1
  183. package/.output/server/chunks/routes/api/workshop/device-twins/_id_.delete.mjs +1 -1
  184. package/.output/server/chunks/routes/api/workshop/harnesses/_id/providers.get.mjs +1 -1
  185. package/.output/server/chunks/routes/api/workshop/harnesses.get.mjs +1 -1
  186. package/.output/server/chunks/routes/api/workshop/hitl/pending.get.mjs +1 -1
  187. package/.output/server/chunks/routes/api/workshop/hitl/respond.post.mjs +1 -1
  188. package/.output/server/chunks/routes/api/workshop/index4.get.mjs +1 -1
  189. package/.output/server/chunks/routes/api/workshop/index4.post.mjs +1 -1
  190. package/.output/server/chunks/routes/api/workshop/index5.get.mjs +1 -1
  191. package/.output/server/chunks/routes/api/workshop/index6.post.mjs +1 -1
  192. package/.output/server/chunks/routes/api/workshop/plugins/_name/disable.post.mjs +3 -3
  193. package/.output/server/chunks/routes/api/workshop/plugins/_name/disable.post.mjs.map +1 -1
  194. package/.output/server/chunks/routes/api/workshop/plugins/_name/enable.post.mjs +3 -3
  195. package/.output/server/chunks/routes/api/workshop/plugins/_name/enable.post.mjs.map +1 -1
  196. package/.output/server/chunks/routes/api/workshop/scene/layouts/_channelId_.delete.mjs +1 -1
  197. package/.output/server/chunks/routes/api/workshop/scene/layouts/_channelId_.put.mjs +1 -1
  198. package/.output/server/chunks/routes/api/workshop/workspaces/_id/channel-templates/_tplId_.post.mjs +1 -1
  199. package/.output/server/chunks/routes/renderer.mjs +2 -2
  200. package/.output/server/chunks/virtual/entry.mjs +57 -23
  201. package/.output/server/chunks/virtual/precomputed.mjs +1 -1
  202. package/.output/server/package.json +1 -1
  203. package/README-zh.md +27 -7
  204. package/README.md +455 -435
  205. package/app/components/AppHeader.vue +1 -1
  206. package/app/components/workshop/A2aRpcDebugger.vue +1 -1
  207. package/app/components/workshop/AgentInspectorDrawer.vue +3 -3
  208. package/app/components/workshop/AgentLanesView.vue +6 -6
  209. package/app/components/workshop/AssetLibrary.vue +2 -2
  210. package/app/components/workshop/ChannelSessionList.vue +5 -5
  211. package/app/components/workshop/Composer.vue +1 -1
  212. package/app/components/workshop/DeviceTwinPanel.vue +2 -2
  213. package/app/components/workshop/TaskBoardView.vue +1 -1
  214. package/app/components/workshop/TaskInspectorDrawer.vue +2 -2
  215. package/app/components/workshop/town/TownView.vue +23 -23
  216. package/app/composables/workshop/apiClient.ts +1 -1
  217. package/app/composables/workshop/useCharacterAssets.ts +1 -1
  218. package/app/composables/workshop/useDaqStream.ts +1 -1
  219. package/app/composables/workshop/useDcwStream.ts +1 -1
  220. package/app/composables/workshop/useDeviceTwins.ts +1 -1
  221. package/app/composables/workshop/useOpsLog.ts +2 -2
  222. package/app/composables/workshop/useSceneLayouts.ts +1 -1
  223. package/app/pages/daq/[id].vue +1 -1
  224. package/app/pages/daq/index.vue +8 -8
  225. package/app/pages/dcw/[id].vue +13 -13
  226. package/app/pages/dcw/index.vue +7 -7
  227. package/app/pages/logs/index.vue +1 -1
  228. package/app/pages/plugins/index.vue +14 -6
  229. package/app/pages/tokens.vue +3 -3
  230. package/app/pages/workshop/agents.vue +2 -2
  231. package/app/pages/workshop/channel-templates.vue +3 -3
  232. package/app/pages/workshop/index.vue +29 -10
  233. package/app/pages/workshop/teams.vue +3 -3
  234. package/app/utils/api-error.ts +75 -0
  235. package/cli/commands/plugin.mjs +2 -2
  236. package/config.yml +11 -1
  237. package/i18n/dicts/settings.json +4 -0
  238. package/i18n/locales/en.ts +20 -3
  239. package/i18n/locales/zh-CN.ts +20 -3
  240. package/package.json +1 -1
  241. package/scripts/_dbg-codex-handshake.ts +30 -0
  242. package/scripts/_dbg-codex-sandbox.ts +58 -0
  243. package/scripts/_dbg-codex-turn.ts +65 -0
  244. package/scripts/_dbg-interval-config.mjs +156 -0
  245. package/scripts/_dbg-plugins-e2e.mjs +101 -0
  246. package/scripts/_dbg-repo-setup-verify.mjs +31 -0
  247. package/scripts/_dbg-setup-e2e.mjs +88 -0
  248. package/scripts/e2e-harness-provider-task.mjs +126 -0
  249. package/server/api/users/setup-status.get.ts +8 -0
  250. package/server/api/workshop/daq/[id]/samples.get.ts +4 -2
  251. package/server/api/workshop/plugins/[name]/disable.post.ts +5 -3
  252. package/server/api/workshop/plugins/[name]/enable.post.ts +5 -3
  253. package/server/data/daqs.json +138 -42
  254. package/server/data/dcw-lines.json +28 -0
  255. package/server/data/dcw-products.json +140 -0
  256. package/server/data/dcw-recipes.json +506 -0
  257. package/server/data/dcw-rollback.json +226 -6
  258. package/server/data/dcw-runs.json +1807 -1690
  259. package/server/data/dcw-writes.json +240 -0
  260. package/server/data/dcws.json +673 -173
  261. package/server/data/line-runs.json +26 -6
  262. package/server/plugins/security.ts +46 -50
  263. package/server/repositories/user.repository.ts +384 -414
  264. package/server/services/system-config.ts +7 -0
  265. package/server/services/user.service.ts +8 -3
  266. package/server/services/workshop/agents/adapters/line-spawn.ts +6 -3
  267. package/server/services/workshop/agents/host-tool-bridge.ts +21 -1
  268. package/server/services/workshop/agents/industrial-tools.ts +5 -3
  269. package/server/services/workshop/daq/daq-controller.ts +34 -6
  270. package/server/services/workshop/daq/daq-node.ts +3 -3
  271. package/server/services/workshop/daq/daq-runtime.ts +4 -3
  272. package/server/services/workshop/daq/storage/sqlite.adapter.ts +10 -5
  273. package/server/services/workshop/dcw/dcw-controller.ts +4 -2
  274. package/server/services/workshop/plugins/host.mjs +2 -1
  275. package/server/services/workshop/settings.ts +33 -0
  276. package/shared/config/schema.json +4 -0
  277. package/.output/public/_nuxt/2LwEn9gX.js +0 -2
  278. package/.output/public/_nuxt/3612gD2V.js +0 -32
  279. package/.output/public/_nuxt/8eIQAVlb.js +0 -1
  280. package/.output/public/_nuxt/Ah9qOv1m.js +0 -1
  281. package/.output/public/_nuxt/B7aqqzkY.js +0 -1
  282. package/.output/public/_nuxt/BH0Z05CS.js +0 -1
  283. package/.output/public/_nuxt/BJvGPTpC.js +0 -1
  284. package/.output/public/_nuxt/BVZjSVs2.js +0 -1
  285. package/.output/public/_nuxt/BVzDoF8t.js +0 -1
  286. package/.output/public/_nuxt/BjVLsC3M.js +0 -1
  287. package/.output/public/_nuxt/BnVoQ74r.js +0 -1
  288. package/.output/public/_nuxt/Bnp4vIAf.js +0 -1
  289. package/.output/public/_nuxt/Bt_HDizI.js +0 -5
  290. package/.output/public/_nuxt/Bu-P92Pe.js +0 -18
  291. package/.output/public/_nuxt/ButLXkjo.js +0 -2
  292. package/.output/public/_nuxt/By-LNp3k.js +0 -1
  293. package/.output/public/_nuxt/C-GarxYC.js +0 -1
  294. package/.output/public/_nuxt/CGdPdJPP.js +0 -1
  295. package/.output/public/_nuxt/CQiKcuoG.js +0 -14
  296. package/.output/public/_nuxt/CRGlf1Gb.js +0 -1
  297. package/.output/public/_nuxt/CS8R0_J3.js +0 -1
  298. package/.output/public/_nuxt/CUxV8Bw_.js +0 -1
  299. package/.output/public/_nuxt/Cd15nPnG2.js +0 -1
  300. package/.output/public/_nuxt/DNJSkm3Q.js +0 -1
  301. package/.output/public/_nuxt/DXK1U43I.js +0 -1
  302. package/.output/public/_nuxt/Dk6pq9JB2.js +0 -1
  303. package/.output/public/_nuxt/GP2wXyuY.js +0 -1
  304. package/.output/public/_nuxt/PQLnLxYe.js +0 -1
  305. package/.output/public/_nuxt/TownView.Bt33bo1M.css +0 -1
  306. package/.output/public/_nuxt/_id_.BzKMZnLe.css +0 -1
  307. package/.output/public/_nuxt/_id_.CbpDAWRh.css +0 -1
  308. package/.output/public/_nuxt/agents.BlejnOOC.css +0 -1
  309. package/.output/public/_nuxt/builds/meta/14df171d-89cb-43ec-ad6f-9df72d6da7f5.json +0 -1
  310. package/.output/public/_nuxt/channel-templates.lkqEYlWY.css +0 -1
  311. package/.output/public/_nuxt/daq.zZ8GR433.css +0 -1
  312. package/.output/public/_nuxt/dcw.C46dGiF_.css +0 -1
  313. package/.output/public/_nuxt/eHGLpQSg2.js +0 -1
  314. package/.output/public/_nuxt/logs.DaIsHWZE.css +0 -1
  315. package/.output/public/_nuxt/p7wSGMtc.js +0 -1
  316. package/.output/public/_nuxt/plugins.FTm0PcEe.css +0 -1
  317. package/.output/public/_nuxt/teams.B8JNbUZg.css +0 -1
  318. package/.output/public/_nuxt/tokens.CWOTXM-Z.css +0 -1
  319. package/.output/public/_nuxt/ubPfs9mQ.js +0 -1
  320. package/.output/public/_nuxt/workshop.B98sHiJq.css +0 -1
  321. package/.output/server/chunks/build/_id_-C-ewLgfl.mjs.map +0 -1
  322. package/.output/server/chunks/build/_id_-Ct4Jhvl1.mjs.map +0 -1
  323. package/.output/server/chunks/build/agents-DSOptxXA.mjs.map +0 -1
  324. package/.output/server/chunks/build/channel-templates-BK0KuPOd.mjs.map +0 -1
  325. package/.output/server/chunks/build/daq-D9RA_uze.mjs.map +0 -1
  326. package/.output/server/chunks/build/dcw-BTM5YU-B.mjs.map +0 -1
  327. package/.output/server/chunks/build/logs-Dyk0I2I9.mjs.map +0 -1
  328. package/.output/server/chunks/build/pages-DR2bzczM.mjs.map +0 -1
  329. package/.output/server/chunks/build/plugins-DnOBIWGg.mjs.map +0 -1
  330. package/.output/server/chunks/build/teams-BhSKBBBM.mjs.map +0 -1
  331. package/.output/server/chunks/build/tokens-D_eyxmcv.mjs.map +0 -1
  332. package/.output/server/chunks/build/town-DPtOPRRO.mjs.map +0 -1
  333. package/.output/server/chunks/build/useDaqStream-hwkhJHFU.mjs.map +0 -1
  334. package/.output/server/chunks/build/useDcwStream-Bdew_yrr.mjs.map +0 -1
  335. package/.output/server/chunks/build/useDeviceTwins-C6EBg9oN.mjs.map +0 -1
  336. package/.output/server/chunks/build/useOpsLog-DdCqKVVG.mjs.map +0 -1
  337. package/.output/server/chunks/build/workshop-iCzNRifn.mjs.map +0 -1
@@ -1,12 +1,12 @@
1
1
  [
2
2
  {
3
- "id": "rr-b171f611",
3
+ "id": "rr-dad6d1bf",
4
4
  "recipeId": "rc-7bf584db",
5
5
  "recipeName": "A-标准工艺",
6
6
  "productId": "pd-6348a595",
7
7
  "lineId": "ln-af002514",
8
- "startedAt": "2026-08-30T11:45:42.754Z",
9
- "endedAt": "2026-08-30T11:46:40.875Z",
8
+ "startedAt": "2026-08-31T03:30:02.163Z",
9
+ "endedAt": "2026-08-31T04:07:49.188Z",
10
10
  "results": [
11
11
  {
12
12
  "templateRef": "dcw-temp-sp",
@@ -25,13 +25,13 @@
25
25
  ]
26
26
  },
27
27
  {
28
- "id": "rr-7ff55812",
28
+ "id": "rr-8558edb6",
29
29
  "recipeId": "rc-7bf584db",
30
30
  "recipeName": "A-标准工艺",
31
31
  "productId": "pd-6348a595",
32
32
  "lineId": "ln-af002514",
33
- "startedAt": "2026-08-30T11:49:25.607Z",
34
- "endedAt": "2026-08-30T11:50:03.476Z",
33
+ "startedAt": "2026-08-31T04:07:54.251Z",
34
+ "endedAt": null,
35
35
  "results": [
36
36
  {
37
37
  "templateRef": "dcw-temp-sp",
@@ -50,13 +50,13 @@
50
50
  ]
51
51
  },
52
52
  {
53
- "id": "rr-78084ec6",
53
+ "id": "rr-6b180446",
54
54
  "recipeId": "rc-7bf584db",
55
55
  "recipeName": "A-标准工艺",
56
56
  "productId": "pd-6348a595",
57
57
  "lineId": "ln-af002514",
58
- "startedAt": "2026-08-30T11:51:02.784Z",
59
- "endedAt": "2026-08-30T11:51:07.947Z",
58
+ "startedAt": "2026-08-31T05:39:30.254Z",
59
+ "endedAt": null,
60
60
  "results": [
61
61
  {
62
62
  "templateRef": "dcw-temp-sp",
@@ -75,13 +75,13 @@
75
75
  ]
76
76
  },
77
77
  {
78
- "id": "rr-01ae127b",
78
+ "id": "rr-b1ab97b5",
79
79
  "recipeId": "rc-7bf584db",
80
80
  "recipeName": "A-标准工艺",
81
81
  "productId": "pd-6348a595",
82
82
  "lineId": "ln-af002514",
83
- "startedAt": "2026-08-30T12:15:39.662Z",
84
- "endedAt": "2026-08-30T12:16:35.223Z",
83
+ "startedAt": "2026-08-31T05:52:15.607Z",
84
+ "endedAt": "2026-08-31T15:40:26.251Z",
85
85
  "results": [
86
86
  {
87
87
  "templateRef": "dcw-temp-sp",
@@ -100,638 +100,472 @@
100
100
  ]
101
101
  },
102
102
  {
103
- "id": "rr-f3cb33d0",
104
- "recipeId": "rc-7bf584db",
105
- "recipeName": "A-标准工艺",
106
- "productId": "pd-6348a595",
107
- "lineId": "ln-af002514",
108
- "startedAt": "2026-08-30T12:18:36.060Z",
109
- "endedAt": "2026-08-30T12:19:30.722Z",
103
+ "id": "rr-8788a81c",
104
+ "recipeId": "rc-f62239b2",
105
+ "recipeName": "语义验证配方",
106
+ "productId": "pd-2308e253",
107
+ "lineId": "ln-feef6e4d",
108
+ "startedAt": "2026-08-31T14:26:24.122Z",
109
+ "endedAt": null,
110
110
  "results": [
111
111
  {
112
112
  "templateRef": "dcw-temp-sp",
113
- "nodeId": "dw-322b1978",
114
- "ok": true,
115
- "message": "Mock PLC 写入成功:182 → raw 182,回读一致(标定后物理值 182)",
113
+ "nodeId": "dw-b1c4bbb2",
114
+ "ok": false,
115
+ "message": "Modbus 写入失败: connect ECONNREFUSED 127.0.0.1:1502",
116
116
  "value": 182
117
- },
118
- {
119
- "templateRef": "dcw-pressure-sp",
120
- "nodeId": "dw-e92bb0e7",
121
- "ok": true,
122
- "message": "Mock PLC 写入成功:0.92 → raw 0.92,回读一致(标定后物理值 0.92)",
123
- "value": 0.92
124
117
  }
125
118
  ]
126
119
  },
127
120
  {
128
- "id": "rr-94074f6c",
129
- "recipeId": "rc-7bf584db",
130
- "recipeName": "A-标准工艺",
131
- "productId": "pd-6348a595",
132
- "lineId": "ln-af002514",
133
- "startedAt": "2026-08-30T12:24:48.621Z",
134
- "endedAt": "2026-08-30T12:24:56.192Z",
121
+ "id": "rr-d3d7635c",
122
+ "recipeId": "rc-89031e11",
123
+ "recipeName": "全功能配方-m20gm8",
124
+ "productId": "pd-510edc1b",
125
+ "lineId": "ln-3aff4d75",
126
+ "startedAt": "2026-08-31T15:01:17.249Z",
127
+ "endedAt": "2026-08-31T15:05:19.626Z",
135
128
  "results": [
136
129
  {
137
130
  "templateRef": "dcw-temp-sp",
138
- "nodeId": "dw-322b1978",
139
- "ok": true,
140
- "message": "Mock PLC 写入成功:182 → raw 182,回读一致(标定后物理值 182)",
141
- "value": 182
142
- },
143
- {
144
- "templateRef": "dcw-pressure-sp",
145
- "nodeId": "dw-e92bb0e7",
131
+ "nodeId": "dw-aff8c1f5",
146
132
  "ok": true,
147
- "message": "Mock PLC 写入成功:0.92 → raw 0.92,回读一致(标定后物理值 0.92)",
148
- "value": 0.92
133
+ "message": "Mock PLC 写入成功:180 → raw 180,回读一致(标定后物理值 180)",
134
+ "value": 180
149
135
  }
150
136
  ]
151
137
  },
152
138
  {
153
- "id": "rr-7a2b1d8e",
154
- "recipeId": "rc-383d5228",
155
- "recipeName": "全功能配方-cmi1rk",
156
- "productId": "pd-f5e16580",
157
- "lineId": "ln-c6398954",
158
- "startedAt": "2026-08-30T15:01:39.119Z",
159
- "endedAt": "2026-08-30T15:11:53.479Z",
139
+ "id": "rr-38f7f364",
140
+ "recipeId": "rc-9326681e",
141
+ "recipeName": "快照配方-prmthfeolm",
142
+ "productId": "pd-a580ad4f",
143
+ "lineId": "ln-35e3626b",
144
+ "startedAt": "2026-08-31T16:01:42.442Z",
145
+ "endedAt": "2026-08-31T16:03:19.310Z",
160
146
  "results": [
161
147
  {
162
148
  "templateRef": "dcw-temp-sp",
163
- "nodeId": "dw-e7d0b794",
149
+ "nodeId": "dw-a4205751",
164
150
  "ok": true,
165
151
  "message": "Mock PLC 写入成功:180 → raw 180,回读一致(标定后物理值 180)",
166
152
  "value": 180
167
153
  }
168
- ]
169
- },
170
- {
171
- "id": "rr-3cfdeade",
172
- "recipeId": "rc-7bf584db",
173
- "recipeName": "A-标准工艺",
174
- "productId": "pd-6348a595",
175
- "lineId": "ln-af002514",
176
- "startedAt": "2026-08-30T15:51:40.543Z",
177
- "endedAt": "2026-08-30T15:52:09.236Z",
178
- "results": [
154
+ ],
155
+ "paramsSnapshot": [
179
156
  {
157
+ "nodeId": "dw-a4205751",
180
158
  "templateRef": "dcw-temp-sp",
181
- "nodeId": "dw-322b1978",
182
- "ok": true,
183
- "message": "Mock PLC 写入成功:182 → raw 182,回读一致(标定后物理值 182)",
184
- "value": 182
185
- },
186
- {
187
- "templateRef": "dcw-pressure-sp",
188
- "nodeId": "dw-e92bb0e7",
189
- "ok": true,
190
- "message": "Mock PLC 写入成功:0.92 → raw 0.92,回读一致(标定后物理值 0.92)",
191
- "value": 0.92
159
+ "value": 180,
160
+ "min": 176,
161
+ "max": 188
192
162
  }
193
163
  ]
194
164
  },
195
165
  {
196
- "id": "rr-046e4328",
197
- "recipeId": "rc-7bf584db",
198
- "recipeName": "A-标准工艺",
199
- "productId": "pd-6348a595",
200
- "lineId": "ln-af002514",
201
- "startedAt": "2026-08-30T15:52:46.613Z",
202
- "endedAt": "2026-08-30T15:53:02.101Z",
166
+ "id": "rr-51ed0c51",
167
+ "recipeId": "rc-d6ce6aca",
168
+ "recipeName": "快照配方-prmthffidc",
169
+ "productId": "pd-7335ba73",
170
+ "lineId": "ln-c31cf75d",
171
+ "startedAt": "2026-08-31T16:02:20.957Z",
172
+ "endedAt": "2026-08-31T16:02:45.415Z",
203
173
  "results": [
204
174
  {
205
175
  "templateRef": "dcw-temp-sp",
206
- "nodeId": "dw-322b1978",
207
- "ok": true,
208
- "message": "Mock PLC 写入成功:182 → raw 182,回读一致(标定后物理值 182)",
209
- "value": 182
210
- },
211
- {
212
- "templateRef": "dcw-pressure-sp",
213
- "nodeId": "dw-e92bb0e7",
176
+ "nodeId": "dw-47a397c1",
214
177
  "ok": true,
215
- "message": "Mock PLC 写入成功:0.92 → raw 0.92,回读一致(标定后物理值 0.92)",
216
- "value": 0.92
178
+ "message": "Mock PLC 写入成功:180 → raw 180,回读一致(标定后物理值 180)",
179
+ "value": 180
217
180
  }
218
- ]
219
- },
220
- {
221
- "id": "rr-9ac3a8c5",
222
- "recipeId": "rc-7bf584db",
223
- "recipeName": "A-标准工艺",
224
- "productId": "pd-6348a595",
225
- "lineId": "ln-af002514",
226
- "startedAt": "2026-08-30T15:53:46.748Z",
227
- "endedAt": "2026-08-30T15:53:57.454Z",
228
- "results": [
181
+ ],
182
+ "paramsSnapshot": [
229
183
  {
184
+ "nodeId": "dw-47a397c1",
230
185
  "templateRef": "dcw-temp-sp",
231
- "nodeId": "dw-322b1978",
232
- "ok": true,
233
- "message": "Mock PLC 写入成功:182 → raw 182,回读一致(标定后物理值 182)",
234
- "value": 182
235
- },
236
- {
237
- "templateRef": "dcw-pressure-sp",
238
- "nodeId": "dw-e92bb0e7",
239
- "ok": true,
240
- "message": "Mock PLC 写入成功:0.92 → raw 0.92,回读一致(标定后物理值 0.92)",
241
- "value": 0.92
186
+ "value": 180,
187
+ "min": 176,
188
+ "max": 188
242
189
  }
243
190
  ]
244
191
  },
245
192
  {
246
- "id": "rr-cbfa475a",
247
- "recipeId": "rc-be9f32f1",
248
- "recipeName": "OMPDBG-配方",
249
- "productId": "pd-49a5c9c5",
250
- "lineId": "ln-18f515c7",
251
- "startedAt": "2026-08-30T16:33:09.489Z",
252
- "endedAt": null,
193
+ "id": "rr-dce5ebb4",
194
+ "recipeId": "rc-ccbbbad7",
195
+ "recipeName": "独立性配方-ndmthfmq46",
196
+ "productId": "pd-91ac8f36",
197
+ "lineId": "ln-f4b89912",
198
+ "startedAt": "2026-08-31T16:07:57.515Z",
199
+ "endedAt": "2026-08-31T16:08:38.507Z",
253
200
  "results": [
254
201
  {
255
202
  "templateRef": "dcw-temp-sp",
256
- "nodeId": "dw-446be489",
203
+ "nodeId": "dw-c0743b62",
257
204
  "ok": true,
258
205
  "message": "Mock PLC 写入成功:180 → raw 180,回读一致(标定后物理值 180)",
259
206
  "value": 180
260
207
  }
261
- ]
262
- },
263
- {
264
- "id": "rr-aabedbd7",
265
- "recipeId": "rc-d78ba182",
266
- "recipeName": "OMPDBG-配方",
267
- "productId": "pd-46da28bc",
268
- "lineId": "ln-22fa44a1",
269
- "startedAt": "2026-08-30T16:34:22.155Z",
270
- "endedAt": null,
271
- "results": [
208
+ ],
209
+ "paramsSnapshot": [
272
210
  {
211
+ "nodeId": "dw-c0743b62",
273
212
  "templateRef": "dcw-temp-sp",
274
- "nodeId": "dw-17a41938",
275
- "ok": true,
276
- "message": "Mock PLC 写入成功:180 → raw 180,回读一致(标定后物理值 180)",
277
- "value": 180
213
+ "value": 180,
214
+ "min": 176,
215
+ "max": 188
278
216
  }
279
217
  ]
280
218
  },
281
219
  {
282
- "id": "rr-db6393d4",
283
- "recipeId": "rc-d0a6fa11",
284
- "recipeName": "OMPDBG-配方",
285
- "productId": "pd-7b470ac0",
286
- "lineId": "ln-d7460017",
287
- "startedAt": "2026-08-30T16:36:03.781Z",
288
- "endedAt": null,
220
+ "id": "rr-3166887e",
221
+ "recipeId": "rc-249c45ce",
222
+ "recipeName": "独立性配方-ndmthftb7w",
223
+ "productId": "pd-30c207eb",
224
+ "lineId": "ln-673b1dbb",
225
+ "startedAt": "2026-08-31T16:13:04.789Z",
226
+ "endedAt": "2026-08-31T16:13:41.314Z",
289
227
  "results": [
290
228
  {
291
229
  "templateRef": "dcw-temp-sp",
292
- "nodeId": "dw-abd67572",
230
+ "nodeId": "dw-cf5c6f31",
293
231
  "ok": true,
294
232
  "message": "Mock PLC 写入成功:180 → raw 180,回读一致(标定后物理值 180)",
295
233
  "value": 180
296
234
  }
297
- ]
298
- },
299
- {
300
- "id": "rr-a9d4f5d4",
301
- "recipeId": "rc-1d236ab0",
302
- "recipeName": "TEAMDBG-配方",
303
- "productId": "pd-00a1b95a",
304
- "lineId": "ln-d7bd99eb",
305
- "startedAt": "2026-08-30T16:43:36.670Z",
306
- "endedAt": "2026-08-30T16:54:02.934Z",
307
- "results": [
235
+ ],
236
+ "paramsSnapshot": [
308
237
  {
238
+ "nodeId": "dw-cf5c6f31",
309
239
  "templateRef": "dcw-temp-sp",
310
- "nodeId": "dw-7351ea86",
311
- "ok": true,
312
- "message": "Mock PLC 写入成功:180 → raw 180,回读一致(标定后物理值 180)",
313
- "value": 180
240
+ "value": 180,
241
+ "min": 176,
242
+ "max": 188
314
243
  }
315
244
  ]
316
245
  },
317
246
  {
318
- "id": "rr-7e8b6ffe",
319
- "recipeId": "rc-c0660e33",
320
- "recipeName": "TEAMDBG-配方",
321
- "productId": "pd-50c200be",
322
- "lineId": "ln-7dc463ab",
323
- "startedAt": "2026-08-30T16:44:43.852Z",
324
- "endedAt": "2026-08-30T16:54:02.964Z",
247
+ "id": "rr-a417c5ed",
248
+ "recipeId": "rc-bf794217",
249
+ "recipeName": "独立性配方-ndmthfuytl",
250
+ "productId": "pd-f2bff163",
251
+ "lineId": "ln-486aeda3",
252
+ "startedAt": "2026-08-31T16:14:21.970Z",
253
+ "endedAt": "2026-08-31T16:15:02.586Z",
325
254
  "results": [
326
255
  {
327
256
  "templateRef": "dcw-temp-sp",
328
- "nodeId": "dw-0e09fe42",
257
+ "nodeId": "dw-f48330eb",
329
258
  "ok": true,
330
259
  "message": "Mock PLC 写入成功:180 → raw 180,回读一致(标定后物理值 180)",
331
260
  "value": 180
332
261
  }
333
- ]
334
- },
335
- {
336
- "id": "rr-22eba3d5",
337
- "recipeId": "rc-3abdb942",
338
- "recipeName": "TEAMDBG-配方",
339
- "productId": "pd-d7a00eaf",
340
- "lineId": "ln-2d9ed7a3",
341
- "startedAt": "2026-08-30T16:45:58.393Z",
342
- "endedAt": "2026-08-30T16:54:02.980Z",
343
- "results": [
262
+ ],
263
+ "paramsSnapshot": [
344
264
  {
265
+ "nodeId": "dw-f48330eb",
345
266
  "templateRef": "dcw-temp-sp",
346
- "nodeId": "dw-2d439fe9",
347
- "ok": true,
348
- "message": "Mock PLC 写入成功:180 → raw 180,回读一致(标定后物理值 180)",
349
- "value": 180
267
+ "value": 180,
268
+ "min": 176,
269
+ "max": 188
350
270
  }
351
271
  ]
352
272
  },
353
273
  {
354
- "id": "rr-006cdef3",
355
- "recipeId": "rc-79f78e9b",
356
- "recipeName": "TEAMDBG-配方",
357
- "productId": "pd-a2083b71",
358
- "lineId": "ln-2104ed0e",
359
- "startedAt": "2026-08-30T16:47:00.727Z",
360
- "endedAt": "2026-08-30T16:54:02.996Z",
274
+ "id": "rr-31bd6332",
275
+ "recipeId": "rc-2af34217",
276
+ "recipeName": "独立性配方-ndmthfwq9p",
277
+ "productId": "pd-a424dfd1",
278
+ "lineId": "ln-32736fa4",
279
+ "startedAt": "2026-08-31T16:15:44.244Z",
280
+ "endedAt": "2026-08-31T16:16:24.815Z",
361
281
  "results": [
362
282
  {
363
283
  "templateRef": "dcw-temp-sp",
364
- "nodeId": "dw-15099e27",
284
+ "nodeId": "dw-b952387c",
365
285
  "ok": true,
366
286
  "message": "Mock PLC 写入成功:180 → raw 180,回读一致(标定后物理值 180)",
367
287
  "value": 180
368
288
  }
369
- ]
370
- },
371
- {
372
- "id": "rr-173c33b3",
373
- "recipeId": "rc-af913fcc",
374
- "recipeName": "TEAMDBG-配方",
375
- "productId": "pd-2874ada9",
376
- "lineId": "ln-08e71bc4",
377
- "startedAt": "2026-08-30T16:49:54.137Z",
378
- "endedAt": "2026-08-30T16:54:03.037Z",
379
- "results": [
289
+ ],
290
+ "paramsSnapshot": [
380
291
  {
292
+ "nodeId": "dw-b952387c",
381
293
  "templateRef": "dcw-temp-sp",
382
- "nodeId": "dw-3f1fc785",
383
- "ok": true,
384
- "message": "Mock PLC 写入成功:180 → raw 180,回读一致(标定后物理值 180)",
385
- "value": 180
294
+ "value": 180,
295
+ "min": 176,
296
+ "max": 188
386
297
  }
387
298
  ]
388
299
  },
389
300
  {
390
- "id": "rr-7bad6c2f",
391
- "recipeId": "rc-3cc6b71c",
392
- "recipeName": "全功能配方-5u2sgc",
393
- "productId": "pd-3a2d96f2",
394
- "lineId": "ln-afd73022",
395
- "startedAt": "2026-08-30T16:54:26.216Z",
396
- "endedAt": "2026-08-30T16:56:37.989Z",
301
+ "id": "rr-c645c0fe",
302
+ "recipeId": "rc-96943477",
303
+ "recipeName": "RB审计配方-43dhw",
304
+ "productId": "pd-5ad84699",
305
+ "lineId": "ln-427909b2",
306
+ "startedAt": "2026-08-31T16:15:59.477Z",
307
+ "endedAt": "2026-08-31T16:16:00.297Z",
397
308
  "results": [
398
309
  {
399
310
  "templateRef": "dcw-temp-sp",
400
- "nodeId": "dw-b91bdc6d",
311
+ "nodeId": "dw-7269e65a",
401
312
  "ok": true,
402
- "message": "Mock PLC 写入成功:180 → raw 180,回读一致(标定后物理值 180)",
403
- "value": 180
313
+ "message": "Mock PLC 写入成功:175 → raw 175,回读一致(标定后物理值 175)",
314
+ "value": 175
404
315
  }
405
- ]
406
- },
407
- {
408
- "id": "rr-69067357",
409
- "recipeId": "rc-d818cba9",
410
- "recipeName": "全功能配方-rgk2f3",
411
- "productId": "pd-bac0aa38",
412
- "lineId": "ln-9d152c2c",
413
- "startedAt": "2026-08-31T02:07:53.607Z",
414
- "endedAt": "2026-08-31T02:11:01.066Z",
415
- "results": [
316
+ ],
317
+ "paramsSnapshot": [
416
318
  {
319
+ "nodeId": "dw-7269e65a",
417
320
  "templateRef": "dcw-temp-sp",
418
- "nodeId": "dw-0f3224b4",
419
- "ok": true,
420
- "message": "Mock PLC 写入成功:180 → raw 180,回读一致(标定后物理值 180)",
421
- "value": 180
321
+ "value": 175,
322
+ "min": 160,
323
+ "max": 180
422
324
  }
423
325
  ]
424
326
  },
425
327
  {
426
- "id": "rr-dad6d1bf",
427
- "recipeId": "rc-7bf584db",
428
- "recipeName": "A-标准工艺",
429
- "productId": "pd-6348a595",
430
- "lineId": "ln-af002514",
431
- "startedAt": "2026-08-31T03:30:02.163Z",
432
- "endedAt": "2026-08-31T04:07:49.188Z",
328
+ "id": "rr-a1578f1e",
329
+ "recipeId": "rc-7f17a222",
330
+ "recipeName": "BOPP 标准工艺",
331
+ "productId": "pd-3ad54846",
332
+ "lineId": "ln-29c185e7",
333
+ "startedAt": "2026-08-31T16:20:13.707Z",
334
+ "endedAt": "2026-09-02T15:29:50.871Z",
433
335
  "results": [
434
336
  {
435
337
  "templateRef": "dcw-temp-sp",
436
- "nodeId": "dw-322b1978",
338
+ "nodeId": "dw-405438fa",
437
339
  "ok": true,
438
340
  "message": "Mock PLC 写入成功:182 → raw 182,回读一致(标定后物理值 182)",
439
341
  "value": 182
440
342
  },
441
343
  {
442
- "templateRef": "dcw-pressure-sp",
443
- "nodeId": "dw-e92bb0e7",
344
+ "templateRef": "dcw-speed-sp",
345
+ "nodeId": "dw-6b558041",
444
346
  "ok": true,
445
- "message": "Mock PLC 写入成功:0.92 → raw 0.92,回读一致(标定后物理值 0.92)",
446
- "value": 0.92
347
+ "message": "Mock PLC 写入成功:320 → raw 320,回读一致(标定后物理值 320)",
348
+ "value": 320
447
349
  }
448
- ]
449
- },
450
- {
451
- "id": "rr-8558edb6",
452
- "recipeId": "rc-7bf584db",
453
- "recipeName": "A-标准工艺",
454
- "productId": "pd-6348a595",
455
- "lineId": "ln-af002514",
456
- "startedAt": "2026-08-31T04:07:54.251Z",
457
- "endedAt": null,
458
- "results": [
350
+ ],
351
+ "paramsSnapshot": [
459
352
  {
353
+ "nodeId": "dw-405438fa",
460
354
  "templateRef": "dcw-temp-sp",
461
- "nodeId": "dw-322b1978",
462
- "ok": true,
463
- "message": "Mock PLC 写入成功:182 → raw 182,回读一致(标定后物理值 182)",
464
- "value": 182
355
+ "value": 182,
356
+ "min": 176,
357
+ "max": 188
465
358
  },
466
359
  {
467
- "templateRef": "dcw-pressure-sp",
468
- "nodeId": "dw-e92bb0e7",
469
- "ok": true,
470
- "message": "Mock PLC 写入成功:0.92 → raw 0.92,回读一致(标定后物理值 0.92)",
471
- "value": 0.92
360
+ "nodeId": "dw-6b558041",
361
+ "templateRef": "dcw-speed-sp",
362
+ "value": 320,
363
+ "min": 300,
364
+ "max": 340
472
365
  }
473
366
  ]
474
367
  },
475
368
  {
476
- "id": "rr-6b180446",
477
- "recipeId": "rc-7bf584db",
478
- "recipeName": "A-标准工艺",
479
- "productId": "pd-6348a595",
480
- "lineId": "ln-af002514",
481
- "startedAt": "2026-08-31T05:39:30.254Z",
369
+ "id": "rr-9ec3a5fc",
370
+ "recipeId": "rc-f1a8764f",
371
+ "recipeName": "RB审计配方-n4iy3",
372
+ "productId": "pd-fc436518",
373
+ "lineId": "ln-d41a0d5e",
374
+ "startedAt": "2026-08-31T16:22:44.701Z",
482
375
  "endedAt": null,
483
376
  "results": [
484
377
  {
485
378
  "templateRef": "dcw-temp-sp",
486
- "nodeId": "dw-322b1978",
487
- "ok": true,
488
- "message": "Mock PLC 写入成功:182 → raw 182,回读一致(标定后物理值 182)",
489
- "value": 182
490
- },
491
- {
492
- "templateRef": "dcw-pressure-sp",
493
- "nodeId": "dw-e92bb0e7",
379
+ "nodeId": "dw-6d6ccfd9",
494
380
  "ok": true,
495
- "message": "Mock PLC 写入成功:0.92 → raw 0.92,回读一致(标定后物理值 0.92)",
496
- "value": 0.92
381
+ "message": "Mock PLC 写入成功:175 → raw 175,回读一致(标定后物理值 175)",
382
+ "value": 175
497
383
  }
498
- ]
499
- },
500
- {
501
- "id": "rr-b1ab97b5",
502
- "recipeId": "rc-7bf584db",
503
- "recipeName": "A-标准工艺",
504
- "productId": "pd-6348a595",
505
- "lineId": "ln-af002514",
506
- "startedAt": "2026-08-31T05:52:15.607Z",
507
- "endedAt": "2026-08-31T15:40:26.251Z",
508
- "results": [
384
+ ],
385
+ "paramsSnapshot": [
509
386
  {
387
+ "nodeId": "dw-6d6ccfd9",
510
388
  "templateRef": "dcw-temp-sp",
511
- "nodeId": "dw-322b1978",
512
- "ok": true,
513
- "message": "Mock PLC 写入成功:182 → raw 182,回读一致(标定后物理值 182)",
514
- "value": 182
515
- },
516
- {
517
- "templateRef": "dcw-pressure-sp",
518
- "nodeId": "dw-e92bb0e7",
519
- "ok": true,
520
- "message": "Mock PLC 写入成功:0.92 → raw 0.92,回读一致(标定后物理值 0.92)",
521
- "value": 0.92
389
+ "value": 175,
390
+ "min": 160,
391
+ "max": 180
522
392
  }
523
393
  ]
524
394
  },
525
395
  {
526
- "id": "rr-8788a81c",
527
- "recipeId": "rc-f62239b2",
528
- "recipeName": "语义验证配方",
529
- "productId": "pd-2308e253",
530
- "lineId": "ln-feef6e4d",
531
- "startedAt": "2026-08-31T14:26:24.122Z",
532
- "endedAt": null,
396
+ "id": "rr-3b5a636e",
397
+ "recipeId": "rc-f1a8764f",
398
+ "recipeName": "RB审计配方-n4iy3",
399
+ "productId": "pd-fc436518",
400
+ "lineId": "ln-d41a0d5e",
401
+ "startedAt": "2026-08-31T16:22:49.141Z",
402
+ "endedAt": "2026-08-31T16:22:49.904Z",
533
403
  "results": [
534
404
  {
535
405
  "templateRef": "dcw-temp-sp",
536
- "nodeId": "dw-b1c4bbb2",
537
- "ok": false,
538
- "message": "Modbus 写入失败: connect ECONNREFUSED 127.0.0.1:1502",
539
- "value": 182
406
+ "nodeId": "dw-6d6ccfd9",
407
+ "ok": true,
408
+ "message": "Mock PLC 写入成功:175 → raw 175,回读一致(标定后物理值 175)",
409
+ "value": 175
540
410
  }
541
- ]
542
- },
543
- {
544
- "id": "rr-d3d7635c",
545
- "recipeId": "rc-89031e11",
546
- "recipeName": "全功能配方-m20gm8",
547
- "productId": "pd-510edc1b",
548
- "lineId": "ln-3aff4d75",
549
- "startedAt": "2026-08-31T15:01:17.249Z",
550
- "endedAt": "2026-08-31T15:05:19.626Z",
551
- "results": [
411
+ ],
412
+ "paramsSnapshot": [
552
413
  {
414
+ "nodeId": "dw-6d6ccfd9",
553
415
  "templateRef": "dcw-temp-sp",
554
- "nodeId": "dw-aff8c1f5",
555
- "ok": true,
556
- "message": "Mock PLC 写入成功:180 → raw 180,回读一致(标定后物理值 180)",
557
- "value": 180
416
+ "value": 175,
417
+ "min": 160,
418
+ "max": 180
558
419
  }
559
420
  ]
560
421
  },
561
422
  {
562
- "id": "rr-38f7f364",
563
- "recipeId": "rc-9326681e",
564
- "recipeName": "快照配方-prmthfeolm",
565
- "productId": "pd-a580ad4f",
566
- "lineId": "ln-35e3626b",
567
- "startedAt": "2026-08-31T16:01:42.442Z",
568
- "endedAt": "2026-08-31T16:03:19.310Z",
423
+ "id": "rr-e90f1635",
424
+ "recipeId": "rc-f1a8764f",
425
+ "recipeName": "RB审计配方-n4iy3",
426
+ "productId": "pd-fc436518",
427
+ "lineId": "ln-d41a0d5e",
428
+ "startedAt": "2026-08-31T16:22:49.982Z",
429
+ "endedAt": "2026-08-31T16:22:50.277Z",
569
430
  "results": [
570
431
  {
571
432
  "templateRef": "dcw-temp-sp",
572
- "nodeId": "dw-a4205751",
433
+ "nodeId": "dw-6d6ccfd9",
573
434
  "ok": true,
574
- "message": "Mock PLC 写入成功:180 → raw 180,回读一致(标定后物理值 180)",
575
- "value": 180
435
+ "message": "Mock PLC 写入成功:176 → raw 176,回读一致(标定后物理值 176)",
436
+ "value": 176
576
437
  }
577
438
  ],
578
439
  "paramsSnapshot": [
579
440
  {
580
- "nodeId": "dw-a4205751",
441
+ "nodeId": "dw-6d6ccfd9",
581
442
  "templateRef": "dcw-temp-sp",
582
- "value": 180,
583
- "min": 176,
584
- "max": 188
443
+ "value": 176,
444
+ "min": 160,
445
+ "max": 180
585
446
  }
586
447
  ]
587
448
  },
588
449
  {
589
- "id": "rr-51ed0c51",
590
- "recipeId": "rc-d6ce6aca",
591
- "recipeName": "快照配方-prmthffidc",
592
- "productId": "pd-7335ba73",
593
- "lineId": "ln-c31cf75d",
594
- "startedAt": "2026-08-31T16:02:20.957Z",
595
- "endedAt": "2026-08-31T16:02:45.415Z",
450
+ "id": "rr-2fd3c624",
451
+ "recipeId": "rc-58b3786b",
452
+ "recipeName": "RB审计配方-d5rvg",
453
+ "productId": "pd-4a3566bc",
454
+ "lineId": "ln-2d1adacd",
455
+ "startedAt": "2026-08-31T16:24:24.803Z",
456
+ "endedAt": null,
596
457
  "results": [
597
458
  {
598
459
  "templateRef": "dcw-temp-sp",
599
- "nodeId": "dw-47a397c1",
460
+ "nodeId": "dw-224b6936",
600
461
  "ok": true,
601
- "message": "Mock PLC 写入成功:180 → raw 180,回读一致(标定后物理值 180)",
602
- "value": 180
462
+ "message": "Mock PLC 写入成功:175 → raw 175,回读一致(标定后物理值 175)",
463
+ "value": 175
603
464
  }
604
465
  ],
605
466
  "paramsSnapshot": [
606
467
  {
607
- "nodeId": "dw-47a397c1",
468
+ "nodeId": "dw-224b6936",
608
469
  "templateRef": "dcw-temp-sp",
609
- "value": 180,
610
- "min": 176,
611
- "max": 188
470
+ "value": 175,
471
+ "min": 160,
472
+ "max": 180
612
473
  }
613
474
  ]
614
475
  },
615
476
  {
616
- "id": "rr-dce5ebb4",
617
- "recipeId": "rc-ccbbbad7",
618
- "recipeName": "独立性配方-ndmthfmq46",
619
- "productId": "pd-91ac8f36",
620
- "lineId": "ln-f4b89912",
621
- "startedAt": "2026-08-31T16:07:57.515Z",
622
- "endedAt": "2026-08-31T16:08:38.507Z",
477
+ "id": "rr-1f93710c",
478
+ "recipeId": "rc-58b3786b",
479
+ "recipeName": "RB审计配方-d5rvg",
480
+ "productId": "pd-4a3566bc",
481
+ "lineId": "ln-2d1adacd",
482
+ "startedAt": "2026-08-31T16:24:29.388Z",
483
+ "endedAt": "2026-08-31T16:24:30.152Z",
623
484
  "results": [
624
485
  {
625
486
  "templateRef": "dcw-temp-sp",
626
- "nodeId": "dw-c0743b62",
487
+ "nodeId": "dw-224b6936",
627
488
  "ok": true,
628
- "message": "Mock PLC 写入成功:180 → raw 180,回读一致(标定后物理值 180)",
629
- "value": 180
489
+ "message": "Mock PLC 写入成功:175 → raw 175,回读一致(标定后物理值 175)",
490
+ "value": 175
630
491
  }
631
492
  ],
632
493
  "paramsSnapshot": [
633
494
  {
634
- "nodeId": "dw-c0743b62",
495
+ "nodeId": "dw-224b6936",
635
496
  "templateRef": "dcw-temp-sp",
636
- "value": 180,
637
- "min": 176,
638
- "max": 188
497
+ "value": 175,
498
+ "min": 160,
499
+ "max": 180
639
500
  }
640
501
  ]
641
502
  },
642
503
  {
643
- "id": "rr-3166887e",
644
- "recipeId": "rc-249c45ce",
645
- "recipeName": "独立性配方-ndmthftb7w",
646
- "productId": "pd-30c207eb",
647
- "lineId": "ln-673b1dbb",
648
- "startedAt": "2026-08-31T16:13:04.789Z",
649
- "endedAt": "2026-08-31T16:13:41.314Z",
504
+ "id": "rr-1fb4a044",
505
+ "recipeId": "rc-58b3786b",
506
+ "recipeName": "RB审计配方-d5rvg",
507
+ "productId": "pd-4a3566bc",
508
+ "lineId": "ln-2d1adacd",
509
+ "startedAt": "2026-08-31T16:24:30.230Z",
510
+ "endedAt": "2026-08-31T16:24:30.526Z",
650
511
  "results": [
651
512
  {
652
513
  "templateRef": "dcw-temp-sp",
653
- "nodeId": "dw-cf5c6f31",
514
+ "nodeId": "dw-224b6936",
654
515
  "ok": true,
655
- "message": "Mock PLC 写入成功:180 → raw 180,回读一致(标定后物理值 180)",
656
- "value": 180
516
+ "message": "Mock PLC 写入成功:176 → raw 176,回读一致(标定后物理值 176)",
517
+ "value": 176
657
518
  }
658
519
  ],
659
520
  "paramsSnapshot": [
660
521
  {
661
- "nodeId": "dw-cf5c6f31",
522
+ "nodeId": "dw-224b6936",
662
523
  "templateRef": "dcw-temp-sp",
663
- "value": 180,
664
- "min": 176,
665
- "max": 188
666
- }
667
- ]
668
- },
669
- {
670
- "id": "rr-a417c5ed",
671
- "recipeId": "rc-bf794217",
672
- "recipeName": "独立性配方-ndmthfuytl",
673
- "productId": "pd-f2bff163",
674
- "lineId": "ln-486aeda3",
675
- "startedAt": "2026-08-31T16:14:21.970Z",
676
- "endedAt": "2026-08-31T16:15:02.586Z",
677
- "results": [
678
- {
679
- "templateRef": "dcw-temp-sp",
680
- "nodeId": "dw-f48330eb",
681
- "ok": true,
682
- "message": "Mock PLC 写入成功:180 → raw 180,回读一致(标定后物理值 180)",
683
- "value": 180
684
- }
685
- ],
686
- "paramsSnapshot": [
687
- {
688
- "nodeId": "dw-f48330eb",
689
- "templateRef": "dcw-temp-sp",
690
- "value": 180,
691
- "min": 176,
692
- "max": 188
524
+ "value": 176,
525
+ "min": 160,
526
+ "max": 180
693
527
  }
694
528
  ]
695
529
  },
696
530
  {
697
- "id": "rr-31bd6332",
698
- "recipeId": "rc-2af34217",
699
- "recipeName": "独立性配方-ndmthfwq9p",
700
- "productId": "pd-a424dfd1",
701
- "lineId": "ln-32736fa4",
702
- "startedAt": "2026-08-31T16:15:44.244Z",
703
- "endedAt": "2026-08-31T16:16:24.815Z",
531
+ "id": "rr-1575bb34",
532
+ "recipeId": "rc-e63444e8",
533
+ "recipeName": "RB审计配方-2au0i",
534
+ "productId": "pd-e7b18a7a",
535
+ "lineId": "ln-572ac0ff",
536
+ "startedAt": "2026-08-31T16:27:28.087Z",
537
+ "endedAt": null,
704
538
  "results": [
705
539
  {
706
540
  "templateRef": "dcw-temp-sp",
707
- "nodeId": "dw-b952387c",
541
+ "nodeId": "dw-102117d5",
708
542
  "ok": true,
709
- "message": "Mock PLC 写入成功:180 → raw 180,回读一致(标定后物理值 180)",
710
- "value": 180
543
+ "message": "Mock PLC 写入成功:175 → raw 175,回读一致(标定后物理值 175)",
544
+ "value": 175
711
545
  }
712
546
  ],
713
547
  "paramsSnapshot": [
714
548
  {
715
- "nodeId": "dw-b952387c",
549
+ "nodeId": "dw-102117d5",
716
550
  "templateRef": "dcw-temp-sp",
717
- "value": 180,
718
- "min": 176,
719
- "max": 188
551
+ "value": 175,
552
+ "min": 160,
553
+ "max": 180
720
554
  }
721
555
  ]
722
556
  },
723
557
  {
724
- "id": "rr-c645c0fe",
725
- "recipeId": "rc-96943477",
726
- "recipeName": "RB审计配方-43dhw",
727
- "productId": "pd-5ad84699",
728
- "lineId": "ln-427909b2",
729
- "startedAt": "2026-08-31T16:15:59.477Z",
730
- "endedAt": "2026-08-31T16:16:00.297Z",
558
+ "id": "rr-ca12f16a",
559
+ "recipeId": "rc-e63444e8",
560
+ "recipeName": "RB审计配方-2au0i",
561
+ "productId": "pd-e7b18a7a",
562
+ "lineId": "ln-572ac0ff",
563
+ "startedAt": "2026-08-31T16:27:32.605Z",
564
+ "endedAt": "2026-08-31T16:27:33.569Z",
731
565
  "results": [
732
566
  {
733
567
  "templateRef": "dcw-temp-sp",
734
- "nodeId": "dw-7269e65a",
568
+ "nodeId": "dw-102117d5",
735
569
  "ok": true,
736
570
  "message": "Mock PLC 写入成功:175 → raw 175,回读一致(标定后物理值 175)",
737
571
  "value": 175
@@ -739,7 +573,7 @@
739
573
  ],
740
574
  "paramsSnapshot": [
741
575
  {
742
- "nodeId": "dw-7269e65a",
576
+ "nodeId": "dw-102117d5",
743
577
  "templateRef": "dcw-temp-sp",
744
578
  "value": 175,
745
579
  "min": 160,
@@ -748,58 +582,44 @@
748
582
  ]
749
583
  },
750
584
  {
751
- "id": "rr-a1578f1e",
752
- "recipeId": "rc-7f17a222",
753
- "recipeName": "BOPP 标准工艺",
754
- "productId": "pd-3ad54846",
755
- "lineId": "ln-29c185e7",
756
- "startedAt": "2026-08-31T16:20:13.707Z",
757
- "endedAt": "2026-09-02T15:29:50.871Z",
585
+ "id": "rr-80226fa8",
586
+ "recipeId": "rc-e63444e8",
587
+ "recipeName": "RB审计配方-2au0i",
588
+ "productId": "pd-e7b18a7a",
589
+ "lineId": "ln-572ac0ff",
590
+ "startedAt": "2026-08-31T16:27:33.647Z",
591
+ "endedAt": "2026-08-31T16:27:33.973Z",
758
592
  "results": [
759
593
  {
760
594
  "templateRef": "dcw-temp-sp",
761
- "nodeId": "dw-405438fa",
762
- "ok": true,
763
- "message": "Mock PLC 写入成功:182 → raw 182,回读一致(标定后物理值 182)",
764
- "value": 182
765
- },
766
- {
767
- "templateRef": "dcw-speed-sp",
768
- "nodeId": "dw-6b558041",
595
+ "nodeId": "dw-102117d5",
769
596
  "ok": true,
770
- "message": "Mock PLC 写入成功:320 → raw 320,回读一致(标定后物理值 320)",
771
- "value": 320
597
+ "message": "Mock PLC 写入成功:176 → raw 176,回读一致(标定后物理值 176)",
598
+ "value": 176
772
599
  }
773
600
  ],
774
601
  "paramsSnapshot": [
775
602
  {
776
- "nodeId": "dw-405438fa",
603
+ "nodeId": "dw-102117d5",
777
604
  "templateRef": "dcw-temp-sp",
778
- "value": 182,
779
- "min": 176,
780
- "max": 188
781
- },
782
- {
783
- "nodeId": "dw-6b558041",
784
- "templateRef": "dcw-speed-sp",
785
- "value": 320,
786
- "min": 300,
787
- "max": 340
605
+ "value": 176,
606
+ "min": 160,
607
+ "max": 180
788
608
  }
789
609
  ]
790
610
  },
791
611
  {
792
- "id": "rr-9ec3a5fc",
793
- "recipeId": "rc-f1a8764f",
794
- "recipeName": "RB审计配方-n4iy3",
795
- "productId": "pd-fc436518",
796
- "lineId": "ln-d41a0d5e",
797
- "startedAt": "2026-08-31T16:22:44.701Z",
612
+ "id": "rr-9dbcdc5a",
613
+ "recipeId": "rc-a252283f",
614
+ "recipeName": "RB审计配方-fs7rd",
615
+ "productId": "pd-35c27e80",
616
+ "lineId": "ln-e132a42f",
617
+ "startedAt": "2026-08-31T16:30:17.092Z",
798
618
  "endedAt": null,
799
619
  "results": [
800
620
  {
801
621
  "templateRef": "dcw-temp-sp",
802
- "nodeId": "dw-6d6ccfd9",
622
+ "nodeId": "dw-73c0b79a",
803
623
  "ok": true,
804
624
  "message": "Mock PLC 写入成功:175 → raw 175,回读一致(标定后物理值 175)",
805
625
  "value": 175
@@ -807,7 +627,7 @@
807
627
  ],
808
628
  "paramsSnapshot": [
809
629
  {
810
- "nodeId": "dw-6d6ccfd9",
630
+ "nodeId": "dw-73c0b79a",
811
631
  "templateRef": "dcw-temp-sp",
812
632
  "value": 175,
813
633
  "min": 160,
@@ -816,17 +636,17 @@
816
636
  ]
817
637
  },
818
638
  {
819
- "id": "rr-3b5a636e",
820
- "recipeId": "rc-f1a8764f",
821
- "recipeName": "RB审计配方-n4iy3",
822
- "productId": "pd-fc436518",
823
- "lineId": "ln-d41a0d5e",
824
- "startedAt": "2026-08-31T16:22:49.141Z",
825
- "endedAt": "2026-08-31T16:22:49.904Z",
639
+ "id": "rr-120df93b",
640
+ "recipeId": "rc-a252283f",
641
+ "recipeName": "RB审计配方-fs7rd",
642
+ "productId": "pd-35c27e80",
643
+ "lineId": "ln-e132a42f",
644
+ "startedAt": "2026-08-31T16:30:21.520Z",
645
+ "endedAt": "2026-08-31T16:30:22.563Z",
826
646
  "results": [
827
647
  {
828
648
  "templateRef": "dcw-temp-sp",
829
- "nodeId": "dw-6d6ccfd9",
649
+ "nodeId": "dw-73c0b79a",
830
650
  "ok": true,
831
651
  "message": "Mock PLC 写入成功:175 → raw 175,回读一致(标定后物理值 175)",
832
652
  "value": 175
@@ -834,7 +654,7 @@
834
654
  ],
835
655
  "paramsSnapshot": [
836
656
  {
837
- "nodeId": "dw-6d6ccfd9",
657
+ "nodeId": "dw-73c0b79a",
838
658
  "templateRef": "dcw-temp-sp",
839
659
  "value": 175,
840
660
  "min": 160,
@@ -843,17 +663,17 @@
843
663
  ]
844
664
  },
845
665
  {
846
- "id": "rr-e90f1635",
847
- "recipeId": "rc-f1a8764f",
848
- "recipeName": "RB审计配方-n4iy3",
849
- "productId": "pd-fc436518",
850
- "lineId": "ln-d41a0d5e",
851
- "startedAt": "2026-08-31T16:22:49.982Z",
852
- "endedAt": "2026-08-31T16:22:50.277Z",
666
+ "id": "rr-76a15eb1",
667
+ "recipeId": "rc-a252283f",
668
+ "recipeName": "RB审计配方-fs7rd",
669
+ "productId": "pd-35c27e80",
670
+ "lineId": "ln-e132a42f",
671
+ "startedAt": "2026-08-31T16:30:22.629Z",
672
+ "endedAt": "2026-08-31T16:30:22.904Z",
853
673
  "results": [
854
674
  {
855
675
  "templateRef": "dcw-temp-sp",
856
- "nodeId": "dw-6d6ccfd9",
676
+ "nodeId": "dw-73c0b79a",
857
677
  "ok": true,
858
678
  "message": "Mock PLC 写入成功:176 → raw 176,回读一致(标定后物理值 176)",
859
679
  "value": 176
@@ -861,7 +681,7 @@
861
681
  ],
862
682
  "paramsSnapshot": [
863
683
  {
864
- "nodeId": "dw-6d6ccfd9",
684
+ "nodeId": "dw-73c0b79a",
865
685
  "templateRef": "dcw-temp-sp",
866
686
  "value": 176,
867
687
  "min": 160,
@@ -870,17 +690,17 @@
870
690
  ]
871
691
  },
872
692
  {
873
- "id": "rr-2fd3c624",
874
- "recipeId": "rc-58b3786b",
875
- "recipeName": "RB审计配方-d5rvg",
876
- "productId": "pd-4a3566bc",
877
- "lineId": "ln-2d1adacd",
878
- "startedAt": "2026-08-31T16:24:24.803Z",
693
+ "id": "rr-63a9d6d6",
694
+ "recipeId": "rc-8a659d97",
695
+ "recipeName": "RB审计配方-33hss",
696
+ "productId": "pd-fe39aac8",
697
+ "lineId": "ln-f178ca43",
698
+ "startedAt": "2026-08-31T16:30:40.424Z",
879
699
  "endedAt": null,
880
700
  "results": [
881
701
  {
882
702
  "templateRef": "dcw-temp-sp",
883
- "nodeId": "dw-224b6936",
703
+ "nodeId": "dw-88c0516b",
884
704
  "ok": true,
885
705
  "message": "Mock PLC 写入成功:175 → raw 175,回读一致(标定后物理值 175)",
886
706
  "value": 175
@@ -888,7 +708,7 @@
888
708
  ],
889
709
  "paramsSnapshot": [
890
710
  {
891
- "nodeId": "dw-224b6936",
711
+ "nodeId": "dw-88c0516b",
892
712
  "templateRef": "dcw-temp-sp",
893
713
  "value": 175,
894
714
  "min": 160,
@@ -897,17 +717,17 @@
897
717
  ]
898
718
  },
899
719
  {
900
- "id": "rr-1f93710c",
901
- "recipeId": "rc-58b3786b",
902
- "recipeName": "RB审计配方-d5rvg",
903
- "productId": "pd-4a3566bc",
904
- "lineId": "ln-2d1adacd",
905
- "startedAt": "2026-08-31T16:24:29.388Z",
906
- "endedAt": "2026-08-31T16:24:30.152Z",
720
+ "id": "rr-76ef5c67",
721
+ "recipeId": "rc-8a659d97",
722
+ "recipeName": "RB审计配方-33hss",
723
+ "productId": "pd-fe39aac8",
724
+ "lineId": "ln-f178ca43",
725
+ "startedAt": "2026-08-31T16:30:44.897Z",
726
+ "endedAt": "2026-08-31T16:30:45.793Z",
907
727
  "results": [
908
728
  {
909
729
  "templateRef": "dcw-temp-sp",
910
- "nodeId": "dw-224b6936",
730
+ "nodeId": "dw-88c0516b",
911
731
  "ok": true,
912
732
  "message": "Mock PLC 写入成功:175 → raw 175,回读一致(标定后物理值 175)",
913
733
  "value": 175
@@ -915,7 +735,7 @@
915
735
  ],
916
736
  "paramsSnapshot": [
917
737
  {
918
- "nodeId": "dw-224b6936",
738
+ "nodeId": "dw-88c0516b",
919
739
  "templateRef": "dcw-temp-sp",
920
740
  "value": 175,
921
741
  "min": 160,
@@ -924,17 +744,17 @@
924
744
  ]
925
745
  },
926
746
  {
927
- "id": "rr-1fb4a044",
928
- "recipeId": "rc-58b3786b",
929
- "recipeName": "RB审计配方-d5rvg",
930
- "productId": "pd-4a3566bc",
931
- "lineId": "ln-2d1adacd",
932
- "startedAt": "2026-08-31T16:24:30.230Z",
933
- "endedAt": "2026-08-31T16:24:30.526Z",
747
+ "id": "rr-1b10764f",
748
+ "recipeId": "rc-8a659d97",
749
+ "recipeName": "RB审计配方-33hss",
750
+ "productId": "pd-fe39aac8",
751
+ "lineId": "ln-f178ca43",
752
+ "startedAt": "2026-08-31T16:30:45.847Z",
753
+ "endedAt": "2026-08-31T16:30:46.110Z",
934
754
  "results": [
935
755
  {
936
756
  "templateRef": "dcw-temp-sp",
937
- "nodeId": "dw-224b6936",
757
+ "nodeId": "dw-88c0516b",
938
758
  "ok": true,
939
759
  "message": "Mock PLC 写入成功:176 → raw 176,回读一致(标定后物理值 176)",
940
760
  "value": 176
@@ -942,7 +762,7 @@
942
762
  ],
943
763
  "paramsSnapshot": [
944
764
  {
945
- "nodeId": "dw-224b6936",
765
+ "nodeId": "dw-88c0516b",
946
766
  "templateRef": "dcw-temp-sp",
947
767
  "value": 176,
948
768
  "min": 160,
@@ -951,17 +771,17 @@
951
771
  ]
952
772
  },
953
773
  {
954
- "id": "rr-1575bb34",
955
- "recipeId": "rc-e63444e8",
956
- "recipeName": "RB审计配方-2au0i",
957
- "productId": "pd-e7b18a7a",
958
- "lineId": "ln-572ac0ff",
959
- "startedAt": "2026-08-31T16:27:28.087Z",
774
+ "id": "rr-c1fe1e62",
775
+ "recipeId": "rc-3287a8ce",
776
+ "recipeName": "RB审计配方-krll7",
777
+ "productId": "pd-27d1c3b1",
778
+ "lineId": "ln-c9e7ccee",
779
+ "startedAt": "2026-08-31T16:31:33.554Z",
960
780
  "endedAt": null,
961
781
  "results": [
962
782
  {
963
783
  "templateRef": "dcw-temp-sp",
964
- "nodeId": "dw-102117d5",
784
+ "nodeId": "dw-59561510",
965
785
  "ok": true,
966
786
  "message": "Mock PLC 写入成功:175 → raw 175,回读一致(标定后物理值 175)",
967
787
  "value": 175
@@ -969,7 +789,7 @@
969
789
  ],
970
790
  "paramsSnapshot": [
971
791
  {
972
- "nodeId": "dw-102117d5",
792
+ "nodeId": "dw-59561510",
973
793
  "templateRef": "dcw-temp-sp",
974
794
  "value": 175,
975
795
  "min": 160,
@@ -978,260 +798,17 @@
978
798
  ]
979
799
  },
980
800
  {
981
- "id": "rr-ca12f16a",
982
- "recipeId": "rc-e63444e8",
983
- "recipeName": "RB审计配方-2au0i",
984
- "productId": "pd-e7b18a7a",
985
- "lineId": "ln-572ac0ff",
986
- "startedAt": "2026-08-31T16:27:32.605Z",
987
- "endedAt": "2026-08-31T16:27:33.569Z",
801
+ "id": "rr-147e9d0f",
802
+ "recipeId": "rc-3287a8ce",
803
+ "recipeName": "RB审计配方-krll7",
804
+ "productId": "pd-27d1c3b1",
805
+ "lineId": "ln-c9e7ccee",
806
+ "startedAt": "2026-08-31T16:31:38.092Z",
807
+ "endedAt": "2026-08-31T16:31:39.054Z",
988
808
  "results": [
989
809
  {
990
810
  "templateRef": "dcw-temp-sp",
991
- "nodeId": "dw-102117d5",
992
- "ok": true,
993
- "message": "Mock PLC 写入成功:175 → raw 175,回读一致(标定后物理值 175)",
994
- "value": 175
995
- }
996
- ],
997
- "paramsSnapshot": [
998
- {
999
- "nodeId": "dw-102117d5",
1000
- "templateRef": "dcw-temp-sp",
1001
- "value": 175,
1002
- "min": 160,
1003
- "max": 180
1004
- }
1005
- ]
1006
- },
1007
- {
1008
- "id": "rr-80226fa8",
1009
- "recipeId": "rc-e63444e8",
1010
- "recipeName": "RB审计配方-2au0i",
1011
- "productId": "pd-e7b18a7a",
1012
- "lineId": "ln-572ac0ff",
1013
- "startedAt": "2026-08-31T16:27:33.647Z",
1014
- "endedAt": "2026-08-31T16:27:33.973Z",
1015
- "results": [
1016
- {
1017
- "templateRef": "dcw-temp-sp",
1018
- "nodeId": "dw-102117d5",
1019
- "ok": true,
1020
- "message": "Mock PLC 写入成功:176 → raw 176,回读一致(标定后物理值 176)",
1021
- "value": 176
1022
- }
1023
- ],
1024
- "paramsSnapshot": [
1025
- {
1026
- "nodeId": "dw-102117d5",
1027
- "templateRef": "dcw-temp-sp",
1028
- "value": 176,
1029
- "min": 160,
1030
- "max": 180
1031
- }
1032
- ]
1033
- },
1034
- {
1035
- "id": "rr-9dbcdc5a",
1036
- "recipeId": "rc-a252283f",
1037
- "recipeName": "RB审计配方-fs7rd",
1038
- "productId": "pd-35c27e80",
1039
- "lineId": "ln-e132a42f",
1040
- "startedAt": "2026-08-31T16:30:17.092Z",
1041
- "endedAt": null,
1042
- "results": [
1043
- {
1044
- "templateRef": "dcw-temp-sp",
1045
- "nodeId": "dw-73c0b79a",
1046
- "ok": true,
1047
- "message": "Mock PLC 写入成功:175 → raw 175,回读一致(标定后物理值 175)",
1048
- "value": 175
1049
- }
1050
- ],
1051
- "paramsSnapshot": [
1052
- {
1053
- "nodeId": "dw-73c0b79a",
1054
- "templateRef": "dcw-temp-sp",
1055
- "value": 175,
1056
- "min": 160,
1057
- "max": 180
1058
- }
1059
- ]
1060
- },
1061
- {
1062
- "id": "rr-120df93b",
1063
- "recipeId": "rc-a252283f",
1064
- "recipeName": "RB审计配方-fs7rd",
1065
- "productId": "pd-35c27e80",
1066
- "lineId": "ln-e132a42f",
1067
- "startedAt": "2026-08-31T16:30:21.520Z",
1068
- "endedAt": "2026-08-31T16:30:22.563Z",
1069
- "results": [
1070
- {
1071
- "templateRef": "dcw-temp-sp",
1072
- "nodeId": "dw-73c0b79a",
1073
- "ok": true,
1074
- "message": "Mock PLC 写入成功:175 → raw 175,回读一致(标定后物理值 175)",
1075
- "value": 175
1076
- }
1077
- ],
1078
- "paramsSnapshot": [
1079
- {
1080
- "nodeId": "dw-73c0b79a",
1081
- "templateRef": "dcw-temp-sp",
1082
- "value": 175,
1083
- "min": 160,
1084
- "max": 180
1085
- }
1086
- ]
1087
- },
1088
- {
1089
- "id": "rr-76a15eb1",
1090
- "recipeId": "rc-a252283f",
1091
- "recipeName": "RB审计配方-fs7rd",
1092
- "productId": "pd-35c27e80",
1093
- "lineId": "ln-e132a42f",
1094
- "startedAt": "2026-08-31T16:30:22.629Z",
1095
- "endedAt": "2026-08-31T16:30:22.904Z",
1096
- "results": [
1097
- {
1098
- "templateRef": "dcw-temp-sp",
1099
- "nodeId": "dw-73c0b79a",
1100
- "ok": true,
1101
- "message": "Mock PLC 写入成功:176 → raw 176,回读一致(标定后物理值 176)",
1102
- "value": 176
1103
- }
1104
- ],
1105
- "paramsSnapshot": [
1106
- {
1107
- "nodeId": "dw-73c0b79a",
1108
- "templateRef": "dcw-temp-sp",
1109
- "value": 176,
1110
- "min": 160,
1111
- "max": 180
1112
- }
1113
- ]
1114
- },
1115
- {
1116
- "id": "rr-63a9d6d6",
1117
- "recipeId": "rc-8a659d97",
1118
- "recipeName": "RB审计配方-33hss",
1119
- "productId": "pd-fe39aac8",
1120
- "lineId": "ln-f178ca43",
1121
- "startedAt": "2026-08-31T16:30:40.424Z",
1122
- "endedAt": null,
1123
- "results": [
1124
- {
1125
- "templateRef": "dcw-temp-sp",
1126
- "nodeId": "dw-88c0516b",
1127
- "ok": true,
1128
- "message": "Mock PLC 写入成功:175 → raw 175,回读一致(标定后物理值 175)",
1129
- "value": 175
1130
- }
1131
- ],
1132
- "paramsSnapshot": [
1133
- {
1134
- "nodeId": "dw-88c0516b",
1135
- "templateRef": "dcw-temp-sp",
1136
- "value": 175,
1137
- "min": 160,
1138
- "max": 180
1139
- }
1140
- ]
1141
- },
1142
- {
1143
- "id": "rr-76ef5c67",
1144
- "recipeId": "rc-8a659d97",
1145
- "recipeName": "RB审计配方-33hss",
1146
- "productId": "pd-fe39aac8",
1147
- "lineId": "ln-f178ca43",
1148
- "startedAt": "2026-08-31T16:30:44.897Z",
1149
- "endedAt": "2026-08-31T16:30:45.793Z",
1150
- "results": [
1151
- {
1152
- "templateRef": "dcw-temp-sp",
1153
- "nodeId": "dw-88c0516b",
1154
- "ok": true,
1155
- "message": "Mock PLC 写入成功:175 → raw 175,回读一致(标定后物理值 175)",
1156
- "value": 175
1157
- }
1158
- ],
1159
- "paramsSnapshot": [
1160
- {
1161
- "nodeId": "dw-88c0516b",
1162
- "templateRef": "dcw-temp-sp",
1163
- "value": 175,
1164
- "min": 160,
1165
- "max": 180
1166
- }
1167
- ]
1168
- },
1169
- {
1170
- "id": "rr-1b10764f",
1171
- "recipeId": "rc-8a659d97",
1172
- "recipeName": "RB审计配方-33hss",
1173
- "productId": "pd-fe39aac8",
1174
- "lineId": "ln-f178ca43",
1175
- "startedAt": "2026-08-31T16:30:45.847Z",
1176
- "endedAt": "2026-08-31T16:30:46.110Z",
1177
- "results": [
1178
- {
1179
- "templateRef": "dcw-temp-sp",
1180
- "nodeId": "dw-88c0516b",
1181
- "ok": true,
1182
- "message": "Mock PLC 写入成功:176 → raw 176,回读一致(标定后物理值 176)",
1183
- "value": 176
1184
- }
1185
- ],
1186
- "paramsSnapshot": [
1187
- {
1188
- "nodeId": "dw-88c0516b",
1189
- "templateRef": "dcw-temp-sp",
1190
- "value": 176,
1191
- "min": 160,
1192
- "max": 180
1193
- }
1194
- ]
1195
- },
1196
- {
1197
- "id": "rr-c1fe1e62",
1198
- "recipeId": "rc-3287a8ce",
1199
- "recipeName": "RB审计配方-krll7",
1200
- "productId": "pd-27d1c3b1",
1201
- "lineId": "ln-c9e7ccee",
1202
- "startedAt": "2026-08-31T16:31:33.554Z",
1203
- "endedAt": null,
1204
- "results": [
1205
- {
1206
- "templateRef": "dcw-temp-sp",
1207
- "nodeId": "dw-59561510",
1208
- "ok": true,
1209
- "message": "Mock PLC 写入成功:175 → raw 175,回读一致(标定后物理值 175)",
1210
- "value": 175
1211
- }
1212
- ],
1213
- "paramsSnapshot": [
1214
- {
1215
- "nodeId": "dw-59561510",
1216
- "templateRef": "dcw-temp-sp",
1217
- "value": 175,
1218
- "min": 160,
1219
- "max": 180
1220
- }
1221
- ]
1222
- },
1223
- {
1224
- "id": "rr-147e9d0f",
1225
- "recipeId": "rc-3287a8ce",
1226
- "recipeName": "RB审计配方-krll7",
1227
- "productId": "pd-27d1c3b1",
1228
- "lineId": "ln-c9e7ccee",
1229
- "startedAt": "2026-08-31T16:31:38.092Z",
1230
- "endedAt": "2026-08-31T16:31:39.054Z",
1231
- "results": [
1232
- {
1233
- "templateRef": "dcw-temp-sp",
1234
- "nodeId": "dw-59561510",
811
+ "nodeId": "dw-59561510",
1235
812
  "ok": true,
1236
813
  "message": "Mock PLC 写入成功:175 → raw 175,回读一致(标定后物理值 175)",
1237
814
  "value": 175
@@ -3470,82 +3047,779 @@
3470
3047
  "templateRef": "dcw-temp-sp",
3471
3048
  "nodeId": "dw-e760b6b0",
3472
3049
  "ok": true,
3473
- "message": "Mock PLC 写入成功:180 → raw 180,回读一致(标定后物理值 180)",
3474
- "value": 180
3050
+ "message": "Mock PLC 写入成功:180 → raw 180,回读一致(标定后物理值 180)",
3051
+ "value": 180
3052
+ }
3053
+ ],
3054
+ "paramsSnapshot": [
3055
+ {
3056
+ "nodeId": "dw-e760b6b0",
3057
+ "templateRef": "dcw-temp-sp",
3058
+ "value": 180,
3059
+ "min": 176,
3060
+ "max": 188
3061
+ }
3062
+ ]
3063
+ },
3064
+ {
3065
+ "id": "rr-4549422d",
3066
+ "recipeId": "rc-ed3e066e",
3067
+ "recipeName": "̽���䷽",
3068
+ "productId": "pd-efb05c40",
3069
+ "lineId": "ln-c1ef6c0d",
3070
+ "startedAt": "2026-09-02T11:55:28.775Z",
3071
+ "endedAt": "2026-09-02T15:29:52.133Z",
3072
+ "results": [
3073
+ {
3074
+ "templateRef": "dcw-temp-sp",
3075
+ "nodeId": "dw-4bcbc922",
3076
+ "ok": true,
3077
+ "message": "Mock PLC 写入成功:180 → raw 180,回读一致(标定后物理值 180)",
3078
+ "value": 180
3079
+ }
3080
+ ],
3081
+ "paramsSnapshot": [
3082
+ {
3083
+ "nodeId": "dw-4bcbc922",
3084
+ "templateRef": "dcw-temp-sp",
3085
+ "value": 180,
3086
+ "min": 176,
3087
+ "max": 188
3088
+ }
3089
+ ]
3090
+ },
3091
+ {
3092
+ "id": "rr-03ed5e01",
3093
+ "recipeId": "rc-0f5b23f2",
3094
+ "recipeName": "全功能配方-a7dbly",
3095
+ "productId": "pd-ea366e9b",
3096
+ "lineId": "ln-b587c5ec",
3097
+ "startedAt": "2026-09-02T13:01:43.015Z",
3098
+ "endedAt": "2026-09-02T13:07:32.569Z",
3099
+ "results": [
3100
+ {
3101
+ "templateRef": "dcw-temp-sp",
3102
+ "nodeId": "dw-67ec7b30",
3103
+ "ok": true,
3104
+ "message": "Mock PLC 写入成功:180 → raw 180,回读一致(标定后物理值 180)",
3105
+ "value": 180
3106
+ }
3107
+ ],
3108
+ "paramsSnapshot": [
3109
+ {
3110
+ "nodeId": "dw-67ec7b30",
3111
+ "templateRef": "dcw-temp-sp",
3112
+ "value": 180,
3113
+ "min": 176,
3114
+ "max": 188
3115
+ }
3116
+ ]
3117
+ },
3118
+ {
3119
+ "id": "rr-b98705be",
3120
+ "recipeId": "rc-7bf584db",
3121
+ "recipeName": "A-标准工艺",
3122
+ "productId": "pd-6348a595",
3123
+ "lineId": "ln-af002514",
3124
+ "startedAt": "2026-09-02T15:12:01.334Z",
3125
+ "endedAt": "2026-09-02T15:12:05.714Z",
3126
+ "results": [
3127
+ {
3128
+ "templateRef": "dcw-temp-sp",
3129
+ "nodeId": "dw-322b1978",
3130
+ "ok": true,
3131
+ "message": "Mock PLC 写入成功:182 → raw 182,回读一致(标定后物理值 182)",
3132
+ "value": 182
3133
+ },
3134
+ {
3135
+ "templateRef": "dcw-pressure-sp",
3136
+ "nodeId": "dw-e92bb0e7",
3137
+ "ok": true,
3138
+ "message": "Mock PLC 写入成功:0.92 → raw 0.92,回读一致(标定后物理值 0.92)",
3139
+ "value": 0.92
3140
+ }
3141
+ ],
3142
+ "paramsSnapshot": [
3143
+ {
3144
+ "nodeId": "dw-322b1978",
3145
+ "templateRef": "dcw-temp-sp",
3146
+ "value": 182,
3147
+ "min": 176,
3148
+ "max": 188
3149
+ },
3150
+ {
3151
+ "nodeId": "dw-e92bb0e7",
3152
+ "templateRef": "dcw-pressure-sp",
3153
+ "value": 0.92,
3154
+ "min": 0.85,
3155
+ "max": 1
3156
+ }
3157
+ ]
3158
+ },
3159
+ {
3160
+ "id": "rr-f0d45b97",
3161
+ "recipeId": "rc-7bf584db",
3162
+ "recipeName": "A-标准工艺",
3163
+ "productId": "pd-6348a595",
3164
+ "lineId": "ln-af002514",
3165
+ "startedAt": "2026-09-02T15:13:49.063Z",
3166
+ "endedAt": "2026-09-02T15:13:54.034Z",
3167
+ "results": [
3168
+ {
3169
+ "templateRef": "dcw-temp-sp",
3170
+ "nodeId": "dw-322b1978",
3171
+ "ok": true,
3172
+ "message": "Mock PLC 写入成功:182 → raw 182,回读一致(标定后物理值 182)",
3173
+ "value": 182
3174
+ },
3175
+ {
3176
+ "templateRef": "dcw-pressure-sp",
3177
+ "nodeId": "dw-e92bb0e7",
3178
+ "ok": true,
3179
+ "message": "Mock PLC 写入成功:0.92 → raw 0.92,回读一致(标定后物理值 0.92)",
3180
+ "value": 0.92
3181
+ }
3182
+ ],
3183
+ "paramsSnapshot": [
3184
+ {
3185
+ "nodeId": "dw-322b1978",
3186
+ "templateRef": "dcw-temp-sp",
3187
+ "value": 182,
3188
+ "min": 176,
3189
+ "max": 188
3190
+ },
3191
+ {
3192
+ "nodeId": "dw-e92bb0e7",
3193
+ "templateRef": "dcw-pressure-sp",
3194
+ "value": 0.92,
3195
+ "min": 0.85,
3196
+ "max": 1
3197
+ }
3198
+ ]
3199
+ },
3200
+ {
3201
+ "id": "rr-ac63ad25",
3202
+ "recipeId": "rc-7bf584db",
3203
+ "recipeName": "A-标准工艺",
3204
+ "productId": "pd-6348a595",
3205
+ "lineId": "ln-af002514",
3206
+ "startedAt": "2026-09-02T15:14:39.397Z",
3207
+ "endedAt": "2026-09-02T15:14:46.231Z",
3208
+ "results": [
3209
+ {
3210
+ "templateRef": "dcw-temp-sp",
3211
+ "nodeId": "dw-322b1978",
3212
+ "ok": true,
3213
+ "message": "Mock PLC 写入成功:182 → raw 182,回读一致(标定后物理值 182)",
3214
+ "value": 182
3215
+ },
3216
+ {
3217
+ "templateRef": "dcw-pressure-sp",
3218
+ "nodeId": "dw-e92bb0e7",
3219
+ "ok": true,
3220
+ "message": "Mock PLC 写入成功:0.92 → raw 0.92,回读一致(标定后物理值 0.92)",
3221
+ "value": 0.92
3222
+ }
3223
+ ],
3224
+ "paramsSnapshot": [
3225
+ {
3226
+ "nodeId": "dw-322b1978",
3227
+ "templateRef": "dcw-temp-sp",
3228
+ "value": 182,
3229
+ "min": 176,
3230
+ "max": 188
3231
+ },
3232
+ {
3233
+ "nodeId": "dw-e92bb0e7",
3234
+ "templateRef": "dcw-pressure-sp",
3235
+ "value": 0.92,
3236
+ "min": 0.85,
3237
+ "max": 1
3238
+ }
3239
+ ]
3240
+ },
3241
+ {
3242
+ "id": "rr-2c3b9222",
3243
+ "recipeId": "rc-7bf584db",
3244
+ "recipeName": "A-标准工艺",
3245
+ "productId": "pd-6348a595",
3246
+ "lineId": "ln-af002514",
3247
+ "startedAt": "2026-09-02T15:19:46.506Z",
3248
+ "endedAt": "2026-09-02T15:19:50.990Z",
3249
+ "results": [
3250
+ {
3251
+ "templateRef": "dcw-temp-sp",
3252
+ "nodeId": "dw-322b1978",
3253
+ "ok": true,
3254
+ "message": "Mock PLC 写入成功:182 → raw 182,回读一致(标定后物理值 182)",
3255
+ "value": 182
3256
+ },
3257
+ {
3258
+ "templateRef": "dcw-pressure-sp",
3259
+ "nodeId": "dw-e92bb0e7",
3260
+ "ok": true,
3261
+ "message": "Mock PLC 写入成功:0.92 → raw 0.92,回读一致(标定后物理值 0.92)",
3262
+ "value": 0.92
3263
+ }
3264
+ ],
3265
+ "paramsSnapshot": [
3266
+ {
3267
+ "nodeId": "dw-322b1978",
3268
+ "templateRef": "dcw-temp-sp",
3269
+ "value": 182,
3270
+ "min": 176,
3271
+ "max": 188
3272
+ },
3273
+ {
3274
+ "nodeId": "dw-e92bb0e7",
3275
+ "templateRef": "dcw-pressure-sp",
3276
+ "value": 0.92,
3277
+ "min": 0.85,
3278
+ "max": 1
3279
+ }
3280
+ ]
3281
+ },
3282
+ {
3283
+ "id": "rr-8a8d4224",
3284
+ "recipeId": "rc-7bf584db",
3285
+ "recipeName": "A-标准工艺",
3286
+ "productId": "pd-6348a595",
3287
+ "lineId": "ln-af002514",
3288
+ "startedAt": "2026-09-02T15:27:34.213Z",
3289
+ "endedAt": "2026-09-02T15:27:46.574Z",
3290
+ "results": [
3291
+ {
3292
+ "templateRef": "dcw-temp-sp",
3293
+ "nodeId": "dw-322b1978",
3294
+ "ok": true,
3295
+ "message": "Mock PLC 写入成功:182 → raw 182,回读一致(标定后物理值 182)",
3296
+ "value": 182
3297
+ },
3298
+ {
3299
+ "templateRef": "dcw-pressure-sp",
3300
+ "nodeId": "dw-e92bb0e7",
3301
+ "ok": true,
3302
+ "message": "Mock PLC 写入成功:0.92 → raw 0.92,回读一致(标定后物理值 0.92)",
3303
+ "value": 0.92
3304
+ }
3305
+ ],
3306
+ "paramsSnapshot": [
3307
+ {
3308
+ "nodeId": "dw-322b1978",
3309
+ "templateRef": "dcw-temp-sp",
3310
+ "value": 182,
3311
+ "min": 176,
3312
+ "max": 188
3313
+ },
3314
+ {
3315
+ "nodeId": "dw-e92bb0e7",
3316
+ "templateRef": "dcw-pressure-sp",
3317
+ "value": 0.92,
3318
+ "min": 0.85,
3319
+ "max": 1
3320
+ }
3321
+ ]
3322
+ },
3323
+ {
3324
+ "id": "rr-fb8734a8",
3325
+ "recipeId": "rc-7bf584db",
3326
+ "recipeName": "A-标准工艺",
3327
+ "productId": "pd-6348a595",
3328
+ "lineId": "ln-af002514",
3329
+ "startedAt": "2026-09-02T15:28:29.321Z",
3330
+ "endedAt": "2026-09-02T15:28:35.615Z",
3331
+ "results": [
3332
+ {
3333
+ "templateRef": "dcw-temp-sp",
3334
+ "nodeId": "dw-322b1978",
3335
+ "ok": true,
3336
+ "message": "Mock PLC 写入成功:182 → raw 182,回读一致(标定后物理值 182)",
3337
+ "value": 182
3338
+ },
3339
+ {
3340
+ "templateRef": "dcw-pressure-sp",
3341
+ "nodeId": "dw-e92bb0e7",
3342
+ "ok": true,
3343
+ "message": "Mock PLC 写入成功:0.92 → raw 0.92,回读一致(标定后物理值 0.92)",
3344
+ "value": 0.92
3345
+ }
3346
+ ],
3347
+ "paramsSnapshot": [
3348
+ {
3349
+ "nodeId": "dw-322b1978",
3350
+ "templateRef": "dcw-temp-sp",
3351
+ "value": 182,
3352
+ "min": 176,
3353
+ "max": 188
3354
+ },
3355
+ {
3356
+ "nodeId": "dw-e92bb0e7",
3357
+ "templateRef": "dcw-pressure-sp",
3358
+ "value": 0.92,
3359
+ "min": 0.85,
3360
+ "max": 1
3361
+ }
3362
+ ]
3363
+ },
3364
+ {
3365
+ "id": "rr-c2a5fac7",
3366
+ "recipeId": "rc-7bf584db",
3367
+ "recipeName": "A-标准工艺",
3368
+ "productId": "pd-6348a595",
3369
+ "lineId": "ln-af002514",
3370
+ "startedAt": "2026-09-02T15:29:22.940Z",
3371
+ "endedAt": "2026-09-02T15:29:49.382Z",
3372
+ "results": [
3373
+ {
3374
+ "templateRef": "dcw-temp-sp",
3375
+ "nodeId": "dw-322b1978",
3376
+ "ok": true,
3377
+ "message": "Mock PLC 写入成功:182 → raw 182,回读一致(标定后物理值 182)",
3378
+ "value": 182
3379
+ },
3380
+ {
3381
+ "templateRef": "dcw-pressure-sp",
3382
+ "nodeId": "dw-e92bb0e7",
3383
+ "ok": true,
3384
+ "message": "Mock PLC 写入成功:0.92 → raw 0.92,回读一致(标定后物理值 0.92)",
3385
+ "value": 0.92
3386
+ }
3387
+ ],
3388
+ "paramsSnapshot": [
3389
+ {
3390
+ "nodeId": "dw-322b1978",
3391
+ "templateRef": "dcw-temp-sp",
3392
+ "value": 182,
3393
+ "min": 176,
3394
+ "max": 188
3395
+ },
3396
+ {
3397
+ "nodeId": "dw-e92bb0e7",
3398
+ "templateRef": "dcw-pressure-sp",
3399
+ "value": 0.92,
3400
+ "min": 0.85,
3401
+ "max": 1
3402
+ }
3403
+ ]
3404
+ },
3405
+ {
3406
+ "id": "rr-8b731e23",
3407
+ "recipeId": "rc-7bf584db",
3408
+ "recipeName": "A-标准工艺",
3409
+ "productId": "pd-6348a595",
3410
+ "lineId": "ln-af002514",
3411
+ "startedAt": "2026-09-02T15:38:39.330Z",
3412
+ "endedAt": "2026-09-02T15:38:43.815Z",
3413
+ "results": [
3414
+ {
3415
+ "templateRef": "dcw-temp-sp",
3416
+ "nodeId": "dw-322b1978",
3417
+ "ok": true,
3418
+ "message": "Mock PLC 写入成功:182 → raw 182,回读一致(标定后物理值 182)",
3419
+ "value": 182
3420
+ },
3421
+ {
3422
+ "templateRef": "dcw-pressure-sp",
3423
+ "nodeId": "dw-e92bb0e7",
3424
+ "ok": true,
3425
+ "message": "Mock PLC 写入成功:0.92 → raw 0.92,回读一致(标定后物理值 0.92)",
3426
+ "value": 0.92
3427
+ }
3428
+ ],
3429
+ "paramsSnapshot": [
3430
+ {
3431
+ "nodeId": "dw-322b1978",
3432
+ "templateRef": "dcw-temp-sp",
3433
+ "value": 182,
3434
+ "min": 176,
3435
+ "max": 188
3436
+ },
3437
+ {
3438
+ "nodeId": "dw-e92bb0e7",
3439
+ "templateRef": "dcw-pressure-sp",
3440
+ "value": 0.92,
3441
+ "min": 0.85,
3442
+ "max": 1
3443
+ }
3444
+ ]
3445
+ },
3446
+ {
3447
+ "id": "rr-63fd1ee3",
3448
+ "recipeId": "rc-7bf584db",
3449
+ "recipeName": "A-标准工艺",
3450
+ "productId": "pd-6348a595",
3451
+ "lineId": "ln-af002514",
3452
+ "startedAt": "2026-09-02T15:39:53.111Z",
3453
+ "endedAt": "2026-09-02T15:40:05.490Z",
3454
+ "results": [
3455
+ {
3456
+ "templateRef": "dcw-temp-sp",
3457
+ "nodeId": "dw-322b1978",
3458
+ "ok": true,
3459
+ "message": "Mock PLC 写入成功:182 → raw 182,回读一致(标定后物理值 182)",
3460
+ "value": 182
3461
+ },
3462
+ {
3463
+ "templateRef": "dcw-pressure-sp",
3464
+ "nodeId": "dw-e92bb0e7",
3465
+ "ok": true,
3466
+ "message": "Mock PLC 写入成功:0.92 → raw 0.92,回读一致(标定后物理值 0.92)",
3467
+ "value": 0.92
3468
+ }
3469
+ ],
3470
+ "paramsSnapshot": [
3471
+ {
3472
+ "nodeId": "dw-322b1978",
3473
+ "templateRef": "dcw-temp-sp",
3474
+ "value": 182,
3475
+ "min": 176,
3476
+ "max": 188
3477
+ },
3478
+ {
3479
+ "nodeId": "dw-e92bb0e7",
3480
+ "templateRef": "dcw-pressure-sp",
3481
+ "value": 0.92,
3482
+ "min": 0.85,
3483
+ "max": 1
3484
+ }
3485
+ ]
3486
+ },
3487
+ {
3488
+ "id": "rr-e86e837d",
3489
+ "recipeId": "rc-7bf584db",
3490
+ "recipeName": "A-标准工艺",
3491
+ "productId": "pd-6348a595",
3492
+ "lineId": "ln-af002514",
3493
+ "startedAt": "2026-09-02T15:40:06.821Z",
3494
+ "endedAt": "2026-09-02T15:40:13.258Z",
3495
+ "results": [
3496
+ {
3497
+ "templateRef": "dcw-temp-sp",
3498
+ "nodeId": "dw-322b1978",
3499
+ "ok": true,
3500
+ "message": "Mock PLC 写入成功:182 → raw 182,回读一致(标定后物理值 182)",
3501
+ "value": 182
3502
+ },
3503
+ {
3504
+ "templateRef": "dcw-pressure-sp",
3505
+ "nodeId": "dw-e92bb0e7",
3506
+ "ok": true,
3507
+ "message": "Mock PLC 写入成功:0.92 → raw 0.92,回读一致(标定后物理值 0.92)",
3508
+ "value": 0.92
3509
+ }
3510
+ ],
3511
+ "paramsSnapshot": [
3512
+ {
3513
+ "nodeId": "dw-322b1978",
3514
+ "templateRef": "dcw-temp-sp",
3515
+ "value": 182,
3516
+ "min": 176,
3517
+ "max": 188
3518
+ },
3519
+ {
3520
+ "nodeId": "dw-e92bb0e7",
3521
+ "templateRef": "dcw-pressure-sp",
3522
+ "value": 0.92,
3523
+ "min": 0.85,
3524
+ "max": 1
3525
+ }
3526
+ ]
3527
+ },
3528
+ {
3529
+ "id": "rr-450f688b",
3530
+ "recipeId": "rc-7bf584db",
3531
+ "recipeName": "A-标准工艺",
3532
+ "productId": "pd-6348a595",
3533
+ "lineId": "ln-af002514",
3534
+ "startedAt": "2026-09-02T15:40:23.184Z",
3535
+ "endedAt": "2026-09-02T15:40:49.640Z",
3536
+ "results": [
3537
+ {
3538
+ "templateRef": "dcw-temp-sp",
3539
+ "nodeId": "dw-322b1978",
3540
+ "ok": true,
3541
+ "message": "Mock PLC 写入成功:182 → raw 182,回读一致(标定后物理值 182)",
3542
+ "value": 182
3543
+ },
3544
+ {
3545
+ "templateRef": "dcw-pressure-sp",
3546
+ "nodeId": "dw-e92bb0e7",
3547
+ "ok": true,
3548
+ "message": "Mock PLC 写入成功:0.92 → raw 0.92,回读一致(标定后物理值 0.92)",
3549
+ "value": 0.92
3550
+ }
3551
+ ],
3552
+ "paramsSnapshot": [
3553
+ {
3554
+ "nodeId": "dw-322b1978",
3555
+ "templateRef": "dcw-temp-sp",
3556
+ "value": 182,
3557
+ "min": 176,
3558
+ "max": 188
3559
+ },
3560
+ {
3561
+ "nodeId": "dw-e92bb0e7",
3562
+ "templateRef": "dcw-pressure-sp",
3563
+ "value": 0.92,
3564
+ "min": 0.85,
3565
+ "max": 1
3566
+ }
3567
+ ]
3568
+ },
3569
+ {
3570
+ "id": "rr-04b365b8",
3571
+ "recipeId": "rc-7bf584db",
3572
+ "recipeName": "A-标准工艺",
3573
+ "productId": "pd-6348a595",
3574
+ "lineId": "ln-af002514",
3575
+ "startedAt": "2026-09-02T15:43:32.426Z",
3576
+ "endedAt": "2026-09-02T15:43:58.432Z",
3577
+ "results": [
3578
+ {
3579
+ "templateRef": "dcw-temp-sp",
3580
+ "nodeId": "dw-322b1978",
3581
+ "ok": true,
3582
+ "message": "Mock PLC 写入成功:182 → raw 182,回读一致(标定后物理值 182)",
3583
+ "value": 182
3584
+ },
3585
+ {
3586
+ "templateRef": "dcw-pressure-sp",
3587
+ "nodeId": "dw-e92bb0e7",
3588
+ "ok": true,
3589
+ "message": "Mock PLC 写入成功:0.92 → raw 0.92,回读一致(标定后物理值 0.92)",
3590
+ "value": 0.92
3591
+ }
3592
+ ],
3593
+ "paramsSnapshot": [
3594
+ {
3595
+ "nodeId": "dw-322b1978",
3596
+ "templateRef": "dcw-temp-sp",
3597
+ "value": 182,
3598
+ "min": 176,
3599
+ "max": 188
3600
+ },
3601
+ {
3602
+ "nodeId": "dw-e92bb0e7",
3603
+ "templateRef": "dcw-pressure-sp",
3604
+ "value": 0.92,
3605
+ "min": 0.85,
3606
+ "max": 1
3607
+ }
3608
+ ]
3609
+ },
3610
+ {
3611
+ "id": "rr-5826f449",
3612
+ "recipeId": "rc-7bf584db",
3613
+ "recipeName": "A-标准工艺",
3614
+ "productId": "pd-6348a595",
3615
+ "lineId": "ln-af002514",
3616
+ "startedAt": "2026-09-02T15:44:51.175Z",
3617
+ "endedAt": "2026-09-02T15:45:04.172Z",
3618
+ "results": [
3619
+ {
3620
+ "templateRef": "dcw-temp-sp",
3621
+ "nodeId": "dw-322b1978",
3622
+ "ok": true,
3623
+ "message": "Mock PLC 写入成功:182 → raw 182,回读一致(标定后物理值 182)",
3624
+ "value": 182
3625
+ },
3626
+ {
3627
+ "templateRef": "dcw-pressure-sp",
3628
+ "nodeId": "dw-e92bb0e7",
3629
+ "ok": true,
3630
+ "message": "Mock PLC 写入成功:0.92 → raw 0.92,回读一致(标定后物理值 0.92)",
3631
+ "value": 0.92
3632
+ }
3633
+ ],
3634
+ "paramsSnapshot": [
3635
+ {
3636
+ "nodeId": "dw-322b1978",
3637
+ "templateRef": "dcw-temp-sp",
3638
+ "value": 182,
3639
+ "min": 176,
3640
+ "max": 188
3641
+ },
3642
+ {
3643
+ "nodeId": "dw-e92bb0e7",
3644
+ "templateRef": "dcw-pressure-sp",
3645
+ "value": 0.92,
3646
+ "min": 0.85,
3647
+ "max": 1
3648
+ }
3649
+ ]
3650
+ },
3651
+ {
3652
+ "id": "rr-383eee22",
3653
+ "recipeId": "rc-7bf584db",
3654
+ "recipeName": "A-标准工艺",
3655
+ "productId": "pd-6348a595",
3656
+ "lineId": "ln-af002514",
3657
+ "startedAt": "2026-09-02T15:45:17.432Z",
3658
+ "endedAt": "2026-09-02T15:45:42.661Z",
3659
+ "results": [
3660
+ {
3661
+ "templateRef": "dcw-temp-sp",
3662
+ "nodeId": "dw-322b1978",
3663
+ "ok": true,
3664
+ "message": "Mock PLC 写入成功:182 → raw 182,回读一致(标定后物理值 182)",
3665
+ "value": 182
3666
+ },
3667
+ {
3668
+ "templateRef": "dcw-pressure-sp",
3669
+ "nodeId": "dw-e92bb0e7",
3670
+ "ok": true,
3671
+ "message": "Mock PLC 写入成功:0.92 → raw 0.92,回读一致(标定后物理值 0.92)",
3672
+ "value": 0.92
3673
+ }
3674
+ ],
3675
+ "paramsSnapshot": [
3676
+ {
3677
+ "nodeId": "dw-322b1978",
3678
+ "templateRef": "dcw-temp-sp",
3679
+ "value": 182,
3680
+ "min": 176,
3681
+ "max": 188
3682
+ },
3683
+ {
3684
+ "nodeId": "dw-e92bb0e7",
3685
+ "templateRef": "dcw-pressure-sp",
3686
+ "value": 0.92,
3687
+ "min": 0.85,
3688
+ "max": 1
3689
+ }
3690
+ ]
3691
+ },
3692
+ {
3693
+ "id": "rr-f29bd9d8",
3694
+ "recipeId": "rc-7bf584db",
3695
+ "recipeName": "A-标准工艺",
3696
+ "productId": "pd-6348a595",
3697
+ "lineId": "ln-af002514",
3698
+ "startedAt": "2026-09-02T15:46:14.977Z",
3699
+ "endedAt": "2026-09-02T15:46:27.408Z",
3700
+ "results": [
3701
+ {
3702
+ "templateRef": "dcw-temp-sp",
3703
+ "nodeId": "dw-322b1978",
3704
+ "ok": true,
3705
+ "message": "Mock PLC 写入成功:182 → raw 182,回读一致(标定后物理值 182)",
3706
+ "value": 182
3707
+ },
3708
+ {
3709
+ "templateRef": "dcw-pressure-sp",
3710
+ "nodeId": "dw-e92bb0e7",
3711
+ "ok": true,
3712
+ "message": "Mock PLC 写入成功:0.92 → raw 0.92,回读一致(标定后物理值 0.92)",
3713
+ "value": 0.92
3475
3714
  }
3476
3715
  ],
3477
3716
  "paramsSnapshot": [
3478
3717
  {
3479
- "nodeId": "dw-e760b6b0",
3718
+ "nodeId": "dw-322b1978",
3480
3719
  "templateRef": "dcw-temp-sp",
3481
- "value": 180,
3720
+ "value": 182,
3482
3721
  "min": 176,
3483
3722
  "max": 188
3723
+ },
3724
+ {
3725
+ "nodeId": "dw-e92bb0e7",
3726
+ "templateRef": "dcw-pressure-sp",
3727
+ "value": 0.92,
3728
+ "min": 0.85,
3729
+ "max": 1
3484
3730
  }
3485
3731
  ]
3486
3732
  },
3487
3733
  {
3488
- "id": "rr-4549422d",
3489
- "recipeId": "rc-ed3e066e",
3490
- "recipeName": "̽���䷽",
3491
- "productId": "pd-efb05c40",
3492
- "lineId": "ln-c1ef6c0d",
3493
- "startedAt": "2026-09-02T11:55:28.775Z",
3494
- "endedAt": "2026-09-02T15:29:52.133Z",
3734
+ "id": "rr-dcada3bd",
3735
+ "recipeId": "rc-7bf584db",
3736
+ "recipeName": "A-标准工艺",
3737
+ "productId": "pd-6348a595",
3738
+ "lineId": "ln-af002514",
3739
+ "startedAt": "2026-09-02T15:48:33.693Z",
3740
+ "endedAt": "2026-09-02T15:48:47.104Z",
3495
3741
  "results": [
3496
3742
  {
3497
3743
  "templateRef": "dcw-temp-sp",
3498
- "nodeId": "dw-4bcbc922",
3744
+ "nodeId": "dw-322b1978",
3499
3745
  "ok": true,
3500
- "message": "Mock PLC 写入成功:180 → raw 180,回读一致(标定后物理值 180)",
3501
- "value": 180
3746
+ "message": "Mock PLC 写入成功:182 → raw 182,回读一致(标定后物理值 182)",
3747
+ "value": 182
3748
+ },
3749
+ {
3750
+ "templateRef": "dcw-pressure-sp",
3751
+ "nodeId": "dw-e92bb0e7",
3752
+ "ok": true,
3753
+ "message": "Mock PLC 写入成功:0.92 → raw 0.92,回读一致(标定后物理值 0.92)",
3754
+ "value": 0.92
3502
3755
  }
3503
3756
  ],
3504
3757
  "paramsSnapshot": [
3505
3758
  {
3506
- "nodeId": "dw-4bcbc922",
3759
+ "nodeId": "dw-322b1978",
3507
3760
  "templateRef": "dcw-temp-sp",
3508
- "value": 180,
3761
+ "value": 182,
3509
3762
  "min": 176,
3510
3763
  "max": 188
3764
+ },
3765
+ {
3766
+ "nodeId": "dw-e92bb0e7",
3767
+ "templateRef": "dcw-pressure-sp",
3768
+ "value": 0.92,
3769
+ "min": 0.85,
3770
+ "max": 1
3511
3771
  }
3512
3772
  ]
3513
3773
  },
3514
3774
  {
3515
- "id": "rr-03ed5e01",
3516
- "recipeId": "rc-0f5b23f2",
3517
- "recipeName": "全功能配方-a7dbly",
3518
- "productId": "pd-ea366e9b",
3519
- "lineId": "ln-b587c5ec",
3520
- "startedAt": "2026-09-02T13:01:43.015Z",
3521
- "endedAt": "2026-09-02T13:07:32.569Z",
3775
+ "id": "rr-84d04cdd",
3776
+ "recipeId": "rc-7bf584db",
3777
+ "recipeName": "A-标准工艺",
3778
+ "productId": "pd-6348a595",
3779
+ "lineId": "ln-af002514",
3780
+ "startedAt": "2026-09-02T15:49:44.864Z",
3781
+ "endedAt": "2026-09-02T15:49:59.757Z",
3522
3782
  "results": [
3523
3783
  {
3524
3784
  "templateRef": "dcw-temp-sp",
3525
- "nodeId": "dw-67ec7b30",
3785
+ "nodeId": "dw-322b1978",
3526
3786
  "ok": true,
3527
- "message": "Mock PLC 写入成功:180 → raw 180,回读一致(标定后物理值 180)",
3528
- "value": 180
3787
+ "message": "Mock PLC 写入成功:182 → raw 182,回读一致(标定后物理值 182)",
3788
+ "value": 182
3789
+ },
3790
+ {
3791
+ "templateRef": "dcw-pressure-sp",
3792
+ "nodeId": "dw-e92bb0e7",
3793
+ "ok": true,
3794
+ "message": "Mock PLC 写入成功:0.92 → raw 0.92,回读一致(标定后物理值 0.92)",
3795
+ "value": 0.92
3529
3796
  }
3530
3797
  ],
3531
3798
  "paramsSnapshot": [
3532
3799
  {
3533
- "nodeId": "dw-67ec7b30",
3800
+ "nodeId": "dw-322b1978",
3534
3801
  "templateRef": "dcw-temp-sp",
3535
- "value": 180,
3802
+ "value": 182,
3536
3803
  "min": 176,
3537
3804
  "max": 188
3805
+ },
3806
+ {
3807
+ "nodeId": "dw-e92bb0e7",
3808
+ "templateRef": "dcw-pressure-sp",
3809
+ "value": 0.92,
3810
+ "min": 0.85,
3811
+ "max": 1
3538
3812
  }
3539
3813
  ]
3540
3814
  },
3541
3815
  {
3542
- "id": "rr-b98705be",
3816
+ "id": "rr-02cc43b7",
3543
3817
  "recipeId": "rc-7bf584db",
3544
3818
  "recipeName": "A-标准工艺",
3545
3819
  "productId": "pd-6348a595",
3546
3820
  "lineId": "ln-af002514",
3547
- "startedAt": "2026-09-02T15:12:01.334Z",
3548
- "endedAt": "2026-09-02T15:12:05.714Z",
3821
+ "startedAt": "2026-09-02T15:51:49.474Z",
3822
+ "endedAt": "2026-09-02T15:52:04.170Z",
3549
3823
  "results": [
3550
3824
  {
3551
3825
  "templateRef": "dcw-temp-sp",
@@ -3580,13 +3854,13 @@
3580
3854
  ]
3581
3855
  },
3582
3856
  {
3583
- "id": "rr-f0d45b97",
3857
+ "id": "rr-b411d6d2",
3584
3858
  "recipeId": "rc-7bf584db",
3585
3859
  "recipeName": "A-标准工艺",
3586
3860
  "productId": "pd-6348a595",
3587
3861
  "lineId": "ln-af002514",
3588
- "startedAt": "2026-09-02T15:13:49.063Z",
3589
- "endedAt": "2026-09-02T15:13:54.034Z",
3862
+ "startedAt": "2026-09-02T15:52:48.263Z",
3863
+ "endedAt": "2026-09-02T15:53:03.995Z",
3590
3864
  "results": [
3591
3865
  {
3592
3866
  "templateRef": "dcw-temp-sp",
@@ -3621,13 +3895,13 @@
3621
3895
  ]
3622
3896
  },
3623
3897
  {
3624
- "id": "rr-ac63ad25",
3898
+ "id": "rr-dde94370",
3625
3899
  "recipeId": "rc-7bf584db",
3626
3900
  "recipeName": "A-标准工艺",
3627
3901
  "productId": "pd-6348a595",
3628
3902
  "lineId": "ln-af002514",
3629
- "startedAt": "2026-09-02T15:14:39.397Z",
3630
- "endedAt": "2026-09-02T15:14:46.231Z",
3903
+ "startedAt": "2026-09-02T16:00:23.922Z",
3904
+ "endedAt": "2026-09-02T16:00:28.442Z",
3631
3905
  "results": [
3632
3906
  {
3633
3907
  "templateRef": "dcw-temp-sp",
@@ -3662,13 +3936,13 @@
3662
3936
  ]
3663
3937
  },
3664
3938
  {
3665
- "id": "rr-2c3b9222",
3939
+ "id": "rr-0e8b61d1",
3666
3940
  "recipeId": "rc-7bf584db",
3667
3941
  "recipeName": "A-标准工艺",
3668
3942
  "productId": "pd-6348a595",
3669
3943
  "lineId": "ln-af002514",
3670
- "startedAt": "2026-09-02T15:19:46.506Z",
3671
- "endedAt": "2026-09-02T15:19:50.990Z",
3944
+ "startedAt": "2026-09-02T16:28:41.531Z",
3945
+ "endedAt": "2026-09-02T16:28:48.865Z",
3672
3946
  "results": [
3673
3947
  {
3674
3948
  "templateRef": "dcw-temp-sp",
@@ -3703,13 +3977,13 @@
3703
3977
  ]
3704
3978
  },
3705
3979
  {
3706
- "id": "rr-8a8d4224",
3980
+ "id": "rr-34dc04c8",
3707
3981
  "recipeId": "rc-7bf584db",
3708
3982
  "recipeName": "A-标准工艺",
3709
3983
  "productId": "pd-6348a595",
3710
3984
  "lineId": "ln-af002514",
3711
- "startedAt": "2026-09-02T15:27:34.213Z",
3712
- "endedAt": "2026-09-02T15:27:46.574Z",
3985
+ "startedAt": "2026-09-02T16:44:41.400Z",
3986
+ "endedAt": "2026-09-02T16:44:45.881Z",
3713
3987
  "results": [
3714
3988
  {
3715
3989
  "templateRef": "dcw-temp-sp",
@@ -3744,13 +4018,13 @@
3744
4018
  ]
3745
4019
  },
3746
4020
  {
3747
- "id": "rr-fb8734a8",
4021
+ "id": "rr-550280b4",
3748
4022
  "recipeId": "rc-7bf584db",
3749
4023
  "recipeName": "A-标准工艺",
3750
4024
  "productId": "pd-6348a595",
3751
4025
  "lineId": "ln-af002514",
3752
- "startedAt": "2026-09-02T15:28:29.321Z",
3753
- "endedAt": "2026-09-02T15:28:35.615Z",
4026
+ "startedAt": "2026-09-02T16:51:30.326Z",
4027
+ "endedAt": "2026-09-02T16:51:34.973Z",
3754
4028
  "results": [
3755
4029
  {
3756
4030
  "templateRef": "dcw-temp-sp",
@@ -3785,13 +4059,13 @@
3785
4059
  ]
3786
4060
  },
3787
4061
  {
3788
- "id": "rr-c2a5fac7",
4062
+ "id": "rr-b00fdf3e",
3789
4063
  "recipeId": "rc-7bf584db",
3790
4064
  "recipeName": "A-标准工艺",
3791
4065
  "productId": "pd-6348a595",
3792
4066
  "lineId": "ln-af002514",
3793
- "startedAt": "2026-09-02T15:29:22.940Z",
3794
- "endedAt": "2026-09-02T15:29:49.382Z",
4067
+ "startedAt": "2026-09-03T00:57:01.423Z",
4068
+ "endedAt": "2026-09-03T01:03:34.019Z",
3795
4069
  "results": [
3796
4070
  {
3797
4071
  "templateRef": "dcw-temp-sp",
@@ -3826,13 +4100,13 @@
3826
4100
  ]
3827
4101
  },
3828
4102
  {
3829
- "id": "rr-8b731e23",
4103
+ "id": "rr-e549d9ab",
3830
4104
  "recipeId": "rc-7bf584db",
3831
4105
  "recipeName": "A-标准工艺",
3832
4106
  "productId": "pd-6348a595",
3833
4107
  "lineId": "ln-af002514",
3834
- "startedAt": "2026-09-02T15:38:39.330Z",
3835
- "endedAt": "2026-09-02T15:38:43.815Z",
4108
+ "startedAt": "2026-09-03T01:04:26.086Z",
4109
+ "endedAt": "2026-09-03T01:05:24.042Z",
3836
4110
  "results": [
3837
4111
  {
3838
4112
  "templateRef": "dcw-temp-sp",
@@ -3867,13 +4141,13 @@
3867
4141
  ]
3868
4142
  },
3869
4143
  {
3870
- "id": "rr-63fd1ee3",
4144
+ "id": "rr-a5da5a38",
3871
4145
  "recipeId": "rc-7bf584db",
3872
4146
  "recipeName": "A-标准工艺",
3873
4147
  "productId": "pd-6348a595",
3874
4148
  "lineId": "ln-af002514",
3875
- "startedAt": "2026-09-02T15:39:53.111Z",
3876
- "endedAt": "2026-09-02T15:40:05.490Z",
4149
+ "startedAt": "2026-09-03T01:10:39.886Z",
4150
+ "endedAt": "2026-09-03T01:11:04.727Z",
3877
4151
  "results": [
3878
4152
  {
3879
4153
  "templateRef": "dcw-temp-sp",
@@ -3908,13 +4182,13 @@
3908
4182
  ]
3909
4183
  },
3910
4184
  {
3911
- "id": "rr-e86e837d",
4185
+ "id": "rr-c4ff548d",
3912
4186
  "recipeId": "rc-7bf584db",
3913
4187
  "recipeName": "A-标准工艺",
3914
4188
  "productId": "pd-6348a595",
3915
4189
  "lineId": "ln-af002514",
3916
- "startedAt": "2026-09-02T15:40:06.821Z",
3917
- "endedAt": "2026-09-02T15:40:13.258Z",
4190
+ "startedAt": "2026-09-03T01:12:29.192Z",
4191
+ "endedAt": "2026-09-03T01:12:56.459Z",
3918
4192
  "results": [
3919
4193
  {
3920
4194
  "templateRef": "dcw-temp-sp",
@@ -3949,13 +4223,13 @@
3949
4223
  ]
3950
4224
  },
3951
4225
  {
3952
- "id": "rr-450f688b",
4226
+ "id": "rr-a6881136",
3953
4227
  "recipeId": "rc-7bf584db",
3954
4228
  "recipeName": "A-标准工艺",
3955
4229
  "productId": "pd-6348a595",
3956
4230
  "lineId": "ln-af002514",
3957
- "startedAt": "2026-09-02T15:40:23.184Z",
3958
- "endedAt": "2026-09-02T15:40:49.640Z",
4231
+ "startedAt": "2026-09-03T01:13:27.536Z",
4232
+ "endedAt": "2026-09-03T01:13:54.797Z",
3959
4233
  "results": [
3960
4234
  {
3961
4235
  "templateRef": "dcw-temp-sp",
@@ -3990,13 +4264,13 @@
3990
4264
  ]
3991
4265
  },
3992
4266
  {
3993
- "id": "rr-04b365b8",
4267
+ "id": "rr-8b294482",
3994
4268
  "recipeId": "rc-7bf584db",
3995
4269
  "recipeName": "A-标准工艺",
3996
4270
  "productId": "pd-6348a595",
3997
4271
  "lineId": "ln-af002514",
3998
- "startedAt": "2026-09-02T15:43:32.426Z",
3999
- "endedAt": "2026-09-02T15:43:58.432Z",
4272
+ "startedAt": "2026-09-03T10:17:58.886Z",
4273
+ "endedAt": "2026-09-03T10:41:13.654Z",
4000
4274
  "results": [
4001
4275
  {
4002
4276
  "templateRef": "dcw-temp-sp",
@@ -4031,13 +4305,13 @@
4031
4305
  ]
4032
4306
  },
4033
4307
  {
4034
- "id": "rr-5826f449",
4308
+ "id": "rr-b1f6156d",
4035
4309
  "recipeId": "rc-7bf584db",
4036
4310
  "recipeName": "A-标准工艺",
4037
4311
  "productId": "pd-6348a595",
4038
4312
  "lineId": "ln-af002514",
4039
- "startedAt": "2026-09-02T15:44:51.175Z",
4040
- "endedAt": "2026-09-02T15:45:04.172Z",
4313
+ "startedAt": "2026-09-03T10:41:14.527Z",
4314
+ "endedAt": "2026-09-03T10:44:04.580Z",
4041
4315
  "results": [
4042
4316
  {
4043
4317
  "templateRef": "dcw-temp-sp",
@@ -4072,13 +4346,13 @@
4072
4346
  ]
4073
4347
  },
4074
4348
  {
4075
- "id": "rr-383eee22",
4349
+ "id": "rr-6da3f412",
4076
4350
  "recipeId": "rc-7bf584db",
4077
4351
  "recipeName": "A-标准工艺",
4078
4352
  "productId": "pd-6348a595",
4079
4353
  "lineId": "ln-af002514",
4080
- "startedAt": "2026-09-02T15:45:17.432Z",
4081
- "endedAt": "2026-09-02T15:45:42.661Z",
4354
+ "startedAt": "2026-09-03T11:18:01.213Z",
4355
+ "endedAt": null,
4082
4356
  "results": [
4083
4357
  {
4084
4358
  "templateRef": "dcw-temp-sp",
@@ -4113,822 +4387,665 @@
4113
4387
  ]
4114
4388
  },
4115
4389
  {
4116
- "id": "rr-f29bd9d8",
4117
- "recipeId": "rc-7bf584db",
4118
- "recipeName": "A-标准工艺",
4119
- "productId": "pd-6348a595",
4120
- "lineId": "ln-af002514",
4121
- "startedAt": "2026-09-02T15:46:14.977Z",
4122
- "endedAt": "2026-09-02T15:46:27.408Z",
4390
+ "id": "rr-2238155d",
4391
+ "recipeId": "rc-552c0488",
4392
+ "recipeName": "A-闭环工艺",
4393
+ "productId": "pd-e712875d",
4394
+ "lineId": "ln-9a60a0cd",
4395
+ "startedAt": "2026-09-03T16:03:27.304Z",
4396
+ "endedAt": null,
4397
+ "results": [
4398
+ {
4399
+ "templateRef": "dcw-temp-sp",
4400
+ "nodeId": "dw-f944538c",
4401
+ "ok": true,
4402
+ "message": "写入并回读一致:160 → raw 160,回读 160(标定后物理值 160)",
4403
+ "value": 160
4404
+ }
4405
+ ],
4406
+ "paramsSnapshot": [
4407
+ {
4408
+ "nodeId": "dw-f944538c",
4409
+ "templateRef": "dcw-temp-sp",
4410
+ "value": 160,
4411
+ "min": 100,
4412
+ "max": 200
4413
+ }
4414
+ ]
4415
+ },
4416
+ {
4417
+ "id": "rr-9d5070a1",
4418
+ "recipeId": "rc-0d3b58f7",
4419
+ "recipeName": "A-闭环工艺",
4420
+ "productId": "pd-16eecb35",
4421
+ "lineId": "ln-b33a3105",
4422
+ "startedAt": "2026-09-03T16:39:22.962Z",
4423
+ "endedAt": null,
4424
+ "results": [
4425
+ {
4426
+ "templateRef": "dcw-temp-sp",
4427
+ "nodeId": "dw-0188c6c4",
4428
+ "ok": true,
4429
+ "message": "写入并回读一致:160 → raw 160,回读 160(标定后物理值 160)",
4430
+ "value": 160
4431
+ }
4432
+ ],
4433
+ "paramsSnapshot": [
4434
+ {
4435
+ "nodeId": "dw-0188c6c4",
4436
+ "templateRef": "dcw-temp-sp",
4437
+ "value": 160,
4438
+ "min": 100,
4439
+ "max": 200
4440
+ }
4441
+ ]
4442
+ },
4443
+ {
4444
+ "id": "rr-a86971ae",
4445
+ "recipeId": "rc-2961fd43",
4446
+ "recipeName": "A-闭环工艺",
4447
+ "productId": "pd-9c755781",
4448
+ "lineId": "ln-1aedc305",
4449
+ "startedAt": "2026-09-03T16:44:33.199Z",
4450
+ "endedAt": null,
4451
+ "results": [
4452
+ {
4453
+ "templateRef": "dcw-temp-sp",
4454
+ "nodeId": "dw-097f1e6a",
4455
+ "ok": true,
4456
+ "message": "写入并回读一致:160 → raw 160,回读 160(标定后物理值 160)",
4457
+ "value": 160
4458
+ }
4459
+ ],
4460
+ "paramsSnapshot": [
4461
+ {
4462
+ "nodeId": "dw-097f1e6a",
4463
+ "templateRef": "dcw-temp-sp",
4464
+ "value": 160,
4465
+ "min": 100,
4466
+ "max": 200
4467
+ }
4468
+ ]
4469
+ },
4470
+ {
4471
+ "id": "rr-c66a150f",
4472
+ "recipeId": "rc-6acb6e12",
4473
+ "recipeName": "A-闭环工艺",
4474
+ "productId": "pd-835aed90",
4475
+ "lineId": "ln-758658dc",
4476
+ "startedAt": "2026-09-03T17:12:52.205Z",
4477
+ "endedAt": null,
4123
4478
  "results": [
4124
4479
  {
4125
4480
  "templateRef": "dcw-temp-sp",
4126
- "nodeId": "dw-322b1978",
4127
- "ok": true,
4128
- "message": "Mock PLC 写入成功:182 → raw 182,回读一致(标定后物理值 182)",
4129
- "value": 182
4130
- },
4131
- {
4132
- "templateRef": "dcw-pressure-sp",
4133
- "nodeId": "dw-e92bb0e7",
4481
+ "nodeId": "dw-8fb89e02",
4134
4482
  "ok": true,
4135
- "message": "Mock PLC 写入成功:0.92 → raw 0.92,回读一致(标定后物理值 0.92)",
4136
- "value": 0.92
4483
+ "message": "写入并回读一致:160 → raw 160,回读 160(标定后物理值 160)",
4484
+ "value": 160
4137
4485
  }
4138
4486
  ],
4139
4487
  "paramsSnapshot": [
4140
4488
  {
4141
- "nodeId": "dw-322b1978",
4489
+ "nodeId": "dw-8fb89e02",
4142
4490
  "templateRef": "dcw-temp-sp",
4143
- "value": 182,
4144
- "min": 176,
4145
- "max": 188
4146
- },
4147
- {
4148
- "nodeId": "dw-e92bb0e7",
4149
- "templateRef": "dcw-pressure-sp",
4150
- "value": 0.92,
4151
- "min": 0.85,
4152
- "max": 1
4491
+ "value": 160,
4492
+ "min": 100,
4493
+ "max": 200
4153
4494
  }
4154
4495
  ]
4155
4496
  },
4156
4497
  {
4157
- "id": "rr-dcada3bd",
4158
- "recipeId": "rc-7bf584db",
4159
- "recipeName": "A-标准工艺",
4160
- "productId": "pd-6348a595",
4161
- "lineId": "ln-af002514",
4162
- "startedAt": "2026-09-02T15:48:33.693Z",
4163
- "endedAt": "2026-09-02T15:48:47.104Z",
4498
+ "id": "rr-875be24a",
4499
+ "recipeId": "rc-59b8eca0",
4500
+ "recipeName": "配方-mtmhgrsn",
4501
+ "productId": "pd-b06ac7d7",
4502
+ "lineId": "ln-40681e03",
4503
+ "startedAt": "2026-09-04T04:58:09.920Z",
4504
+ "endedAt": "2026-09-04T04:58:51.324Z",
4164
4505
  "results": [
4165
4506
  {
4166
4507
  "templateRef": "dcw-temp-sp",
4167
- "nodeId": "dw-322b1978",
4168
- "ok": true,
4169
- "message": "Mock PLC 写入成功:182 → raw 182,回读一致(标定后物理值 182)",
4170
- "value": 182
4171
- },
4172
- {
4173
- "templateRef": "dcw-pressure-sp",
4174
- "nodeId": "dw-e92bb0e7",
4508
+ "nodeId": "dw-3a3f7a4c",
4175
4509
  "ok": true,
4176
- "message": "Mock PLC 写入成功:0.92 → raw 0.92,回读一致(标定后物理值 0.92)",
4177
- "value": 0.92
4510
+ "message": "Mock PLC 写入成功:180 → raw 180,回读一致(标定后物理值 180)",
4511
+ "value": 180
4178
4512
  }
4179
4513
  ],
4180
4514
  "paramsSnapshot": [
4181
4515
  {
4182
- "nodeId": "dw-322b1978",
4516
+ "nodeId": "dw-3a3f7a4c",
4183
4517
  "templateRef": "dcw-temp-sp",
4184
- "value": 182,
4518
+ "value": 180,
4185
4519
  "min": 176,
4186
4520
  "max": 188
4187
- },
4188
- {
4189
- "nodeId": "dw-e92bb0e7",
4190
- "templateRef": "dcw-pressure-sp",
4191
- "value": 0.92,
4192
- "min": 0.85,
4193
- "max": 1
4194
4521
  }
4195
4522
  ]
4196
4523
  },
4197
4524
  {
4198
- "id": "rr-84d04cdd",
4199
- "recipeId": "rc-7bf584db",
4200
- "recipeName": "A-标准工艺",
4201
- "productId": "pd-6348a595",
4202
- "lineId": "ln-af002514",
4203
- "startedAt": "2026-09-02T15:49:44.864Z",
4204
- "endedAt": "2026-09-02T15:49:59.757Z",
4525
+ "id": "rr-de10d51e",
4526
+ "recipeId": "rc-5667c3cb",
4527
+ "recipeName": "配方-mtmhnz2f",
4528
+ "productId": "pd-a7ccbe70",
4529
+ "lineId": "ln-a284d605",
4530
+ "startedAt": "2026-09-04T05:03:45.894Z",
4531
+ "endedAt": "2026-09-04T05:04:27.237Z",
4205
4532
  "results": [
4206
4533
  {
4207
4534
  "templateRef": "dcw-temp-sp",
4208
- "nodeId": "dw-322b1978",
4209
- "ok": true,
4210
- "message": "Mock PLC 写入成功:182 → raw 182,回读一致(标定后物理值 182)",
4211
- "value": 182
4212
- },
4213
- {
4214
- "templateRef": "dcw-pressure-sp",
4215
- "nodeId": "dw-e92bb0e7",
4535
+ "nodeId": "dw-42fcd798",
4216
4536
  "ok": true,
4217
- "message": "Mock PLC 写入成功:0.92 → raw 0.92,回读一致(标定后物理值 0.92)",
4218
- "value": 0.92
4537
+ "message": "Mock PLC 写入成功:180 → raw 180,回读一致(标定后物理值 180)",
4538
+ "value": 180
4219
4539
  }
4220
4540
  ],
4221
4541
  "paramsSnapshot": [
4222
4542
  {
4223
- "nodeId": "dw-322b1978",
4543
+ "nodeId": "dw-42fcd798",
4224
4544
  "templateRef": "dcw-temp-sp",
4225
- "value": 182,
4545
+ "value": 180,
4226
4546
  "min": 176,
4227
4547
  "max": 188
4228
- },
4229
- {
4230
- "nodeId": "dw-e92bb0e7",
4231
- "templateRef": "dcw-pressure-sp",
4232
- "value": 0.92,
4233
- "min": 0.85,
4234
- "max": 1
4235
4548
  }
4236
4549
  ]
4237
4550
  },
4238
4551
  {
4239
- "id": "rr-02cc43b7",
4240
- "recipeId": "rc-7bf584db",
4241
- "recipeName": "A-标准工艺",
4242
- "productId": "pd-6348a595",
4243
- "lineId": "ln-af002514",
4244
- "startedAt": "2026-09-02T15:51:49.474Z",
4245
- "endedAt": "2026-09-02T15:52:04.170Z",
4552
+ "id": "rr-9e70a9dc",
4553
+ "recipeId": "rc-ccee1b1b",
4554
+ "recipeName": "探针配方",
4555
+ "productId": "pd-db432902",
4556
+ "lineId": "ln-1b318320",
4557
+ "startedAt": "2026-09-04T05:08:10.103Z",
4558
+ "endedAt": null,
4246
4559
  "results": [
4247
4560
  {
4248
4561
  "templateRef": "dcw-temp-sp",
4249
- "nodeId": "dw-322b1978",
4250
- "ok": true,
4251
- "message": "Mock PLC 写入成功:182 → raw 182,回读一致(标定后物理值 182)",
4252
- "value": 182
4253
- },
4254
- {
4255
- "templateRef": "dcw-pressure-sp",
4256
- "nodeId": "dw-e92bb0e7",
4562
+ "nodeId": "dw-756e3e07",
4257
4563
  "ok": true,
4258
- "message": "Mock PLC 写入成功:0.92 → raw 0.92,回读一致(标定后物理值 0.92)",
4259
- "value": 0.92
4564
+ "message": "Mock PLC 写入成功:180 → raw 180,回读一致(标定后物理值 180)",
4565
+ "value": 180
4260
4566
  }
4261
4567
  ],
4262
4568
  "paramsSnapshot": [
4263
4569
  {
4264
- "nodeId": "dw-322b1978",
4570
+ "nodeId": "dw-756e3e07",
4265
4571
  "templateRef": "dcw-temp-sp",
4266
- "value": 182,
4572
+ "value": 180,
4267
4573
  "min": 176,
4268
4574
  "max": 188
4269
- },
4270
- {
4271
- "nodeId": "dw-e92bb0e7",
4272
- "templateRef": "dcw-pressure-sp",
4273
- "value": 0.92,
4274
- "min": 0.85,
4275
- "max": 1
4276
4575
  }
4277
4576
  ]
4278
4577
  },
4279
4578
  {
4280
- "id": "rr-b411d6d2",
4281
- "recipeId": "rc-7bf584db",
4282
- "recipeName": "A-标准工艺",
4283
- "productId": "pd-6348a595",
4284
- "lineId": "ln-af002514",
4285
- "startedAt": "2026-09-02T15:52:48.263Z",
4286
- "endedAt": "2026-09-02T15:53:03.995Z",
4579
+ "id": "rr-dbb44962",
4580
+ "recipeId": "rc-c73f8aed",
4581
+ "recipeName": "探针配方",
4582
+ "productId": "pd-f6296ca1",
4583
+ "lineId": "ln-c50d97f5",
4584
+ "startedAt": "2026-09-04T05:08:56.257Z",
4585
+ "endedAt": "2026-09-04T05:09:02.608Z",
4287
4586
  "results": [
4288
4587
  {
4289
4588
  "templateRef": "dcw-temp-sp",
4290
- "nodeId": "dw-322b1978",
4291
- "ok": true,
4292
- "message": "Mock PLC 写入成功:182 → raw 182,回读一致(标定后物理值 182)",
4293
- "value": 182
4294
- },
4295
- {
4296
- "templateRef": "dcw-pressure-sp",
4297
- "nodeId": "dw-e92bb0e7",
4589
+ "nodeId": "dw-1ccbe1a8",
4298
4590
  "ok": true,
4299
- "message": "Mock PLC 写入成功:0.92 → raw 0.92,回读一致(标定后物理值 0.92)",
4300
- "value": 0.92
4591
+ "message": "Mock PLC 写入成功:180 → raw 180,回读一致(标定后物理值 180)",
4592
+ "value": 180
4301
4593
  }
4302
4594
  ],
4303
4595
  "paramsSnapshot": [
4304
4596
  {
4305
- "nodeId": "dw-322b1978",
4597
+ "nodeId": "dw-1ccbe1a8",
4306
4598
  "templateRef": "dcw-temp-sp",
4307
- "value": 182,
4599
+ "value": 180,
4308
4600
  "min": 176,
4309
4601
  "max": 188
4310
- },
4311
- {
4312
- "nodeId": "dw-e92bb0e7",
4313
- "templateRef": "dcw-pressure-sp",
4314
- "value": 0.92,
4315
- "min": 0.85,
4316
- "max": 1
4317
4602
  }
4318
4603
  ]
4319
4604
  },
4320
4605
  {
4321
- "id": "rr-dde94370",
4322
- "recipeId": "rc-7bf584db",
4323
- "recipeName": "A-标准工艺",
4324
- "productId": "pd-6348a595",
4325
- "lineId": "ln-af002514",
4326
- "startedAt": "2026-09-02T16:00:23.922Z",
4327
- "endedAt": "2026-09-02T16:00:28.442Z",
4606
+ "id": "rr-02e1b75d",
4607
+ "recipeId": "rc-839041c6",
4608
+ "recipeName": "配方-mtmhyn1r",
4609
+ "productId": "pd-cfe2e059",
4610
+ "lineId": "ln-826f8518",
4611
+ "startedAt": "2026-09-04T05:12:03.638Z",
4612
+ "endedAt": "2026-09-04T05:12:13.981Z",
4328
4613
  "results": [
4329
4614
  {
4330
4615
  "templateRef": "dcw-temp-sp",
4331
- "nodeId": "dw-322b1978",
4332
- "ok": true,
4333
- "message": "Mock PLC 写入成功:182 → raw 182,回读一致(标定后物理值 182)",
4334
- "value": 182
4335
- },
4336
- {
4337
- "templateRef": "dcw-pressure-sp",
4338
- "nodeId": "dw-e92bb0e7",
4616
+ "nodeId": "dw-3b6fd688",
4339
4617
  "ok": true,
4340
- "message": "Mock PLC 写入成功:0.92 → raw 0.92,回读一致(标定后物理值 0.92)",
4341
- "value": 0.92
4618
+ "message": "Mock PLC 写入成功:180 → raw 180,回读一致(标定后物理值 180)",
4619
+ "value": 180
4342
4620
  }
4343
4621
  ],
4344
4622
  "paramsSnapshot": [
4345
4623
  {
4346
- "nodeId": "dw-322b1978",
4624
+ "nodeId": "dw-3b6fd688",
4347
4625
  "templateRef": "dcw-temp-sp",
4348
- "value": 182,
4626
+ "value": 180,
4349
4627
  "min": 176,
4350
4628
  "max": 188
4351
- },
4352
- {
4353
- "nodeId": "dw-e92bb0e7",
4354
- "templateRef": "dcw-pressure-sp",
4355
- "value": 0.92,
4356
- "min": 0.85,
4357
- "max": 1
4358
4629
  }
4359
4630
  ]
4360
4631
  },
4361
4632
  {
4362
- "id": "rr-0e8b61d1",
4363
- "recipeId": "rc-7bf584db",
4364
- "recipeName": "A-标准工艺",
4365
- "productId": "pd-6348a595",
4366
- "lineId": "ln-af002514",
4367
- "startedAt": "2026-09-02T16:28:41.531Z",
4368
- "endedAt": "2026-09-02T16:28:48.865Z",
4369
- "results": [
4370
- {
4371
- "templateRef": "dcw-temp-sp",
4372
- "nodeId": "dw-322b1978",
4373
- "ok": true,
4374
- "message": "Mock PLC 写入成功:182 → raw 182,回读一致(标定后物理值 182)",
4375
- "value": 182
4376
- },
4633
+ "id": "rr-901d3630",
4634
+ "recipeId": "rc-14eddb92",
4635
+ "recipeName": "全协议配方-mtny0lcv",
4636
+ "productId": "pd-c01bf204",
4637
+ "lineId": "ln-62e215e5",
4638
+ "startedAt": "2026-09-05T05:29:21.550Z",
4639
+ "endedAt": "2026-09-05T05:31:24.035Z",
4640
+ "results": [
4377
4641
  {
4378
- "templateRef": "dcw-pressure-sp",
4379
- "nodeId": "dw-e92bb0e7",
4642
+ "templateRef": "dcw-temp-sp",
4643
+ "nodeId": "dw-34014c7e",
4380
4644
  "ok": true,
4381
- "message": "Mock PLC 写入成功:0.92 → raw 0.92,回读一致(标定后物理值 0.92)",
4382
- "value": 0.92
4645
+ "message": "写入并回读一致:180 → raw 180,回读 180(标定后物理值 180)",
4646
+ "value": 180
4383
4647
  }
4384
4648
  ],
4385
4649
  "paramsSnapshot": [
4386
4650
  {
4387
- "nodeId": "dw-322b1978",
4651
+ "nodeId": "dw-34014c7e",
4388
4652
  "templateRef": "dcw-temp-sp",
4389
- "value": 182,
4653
+ "value": 180,
4390
4654
  "min": 176,
4391
4655
  "max": 188
4392
- },
4393
- {
4394
- "nodeId": "dw-e92bb0e7",
4395
- "templateRef": "dcw-pressure-sp",
4396
- "value": 0.92,
4397
- "min": 0.85,
4398
- "max": 1
4399
4656
  }
4400
4657
  ]
4401
4658
  },
4402
4659
  {
4403
- "id": "rr-34dc04c8",
4404
- "recipeId": "rc-7bf584db",
4405
- "recipeName": "A-标准工艺",
4406
- "productId": "pd-6348a595",
4407
- "lineId": "ln-af002514",
4408
- "startedAt": "2026-09-02T16:44:41.400Z",
4409
- "endedAt": "2026-09-02T16:44:45.881Z",
4660
+ "id": "rr-f0e4d57d",
4661
+ "recipeId": "rc-a2b19319",
4662
+ "recipeName": "全协议配方-mtnyemlz",
4663
+ "productId": "pd-572c23f0",
4664
+ "lineId": "ln-81865050",
4665
+ "startedAt": "2026-09-05T05:40:12.225Z",
4666
+ "endedAt": "2026-09-05T05:40:32.930Z",
4410
4667
  "results": [
4411
4668
  {
4412
4669
  "templateRef": "dcw-temp-sp",
4413
- "nodeId": "dw-322b1978",
4414
- "ok": true,
4415
- "message": "Mock PLC 写入成功:182 → raw 182,回读一致(标定后物理值 182)",
4416
- "value": 182
4417
- },
4418
- {
4419
- "templateRef": "dcw-pressure-sp",
4420
- "nodeId": "dw-e92bb0e7",
4670
+ "nodeId": "dw-07787cf7",
4421
4671
  "ok": true,
4422
- "message": "Mock PLC 写入成功:0.92 → raw 0.92,回读一致(标定后物理值 0.92)",
4423
- "value": 0.92
4672
+ "message": "写入并回读一致:180 → raw 180,回读 180(标定后物理值 180)",
4673
+ "value": 180
4424
4674
  }
4425
4675
  ],
4426
4676
  "paramsSnapshot": [
4427
4677
  {
4428
- "nodeId": "dw-322b1978",
4678
+ "nodeId": "dw-07787cf7",
4429
4679
  "templateRef": "dcw-temp-sp",
4430
- "value": 182,
4680
+ "value": 180,
4431
4681
  "min": 176,
4432
4682
  "max": 188
4433
- },
4434
- {
4435
- "nodeId": "dw-e92bb0e7",
4436
- "templateRef": "dcw-pressure-sp",
4437
- "value": 0.92,
4438
- "min": 0.85,
4439
- "max": 1
4440
4683
  }
4441
4684
  ]
4442
4685
  },
4443
4686
  {
4444
- "id": "rr-550280b4",
4445
- "recipeId": "rc-7bf584db",
4446
- "recipeName": "A-标准工艺",
4447
- "productId": "pd-6348a595",
4448
- "lineId": "ln-af002514",
4449
- "startedAt": "2026-09-02T16:51:30.326Z",
4450
- "endedAt": "2026-09-02T16:51:34.973Z",
4687
+ "id": "rr-6a0c3b60",
4688
+ "recipeId": "rc-15b027a7",
4689
+ "recipeName": "全协议配方-mtnynfph",
4690
+ "productId": "pd-10cfc2b3",
4691
+ "lineId": "ln-6a34fbc7",
4692
+ "startedAt": "2026-09-05T05:47:26.453Z",
4693
+ "endedAt": null,
4451
4694
  "results": [
4452
4695
  {
4453
4696
  "templateRef": "dcw-temp-sp",
4454
- "nodeId": "dw-322b1978",
4455
- "ok": true,
4456
- "message": "Mock PLC 写入成功:182 → raw 182,回读一致(标定后物理值 182)",
4457
- "value": 182
4458
- },
4459
- {
4460
- "templateRef": "dcw-pressure-sp",
4461
- "nodeId": "dw-e92bb0e7",
4462
- "ok": true,
4463
- "message": "Mock PLC 写入成功:0.92 → raw 0.92,回读一致(标定后物理值 0.92)",
4464
- "value": 0.92
4697
+ "nodeId": "dw-8960e2f8",
4698
+ "ok": false,
4699
+ "message": "Modbus 写入失败: 无法建立连接——检查 PLC 电源/IP/端口与防火墙(connect ECONNREFUSED 127.0.0.1:15040)",
4700
+ "value": 180
4465
4701
  }
4466
4702
  ],
4467
4703
  "paramsSnapshot": [
4468
4704
  {
4469
- "nodeId": "dw-322b1978",
4705
+ "nodeId": "dw-8960e2f8",
4470
4706
  "templateRef": "dcw-temp-sp",
4471
- "value": 182,
4707
+ "value": 180,
4472
4708
  "min": 176,
4473
4709
  "max": 188
4474
- },
4475
- {
4476
- "nodeId": "dw-e92bb0e7",
4477
- "templateRef": "dcw-pressure-sp",
4478
- "value": 0.92,
4479
- "min": 0.85,
4480
- "max": 1
4481
4710
  }
4482
4711
  ]
4483
4712
  },
4484
4713
  {
4485
- "id": "rr-b00fdf3e",
4486
- "recipeId": "rc-7bf584db",
4487
- "recipeName": "A-标准工艺",
4488
- "productId": "pd-6348a595",
4489
- "lineId": "ln-af002514",
4490
- "startedAt": "2026-09-03T00:57:01.423Z",
4491
- "endedAt": "2026-09-03T01:03:34.019Z",
4714
+ "id": "rr-b7161a8a",
4715
+ "recipeId": "rc-bc73d81d",
4716
+ "recipeName": "全协议配方-mtnyz0bo",
4717
+ "productId": "pd-daaacaea",
4718
+ "lineId": "ln-8f28c295",
4719
+ "startedAt": "2026-09-05T05:56:36.833Z",
4720
+ "endedAt": "2026-09-05T05:58:40.961Z",
4492
4721
  "results": [
4493
4722
  {
4494
4723
  "templateRef": "dcw-temp-sp",
4495
- "nodeId": "dw-322b1978",
4496
- "ok": true,
4497
- "message": "Mock PLC 写入成功:182 → raw 182,回读一致(标定后物理值 182)",
4498
- "value": 182
4499
- },
4500
- {
4501
- "templateRef": "dcw-pressure-sp",
4502
- "nodeId": "dw-e92bb0e7",
4503
- "ok": true,
4504
- "message": "Mock PLC 写入成功:0.92 → raw 0.92,回读一致(标定后物理值 0.92)",
4505
- "value": 0.92
4724
+ "nodeId": "dw-ded0b84a",
4725
+ "ok": false,
4726
+ "message": "Modbus 写入失败: 无法建立连接——检查 PLC 电源/IP/端口与防火墙(connect ECONNREFUSED 127.0.0.1:15040)",
4727
+ "value": 180
4506
4728
  }
4507
4729
  ],
4508
4730
  "paramsSnapshot": [
4509
4731
  {
4510
- "nodeId": "dw-322b1978",
4732
+ "nodeId": "dw-ded0b84a",
4511
4733
  "templateRef": "dcw-temp-sp",
4512
- "value": 182,
4734
+ "value": 180,
4513
4735
  "min": 176,
4514
4736
  "max": 188
4515
- },
4516
- {
4517
- "nodeId": "dw-e92bb0e7",
4518
- "templateRef": "dcw-pressure-sp",
4519
- "value": 0.92,
4520
- "min": 0.85,
4521
- "max": 1
4522
4737
  }
4523
4738
  ]
4524
4739
  },
4525
4740
  {
4526
- "id": "rr-e549d9ab",
4527
- "recipeId": "rc-7bf584db",
4528
- "recipeName": "A-标准工艺",
4529
- "productId": "pd-6348a595",
4530
- "lineId": "ln-af002514",
4531
- "startedAt": "2026-09-03T01:04:26.086Z",
4532
- "endedAt": "2026-09-03T01:05:24.042Z",
4741
+ "id": "rr-08f535dc",
4742
+ "recipeId": "rc-2e7f586c",
4743
+ "recipeName": "全协议配方-mtnzg090",
4744
+ "productId": "pd-b9b15b64",
4745
+ "lineId": "ln-419463e0",
4746
+ "startedAt": "2026-09-05T06:09:36.931Z",
4747
+ "endedAt": null,
4533
4748
  "results": [
4534
4749
  {
4535
4750
  "templateRef": "dcw-temp-sp",
4536
- "nodeId": "dw-322b1978",
4537
- "ok": true,
4538
- "message": "Mock PLC 写入成功:182 → raw 182,回读一致(标定后物理值 182)",
4539
- "value": 182
4540
- },
4541
- {
4542
- "templateRef": "dcw-pressure-sp",
4543
- "nodeId": "dw-e92bb0e7",
4544
- "ok": true,
4545
- "message": "Mock PLC 写入成功:0.92 → raw 0.92,回读一致(标定后物理值 0.92)",
4546
- "value": 0.92
4751
+ "nodeId": "dw-9f172fc2",
4752
+ "ok": false,
4753
+ "message": "Modbus 写入失败: 无法建立连接——检查 PLC 电源/IP/端口与防火墙(connect ECONNREFUSED 127.0.0.1:15040)",
4754
+ "value": 180
4547
4755
  }
4548
4756
  ],
4549
4757
  "paramsSnapshot": [
4550
4758
  {
4551
- "nodeId": "dw-322b1978",
4759
+ "nodeId": "dw-9f172fc2",
4552
4760
  "templateRef": "dcw-temp-sp",
4553
- "value": 182,
4761
+ "value": 180,
4554
4762
  "min": 176,
4555
4763
  "max": 188
4556
- },
4557
- {
4558
- "nodeId": "dw-e92bb0e7",
4559
- "templateRef": "dcw-pressure-sp",
4560
- "value": 0.92,
4561
- "min": 0.85,
4562
- "max": 1
4563
4764
  }
4564
4765
  ]
4565
4766
  },
4566
4767
  {
4567
- "id": "rr-a5da5a38",
4568
- "recipeId": "rc-7bf584db",
4569
- "recipeName": "A-标准工艺",
4570
- "productId": "pd-6348a595",
4571
- "lineId": "ln-af002514",
4572
- "startedAt": "2026-09-03T01:10:39.886Z",
4573
- "endedAt": "2026-09-03T01:11:04.727Z",
4768
+ "id": "rr-09d52cc2",
4769
+ "recipeId": "rc-93d38783",
4770
+ "recipeName": "全协议配方-mtnzli8v",
4771
+ "productId": "pd-5451cd24",
4772
+ "lineId": "ln-2d4ae314",
4773
+ "startedAt": "2026-09-05T06:13:58.602Z",
4774
+ "endedAt": "2026-09-05T06:16:11.383Z",
4574
4775
  "results": [
4575
4776
  {
4576
4777
  "templateRef": "dcw-temp-sp",
4577
- "nodeId": "dw-322b1978",
4578
- "ok": true,
4579
- "message": "Mock PLC 写入成功:182 → raw 182,回读一致(标定后物理值 182)",
4580
- "value": 182
4581
- },
4582
- {
4583
- "templateRef": "dcw-pressure-sp",
4584
- "nodeId": "dw-e92bb0e7",
4778
+ "nodeId": "dw-c30656ec",
4585
4779
  "ok": true,
4586
- "message": "Mock PLC 写入成功:0.92 → raw 0.92,回读一致(标定后物理值 0.92)",
4587
- "value": 0.92
4780
+ "message": "写入并回读一致:180 → raw 180,回读 180(标定后物理值 180)",
4781
+ "value": 180
4588
4782
  }
4589
4783
  ],
4590
4784
  "paramsSnapshot": [
4591
4785
  {
4592
- "nodeId": "dw-322b1978",
4786
+ "nodeId": "dw-c30656ec",
4593
4787
  "templateRef": "dcw-temp-sp",
4594
- "value": 182,
4788
+ "value": 180,
4595
4789
  "min": 176,
4596
4790
  "max": 188
4597
- },
4598
- {
4599
- "nodeId": "dw-e92bb0e7",
4600
- "templateRef": "dcw-pressure-sp",
4601
- "value": 0.92,
4602
- "min": 0.85,
4603
- "max": 1
4604
4791
  }
4605
4792
  ]
4606
4793
  },
4607
4794
  {
4608
- "id": "rr-c4ff548d",
4609
- "recipeId": "rc-7bf584db",
4610
- "recipeName": "A-标准工艺",
4611
- "productId": "pd-6348a595",
4612
- "lineId": "ln-af002514",
4613
- "startedAt": "2026-09-03T01:12:29.192Z",
4614
- "endedAt": "2026-09-03T01:12:56.459Z",
4795
+ "id": "rr-fd00b56d",
4796
+ "recipeId": "rc-33609df2",
4797
+ "recipeName": "全协议配方-mto01hxw",
4798
+ "productId": "pd-d7d266f4",
4799
+ "lineId": "ln-ab3281cb",
4800
+ "startedAt": "2026-09-05T06:26:18.620Z",
4801
+ "endedAt": "2026-09-05T06:28:31.351Z",
4615
4802
  "results": [
4616
4803
  {
4617
4804
  "templateRef": "dcw-temp-sp",
4618
- "nodeId": "dw-322b1978",
4619
- "ok": true,
4620
- "message": "Mock PLC 写入成功:182 → raw 182,回读一致(标定后物理值 182)",
4621
- "value": 182
4622
- },
4623
- {
4624
- "templateRef": "dcw-pressure-sp",
4625
- "nodeId": "dw-e92bb0e7",
4805
+ "nodeId": "dw-553bf1fb",
4626
4806
  "ok": true,
4627
- "message": "Mock PLC 写入成功:0.92 → raw 0.92,回读一致(标定后物理值 0.92)",
4628
- "value": 0.92
4807
+ "message": "写入并回读一致:180 → raw 180,回读 180(标定后物理值 180)",
4808
+ "value": 180
4629
4809
  }
4630
4810
  ],
4631
4811
  "paramsSnapshot": [
4632
- {
4633
- "nodeId": "dw-322b1978",
4634
- "templateRef": "dcw-temp-sp",
4635
- "value": 182,
4636
- "min": 176,
4637
- "max": 188
4638
- },
4639
- {
4640
- "nodeId": "dw-e92bb0e7",
4641
- "templateRef": "dcw-pressure-sp",
4642
- "value": 0.92,
4643
- "min": 0.85,
4644
- "max": 1
4812
+ {
4813
+ "nodeId": "dw-553bf1fb",
4814
+ "templateRef": "dcw-temp-sp",
4815
+ "value": 180,
4816
+ "min": 176,
4817
+ "max": 188
4645
4818
  }
4646
4819
  ]
4647
4820
  },
4648
4821
  {
4649
- "id": "rr-a6881136",
4650
- "recipeId": "rc-7bf584db",
4651
- "recipeName": "A-标准工艺",
4652
- "productId": "pd-6348a595",
4653
- "lineId": "ln-af002514",
4654
- "startedAt": "2026-09-03T01:13:27.536Z",
4655
- "endedAt": "2026-09-03T01:13:54.797Z",
4822
+ "id": "rr-1bebca32",
4823
+ "recipeId": "rc-de49bc7e",
4824
+ "recipeName": "全协议配方-mto0h8o5",
4825
+ "productId": "pd-07fbd119",
4826
+ "lineId": "ln-8f14ebfc",
4827
+ "startedAt": "2026-09-05T06:38:33.546Z",
4828
+ "endedAt": "2026-09-05T06:40:46.349Z",
4656
4829
  "results": [
4657
4830
  {
4658
4831
  "templateRef": "dcw-temp-sp",
4659
- "nodeId": "dw-322b1978",
4660
- "ok": true,
4661
- "message": "Mock PLC 写入成功:182 → raw 182,回读一致(标定后物理值 182)",
4662
- "value": 182
4663
- },
4664
- {
4665
- "templateRef": "dcw-pressure-sp",
4666
- "nodeId": "dw-e92bb0e7",
4832
+ "nodeId": "dw-8e07e4f3",
4667
4833
  "ok": true,
4668
- "message": "Mock PLC 写入成功:0.92 → raw 0.92,回读一致(标定后物理值 0.92)",
4669
- "value": 0.92
4834
+ "message": "写入并回读一致:180 → raw 180,回读 180(标定后物理值 180)",
4835
+ "value": 180
4670
4836
  }
4671
4837
  ],
4672
4838
  "paramsSnapshot": [
4673
4839
  {
4674
- "nodeId": "dw-322b1978",
4840
+ "nodeId": "dw-8e07e4f3",
4675
4841
  "templateRef": "dcw-temp-sp",
4676
- "value": 182,
4842
+ "value": 180,
4677
4843
  "min": 176,
4678
4844
  "max": 188
4679
- },
4680
- {
4681
- "nodeId": "dw-e92bb0e7",
4682
- "templateRef": "dcw-pressure-sp",
4683
- "value": 0.92,
4684
- "min": 0.85,
4685
- "max": 1
4686
4845
  }
4687
4846
  ]
4688
4847
  },
4689
4848
  {
4690
- "id": "rr-8b294482",
4691
- "recipeId": "rc-7bf584db",
4692
- "recipeName": "A-标准工艺",
4693
- "productId": "pd-6348a595",
4694
- "lineId": "ln-af002514",
4695
- "startedAt": "2026-09-03T10:17:58.886Z",
4696
- "endedAt": "2026-09-03T10:41:13.654Z",
4849
+ "id": "rr-54b34bb5",
4850
+ "recipeId": "rc-c6fd3e11",
4851
+ "recipeName": "全协议配方-mto0m9es",
4852
+ "productId": "pd-fa8c0b2d",
4853
+ "lineId": "ln-d010bba3",
4854
+ "startedAt": "2026-09-05T06:42:28.622Z",
4855
+ "endedAt": "2026-09-05T06:44:29.232Z",
4697
4856
  "results": [
4698
4857
  {
4699
4858
  "templateRef": "dcw-temp-sp",
4700
- "nodeId": "dw-322b1978",
4701
- "ok": true,
4702
- "message": "Mock PLC 写入成功:182 → raw 182,回读一致(标定后物理值 182)",
4703
- "value": 182
4704
- },
4705
- {
4706
- "templateRef": "dcw-pressure-sp",
4707
- "nodeId": "dw-e92bb0e7",
4859
+ "nodeId": "dw-96091e58",
4708
4860
  "ok": true,
4709
- "message": "Mock PLC 写入成功:0.92 → raw 0.92,回读一致(标定后物理值 0.92)",
4710
- "value": 0.92
4861
+ "message": "写入并回读一致:180 → raw 180,回读 180(标定后物理值 180)",
4862
+ "value": 180
4711
4863
  }
4712
4864
  ],
4713
4865
  "paramsSnapshot": [
4714
4866
  {
4715
- "nodeId": "dw-322b1978",
4867
+ "nodeId": "dw-96091e58",
4716
4868
  "templateRef": "dcw-temp-sp",
4717
- "value": 182,
4869
+ "value": 180,
4718
4870
  "min": 176,
4719
4871
  "max": 188
4720
- },
4721
- {
4722
- "nodeId": "dw-e92bb0e7",
4723
- "templateRef": "dcw-pressure-sp",
4724
- "value": 0.92,
4725
- "min": 0.85,
4726
- "max": 1
4727
4872
  }
4728
4873
  ]
4729
4874
  },
4730
4875
  {
4731
- "id": "rr-b1f6156d",
4732
- "recipeId": "rc-7bf584db",
4733
- "recipeName": "A-标准工艺",
4734
- "productId": "pd-6348a595",
4735
- "lineId": "ln-af002514",
4736
- "startedAt": "2026-09-03T10:41:14.527Z",
4737
- "endedAt": "2026-09-03T10:44:04.580Z",
4876
+ "id": "rr-4e40cab0",
4877
+ "recipeId": "rc-80195acf",
4878
+ "recipeName": "全协议配方-mto113i2",
4879
+ "productId": "pd-9e290ee1",
4880
+ "lineId": "ln-c7668a8d",
4881
+ "startedAt": "2026-09-05T06:54:01.584Z",
4882
+ "endedAt": "2026-09-05T06:55:54.890Z",
4738
4883
  "results": [
4739
4884
  {
4740
4885
  "templateRef": "dcw-temp-sp",
4741
- "nodeId": "dw-322b1978",
4742
- "ok": true,
4743
- "message": "Mock PLC 写入成功:182 → raw 182,回读一致(标定后物理值 182)",
4744
- "value": 182
4745
- },
4746
- {
4747
- "templateRef": "dcw-pressure-sp",
4748
- "nodeId": "dw-e92bb0e7",
4886
+ "nodeId": "dw-ab89beb3",
4749
4887
  "ok": true,
4750
- "message": "Mock PLC 写入成功:0.92 → raw 0.92,回读一致(标定后物理值 0.92)",
4751
- "value": 0.92
4888
+ "message": "写入并回读一致:180 → raw 180,回读 180(标定后物理值 180)",
4889
+ "value": 180
4752
4890
  }
4753
4891
  ],
4754
4892
  "paramsSnapshot": [
4755
4893
  {
4756
- "nodeId": "dw-322b1978",
4894
+ "nodeId": "dw-ab89beb3",
4757
4895
  "templateRef": "dcw-temp-sp",
4758
- "value": 182,
4896
+ "value": 180,
4759
4897
  "min": 176,
4760
4898
  "max": 188
4761
- },
4762
- {
4763
- "nodeId": "dw-e92bb0e7",
4764
- "templateRef": "dcw-pressure-sp",
4765
- "value": 0.92,
4766
- "min": 0.85,
4767
- "max": 1
4768
4899
  }
4769
4900
  ]
4770
4901
  },
4771
4902
  {
4772
- "id": "rr-6da3f412",
4773
- "recipeId": "rc-7bf584db",
4774
- "recipeName": "A-标准工艺",
4775
- "productId": "pd-6348a595",
4776
- "lineId": "ln-af002514",
4777
- "startedAt": "2026-09-03T11:18:01.213Z",
4778
- "endedAt": null,
4903
+ "id": "rr-27719005",
4904
+ "recipeId": "rc-4b542654",
4905
+ "recipeName": "全协议配方-mto1771y",
4906
+ "productId": "pd-9868366c",
4907
+ "lineId": "ln-694c51f4",
4908
+ "startedAt": "2026-09-05T07:14:22.918Z",
4909
+ "endedAt": "2026-09-05T07:16:16.372Z",
4779
4910
  "results": [
4780
4911
  {
4781
4912
  "templateRef": "dcw-temp-sp",
4782
- "nodeId": "dw-322b1978",
4783
- "ok": true,
4784
- "message": "Mock PLC 写入成功:182 → raw 182,回读一致(标定后物理值 182)",
4785
- "value": 182
4786
- },
4787
- {
4788
- "templateRef": "dcw-pressure-sp",
4789
- "nodeId": "dw-e92bb0e7",
4913
+ "nodeId": "dw-4c6c6920",
4790
4914
  "ok": true,
4791
- "message": "Mock PLC 写入成功:0.92 → raw 0.92,回读一致(标定后物理值 0.92)",
4792
- "value": 0.92
4915
+ "message": "写入并回读一致:180 → raw 180,回读 180(标定后物理值 180)",
4916
+ "value": 180
4793
4917
  }
4794
4918
  ],
4795
4919
  "paramsSnapshot": [
4796
4920
  {
4797
- "nodeId": "dw-322b1978",
4921
+ "nodeId": "dw-4c6c6920",
4798
4922
  "templateRef": "dcw-temp-sp",
4799
- "value": 182,
4923
+ "value": 180,
4800
4924
  "min": 176,
4801
4925
  "max": 188
4802
- },
4803
- {
4804
- "nodeId": "dw-e92bb0e7",
4805
- "templateRef": "dcw-pressure-sp",
4806
- "value": 0.92,
4807
- "min": 0.85,
4808
- "max": 1
4809
4926
  }
4810
4927
  ]
4811
4928
  },
4812
4929
  {
4813
- "id": "rr-2238155d",
4814
- "recipeId": "rc-552c0488",
4815
- "recipeName": "A-闭环工艺",
4816
- "productId": "pd-e712875d",
4817
- "lineId": "ln-9a60a0cd",
4818
- "startedAt": "2026-09-03T16:03:27.304Z",
4930
+ "id": "rr-d667a896",
4931
+ "recipeId": "rc-814248c6",
4932
+ "recipeName": "runp3-recipe",
4933
+ "productId": "pd-fd822802",
4934
+ "lineId": "ln-3548f325",
4935
+ "startedAt": "2026-09-05T07:23:51.972Z",
4819
4936
  "endedAt": null,
4820
4937
  "results": [
4821
4938
  {
4822
4939
  "templateRef": "dcw-temp-sp",
4823
- "nodeId": "dw-f944538c",
4940
+ "nodeId": "dw-06590507",
4824
4941
  "ok": true,
4825
- "message": "写入并回读一致:160 → raw 160,回读 160(标定后物理值 160)",
4826
- "value": 160
4942
+ "message": "写入并回读一致:180 → raw 180,回读 180(标定后物理值 180)",
4943
+ "value": 180
4827
4944
  }
4828
4945
  ],
4829
4946
  "paramsSnapshot": [
4830
4947
  {
4831
- "nodeId": "dw-f944538c",
4948
+ "nodeId": "dw-06590507",
4832
4949
  "templateRef": "dcw-temp-sp",
4833
- "value": 160,
4834
- "min": 100,
4835
- "max": 200
4950
+ "value": 180,
4951
+ "min": 176,
4952
+ "max": 188
4836
4953
  }
4837
4954
  ]
4838
4955
  },
4839
4956
  {
4840
- "id": "rr-9d5070a1",
4841
- "recipeId": "rc-0d3b58f7",
4842
- "recipeName": "A-闭环工艺",
4843
- "productId": "pd-16eecb35",
4844
- "lineId": "ln-b33a3105",
4845
- "startedAt": "2026-09-03T16:39:22.962Z",
4846
- "endedAt": null,
4957
+ "id": "rr-3d8e141a",
4958
+ "recipeId": "rc-98300208",
4959
+ "recipeName": "全协议配方-mto2mf6i",
4960
+ "productId": "pd-37e543f1",
4961
+ "lineId": "ln-6502a1f3",
4962
+ "startedAt": "2026-09-05T07:38:47.414Z",
4963
+ "endedAt": "2026-09-05T07:40:41.683Z",
4847
4964
  "results": [
4848
4965
  {
4849
4966
  "templateRef": "dcw-temp-sp",
4850
- "nodeId": "dw-0188c6c4",
4967
+ "nodeId": "dw-ed7f4682",
4851
4968
  "ok": true,
4852
- "message": "写入并回读一致:160 → raw 160,回读 160(标定后物理值 160)",
4853
- "value": 160
4969
+ "message": "写入并回读一致:180 → raw 180,回读 180(标定后物理值 180)",
4970
+ "value": 180
4854
4971
  }
4855
4972
  ],
4856
4973
  "paramsSnapshot": [
4857
4974
  {
4858
- "nodeId": "dw-0188c6c4",
4975
+ "nodeId": "dw-ed7f4682",
4859
4976
  "templateRef": "dcw-temp-sp",
4860
- "value": 160,
4861
- "min": 100,
4862
- "max": 200
4977
+ "value": 180,
4978
+ "min": 176,
4979
+ "max": 188
4863
4980
  }
4864
4981
  ]
4865
4982
  },
4866
4983
  {
4867
- "id": "rr-a86971ae",
4868
- "recipeId": "rc-2961fd43",
4869
- "recipeName": "A-闭环工艺",
4870
- "productId": "pd-9c755781",
4871
- "lineId": "ln-1aedc305",
4872
- "startedAt": "2026-09-03T16:44:33.199Z",
4984
+ "id": "rr-a41a21fd",
4985
+ "recipeId": "rc-c362b721",
4986
+ "recipeName": "全协议配方-mto2w44t",
4987
+ "productId": "pd-4de49ca3",
4988
+ "lineId": "ln-c3a7ba01",
4989
+ "startedAt": "2026-09-05T07:46:23.423Z",
4873
4990
  "endedAt": null,
4874
4991
  "results": [
4875
4992
  {
4876
4993
  "templateRef": "dcw-temp-sp",
4877
- "nodeId": "dw-097f1e6a",
4994
+ "nodeId": "dw-5fdc7f6f",
4878
4995
  "ok": true,
4879
- "message": "写入并回读一致:160 → raw 160,回读 160(标定后物理值 160)",
4880
- "value": 160
4996
+ "message": "写入并回读一致:180 → raw 180,回读 180(标定后物理值 180)",
4997
+ "value": 180
4881
4998
  }
4882
4999
  ],
4883
5000
  "paramsSnapshot": [
4884
5001
  {
4885
- "nodeId": "dw-097f1e6a",
5002
+ "nodeId": "dw-5fdc7f6f",
4886
5003
  "templateRef": "dcw-temp-sp",
4887
- "value": 160,
4888
- "min": 100,
4889
- "max": 200
5004
+ "value": 180,
5005
+ "min": 176,
5006
+ "max": 188
4890
5007
  }
4891
5008
  ]
4892
5009
  },
4893
5010
  {
4894
- "id": "rr-c66a150f",
4895
- "recipeId": "rc-6acb6e12",
4896
- "recipeName": "A-闭环工艺",
4897
- "productId": "pd-835aed90",
4898
- "lineId": "ln-758658dc",
4899
- "startedAt": "2026-09-03T17:12:52.205Z",
4900
- "endedAt": null,
5011
+ "id": "rr-f5a55ecb",
5012
+ "recipeId": "rc-6035701d",
5013
+ "recipeName": "全协议配方-mto30yeb",
5014
+ "productId": "pd-689555fc",
5015
+ "lineId": "ln-c570b64e",
5016
+ "startedAt": "2026-09-05T07:50:14.492Z",
5017
+ "endedAt": "2026-09-05T07:52:08.752Z",
4901
5018
  "results": [
4902
5019
  {
4903
5020
  "templateRef": "dcw-temp-sp",
4904
- "nodeId": "dw-8fb89e02",
5021
+ "nodeId": "dw-d324afad",
4905
5022
  "ok": true,
4906
- "message": "写入并回读一致:160 → raw 160,回读 160(标定后物理值 160)",
4907
- "value": 160
5023
+ "message": "写入并回读一致:180 → raw 180,回读 180(标定后物理值 180)",
5024
+ "value": 180
4908
5025
  }
4909
5026
  ],
4910
5027
  "paramsSnapshot": [
4911
5028
  {
4912
- "nodeId": "dw-8fb89e02",
5029
+ "nodeId": "dw-d324afad",
4913
5030
  "templateRef": "dcw-temp-sp",
4914
- "value": 160,
4915
- "min": 100,
4916
- "max": 200
5031
+ "value": 180,
5032
+ "min": 176,
5033
+ "max": 188
4917
5034
  }
4918
5035
  ]
4919
5036
  },
4920
5037
  {
4921
- "id": "rr-875be24a",
4922
- "recipeId": "rc-59b8eca0",
4923
- "recipeName": "配方-mtmhgrsn",
4924
- "productId": "pd-b06ac7d7",
4925
- "lineId": "ln-40681e03",
4926
- "startedAt": "2026-09-04T04:58:09.920Z",
4927
- "endedAt": "2026-09-04T04:58:51.324Z",
5038
+ "id": "rr-3da13dd0",
5039
+ "recipeId": "rc-ddc06010",
5040
+ "recipeName": "插件配方-mto3p7ny",
5041
+ "productId": "pd-aa36f7ab",
5042
+ "lineId": "ln-ab4024ff",
5043
+ "startedAt": "2026-09-05T08:08:23.551Z",
5044
+ "endedAt": "2026-09-05T08:08:34.411Z",
4928
5045
  "results": [
4929
5046
  {
4930
5047
  "templateRef": "dcw-temp-sp",
4931
- "nodeId": "dw-3a3f7a4c",
5048
+ "nodeId": "dw-511d0e81",
4932
5049
  "ok": true,
4933
5050
  "message": "Mock PLC 写入成功:180 → raw 180,回读一致(标定后物理值 180)",
4934
5051
  "value": 180
@@ -4936,80 +5053,80 @@
4936
5053
  ],
4937
5054
  "paramsSnapshot": [
4938
5055
  {
4939
- "nodeId": "dw-3a3f7a4c",
5056
+ "nodeId": "dw-511d0e81",
4940
5057
  "templateRef": "dcw-temp-sp",
4941
5058
  "value": 180,
4942
- "min": 176,
4943
- "max": 188
5059
+ "min": 150,
5060
+ "max": 200
4944
5061
  }
4945
5062
  ]
4946
5063
  },
4947
5064
  {
4948
- "id": "rr-de10d51e",
4949
- "recipeId": "rc-5667c3cb",
4950
- "recipeName": "配方-mtmhnz2f",
4951
- "productId": "pd-a7ccbe70",
4952
- "lineId": "ln-a284d605",
4953
- "startedAt": "2026-09-04T05:03:45.894Z",
4954
- "endedAt": "2026-09-04T05:04:27.237Z",
5065
+ "id": "rr-ede96923",
5066
+ "recipeId": "rc-137880a8",
5067
+ "recipeName": "多引擎配方-mto47ec9",
5068
+ "productId": "pd-7b6d4e2c",
5069
+ "lineId": "ln-b2c3be6e",
5070
+ "startedAt": "2026-09-05T08:23:06.417Z",
5071
+ "endedAt": "2026-09-05T08:41:26.164Z",
4955
5072
  "results": [
4956
5073
  {
4957
5074
  "templateRef": "dcw-temp-sp",
4958
- "nodeId": "dw-42fcd798",
5075
+ "nodeId": "dw-a470230d",
4959
5076
  "ok": true,
4960
- "message": "Mock PLC 写入成功:180 → raw 180,回读一致(标定后物理值 180)",
5077
+ "message": "写入并回读一致:180 → raw 180,回读 180(标定后物理值 180)",
4961
5078
  "value": 180
4962
5079
  }
4963
5080
  ],
4964
5081
  "paramsSnapshot": [
4965
5082
  {
4966
- "nodeId": "dw-42fcd798",
5083
+ "nodeId": "dw-a470230d",
4967
5084
  "templateRef": "dcw-temp-sp",
4968
5085
  "value": 180,
4969
- "min": 176,
4970
- "max": 188
5086
+ "min": 150,
5087
+ "max": 200
4971
5088
  }
4972
5089
  ]
4973
5090
  },
4974
5091
  {
4975
- "id": "rr-9e70a9dc",
4976
- "recipeId": "rc-ccee1b1b",
4977
- "recipeName": "探针配方",
4978
- "productId": "pd-db432902",
4979
- "lineId": "ln-1b318320",
4980
- "startedAt": "2026-09-04T05:08:10.103Z",
4981
- "endedAt": null,
5092
+ "id": "rr-8c3cc9f7",
5093
+ "recipeId": "rc-a01ee7c9",
5094
+ "recipeName": "多引擎配方-mto4xd17",
5095
+ "productId": "pd-ef246eba",
5096
+ "lineId": "ln-190e7eef",
5097
+ "startedAt": "2026-09-05T08:42:47.817Z",
5098
+ "endedAt": "2026-09-05T09:02:01.764Z",
4982
5099
  "results": [
4983
5100
  {
4984
5101
  "templateRef": "dcw-temp-sp",
4985
- "nodeId": "dw-756e3e07",
5102
+ "nodeId": "dw-dc216d75",
4986
5103
  "ok": true,
4987
- "message": "Mock PLC 写入成功:180 → raw 180,回读一致(标定后物理值 180)",
5104
+ "message": "写入并回读一致:180 → raw 180,回读 180(标定后物理值 180)",
4988
5105
  "value": 180
4989
5106
  }
4990
5107
  ],
4991
5108
  "paramsSnapshot": [
4992
5109
  {
4993
- "nodeId": "dw-756e3e07",
5110
+ "nodeId": "dw-dc216d75",
4994
5111
  "templateRef": "dcw-temp-sp",
4995
5112
  "value": 180,
4996
- "min": 176,
4997
- "max": 188
5113
+ "min": 150,
5114
+ "max": 200
4998
5115
  }
4999
5116
  ]
5000
5117
  },
5001
5118
  {
5002
- "id": "rr-dbb44962",
5003
- "recipeId": "rc-c73f8aed",
5004
- "recipeName": "探针配方",
5005
- "productId": "pd-f6296ca1",
5006
- "lineId": "ln-c50d97f5",
5007
- "startedAt": "2026-09-04T05:08:56.257Z",
5008
- "endedAt": "2026-09-04T05:09:02.608Z",
5119
+ "id": "rr-5ba7bd5b",
5120
+ "recipeId": "rc-9b2255dc",
5121
+ "recipeName": "间隔配方-mto6rqqa",
5122
+ "productId": "pd-0e64bd2f",
5123
+ "lineId": "ln-51fcb8ac",
5124
+ "startedAt": "2026-09-05T09:34:20.925Z",
5125
+ "endedAt": "2026-09-05T09:35:29.245Z",
5009
5126
  "results": [
5010
5127
  {
5011
5128
  "templateRef": "dcw-temp-sp",
5012
- "nodeId": "dw-1ccbe1a8",
5129
+ "nodeId": "dw-0ed9deab",
5013
5130
  "ok": true,
5014
5131
  "message": "Mock PLC 写入成功:180 → raw 180,回读一致(标定后物理值 180)",
5015
5132
  "value": 180
@@ -5017,26 +5134,26 @@
5017
5134
  ],
5018
5135
  "paramsSnapshot": [
5019
5136
  {
5020
- "nodeId": "dw-1ccbe1a8",
5137
+ "nodeId": "dw-0ed9deab",
5021
5138
  "templateRef": "dcw-temp-sp",
5022
5139
  "value": 180,
5023
- "min": 176,
5024
- "max": 188
5140
+ "min": 150,
5141
+ "max": 200
5025
5142
  }
5026
5143
  ]
5027
5144
  },
5028
5145
  {
5029
- "id": "rr-02e1b75d",
5030
- "recipeId": "rc-839041c6",
5031
- "recipeName": "配方-mtmhyn1r",
5032
- "productId": "pd-cfe2e059",
5033
- "lineId": "ln-826f8518",
5034
- "startedAt": "2026-09-04T05:12:03.638Z",
5035
- "endedAt": "2026-09-04T05:12:13.981Z",
5146
+ "id": "rr-7d24224e",
5147
+ "recipeId": "rc-2e349c80",
5148
+ "recipeName": "插件配方-mto6ysj1",
5149
+ "productId": "pd-64a9d0b7",
5150
+ "lineId": "ln-2e9272f7",
5151
+ "startedAt": "2026-09-05T09:39:59.370Z",
5152
+ "endedAt": "2026-09-05T09:40:10.153Z",
5036
5153
  "results": [
5037
5154
  {
5038
5155
  "templateRef": "dcw-temp-sp",
5039
- "nodeId": "dw-3b6fd688",
5156
+ "nodeId": "dw-37f5153e",
5040
5157
  "ok": true,
5041
5158
  "message": "Mock PLC 写入成功:180 → raw 180,回读一致(标定后物理值 180)",
5042
5159
  "value": 180
@@ -5044,431 +5161,431 @@
5044
5161
  ],
5045
5162
  "paramsSnapshot": [
5046
5163
  {
5047
- "nodeId": "dw-3b6fd688",
5164
+ "nodeId": "dw-37f5153e",
5048
5165
  "templateRef": "dcw-temp-sp",
5049
5166
  "value": 180,
5050
- "min": 176,
5051
- "max": 188
5167
+ "min": 150,
5168
+ "max": 200
5052
5169
  }
5053
5170
  ]
5054
5171
  },
5055
5172
  {
5056
- "id": "rr-901d3630",
5057
- "recipeId": "rc-14eddb92",
5058
- "recipeName": "全协议配方-mtny0lcv",
5059
- "productId": "pd-c01bf204",
5060
- "lineId": "ln-62e215e5",
5061
- "startedAt": "2026-09-05T05:29:21.550Z",
5062
- "endedAt": "2026-09-05T05:31:24.035Z",
5173
+ "id": "rr-55e35132",
5174
+ "recipeId": "rc-4f3f66b1",
5175
+ "recipeName": "插件配方-mto73j6f",
5176
+ "productId": "pd-981b720a",
5177
+ "lineId": "ln-98ac4967",
5178
+ "startedAt": "2026-09-05T09:43:40.421Z",
5179
+ "endedAt": "2026-09-05T09:43:51.246Z",
5063
5180
  "results": [
5064
5181
  {
5065
5182
  "templateRef": "dcw-temp-sp",
5066
- "nodeId": "dw-34014c7e",
5183
+ "nodeId": "dw-f9a5e01e",
5067
5184
  "ok": true,
5068
- "message": "写入并回读一致:180 → raw 180,回读 180(标定后物理值 180)",
5185
+ "message": "Mock PLC 写入成功:180 → raw 180,回读一致(标定后物理值 180)",
5069
5186
  "value": 180
5070
5187
  }
5071
5188
  ],
5072
5189
  "paramsSnapshot": [
5073
5190
  {
5074
- "nodeId": "dw-34014c7e",
5191
+ "nodeId": "dw-f9a5e01e",
5075
5192
  "templateRef": "dcw-temp-sp",
5076
5193
  "value": 180,
5077
- "min": 176,
5078
- "max": 188
5194
+ "min": 150,
5195
+ "max": 200
5079
5196
  }
5080
5197
  ]
5081
5198
  },
5082
5199
  {
5083
- "id": "rr-f0e4d57d",
5084
- "recipeId": "rc-a2b19319",
5085
- "recipeName": "全协议配方-mtnyemlz",
5086
- "productId": "pd-572c23f0",
5087
- "lineId": "ln-81865050",
5088
- "startedAt": "2026-09-05T05:40:12.225Z",
5089
- "endedAt": "2026-09-05T05:40:32.930Z",
5200
+ "id": "rr-cb2a9c2f",
5201
+ "recipeId": "rc-e82b9389",
5202
+ "recipeName": "插件配方-mto75hw0",
5203
+ "productId": "pd-b7c69be7",
5204
+ "lineId": "ln-68d3dc2d",
5205
+ "startedAt": "2026-09-05T09:45:11.763Z",
5206
+ "endedAt": "2026-09-05T09:45:22.566Z",
5090
5207
  "results": [
5091
5208
  {
5092
5209
  "templateRef": "dcw-temp-sp",
5093
- "nodeId": "dw-07787cf7",
5210
+ "nodeId": "dw-1a99b8ea",
5094
5211
  "ok": true,
5095
- "message": "写入并回读一致:180 → raw 180,回读 180(标定后物理值 180)",
5212
+ "message": "Mock PLC 写入成功:180 → raw 180,回读一致(标定后物理值 180)",
5096
5213
  "value": 180
5097
5214
  }
5098
5215
  ],
5099
5216
  "paramsSnapshot": [
5100
5217
  {
5101
- "nodeId": "dw-07787cf7",
5218
+ "nodeId": "dw-1a99b8ea",
5102
5219
  "templateRef": "dcw-temp-sp",
5103
5220
  "value": 180,
5104
- "min": 176,
5105
- "max": 188
5221
+ "min": 150,
5222
+ "max": 200
5106
5223
  }
5107
5224
  ]
5108
5225
  },
5109
5226
  {
5110
- "id": "rr-6a0c3b60",
5111
- "recipeId": "rc-15b027a7",
5112
- "recipeName": "全协议配方-mtnynfph",
5113
- "productId": "pd-10cfc2b3",
5114
- "lineId": "ln-6a34fbc7",
5115
- "startedAt": "2026-09-05T05:47:26.453Z",
5227
+ "id": "rr-ecf1b5fb",
5228
+ "recipeId": "rc-57a42339",
5229
+ "recipeName": "pp-recipe",
5230
+ "productId": "pd-d547a376",
5231
+ "lineId": "ln-871ac52d",
5232
+ "startedAt": "2026-09-05T09:47:55.526Z",
5116
5233
  "endedAt": null,
5117
5234
  "results": [
5118
5235
  {
5119
5236
  "templateRef": "dcw-temp-sp",
5120
- "nodeId": "dw-8960e2f8",
5121
- "ok": false,
5122
- "message": "Modbus 写入失败: 无法建立连接——检查 PLC 电源/IP/端口与防火墙(connect ECONNREFUSED 127.0.0.1:15040)",
5237
+ "nodeId": "dw-edbf2b95",
5238
+ "ok": true,
5239
+ "message": "Mock PLC 写入成功:180 → raw 180,回读一致(标定后物理值 180)",
5123
5240
  "value": 180
5124
5241
  }
5125
5242
  ],
5126
5243
  "paramsSnapshot": [
5127
5244
  {
5128
- "nodeId": "dw-8960e2f8",
5245
+ "nodeId": "dw-edbf2b95",
5129
5246
  "templateRef": "dcw-temp-sp",
5130
5247
  "value": 180,
5131
- "min": 176,
5132
- "max": 188
5248
+ "min": 150,
5249
+ "max": 200
5133
5250
  }
5134
5251
  ]
5135
5252
  },
5136
5253
  {
5137
- "id": "rr-b7161a8a",
5138
- "recipeId": "rc-bc73d81d",
5139
- "recipeName": "全协议配方-mtnyz0bo",
5140
- "productId": "pd-daaacaea",
5141
- "lineId": "ln-8f28c295",
5142
- "startedAt": "2026-09-05T05:56:36.833Z",
5143
- "endedAt": "2026-09-05T05:58:40.961Z",
5254
+ "id": "rr-44976926",
5255
+ "recipeId": "rc-5ef215b3",
5256
+ "recipeName": "pp2-recipe",
5257
+ "productId": "pd-60668493",
5258
+ "lineId": "ln-fe3512a7",
5259
+ "startedAt": "2026-09-05T09:53:24.690Z",
5260
+ "endedAt": "2026-09-05T09:53:33.853Z",
5144
5261
  "results": [
5145
5262
  {
5146
5263
  "templateRef": "dcw-temp-sp",
5147
- "nodeId": "dw-ded0b84a",
5148
- "ok": false,
5149
- "message": "Modbus 写入失败: 无法建立连接——检查 PLC 电源/IP/端口与防火墙(connect ECONNREFUSED 127.0.0.1:15040)",
5264
+ "nodeId": "dw-fb6b0f5a",
5265
+ "ok": true,
5266
+ "message": "Mock PLC 写入成功:180 → raw 180,回读一致(标定后物理值 180)",
5150
5267
  "value": 180
5151
5268
  }
5152
5269
  ],
5153
5270
  "paramsSnapshot": [
5154
5271
  {
5155
- "nodeId": "dw-ded0b84a",
5272
+ "nodeId": "dw-fb6b0f5a",
5156
5273
  "templateRef": "dcw-temp-sp",
5157
5274
  "value": 180,
5158
- "min": 176,
5159
- "max": 188
5275
+ "min": 150,
5276
+ "max": 200
5160
5277
  }
5161
5278
  ]
5162
5279
  },
5163
5280
  {
5164
- "id": "rr-08f535dc",
5165
- "recipeId": "rc-2e7f586c",
5166
- "recipeName": "全协议配方-mtnzg090",
5167
- "productId": "pd-b9b15b64",
5168
- "lineId": "ln-419463e0",
5169
- "startedAt": "2026-09-05T06:09:36.931Z",
5170
- "endedAt": null,
5281
+ "id": "rr-bb6abea5",
5282
+ "recipeId": "rc-62231c1c",
5283
+ "recipeName": "插件配方-mto7gthj",
5284
+ "productId": "pd-ce27a82c",
5285
+ "lineId": "ln-96b92c18",
5286
+ "startedAt": "2026-09-05T09:53:58.816Z",
5287
+ "endedAt": "2026-09-05T09:54:09.729Z",
5171
5288
  "results": [
5172
5289
  {
5173
5290
  "templateRef": "dcw-temp-sp",
5174
- "nodeId": "dw-9f172fc2",
5175
- "ok": false,
5176
- "message": "Modbus 写入失败: 无法建立连接——检查 PLC 电源/IP/端口与防火墙(connect ECONNREFUSED 127.0.0.1:15040)",
5291
+ "nodeId": "dw-e5fcf0a3",
5292
+ "ok": true,
5293
+ "message": "Mock PLC 写入成功:180 → raw 180,回读一致(标定后物理值 180)",
5177
5294
  "value": 180
5178
5295
  }
5179
5296
  ],
5180
5297
  "paramsSnapshot": [
5181
5298
  {
5182
- "nodeId": "dw-9f172fc2",
5299
+ "nodeId": "dw-e5fcf0a3",
5183
5300
  "templateRef": "dcw-temp-sp",
5184
5301
  "value": 180,
5185
- "min": 176,
5186
- "max": 188
5302
+ "min": 150,
5303
+ "max": 200
5187
5304
  }
5188
5305
  ]
5189
5306
  },
5190
- {
5191
- "id": "rr-09d52cc2",
5192
- "recipeId": "rc-93d38783",
5193
- "recipeName": "全协议配方-mtnzli8v",
5194
- "productId": "pd-5451cd24",
5195
- "lineId": "ln-2d4ae314",
5196
- "startedAt": "2026-09-05T06:13:58.602Z",
5197
- "endedAt": "2026-09-05T06:16:11.383Z",
5307
+ {
5308
+ "id": "rr-c0498edd",
5309
+ "recipeId": "rc-299d17de",
5310
+ "recipeName": "tzc-recipe",
5311
+ "productId": "pd-e7a6099a",
5312
+ "lineId": "ln-bd67b10b",
5313
+ "startedAt": "2026-09-05T19:05:14.654+08:00",
5314
+ "endedAt": "2026-09-05T19:05:22.851+08:00",
5198
5315
  "results": [
5199
5316
  {
5200
5317
  "templateRef": "dcw-temp-sp",
5201
- "nodeId": "dw-c30656ec",
5318
+ "nodeId": "dw-db743eb4",
5202
5319
  "ok": true,
5203
- "message": "写入并回读一致:180 → raw 180,回读 180(标定后物理值 180)",
5320
+ "message": "Mock PLC 写入成功:180 → raw 180,回读一致(标定后物理值 180)",
5204
5321
  "value": 180
5205
5322
  }
5206
5323
  ],
5207
5324
  "paramsSnapshot": [
5208
5325
  {
5209
- "nodeId": "dw-c30656ec",
5326
+ "nodeId": "dw-db743eb4",
5210
5327
  "templateRef": "dcw-temp-sp",
5211
5328
  "value": 180,
5212
- "min": 176,
5213
- "max": 188
5329
+ "min": 150,
5330
+ "max": 200
5214
5331
  }
5215
5332
  ]
5216
5333
  },
5217
5334
  {
5218
- "id": "rr-fd00b56d",
5219
- "recipeId": "rc-33609df2",
5220
- "recipeName": "全协议配方-mto01hxw",
5221
- "productId": "pd-d7d266f4",
5222
- "lineId": "ln-ab3281cb",
5223
- "startedAt": "2026-09-05T06:26:18.620Z",
5224
- "endedAt": "2026-09-05T06:28:31.351Z",
5335
+ "id": "rr-046c380b",
5336
+ "recipeId": "rc-3799921d",
5337
+ "recipeName": "cfg-recipe",
5338
+ "productId": "pd-3ffc5e11",
5339
+ "lineId": "ln-5318b12b",
5340
+ "startedAt": "2026-09-05T19:59:44.418+08:00",
5341
+ "endedAt": "2026-09-05T20:00:05.731+08:00",
5225
5342
  "results": [
5226
5343
  {
5227
5344
  "templateRef": "dcw-temp-sp",
5228
- "nodeId": "dw-553bf1fb",
5345
+ "nodeId": "dw-204b00c4",
5229
5346
  "ok": true,
5230
- "message": "写入并回读一致:180 → raw 180,回读 180(标定后物理值 180)",
5347
+ "message": "Mock PLC 写入成功:180 → raw 180,回读一致(标定后物理值 180)",
5231
5348
  "value": 180
5232
5349
  }
5233
5350
  ],
5234
5351
  "paramsSnapshot": [
5235
5352
  {
5236
- "nodeId": "dw-553bf1fb",
5353
+ "nodeId": "dw-204b00c4",
5237
5354
  "templateRef": "dcw-temp-sp",
5238
5355
  "value": 180,
5239
- "min": 176,
5240
- "max": 188
5356
+ "min": 150,
5357
+ "max": 200
5241
5358
  }
5242
5359
  ]
5243
5360
  },
5244
5361
  {
5245
- "id": "rr-1bebca32",
5246
- "recipeId": "rc-de49bc7e",
5247
- "recipeName": "全协议配方-mto0h8o5",
5248
- "productId": "pd-07fbd119",
5249
- "lineId": "ln-8f14ebfc",
5250
- "startedAt": "2026-09-05T06:38:33.546Z",
5251
- "endedAt": "2026-09-05T06:40:46.349Z",
5362
+ "id": "rr-ae1a2022",
5363
+ "recipeId": "rc-7756484b",
5364
+ "recipeName": "cfg-recipe",
5365
+ "productId": "pd-36b00ed3",
5366
+ "lineId": "ln-07768b17",
5367
+ "startedAt": "2026-09-05T20:04:40.532+08:00",
5368
+ "endedAt": "2026-09-05T20:05:01.635+08:00",
5252
5369
  "results": [
5253
5370
  {
5254
5371
  "templateRef": "dcw-temp-sp",
5255
- "nodeId": "dw-8e07e4f3",
5372
+ "nodeId": "dw-2dcce3c7",
5256
5373
  "ok": true,
5257
- "message": "写入并回读一致:180 → raw 180,回读 180(标定后物理值 180)",
5374
+ "message": "Mock PLC 写入成功:180 → raw 180,回读一致(标定后物理值 180)",
5258
5375
  "value": 180
5259
5376
  }
5260
5377
  ],
5261
5378
  "paramsSnapshot": [
5262
5379
  {
5263
- "nodeId": "dw-8e07e4f3",
5380
+ "nodeId": "dw-2dcce3c7",
5264
5381
  "templateRef": "dcw-temp-sp",
5265
5382
  "value": 180,
5266
- "min": 176,
5267
- "max": 188
5383
+ "min": 150,
5384
+ "max": 200
5268
5385
  }
5269
5386
  ]
5270
5387
  },
5271
5388
  {
5272
- "id": "rr-54b34bb5",
5273
- "recipeId": "rc-c6fd3e11",
5274
- "recipeName": "全协议配方-mto0m9es",
5275
- "productId": "pd-fa8c0b2d",
5276
- "lineId": "ln-d010bba3",
5277
- "startedAt": "2026-09-05T06:42:28.622Z",
5278
- "endedAt": "2026-09-05T06:44:29.232Z",
5389
+ "id": "rr-1809a3fb",
5390
+ "recipeId": "rc-69bd3ed5",
5391
+ "recipeName": "cfg-recipe",
5392
+ "productId": "pd-28fc247a",
5393
+ "lineId": "ln-f4bdf701",
5394
+ "startedAt": "2026-09-05T20:08:42.285+08:00",
5395
+ "endedAt": "2026-09-05T20:09:03.613+08:00",
5279
5396
  "results": [
5280
5397
  {
5281
5398
  "templateRef": "dcw-temp-sp",
5282
- "nodeId": "dw-96091e58",
5399
+ "nodeId": "dw-07cca4c7",
5283
5400
  "ok": true,
5284
- "message": "写入并回读一致:180 → raw 180,回读 180(标定后物理值 180)",
5401
+ "message": "Mock PLC 写入成功:180 → raw 180,回读一致(标定后物理值 180)",
5285
5402
  "value": 180
5286
5403
  }
5287
5404
  ],
5288
5405
  "paramsSnapshot": [
5289
5406
  {
5290
- "nodeId": "dw-96091e58",
5407
+ "nodeId": "dw-07cca4c7",
5291
5408
  "templateRef": "dcw-temp-sp",
5292
5409
  "value": 180,
5293
- "min": 176,
5294
- "max": 188
5410
+ "min": 150,
5411
+ "max": 200
5295
5412
  }
5296
5413
  ]
5297
5414
  },
5298
5415
  {
5299
- "id": "rr-4e40cab0",
5300
- "recipeId": "rc-80195acf",
5301
- "recipeName": "全协议配方-mto113i2",
5302
- "productId": "pd-9e290ee1",
5303
- "lineId": "ln-c7668a8d",
5304
- "startedAt": "2026-09-05T06:54:01.584Z",
5305
- "endedAt": "2026-09-05T06:55:54.890Z",
5416
+ "id": "rr-548beb06",
5417
+ "recipeId": "rc-faba4567",
5418
+ "recipeName": "cfg-recipe",
5419
+ "productId": "pd-a136dbbf",
5420
+ "lineId": "ln-64931cf4",
5421
+ "startedAt": "2026-09-06T01:31:30.568+08:00",
5422
+ "endedAt": "2026-09-06T01:31:53.974+08:00",
5306
5423
  "results": [
5307
5424
  {
5308
5425
  "templateRef": "dcw-temp-sp",
5309
- "nodeId": "dw-ab89beb3",
5426
+ "nodeId": "dw-d1473c36",
5310
5427
  "ok": true,
5311
- "message": "写入并回读一致:180 → raw 180,回读 180(标定后物理值 180)",
5428
+ "message": "Mock PLC 写入成功:180 → raw 180,回读一致(标定后物理值 180)",
5312
5429
  "value": 180
5313
5430
  }
5314
5431
  ],
5315
5432
  "paramsSnapshot": [
5316
5433
  {
5317
- "nodeId": "dw-ab89beb3",
5434
+ "nodeId": "dw-d1473c36",
5318
5435
  "templateRef": "dcw-temp-sp",
5319
5436
  "value": 180,
5320
- "min": 176,
5321
- "max": 188
5437
+ "min": 150,
5438
+ "max": 200
5322
5439
  }
5323
5440
  ]
5324
5441
  },
5325
5442
  {
5326
- "id": "rr-27719005",
5327
- "recipeId": "rc-4b542654",
5328
- "recipeName": "全协议配方-mto1771y",
5329
- "productId": "pd-9868366c",
5330
- "lineId": "ln-694c51f4",
5331
- "startedAt": "2026-09-05T07:14:22.918Z",
5332
- "endedAt": "2026-09-05T07:16:16.372Z",
5443
+ "id": "rr-d56d9e03",
5444
+ "recipeId": "rc-ded44765",
5445
+ "recipeName": "cfg-recipe",
5446
+ "productId": "pd-52746c22",
5447
+ "lineId": "ln-a0421b57",
5448
+ "startedAt": "2026-09-06T01:34:34.956+08:00",
5449
+ "endedAt": "2026-09-06T01:34:56.055+08:00",
5333
5450
  "results": [
5334
5451
  {
5335
5452
  "templateRef": "dcw-temp-sp",
5336
- "nodeId": "dw-4c6c6920",
5453
+ "nodeId": "dw-282271fd",
5337
5454
  "ok": true,
5338
- "message": "写入并回读一致:180 → raw 180,回读 180(标定后物理值 180)",
5455
+ "message": "Mock PLC 写入成功:180 → raw 180,回读一致(标定后物理值 180)",
5339
5456
  "value": 180
5340
5457
  }
5341
5458
  ],
5342
5459
  "paramsSnapshot": [
5343
5460
  {
5344
- "nodeId": "dw-4c6c6920",
5461
+ "nodeId": "dw-282271fd",
5345
5462
  "templateRef": "dcw-temp-sp",
5346
5463
  "value": 180,
5347
- "min": 176,
5348
- "max": 188
5464
+ "min": 150,
5465
+ "max": 200
5349
5466
  }
5350
5467
  ]
5351
5468
  },
5352
5469
  {
5353
- "id": "rr-d667a896",
5354
- "recipeId": "rc-814248c6",
5355
- "recipeName": "runp3-recipe",
5356
- "productId": "pd-fd822802",
5357
- "lineId": "ln-3548f325",
5358
- "startedAt": "2026-09-05T07:23:51.972Z",
5359
- "endedAt": null,
5470
+ "id": "rr-284c0dbb",
5471
+ "recipeId": "rc-776dcb1e",
5472
+ "recipeName": "cfg-recipe",
5473
+ "productId": "pd-11d4b14d",
5474
+ "lineId": "ln-14bb98f1",
5475
+ "startedAt": "2026-09-06T01:36:55.763+08:00",
5476
+ "endedAt": "2026-09-06T01:37:16.885+08:00",
5360
5477
  "results": [
5361
5478
  {
5362
5479
  "templateRef": "dcw-temp-sp",
5363
- "nodeId": "dw-06590507",
5480
+ "nodeId": "dw-cd0ba7e6",
5364
5481
  "ok": true,
5365
- "message": "写入并回读一致:180 → raw 180,回读 180(标定后物理值 180)",
5482
+ "message": "Mock PLC 写入成功:180 → raw 180,回读一致(标定后物理值 180)",
5366
5483
  "value": 180
5367
5484
  }
5368
5485
  ],
5369
5486
  "paramsSnapshot": [
5370
5487
  {
5371
- "nodeId": "dw-06590507",
5488
+ "nodeId": "dw-cd0ba7e6",
5372
5489
  "templateRef": "dcw-temp-sp",
5373
5490
  "value": 180,
5374
- "min": 176,
5375
- "max": 188
5491
+ "min": 150,
5492
+ "max": 200
5376
5493
  }
5377
5494
  ]
5378
5495
  },
5379
5496
  {
5380
- "id": "rr-3d8e141a",
5381
- "recipeId": "rc-98300208",
5382
- "recipeName": "全协议配方-mto2mf6i",
5383
- "productId": "pd-37e543f1",
5384
- "lineId": "ln-6502a1f3",
5385
- "startedAt": "2026-09-05T07:38:47.414Z",
5386
- "endedAt": "2026-09-05T07:40:41.683Z",
5497
+ "id": "rr-3552060e",
5498
+ "recipeId": "rc-4f9019f2",
5499
+ "recipeName": "cfg-recipe",
5500
+ "productId": "pd-fd48e9df",
5501
+ "lineId": "ln-a0ac0224",
5502
+ "startedAt": "2026-09-06T01:38:22.259+08:00",
5503
+ "endedAt": "2026-09-06T01:38:43.359+08:00",
5387
5504
  "results": [
5388
5505
  {
5389
5506
  "templateRef": "dcw-temp-sp",
5390
- "nodeId": "dw-ed7f4682",
5507
+ "nodeId": "dw-140e12fa",
5391
5508
  "ok": true,
5392
- "message": "写入并回读一致:180 → raw 180,回读 180(标定后物理值 180)",
5509
+ "message": "Mock PLC 写入成功:180 → raw 180,回读一致(标定后物理值 180)",
5393
5510
  "value": 180
5394
5511
  }
5395
5512
  ],
5396
5513
  "paramsSnapshot": [
5397
5514
  {
5398
- "nodeId": "dw-ed7f4682",
5515
+ "nodeId": "dw-140e12fa",
5399
5516
  "templateRef": "dcw-temp-sp",
5400
5517
  "value": 180,
5401
- "min": 176,
5402
- "max": 188
5518
+ "min": 150,
5519
+ "max": 200
5403
5520
  }
5404
5521
  ]
5405
5522
  },
5406
5523
  {
5407
- "id": "rr-a41a21fd",
5408
- "recipeId": "rc-c362b721",
5409
- "recipeName": "全协议配方-mto2w44t",
5410
- "productId": "pd-4de49ca3",
5411
- "lineId": "ln-c3a7ba01",
5412
- "startedAt": "2026-09-05T07:46:23.423Z",
5413
- "endedAt": null,
5524
+ "id": "rr-a611ea91",
5525
+ "recipeId": "rc-023a55aa",
5526
+ "recipeName": "cfg-recipe",
5527
+ "productId": "pd-74361ea8",
5528
+ "lineId": "ln-cfb12b03",
5529
+ "startedAt": "2026-09-06T01:40:55.374+08:00",
5530
+ "endedAt": "2026-09-06T01:41:16.464+08:00",
5414
5531
  "results": [
5415
5532
  {
5416
5533
  "templateRef": "dcw-temp-sp",
5417
- "nodeId": "dw-5fdc7f6f",
5534
+ "nodeId": "dw-5316721a",
5418
5535
  "ok": true,
5419
- "message": "写入并回读一致:180 → raw 180,回读 180(标定后物理值 180)",
5536
+ "message": "Mock PLC 写入成功:180 → raw 180,回读一致(标定后物理值 180)",
5420
5537
  "value": 180
5421
5538
  }
5422
5539
  ],
5423
5540
  "paramsSnapshot": [
5424
5541
  {
5425
- "nodeId": "dw-5fdc7f6f",
5542
+ "nodeId": "dw-5316721a",
5426
5543
  "templateRef": "dcw-temp-sp",
5427
5544
  "value": 180,
5428
- "min": 176,
5429
- "max": 188
5545
+ "min": 150,
5546
+ "max": 200
5430
5547
  }
5431
5548
  ]
5432
5549
  },
5433
5550
  {
5434
- "id": "rr-f5a55ecb",
5435
- "recipeId": "rc-6035701d",
5436
- "recipeName": "全协议配方-mto30yeb",
5437
- "productId": "pd-689555fc",
5438
- "lineId": "ln-c570b64e",
5439
- "startedAt": "2026-09-05T07:50:14.492Z",
5440
- "endedAt": "2026-09-05T07:52:08.752Z",
5551
+ "id": "rr-22845fb4",
5552
+ "recipeId": "rc-290402b0",
5553
+ "recipeName": "lx-recipe",
5554
+ "productId": "pd-b220f792",
5555
+ "lineId": "ln-f7f729e5",
5556
+ "startedAt": "2026-09-06T01:42:23.533+08:00",
5557
+ "endedAt": "2026-09-06T01:42:48.656+08:00",
5441
5558
  "results": [
5442
5559
  {
5443
5560
  "templateRef": "dcw-temp-sp",
5444
- "nodeId": "dw-d324afad",
5561
+ "nodeId": "dw-cb7b120b",
5445
5562
  "ok": true,
5446
- "message": "写入并回读一致:180 → raw 180,回读 180(标定后物理值 180)",
5563
+ "message": "Mock PLC 写入成功:180 → raw 180,回读一致(标定后物理值 180)",
5447
5564
  "value": 180
5448
5565
  }
5449
5566
  ],
5450
5567
  "paramsSnapshot": [
5451
5568
  {
5452
- "nodeId": "dw-d324afad",
5569
+ "nodeId": "dw-cb7b120b",
5453
5570
  "templateRef": "dcw-temp-sp",
5454
5571
  "value": 180,
5455
- "min": 176,
5456
- "max": 188
5572
+ "min": 150,
5573
+ "max": 200
5457
5574
  }
5458
5575
  ]
5459
5576
  },
5460
5577
  {
5461
- "id": "rr-3da13dd0",
5462
- "recipeId": "rc-ddc06010",
5463
- "recipeName": "插件配方-mto3p7ny",
5464
- "productId": "pd-aa36f7ab",
5465
- "lineId": "ln-ab4024ff",
5466
- "startedAt": "2026-09-05T08:08:23.551Z",
5467
- "endedAt": "2026-09-05T08:08:34.411Z",
5578
+ "id": "rr-c1ce0809",
5579
+ "recipeId": "rc-6afdcfa0",
5580
+ "recipeName": "lx2-recipe",
5581
+ "productId": "pd-7c48a733",
5582
+ "lineId": "ln-49dcdd09",
5583
+ "startedAt": "2026-09-06T01:50:15.700+08:00",
5584
+ "endedAt": "2026-09-06T01:50:35.881+08:00",
5468
5585
  "results": [
5469
5586
  {
5470
5587
  "templateRef": "dcw-temp-sp",
5471
- "nodeId": "dw-511d0e81",
5588
+ "nodeId": "dw-588c9a0d",
5472
5589
  "ok": true,
5473
5590
  "message": "Mock PLC 写入成功:180 → raw 180,回读一致(标定后物理值 180)",
5474
5591
  "value": 180
@@ -5476,7 +5593,7 @@
5476
5593
  ],
5477
5594
  "paramsSnapshot": [
5478
5595
  {
5479
- "nodeId": "dw-511d0e81",
5596
+ "nodeId": "dw-588c9a0d",
5480
5597
  "templateRef": "dcw-temp-sp",
5481
5598
  "value": 180,
5482
5599
  "min": 150,
@@ -5485,25 +5602,25 @@
5485
5602
  ]
5486
5603
  },
5487
5604
  {
5488
- "id": "rr-ede96923",
5489
- "recipeId": "rc-137880a8",
5490
- "recipeName": "多引擎配方-mto47ec9",
5491
- "productId": "pd-7b6d4e2c",
5492
- "lineId": "ln-b2c3be6e",
5493
- "startedAt": "2026-09-05T08:23:06.417Z",
5494
- "endedAt": "2026-09-05T08:41:26.164Z",
5605
+ "id": "rr-d21c9e25",
5606
+ "recipeId": "rc-b9bd4d27",
5607
+ "recipeName": "lx3-recipe",
5608
+ "productId": "pd-dd794a60",
5609
+ "lineId": "ln-b3b799ac",
5610
+ "startedAt": "2026-09-06T01:54:41.085+08:00",
5611
+ "endedAt": "2026-09-06T01:55:01.211+08:00",
5495
5612
  "results": [
5496
5613
  {
5497
5614
  "templateRef": "dcw-temp-sp",
5498
- "nodeId": "dw-a470230d",
5615
+ "nodeId": "dw-0b88f9ed",
5499
5616
  "ok": true,
5500
- "message": "写入并回读一致:180 → raw 180,回读 180(标定后物理值 180)",
5617
+ "message": "Mock PLC 写入成功:180 → raw 180,回读一致(标定后物理值 180)",
5501
5618
  "value": 180
5502
5619
  }
5503
5620
  ],
5504
5621
  "paramsSnapshot": [
5505
5622
  {
5506
- "nodeId": "dw-a470230d",
5623
+ "nodeId": "dw-0b88f9ed",
5507
5624
  "templateRef": "dcw-temp-sp",
5508
5625
  "value": 180,
5509
5626
  "min": 150,
@@ -5512,25 +5629,25 @@
5512
5629
  ]
5513
5630
  },
5514
5631
  {
5515
- "id": "rr-8c3cc9f7",
5516
- "recipeId": "rc-a01ee7c9",
5517
- "recipeName": "多引擎配方-mto4xd17",
5518
- "productId": "pd-ef246eba",
5519
- "lineId": "ln-190e7eef",
5520
- "startedAt": "2026-09-05T08:42:47.817Z",
5521
- "endedAt": "2026-09-05T09:02:01.764Z",
5632
+ "id": "rr-5ef4939d",
5633
+ "recipeId": "rc-b416314e",
5634
+ "recipeName": "lx4-recipe",
5635
+ "productId": "pd-b4d2819f",
5636
+ "lineId": "ln-ad49e7bb",
5637
+ "startedAt": "2026-09-06T02:00:59.114+08:00",
5638
+ "endedAt": "2026-09-06T02:01:17.256+08:00",
5522
5639
  "results": [
5523
5640
  {
5524
5641
  "templateRef": "dcw-temp-sp",
5525
- "nodeId": "dw-dc216d75",
5642
+ "nodeId": "dw-84ebc256",
5526
5643
  "ok": true,
5527
- "message": "写入并回读一致:180 → raw 180,回读 180(标定后物理值 180)",
5644
+ "message": "Mock PLC 写入成功:180 → raw 180,回读一致(标定后物理值 180)",
5528
5645
  "value": 180
5529
5646
  }
5530
5647
  ],
5531
5648
  "paramsSnapshot": [
5532
5649
  {
5533
- "nodeId": "dw-dc216d75",
5650
+ "nodeId": "dw-84ebc256",
5534
5651
  "templateRef": "dcw-temp-sp",
5535
5652
  "value": 180,
5536
5653
  "min": 150,
@@ -5539,17 +5656,17 @@
5539
5656
  ]
5540
5657
  },
5541
5658
  {
5542
- "id": "rr-5ba7bd5b",
5543
- "recipeId": "rc-9b2255dc",
5544
- "recipeName": "间隔配方-mto6rqqa",
5545
- "productId": "pd-0e64bd2f",
5546
- "lineId": "ln-51fcb8ac",
5547
- "startedAt": "2026-09-05T09:34:20.925Z",
5548
- "endedAt": "2026-09-05T09:35:29.245Z",
5659
+ "id": "rr-8160355b",
5660
+ "recipeId": "rc-35dfc23d",
5661
+ "recipeName": "lx5-recipe",
5662
+ "productId": "pd-c787b400",
5663
+ "lineId": "ln-d285dce8",
5664
+ "startedAt": "2026-09-06T02:05:17.297+08:00",
5665
+ "endedAt": "2026-09-06T02:05:35.471+08:00",
5549
5666
  "results": [
5550
5667
  {
5551
5668
  "templateRef": "dcw-temp-sp",
5552
- "nodeId": "dw-0ed9deab",
5669
+ "nodeId": "dw-f87c592c",
5553
5670
  "ok": true,
5554
5671
  "message": "Mock PLC 写入成功:180 → raw 180,回读一致(标定后物理值 180)",
5555
5672
  "value": 180
@@ -5557,7 +5674,7 @@
5557
5674
  ],
5558
5675
  "paramsSnapshot": [
5559
5676
  {
5560
- "nodeId": "dw-0ed9deab",
5677
+ "nodeId": "dw-f87c592c",
5561
5678
  "templateRef": "dcw-temp-sp",
5562
5679
  "value": 180,
5563
5680
  "min": 150,
@@ -5566,17 +5683,17 @@
5566
5683
  ]
5567
5684
  },
5568
5685
  {
5569
- "id": "rr-7d24224e",
5570
- "recipeId": "rc-2e349c80",
5571
- "recipeName": "插件配方-mto6ysj1",
5572
- "productId": "pd-64a9d0b7",
5573
- "lineId": "ln-2e9272f7",
5574
- "startedAt": "2026-09-05T09:39:59.370Z",
5575
- "endedAt": "2026-09-05T09:40:10.153Z",
5686
+ "id": "rr-8da3aa3f",
5687
+ "recipeId": "rc-5508d345",
5688
+ "recipeName": "lx6-recipe",
5689
+ "productId": "pd-b265d280",
5690
+ "lineId": "ln-fd80849a",
5691
+ "startedAt": "2026-09-06T02:06:14.629+08:00",
5692
+ "endedAt": "2026-09-06T02:06:29.799+08:00",
5576
5693
  "results": [
5577
5694
  {
5578
5695
  "templateRef": "dcw-temp-sp",
5579
- "nodeId": "dw-37f5153e",
5696
+ "nodeId": "dw-ab1897d8",
5580
5697
  "ok": true,
5581
5698
  "message": "Mock PLC 写入成功:180 → raw 180,回读一致(标定后物理值 180)",
5582
5699
  "value": 180
@@ -5584,7 +5701,7 @@
5584
5701
  ],
5585
5702
  "paramsSnapshot": [
5586
5703
  {
5587
- "nodeId": "dw-37f5153e",
5704
+ "nodeId": "dw-ab1897d8",
5588
5705
  "templateRef": "dcw-temp-sp",
5589
5706
  "value": 180,
5590
5707
  "min": 150,
@@ -5593,17 +5710,17 @@
5593
5710
  ]
5594
5711
  },
5595
5712
  {
5596
- "id": "rr-55e35132",
5597
- "recipeId": "rc-4f3f66b1",
5598
- "recipeName": "插件配方-mto73j6f",
5599
- "productId": "pd-981b720a",
5600
- "lineId": "ln-98ac4967",
5601
- "startedAt": "2026-09-05T09:43:40.421Z",
5602
- "endedAt": "2026-09-05T09:43:51.246Z",
5713
+ "id": "rr-2fd40cd5",
5714
+ "recipeId": "rc-f0aa06cc",
5715
+ "recipeName": "dbg2-recipe",
5716
+ "productId": "pd-71604a52",
5717
+ "lineId": "ln-612648d3",
5718
+ "startedAt": "2026-09-06T02:19:22.194+08:00",
5719
+ "endedAt": "2026-09-06T02:19:34.352+08:00",
5603
5720
  "results": [
5604
5721
  {
5605
5722
  "templateRef": "dcw-temp-sp",
5606
- "nodeId": "dw-f9a5e01e",
5723
+ "nodeId": "dw-bb330d90",
5607
5724
  "ok": true,
5608
5725
  "message": "Mock PLC 写入成功:180 → raw 180,回读一致(标定后物理值 180)",
5609
5726
  "value": 180
@@ -5611,7 +5728,7 @@
5611
5728
  ],
5612
5729
  "paramsSnapshot": [
5613
5730
  {
5614
- "nodeId": "dw-f9a5e01e",
5731
+ "nodeId": "dw-bb330d90",
5615
5732
  "templateRef": "dcw-temp-sp",
5616
5733
  "value": 180,
5617
5734
  "min": 150,
@@ -5620,17 +5737,17 @@
5620
5737
  ]
5621
5738
  },
5622
5739
  {
5623
- "id": "rr-cb2a9c2f",
5624
- "recipeId": "rc-e82b9389",
5625
- "recipeName": "插件配方-mto75hw0",
5626
- "productId": "pd-b7c69be7",
5627
- "lineId": "ln-68d3dc2d",
5628
- "startedAt": "2026-09-05T09:45:11.763Z",
5629
- "endedAt": "2026-09-05T09:45:22.566Z",
5740
+ "id": "rr-d3ac8878",
5741
+ "recipeId": "rc-2a7b0def",
5742
+ "recipeName": "lx8-recipe",
5743
+ "productId": "pd-3adf854f",
5744
+ "lineId": "ln-1acc1a0c",
5745
+ "startedAt": "2026-09-06T02:22:23.209+08:00",
5746
+ "endedAt": null,
5630
5747
  "results": [
5631
5748
  {
5632
5749
  "templateRef": "dcw-temp-sp",
5633
- "nodeId": "dw-1a99b8ea",
5750
+ "nodeId": "dw-82b6f604",
5634
5751
  "ok": true,
5635
5752
  "message": "Mock PLC 写入成功:180 → raw 180,回读一致(标定后物理值 180)",
5636
5753
  "value": 180
@@ -5638,7 +5755,7 @@
5638
5755
  ],
5639
5756
  "paramsSnapshot": [
5640
5757
  {
5641
- "nodeId": "dw-1a99b8ea",
5758
+ "nodeId": "dw-82b6f604",
5642
5759
  "templateRef": "dcw-temp-sp",
5643
5760
  "value": 180,
5644
5761
  "min": 150,
@@ -5647,17 +5764,17 @@
5647
5764
  ]
5648
5765
  },
5649
5766
  {
5650
- "id": "rr-ecf1b5fb",
5651
- "recipeId": "rc-57a42339",
5652
- "recipeName": "pp-recipe",
5653
- "productId": "pd-d547a376",
5654
- "lineId": "ln-871ac52d",
5655
- "startedAt": "2026-09-05T09:47:55.526Z",
5767
+ "id": "rr-04594711",
5768
+ "recipeId": "rc-4c9d5135",
5769
+ "recipeName": "lx8-recipe",
5770
+ "productId": "pd-75752beb",
5771
+ "lineId": "ln-917490c1",
5772
+ "startedAt": "2026-09-06T02:24:50.582+08:00",
5656
5773
  "endedAt": null,
5657
5774
  "results": [
5658
5775
  {
5659
5776
  "templateRef": "dcw-temp-sp",
5660
- "nodeId": "dw-edbf2b95",
5777
+ "nodeId": "dw-64d896c9",
5661
5778
  "ok": true,
5662
5779
  "message": "Mock PLC 写入成功:180 → raw 180,回读一致(标定后物理值 180)",
5663
5780
  "value": 180
@@ -5665,7 +5782,7 @@
5665
5782
  ],
5666
5783
  "paramsSnapshot": [
5667
5784
  {
5668
- "nodeId": "dw-edbf2b95",
5785
+ "nodeId": "dw-64d896c9",
5669
5786
  "templateRef": "dcw-temp-sp",
5670
5787
  "value": 180,
5671
5788
  "min": 150,
@@ -5674,17 +5791,17 @@
5674
5791
  ]
5675
5792
  },
5676
5793
  {
5677
- "id": "rr-44976926",
5678
- "recipeId": "rc-5ef215b3",
5679
- "recipeName": "pp2-recipe",
5680
- "productId": "pd-60668493",
5681
- "lineId": "ln-fe3512a7",
5682
- "startedAt": "2026-09-05T09:53:24.690Z",
5683
- "endedAt": "2026-09-05T09:53:33.853Z",
5794
+ "id": "rr-817ccaa3",
5795
+ "recipeId": "rc-ad1ee82f",
5796
+ "recipeName": "cfg-recipe",
5797
+ "productId": "pd-1f9917a5",
5798
+ "lineId": "ln-12d153a2",
5799
+ "startedAt": "2026-09-06T02:26:09.240+08:00",
5800
+ "endedAt": "2026-09-06T02:26:30.492+08:00",
5684
5801
  "results": [
5685
5802
  {
5686
5803
  "templateRef": "dcw-temp-sp",
5687
- "nodeId": "dw-fb6b0f5a",
5804
+ "nodeId": "dw-4416bdb1",
5688
5805
  "ok": true,
5689
5806
  "message": "Mock PLC 写入成功:180 → raw 180,回读一致(标定后物理值 180)",
5690
5807
  "value": 180
@@ -5692,7 +5809,7 @@
5692
5809
  ],
5693
5810
  "paramsSnapshot": [
5694
5811
  {
5695
- "nodeId": "dw-fb6b0f5a",
5812
+ "nodeId": "dw-4416bdb1",
5696
5813
  "templateRef": "dcw-temp-sp",
5697
5814
  "value": 180,
5698
5815
  "min": 150,
@@ -5701,17 +5818,17 @@
5701
5818
  ]
5702
5819
  },
5703
5820
  {
5704
- "id": "rr-bb6abea5",
5705
- "recipeId": "rc-62231c1c",
5706
- "recipeName": "插件配方-mto7gthj",
5707
- "productId": "pd-ce27a82c",
5708
- "lineId": "ln-96b92c18",
5709
- "startedAt": "2026-09-05T09:53:58.816Z",
5710
- "endedAt": "2026-09-05T09:54:09.729Z",
5821
+ "id": "rr-0580799c",
5822
+ "recipeId": "rc-910b9a3d",
5823
+ "recipeName": "cfg-recipe",
5824
+ "productId": "pd-16138f8b",
5825
+ "lineId": "ln-3d621ecf",
5826
+ "startedAt": "2026-09-06T02:29:04.474+08:00",
5827
+ "endedAt": "2026-09-06T02:29:25.790+08:00",
5711
5828
  "results": [
5712
5829
  {
5713
5830
  "templateRef": "dcw-temp-sp",
5714
- "nodeId": "dw-e5fcf0a3",
5831
+ "nodeId": "dw-f1b8aa79",
5715
5832
  "ok": true,
5716
5833
  "message": "Mock PLC 写入成功:180 → raw 180,回读一致(标定后物理值 180)",
5717
5834
  "value": 180
@@ -5719,7 +5836,7 @@
5719
5836
  ],
5720
5837
  "paramsSnapshot": [
5721
5838
  {
5722
- "nodeId": "dw-e5fcf0a3",
5839
+ "nodeId": "dw-f1b8aa79",
5723
5840
  "templateRef": "dcw-temp-sp",
5724
5841
  "value": 180,
5725
5842
  "min": 150,
@@ -5728,17 +5845,17 @@
5728
5845
  ]
5729
5846
  },
5730
5847
  {
5731
- "id": "rr-c0498edd",
5732
- "recipeId": "rc-299d17de",
5733
- "recipeName": "tzc-recipe",
5734
- "productId": "pd-e7a6099a",
5735
- "lineId": "ln-bd67b10b",
5736
- "startedAt": "2026-09-05T19:05:14.654+08:00",
5737
- "endedAt": "2026-09-05T19:05:22.851+08:00",
5848
+ "id": "rr-428a0178",
5849
+ "recipeId": "rc-bdc5f21e",
5850
+ "recipeName": "cfg-recipe",
5851
+ "productId": "pd-15ba9244",
5852
+ "lineId": "ln-139f04d6",
5853
+ "startedAt": "2026-09-06T02:40:12.876+08:00",
5854
+ "endedAt": "2026-09-06T02:40:34.157+08:00",
5738
5855
  "results": [
5739
5856
  {
5740
5857
  "templateRef": "dcw-temp-sp",
5741
- "nodeId": "dw-db743eb4",
5858
+ "nodeId": "dw-91f1cac6",
5742
5859
  "ok": true,
5743
5860
  "message": "Mock PLC 写入成功:180 → raw 180,回读一致(标定后物理值 180)",
5744
5861
  "value": 180
@@ -5746,7 +5863,7 @@
5746
5863
  ],
5747
5864
  "paramsSnapshot": [
5748
5865
  {
5749
- "nodeId": "dw-db743eb4",
5866
+ "nodeId": "dw-91f1cac6",
5750
5867
  "templateRef": "dcw-temp-sp",
5751
5868
  "value": 180,
5752
5869
  "min": 150,