agentworkshop 0.8.6 → 0.8.8
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.
- package/.AgentWorkShop/prompts/host-tools.en.json +302 -174
- package/.AgentWorkShop/prompts/host-tools.json +4109 -4080
- package/.AgentWorkShop/prompts/lead-supervise.md +6 -0
- package/.AgentWorkShop/prompts/mode-goal.md +3 -3
- package/.output/.AgentWorkShop/prompts/host-tools.en.json +302 -174
- package/.output/.AgentWorkShop/prompts/host-tools.json +4109 -4080
- package/.output/.AgentWorkShop/prompts/lead-supervise.md +6 -0
- package/.output/.AgentWorkShop/prompts/mode-goal.md +3 -3
- package/.output/.AgentWorkShop/schema.json +171 -152
- package/.output/nitro.json +1 -1
- package/.output/public/_nuxt/11Nifltq2.js +16 -0
- package/.output/public/_nuxt/{o8sYG6xx2.js → B37d6f-P2.js} +1 -1
- package/.output/public/_nuxt/{DtnsTW7e.js → B8vwpJxO.js} +1 -1
- package/.output/public/_nuxt/{BiXqyYNw2.js → BEbg8OxK2.js} +1 -1
- package/.output/public/_nuxt/{dcjPjLPI.js → BFUO7wT0.js} +1 -1
- package/.output/public/_nuxt/{Rb4o4o-82.js → BclHgAY62.js} +1 -1
- package/.output/public/_nuxt/{CdvMP3lv.js → BkZomIrQ.js} +1 -1
- package/.output/public/_nuxt/{D1eVi1zr.js → BwQJEuBn.js} +1 -1
- package/.output/public/_nuxt/{DMFwLxfu.js → C-wrWG5m.js} +1 -1
- package/.output/public/_nuxt/{COfo_Bg3.js → C0I4h6do.js} +1 -1
- package/.output/public/_nuxt/{BA2lmfW4.js → C0wjQa6_.js} +1 -1
- package/.output/public/_nuxt/{Dr1FVeQG2.js → C5x3IQz42.js} +1 -1
- package/.output/public/_nuxt/{BlOm8JIs2.js → C7BcCB7C2.js} +1 -1
- package/.output/public/_nuxt/{BwOK42JQ.js → CBpkE3Aa.js} +1 -1
- package/.output/public/_nuxt/{be-4wyTo.js → CEOSV8kw.js} +1 -1
- package/.output/public/_nuxt/{BuLoPmcf.js → CHpYSwnV.js} +1 -1
- package/.output/public/_nuxt/{EMbqTHfT.js → CYLe9LKr.js} +1 -1
- package/.output/public/_nuxt/CZgxZE_w2.js +1 -0
- package/.output/public/_nuxt/{DDXOfmo2.js → Cdi9qfTr.js} +5 -5
- package/.output/public/_nuxt/{hyLdZsOd2.js → CfE35xQa2.js} +1 -1
- package/.output/public/_nuxt/{azOGy_tU2.js → Cgym6fLd2.js} +1 -1
- package/.output/public/_nuxt/CjhzuymI.js +2 -0
- package/.output/public/_nuxt/{DC8sMA36.js → CoAJnzi9.js} +1 -1
- package/.output/public/_nuxt/{CooauJ7D.js → CuHnwZbm.js} +1 -1
- package/.output/public/_nuxt/{Tf6SJSDj.js → CwHhmA3N.js} +1 -1
- package/.output/public/_nuxt/{DzU3zEKX.js → D1Ljnzu-.js} +1 -1
- package/.output/public/_nuxt/{DoprKJ5a2.js → D9saExk92.js} +1 -1
- package/.output/public/_nuxt/{D6PUmBb0.js → DDLi49qE.js} +1 -1
- package/.output/public/_nuxt/{BoXKUOiN2.js → DNlwacP72.js} +1 -1
- package/.output/public/_nuxt/{ZzOyoXex2.js → DPIImHuY2.js} +1 -1
- package/.output/public/_nuxt/{CY2NkFvI.js → DW6X-3XT.js} +1 -1
- package/.output/public/_nuxt/{HJKu4eEV2.js → DZc-zU-H2.js} +1 -1
- package/.output/public/_nuxt/{C1RMfPoB2.js → Df35i2Tg2.js} +1 -1
- package/.output/public/_nuxt/DvGgUSuN2.js +2 -0
- package/.output/public/_nuxt/{EgO70wrE.js → DvfiRGS-.js} +1 -1
- package/.output/public/_nuxt/{C_4mzQ5X.js → DzPypczG.js} +1 -1
- package/.output/public/_nuxt/{BDXQqSkl2.js → FQK98hkN2.js} +1 -1
- package/.output/public/_nuxt/{7op-BMk82.js → Lq_0yoit2.js} +1 -1
- package/.output/public/_nuxt/{K5Xen0wZ2.js → MJD65-MH2.js} +1 -1
- package/.output/public/_nuxt/{TownView.CC3t-Dte.css → TownView.B_8ctigh.css} +1 -1
- package/.output/public/_nuxt/{h-Fn7pRD.js → WZrTmJqL.js} +1 -1
- package/.output/public/_nuxt/builds/latest.json +1 -1
- package/.output/public/_nuxt/builds/meta/1231252d-2864-43c0-83b2-4e70d3b86dea.json +1 -0
- package/.output/public/_nuxt/{entry.D6nBdXet.css → entry.Buc3k7Ha.css} +1 -1
- package/.output/public/_nuxt/{DDHh85c42.js → gfKPQ5o72.js} +1 -1
- package/.output/public/_nuxt/logs.DlG85QRw.css +1 -0
- package/.output/server/chunks/_/access.mjs +4 -2
- package/.output/server/chunks/_/access.mjs.map +1 -1
- package/.output/server/chunks/_/binding-authz.mjs +4 -1
- package/.output/server/chunks/_/binding-authz.mjs.map +1 -1
- package/.output/server/chunks/_/catalog-view.mjs +1 -1
- package/.output/server/chunks/_/character-asset.repo.mjs +1 -1
- package/.output/server/chunks/_/data-export.mjs +12 -12
- package/.output/server/chunks/_/data-export.mjs.map +1 -1
- package/.output/server/chunks/_/data-query.mjs +3 -3
- package/.output/server/chunks/_/eda-run.repo.mjs +5 -3
- package/.output/server/chunks/_/eda-run.repo.mjs.map +1 -1
- package/.output/server/chunks/_/entity.mjs +1 -1
- package/.output/server/chunks/_/features.mjs +8 -6
- package/.output/server/chunks/_/features.mjs.map +1 -1
- package/.output/server/chunks/_/golden.mjs +3 -3
- package/.output/server/chunks/_/host-bindings.mjs +4 -2
- package/.output/server/chunks/_/host-bindings.mjs.map +1 -1
- package/.output/server/chunks/_/index.mjs +4 -2
- package/.output/server/chunks/_/index.mjs.map +1 -1
- package/.output/server/chunks/_/line-scope.mjs +1 -1
- package/.output/server/chunks/_/mes-console.mjs +1 -1
- package/.output/server/chunks/_/mes-secrets.repo.mjs +4 -2
- package/.output/server/chunks/_/mes-secrets.repo.mjs.map +1 -1
- package/.output/server/chunks/_/nitro.mjs +5219 -2553
- package/.output/server/chunks/_/nitro.mjs.map +1 -1
- package/.output/server/chunks/_/ocap.mjs +1 -1
- package/.output/server/chunks/_/rest-auth.mjs +1 -1
- package/.output/server/chunks/_/scene-layout.repo.mjs +1 -1
- package/.output/server/chunks/_/spc.mjs +4 -2
- package/.output/server/chunks/_/spc.mjs.map +1 -1
- package/.output/server/chunks/_/user.schema.mjs +1 -1
- package/.output/server/chunks/build/{TownView-BWMDbosY.mjs → TownView-BqdMFqei.mjs} +53 -46
- package/.output/server/chunks/build/TownView-BqdMFqei.mjs.map +1 -0
- package/.output/server/chunks/build/{_id_-BK-t8nRG.mjs → _id_-CsCtnbwe.mjs} +6 -4
- package/.output/server/chunks/build/_id_-CsCtnbwe.mjs.map +1 -0
- package/.output/server/chunks/build/{_id_-CZPlPDm4.mjs → _id_-P1W47Gqq.mjs} +15 -13
- package/.output/server/chunks/build/_id_-P1W47Gqq.mjs.map +1 -0
- package/.output/server/chunks/build/{_wsId_-C871SDPN.mjs → _wsId_-DpOErFj6.mjs} +6 -4
- package/.output/server/chunks/build/{_wsId_-C871SDPN.mjs.map → _wsId_-DpOErFj6.mjs.map} +1 -1
- package/.output/server/chunks/build/agents-D7CdEUTv.mjs +3 -1
- package/.output/server/chunks/build/agents-D7CdEUTv.mjs.map +1 -1
- package/.output/server/chunks/build/aml-DRAFRcGU.mjs +3 -1
- package/.output/server/chunks/build/aml-DRAFRcGU.mjs.map +1 -1
- package/.output/server/chunks/build/{analysis-p-dBkjoK.mjs → analysis-J9axLuRt.mjs} +6 -4
- package/.output/server/chunks/build/analysis-J9axLuRt.mjs.map +1 -0
- package/.output/server/chunks/build/api-B4Om0mEc.mjs +3 -1
- package/.output/server/chunks/build/api-B4Om0mEc.mjs.map +1 -1
- package/.output/server/chunks/build/api-BEW_ebY_.mjs +3 -1
- package/.output/server/chunks/build/api-BEW_ebY_.mjs.map +1 -1
- package/.output/server/chunks/build/api-BsAgXWxi.mjs +3 -1
- package/.output/server/chunks/build/api-BsAgXWxi.mjs.map +1 -1
- package/.output/server/chunks/build/board-CJUc032b.mjs +3 -1
- package/.output/server/chunks/build/board-CJUc032b.mjs.map +1 -1
- package/.output/server/chunks/build/channel-templates-ggsBacZF.mjs +3 -1
- package/.output/server/chunks/build/channel-templates-ggsBacZF.mjs.map +1 -1
- package/.output/server/chunks/build/constants-HPHJvjne.mjs +3 -1
- package/.output/server/chunks/build/constants-HPHJvjne.mjs.map +1 -1
- package/.output/server/chunks/build/{daq-CdxcfY_G.mjs → daq-B_dRMDw4.mjs} +8 -6
- package/.output/server/chunks/build/daq-B_dRMDw4.mjs.map +1 -0
- package/.output/server/chunks/build/data-D8uX1dnm.mjs +3 -1
- package/.output/server/chunks/build/data-D8uX1dnm.mjs.map +1 -1
- package/.output/server/chunks/build/{dcw-BlDQtS4q.mjs → dcw-D_HD_H_2.mjs} +11 -9
- package/.output/server/chunks/build/dcw-D_HD_H_2.mjs.map +1 -0
- package/.output/server/chunks/build/default-CNWS6NUw.mjs +3 -1
- package/.output/server/chunks/build/es-Bxu10NJ2.mjs +3 -1
- package/.output/server/chunks/build/es-Bxu10NJ2.mjs.map +1 -1
- package/.output/server/chunks/build/{logs-pRb-TMWa.mjs → logs-BnYSMRXM.mjs} +109 -42
- package/.output/server/chunks/build/logs-BnYSMRXM.mjs.map +1 -0
- package/.output/server/chunks/build/monitor-Cq6hRFeQ.mjs +3 -1
- package/.output/server/chunks/build/ontology-ohICfVVb.mjs +3 -1
- package/.output/server/chunks/build/ontology-ohICfVVb.mjs.map +1 -1
- package/.output/server/chunks/build/{operations-SMQrRAcr.mjs → operations-4zOVhW7o.mjs} +6 -4
- package/.output/server/chunks/build/operations-4zOVhW7o.mjs.map +1 -0
- package/.output/server/chunks/build/optimizer-BlWTsM-W.mjs +3 -1
- package/.output/server/chunks/build/optimizer-BlWTsM-W.mjs.map +1 -1
- package/.output/server/chunks/build/{pages-DsMKUw7i.mjs → pages-DEv4ProW.mjs} +6 -4
- package/.output/server/chunks/build/pages-DEv4ProW.mjs.map +1 -0
- package/.output/server/chunks/build/permissions-DgXQZSyx.mjs +3 -1
- package/.output/server/chunks/build/permissions-DgXQZSyx.mjs.map +1 -1
- package/.output/server/chunks/build/pipeline-CkavMBhk.mjs +3 -1
- package/.output/server/chunks/build/pipeline-CkavMBhk.mjs.map +1 -1
- package/.output/server/chunks/build/plugins-LRjaSEZy.mjs +3 -1
- package/.output/server/chunks/build/plugins-LRjaSEZy.mjs.map +1 -1
- package/.output/server/chunks/build/schedules-Hz2DJUE2.mjs +3 -1
- package/.output/server/chunks/build/settings-DXLJPq7d.mjs +3 -1
- package/.output/server/chunks/build/settings-DXLJPq7d.mjs.map +1 -1
- package/.output/server/chunks/build/studio-hSqH9TYS.mjs +3 -1
- package/.output/server/chunks/build/studio-hSqH9TYS.mjs.map +1 -1
- package/.output/server/chunks/build/teams-BbwYJyzv.mjs +3 -1
- package/.output/server/chunks/build/teams-BbwYJyzv.mjs.map +1 -1
- package/.output/server/chunks/build/tokens-GYaGJ35Z.mjs +3 -1
- package/.output/server/chunks/build/tokens-GYaGJ35Z.mjs.map +1 -1
- package/.output/server/chunks/build/tools-CnYi9cou.mjs +3 -1
- package/.output/server/chunks/build/tools-CnYi9cou.mjs.map +1 -1
- package/.output/server/chunks/build/town-BV-hbwb5.mjs +3 -1
- package/.output/server/chunks/build/town-BV-hbwb5.mjs.map +1 -1
- package/.output/server/chunks/build/{town-B5aoiG98.mjs → town-CcoQKjMj.mjs} +6 -4
- package/.output/server/chunks/build/town-CcoQKjMj.mjs.map +1 -0
- package/.output/server/chunks/build/types-D6J7slEa.mjs +1 -1
- package/.output/server/chunks/build/types-DWqIeMRP.mjs +3 -1
- package/.output/server/chunks/build/types-DWqIeMRP.mjs.map +1 -1
- package/.output/server/chunks/build/useAgentHarnessOptions-Dq0l0Z6d.mjs +3 -1
- package/.output/server/chunks/build/useAgentHarnessOptions-Dq0l0Z6d.mjs.map +1 -1
- package/.output/server/chunks/build/useAgentTemplateActions-BFOHb5-L.mjs +3 -1
- package/.output/server/chunks/build/useAgentTemplateActions-BFOHb5-L.mjs.map +1 -1
- package/.output/server/chunks/build/useAgentTemplateDialogState-CZzpu5og.mjs +3 -1
- package/.output/server/chunks/build/useAgentTemplateDialogState-CZzpu5og.mjs.map +1 -1
- package/.output/server/chunks/build/useAgentTemplateForm-CuJPOPcK.mjs +3 -1
- package/.output/server/chunks/build/useAgentTemplateForm-CuJPOPcK.mjs.map +1 -1
- package/.output/server/chunks/build/useAgentTemplatesCatalog-B2bIhZLA.mjs +3 -1
- package/.output/server/chunks/build/useAgentTemplatesCatalog-B2bIhZLA.mjs.map +1 -1
- package/.output/server/chunks/build/useAmlDatasets-DeoE1idn.mjs +3 -1
- package/.output/server/chunks/build/useAmlDatasets-DeoE1idn.mjs.map +1 -1
- package/.output/server/chunks/build/useAmlEntities-BJhvdqHJ.mjs +3 -1
- package/.output/server/chunks/build/useAmlEntities-BJhvdqHJ.mjs.map +1 -1
- package/.output/server/chunks/build/useAmlEnv-CDIZ6xTe.mjs +3 -1
- package/.output/server/chunks/build/useAmlEnv-CDIZ6xTe.mjs.map +1 -1
- package/.output/server/chunks/build/useAmlExperiments-Dloi834i.mjs +3 -1
- package/.output/server/chunks/build/useAmlExperiments-Dloi834i.mjs.map +1 -1
- package/.output/server/chunks/build/useAmlFormat-C2sl3MGB.mjs +3 -1
- package/.output/server/chunks/build/useAmlFormat-C2sl3MGB.mjs.map +1 -1
- package/.output/server/chunks/build/useAmlJobs-BF9LpwXz.mjs +3 -1
- package/.output/server/chunks/build/useAmlJobs-BF9LpwXz.mjs.map +1 -1
- package/.output/server/chunks/build/useAmlModels-_bweOr3R.mjs +3 -1
- package/.output/server/chunks/build/useAmlModels-_bweOr3R.mjs.map +1 -1
- package/.output/server/chunks/build/useAmlNotes-DQj980iX.mjs +3 -1
- package/.output/server/chunks/build/useAmlNotes-DQj980iX.mjs.map +1 -1
- package/.output/server/chunks/build/useAmlPredict-DHNgDSJn.mjs +3 -1
- package/.output/server/chunks/build/useAmlPredict-DHNgDSJn.mjs.map +1 -1
- package/.output/server/chunks/build/useAnalysisFeed-BrEGV_9x.mjs +3 -1
- package/.output/server/chunks/build/useAnalysisFeed-BrEGV_9x.mjs.map +1 -1
- package/.output/server/chunks/build/useDaqAddNode-D_Rkju0f.mjs +4 -2
- package/.output/server/chunks/build/useDaqAddNode-D_Rkju0f.mjs.map +1 -1
- package/.output/server/chunks/build/useDaqDetailBinding-DCWaLKXT.mjs +3 -1
- package/.output/server/chunks/build/useDaqDetailBinding-DCWaLKXT.mjs.map +1 -1
- package/.output/server/chunks/build/useDaqDetailFrames-BOIcOJRB.mjs +3 -1
- package/.output/server/chunks/build/useDaqDetailFrames-BOIcOJRB.mjs.map +1 -1
- package/.output/server/chunks/build/useDaqDetailHistory-D6WulPVs.mjs +3 -1
- package/.output/server/chunks/build/useDaqDetailHistory-D6WulPVs.mjs.map +1 -1
- package/.output/server/chunks/build/{useDaqDetailNode-DeOsDxK5.mjs → useDaqDetailNode-BGMRUIXN.mjs} +6 -4
- package/.output/server/chunks/build/useDaqDetailNode-BGMRUIXN.mjs.map +1 -0
- package/.output/server/chunks/build/useDaqDetailParams-Cm9a9r5G.mjs +4 -2
- package/.output/server/chunks/build/useDaqDetailParams-Cm9a9r5G.mjs.map +1 -1
- package/.output/server/chunks/build/{useDaqFilters-CctmO03p.mjs → useDaqFilters-zAAVlzJQ.mjs} +6 -4
- package/.output/server/chunks/build/useDaqFilters-zAAVlzJQ.mjs.map +1 -0
- package/.output/server/chunks/build/useDaqNodeWindow-1DWj2H5G.mjs +3 -1
- package/.output/server/chunks/build/useDaqNodeWindow-1DWj2H5G.mjs.map +1 -1
- package/.output/server/chunks/build/{useDaqOptimizations-CmX_dpBc.mjs → useDaqOptimizations-BE_9Z2s_.mjs} +5 -3
- package/.output/server/chunks/build/useDaqOptimizations-BE_9Z2s_.mjs.map +1 -0
- package/.output/server/chunks/build/useDaqStream-B9ZBVQrI.mjs +1 -1
- package/.output/server/chunks/build/useDaqTemplates-CK37sMfi.mjs +4 -2
- package/.output/server/chunks/build/useDaqTemplates-CK37sMfi.mjs.map +1 -1
- package/.output/server/chunks/build/useDashboardCharts-D45083s_.mjs +3 -1
- package/.output/server/chunks/build/useDashboardCharts-D45083s_.mjs.map +1 -1
- package/.output/server/chunks/build/{useDashboardData-NJ7rKxhx.mjs → useDashboardData-Cw8lrPo5.mjs} +5 -3
- package/.output/server/chunks/build/useDashboardData-Cw8lrPo5.mjs.map +1 -0
- package/.output/server/chunks/build/{useDcwAddNode-DACVcEHs.mjs → useDcwAddNode-KnocMk1m.mjs} +6 -4
- package/.output/server/chunks/build/useDcwAddNode-KnocMk1m.mjs.map +1 -0
- package/.output/server/chunks/build/{useDcwCards-SaiImIYQ.mjs → useDcwCards-C53IiOcg.mjs} +5 -3
- package/.output/server/chunks/build/useDcwCards-C53IiOcg.mjs.map +1 -0
- package/.output/server/chunks/build/{useDcwDetailScope-DLOklSMO.mjs → useDcwDetailScope-D6qXrfZu.mjs} +5 -3
- package/.output/server/chunks/build/useDcwDetailScope-D6qXrfZu.mjs.map +1 -0
- package/.output/server/chunks/build/{useDcwDetailTemplates-ClmIdZ40.mjs → useDcwDetailTemplates-DPOXu1o_.mjs} +5 -3
- package/.output/server/chunks/build/useDcwDetailTemplates-DPOXu1o_.mjs.map +1 -0
- package/.output/server/chunks/build/{useDcwFilter-CPMyCltx.mjs → useDcwFilter-DNQ6Ivwd.mjs} +5 -3
- package/.output/server/chunks/build/useDcwFilter-DNQ6Ivwd.mjs.map +1 -0
- package/.output/server/chunks/build/{useDcwLedger-0ie-0WTc.mjs → useDcwLedger-BhbUBCbi.mjs} +5 -3
- package/.output/server/chunks/build/useDcwLedger-BhbUBCbi.mjs.map +1 -0
- package/.output/server/chunks/build/{useDcwLineMutations-DNxo66yM.mjs → useDcwLineMutations-KA7VnggO.mjs} +5 -3
- package/.output/server/chunks/build/useDcwLineMutations-KA7VnggO.mjs.map +1 -0
- package/.output/server/chunks/build/{useDcwLineRun-CHskwscT.mjs → useDcwLineRun-3zx_UCxi.mjs} +5 -3
- package/.output/server/chunks/build/useDcwLineRun-3zx_UCxi.mjs.map +1 -0
- package/.output/server/chunks/build/{useDcwParamApprovals-DtScUc-W.mjs → useDcwParamApprovals-DzyY6Tmi.mjs} +5 -3
- package/.output/server/chunks/build/useDcwParamApprovals-DzyY6Tmi.mjs.map +1 -0
- package/.output/server/chunks/build/{useDcwProducts-BMaxzLu6.mjs → useDcwProducts-B05ymt3k.mjs} +5 -3
- package/.output/server/chunks/build/useDcwProducts-B05ymt3k.mjs.map +1 -0
- package/.output/server/chunks/build/{useDcwQuery-TVU3Eo0M.mjs → useDcwQuery-vWpgpSmJ.mjs} +5 -3
- package/.output/server/chunks/build/useDcwQuery-vWpgpSmJ.mjs.map +1 -0
- package/.output/server/chunks/build/{useDcwQuickActions-BREFmR9T.mjs → useDcwQuickActions-DUkLy34S.mjs} +5 -3
- package/.output/server/chunks/build/useDcwQuickActions-DUkLy34S.mjs.map +1 -0
- package/.output/server/chunks/build/{useDcwRecipes-Bc9urA1N.mjs → useDcwRecipes-BAb4Yg3d.mjs} +5 -3
- package/.output/server/chunks/build/useDcwRecipes-BAb4Yg3d.mjs.map +1 -0
- package/.output/server/chunks/build/{useDcwStream-Dir5ufAU.mjs → useDcwStream-RN3U_Jsh.mjs} +7 -4
- package/.output/server/chunks/build/useDcwStream-RN3U_Jsh.mjs.map +1 -0
- package/.output/server/chunks/build/{useDcwTemplates-BzagZztS.mjs → useDcwTemplates-D2aoejps.mjs} +5 -3
- package/.output/server/chunks/build/useDcwTemplates-D2aoejps.mjs.map +1 -0
- package/.output/server/chunks/build/{useDcwWrites-BROwTLCn.mjs → useDcwWrites-7w8txksD.mjs} +5 -3
- package/.output/server/chunks/build/useDcwWrites-7w8txksD.mjs.map +1 -0
- package/.output/server/chunks/build/useExpConfirmations-BM626N4p.mjs +3 -1
- package/.output/server/chunks/build/useExpConfirmations-BM626N4p.mjs.map +1 -1
- package/.output/server/chunks/build/useLogsFormat-B-o4MHy7.mjs +3 -1
- package/.output/server/chunks/build/useLogsFormat-B-o4MHy7.mjs.map +1 -1
- package/.output/server/chunks/build/{useLogsManual-cVBZQ_Mt.mjs → useLogsManual-D0dvgCsP.mjs} +5 -2
- package/.output/server/chunks/build/useLogsManual-D0dvgCsP.mjs.map +1 -0
- package/.output/server/chunks/build/useLogsQuery-D7hrJ3yn.mjs +3 -1
- package/.output/server/chunks/build/useLogsQuery-D7hrJ3yn.mjs.map +1 -1
- package/.output/server/chunks/build/{useLogsScope-aaPQeTRm.mjs → useLogsScope-DEUyq-My.mjs} +5 -3
- package/.output/server/chunks/build/useLogsScope-DEUyq-My.mjs.map +1 -0
- package/.output/server/chunks/build/useMonitorColumns-vVnt3r5Q.mjs +3 -1
- package/.output/server/chunks/build/useMonitorColumns-vVnt3r5Q.mjs.map +1 -1
- package/.output/server/chunks/build/useMonitorData-DIkiLr_h.mjs +3 -1
- package/.output/server/chunks/build/useMonitorData-DIkiLr_h.mjs.map +1 -1
- package/.output/server/chunks/build/useMonitorFormat-CyURtH8N.mjs +3 -1
- package/.output/server/chunks/build/useMonitorFormat-CyURtH8N.mjs.map +1 -1
- package/.output/server/chunks/build/useMonitorTerminal-Dj4QwRNW.mjs +3 -1
- package/.output/server/chunks/build/useMonitorTerminal-Dj4QwRNW.mjs.map +1 -1
- package/.output/server/chunks/build/useOperationsFeed-Ci4mZAn_.mjs +3 -1
- package/.output/server/chunks/build/useOperationsFeed-Ci4mZAn_.mjs.map +1 -1
- package/.output/server/chunks/build/useOpsLog-C-M6Eace.mjs.map +1 -1
- package/.output/server/chunks/build/useRecipeDispatchApprovals-BYtiqfeb.mjs +3 -1
- package/.output/server/chunks/build/useRecipeDispatchApprovals-BYtiqfeb.mjs.map +1 -1
- package/.output/server/chunks/build/useTeamActions-BDjU06LP.mjs +3 -1
- package/.output/server/chunks/build/useTeamActions-BDjU06LP.mjs.map +1 -1
- package/.output/server/chunks/build/useTeamAddMemberDialog-J3oFn3FI.mjs +3 -1
- package/.output/server/chunks/build/useTeamAddMemberDialog-J3oFn3FI.mjs.map +1 -1
- package/.output/server/chunks/build/useTeamCreateDialog-fbn4ixYu.mjs +3 -1
- package/.output/server/chunks/build/useTeamCreateDialog-fbn4ixYu.mjs.map +1 -1
- package/.output/server/chunks/build/useTeamDeployDialog-BNezMD2k.mjs +3 -1
- package/.output/server/chunks/build/useTeamDeployDialog-BNezMD2k.mjs.map +1 -1
- package/.output/server/chunks/build/useTeamDialogState-CFRUQxAf.mjs +3 -1
- package/.output/server/chunks/build/useTeamDialogState-CFRUQxAf.mjs.map +1 -1
- package/.output/server/chunks/build/useTeamPluginDialog-BZznrOVe.mjs +3 -1
- package/.output/server/chunks/build/useTeamPluginDialog-BZznrOVe.mjs.map +1 -1
- package/.output/server/chunks/build/useTeamsCatalog-DuZFP3oG.mjs +3 -1
- package/.output/server/chunks/build/useTeamsCatalog-DuZFP3oG.mjs.map +1 -1
- package/.output/server/chunks/build/useTokenClipboard-CwQpoFeP.mjs +3 -1
- package/.output/server/chunks/build/useTokenClipboard-CwQpoFeP.mjs.map +1 -1
- package/.output/server/chunks/build/useTokenCreate-Ctl0YGhL.mjs +3 -1
- package/.output/server/chunks/build/useTokenCreate-Ctl0YGhL.mjs.map +1 -1
- package/.output/server/chunks/build/useTokenRename-Cm3ypSfN.mjs +3 -1
- package/.output/server/chunks/build/useTokenRename-Cm3ypSfN.mjs.map +1 -1
- package/.output/server/chunks/build/useTokenReveal-CeoWL5Mt.mjs +3 -1
- package/.output/server/chunks/build/useTokenReveal-CeoWL5Mt.mjs.map +1 -1
- package/.output/server/chunks/build/useTokensList-CNIzON3u.mjs +3 -1
- package/.output/server/chunks/build/useTokensList-CNIzON3u.mjs.map +1 -1
- package/.output/server/chunks/build/useWorkbenchAuth-CY-bVFMu.mjs +3 -1
- package/.output/server/chunks/build/useWorkbenchAuth-CY-bVFMu.mjs.map +1 -1
- package/.output/server/chunks/build/useWorkbenchWorkspaces-DhZQFss9.mjs +3 -1
- package/.output/server/chunks/build/useWorkbenchWorkspaces-DhZQFss9.mjs.map +1 -1
- package/.output/server/chunks/build/useWorkspaceAuth-Dlvj9csD.mjs +3 -1
- package/.output/server/chunks/build/useWorkspaceAuth-Dlvj9csD.mjs.map +1 -1
- package/.output/server/chunks/build/useWorkspaceChannels-CPFepxTN.mjs +3 -1
- package/.output/server/chunks/build/useWorkspaceChannels-CPFepxTN.mjs.map +1 -1
- package/.output/server/chunks/build/useWorkspacePanels-CTwREmq0.mjs +3 -1
- package/.output/server/chunks/build/useWorkspacePanels-CTwREmq0.mjs.map +1 -1
- package/.output/server/chunks/build/useWorkspaceShell-BCypjjjE.mjs +3 -1
- package/.output/server/chunks/build/useWorkspaceShell-BCypjjjE.mjs.map +1 -1
- package/.output/server/chunks/build/users-DjiVC_tS.mjs +3 -1
- package/.output/server/chunks/build/users-DjiVC_tS.mjs.map +1 -1
- package/.output/server/chunks/build/workshop-1gKeDASV.mjs +3 -1
- package/.output/server/chunks/build/workshop-1gKeDASV.mjs.map +1 -1
- package/.output/server/chunks/routes/api/health.get.mjs +3 -1
- package/.output/server/chunks/routes/api/health.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/index.get.mjs +3 -1
- package/.output/server/chunks/routes/api/index.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/index.post.mjs +3 -1
- package/.output/server/chunks/routes/api/index.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/mcp/workshop.mjs +4 -2
- package/.output/server/chunks/routes/api/mcp/workshop.mjs.map +1 -1
- package/.output/server/chunks/routes/api/metrics.mjs +3 -1
- package/.output/server/chunks/routes/api/metrics.mjs.map +1 -1
- package/.output/server/chunks/routes/api/plugins/_name/_...path_.mjs +3 -1
- package/.output/server/chunks/routes/api/plugins/_name/_...path_.mjs.map +1 -1
- package/.output/server/chunks/routes/api/plugins/client/_name_.get.mjs +3 -1
- package/.output/server/chunks/routes/api/plugins/client/_name_.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/plugins/i18n.get.mjs +3 -1
- package/.output/server/chunks/routes/api/plugins/i18n.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/plugins/manifest.get.mjs +3 -1
- package/.output/server/chunks/routes/api/plugins/manifest.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/system/backup/list.get.mjs +3 -1
- package/.output/server/chunks/routes/api/system/backup/list.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/system/backup/run.post.mjs +5 -3
- package/.output/server/chunks/routes/api/system/backup/run.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/system/config-groups/_id_.delete.mjs +3 -1
- package/.output/server/chunks/routes/api/system/config-groups/_id_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/system/config-groups/_id_.patch.mjs +3 -1
- package/.output/server/chunks/routes/api/system/config-groups/_id_.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/system/config.get.mjs +3 -1
- package/.output/server/chunks/routes/api/system/config.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/system/index.get.mjs +3 -1
- package/.output/server/chunks/routes/api/system/index.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/system/index.patch.mjs +3 -1
- package/.output/server/chunks/routes/api/system/index.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/system/index.post.mjs +3 -1
- package/.output/server/chunks/routes/api/system/index.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/system/index2.get.mjs +3 -1
- package/.output/server/chunks/routes/api/system/index2.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/system/monitor/terminal/ws.mjs +3 -1
- package/.output/server/chunks/routes/api/system/monitor/terminal/ws.mjs.map +1 -1
- package/.output/server/chunks/routes/api/system/monitor/terminate.post.mjs +3 -1
- package/.output/server/chunks/routes/api/system/monitor/terminate.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/system/monitor.get.mjs +3 -1
- package/.output/server/chunks/routes/api/system/monitor.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/system/settings/events.get.mjs +3 -1
- package/.output/server/chunks/routes/api/system/settings/events.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/system/settings/reset.post.mjs +3 -1
- package/.output/server/chunks/routes/api/system/settings/reset.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/system/timezone.get.mjs +3 -1
- package/.output/server/chunks/routes/api/system/timezone.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/users/_id_.delete.mjs +3 -1
- package/.output/server/chunks/routes/api/users/_id_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/users/_id_.get.mjs +3 -1
- package/.output/server/chunks/routes/api/users/_id_.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/users/_id_.put.mjs +3 -1
- package/.output/server/chunks/routes/api/users/_id_.put.mjs.map +1 -1
- package/.output/server/chunks/routes/api/users/change-password.post.mjs +3 -1
- package/.output/server/chunks/routes/api/users/change-password.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/users/index.get.mjs +3 -1
- package/.output/server/chunks/routes/api/users/index.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/users/index.post.mjs +3 -1
- package/.output/server/chunks/routes/api/users/index.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/users/login.post.mjs +5 -4
- package/.output/server/chunks/routes/api/users/login.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/users/logout.post.mjs +3 -1
- package/.output/server/chunks/routes/api/users/logout.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/users/me.get.mjs +3 -1
- package/.output/server/chunks/routes/api/users/me.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/users/register.post.mjs +3 -1
- package/.output/server/chunks/routes/api/users/register.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/users/setup-status.get.mjs +3 -1
- package/.output/server/chunks/routes/api/users/setup-status.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/users/tokens/_id/token.get.mjs +3 -1
- package/.output/server/chunks/routes/api/users/tokens/_id/token.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/users/tokens/_id_.delete.mjs +3 -1
- package/.output/server/chunks/routes/api/users/tokens/_id_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/users/tokens/_id_.patch.mjs +3 -1
- package/.output/server/chunks/routes/api/users/tokens/_id_.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/_...path_.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/_...path_.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/a2a/_agentId/index.get.mjs +12 -2
- package/.output/server/chunks/routes/api/workshop/a2a/_agentId/index.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/a2a/_agentId/index.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/a2a/_agentId/index.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/a2a/send.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/a2a/send.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/agent-tools/approvals/_id/decide.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/agent-tools/approvals/_id/decide.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/agent-tools/bindings/_id_.delete.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/agent-tools/bindings/_id_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/agent-tools/bindings/_id_.patch.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/agent-tools/bindings/_id_.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/agent-tools/bindings/grant.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/agent-tools/bindings/grant.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/agent-tools/bindings/revoke.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/agent-tools/bindings/revoke.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/agent-tools/index.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/agent-tools/index.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/agent-tools/index.post.mjs +22 -1
- package/.output/server/chunks/routes/api/workshop/agent-tools/index.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/agent-tools/index2.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/agent-tools/index2.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/agent-tools/invoke.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/agent-tools/invoke.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/agent-tools/list.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/agent-tools/list.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/agents/_id_.delete.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/agents/_id_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/agents/_id_.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/agents/_id_.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/agents/_id_.patch.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/agents/_id_.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/agents/subscribe.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/agents/subscribe.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/aml/datasets/_id/preview.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/aml/datasets/_id/preview.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/aml/datasets/_id_.delete.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/aml/datasets/_id_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/aml/datasets/_id_.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/aml/datasets/_id_.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/aml/datasets/_id_.patch.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/aml/datasets/_id_.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/aml/entities/prune.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/aml/entities/prune.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/aml/env/recheck.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/aml/env/recheck.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/aml/env/uv.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/aml/env/uv.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/aml/env/venv.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/aml/env/venv.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/aml/index.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/aml/index.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/aml/index.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/aml/index.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/aml/index2.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/aml/index2.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/aml/index2.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/aml/index2.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/aml/index3.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/aml/index3.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/aml/index3.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/aml/index3.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/aml/index4.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/aml/index4.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/aml/index5.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/aml/index5.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/aml/index6.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/aml/index6.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/aml/index7.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/aml/index7.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/aml/jobs/_id/cancel.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/aml/jobs/_id/cancel.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/aml/jobs/_id/logs.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/aml/jobs/_id/logs.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/aml/jobs/_id/retry.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/aml/jobs/_id/retry.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/aml/jobs/_id_.delete.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/aml/jobs/_id_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/aml/jobs/_id_.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/aml/jobs/_id_.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/aml/models/_id/predict.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/aml/models/_id/predict.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/aml/models/_id/promote.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/aml/models/_id/promote.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/aml/models/_id_.delete.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/aml/models/_id_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/aml/models/_id_.patch.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/aml/models/_id_.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/aml/training-plans/_id/train.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/aml/training-plans/_id/train.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/aml/training-plans/_id_.delete.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/aml/training-plans/_id_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/aml/training-plans/_id_.patch.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/aml/training-plans/_id_.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/aml/twin/providers.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/aml/twin/providers.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/analysis/_id_.delete.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/analysis/_id_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/analysis/_id_.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/analysis/_id_.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/analysis/_id_.patch.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/analysis/_id_.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/approvals/_id/decide.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/approvals/_id/decide.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/assets/character/_id_.delete.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/assets/character/_id_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/assets/devices/_id_.delete.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/assets/devices/_id_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/assets/index.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/assets/index.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/assets/index.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/assets/index.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/assets/index2.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/assets/index2.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/assets/index2.post.mjs +6 -3
- package/.output/server/chunks/routes/api/workshop/assets/index2.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/audit.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/audit.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/caller.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/caller.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channel-templates/_id/instantiate.post.mjs +5 -3
- package/.output/server/chunks/routes/api/workshop/channel-templates/_id/instantiate.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channel-templates/_id_.delete.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/channel-templates/_id_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channel-templates/_id_.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/channel-templates/_id_.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channel-templates/_id_.patch.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/channel-templates/_id_.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channel-templates/from-channel.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/channel-templates/from-channel.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/activate.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/channels/_id/activate.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/agents/_agentId/index.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/agents/_agentId/index.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/agents/_agentId/index.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/agents/_agentId/index.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/agents/_agentId/memories/_memoryId_.delete.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/agents/_agentId/memories/_memoryId_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/agents/_agentId/memories/search.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/agents/_agentId/memories/search.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/agents/_agentId/model.patch.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/agents/_agentId/model.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/agents/_agentId/position.patch.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/agents/_agentId/position.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/agents/_agentId/range.patch.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/agents/_agentId/range.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/agents/_agentId/rotate-token.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/agents/_agentId/rotate-token.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/agents/_agentId/stop.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/agents/_agentId/stop.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/agents/_agentId_.delete.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/agents/_agentId_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/agents/_agentId_.patch.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/agents/_agentId_.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/chat/index.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/chat/index.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/chat/index.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/channels/_id/chat/index.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/chat/messages/_messageId/read.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/chat/messages/_messageId/read.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/chat/permissions.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/chat/permissions.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/events.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/events.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/execution-mode.patch.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/channels/_id/execution-mode.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/index.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/index.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/index.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/channels/_id/index.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/index.put.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/channels/_id/index.put.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/index2.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/index2.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/index2.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/index2.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/index2.put.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/channels/_id/index2.put.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/index3.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/index3.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/index3.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/channels/_id/index3.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/index4.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/index4.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/index4.post.mjs +6 -2
- package/.output/server/chunks/routes/api/workshop/channels/_id/index4.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/index5.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/channels/_id/index5.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/index6.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/index6.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/index7.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/index7.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/line.put.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/channels/_id/line.put.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/members/_userId/approve.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/members/_userId/approve.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/members/_userId_.delete.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/members/_userId_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/members/join.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/channels/_id/members/join.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/members/leave.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/members/leave.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/memories/_memoryId_.delete.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/memories/_memoryId_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/queue.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/queue.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/terminals.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/channels/_id/terminals.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/tools/reset.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/channels/_id/tools/reset.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/twin-profile.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/channels/_id/twin-profile.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id/twin-profile.patch.mjs +21 -4
- package/.output/server/chunks/routes/api/workshop/channels/_id/twin-profile.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id_.delete.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/channels/_id_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/index.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/channels/index.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels/index.patch.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/channels/index.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/channels.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels.post.mjs +10 -8
- package/.output/server/chunks/routes/api/workshop/channels.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/daq/_id/bind.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/daq/_id/bind.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/daq/_id/bindings.put.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/daq/_id/bindings.put.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/daq/_id/frames/content.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/daq/_id/frames/content.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/daq/_id/frames.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/daq/_id/frames.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/daq/_id/ingest.post.mjs +15 -3
- package/.output/server/chunks/routes/api/workshop/daq/_id/ingest.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/daq/_id/samples.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/daq/_id/samples.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/daq/_id/test.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/daq/_id/test.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/daq/_id_.delete.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/daq/_id_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/daq/_id_.patch.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/daq/_id_.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/daq/alarms/_id/ack.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/daq/alarms/_id/ack.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/daq/alarms.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/daq/alarms.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/daq/controller.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/daq/controller.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/daq/export/_id_.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/daq/export/_id_.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/daq/export-file.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/daq/export-file.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/daq/index.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/daq/index.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/daq/index.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/daq/index.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/daq/index2.post.mjs +6 -4
- package/.output/server/chunks/routes/api/workshop/daq/index2.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/daq/infra/reconnect.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/daq/infra/reconnect.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/daq/infra.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/daq/infra.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/daq/query.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/daq/query.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/daq/storage/retention.put.mjs +68 -0
- package/.output/server/chunks/routes/api/workshop/daq/storage/retention.put.mjs.map +1 -0
- package/.output/server/chunks/routes/api/workshop/daq/storage/rollup.post.mjs +45 -0
- package/.output/server/chunks/routes/api/workshop/daq/storage/rollup.post.mjs.map +1 -0
- package/.output/server/chunks/routes/api/workshop/daq/storage.get.mjs +36 -0
- package/.output/server/chunks/routes/api/workshop/daq/storage.get.mjs.map +1 -0
- package/.output/server/chunks/routes/api/workshop/daq/templates/_key_.delete.mjs +6 -4
- package/.output/server/chunks/routes/api/workshop/daq/templates/_key_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/daq/templates/_key_.patch.mjs +6 -4
- package/.output/server/chunks/routes/api/workshop/daq/templates/_key_.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/daq/test-driver.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/daq/test-driver.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/_id/bind.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/_id/bind.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/_id/bindings.put.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/_id/bindings.put.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/_id/param-ledger.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/_id/param-ledger.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/_id/read.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/_id/read.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/_id/test.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/_id/test.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/_id/write.post.mjs +5 -3
- package/.output/server/chunks/routes/api/workshop/dcw/_id/write.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/_id_.delete.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/_id_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/_id_.patch.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/_id_.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/controller.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/controller.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/index.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/index.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/index.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/index.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/index2.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/index2.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/index2.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/index2.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/index3.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/index3.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/index3.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/index3.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/index4.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/index4.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/index4.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/index4.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/index5.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/index5.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/index5.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/index5.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/index6.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/index6.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/index7.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/index7.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/journal/node/_nodeId/rollback.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/journal/node/_nodeId/rollback.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/line/query.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/line/query.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/lines/_id/start.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/lines/_id/start.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/lines/_id/stop.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/lines/_id/stop.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/lines/_id_.delete.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/lines/_id_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/lines/_id_.patch.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/dcw/lines/_id_.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/mes-artifacts/file.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/mes-artifacts/file.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/mes-hook-test.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/mes-hook-test.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/mes-test-read.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/mes-test-read.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/optimizations/_id/judge.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/optimizations/_id/judge.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/optimizations/_id/rollback.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/optimizations/_id/rollback.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/optimizations/_id/series.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/optimizations/_id/series.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/optimizations/_id_.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/optimizations/_id_.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/params/_id/read.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/params/_id/read.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/params/_id/write.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/params/_id/write.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/params/_id_.delete.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/params/_id_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/params/_id_.patch.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/params/_id_.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/products/_id_.delete.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/products/_id_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/products/_id_.patch.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/products/_id_.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/recipes/_id/apply.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/recipes/_id/apply.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/recipes/_id/mark-good.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/recipes/_id/mark-good.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/recipes/_id/revert.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/recipes/_id/revert.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/recipes/_id/rollback-good.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/recipes/_id/rollback-good.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/recipes/_id/versions.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/dcw/recipes/_id/versions.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/recipes/_id_.delete.mjs +18 -4
- package/.output/server/chunks/routes/api/workshop/dcw/recipes/_id_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/recipes/index.patch.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/recipes/index.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/runs/_id/close.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/runs/_id/close.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/runs/_id/data.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/runs/_id/data.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/runs/_id/rollback.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/runs/_id/rollback.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/templates/_key_.delete.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/templates/_key_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/templates/_key_.patch.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/templates/_key_.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/test-driver.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/dcw/test-driver.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/device-twins/_id/control.post.mjs +6 -3
- package/.output/server/chunks/routes/api/workshop/device-twins/_id/control.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/device-twins/_id/telemetry.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/device-twins/_id/telemetry.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/device-twins/_id_.delete.mjs +6 -3
- package/.output/server/chunks/routes/api/workshop/device-twins/_id_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/device-twins/_id_.patch.mjs +6 -3
- package/.output/server/chunks/routes/api/workshop/device-twins/_id_.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/charts/_id_.delete.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/eda/charts/_id_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/charts/_id_.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/eda/charts/_id_.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/charts/_id_.patch.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/eda/charts/_id_.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/commonality.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/eda/commonality.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/dashboards/_id_.delete.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/eda/dashboards/_id_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/dashboards/_id_.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/eda/dashboards/_id_.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/dashboards/_id_.patch.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/eda/dashboards/_id_.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/features/jobs.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/eda/features/jobs.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/features/run.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/eda/features/run.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/golden/_id_.delete.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/eda/golden/_id_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/golden/deviation.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/eda/golden/deviation.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/golden/single.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/eda/golden/single.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/index.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/eda/index.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/index.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/eda/index.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/index2.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/eda/index2.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/index2.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/eda/index2.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/index3.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/eda/index3.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/index3.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/eda/index3.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/index4.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/eda/index4.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/index4.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/eda/index4.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/index5.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/eda/index5.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/index5.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/eda/index5.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/index6.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/eda/index6.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/index6.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/eda/index6.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/index7.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/eda/index7.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/index7.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/eda/index7.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/index8.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/eda/index8.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/index8.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/eda/index8.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/ocap/_id_.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/eda/ocap/_id_.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/ocap/_id_.patch.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/eda/ocap/_id_.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/runs/_id/labels.patch.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/eda/runs/_id/labels.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/runs.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/eda/runs.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/spc/_id/recompute.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/eda/spc/_id/recompute.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/spc/_id_.delete.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/eda/spc/_id_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/spc/_id_.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/eda/spc/_id_.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/templates/_id_.delete.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/eda/templates/_id_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/templates/_id_.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/eda/templates/_id_.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/templates/_id_.patch.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/eda/templates/_id_.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/eda/vm/predict.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/eda/vm/predict.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/exp/confirmations/_id/decide.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/exp/confirmations/_id/decide.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/exp/index.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/exp/index.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/fs/dirs.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/fs/dirs.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/harnesses/_id/providers.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/harnesses/_id/providers.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/harnesses.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/harnesses.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/hitl/pending.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/hitl/pending.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/hitl/respond.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/hitl/respond.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/index.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/index.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/index.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index.put.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/index.put.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index10.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/index10.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index10.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/index10.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index11.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/index11.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index12.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/index12.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index13.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/index13.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index14.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/index14.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index15.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/index15.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index16.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/index16.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index2.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/index2.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index2.post.mjs +25 -10
- package/.output/server/chunks/routes/api/workshop/index2.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index3.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/index3.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index3.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/index3.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index4.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/index4.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index4.post.mjs +231 -5
- package/.output/server/chunks/routes/api/workshop/index4.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index5.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/index5.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index5.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/index5.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index6.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/index6.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index6.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/index6.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index7.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/index7.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index7.post.mjs +23 -7
- package/.output/server/chunks/routes/api/workshop/index7.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index8.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/index8.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index8.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/index8.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index9.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/index9.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index9.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/index9.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/mailbox/all.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/mailbox/all.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/mailbox.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/mailbox.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/memories/maintenance.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/memories/maintenance.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/mes/datasets.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/mes/datasets.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/mes/index.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/mes/index.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/mes/index.put.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/mes/index.put.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/mes/points.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/mes/points.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/mes/preview.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/mes/preview.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/mes/secrets/_ref_.delete.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/mes/secrets/_ref_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/notifications/read.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/notifications/read.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId/autofix.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId/autofix.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId/compile.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId/compile.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId/evidence.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId/evidence.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId/publish.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId/publish.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId/rules/_ruleId/approval-decision.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId/rules/_ruleId/approval-decision.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId/rules/_ruleId/approval.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId/rules/_ruleId/approval.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId/rules/_ruleId/transition.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId/rules/_ruleId/transition.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId/subgraph.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId/subgraph.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId/validate.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId/validate.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId_.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/ontology/drafts/_draftId_.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/ontology/export/_ontologyId_.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/ontology/export/_ontologyId_.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/ontology/index.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/ontology/index.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/ontology/scene.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/ontology/scene.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/ontology/traces/_ontologyId_.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/ontology/traces/_ontologyId_.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/ontology/versions/_ontologyId/compare.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/ontology/versions/_ontologyId/compare.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/ontology/versions/_ontologyId_.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/ontology/versions/_ontologyId_.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/optimization/bindings/_id_.delete.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/optimization/bindings/_id_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/optimization/capabilities.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/optimization/capabilities.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/optimization/index.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/optimization/index.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/optimization/index.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/optimization/index.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/optimization/index2.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/optimization/index2.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/optimization/profiles/_id/publish.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/optimization/profiles/_id/publish.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/optimization/recommendations/_id/crosscheck.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/optimization/recommendations/_id/crosscheck.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/optimization/recommendations/_id/dispatch.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/optimization/recommendations/_id/dispatch.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/optimization/solve.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/optimization/solve.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/plugins/_name/disable.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/plugins/_name/disable.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/plugins/_name/enable.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/plugins/_name/enable.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/plugins/index.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/plugins/index.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/process-model/datasets.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/process-model/datasets.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/process-model/eligibility.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/process-model/eligibility.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/process-model/experiments.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/process-model/experiments.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/process-model/index.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/process-model/index.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/process-model/specs/_id/publish.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/process-model/specs/_id/publish.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/process-model/train.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/process-model/train.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/runtime.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/runtime.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/scene/layouts/_channelId_.delete.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/scene/layouts/_channelId_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/scene/layouts/_channelId_.put.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/scene/layouts/_channelId_.put.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/scene/layouts.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/scene/layouts.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/schedules/_id/run.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/schedules/_id/run.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/schedules/_id/runs.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/schedules/_id/runs.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/schedules/_id_.delete.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/schedules/_id_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/schedules/_id_.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/schedules/_id_.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/schedules/_id_.patch.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/schedules/_id_.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/tasks/_id/complete.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/tasks/_id/complete.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/tasks/_id/dispatch.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/tasks/_id/dispatch.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/tasks/_id/index.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/tasks/_id/index.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/tasks/_id/reassign.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/tasks/_id/reassign.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/tasks/_id/reopen.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/tasks/_id/reopen.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/tasks/_id/report.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/tasks/_id/report.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/tasks/_id/retry.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/tasks/_id/retry.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/tasks/_id/supersede.post.mjs +43 -0
- package/.output/server/chunks/routes/api/workshop/tasks/_id/supersede.post.mjs.map +1 -0
- package/.output/server/chunks/routes/api/workshop/tasks/_id/update.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/tasks/_id/update.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/tasks/_id_.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/tasks/_id_.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/tasks.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/tasks.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/teams/_id/deploy.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/teams/_id/deploy.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/teams/_id/index.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/teams/_id/index.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/teams/_id/index.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/teams/_id/index.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/teams/_id/index.put.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/teams/_id/index.put.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/teams/_id/index2.get.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/teams/_id/index2.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/teams/_id/members/_agentId_.delete.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/teams/_id/members/_agentId_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/teams/_id_.delete.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/teams/_id_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/teams/_id_.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/teams/_id_.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/teams/_id_.patch.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/teams/_id_.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/tools/_name_.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/tools/_name_.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/tools/sync.post.mjs +4 -2
- package/.output/server/chunks/routes/api/workshop/tools/sync.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/users/me.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/users/me.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/users/register.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/users/register.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/workspaces/_id/channel-templates/_tplId_.post.mjs +5 -3
- package/.output/server/chunks/routes/api/workshop/workspaces/_id/channel-templates/_tplId_.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/workspaces/_id/channels/_channelId_.delete.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/workspaces/_id/channels/_channelId_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/workspaces/_id/channels/_channelId_.post.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/workspaces/_id/channels/_channelId_.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/workspaces/index.delete.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/workspaces/index.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/renderer.mjs +2 -2
- package/.output/server/chunks/virtual/entry.mjs +50 -32
- package/.output/server/chunks/virtual/precomputed.mjs +1 -1
- package/.output/server/index.mjs +3 -1
- package/.output/server/index.mjs.map +1 -1
- package/.output/server/node_modules/pg/esm/index.mjs +20 -0
- package/.output/server/node_modules/pg/lib/client.js +828 -0
- package/.output/server/node_modules/pg/lib/connection-parameters.js +184 -0
- package/.output/server/node_modules/pg/lib/connection.js +243 -0
- package/.output/server/node_modules/pg/lib/crypto/cert-signatures.js +122 -0
- package/.output/server/node_modules/pg/lib/crypto/sasl.js +262 -0
- package/.output/server/node_modules/pg/lib/crypto/utils.js +89 -0
- package/.output/server/node_modules/pg/lib/defaults.js +94 -0
- package/.output/server/node_modules/pg/lib/index.js +73 -0
- package/.output/server/node_modules/pg/lib/native/client.js +420 -0
- package/.output/server/node_modules/pg/lib/native/index.js +2 -0
- package/.output/server/node_modules/pg/lib/native/query.js +165 -0
- package/.output/server/node_modules/pg/lib/query.js +259 -0
- package/.output/server/node_modules/pg/lib/result.js +109 -0
- package/.output/server/node_modules/pg/lib/stream.js +83 -0
- package/.output/server/node_modules/pg/lib/type-overrides.js +35 -0
- package/.output/server/node_modules/pg/lib/utils.js +207 -0
- package/.output/server/node_modules/pg/package.json +76 -0
- package/.output/server/node_modules/pg-cloudflare/dist/empty.js +6 -0
- package/.output/server/node_modules/pg-cloudflare/package.json +39 -0
- package/.output/server/node_modules/pg-connection-string/index.js +237 -0
- package/.output/server/node_modules/pg-connection-string/package.json +52 -0
- package/.output/server/node_modules/pg-int8/index.js +100 -0
- package/.output/server/node_modules/pg-int8/package.json +24 -0
- package/.output/server/node_modules/pg-pool/index.js +517 -0
- package/.output/server/node_modules/pg-pool/package.json +51 -0
- package/.output/server/node_modules/pg-protocol/dist/buffer-reader.js +55 -0
- package/.output/server/node_modules/pg-protocol/dist/buffer-writer.js +104 -0
- package/.output/server/node_modules/pg-protocol/dist/index.js +15 -0
- package/.output/server/node_modules/pg-protocol/dist/messages.js +160 -0
- package/.output/server/node_modules/pg-protocol/dist/parser.js +325 -0
- package/.output/server/node_modules/pg-protocol/dist/serializer.js +196 -0
- package/.output/server/node_modules/pg-protocol/package.json +44 -0
- package/.output/server/node_modules/pg-types/index.js +47 -0
- package/.output/server/node_modules/pg-types/lib/arrayParser.js +11 -0
- package/.output/server/node_modules/pg-types/lib/binaryParsers.js +257 -0
- package/.output/server/node_modules/pg-types/lib/builtins.js +73 -0
- package/.output/server/node_modules/pg-types/lib/textParsers.js +215 -0
- package/.output/server/node_modules/pg-types/package.json +42 -0
- package/.output/server/node_modules/pgpass/lib/helper.js +233 -0
- package/.output/server/node_modules/pgpass/lib/index.js +23 -0
- package/.output/server/node_modules/pgpass/package.json +41 -0
- package/.output/server/node_modules/postgres-array/index.js +97 -0
- package/.output/server/node_modules/postgres-array/package.json +35 -0
- package/.output/server/node_modules/postgres-bytea/index.js +33 -0
- package/.output/server/node_modules/postgres-bytea/package.json +34 -0
- package/.output/server/node_modules/postgres-date/index.js +116 -0
- package/.output/server/node_modules/postgres-date/package.json +33 -0
- package/.output/server/node_modules/postgres-interval/index.js +126 -0
- package/.output/server/node_modules/postgres-interval/package.json +35 -0
- package/.output/server/node_modules/split2/index.js +141 -0
- package/.output/server/node_modules/split2/package.json +39 -0
- package/.output/server/node_modules/xtend/mutable.js +17 -0
- package/.output/server/node_modules/xtend/package.json +55 -0
- package/.output/server/package.json +15 -1
- package/README-zh.md +255 -992
- package/README.md +254 -1023
- package/app/components/logs/LogsEventTable.vue +36 -3
- package/app/components/logs/LogsManualModal.vue +23 -1
- package/app/components/logs/LogsPageHead.vue +56 -5
- package/app/components/workshop/town/components/TownAgentBindings.vue +16 -4
- package/app/components/workshop/town/components/TownAgentInspector.vue +1 -1
- package/app/components/workshop/town/components/TownRightRail.vue +1 -1
- package/app/composables/workshop/town/town-view-types.ts +2 -2
- package/app/composables/workshop/town/useTownAgentBindings.ts +3 -2
- package/app/composables/workshop/town/useTownRailData.ts +1 -1
- package/app/composables/workshop/useDcwStream.ts +5 -2
- package/app/composables/workshop/useOpsLog.ts +191 -191
- package/app/config/schema.ts +15 -1
- package/app/pages/logs/composables/useLogsManual.ts +71 -68
- package/app/pages/logs/index.vue +34 -1
- package/config.yml +212 -193
- package/docker-compose.yml +69 -63
- package/docs/cli.en.md +447 -447
- package/docs/cli.md +412 -412
- package/docs/plugins.en.md +641 -641
- package/docs/plugins.md +630 -630
- package/docs/sdk.en.md +964 -964
- package/docs/sdk.md +900 -900
- package/i18n/dicts/townView.json +3 -1
- package/i18n/locales/en.ts +3371 -3362
- package/i18n/locales/zh-CN.ts +3370 -3361
- package/mcp/aw-mcp-server.mjs +1 -1
- package/package.json +189 -187
- package/scripts/_audit/kill-acceptance-strays.mjs +47 -0
- package/scripts/_audit/proto-doc-broker-20261031.mjs +11 -0
- package/scripts/_audit/proto-doc-device-20261031.mjs +53 -0
- package/scripts/_audit/proto-doc-mqtt-20261031.mjs +32 -0
- package/scripts/_audit/run-full-acceptance-20261030.sh +82 -0
- package/scripts/api-live-e2e.mjs +91 -32
- package/scripts/e2e-agentteam-goal-closure.mjs +496 -0
- package/scripts/e2e-analysis-ledger.mjs +202 -0
- package/scripts/e2e-binding-modes-real.mjs +442 -0
- package/scripts/e2e-business-loop-real.mjs +391 -0
- package/scripts/e2e-core-bridges-matrix.mjs +303 -0
- package/scripts/e2e-dcw-halfopen-resilience.mjs +140 -0
- package/scripts/e2e-error-handling.mjs +190 -0
- package/scripts/e2e-golive-matrix.mjs +515 -0
- package/scripts/e2e-idd-results-ui.mjs +182 -175
- package/scripts/e2e-mes-mirror-real.mjs +427 -0
- package/scripts/e2e-model-loop-live.mjs +90 -54
- package/scripts/e2e-node-binding-3mode-real.mjs +110 -15
- package/scripts/e2e-node-binding-authz.mjs +41 -1
- package/scripts/e2e-optimizer-live.mjs +4 -0
- package/scripts/e2e-paper-paired-route.mjs +791 -0
- package/scripts/e2e-physical-effect-real.mjs +572 -0
- package/scripts/e2e-real-channel-mission.mjs +543 -0
- package/scripts/e2e-security-b0.mjs +280 -0
- package/scripts/e2e-security-b1.mjs +165 -0
- package/scripts/e2e-security-b2b5.mjs +280 -0
- package/scripts/live-demo-seed.mjs +157 -0
- package/scripts/onboarding/preflight.mjs +231 -0
- package/scripts/onboarding/provision-line.mjs +11 -1
- package/scripts/onboarding/verify-mirror.mjs +145 -0
- package/scripts/start.mjs +279 -250
- package/sdk/context.mjs +34 -1
- package/server/api/users/login.post.ts +3 -2
- package/server/api/users/register.post.ts +22 -21
- package/server/api/workshop/a2a/[agentId]/card/index.get.ts +86 -75
- package/server/api/workshop/agent-tools/approvals/index.get.ts +3 -1
- package/server/api/workshop/agent-tools/bindings/index.post.ts +38 -16
- package/server/api/workshop/analysis/index.post.ts +20 -3
- package/server/api/workshop/assets/devices/index.post.ts +55 -53
- package/server/api/workshop/channels/[id]/tasks/index.post.ts +2 -0
- package/server/api/workshop/channels/[id]/twin-profile.patch.ts +20 -1
- package/server/api/workshop/daq/[id]/ingest.post.ts +25 -1
- package/server/api/workshop/daq/index.post.ts +45 -1
- package/server/api/workshop/daq/storage/retention.put.ts +66 -0
- package/server/api/workshop/daq/storage/rollup.post.ts +28 -0
- package/server/api/workshop/daq/storage.get.ts +17 -0
- package/server/api/workshop/daq/templates/[key].delete.ts +2 -2
- package/server/api/workshop/daq/templates/[key].patch.ts +19 -19
- package/server/api/workshop/daq/templates/index.post.ts +18 -18
- package/server/api/workshop/dcw/[id]/write.post.ts +28 -27
- package/server/api/workshop/dcw/recipes/[id].delete.ts +21 -2
- package/server/api/workshop/device-twins/[id]/control.post.ts +23 -21
- package/server/api/workshop/device-twins/[id].delete.ts +3 -1
- package/server/api/workshop/device-twins/[id].patch.ts +31 -29
- package/server/api/workshop/ops-logs/index.post.ts +92 -69
- package/server/api/workshop/tasks/[id]/supersede.post.ts +28 -0
- package/server/middleware/00-security-headers.ts +8 -1
- package/server/middleware/01-rate-guard.ts +34 -6
- package/server/plugins/00-daq-credentials.ts +33 -0
- package/server/plugins/01-instance-guard.ts +49 -13
- package/server/plugins/aw-plugins.ts +4 -1
- package/server/plugins/backup.ts +268 -257
- package/server/plugins/daq.ts +40 -1
- package/server/plugins/dev-stability-guard.ts +4 -0
- package/server/plugins/error-ledger.ts +21 -0
- package/server/repositories/user.repository.ts +520 -507
- package/server/schemas/user.schema.ts +74 -74
- package/server/services/system-config/mutate.ts +9 -2
- package/server/services/system-config/secrets.ts +50 -0
- package/server/services/system-config/snapshot.ts +13 -2
- package/server/services/user.service.ts +277 -258
- package/server/services/workshop/agents/adapters/line-spawn.ts +148 -144
- package/server/services/workshop/agents/adapters/omp-rpc-client/start.ts +5 -1
- package/server/services/workshop/agents/agent-interface.ts +2 -0
- package/server/services/workshop/agents/base-agent.ts +3 -3
- package/server/services/workshop/agents/binding-authz.ts +7 -1
- package/server/services/workshop/agents/governance-harness-audit.ts +216 -0
- package/server/services/workshop/agents/host-tool-bridge/catalog.ts +1 -0
- package/server/services/workshop/agents/host-tool-bridge/dispatch.ts +428 -410
- package/server/services/workshop/agents/host-tool-bridge/per-agent.ts +17 -3
- package/server/services/workshop/agents/host-tool-bridge/tools/messaging.ts +46 -13
- package/server/services/workshop/agents/host-tool-bridge/tools/progress.ts +48 -6
- package/server/services/workshop/agents/host-tool-bridge/tools/tasks.ts +52 -14
- package/server/services/workshop/agents/host-tool-bridge/tools/team-delegation.ts +22 -1
- package/server/services/workshop/agents/host-tool-bridge/types.ts +1 -1
- package/server/services/workshop/agents/industrial/aml-job-tools.ts +6 -4
- package/server/services/workshop/agents/industrial/bench-approval-only.ts +117 -0
- package/server/services/workshop/agents/industrial/daq-tools.ts +79 -20
- package/server/services/workshop/agents/industrial/dcw-tools.ts +14 -1
- package/server/services/workshop/agents/industrial/fallback-hints.ts +31 -0
- package/server/services/workshop/agents/industrial/manual-approval.ts +2 -2
- package/server/services/workshop/agents/industrial/ops-tools.ts +72 -23
- package/server/services/workshop/agents/industrial/recipe-gate.ts +57 -29
- package/server/services/workshop/agents/industrial/recipe-propose-tools.ts +6 -4
- package/server/services/workshop/agents/industrial/tool-verify.ts +23 -3
- package/server/services/workshop/agents/mock-agent.ts +4 -0
- package/server/services/workshop/agents/node-bindings.repo.ts +8 -6
- package/server/services/workshop/agents/omp-agent/agentteam-audit.ts +147 -0
- package/server/services/workshop/agents/omp-agent/client.ts +1 -1
- package/server/services/workshop/agents/omp-agent/event-mapping.ts +21 -0
- package/server/services/workshop/agents/omp-agent/tools-steer.ts +100 -6
- package/server/services/workshop/agents/tool-approvals.ts +6 -4
- package/server/services/workshop/agents/tool-classes.ts +12 -0
- package/server/services/workshop/aml/dataset-builder.ts +4 -0
- package/server/services/workshop/aml/env-lease.ts +178 -148
- package/server/services/workshop/aml/model-registry.ts +16 -2
- package/server/services/workshop/bench-mode.ts +22 -0
- package/server/services/workshop/daq/alarm-notify.ts +122 -102
- package/server/services/workshop/daq/daq-controller/crud.ts +210 -210
- package/server/services/workshop/daq/daq-controller/driver-probe.ts +68 -67
- package/server/services/workshop/daq/daq-controller/frames.ts +5 -4
- package/server/services/workshop/daq/daq-controller/sweep-alarms.ts +214 -186
- package/server/services/workshop/daq/daq-controller/types.ts +5 -0
- package/server/services/workshop/daq/daq-node.ts +7 -0
- package/server/services/workshop/daq/daq-templates.ts +235 -225
- package/server/services/workshop/daq/drivers/modbus-tcp.ts +27 -16
- package/server/services/workshop/daq/field-group.ts +266 -0
- package/server/services/workshop/daq/infra-credentials.ts +201 -0
- package/server/services/workshop/daq/infra.ts +250 -229
- package/server/services/workshop/daq/ingest-policy.ts +80 -66
- package/server/services/workshop/daq/objectstore/index.ts +88 -88
- package/server/services/workshop/daq/storage/index.ts +157 -4
- package/server/services/workshop/daq/storage/retention.ts +142 -0
- package/server/services/workshop/daq/storage/sqlite.adapter.ts +16 -3
- package/server/services/workshop/daq/storage/timescale-rollup.ts +600 -0
- package/server/services/workshop/daq/storage/timescale.adapter.ts +46 -13
- package/server/services/workshop/daq/storage/tsdb-port.ts +120 -0
- package/server/services/workshop/db/chat-message.repo.ts +28 -0
- package/server/services/workshop/db/database/open.ts +6 -0
- package/server/services/workshop/db/database/rows.ts +2 -0
- package/server/services/workshop/db/database/schema.ts +8 -0
- package/server/services/workshop/db/database/seed.ts +6 -6
- package/server/services/workshop/db/schema.sql +7 -0
- package/server/services/workshop/db/task.repo.ts +8 -3
- package/server/services/workshop/dcw/dcw-controller/actuation.ts +7 -0
- package/server/services/workshop/dcw/dcw-controller/crud.ts +5 -0
- package/server/services/workshop/dcw/dcw-controller/helpers.ts +62 -61
- package/server/services/workshop/dcw/dcw-controller/recipes.ts +14 -8
- package/server/services/workshop/dcw/dcw-controller/state.ts +88 -71
- package/server/services/workshop/dcw/dcw-controller/write-audit.ts +1 -1
- package/server/services/workshop/dcw/dcw-controller/write.ts +225 -212
- package/server/services/workshop/dcw/dcw-node.ts +13 -1
- package/server/services/workshop/dcw/dcw-runtime.ts +2 -1
- package/server/services/workshop/dcw/drivers/mqtt.ts +4 -3
- package/server/services/workshop/dcw/mqtt-payload.ts +64 -0
- package/server/services/workshop/dcw/recipe-rollback-manager/lock.ts +1 -0
- package/server/services/workshop/eda/data-export.ts +275 -274
- package/server/services/workshop/json-store.mjs +143 -137
- package/server/services/workshop/mes/mes-controller.ts +9 -0
- package/server/services/workshop/mes/mes-hook.ts +28 -1
- package/server/services/workshop/net/ssrf.ts +83 -74
- package/server/services/workshop/ops/error-ledger.ts +209 -0
- package/server/services/workshop/optimization/profile-adopt.service.ts +28 -2
- package/server/services/workshop/plugins/host/init.mjs +21 -2
- package/server/services/workshop/plugins/host/reload.mjs +8 -1
- package/server/services/workshop/runtime/agent-runtime/harness-failure.ts +58 -0
- package/server/services/workshop/runtime/agent-runtime/message.ts +37 -2
- package/server/services/workshop/runtime/agent-runtime/state.ts +12 -2
- package/server/services/workshop/runtime/agent-runtime/types.ts +2 -0
- package/server/services/workshop/runtime/channel-runtime.ts +80 -1
- package/server/services/workshop/runtime/embedding-provider.ts +100 -83
- package/server/services/workshop/runtime/execution-mode.ts +8 -0
- package/server/services/workshop/runtime/manager/admin-channel.ts +19 -14
- package/server/services/workshop/runtime/manager/chat.ts +62 -2
- package/server/services/workshop/runtime/manager/contracts.ts +7 -0
- package/server/services/workshop/runtime/manager/helpers.ts +5 -2
- package/server/services/workshop/runtime/manager/runtime-observe.ts +1 -3
- package/server/services/workshop/runtime/manager/runtime-wiring.ts +18 -6
- package/server/services/workshop/runtime/manager/schedules.ts +7 -0
- package/server/services/workshop/runtime/manager/state.ts +16 -2
- package/server/services/workshop/runtime/manager/tasks.ts +34 -1
- package/server/services/workshop/runtime/manager/workspace.ts +1 -0
- package/server/services/workshop/runtime/scheduler-loop/rules.ts +17 -1
- package/server/services/workshop/runtime/scheduler-loop/tick.ts +31 -3
- package/server/services/workshop/runtime/task-engine/create.ts +15 -1
- package/server/services/workshop/runtime/task-engine/helpers.ts +2 -0
- package/server/services/workshop/runtime/task-engine/lifecycle.ts +68 -9
- package/server/services/workshop/settings.ts +35 -1
- package/server/services/workshop/types/task.ts +2 -0
- package/server/utils/asset-auth.ts +15 -0
- package/server/utils/request-ip.ts +29 -0
- package/server/utils/response.ts +3 -6
- package/shared/config/schema.json +171 -152
- package/shared/daq-protocol.ts +8 -0
- package/shared/dcw-protocol/catalog.ts +1 -0
- package/shared/dcw-protocol/closed-loop.ts +2 -0
- package/shared/dcw-protocol/line.ts +4 -1
- package/.output/public/_nuxt/B1SIgyrl.js +0 -1
- package/.output/public/_nuxt/BI9jj13f2.js +0 -2
- package/.output/public/_nuxt/CTGJHZ8X2.js +0 -1
- package/.output/public/_nuxt/DxDqd6T42.js +0 -16
- package/.output/public/_nuxt/builds/meta/593b65bd-cf1d-4b7f-a993-57e939c38f36.json +0 -1
- package/.output/public/_nuxt/logs.BkJPbR_K.css +0 -1
- package/.output/server/chunks/build/TownView-BWMDbosY.mjs.map +0 -1
- package/.output/server/chunks/build/_id_-BK-t8nRG.mjs.map +0 -1
- package/.output/server/chunks/build/_id_-CZPlPDm4.mjs.map +0 -1
- package/.output/server/chunks/build/analysis-p-dBkjoK.mjs.map +0 -1
- package/.output/server/chunks/build/daq-CdxcfY_G.mjs.map +0 -1
- package/.output/server/chunks/build/dcw-BlDQtS4q.mjs.map +0 -1
- package/.output/server/chunks/build/logs-pRb-TMWa.mjs.map +0 -1
- package/.output/server/chunks/build/operations-SMQrRAcr.mjs.map +0 -1
- package/.output/server/chunks/build/pages-DsMKUw7i.mjs.map +0 -1
- package/.output/server/chunks/build/town-B5aoiG98.mjs.map +0 -1
- package/.output/server/chunks/build/useDaqDetailNode-DeOsDxK5.mjs.map +0 -1
- package/.output/server/chunks/build/useDaqFilters-CctmO03p.mjs.map +0 -1
- package/.output/server/chunks/build/useDaqOptimizations-CmX_dpBc.mjs.map +0 -1
- package/.output/server/chunks/build/useDashboardData-NJ7rKxhx.mjs.map +0 -1
- package/.output/server/chunks/build/useDcwAddNode-DACVcEHs.mjs.map +0 -1
- package/.output/server/chunks/build/useDcwCards-SaiImIYQ.mjs.map +0 -1
- package/.output/server/chunks/build/useDcwDetailScope-DLOklSMO.mjs.map +0 -1
- package/.output/server/chunks/build/useDcwDetailTemplates-ClmIdZ40.mjs.map +0 -1
- package/.output/server/chunks/build/useDcwFilter-CPMyCltx.mjs.map +0 -1
- package/.output/server/chunks/build/useDcwLedger-0ie-0WTc.mjs.map +0 -1
- package/.output/server/chunks/build/useDcwLineMutations-DNxo66yM.mjs.map +0 -1
- package/.output/server/chunks/build/useDcwLineRun-CHskwscT.mjs.map +0 -1
- package/.output/server/chunks/build/useDcwParamApprovals-DtScUc-W.mjs.map +0 -1
- package/.output/server/chunks/build/useDcwProducts-BMaxzLu6.mjs.map +0 -1
- package/.output/server/chunks/build/useDcwQuery-TVU3Eo0M.mjs.map +0 -1
- package/.output/server/chunks/build/useDcwQuickActions-BREFmR9T.mjs.map +0 -1
- package/.output/server/chunks/build/useDcwRecipes-Bc9urA1N.mjs.map +0 -1
- package/.output/server/chunks/build/useDcwStream-Dir5ufAU.mjs.map +0 -1
- package/.output/server/chunks/build/useDcwTemplates-BzagZztS.mjs.map +0 -1
- package/.output/server/chunks/build/useDcwWrites-BROwTLCn.mjs.map +0 -1
- package/.output/server/chunks/build/useLogsManual-cVBZQ_Mt.mjs.map +0 -1
- package/.output/server/chunks/build/useLogsScope-aaPQeTRm.mjs.map +0 -1
|
@@ -29,7 +29,16 @@ export class TimescaleAdapter implements TsdbPort {
|
|
|
29
29
|
|
|
30
30
|
async init(): Promise<void> {
|
|
31
31
|
const mod = requirePg('pg') as typeof import('pg')
|
|
32
|
-
|
|
32
|
+
// 连接池/语句超时来自 daq.timescale.*(生产调优;异常查询不得长期占用连接)
|
|
33
|
+
const s = daqRuntimeSettings()
|
|
34
|
+
const timeoutMs = Math.max(1000, Math.min(300_000, Number(s.timescale.statementTimeoutMs)))
|
|
35
|
+
// pg 运行期支持 statement_timeout(连接参数),但 @types/pg 未声明 → 收窄后传入
|
|
36
|
+
const poolConfig = {
|
|
37
|
+
connectionString: this.url,
|
|
38
|
+
max: Math.max(1, Math.min(32, Number(s.timescale.poolMax))),
|
|
39
|
+
statement_timeout: timeoutMs,
|
|
40
|
+
} as unknown as import('pg').PoolConfig
|
|
41
|
+
this.pool = new mod.Pool(poolConfig)
|
|
33
42
|
await this.pool.query(`
|
|
34
43
|
CREATE TABLE IF NOT EXISTS daq_samples (
|
|
35
44
|
node_id text NOT NULL,
|
|
@@ -102,12 +111,13 @@ export class TimescaleAdapter implements TsdbPort {
|
|
|
102
111
|
}
|
|
103
112
|
|
|
104
113
|
private async sweepRetention(): Promise<void> {
|
|
105
|
-
|
|
114
|
+
// 2026-10-30 修复:门控此前错挂在样本保留期(retentionH)上;本函数只清帧,
|
|
115
|
+
// 应按帧保留期判定(0 = 永久保留帧,不清理)。
|
|
116
|
+
if (!this.pool || this.frameRetentionH <= 0) return
|
|
117
|
+
// 样本保留期由 TimescaleRollupStore 统一执行:它感知逐产线覆写(含"保留更久"的线),
|
|
118
|
+
// 而全局 drop_chunks 会按全局保留期整块丢弃,误删长保留产线的数据。
|
|
119
|
+
// 这里只保留帧元数据的全局清理(帧保留期不支持逐线覆写)。
|
|
106
120
|
try {
|
|
107
|
-
await this.pool.query(
|
|
108
|
-
`SELECT drop_chunks('daq_samples', older_than => now() - ($1 || ' hours')::interval)`,
|
|
109
|
-
[this.retentionH],
|
|
110
|
-
)
|
|
111
121
|
await this.pool.query(
|
|
112
122
|
`SELECT drop_chunks('daq_frames', older_than => now() - ($1 || ' hours')::interval)`,
|
|
113
123
|
[this.frameRetentionH],
|
|
@@ -146,12 +156,14 @@ export class TimescaleAdapter implements TsdbPort {
|
|
|
146
156
|
ON CONFLICT (node_id, ts) DO NOTHING
|
|
147
157
|
RETURNING node_id, ts`,
|
|
148
158
|
[col.node, col.ts, col.value, col.state, col.line, col.product, col.recipe, col.run, col.ingested],
|
|
149
|
-
) as { rows: Array<{ node_id: string, ts: string }> }
|
|
159
|
+
) as { rows: Array<{ node_id: string, ts: string | Date }> }
|
|
150
160
|
// 首写胜出:被忽略的键里,值/状态不同则计数(可观测,不静默更正)
|
|
151
|
-
|
|
161
|
+
// 2026-10-30 修复:pg 对 timestamptz RETURNING 回传 Date 对象(类型标注不改变运行时),
|
|
162
|
+
// 旧实现用 toISOString() 拼 key 恒不匹配 → 冲突快路径失效,每行多打一次 SELECT
|
|
163
|
+
// (写入热路径 N+1)。统一用 epoch ms 做 key,两侧行同源。
|
|
164
|
+
const insertedKeys = new Set(inserted.rows.map(r => `${r.node_id}\u0000${tsToMs(r.ts)}`))
|
|
152
165
|
for (const r of rows) {
|
|
153
|
-
|
|
154
|
-
if (insertedKeys.has(key)) continue
|
|
166
|
+
if (insertedKeys.has(`${r.nodeId}\u0000${r.tsMs}`)) continue
|
|
155
167
|
const prev = await this.pool.query('SELECT value, state FROM daq_samples WHERE node_id = $1 AND ts = $2', [r.nodeId, new Date(r.tsMs).toISOString()]) as { rows: Array<{ value: number, state: string }> }
|
|
156
168
|
const row = prev.rows[0]
|
|
157
169
|
if (row && (Math.abs(Number(row.value) - Number(r.value)) > 1e-9 || String(row.state) !== String(r.state))) this.correctionDropped++
|
|
@@ -252,6 +264,10 @@ export class TimescaleAdapter implements TsdbPort {
|
|
|
252
264
|
* 训练/导出在 Timescale 上退化为 query() 截断)。
|
|
253
265
|
* 语义与 sqlite.adapter 完全一致:稳定 ASC、游标严格大于 afterTs、每页限额、
|
|
254
266
|
* done=false 时 nextCursor = 本页最后 at。
|
|
267
|
+
* 2026-10-29:支持批次标签等值过滤(line/product/recipe/run;SQL 全静态参数化,
|
|
268
|
+
* 参数为 NULL 即不过滤该列;提供值即等值过滤,天然排除未打标 NULL 行)——
|
|
269
|
+
* 此前训练分页不过滤标签,在 Timescale 上会把窗口内全部样本当目标批次,
|
|
270
|
+
* 产品隔离退化为时间窗推断(串味隐患)。
|
|
255
271
|
*/
|
|
256
272
|
async queryTaggedPage(nodeId: string, q: import('./tsdb-port').TsdbPageQuery = {}): Promise<import('./tsdb-port').TsdbPage> {
|
|
257
273
|
if (!this.pool) return { nodeId, points: [], nextCursor: null, done: true }
|
|
@@ -259,14 +275,31 @@ export class TimescaleAdapter implements TsdbPort {
|
|
|
259
275
|
const from = Math.max(q.fromMs ?? 0, (q.afterTs ?? -1) + 1)
|
|
260
276
|
const to = q.toMs ?? Date.now()
|
|
261
277
|
const withState = q.withState !== false
|
|
262
|
-
const
|
|
278
|
+
const tagOf = (v: string | undefined): string | null => (v != null && String(v).trim() !== '' ? String(v) : null)
|
|
279
|
+
const args: unknown[] = [
|
|
280
|
+
nodeId, new Date(from).toISOString(), new Date(to).toISOString(),
|
|
281
|
+
tagOf(q.lineId), tagOf(q.productId), tagOf(q.recipeId), tagOf(q.runId), limit,
|
|
282
|
+
]
|
|
283
|
+
// 静态 SQL:占位符 $4..$7 为 NULL 时该列不过滤,提供值时等值过滤(NULL 行不匹配)
|
|
263
284
|
const rows = withState
|
|
264
285
|
? (await this.pool.query(
|
|
265
|
-
|
|
286
|
+
`SELECT ts, value, state, ingested_at FROM daq_samples
|
|
287
|
+
WHERE node_id = $1 AND ts >= $2 AND ts <= $3
|
|
288
|
+
AND ($4::text IS NULL OR line_id = $4)
|
|
289
|
+
AND ($5::text IS NULL OR product_id = $5)
|
|
290
|
+
AND ($6::text IS NULL OR recipe_id = $6)
|
|
291
|
+
AND ($7::text IS NULL OR run_id = $7)
|
|
292
|
+
ORDER BY ts ASC LIMIT $8`,
|
|
266
293
|
args,
|
|
267
294
|
)).rows
|
|
268
295
|
: (await this.pool.query(
|
|
269
|
-
|
|
296
|
+
`SELECT ts, value FROM daq_samples
|
|
297
|
+
WHERE node_id = $1 AND ts >= $2 AND ts <= $3
|
|
298
|
+
AND ($4::text IS NULL OR line_id = $4)
|
|
299
|
+
AND ($5::text IS NULL OR product_id = $5)
|
|
300
|
+
AND ($6::text IS NULL OR recipe_id = $6)
|
|
301
|
+
AND ($7::text IS NULL OR run_id = $7)
|
|
302
|
+
ORDER BY ts ASC LIMIT $8`,
|
|
270
303
|
args,
|
|
271
304
|
)).rows
|
|
272
305
|
const points = (rows as Array<{ ts: string, value: number, state?: string | null, ingested_at?: string | number | null }>).map(r => ({
|
|
@@ -75,6 +75,15 @@ export interface TsdbPageQuery {
|
|
|
75
75
|
limit?: number
|
|
76
76
|
/** 置 false 可省 state 列(默认 true) */
|
|
77
77
|
withState?: boolean
|
|
78
|
+
/**
|
|
79
|
+
* 批次标签过滤(2026-10-29):任一提供即按**等值**过滤(等值天然排除未打标 NULL 行)。
|
|
80
|
+
* 训练/导出等按批次隔离取数的调用方必须传三元组(line/product/recipe[+run]);
|
|
81
|
+
* 留空 = 纯时间窗原始分页(可用性水位等全量观测语义)。
|
|
82
|
+
*/
|
|
83
|
+
lineId?: string
|
|
84
|
+
productId?: string
|
|
85
|
+
recipeId?: string
|
|
86
|
+
runId?: string
|
|
78
87
|
}
|
|
79
88
|
|
|
80
89
|
export interface TsdbPage {
|
|
@@ -90,9 +99,104 @@ export interface TsdbStats {
|
|
|
90
99
|
correctionDropped: number
|
|
91
100
|
}
|
|
92
101
|
|
|
102
|
+
// ===== 按产线分表(生产布局)=====
|
|
103
|
+
|
|
104
|
+
/** 布局形态:single = 升级前的单表;per-line = 一产线一表(物理隔离 + 独立保留期) */
|
|
105
|
+
export type TsdbLayoutKind = 'single' | 'per-line'
|
|
106
|
+
|
|
107
|
+
/** 单条产线的物理表与保留策略 */
|
|
108
|
+
export interface TsdbLineTableInfo {
|
|
109
|
+
/** 空 = 未分配产线(哨兵行为 __unassigned__) */
|
|
110
|
+
lineId: string
|
|
111
|
+
samplesTable: string
|
|
112
|
+
framesTable?: string | null
|
|
113
|
+
rollupTable?: string | null
|
|
114
|
+
rawRetentionH: number
|
|
115
|
+
minuteRetentionH?: number | null
|
|
116
|
+
hourRetentionH?: number | null
|
|
117
|
+
/** 近似行数(pg_class.reltuples;SQLite 为 NULL) */
|
|
118
|
+
rows?: number | null
|
|
119
|
+
/** 物理占用字节(pg_total_relation_size) */
|
|
120
|
+
bytes?: number | null
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
/** 存储布局/保留期/rollup 水位(运维可见面;不含数据本身) */
|
|
124
|
+
export interface TsdbLayoutInfo {
|
|
125
|
+
backend: string
|
|
126
|
+
layout: TsdbLayoutKind
|
|
127
|
+
rawRetentionH: number
|
|
128
|
+
frameRetentionH: number
|
|
129
|
+
rollup: {
|
|
130
|
+
enabled: boolean
|
|
131
|
+
minuteRetentionH: number
|
|
132
|
+
/** 0 = 永久 */
|
|
133
|
+
hourRetentionH: number
|
|
134
|
+
/** key = `${lineId}|${resMs}`;value = 已聚合到的上界 epoch ms */
|
|
135
|
+
watermarks: Record<string, number>
|
|
136
|
+
}
|
|
137
|
+
lines: TsdbLineTableInfo[]
|
|
138
|
+
legacy?: { table: string, rows: number | null, bytes: number | null, migrated: boolean } | null
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
/** 历史查询(跨原始保留期自动走 rollup;起止时间必填) */
|
|
142
|
+
export interface TsdbHistoryQuery {
|
|
143
|
+
fromMs: number
|
|
144
|
+
toMs: number
|
|
145
|
+
/** 期望桶宽(≥100ms;1 分钟以上可命中 rollup) */
|
|
146
|
+
bucketMs: number
|
|
147
|
+
limit?: number
|
|
148
|
+
lineId?: string
|
|
149
|
+
productId?: string
|
|
150
|
+
recipeId?: string
|
|
151
|
+
runId?: string
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
export interface TsdbHistoryResult {
|
|
155
|
+
points: TsdbPoint[]
|
|
156
|
+
/** raw = 精确样本;minute/hour = 聚合历史;mixed = 边界两侧拼接 */
|
|
157
|
+
resolution: 'raw' | 'minute' | 'hour' | 'mixed'
|
|
158
|
+
/** 实际可查范围与说明(超出保留期必须显式说明,不得静默返回空) */
|
|
159
|
+
coverage: {
|
|
160
|
+
requestedFromMs: number
|
|
161
|
+
requestedToMs: number
|
|
162
|
+
/** 实际最早可查时刻(null = 无数据/未知) */
|
|
163
|
+
availableFromMs: number | null
|
|
164
|
+
/** 原始样本可用下界(该时刻之前只有聚合) */
|
|
165
|
+
rawFromMs: number
|
|
166
|
+
truncated: boolean
|
|
167
|
+
note: string
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
export interface TsdbRollupResult {
|
|
172
|
+
at: string
|
|
173
|
+
lines: number
|
|
174
|
+
minuteRows: number
|
|
175
|
+
hourRows: number
|
|
176
|
+
/** 因单次预算/窗口未闭合而留待下轮的水位说明 */
|
|
177
|
+
notes: string[]
|
|
178
|
+
}
|
|
179
|
+
|
|
180
|
+
export interface TsdbRetentionPatch {
|
|
181
|
+
rawRetentionH?: number | null
|
|
182
|
+
minuteRetentionH?: number | null
|
|
183
|
+
hourRetentionH?: number | null
|
|
184
|
+
}
|
|
185
|
+
|
|
186
|
+
/** 轻量保留期信息(Agent 工具输出用,不做任何统计扫描) */
|
|
187
|
+
export interface TsdbRetentionInfo {
|
|
188
|
+
rawRetentionH: number
|
|
189
|
+
rollupEnabled: boolean
|
|
190
|
+
rollupResolutions: number[]
|
|
191
|
+
}
|
|
192
|
+
|
|
93
193
|
export interface TsdbPort {
|
|
94
194
|
/** 后端标识(sqlite-emulated | timescale)——REST meta 直报前端 */
|
|
95
195
|
readonly backend: string
|
|
196
|
+
/** 布局形态(single | per-line;缺省 single) */
|
|
197
|
+
readonly layout?: TsdbLayoutKind
|
|
198
|
+
/** 单批建议行数(生产者攒批上限;缺省由调用方决定) */
|
|
199
|
+
readonly writeBatchHint?: number
|
|
96
200
|
init(): Promise<void>
|
|
97
201
|
writeSamples(rows: DaqSampleRow[]): Promise<void>
|
|
98
202
|
query(nodeId: string, opts: DaqQueryOpts): Promise<TsdbPoint[]>
|
|
@@ -108,6 +212,22 @@ export interface TsdbPort {
|
|
|
108
212
|
// ===== 多形态帧(v2:向量/图像;像素 blob 在对象存储,这里只存元数据+派生指标)=====
|
|
109
213
|
writeFrames(rows: DaqFrameRow[]): Promise<void>
|
|
110
214
|
queryFrames(nodeId: string, opts: DaqFrameQueryOpts): Promise<DaqFrameRecord[]>
|
|
215
|
+
// ===== 按产线分表后的运维面(可选实现:后端不支持时调用方降级)=====
|
|
216
|
+
/** 布局/保留期/rollup 水位 */
|
|
217
|
+
layoutInfo?(): Promise<TsdbLayoutInfo>
|
|
218
|
+
/** 轻量保留期信息(不扫表) */
|
|
219
|
+
retentionInfo?(): TsdbRetentionInfo
|
|
220
|
+
/**
|
|
221
|
+
* 历史查询:窗口早于原始保留期时自动改走聚合表。
|
|
222
|
+
* 未实现的后端由调用方退化为 query()/queryTagged()。
|
|
223
|
+
*/
|
|
224
|
+
queryHistory?(nodeId: string, q: TsdbHistoryQuery): Promise<TsdbHistoryResult>
|
|
225
|
+
/** 增量聚合(幂等:仅处理已闭合窗口;返回本轮处理量) */
|
|
226
|
+
runRollup?(): Promise<TsdbRollupResult>
|
|
227
|
+
/** 逐产线保留期覆写(null = 回到全局缺省) */
|
|
228
|
+
setLineRetention?(lineId: string, patch: TsdbRetentionPatch): Promise<void>
|
|
229
|
+
/** 立即执行一轮保留期清理(运维/测试;定时器本身仍按 30min 跑) */
|
|
230
|
+
sweepNow?(): Promise<void>
|
|
111
231
|
/** 释放底层连接池/句柄(rebuild 换池时由工厂调用;可选) */
|
|
112
232
|
close?(): Promise<void> | void
|
|
113
233
|
}
|
|
@@ -229,5 +229,33 @@ export function createChatMessageRepo(db: DatabaseSync) {
|
|
|
229
229
|
WHERE channel_id = ? AND target_agent_id = ? AND status IN ('pending', 'delivered')`,
|
|
230
230
|
).run(new Date().toISOString(), channelId, targetAgentId).changes ?? 0)
|
|
231
231
|
},
|
|
232
|
+
|
|
233
|
+
/** 崩溃恢复扫描(整改计划 2026-10-30 阶段2):pending 且 mailbox 未落库、到期可重试的投递 */
|
|
234
|
+
listRetryableDeliveries(nowIso: string, limit = 50): Array<{ id: string, chatMessageId: string, channelId: string, targetAgentId: string, attempts: number }> {
|
|
235
|
+
return db.prepare(
|
|
236
|
+
`SELECT id, chat_message_id AS chatMessageId, channel_id AS channelId, target_agent_id AS targetAgentId, attempts
|
|
237
|
+
FROM chat_deliveries
|
|
238
|
+
WHERE status = 'pending' AND mailbox_message_id IS NULL
|
|
239
|
+
AND (next_retry_at IS NULL OR next_retry_at <= ?)
|
|
240
|
+
ORDER BY created_at ASC LIMIT ?`,
|
|
241
|
+
).all(nowIso, limit) as unknown as Array<{ id: string, chatMessageId: string, channelId: string, targetAgentId: string, attempts: number }>
|
|
242
|
+
},
|
|
243
|
+
|
|
244
|
+
/** 记一次重试(claim + 退避排程);返回累计 attempts */
|
|
245
|
+
bumpDeliveryRetry(id: string, nextRetryAt: string): number {
|
|
246
|
+
const now = new Date().toISOString()
|
|
247
|
+
db.prepare(
|
|
248
|
+
`UPDATE chat_deliveries SET attempts = attempts + 1, next_retry_at = ?, claimed_at = ?, updated_at = ? WHERE id = ?`,
|
|
249
|
+
).run(nextRetryAt, now, now, id)
|
|
250
|
+
const row = db.prepare(`SELECT attempts FROM chat_deliveries WHERE id = ?`).get(id) as { attempts?: number } | undefined
|
|
251
|
+
return Number(row?.attempts ?? 0)
|
|
252
|
+
},
|
|
253
|
+
|
|
254
|
+
/** 重试超限转死信(failed;仅 pending 可转) */
|
|
255
|
+
markDeliveryDead(id: string, error: string): boolean {
|
|
256
|
+
return db.prepare(
|
|
257
|
+
`UPDATE chat_deliveries SET status = 'failed', error = ?, updated_at = ? WHERE id = ? AND status = 'pending'`,
|
|
258
|
+
).run(error, new Date().toISOString(), id).changes > 0
|
|
259
|
+
},
|
|
232
260
|
}
|
|
233
261
|
}
|
|
@@ -42,6 +42,12 @@ export function initWorkshopDb(db: DatabaseSync): void {
|
|
|
42
42
|
migrateAddColumn(db, 'channels', 'llm_json', 'TEXT NOT NULL DEFAULT \'\'')
|
|
43
43
|
// 派发路由理由(koda RouteDecision 借鉴):lead 派发留痕"为什么派给他",供审计与前端呈现
|
|
44
44
|
migrateAddColumn(db, 'tasks', 'route_reason', 'TEXT NOT NULL DEFAULT \'\'')
|
|
45
|
+
// 2026-10-30 子任务显式替代关系:FAILED/CANCELED 分支被 replacement 覆盖后不再阻塞父 Goal 收口
|
|
46
|
+
migrateAddColumn(db, 'tasks', 'superseded_by_task_id', 'TEXT')
|
|
47
|
+
// 2026-10-30 chat 投递崩溃恢复:pending 且 mailbox 未落库的投递由补偿器退避重投(阶段2)
|
|
48
|
+
migrateAddColumn(db, 'chat_deliveries', 'attempts', 'INTEGER NOT NULL DEFAULT 0')
|
|
49
|
+
migrateAddColumn(db, 'chat_deliveries', 'next_retry_at', 'TEXT')
|
|
50
|
+
migrateAddColumn(db, 'chat_deliveries', 'claimed_at', 'TEXT')
|
|
45
51
|
// v10:模板可见性列(既有库补列;默认 private,仅属主可见)
|
|
46
52
|
migrateAddColumn(db, 'agents', 'visibility', 'TEXT NOT NULL DEFAULT \'private\'')
|
|
47
53
|
migrateAddColumn(db, 'teams', 'visibility', 'TEXT NOT NULL DEFAULT \'private\'')
|
|
@@ -322,6 +322,8 @@ export interface TaskRow {
|
|
|
322
322
|
sourceChatDeliveryId: string | null
|
|
323
323
|
closeReason: string | null
|
|
324
324
|
deadlineAt: string | null
|
|
325
|
+
/** 显式替代关系:本任务(FAILED/CANCELED)被 replacement 覆盖 */
|
|
326
|
+
supersededByTaskId?: string | null
|
|
325
327
|
/** 执行交接代次(§5.1;每次重分配 +1) */
|
|
326
328
|
assignmentGeneration: number
|
|
327
329
|
/** 当前执行租约(§5.1/§5.2;旧 worker 迟到事件据此丢弃) */
|
|
@@ -83,6 +83,8 @@ CREATE TABLE IF NOT EXISTS tasks (
|
|
|
83
83
|
source_chat_delivery_id TEXT,
|
|
84
84
|
close_reason TEXT,
|
|
85
85
|
deadline_at TEXT,
|
|
86
|
+
-- 显式替代关系:FAILED/CANCELED 分支被 replacement 覆盖后仍保留失败事实,但不再阻塞父任务收口
|
|
87
|
+
superseded_by_task_id TEXT,
|
|
86
88
|
-- 执行交接栅栏(§2.1/§5.1):每次新分配/重分配 generation+1 并换新 lease;
|
|
87
89
|
-- worker 的 message/artifact/progress/complete/failed 事件携带 generation+lease,
|
|
88
90
|
-- 与当前值不符的迟到事件被丢弃,避免旧 worker 覆盖重分配后的新执行结果。
|
|
@@ -460,10 +462,16 @@ CREATE TABLE IF NOT EXISTS chat_deliveries (
|
|
|
460
462
|
mailbox_message_id TEXT,
|
|
461
463
|
status TEXT NOT NULL DEFAULT 'pending', -- pending|delivered|consumed|failed|cancelled
|
|
462
464
|
error TEXT NOT NULL DEFAULT '',
|
|
465
|
+
-- 崩溃恢复(整改计划 2026-10-30 阶段2):pending 且 mailbox 未落库的投递由补偿器重投;
|
|
466
|
+
-- attempts 退避,超限转 failed 死信;mailbox 已落库的 pending(第二窗口)按确定性消息 id 去重,不重复投递
|
|
467
|
+
attempts INTEGER NOT NULL DEFAULT 0,
|
|
468
|
+
next_retry_at TEXT,
|
|
469
|
+
claimed_at TEXT,
|
|
463
470
|
created_at TEXT NOT NULL,
|
|
464
471
|
updated_at TEXT NOT NULL,
|
|
465
472
|
UNIQUE(chat_message_id, target_agent_id)
|
|
466
473
|
);
|
|
474
|
+
CREATE INDEX IF NOT EXISTS idx_chat_deliveries_retry ON chat_deliveries(status, next_retry_at);
|
|
467
475
|
CREATE INDEX IF NOT EXISTS idx_chat_deliveries_message ON chat_deliveries(chat_message_id);
|
|
468
476
|
CREATE INDEX IF NOT EXISTS idx_chat_deliveries_agent ON chat_deliveries(target_agent_id, status);
|
|
469
477
|
-- Agent 回复关联链热路径:agentReplyToChat 按 mailboxMessageId 反查群聊来源
|
|
@@ -48,7 +48,7 @@ export const DEFAULT_CHANNEL_TEMPLATES: Array<{
|
|
|
48
48
|
|
|
49
49
|
## 团队分工(每位成员按此定位协作)
|
|
50
50
|
- 生产主管(lead):理解用户优化目标 → 拆解为「数据分析」与「工艺调整」子任务并派发 → 复核成员结论(必须带数据证据)→ 汇总汇报;不直接操作节点,协调跨成员信息(如把数据分析师的越限发现转给工艺工程师处置)。
|
|
51
|
-
- 工艺工程师(worker):持有数控节点授权 —— 用 daq_query 取证 → 判定设定-响应关系 →
|
|
51
|
+
- 工艺工程师(worker):持有数控节点授权 —— 用 daq_query 取证 → 判定设定-响应关系 → 参数调整一律走配方链路:在「安全量程 ∩ 配方窗口」内定小步幅候选(单变量调整),recipe_trial 整批试验,达标后 recipe_update 固化、recipe_apply 整批下发,劣化用 recipe_rollback(dispatch=true) 统一回退;手动确认模式先说明理由等用户批准;调整后等待热惯性响应再复测。
|
|
52
52
|
- 数据分析师(worker):持有数采节点授权 —— 用 daq_query 获取时序数据(支持按产品/配方/时间窗过滤),输出趋势/均值/极值/越限统计与工况判读(区分设定-响应滞后与真实异常);发现越限或异常趋势第一时间用 send_message_to_agent 通报 lead 与工艺工程师。
|
|
53
53
|
协作规则:引用数值必带单位与时间窗;结论不确定时先补数据再下判断;所有阶段性结论沉淀为任务交付物。
|
|
54
54
|
|
|
@@ -56,7 +56,7 @@ export const DEFAULT_CHANNEL_TEMPLATES: Array<{
|
|
|
56
56
|
数据先行(先看数再动手)→ 窗口内小步幅(单次 ≤ 量程 2%)→ 单变量调整 → 复测闭环(调整后等待工艺响应再评估,不连续大幅调整)→ 异常先判读再行动 → 结论必附数据证据。任何成员不得越权操作未绑定节点。`,
|
|
57
57
|
members: [
|
|
58
58
|
{ templateId: 'tpl-default-lead', role: 'lead' },
|
|
59
|
-
{ inline: { name: '工艺工程师', harness: 'omp', config: { rpcMode: 'rpc', systemPromptPrefix: '你是光学薄膜涂布产线的工艺工程师,精通烘箱多段温控与涂层质量的关联。操作数控节点的标准流程:my_industrial_nodes 理解节点 → daq_query 取证 →
|
|
59
|
+
{ inline: { name: '工艺工程师', harness: 'omp', config: { rpcMode: 'rpc', systemPromptPrefix: '你是光学薄膜涂布产线的工艺工程师,精通烘箱多段温控与涂层质量的关联。操作数控节点的标准流程:my_industrial_nodes 理解节点 → daq_query 取证 → 在配方窗口内定小步幅候选(单变量)→ recipe_trial 整批试验 → 等待热惯性后复测,达标 recipe_update 固化并 recipe_apply 整批下发,劣化 recipe_rollback(dispatch=true) 统一回退。手动确认模式下发前必须说明理由。结论一律引用带单位与时间窗的数据。' } }, role: 'worker' },
|
|
60
60
|
{ inline: { name: '数据分析师', harness: 'omp', config: { rpcMode: 'rpc', systemPromptPrefix: '你是光学薄膜涂布产线的数据分析师,擅长时序数据判读与工况诊断。用 daq_query 获取授权数采节点数据,输出趋势/统计/越限分析,判读时结合同产线数控设定考虑设定-响应滞后;发现越限或异常趋势立即通报 lead 与工艺工程师。结论一律引用具体数值。' } }, role: 'worker' },
|
|
61
61
|
],
|
|
62
62
|
},
|
|
@@ -78,7 +78,7 @@ export const DEFAULT_CHANNEL_TEMPLATES: Array<{
|
|
|
78
78
|
数据先行 → 窗口内小步幅(单次 ≤ 量程 2%)→ 单变量调整(温度与转速禁止同时调)→ 复测闭环 → 压力异常优先判读(滤网堵塞倾向 vs 温度耦合 vs 真实波动)→ 结论必附数据证据。任何成员不得越权操作未绑定节点。`,
|
|
79
79
|
members: [
|
|
80
80
|
{ templateId: 'tpl-default-lead', role: 'lead' },
|
|
81
|
-
{ inline: { name: '工艺工程师', harness: 'omp', config: { rpcMode: 'rpc', systemPromptPrefix: '
|
|
81
|
+
{ inline: { name: '工艺工程师', harness: 'omp', config: { rpcMode: 'rpc', systemPromptPrefix: '你是薄膜挤出流延产线的工艺工程师,精通熔体压力/温度耦合控制与流延质量。操作数控节点走配方链路:my_industrial_nodes → daq_query 取证 → recipe_trial 窗口内小步幅整批试验(温度与转速禁同调,单变量)→ 等响应后复测,达标 recipe_update 固化并 recipe_apply 整批下发,劣化 recipe_rollback(dispatch=true) 统一回退。结论引用带单位与时间窗的数据。' } }, role: 'worker' },
|
|
82
82
|
{ inline: { name: '数据分析师', harness: 'omp', config: { rpcMode: 'rpc', systemPromptPrefix: '你是薄膜挤出流延产线的数据分析师,擅长熔体压力/温度时序判读。用 daq_query 输出趋势/统计/越限分析,识别基线漂移与周期波动;结合同线数控设定考虑耦合与滞后;异常立即通报 lead 与工艺工程师。结论引用具体数值。' } }, role: 'worker' },
|
|
83
83
|
],
|
|
84
84
|
},
|
|
@@ -129,15 +129,15 @@ export const DEFAULT_CHANNEL_TEMPLATES: Array<{
|
|
|
129
129
|
- 生产主管(lead):统一调配 —— 把 goal 拆解为「数据分析」「知识调优」「参数调整」子任务并派发(worker 缺节点权限时,用 team_grant_nodes 把 lead 已绑定的节点授予对应 worker,或在 dispatch_task 里带 grant_node_ids 随任务授予;只授予自己绑定的节点);复核成员结论(必须带数据证据);复测劣化时决策回退(指示工艺工程师 dcw_rollback / 配方回退);对拿不准的现象先查知识库(若已启用)。
|
|
130
130
|
- 数据分析师(worker):**持续读数** —— 按固定节拍(每批次或每 5 分钟)daq_query 拉取授权数采节点时窗数据,滑动窗口对比输出趋势/均值/越限统计与工况判读;异常第一时间通报 lead、工艺工程师与知识调优工程师。
|
|
131
131
|
- 知识调优工程师(worker):**知识↔数据 → 调优方案** —— 用 kb_agent(mode=sync) 检索知识库中本场景的机理知识与历史经验(检索词带产线/产品/关键物理量),结合数据分析师的判读结论,产出带知识依据的调优方案(参数/方向/步幅/预期响应,引用知识条目与数据);知识库未启用或检索为空时退化为纯数据驱动建议并说明。收口后用 kb_agent(mode=async) 沉淀「知识↔调整↔响应」经验入库。
|
|
132
|
-
- 工艺工程师(worker):持有数控节点授权 —— daq_query 取证 →
|
|
132
|
+
- 工艺工程师(worker):持有数控节点授权 —— daq_query 取证 → 按调优方案转成配方候选,在「安全量程 ∩ 配方窗口 ∩ 单步限幅」内 recipe_trial 整批试验(单变量小步幅);manual 模式节点先说明理由等用户批准;调整后等工艺惯性响应再复测;复测劣化立即 dcw_rollback 回退本次调整并通报 lead。
|
|
133
133
|
|
|
134
134
|
## 作业纪律
|
|
135
|
-
数据先行 → 知识增强(检索在动手前)→ **产线上下文先行**(频道已绑定产线时,开工先用 line_context 读取绑定产线全景:运行状态/活动批次/当前配方与参数窗口 —— 频道绑定=只读授权,日志/配方史全员可查,写操作仍需节点授权)→ **参数变更一律走配方链路**:多参数候选 → recipe_trial 整批试验(一次带上所有要改的参数,**不写配方版本**;同线节拍 ≥5 分钟)→ 等工艺惯性后复测判读 → 有进步/达标 **recipe_update 固化**(同一配方 id,版本+1,更新而非新建)→ 需要正式落地用 recipe_apply 整批下发;无进步/劣化 **recipe_rollback(dispatch=true) 统一回退**(定义回退+PLC 整批恢复)→ 复测闭环 →
|
|
135
|
+
数据先行 → 知识增强(检索在动手前)→ **产线上下文先行**(频道已绑定产线时,开工先用 line_context 读取绑定产线全景:运行状态/活动批次/当前配方与参数窗口 —— 频道绑定=只读授权,日志/配方史全员可查,写操作仍需节点授权)→ **参数变更一律走配方链路**:多参数候选 → recipe_trial 整批试验(一次带上所有要改的参数,**不写配方版本**;同线节拍 ≥5 分钟)→ 等工艺惯性后复测判读 → 有进步/达标 **recipe_update 固化**(同一配方 id,版本+1,更新而非新建)→ 需要正式落地用 recipe_apply 整批下发;无进步/劣化 **recipe_rollback(dispatch=true) 统一回退**(定义回退+PLC 整批恢复)→ 复测闭环 → 结论必附带单位与时间窗的数据证据;优化闭环内禁用逐参数直调(直写工具已禁用,防单参数震荡;AML 探索模式经 optimization_explore 的小步激励除外);知识闭环 = 检索 → 增强 → 试验 → 判读 → 固化/回退 → 沉淀;不得操作未授权节点;治理审批与硬约束被拒时按指引降步重试,不绕行。`,
|
|
136
136
|
members: [
|
|
137
137
|
{ inline: { name: '生产主管', harness: 'omp', config: { rpcMode: 'rpc', role: 'lead', systemPromptPrefix: '你是通用闭环优化团队的生产主管(lead),统一调配三人(数据分析师/知识调优工程师/工艺工程师):把用户 goal 拆解为「数据分析」「知识调优」「参数调整」子任务并用 dispatch_task 派发(可带 grant_node_ids 随任务把你自己已绑定的节点授权给 worker,或用 team_grant_nodes 执行中授予;只能授予自己绑定的节点);复核成员结论(必须带数据证据);优化动作一律走配方链路(trial 试验 → 判读 → update 固化 / 统一回退),复测指标劣化时立即指示工艺工程师 recipe_rollback(dispatch=true) 统一回退后再调整方向;频道绑定的产线只优化其当前活动配方,不新建配方 id;若知识库已启用,开工前先用 kb_agent(mode=sync) 检索场景相关数据分析与物理机理,收口后用 kb_agent(mode=async) 沉淀本次经验(可交知识调优工程师执行)。' } }, role: 'lead' },
|
|
138
138
|
{ inline: { name: '数据分析师', harness: 'omp', config: { rpcMode: 'rpc', systemPromptPrefix: '你是通用闭环优化团队的数据分析师,负责持续读数与工况判读:按固定节拍(每批次或每 5 分钟,以任务要求为准)用 daq_query 拉取授权数采节点数据(按批次/时间窗),做滑动窗口对比(当前窗 vs 基线窗),输出趋势/均值/极值/越限统计;结合数控设定考虑设定-响应滞后;发现越限或异常趋势立即用 send_message_to_agent 通报 lead、工艺工程师与知识调优工程师。结论一律引用具体数值与时间窗。' } }, role: 'worker' },
|
|
139
139
|
{ inline: { name: '知识调优工程师', harness: 'omp', config: { rpcMode: 'rpc', systemPromptPrefix: '你是通用闭环优化团队的知识调优工程师,把「知识库经验」与「数据分析结论」转化为可执行调优方案:先用 kb_agent(mode=sync) 检索知识库中本场景的机理知识与历史经验(检索词带产线/产品/关键物理量);结合数据分析师的最新判读,产出带知识依据的调优方案(调哪个参数/方向/步幅/预期响应/依据哪条知识,引用知识条目与数据证据);知识库未启用或检索为空时退化为纯数据驱动建议并明确说明;方案交工艺工程师治理下发(或经 lead 授权后自行 param_control 小步验证);复测有效则用 kb_agent(mode=async) 把「知识↔调整↔响应」经验沉淀入库(异步提交后无需等待);复测劣化则立即建议回退并同步 lead。' } }, role: 'worker' },
|
|
140
|
-
{ inline: { name: '工艺工程师', harness: 'omp', config: { rpcMode: 'rpc', systemPromptPrefix: '你是通用闭环优化团队的工艺工程师,按知识调优工程师的方案走配方链路执行:my_industrial_nodes 确认授权 → daq_query 取证 → 把方案转成 recipe_trial(多参数候选整批试验,一次带上所有要改的参数,带 hypothesis 声明依据;不写配方版本)→ 等待工艺惯性后 daq_query 复测 → 有进步/达标用 recipe_update 把候选值固化进配方(同 id 版本+1),需要正式落地用 recipe_apply 整批下发;无进步/劣化用 recipe_rollback(dispatch=true)统一回退(定义回退+PLC 整批恢复)
|
|
140
|
+
{ inline: { name: '工艺工程师', harness: 'omp', config: { rpcMode: 'rpc', systemPromptPrefix: '你是通用闭环优化团队的工艺工程师,按知识调优工程师的方案走配方链路执行:my_industrial_nodes 确认授权 → daq_query 取证 → 把方案转成 recipe_trial(多参数候选整批试验,一次带上所有要改的参数,带 hypothesis 声明依据;不写配方版本)→ 等待工艺惯性后 daq_query 复测 → 有进步/达标用 recipe_update 把候选值固化进配方(同 id 版本+1),需要正式落地用 recipe_apply 整批下发;无进步/劣化用 recipe_rollback(dispatch=true)统一回退(定义回退+PLC 整批恢复)。优化闭环内禁用逐参数直调(直写工具已禁用,防震荡)。你的节点授权可能由 lead 在派发时或执行中授予(权限变化以 my_industrial_nodes 实时查询为准)。manual 模式节点下发前说明理由等批准。结论一律引用带单位与时间窗的数据。' } }, role: 'worker' },
|
|
141
141
|
],
|
|
142
142
|
},
|
|
143
143
|
{
|
|
@@ -81,6 +81,8 @@ CREATE TABLE IF NOT EXISTS tasks (
|
|
|
81
81
|
source_chat_delivery_id TEXT,
|
|
82
82
|
close_reason TEXT,
|
|
83
83
|
deadline_at TEXT,
|
|
84
|
+
-- 显式替代关系:FAILED/CANCELED 分支被 replacement 覆盖后仍保留失败事实,但不再阻塞父任务收口
|
|
85
|
+
superseded_by_task_id TEXT,
|
|
84
86
|
assignment_generation INTEGER NOT NULL DEFAULT 0, -- 执行交接代次(重分配 +1)
|
|
85
87
|
execution_lease_id TEXT, -- 当前执行租约 id(旧 worker 迟到事件据此丢弃)
|
|
86
88
|
execution_lease_agent_id TEXT, -- 租约持有者
|
|
@@ -243,10 +245,15 @@ CREATE TABLE IF NOT EXISTS chat_deliveries (
|
|
|
243
245
|
mailbox_message_id TEXT,
|
|
244
246
|
status TEXT NOT NULL DEFAULT 'pending', -- pending|delivered|consumed|failed|cancelled
|
|
245
247
|
error TEXT NOT NULL DEFAULT '',
|
|
248
|
+
-- 崩溃恢复(整改计划 2026-10-30 阶段2):pending 且 mailbox 未落库由补偿器重投;超限转 failed 死信
|
|
249
|
+
attempts INTEGER NOT NULL DEFAULT 0,
|
|
250
|
+
next_retry_at TEXT,
|
|
251
|
+
claimed_at TEXT,
|
|
246
252
|
created_at TEXT NOT NULL,
|
|
247
253
|
updated_at TEXT NOT NULL,
|
|
248
254
|
UNIQUE(chat_message_id, target_agent_id)
|
|
249
255
|
);
|
|
256
|
+
CREATE INDEX IF NOT EXISTS idx_chat_deliveries_retry ON chat_deliveries(status, next_retry_at);
|
|
250
257
|
CREATE INDEX IF NOT EXISTS idx_chat_deliveries_message ON chat_deliveries(chat_message_id);
|
|
251
258
|
CREATE INDEX IF NOT EXISTS idx_chat_deliveries_agent ON chat_deliveries(target_agent_id, status);
|
|
252
259
|
-- Agent 回复关联链热路径:按 mailboxMessageId 反查群聊来源
|
|
@@ -7,7 +7,7 @@ import type { DatabaseSync } from 'node:sqlite'
|
|
|
7
7
|
import type { TaskRow } from './database'
|
|
8
8
|
|
|
9
9
|
const COLS
|
|
10
|
-
= 'id, channel_id AS channelId, parent_id AS parentId, root_queue_seq AS rootQueueSeq, assignee_id AS assigneeId, creator_id AS creatorId, title, description, state, progress, retry_count AS retryCount, artifacts_json AS artifactsJson, history_json AS historyJson, route_reason AS routeReason, source_chat_message_id AS sourceChatMessageId, source_chat_delivery_id AS sourceChatDeliveryId, close_reason AS closeReason, deadline_at AS deadlineAt, assignment_generation AS assignmentGeneration, execution_lease_id AS executionLeaseId, execution_lease_agent_id AS executionLeaseAgentId, execution_lease_started_at AS executionLeaseStartedAt, execution_lease_revoked_at AS executionLeaseRevokedAt, created_at AS createdAt, updated_at AS updatedAt'
|
|
10
|
+
= 'id, channel_id AS channelId, parent_id AS parentId, root_queue_seq AS rootQueueSeq, assignee_id AS assigneeId, creator_id AS creatorId, title, description, state, progress, retry_count AS retryCount, artifacts_json AS artifactsJson, history_json AS historyJson, route_reason AS routeReason, source_chat_message_id AS sourceChatMessageId, source_chat_delivery_id AS sourceChatDeliveryId, close_reason AS closeReason, deadline_at AS deadlineAt, superseded_by_task_id AS supersededByTaskId, assignment_generation AS assignmentGeneration, execution_lease_id AS executionLeaseId, execution_lease_agent_id AS executionLeaseAgentId, execution_lease_started_at AS executionLeaseStartedAt, execution_lease_revoked_at AS executionLeaseRevokedAt, created_at AS createdAt, updated_at AS updatedAt'
|
|
11
11
|
|
|
12
12
|
const NON_TERMINAL_STATES = `'SUBMITTED', 'ASSIGNED', 'WORKING', 'WAITING'`
|
|
13
13
|
|
|
@@ -29,6 +29,7 @@ export interface TaskCreateInput {
|
|
|
29
29
|
sourceChatDeliveryId?: string | null
|
|
30
30
|
closeReason?: string | null
|
|
31
31
|
deadlineAt?: string | null
|
|
32
|
+
supersededByTaskId?: string | null
|
|
32
33
|
assignmentGeneration?: number
|
|
33
34
|
executionLeaseId?: string | null
|
|
34
35
|
executionLeaseAgentId?: string | null
|
|
@@ -51,6 +52,7 @@ export interface TaskPatch {
|
|
|
51
52
|
sourceChatDeliveryId?: string | null
|
|
52
53
|
closeReason?: string | null
|
|
53
54
|
deadlineAt?: string | null
|
|
55
|
+
supersededByTaskId?: string | null
|
|
54
56
|
assignmentGeneration?: number
|
|
55
57
|
executionLeaseId?: string | null
|
|
56
58
|
executionLeaseAgentId?: string | null
|
|
@@ -76,6 +78,7 @@ export interface TaskMetaRow {
|
|
|
76
78
|
sourceChatDeliveryId: string | null
|
|
77
79
|
closeReason: string | null
|
|
78
80
|
deadlineAt: string | null
|
|
81
|
+
supersededByTaskId: string | null
|
|
79
82
|
assignmentGeneration: number
|
|
80
83
|
executionLeaseId: string | null
|
|
81
84
|
executionLeaseAgentId: string | null
|
|
@@ -131,12 +134,12 @@ export function createTaskRepo(db: DatabaseSync) {
|
|
|
131
134
|
`SELECT ${COLS} FROM tasks WHERE state IN (${NON_TERMINAL_STATES}) ORDER BY createdAt ASC, rowid ASC`,
|
|
132
135
|
)
|
|
133
136
|
const META_COLS
|
|
134
|
-
= 'id, channel_id AS channelId, parent_id AS parentId, root_queue_seq AS rootQueueSeq, assignee_id AS assigneeId, creator_id AS creatorId, title, description, state, progress, retry_count AS retryCount, route_reason AS routeReason, source_chat_message_id AS sourceChatMessageId, source_chat_delivery_id AS sourceChatDeliveryId, close_reason AS closeReason, deadline_at AS deadlineAt, assignment_generation AS assignmentGeneration, execution_lease_id AS executionLeaseId, execution_lease_agent_id AS executionLeaseAgentId, execution_lease_started_at AS executionLeaseStartedAt, execution_lease_revoked_at AS executionLeaseRevokedAt, created_at AS createdAt, updated_at AS updatedAt'
|
|
137
|
+
= 'id, channel_id AS channelId, parent_id AS parentId, root_queue_seq AS rootQueueSeq, assignee_id AS assigneeId, creator_id AS creatorId, title, description, state, progress, retry_count AS retryCount, route_reason AS routeReason, source_chat_message_id AS sourceChatMessageId, source_chat_delivery_id AS sourceChatDeliveryId, close_reason AS closeReason, deadline_at AS deadlineAt, superseded_by_task_id AS supersededByTaskId, assignment_generation AS assignmentGeneration, execution_lease_id AS executionLeaseId, execution_lease_agent_id AS executionLeaseAgentId, execution_lease_started_at AS executionLeaseStartedAt, execution_lease_revoked_at AS executionLeaseRevokedAt, created_at AS createdAt, updated_at AS updatedAt'
|
|
135
138
|
const selectByChannelMeta = db.prepare(`SELECT ${META_COLS} FROM tasks WHERE channel_id = ? ORDER BY COALESCE(root_queue_seq, 2147483647) ASC, created_at ASC, rowid ASC`)
|
|
136
139
|
const selectByChannelAssigneeMeta = db.prepare(`SELECT ${META_COLS} FROM tasks WHERE channel_id = ? AND assignee_id = ? ORDER BY created_at ASC, rowid ASC`)
|
|
137
140
|
const selectChildrenMeta = db.prepare(`SELECT ${META_COLS} FROM tasks WHERE channel_id = ? AND parent_id = ? ORDER BY created_at ASC, rowid ASC`)
|
|
138
141
|
const updateStmt = db.prepare(
|
|
139
|
-
`UPDATE tasks SET parent_id = ?, assignee_id = ?, creator_id = ?, title = ?, description = ?, state = ?, progress = ?, retry_count = ?, artifacts_json = ?, history_json = ?, source_chat_message_id = ?, source_chat_delivery_id = ?, close_reason = ?, deadline_at = ?, assignment_generation = ?, execution_lease_id = ?, execution_lease_agent_id = ?, execution_lease_started_at = ?, execution_lease_revoked_at = ?, updated_at = ? WHERE id = ?`,
|
|
142
|
+
`UPDATE tasks SET parent_id = ?, assignee_id = ?, creator_id = ?, title = ?, description = ?, state = ?, progress = ?, retry_count = ?, artifacts_json = ?, history_json = ?, source_chat_message_id = ?, source_chat_delivery_id = ?, close_reason = ?, deadline_at = ?, superseded_by_task_id = ?, assignment_generation = ?, execution_lease_id = ?, execution_lease_agent_id = ?, execution_lease_started_at = ?, execution_lease_revoked_at = ?, updated_at = ? WHERE id = ?`,
|
|
140
143
|
)
|
|
141
144
|
|
|
142
145
|
const buildRow = (input: TaskCreateInput, rootQueueSeq: number | null): TaskRow => {
|
|
@@ -272,6 +275,7 @@ export function createTaskRepo(db: DatabaseSync) {
|
|
|
272
275
|
sourceChatDeliveryId: patch.sourceChatDeliveryId !== undefined ? patch.sourceChatDeliveryId : current.sourceChatDeliveryId,
|
|
273
276
|
closeReason: patch.closeReason !== undefined ? patch.closeReason : current.closeReason,
|
|
274
277
|
deadlineAt: patch.deadlineAt !== undefined ? patch.deadlineAt : current.deadlineAt,
|
|
278
|
+
supersededByTaskId: patch.supersededByTaskId !== undefined ? patch.supersededByTaskId : current.supersededByTaskId,
|
|
275
279
|
assignmentGeneration: patch.assignmentGeneration ?? current.assignmentGeneration,
|
|
276
280
|
executionLeaseId: patch.executionLeaseId !== undefined ? patch.executionLeaseId : current.executionLeaseId,
|
|
277
281
|
executionLeaseAgentId: patch.executionLeaseAgentId !== undefined ? patch.executionLeaseAgentId : current.executionLeaseAgentId,
|
|
@@ -282,6 +286,7 @@ export function createTaskRepo(db: DatabaseSync) {
|
|
|
282
286
|
updateStmt.run(
|
|
283
287
|
next.parentId, next.assigneeId, next.creatorId, next.title, next.description, next.state, next.progress, next.retryCount,
|
|
284
288
|
next.artifactsJson, next.historyJson, next.sourceChatMessageId, next.sourceChatDeliveryId, next.closeReason, next.deadlineAt,
|
|
289
|
+
next.supersededByTaskId ?? null,
|
|
285
290
|
next.assignmentGeneration, next.executionLeaseId, next.executionLeaseAgentId, next.executionLeaseStartedAt, next.executionLeaseRevokedAt,
|
|
286
291
|
next.updatedAt, id,
|
|
287
292
|
)
|
|
@@ -12,6 +12,7 @@ import { findDcwTemplate } from '../dcw-templates'
|
|
|
12
12
|
import { getDcwRecipeRepo } from '../dcw-recipe.repo'
|
|
13
13
|
import { randomUUID } from 'node:crypto'
|
|
14
14
|
import { resolveDcwDriver } from '../drivers'
|
|
15
|
+
import { beginGovernanceDriverCall, endGovernanceDriverCall } from '../../agents/governance-harness-audit'
|
|
15
16
|
|
|
16
17
|
/** 驱动未显式上报 ack 时的旧口径归一(ok+回读→设备证实;ok 无回读→链路受理;失败→未证实) */
|
|
17
18
|
function normalizeAck(outcome: { ok: boolean, readback: number | null, ack?: WriteAckLevel }): WriteAckLevel {
|
|
@@ -32,6 +33,11 @@ export abstract class DcwControllerActuation extends DcwControllerState {
|
|
|
32
33
|
const t = node.transform
|
|
33
34
|
const plcValue = inverseTransform(eng, t)
|
|
34
35
|
const plcTolerance = Math.max(tolerance, 1e-9) / (t?.kind === 'linear' && Math.abs(t.scale ?? 1) > 0 ? Math.abs(t.scale!) : 1)
|
|
36
|
+
const driverAudit = beginGovernanceDriverCall({
|
|
37
|
+
node_id: node.id, line_id: node.lineId ?? null, driver: node.driver,
|
|
38
|
+
requested_value: eng, plc_value: plcValue, tolerance: plcTolerance,
|
|
39
|
+
recipe_run_id: recipeRunId, driver_config: node.driverConfig,
|
|
40
|
+
})
|
|
35
41
|
let outcome: { ok: boolean, message: string, raw: number | null, readback: number | null, ack?: WriteAckLevel }
|
|
36
42
|
try {
|
|
37
43
|
outcome = await resolveDcwDriver(node.driver).write({
|
|
@@ -87,6 +93,7 @@ export abstract class DcwControllerActuation extends DcwControllerState {
|
|
|
87
93
|
at,
|
|
88
94
|
})
|
|
89
95
|
this.emitNodeChanged('updated', node)
|
|
96
|
+
endGovernanceDriverCall(driverAudit, outcome)
|
|
90
97
|
return outcome
|
|
91
98
|
}
|
|
92
99
|
|
|
@@ -13,6 +13,7 @@ import { getDcwLineRepo } from '../dcw-line.repo'
|
|
|
13
13
|
import { getDcwParamRepo } from '../param-map.repo'
|
|
14
14
|
import { requireDcwDriverKind } from '../drivers'
|
|
15
15
|
import { assertDriverRawRange } from '../drivers/shared'
|
|
16
|
+
import { validateMqttWriteConfig } from '../mqtt-payload'
|
|
16
17
|
import { randomUUID } from 'node:crypto'
|
|
17
18
|
|
|
18
19
|
function normalizeStepLimitInput(value: unknown): number | null | undefined {
|
|
@@ -60,6 +61,9 @@ export abstract class DcwControllerCrud extends DcwControllerControl {
|
|
|
60
61
|
// S15:Modbus 原始量程必须在配置期可被 dataType 表示(越界运行期会拒绝写,但提前拦更好)
|
|
61
62
|
try {
|
|
62
63
|
assertDriverRawRange(node.driver, node.driverConfig)
|
|
64
|
+
// MQTT 下发载荷模板配置期校验:jsonTemplate 必须可渲染且渲染后是合法 JSON
|
|
65
|
+
// (坏模板若留到写入期才炸,一次下发失败会占用写锁/留下半套审计)
|
|
66
|
+
if (node.driver === 'mqtt') validateMqttWriteConfig(node.driverConfig)
|
|
63
67
|
}
|
|
64
68
|
catch (err) {
|
|
65
69
|
throw new AppError(400, ErrorCodes.VALIDATION_ERROR, err instanceof Error ? err.message : String(err))
|
|
@@ -96,6 +100,7 @@ export abstract class DcwControllerCrud extends DcwControllerControl {
|
|
|
96
100
|
// S15:配置期校验(失败回滚 driver/driverConfig,避免内存里留下半改状态)
|
|
97
101
|
try {
|
|
98
102
|
assertDriverRawRange(node.driver, node.driverConfig)
|
|
103
|
+
if (node.driver === 'mqtt') validateMqttWriteConfig(node.driverConfig)
|
|
99
104
|
}
|
|
100
105
|
catch (err) {
|
|
101
106
|
node.driver = prevDriver
|