agentworkshop 0.7.71 → 0.8.0

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 (358) hide show
  1. package/.AgentWorkShop/prompts/host-tools.json +332 -0
  2. package/.output/.AgentWorkShop/prompts/host-tools.json +332 -0
  3. package/.output/nitro.json +1 -1
  4. package/.output/public/_nuxt/BH8RvpVy.js +1 -0
  5. package/.output/public/_nuxt/Byf4IxU2.js +14 -0
  6. package/.output/public/_nuxt/CxVhG0Xx.js +1 -0
  7. package/.output/public/_nuxt/D0mzKkZr.js +1 -0
  8. package/.output/public/_nuxt/DIFkTkdS.js +1 -0
  9. package/.output/public/_nuxt/DgrK8UCQ.js +0 -0
  10. package/.output/public/_nuxt/builds/latest.json +1 -1
  11. package/.output/public/_nuxt/builds/meta/7a79a7e4-d691-4cf5-ae3a-3b01814479fb.json +1 -0
  12. package/.output/public/_nuxt/{default.BzOcvmSE.css → default.BEXGWZFQ.css} +1 -1
  13. package/.output/public/_nuxt/{entry.CL2i0F8o.css → entry.C7koBPom.css} +1 -1
  14. package/.output/public/_nuxt/ontology.QMGeh66l.css +1 -0
  15. package/.output/server/chunks/_/access.mjs +1 -1
  16. package/.output/server/chunks/_/binding-authz.mjs +1 -1
  17. package/.output/server/chunks/_/catalog-view.mjs +1 -1
  18. package/.output/server/chunks/_/character-asset.repo.mjs +1 -1
  19. package/.output/server/chunks/_/chart-repo.mjs +1 -1
  20. package/.output/server/chunks/_/dashboard-repo.mjs +1 -1
  21. package/.output/server/chunks/_/data-export.mjs +6 -6
  22. package/.output/server/chunks/_/data-query.mjs +3 -3
  23. package/.output/server/chunks/_/eda-run.repo.mjs +2 -2
  24. package/.output/server/chunks/_/entity.mjs +1 -1
  25. package/.output/server/chunks/_/features.mjs +5 -5
  26. package/.output/server/chunks/_/golden.mjs +3 -3
  27. package/.output/server/chunks/_/host-bindings.mjs +1 -1
  28. package/.output/server/chunks/_/index.mjs +1 -1
  29. package/.output/server/chunks/_/mes-console.mjs +1 -1
  30. package/.output/server/chunks/_/nitro.mjs +5362 -2240
  31. package/.output/server/chunks/_/nitro.mjs.map +1 -1
  32. package/.output/server/chunks/_/ocap.mjs +1 -1
  33. package/.output/server/chunks/_/rest-auth.mjs +1 -1
  34. package/.output/server/chunks/_/scene-layout.repo.mjs +1 -1
  35. package/.output/server/chunks/_/spc.mjs +2 -2
  36. package/.output/server/chunks/build/TownView-BWMDbosY.mjs +1 -1
  37. package/.output/server/chunks/build/api-BEW_ebY_.mjs +64 -0
  38. package/.output/server/chunks/build/api-BEW_ebY_.mjs.map +1 -0
  39. package/.output/server/chunks/build/daq-CdxcfY_G.mjs +1 -1
  40. package/.output/server/chunks/build/dcw-BlDQtS4q.mjs +1 -1
  41. package/.output/server/chunks/build/{default-BeB88U7y.mjs → default-CJkOcmrm.mjs} +14 -8
  42. package/.output/server/chunks/build/{default-BeB88U7y.mjs.map → default-CJkOcmrm.mjs.map} +1 -1
  43. package/.output/server/chunks/build/ontology-C3HS5pMo.mjs +977 -0
  44. package/.output/server/chunks/build/ontology-C3HS5pMo.mjs.map +1 -0
  45. package/.output/server/chunks/build/types-D6J7slEa.mjs +6 -2
  46. package/.output/server/chunks/build/useDaqAddNode-D_Rkju0f.mjs +1 -1
  47. package/.output/server/chunks/build/useDaqDetailNode-DeOsDxK5.mjs +1 -1
  48. package/.output/server/chunks/build/useDaqDetailParams-Cm9a9r5G.mjs +1 -1
  49. package/.output/server/chunks/build/useDaqFilters-CctmO03p.mjs +1 -1
  50. package/.output/server/chunks/build/useDaqStream-B9ZBVQrI.mjs +1 -1
  51. package/.output/server/chunks/build/useDaqTemplates-CK37sMfi.mjs +1 -1
  52. package/.output/server/chunks/build/useDcwAddNode-DACVcEHs.mjs +1 -1
  53. package/.output/server/chunks/build/useDcwStream-Dir5ufAU.mjs +1 -1
  54. package/.output/server/chunks/routes/api/mcp/workshop.mjs +1 -1
  55. package/.output/server/chunks/routes/api/system/backup/run.post.mjs +2 -2
  56. package/.output/server/chunks/routes/api/workshop/agent-tools/approvals/_id/decide.post.mjs +17 -4
  57. package/.output/server/chunks/routes/api/workshop/agent-tools/approvals/_id/decide.post.mjs.map +1 -1
  58. package/.output/server/chunks/routes/api/workshop/agent-tools/bindings/_id_.delete.mjs +1 -1
  59. package/.output/server/chunks/routes/api/workshop/agent-tools/bindings/_id_.patch.mjs +1 -1
  60. package/.output/server/chunks/routes/api/workshop/agent-tools/bindings/grant.post.mjs +1 -1
  61. package/.output/server/chunks/routes/api/workshop/agent-tools/bindings/revoke.post.mjs +1 -1
  62. package/.output/server/chunks/routes/api/workshop/agent-tools/index.get.mjs +1 -1
  63. package/.output/server/chunks/routes/api/workshop/agent-tools/index.post.mjs +1 -1
  64. package/.output/server/chunks/routes/api/workshop/agent-tools/index2.get.mjs +1 -1
  65. package/.output/server/chunks/routes/api/workshop/agent-tools/invoke.post.mjs +1 -1
  66. package/.output/server/chunks/routes/api/workshop/agent-tools/list.get.mjs +1 -1
  67. package/.output/server/chunks/routes/api/workshop/aml/datasets/_id/preview.get.mjs +1 -1
  68. package/.output/server/chunks/routes/api/workshop/aml/datasets/_id_.delete.mjs +1 -1
  69. package/.output/server/chunks/routes/api/workshop/aml/datasets/_id_.get.mjs +1 -1
  70. package/.output/server/chunks/routes/api/workshop/aml/datasets/_id_.patch.mjs +1 -1
  71. package/.output/server/chunks/routes/api/workshop/aml/env/recheck.post.mjs +1 -1
  72. package/.output/server/chunks/routes/api/workshop/aml/env/uv.post.mjs +1 -1
  73. package/.output/server/chunks/routes/api/workshop/aml/env/venv.post.mjs +1 -1
  74. package/.output/server/chunks/routes/api/workshop/aml/index.get.mjs +1 -1
  75. package/.output/server/chunks/routes/api/workshop/aml/index.post.mjs +1 -1
  76. package/.output/server/chunks/routes/api/workshop/aml/index2.post.mjs +1 -1
  77. package/.output/server/chunks/routes/api/workshop/aml/index3.get.mjs +1 -1
  78. package/.output/server/chunks/routes/api/workshop/aml/index3.post.mjs +1 -1
  79. package/.output/server/chunks/routes/api/workshop/aml/index4.get.mjs +1 -1
  80. package/.output/server/chunks/routes/api/workshop/aml/index5.get.mjs +1 -1
  81. package/.output/server/chunks/routes/api/workshop/aml/index6.get.mjs +1 -1
  82. package/.output/server/chunks/routes/api/workshop/aml/index7.get.mjs +1 -1
  83. package/.output/server/chunks/routes/api/workshop/aml/jobs/_id/cancel.post.mjs +1 -1
  84. package/.output/server/chunks/routes/api/workshop/aml/jobs/_id/logs.get.mjs +1 -1
  85. package/.output/server/chunks/routes/api/workshop/aml/jobs/_id/retry.post.mjs +1 -1
  86. package/.output/server/chunks/routes/api/workshop/aml/jobs/_id_.delete.mjs +1 -1
  87. package/.output/server/chunks/routes/api/workshop/aml/jobs/_id_.get.mjs +1 -1
  88. package/.output/server/chunks/routes/api/workshop/aml/models/_id/predict.post.mjs +1 -1
  89. package/.output/server/chunks/routes/api/workshop/aml/models/_id/promote.post.mjs +1 -1
  90. package/.output/server/chunks/routes/api/workshop/aml/models/_id_.delete.mjs +1 -1
  91. package/.output/server/chunks/routes/api/workshop/aml/models/_id_.patch.mjs +1 -1
  92. package/.output/server/chunks/routes/api/workshop/aml/training-plans/_id/train.post.mjs +1 -1
  93. package/.output/server/chunks/routes/api/workshop/aml/training-plans/_id_.delete.mjs +1 -1
  94. package/.output/server/chunks/routes/api/workshop/aml/training-plans/_id_.patch.mjs +1 -1
  95. package/.output/server/chunks/routes/api/workshop/aml/twin/providers.get.mjs +1 -1
  96. package/.output/server/chunks/routes/api/workshop/analysis/_id_.delete.mjs +1 -1
  97. package/.output/server/chunks/routes/api/workshop/analysis/_id_.get.mjs +1 -1
  98. package/.output/server/chunks/routes/api/workshop/analysis/_id_.patch.mjs +1 -1
  99. package/.output/server/chunks/routes/api/workshop/approvals/_id/decide.post.mjs +1 -1
  100. package/.output/server/chunks/routes/api/workshop/assets/index.post.mjs +1 -1
  101. package/.output/server/chunks/routes/api/workshop/assets/index2.post.mjs +1 -1
  102. package/.output/server/chunks/routes/api/workshop/channel-templates/_id/instantiate.post.mjs +2 -2
  103. package/.output/server/chunks/routes/api/workshop/channels/_id/activate.post.mjs +1 -1
  104. package/.output/server/chunks/routes/api/workshop/channels/_id/chat/index.post.mjs +1 -1
  105. package/.output/server/chunks/routes/api/workshop/channels/_id/index.post.mjs +1 -1
  106. package/.output/server/chunks/routes/api/workshop/channels/_id/index.put.mjs +1 -1
  107. package/.output/server/chunks/routes/api/workshop/channels/_id/index2.put.mjs +1 -1
  108. package/.output/server/chunks/routes/api/workshop/channels/_id/index3.post.mjs +1 -1
  109. package/.output/server/chunks/routes/api/workshop/channels/_id/index4.post.mjs +1 -1
  110. package/.output/server/chunks/routes/api/workshop/channels/_id/index5.get.mjs +1 -1
  111. package/.output/server/chunks/routes/api/workshop/channels/_id/line.put.mjs +1 -1
  112. package/.output/server/chunks/routes/api/workshop/channels/_id/members/join.post.mjs +1 -1
  113. package/.output/server/chunks/routes/api/workshop/channels/_id/terminals.get.mjs +1 -1
  114. package/.output/server/chunks/routes/api/workshop/channels/_id/tools/reset.post.mjs +1 -1
  115. package/.output/server/chunks/routes/api/workshop/channels/_id/twin-profile.get.mjs +1 -1
  116. package/.output/server/chunks/routes/api/workshop/channels/_id/twin-profile.patch.mjs +1 -1
  117. package/.output/server/chunks/routes/api/workshop/channels/index.get.mjs +1 -1
  118. package/.output/server/chunks/routes/api/workshop/channels.post.mjs +7 -7
  119. package/.output/server/chunks/routes/api/workshop/daq/_id/bind.post.mjs +1 -1
  120. package/.output/server/chunks/routes/api/workshop/daq/_id/bindings.put.mjs +1 -1
  121. package/.output/server/chunks/routes/api/workshop/daq/_id/frames/content.get.mjs +1 -1
  122. package/.output/server/chunks/routes/api/workshop/daq/_id/frames.get.mjs +1 -1
  123. package/.output/server/chunks/routes/api/workshop/daq/_id/ingest.post.mjs +2 -2
  124. package/.output/server/chunks/routes/api/workshop/daq/_id/samples.get.mjs +1 -1
  125. package/.output/server/chunks/routes/api/workshop/daq/_id/test.post.mjs +1 -1
  126. package/.output/server/chunks/routes/api/workshop/daq/_id_.delete.mjs +1 -1
  127. package/.output/server/chunks/routes/api/workshop/daq/_id_.patch.mjs +1 -1
  128. package/.output/server/chunks/routes/api/workshop/daq/alarms/_id/ack.post.mjs +1 -1
  129. package/.output/server/chunks/routes/api/workshop/daq/alarms.get.mjs +1 -1
  130. package/.output/server/chunks/routes/api/workshop/daq/controller.post.mjs +1 -1
  131. package/.output/server/chunks/routes/api/workshop/daq/export/_id_.get.mjs +1 -1
  132. package/.output/server/chunks/routes/api/workshop/daq/index2.post.mjs +1 -1
  133. package/.output/server/chunks/routes/api/workshop/daq/infra/reconnect.post.mjs +1 -1
  134. package/.output/server/chunks/routes/api/workshop/daq/infra.get.mjs +1 -1
  135. package/.output/server/chunks/routes/api/workshop/daq/templates/_key_.delete.mjs +1 -1
  136. package/.output/server/chunks/routes/api/workshop/daq/templates/_key_.patch.mjs +1 -1
  137. package/.output/server/chunks/routes/api/workshop/daq/test-driver.post.mjs +1 -1
  138. package/.output/server/chunks/routes/api/workshop/dcw/_id/bind.post.mjs +1 -1
  139. package/.output/server/chunks/routes/api/workshop/dcw/_id/bindings.put.mjs +1 -1
  140. package/.output/server/chunks/routes/api/workshop/dcw/_id/param-ledger.get.mjs +1 -1
  141. package/.output/server/chunks/routes/api/workshop/dcw/_id/read.post.mjs +1 -1
  142. package/.output/server/chunks/routes/api/workshop/dcw/_id/test.post.mjs +1 -1
  143. package/.output/server/chunks/routes/api/workshop/dcw/_id/write.post.mjs +1 -1
  144. package/.output/server/chunks/routes/api/workshop/dcw/_id_.delete.mjs +1 -1
  145. package/.output/server/chunks/routes/api/workshop/dcw/_id_.patch.mjs +1 -1
  146. package/.output/server/chunks/routes/api/workshop/dcw/controller.post.mjs +1 -1
  147. package/.output/server/chunks/routes/api/workshop/dcw/index.get.mjs +1 -1
  148. package/.output/server/chunks/routes/api/workshop/dcw/index.post.mjs +1 -1
  149. package/.output/server/chunks/routes/api/workshop/dcw/index2.get.mjs +1 -1
  150. package/.output/server/chunks/routes/api/workshop/dcw/index2.post.mjs +1 -1
  151. package/.output/server/chunks/routes/api/workshop/dcw/index3.get.mjs +1 -1
  152. package/.output/server/chunks/routes/api/workshop/dcw/index3.post.mjs +1 -1
  153. package/.output/server/chunks/routes/api/workshop/dcw/index4.get.mjs +1 -1
  154. package/.output/server/chunks/routes/api/workshop/dcw/index4.post.mjs +1 -1
  155. package/.output/server/chunks/routes/api/workshop/dcw/index5.get.mjs +1 -1
  156. package/.output/server/chunks/routes/api/workshop/dcw/index5.post.mjs +1 -1
  157. package/.output/server/chunks/routes/api/workshop/dcw/index6.get.mjs +1 -1
  158. package/.output/server/chunks/routes/api/workshop/dcw/index7.get.mjs +1 -1
  159. package/.output/server/chunks/routes/api/workshop/dcw/journal/node/_nodeId/rollback.post.mjs +1 -1
  160. package/.output/server/chunks/routes/api/workshop/dcw/line/query.get.mjs +1 -1
  161. package/.output/server/chunks/routes/api/workshop/dcw/lines/_id/start.post.mjs +1 -1
  162. package/.output/server/chunks/routes/api/workshop/dcw/lines/_id/stop.post.mjs +1 -1
  163. package/.output/server/chunks/routes/api/workshop/dcw/lines/_id_.delete.mjs +1 -1
  164. package/.output/server/chunks/routes/api/workshop/dcw/lines/_id_.patch.mjs +1 -1
  165. package/.output/server/chunks/routes/api/workshop/dcw/mes-artifacts/file.get.mjs +1 -1
  166. package/.output/server/chunks/routes/api/workshop/dcw/mes-hook-test.post.mjs +1 -1
  167. package/.output/server/chunks/routes/api/workshop/dcw/mes-test-read.post.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/params/_id/read.post.mjs +1 -1
  173. package/.output/server/chunks/routes/api/workshop/dcw/params/_id/write.post.mjs +1 -1
  174. package/.output/server/chunks/routes/api/workshop/dcw/params/_id_.delete.mjs +1 -1
  175. package/.output/server/chunks/routes/api/workshop/dcw/params/_id_.patch.mjs +1 -1
  176. package/.output/server/chunks/routes/api/workshop/dcw/products/_id_.delete.mjs +1 -1
  177. package/.output/server/chunks/routes/api/workshop/dcw/products/_id_.patch.mjs +1 -1
  178. package/.output/server/chunks/routes/api/workshop/dcw/recipes/_id/apply.post.mjs +1 -1
  179. package/.output/server/chunks/routes/api/workshop/dcw/recipes/_id/mark-good.post.mjs +1 -1
  180. package/.output/server/chunks/routes/api/workshop/dcw/recipes/_id/revert.post.mjs +1 -1
  181. package/.output/server/chunks/routes/api/workshop/dcw/recipes/_id/rollback-good.post.mjs +1 -1
  182. package/.output/server/chunks/routes/api/workshop/dcw/recipes/_id/versions.get.mjs +1 -1
  183. package/.output/server/chunks/routes/api/workshop/dcw/recipes/_id_.delete.mjs +1 -1
  184. package/.output/server/chunks/routes/api/workshop/dcw/recipes/index.patch.mjs +1 -1
  185. package/.output/server/chunks/routes/api/workshop/dcw/runs/_id/close.post.mjs +1 -1
  186. package/.output/server/chunks/routes/api/workshop/dcw/runs/_id/data.get.mjs +1 -1
  187. package/.output/server/chunks/routes/api/workshop/dcw/runs/_id/rollback.post.mjs +1 -1
  188. package/.output/server/chunks/routes/api/workshop/dcw/templates/_key_.delete.mjs +1 -1
  189. package/.output/server/chunks/routes/api/workshop/dcw/templates/_key_.patch.mjs +1 -1
  190. package/.output/server/chunks/routes/api/workshop/dcw/test-driver.post.mjs +1 -1
  191. package/.output/server/chunks/routes/api/workshop/device-twins/_id/control.post.mjs +1 -1
  192. package/.output/server/chunks/routes/api/workshop/device-twins/_id/telemetry.post.mjs +1 -1
  193. package/.output/server/chunks/routes/api/workshop/device-twins/_id_.delete.mjs +1 -1
  194. package/.output/server/chunks/routes/api/workshop/device-twins/_id_.patch.mjs +1 -1
  195. package/.output/server/chunks/routes/api/workshop/eda/commonality.get.mjs +1 -1
  196. package/.output/server/chunks/routes/api/workshop/eda/features/run.post.mjs +1 -1
  197. package/.output/server/chunks/routes/api/workshop/eda/index3.get.mjs +1 -1
  198. package/.output/server/chunks/routes/api/workshop/eda/index6.get.mjs +1 -1
  199. package/.output/server/chunks/routes/api/workshop/eda/index6.post.mjs +1 -1
  200. package/.output/server/chunks/routes/api/workshop/eda/runs/_id/labels.patch.mjs +1 -1
  201. package/.output/server/chunks/routes/api/workshop/eda/runs.get.mjs +1 -1
  202. package/.output/server/chunks/routes/api/workshop/eda/vm/predict.post.mjs +1 -1
  203. package/.output/server/chunks/routes/api/workshop/exp/confirmations/_id/decide.post.mjs +1 -1
  204. package/.output/server/chunks/routes/api/workshop/exp/index.get.mjs +1 -1
  205. package/.output/server/chunks/routes/api/workshop/fs/dirs.get.mjs +1 -1
  206. package/.output/server/chunks/routes/api/workshop/harnesses/_id/providers.get.mjs +1 -1
  207. package/.output/server/chunks/routes/api/workshop/harnesses.get.mjs +1 -1
  208. package/.output/server/chunks/routes/api/workshop/hitl/pending.get.mjs +1 -1
  209. package/.output/server/chunks/routes/api/workshop/hitl/respond.post.mjs +1 -1
  210. package/.output/server/chunks/routes/api/workshop/index.mjs +62 -0
  211. package/.output/server/chunks/routes/api/workshop/index.mjs.map +1 -0
  212. package/.output/server/chunks/routes/api/workshop/index.put.mjs +1 -1
  213. package/.output/server/chunks/routes/api/workshop/index10.get.mjs +1 -1
  214. package/.output/server/chunks/routes/api/workshop/index11.get.mjs +1 -1
  215. package/.output/server/chunks/routes/api/workshop/index12.get.mjs +1 -1
  216. package/.output/server/chunks/routes/api/workshop/index2.get.mjs +1 -1
  217. package/.output/server/chunks/routes/api/workshop/index3.get.mjs +1 -1
  218. package/.output/server/chunks/routes/api/workshop/index3.post.mjs +1 -1
  219. package/.output/server/chunks/routes/api/workshop/index4.post.mjs +1 -1
  220. package/.output/server/chunks/routes/api/workshop/index5.post.mjs +1 -1
  221. package/.output/server/chunks/routes/api/workshop/index6.get.mjs +1 -1
  222. package/.output/server/chunks/routes/api/workshop/index6.post.mjs +1 -1
  223. package/.output/server/chunks/routes/api/workshop/index7.get.mjs +1 -1
  224. package/.output/server/chunks/routes/api/workshop/index8.get.mjs +1 -1
  225. package/.output/server/chunks/routes/api/workshop/mes/datasets.get.mjs +1 -1
  226. package/.output/server/chunks/routes/api/workshop/mes/preview.post.mjs +1 -1
  227. package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId/compile.mjs +54 -0
  228. package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId/compile.mjs.map +1 -0
  229. package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId/evidence.mjs +51 -0
  230. package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId/evidence.mjs.map +1 -0
  231. package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId/publish.mjs +67 -0
  232. package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId/publish.mjs.map +1 -0
  233. package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId/rules/_ruleId/approval-decision.mjs +49 -0
  234. package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId/rules/_ruleId/approval-decision.mjs.map +1 -0
  235. package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId/rules/_ruleId/approval.mjs +35 -0
  236. package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId/rules/_ruleId/approval.mjs.map +1 -0
  237. package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId/rules/_ruleId/transition.mjs +49 -0
  238. package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId/rules/_ruleId/transition.mjs.map +1 -0
  239. package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId/validate.mjs +35 -0
  240. package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId/validate.mjs.map +1 -0
  241. package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId_.mjs +70 -0
  242. package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId_.mjs.map +1 -0
  243. package/.output/server/chunks/routes/api/workshop/ontology/export/_ontologyId_.mjs +64 -0
  244. package/.output/server/chunks/routes/api/workshop/ontology/export/_ontologyId_.mjs.map +1 -0
  245. package/.output/server/chunks/routes/api/workshop/ontology/index.mjs +44 -0
  246. package/.output/server/chunks/routes/api/workshop/ontology/index.mjs.map +1 -0
  247. package/.output/server/chunks/routes/api/workshop/ontology/scene.mjs +36 -0
  248. package/.output/server/chunks/routes/api/workshop/ontology/scene.mjs.map +1 -0
  249. package/.output/server/chunks/routes/api/workshop/ontology/traces/_ontologyId_.mjs +38 -0
  250. package/.output/server/chunks/routes/api/workshop/ontology/traces/_ontologyId_.mjs.map +1 -0
  251. package/.output/server/chunks/routes/api/workshop/ontology/versions/_ontologyId/compare.mjs +40 -0
  252. package/.output/server/chunks/routes/api/workshop/ontology/versions/_ontologyId/compare.mjs.map +1 -0
  253. package/.output/server/chunks/routes/api/workshop/ontology/versions/_ontologyId_.mjs +63 -0
  254. package/.output/server/chunks/routes/api/workshop/ontology/versions/_ontologyId_.mjs.map +1 -0
  255. package/.output/server/chunks/routes/api/workshop/optimization/capabilities.get.mjs +1 -1
  256. package/.output/server/chunks/routes/api/workshop/optimization/index.get.mjs +1 -1
  257. package/.output/server/chunks/routes/api/workshop/optimization/index.mjs +1 -1
  258. package/.output/server/chunks/routes/api/workshop/optimization/index2.mjs +1 -1
  259. package/.output/server/chunks/routes/api/workshop/optimization/profiles/_id/publish.post.mjs +1 -1
  260. package/.output/server/chunks/routes/api/workshop/optimization/recommendations/_id/crosscheck.post.mjs +1 -1
  261. package/.output/server/chunks/routes/api/workshop/optimization/recommendations/_id/dispatch.post.mjs +1 -1
  262. package/.output/server/chunks/routes/api/workshop/optimization/solve.post.mjs +1 -1
  263. package/.output/server/chunks/routes/api/workshop/plugins/_name/disable.post.mjs +1 -1
  264. package/.output/server/chunks/routes/api/workshop/plugins/_name/enable.post.mjs +1 -1
  265. package/.output/server/chunks/routes/api/workshop/process-model/datasets.post.mjs +1 -1
  266. package/.output/server/chunks/routes/api/workshop/process-model/eligibility.mjs +1 -1
  267. package/.output/server/chunks/routes/api/workshop/process-model/experiments.mjs +1 -1
  268. package/.output/server/chunks/routes/api/workshop/process-model/index.mjs +1 -1
  269. package/.output/server/chunks/routes/api/workshop/process-model/specs/_id/publish.post.mjs +1 -1
  270. package/.output/server/chunks/routes/api/workshop/process-model/train.post.mjs +1 -1
  271. package/.output/server/chunks/routes/api/workshop/scene/layouts/_channelId_.delete.mjs +1 -1
  272. package/.output/server/chunks/routes/api/workshop/scene/layouts/_channelId_.put.mjs +1 -1
  273. package/.output/server/chunks/routes/api/workshop/teams/_id/deploy.post.mjs +1 -1
  274. package/.output/server/chunks/routes/api/workshop/teams/_id/index.put.mjs +1 -1
  275. package/.output/server/chunks/routes/api/workshop/teams/_id/index2.get.mjs +1 -1
  276. package/.output/server/chunks/routes/api/workshop/tools/_name_.get.mjs +1 -1
  277. package/.output/server/chunks/routes/api/workshop/tools/sync.post.mjs +1 -1
  278. package/.output/server/chunks/routes/api/workshop/workspaces/_id/channel-templates/_tplId_.post.mjs +2 -2
  279. package/.output/server/chunks/routes/renderer.mjs +2 -2
  280. package/.output/server/chunks/virtual/entry.mjs +234 -3
  281. package/.output/server/chunks/virtual/precomputed.mjs +1 -1
  282. package/.output/server/package.json +1 -1
  283. package/README-zh.md +27 -6
  284. package/README.md +25 -4
  285. package/app/components/AppSidebar.vue +1 -0
  286. package/app/pages/ontology/api.ts +18 -0
  287. package/app/pages/ontology/index.vue +779 -0
  288. package/app/pages/ontology/types.ts +122 -0
  289. package/config.yml +1 -1
  290. package/docs/cli.en.md +2 -2
  291. package/docs/cli.md +2 -2
  292. package/docs/plugins.en.md +1 -1
  293. package/docs/plugins.md +1 -1
  294. package/docs/sdk.en.md +1 -1
  295. package/docs/sdk.md +1 -1
  296. package/i18n/locales/en.ts +58 -0
  297. package/i18n/locales/zh-CN.ts +58 -0
  298. package/mcp/aw-mcp-server.mjs +35 -1
  299. package/package.json +1 -1
  300. package/scripts/docs-shots.mjs +36 -0
  301. package/scripts/e2e-model-loop-live.mjs +731 -0
  302. package/scripts/e2e-ontology-live.mjs +774 -0
  303. package/scripts/e2e-ontology.mjs +328 -0
  304. package/scripts/ontology-idd-rag-e2e.mjs +449 -0
  305. package/server/api/workshop/agent-tools/approvals/[id]/decide.post.ts +16 -0
  306. package/server/api/workshop/ontology/drafts/[draftId]/compile.ts +39 -0
  307. package/server/api/workshop/ontology/drafts/[draftId]/evidence.ts +33 -0
  308. package/server/api/workshop/ontology/drafts/[draftId]/publish.ts +44 -0
  309. package/server/api/workshop/ontology/drafts/[draftId]/rules/[ruleId]/approval-decision.ts +28 -0
  310. package/server/api/workshop/ontology/drafts/[draftId]/rules/[ruleId]/approval.ts +17 -0
  311. package/server/api/workshop/ontology/drafts/[draftId]/rules/[ruleId]/transition.ts +32 -0
  312. package/server/api/workshop/ontology/drafts/[draftId]/validate.ts +16 -0
  313. package/server/api/workshop/ontology/drafts/[draftId].ts +52 -0
  314. package/server/api/workshop/ontology/drafts/index.ts +20 -0
  315. package/server/api/workshop/ontology/export/[ontologyId].ts +50 -0
  316. package/server/api/workshop/ontology/index.ts +38 -0
  317. package/server/api/workshop/ontology/scene.ts +21 -0
  318. package/server/api/workshop/ontology/traces/[ontologyId].ts +19 -0
  319. package/server/api/workshop/ontology/versions/[ontologyId]/compare.ts +21 -0
  320. package/server/api/workshop/ontology/versions/[ontologyId].ts +42 -0
  321. package/server/services/workshop/agents/hitl-decision/dispatcher.ts +15 -0
  322. package/server/services/workshop/agents/host-tool-bridge/tools/industrial.ts +13 -1
  323. package/server/services/workshop/agents/industrial/grant-guard.ts +59 -0
  324. package/server/services/workshop/agents/industrial/index.ts +38 -32
  325. package/server/services/workshop/agents/industrial/ontology-tools.ts +320 -0
  326. package/server/services/workshop/agents/industrial/optimizer-tools.ts +79 -0
  327. package/server/services/workshop/agents/industrial/tool-verify.ts +32 -2
  328. package/server/services/workshop/agents/tool-reference-spec.ts +1 -1
  329. package/server/services/workshop/aml/twin/physics-spec.ts +6 -22
  330. package/server/services/workshop/daq/storage/index.ts +6 -5
  331. package/server/services/workshop/daq/storage/sqlite.adapter.ts +25 -13
  332. package/server/services/workshop/db/database/open.ts +2 -0
  333. package/server/services/workshop/db/database/schema.ts +155 -1
  334. package/server/services/workshop/ontology/compiler.ts +474 -0
  335. package/server/services/workshop/ontology/contracts.ts +441 -0
  336. package/server/services/workshop/ontology/guards.ts +139 -0
  337. package/server/services/workshop/ontology/index.ts +10 -0
  338. package/server/services/workshop/ontology/ontology.service.ts +892 -0
  339. package/server/services/workshop/ontology/repo.ts +449 -0
  340. package/server/services/workshop/ontology/semantic-binding.service.ts +226 -0
  341. package/server/services/workshop/ontology/validator.ts +218 -0
  342. package/server/services/workshop/optimization/binding.repo.ts +7 -0
  343. package/server/services/workshop/optimization/contracts.ts +14 -0
  344. package/server/services/workshop/optimization/dispatch.service.ts +16 -0
  345. package/server/services/workshop/optimization/profile-adopt.service.ts +256 -0
  346. package/server/services/workshop/optimization/profile.repo.ts +19 -3
  347. package/server/services/workshop/optimization/python/__pycache__/problems.cpython-312.pyc +0 -0
  348. package/shared/dimensions.ts +124 -0
  349. package/.output/public/_nuxt/B7s2qeyT.js +0 -14
  350. package/.output/public/_nuxt/LHIav-Kv.js +0 -1
  351. package/.output/public/_nuxt/RuMLNeQE.js +0 -1
  352. package/.output/public/_nuxt/builds/meta/0ae8cb0f-6ce5-4096-9692-9b1fc197b30d.json +0 -1
  353. /package/.output/public/_nuxt/{62J4vljm2.js → 62J4vljm.js} +0 -0
  354. /package/.output/public/_nuxt/{BO0BJx3w.js → BO0BJx3w2.js} +0 -0
  355. /package/.output/public/_nuxt/{C-MY-JQE2.js → C-MY-JQE.js} +0 -0
  356. /package/.output/public/_nuxt/{D5kCimyw.js → D5kCimyw2.js} +0 -0
  357. /package/.output/public/_nuxt/{DGrrucbG2.js → DGrrucbG.js} +0 -0
  358. /package/.output/public/_nuxt/{Y4sMSPrS.js → Y4sMSPrS2.js} +0 -0
@@ -1,5 +1,5 @@
1
1
  import { getCurrentScope, ref, watchEffect, getCurrentInstance, onBeforeUnmount, onDeactivated, onActivated, shallowReactive, reactive, effectScope, hasInjectionContext, inject, toRef, customRef, defineComponent, shallowRef, h, resolveComponent, computed, unref, isRef, toValue, onServerPrefetch, nextTick, queuePostFlushCb, provide, watch, triggerRef, Fragment, isVNode, Comment, Text, createVNode, cloneVNode, render, TransitionGroup, toRaw, Teleport, Transition, withDirectives, vShow, createApp, onErrorCaptured, resolveDynamicComponent, mergeProps, withCtx, defineAsyncComponent, createCommentVNode, isReadonly, Suspense, useSSRContext, isShallow, isReactive } from 'vue';
2
- import { cz as createHooks, c as createError, cA as sanitizeStatusCode, cB as klona, M as getRequestHeader, cC as isEqual$1, cD as setCookie, cE as getCookie, cF as deleteCookie, cG as $fetch, cH as baseURL, c8 as getRequestHeaders, cI as defu, cJ as getRequestProtocol, cK as appendResponseHeader } from '../_/nitro.mjs';
2
+ import { cX as createHooks, c as createError, cY as sanitizeStatusCode, cZ as klona, M as getRequestHeader, c_ as isEqual$1, c$ as setCookie, d0 as getCookie, d1 as deleteCookie, d2 as $fetch, d3 as baseURL, cw as getRequestHeaders, d4 as defu, d5 as getRequestProtocol, d6 as appendResponseHeader } from '../_/nitro.mjs';
3
3
  import { walkResolver } from 'unhead/utils';
4
4
  import { i as injectHead$1, V as VueResolver, h as headSymbol } from '../routes/renderer.mjs';
5
5
  import { START_LOCATION, useRoute as useRoute$1, RouterView, createMemoryHistory, createRouter, isNavigationFailure } from 'vue-router';
@@ -13274,6 +13274,16 @@ var virtual_nuxt_node_modules_2F_cache_2Fnuxt_2F_nuxt_2Froutes_default = [
13274
13274
  path: "/dcw/types",
13275
13275
  component: () => import('../build/types-D6J7slEa.mjs').then(function (n) { return n.a; })
13276
13276
  },
13277
+ {
13278
+ name: "ontology-api",
13279
+ path: "/ontology/api",
13280
+ component: () => import('../build/api-BEW_ebY_.mjs').then((n) => n.t)
13281
+ },
13282
+ {
13283
+ name: "ontology-types",
13284
+ path: "/ontology/types",
13285
+ component: () => import('../build/types-D6J7slEa.mjs').then(function (n) { return n.b; })
13286
+ },
13277
13287
  {
13278
13288
  name: "optimizer-api",
13279
13289
  path: "/optimizer/api",
@@ -13380,10 +13390,15 @@ var virtual_nuxt_node_modules_2F_cache_2Fnuxt_2F_nuxt_2Froutes_default = [
13380
13390
  {
13381
13391
  name: "monitor-types",
13382
13392
  path: "types",
13383
- component: () => import('../build/types-D6J7slEa.mjs').then(function (n) { return n.b; })
13393
+ component: () => import('../build/types-D6J7slEa.mjs').then(function (n) { return n.c; })
13384
13394
  }
13385
13395
  ]
13386
13396
  },
13397
+ {
13398
+ name: "ontology",
13399
+ path: "/ontology",
13400
+ component: () => import('../build/ontology-C3HS5pMo.mjs')
13401
+ },
13387
13402
  {
13388
13403
  name: "operations",
13389
13404
  path: "/operations",
@@ -16960,6 +16975,7 @@ var zh_CN_default$1 = {
16960
16975
  ops: "运维",
16961
16976
  system: "系统"
16962
16977
  },
16978
+ ontology: "本体模型",
16963
16979
  dashboard: "仪表盘",
16964
16980
  workshop: "Agent 工作台",
16965
16981
  town: "数字孪生",
@@ -18617,6 +18633,113 @@ var zh_CN_default$1 = {
18617
18633
  kcjqcaw012: "请先拖入或选择设备模型文件(.glb/.gltf/.obj/.fbx)",
18618
18634
  k8n918k013: "已删除模型文件"
18619
18635
  },
18636
+ ontology: {
18637
+ kicker: "工业语义资产",
18638
+ title: "本体模型",
18639
+ subtitle: "构建与治理面向控制的本体:实体、关系、约束规则与语义绑定;经编译器生成可追溯的问题界、步限与运行时守卫,发布为不可变版本。",
18640
+ refresh: "刷新",
18641
+ newDraft: "新建草稿",
18642
+ pickDraft: "选择草稿",
18643
+ validate: "校验",
18644
+ compile: "编译预览",
18645
+ publish: "发布版本",
18646
+ publishHint: "发布仅管理员;未获批规则不得进入控制约束",
18647
+ loadFail: "加载本体清单失败",
18648
+ loadDraftFail: "加载草稿失败",
18649
+ loadVersionsFail: "加载版本失败",
18650
+ draftCreated: "已创建草稿 {id}",
18651
+ draftCreateFail: "创建草稿失败",
18652
+ validateOk: "校验通过",
18653
+ validateFail: "校验未通过",
18654
+ compileOk: "编译完成:{status}",
18655
+ compileFail: "编译失败",
18656
+ publishOk: "已发布 v{version}",
18657
+ publishFail: "发布失败",
18658
+ ruleTransitionOk: "规则 {rule} → {to}",
18659
+ ruleTransitionFail: "规则状态迁移失败",
18660
+ approvalRequested: "已生成审批单 {id}(需第二人裁决)",
18661
+ approvalDecided: "已裁决通过",
18662
+ approvalFail: "批准流程失败",
18663
+ compareFail: "版本比较失败",
18664
+ retireOk: "已退役 v{version}",
18665
+ retireFail: "退役失败",
18666
+ compileEmpty: "先在工具栏点「编译预览」",
18667
+ global: "全局本体",
18668
+ empty: {
18669
+ ontologies: " 本体清单为空:先新建草稿并发布首个版本。",
18670
+ issues: " 当前草稿没有校验问题。"
18671
+ },
18672
+ noEvidence: "无证据",
18673
+ from: "起始版本",
18674
+ to: "目标版本",
18675
+ compare: "比较",
18676
+ tab: {
18677
+ overview: "总览",
18678
+ graph: "实体与关系",
18679
+ rules: "约束规则",
18680
+ bindings: "语义绑定",
18681
+ versions: "版本与发布",
18682
+ compile: "编译预览"
18683
+ },
18684
+ section: {
18685
+ ontologies: "本体清单",
18686
+ issues: "校验问题",
18687
+ entities: "实体",
18688
+ relations: "关系",
18689
+ bindingFailures: "绑定校验失败",
18690
+ artifacts: "四类编译产物",
18691
+ ruleTrace: "规则溯源"
18692
+ },
18693
+ stat: {
18694
+ ontologies: "本体",
18695
+ drafts: "草稿",
18696
+ entities: "实体",
18697
+ rules: "规则",
18698
+ bindings: "绑定"
18699
+ },
18700
+ col: {
18701
+ kind: "类型",
18702
+ name: "名称",
18703
+ role: "角色",
18704
+ unit: "单位",
18705
+ predicate: "关系",
18706
+ evidenceTier: "证据档",
18707
+ ruleKind: "规则类型",
18708
+ level: "约束级别",
18709
+ status: "状态",
18710
+ evidence: "证据",
18711
+ action: "操作",
18712
+ entity: "实体",
18713
+ target: "目标通道",
18714
+ direction: "方向",
18715
+ unitPair: "单位(声明→目标)",
18716
+ version: "版本",
18717
+ line: "产线",
18718
+ parent: "父版本",
18719
+ createdAt: "创建时间",
18720
+ decision: "决策",
18721
+ code: "决策码",
18722
+ message: "说明"
18723
+ },
18724
+ action: {
18725
+ review: "提交审查",
18726
+ validate: "登记为已验证",
18727
+ approve: "申请批准",
18728
+ retire: "退役"
18729
+ },
18730
+ prompt: {
18731
+ ontologyId: "本体 id(形如 ont-pva-line01)",
18732
+ lineId: "授权锚定产线 id(可留空)",
18733
+ approvalId: "审批单 id(留空=仅生成不裁决)"
18734
+ },
18735
+ diff: {
18736
+ entities: "实体",
18737
+ relations: "关系",
18738
+ rules: "规则",
18739
+ bindings: "绑定",
18740
+ rulesChanged: "变更的规则"
18741
+ }
18742
+ },
18620
18743
  toolsPage: {
18621
18744
  title: "工具管理",
18622
18745
  subtitle: "内置工具与插件注册工具的统一目录:来源、角色、可用性、参数 Schema,以及被哪些 Channel 停用。",
@@ -20196,6 +20319,7 @@ var en_default = {
20196
20319
  ops: "Operations",
20197
20320
  system: "System"
20198
20321
  },
20322
+ ontology: "Ontology Model",
20199
20323
  dashboard: "Dashboard",
20200
20324
  workshop: "Agent Harness",
20201
20325
  town: "Digital Twin",
@@ -21852,6 +21976,113 @@ var en_default = {
21852
21976
  kcjqcaw012: "Drop or pick a device model file first (.glb/.gltf/.obj/.fbx)",
21853
21977
  k8n918k013: "Model file deleted"
21854
21978
  },
21979
+ ontology: {
21980
+ kicker: "Industrial Semantic Assets",
21981
+ title: "Ontology Model",
21982
+ subtitle: "Build and govern a control-oriented ontology: entities, relations, constraint rules and semantic bindings; the compiler emits traceable bounds, rate limits and runtime guards, published as immutable versions.",
21983
+ refresh: "Refresh",
21984
+ newDraft: "New draft",
21985
+ pickDraft: "Select draft",
21986
+ validate: "Validate",
21987
+ compile: "Compile preview",
21988
+ publish: "Publish version",
21989
+ publishHint: "Publish is admin-only; unapproved rules cannot enter control constraints",
21990
+ loadFail: "Failed to load ontology list",
21991
+ loadDraftFail: "Failed to load draft",
21992
+ loadVersionsFail: "Failed to load versions",
21993
+ draftCreated: "Draft {id} created",
21994
+ draftCreateFail: "Failed to create draft",
21995
+ validateOk: "Validation passed",
21996
+ validateFail: "Validation failed",
21997
+ compileOk: "Compiled: {status}",
21998
+ compileFail: "Compile failed",
21999
+ publishOk: "Published v{version}",
22000
+ publishFail: "Publish failed",
22001
+ ruleTransitionOk: "Rule {rule} → {to}",
22002
+ ruleTransitionFail: "Rule transition failed",
22003
+ approvalRequested: "Approval {id} created (needs a second person)",
22004
+ approvalDecided: "Approval granted",
22005
+ approvalFail: "Approval flow failed",
22006
+ compareFail: "Version compare failed",
22007
+ retireOk: "Retired v{version}",
22008
+ retireFail: "Retire failed",
22009
+ compileEmpty: "Click “Compile preview” in the toolbar first",
22010
+ global: "Global ontology",
22011
+ empty: {
22012
+ ontologies: " No ontologies yet: create a draft and publish the first version.",
22013
+ issues: " No validation issues in the current draft."
22014
+ },
22015
+ noEvidence: "no evidence",
22016
+ from: "From version",
22017
+ to: "To version",
22018
+ compare: "Compare",
22019
+ tab: {
22020
+ overview: "Overview",
22021
+ graph: "Entities & relations",
22022
+ rules: "Constraint rules",
22023
+ bindings: "Semantic bindings",
22024
+ versions: "Versions & release",
22025
+ compile: "Compile preview"
22026
+ },
22027
+ section: {
22028
+ ontologies: "Ontologies",
22029
+ issues: "Validation issues",
22030
+ entities: "Entities",
22031
+ relations: "Relations",
22032
+ bindingFailures: "Binding failures",
22033
+ artifacts: "Compiled artifacts",
22034
+ ruleTrace: "Rule trace"
22035
+ },
22036
+ stat: {
22037
+ ontologies: "Ontologies",
22038
+ drafts: "Drafts",
22039
+ entities: "Entities",
22040
+ rules: "Rules",
22041
+ bindings: "Bindings"
22042
+ },
22043
+ col: {
22044
+ kind: "Kind",
22045
+ name: "Name",
22046
+ role: "Role",
22047
+ unit: "Unit",
22048
+ predicate: "Predicate",
22049
+ evidenceTier: "Evidence tier",
22050
+ ruleKind: "Rule kind",
22051
+ level: "Level",
22052
+ status: "Status",
22053
+ evidence: "Evidence",
22054
+ action: "Action",
22055
+ entity: "Entity",
22056
+ target: "Target channel",
22057
+ direction: "Direction",
22058
+ unitPair: "Units (declared→target)",
22059
+ version: "Version",
22060
+ line: "Line",
22061
+ parent: "Parent",
22062
+ createdAt: "Created at",
22063
+ decision: "Decision",
22064
+ code: "Decision code",
22065
+ message: "Message"
22066
+ },
22067
+ action: {
22068
+ review: "Submit review",
22069
+ validate: "Mark validated",
22070
+ approve: "Request approval",
22071
+ retire: "Retire"
22072
+ },
22073
+ prompt: {
22074
+ ontologyId: "Ontology id (e.g. ont-pva-line01)",
22075
+ lineId: "Anchor line id (optional)",
22076
+ approvalId: "Approval id (empty = request only)"
22077
+ },
22078
+ diff: {
22079
+ entities: "Entities",
22080
+ relations: "Relations",
22081
+ rules: "Rules",
22082
+ bindings: "Bindings",
22083
+ rulesChanged: "Changed rules"
22084
+ }
22085
+ },
21855
22086
  toolsPage: {
21856
22087
  title: "Tools",
21857
22088
  subtitle: "A unified catalog of built-in and plugin-registered tools: source, roles, availability, parameter schema, and which Channels disabled them.",
@@ -24746,7 +24977,7 @@ var virtual_nuxt_node_modules_2F_cache_2Fnuxt_2F_nuxt_2Fplugins_server_default =
24746
24977
  //#endregion
24747
24978
  //#region virtual:nuxt:node_modules%2F.cache%2Fnuxt%2F.nuxt%2Flayouts.mjs
24748
24979
  var virtual_nuxt_node_modules_2F_cache_2Fnuxt_2F_nuxt_2Flayouts_default = {
24749
- default: defineAsyncComponent(() => import('../build/default-BeB88U7y.mjs').then((m) => m.default || m)),
24980
+ default: defineAsyncComponent(() => import('../build/default-CJkOcmrm.mjs').then((m) => m.default || m)),
24750
24981
  town: defineAsyncComponent(() => import('../build/town-BV-hbwb5.mjs').then((m) => m.default || m))
24751
24982
  };
24752
24983
  //#endregion