agentworkshop 0.7.54 → 0.7.59
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.json +2418 -2184
- package/.env.example +1 -0
- package/.output/.AgentWorkShop/prompts/host-tools.json +2418 -2184
- package/.output/.AgentWorkShop/schema.json +140 -138
- package/.output/nitro.json +1 -1
- package/.output/public/_nuxt/2pU5BiaQ2.js +1 -0
- package/.output/public/_nuxt/{BdF9OAZq2.js → 4RTUlYvj2.js} +1 -1
- package/.output/public/_nuxt/AuthGate.Cvsc4atp.css +1 -0
- package/.output/public/_nuxt/B-Y_rsfn.js +106 -0
- package/.output/public/_nuxt/{BhcbvVOa2.js → B02cxZz72.js} +1 -1
- package/.output/public/_nuxt/{DNZmwhSD.js → B03LfmKR.js} +1 -1
- package/.output/public/_nuxt/{BZtgVXC5.js → B4R5CHkk.js} +3 -3
- package/.output/public/_nuxt/{B3zB6K6m.js → BAqtRt0q.js} +1 -1
- package/.output/public/_nuxt/BDC8YDyc.js +1 -0
- package/.output/public/_nuxt/{uY58gQqR2.js → BG7XSX-S2.js} +1 -1
- package/.output/public/_nuxt/{DUribplv2.js → BH30ZaLl2.js} +1 -1
- package/.output/public/_nuxt/BKHd_sKD2.js +47 -0
- package/.output/public/_nuxt/{S9rLP7_v.js → BMUEVeOK.js} +1 -1
- package/.output/public/_nuxt/{D9TpiWjt.js → BMZ1d25O.js} +1 -1
- package/.output/public/_nuxt/{DFhyhDGa2.js → BNl_jGa12.js} +1 -1
- package/.output/public/_nuxt/{BxoaZc_U2.js → BSG-4Ecg2.js} +1 -1
- package/.output/public/_nuxt/{BPqXOlYX.js → BU7WuuKh.js} +1 -1
- package/.output/public/_nuxt/{BP8TgWo02.js → BVH9j8dQ2.js} +1 -1
- package/.output/public/_nuxt/{C7_F68I7.js → BXKCB3rS.js} +1 -1
- package/.output/public/_nuxt/{DioKmYyB2.js → Bd85nb9X2.js} +1 -1
- package/.output/public/_nuxt/BhrnGVGz.js +1 -0
- package/.output/public/_nuxt/BikIgp9R.js +1 -0
- package/.output/public/_nuxt/Bj7BcqHn.js +1 -0
- package/.output/public/_nuxt/BkGqyjWm.js +3 -0
- package/.output/public/_nuxt/{CP0Nep9S.js → BkO2MZZU.js} +1 -1
- package/.output/public/_nuxt/{KXjvpIk2.js → Bn1N3mJv.js} +1 -1
- package/.output/public/_nuxt/Br2LgfbH2.js +13 -0
- package/.output/public/_nuxt/BrFF_9742.js +1 -0
- package/.output/public/_nuxt/{tKxYgsf-.js → BtDBBofS.js} +1 -1
- package/.output/public/_nuxt/BtNT93vm2.js +1 -0
- package/.output/public/_nuxt/{BxWvUgMz2.js → BtYg4aGR2.js} +1 -1
- package/.output/public/_nuxt/BuVH9MB-.js +1 -0
- package/.output/public/_nuxt/BupBjt6B2.js +1 -0
- package/.output/public/_nuxt/{D2Sm-GTk2.js → ByvqxkcN.js} +1 -1
- package/.output/public/_nuxt/{CzlUIbK32.js → BzKT-ne_2.js} +3 -3
- package/.output/public/_nuxt/{vPfDYgvR.js → C4X_Z1lA.js} +1 -1
- package/.output/public/_nuxt/C5wBzGO7.js +1 -0
- package/.output/public/_nuxt/{BgnhB8r5.js → C8uaVABF.js} +1 -1
- package/.output/public/_nuxt/{BmTzcKJg2.js → C98jxVaK.js} +1 -1
- package/.output/public/_nuxt/CBATzTUf.js +13 -0
- package/.output/public/_nuxt/{B9rIcCX12.js → CCCq9H7D2.js} +1 -1
- package/.output/public/_nuxt/{CvGYm7w8.js → CEP4UrDv.js} +1 -1
- package/.output/public/_nuxt/CHyzK5m52.js +1 -0
- package/.output/public/_nuxt/CIPKYgrH2.js +1 -0
- package/.output/public/_nuxt/{Drq9iy6V.js → CIz7SM4H.js} +1 -1
- package/.output/public/_nuxt/{PY2GW_3N2.js → CKE_kTL92.js} +1 -1
- package/.output/public/_nuxt/CPSHP_EI.js +1 -0
- package/.output/public/_nuxt/{DCPhrNWR2.js → CSyIwYcJ2.js} +1 -1
- package/.output/public/_nuxt/{v55S8LnT.js → CW1HGp5X.js} +1 -1
- package/.output/public/_nuxt/{Yv9YItEX2.js → CYGkUj5M2.js} +1 -1
- package/.output/public/_nuxt/{DppqsiPC.js → CZ0Gt81h.js} +2 -2
- package/.output/public/_nuxt/{Cg8Pgbeu.js → CZkTlW93.js} +2 -2
- package/.output/public/_nuxt/{Dz2SLIde.js → CZwDnomB.js} +1 -1
- package/.output/public/_nuxt/{DnAn2LgG.js → CZyYdpqZ2.js} +1 -1
- package/.output/public/_nuxt/{BJhsCisg2.js → CaBVMdqG2.js} +1 -1
- package/.output/public/_nuxt/{CMWyj56j.js → CeDkXWCz.js} +1 -1
- package/.output/public/_nuxt/{C-y_g11k.js → Cl19UD7U.js} +1 -1
- package/.output/public/_nuxt/ClEbKcuS.js +1 -0
- package/.output/public/_nuxt/{B4ujjkUI.js → ClrkV0C4.js} +1 -1
- package/.output/public/_nuxt/{nT-bgxvf.js → CmTqFlYZ.js} +1 -1
- package/.output/public/_nuxt/{deBcbALe2.js → CnF6dXcZ2.js} +1 -1
- package/.output/public/_nuxt/CoGETbe-2.js +1 -0
- package/.output/public/_nuxt/{Dq0emNZi2.js → CuRtzvsa2.js} +1 -1
- package/.output/public/_nuxt/{CBUIODly2.js → Cv_H1gOM2.js} +1 -1
- package/.output/public/_nuxt/{Cmp8PMrA.js → CxLxiOGV.js} +1 -1
- package/.output/public/_nuxt/{MbT4wXb62.js → D1Xw30Dj2.js} +1 -1
- package/.output/public/_nuxt/{DJyNDnag.js → D5hI4Fhu.js} +1 -1
- package/.output/public/_nuxt/D5i2ofVw2.js +1 -0
- package/.output/public/_nuxt/D6XGn5vM.js +2 -0
- package/.output/public/_nuxt/{DjefmmJu.js → D6c5ppqB.js} +1 -1
- package/.output/public/_nuxt/D8VQGThE.js +28 -0
- package/.output/public/_nuxt/{DmzmgYHb2.js → DBwuADr82.js} +1 -1
- package/.output/public/_nuxt/{DO9xaI9a.js → DEhjFhZ2.js} +1 -1
- package/.output/public/_nuxt/{DuPM4HXw.js → DIDbAMv5.js} +1 -1
- package/.output/public/_nuxt/{CfLUvgr32.js → DJZzthKt2.js} +1 -1
- package/.output/public/_nuxt/{Bpkm4W5P.js → DKhRushG.js} +1 -1
- package/.output/public/_nuxt/DLAFNaPf.js +1 -0
- package/.output/public/_nuxt/{DffgG8vT.js → DMPpE41S2.js} +1 -1
- package/.output/public/_nuxt/{CPeZNE4S2.js → DTZO6WMs2.js} +1 -1
- package/.output/public/_nuxt/{Dk6Zf3-L.js → DTx_DtUo.js} +1 -1
- package/.output/public/_nuxt/DYtV50yi2.js +1 -0
- package/.output/public/_nuxt/{CV61ysvv.js → DctCtJq7.js} +1 -1
- package/.output/public/_nuxt/{xX7ccjDl2.js → DelESEcl2.js} +1 -1
- package/.output/public/_nuxt/DfqRQSFn.js +19 -0
- package/.output/public/_nuxt/{BFZIll912.js → DgldLfCZ2.js} +1 -1
- package/.output/public/_nuxt/Dmgqz2np.js +16 -0
- package/.output/public/_nuxt/Do0dCE8C2.js +1 -0
- package/.output/public/_nuxt/DraEWn4N2.js +1 -0
- package/.output/public/_nuxt/{Bwc6lt2X.js → Drhta6gr.js} +2 -2
- package/.output/public/_nuxt/{Cn6ihm8j.js → Du0zf-d3.js} +1 -1
- package/.output/public/_nuxt/{DqtnqNgL2.js → DvUt9uMt2.js} +1 -1
- package/.output/public/_nuxt/{C5cf3T4d.js → Dxo1GW5U.js} +1 -1
- package/.output/public/_nuxt/{Ca3iDJwu2.js → Dy-V8OEW2.js} +9 -9
- package/.output/public/_nuxt/{BWowAAJb.js → DyMgrV29.js} +1 -1
- package/.output/public/_nuxt/{Dm_iKz8k2.js → Eo2BYEIo2.js} +1 -1
- package/.output/public/_nuxt/{aV6YPjg02.js → H7Rbu32y2.js} +1 -1
- package/.output/public/_nuxt/{vXrNItas2.js → KS3KQF222.js} +1 -1
- package/.output/public/_nuxt/{BjWbbMHs.js → M58CVYnv.js} +1 -1
- package/.output/public/_nuxt/M6NcguDO.js +1 -0
- package/.output/public/_nuxt/{CtPNnATm2.js → MEwEMEMl2.js} +6 -6
- package/.output/public/_nuxt/MW-V7IIP2.js +1 -0
- package/.output/public/_nuxt/{tq3HbWr9.js → P0EcfD3j.js} +1 -1
- package/.output/public/_nuxt/{CHrErv1E.js → TjGWqrHo.js} +1 -1
- package/.output/public/_nuxt/{TownView.Xt1yygrh.css → TownView.BuMpDRkf.css} +1 -1
- package/.output/public/_nuxt/VVomhVqu2.js +1 -0
- package/.output/public/_nuxt/{QHo9mN-M2.js → WYqAa0r52.js} +1 -1
- package/.output/public/_nuxt/YDs3mbQu2.js +1 -0
- package/.output/public/_nuxt/{Dep0Hc9w2.js → Z3MSTcdu2.js} +1 -1
- package/.output/public/_nuxt/_id_.DOqX4gwB.css +1 -0
- package/.output/public/_nuxt/_vR_sc7t.js +24 -0
- package/.output/public/_nuxt/{aml.-czpKIs8.css → aml.BeFTP6_M.css} +1 -1
- package/.output/public/_nuxt/bTFhJlrI2.js +1 -0
- package/.output/public/_nuxt/builds/latest.json +1 -1
- package/.output/public/_nuxt/builds/meta/92fd7e2e-18f2-45c3-8588-d93004dda6e3.json +1 -0
- package/.output/public/_nuxt/daq.YQas76du.css +1 -0
- package/.output/public/_nuxt/dcw.UIcWRyIS.css +1 -0
- package/.output/public/_nuxt/{default.CyLpQD1C.css → default.8ac6QU28.css} +1 -1
- package/.output/public/_nuxt/{entry.JdEG3KJg.css → entry.BHNNQA9H.css} +1 -1
- package/.output/public/_nuxt/{D-Xyb3DA.js → gbaq2UOO.js} +1 -1
- package/.output/public/_nuxt/goF_oZHF.js +2 -0
- package/.output/public/_nuxt/h46i74oE.js +14 -0
- package/.output/public/_nuxt/{Cpm5JYv4.js → iZa330UY.js} +1 -1
- package/.output/public/_nuxt/logs.Bf65Kw17.css +1 -0
- package/.output/public/_nuxt/lyJsJl_G.js +1 -0
- package/.output/public/_nuxt/o-G6YtmK2.js +1 -0
- package/.output/public/_nuxt/{BkfA3BbD.js → pNy4V4kd.js} +1 -1
- package/.output/public/_nuxt/{C_sjV3Ee.js → pncSmP5n.js} +1 -1
- package/.output/public/_nuxt/{DVOR2pWg.js → qIQFsHtF.js} +1 -1
- package/.output/public/_nuxt/town.DFotRPod.css +1 -0
- package/.output/public/_nuxt/workshop.BX2YeO0g.css +1 -0
- package/.output/public/_nuxt/yPlLXpEw2.js +1 -0
- package/.output/public/_nuxt/ylowSquM2.js +1 -0
- package/.output/public/_nuxt/{Da0h_6VA.js → zGDAozGA.js} +4 -4
- package/.output/server/chunks/_/binding-authz.mjs +8 -4
- package/.output/server/chunks/_/binding-authz.mjs.map +1 -1
- package/.output/server/chunks/_/character-asset.repo.mjs +1 -1
- package/.output/server/chunks/_/entity.mjs +1 -1
- package/.output/server/chunks/_/host-bindings.mjs +22 -2
- package/.output/server/chunks/_/host-bindings.mjs.map +1 -1
- package/.output/server/chunks/_/nitro.mjs +13085 -8339
- package/.output/server/chunks/_/nitro.mjs.map +1 -1
- package/.output/server/chunks/_/scene-layout.repo.mjs +1 -1
- package/.output/server/chunks/_/user.schema.mjs +5 -1
- package/.output/server/chunks/_/user.schema.mjs.map +1 -1
- package/.output/server/chunks/build/{workshop-BDqWzJtr.mjs → AuthGate-DDPYswkA.mjs} +22 -327
- package/.output/server/chunks/build/AuthGate-DDPYswkA.mjs.map +1 -0
- package/.output/server/chunks/build/FormItemContext-4ORSzhWv.mjs +1 -1
- package/.output/server/chunks/build/{OmpTerminalPanel-mk31gVzA.mjs → OmpTerminalPanel-DZ2wHMS1.mjs} +4 -4
- package/.output/server/chunks/build/{OmpTerminalPanel-mk31gVzA.mjs.map → OmpTerminalPanel-DZ2wHMS1.mjs.map} +1 -1
- package/.output/server/chunks/build/{TownView-Bf5VFYFj.mjs → TownView-CZbFn6mO.mjs} +216 -107
- package/.output/server/chunks/build/TownView-CZbFn6mO.mjs.map +1 -0
- package/.output/server/chunks/build/{_id_-WF20tjqT.mjs → _id_-CCVhpJtj.mjs} +7 -6
- package/.output/server/chunks/build/_id_-CCVhpJtj.mjs.map +1 -0
- package/.output/server/chunks/build/{_id_-CuUmVPRg.mjs → _id_-Df2pgsAq.mjs} +521 -94
- package/.output/server/chunks/build/_id_-Df2pgsAq.mjs.map +1 -0
- package/.output/server/chunks/build/{_wsId_-BUIKB68b.mjs → _wsId_-CJqF-hmP.mjs} +19 -19
- package/.output/server/chunks/build/{_wsId_-BUIKB68b.mjs.map → _wsId_-CJqF-hmP.mjs.map} +1 -1
- package/.output/server/chunks/build/{agents-DqICy4AL.mjs → agents-BTsbna5H.mjs} +13 -13
- package/.output/server/chunks/build/{agents-DqICy4AL.mjs.map → agents-BTsbna5H.mjs.map} +1 -1
- package/.output/server/chunks/build/{aml-C55iuLn-.mjs → aml-BBKfWto1.mjs} +28 -27
- package/.output/server/chunks/build/aml-BBKfWto1.mjs.map +1 -0
- package/.output/server/chunks/build/api-B4Om0mEc.mjs +2 -1
- package/.output/server/chunks/build/api-B4Om0mEc.mjs.map +1 -1
- package/.output/server/chunks/build/{card-CUSocE9p.mjs → card-DJOYGuVH.mjs} +4 -4
- package/.output/server/chunks/build/{card-CUSocE9p.mjs.map → card-DJOYGuVH.mjs.map} +1 -1
- package/.output/server/chunks/build/{channel-templates-gdCLajKy.mjs → channel-templates-BPKJ8e4l.mjs} +9 -9
- package/.output/server/chunks/build/{channel-templates-gdCLajKy.mjs.map → channel-templates-BPKJ8e4l.mjs.map} +1 -1
- package/.output/server/chunks/build/constants-HPHJvjne.mjs +2 -1
- package/.output/server/chunks/build/constants-HPHJvjne.mjs.map +1 -1
- package/.output/server/chunks/build/{daq-D0kLscVr.mjs → daq-Cz7TaUAM.mjs} +38 -29
- package/.output/server/chunks/build/daq-Cz7TaUAM.mjs.map +1 -0
- package/.output/server/chunks/build/{dcw-DuhEyu7S.mjs → dcw-EhjJpVQM.mjs} +45 -20
- package/.output/server/chunks/build/dcw-EhjJpVQM.mjs.map +1 -0
- package/.output/server/chunks/build/{default-aFGiNebw.mjs → default-DweMY872.mjs} +260 -48
- package/.output/server/chunks/build/{default-aFGiNebw.mjs.map → default-DweMY872.mjs.map} +1 -1
- package/.output/server/chunks/build/{dropdown-Yev6knaj.mjs → dropdown-CIsqbX4P.mjs} +2 -2
- package/.output/server/chunks/build/{dropdown-Yev6knaj.mjs.map → dropdown-CIsqbX4P.mjs.map} +1 -1
- package/.output/server/chunks/build/{dropdown-KdKWCS5K.mjs → dropdown-CV9GW3z9.mjs} +5 -5
- package/.output/server/chunks/build/{dropdown-KdKWCS5K.mjs.map → dropdown-CV9GW3z9.mjs.map} +1 -1
- package/.output/server/chunks/build/{form-uSlNqIAV.mjs → form-cs_RcfGx.mjs} +4 -5
- package/.output/server/chunks/build/{form-uSlNqIAV.mjs.map → form-cs_RcfGx.mjs.map} +1 -1
- package/.output/server/chunks/{_/SearchOutlined.mjs → build/input-CobQ5LJ5.mjs} +1476 -103
- package/.output/server/chunks/build/input-CobQ5LJ5.mjs.map +1 -0
- package/.output/server/chunks/build/{input-number-BRVnxeiA.mjs → input-number-BpPYAWMk.mjs} +4 -4
- package/.output/server/chunks/build/{input-number-BRVnxeiA.mjs.map → input-number-BpPYAWMk.mjs.map} +1 -1
- package/.output/server/chunks/build/{logs-BlOalbsZ.mjs → logs-As9fZqU-.mjs} +49 -35
- package/.output/server/chunks/build/logs-As9fZqU-.mjs.map +1 -0
- package/.output/server/chunks/build/{menu-BgkRSSx7.mjs → menu-CVmvHyFT.mjs} +3 -3
- package/.output/server/chunks/build/{menu-BgkRSSx7.mjs.map → menu-CVmvHyFT.mjs.map} +1 -1
- package/.output/server/chunks/build/{monitor-DX_K0WMq.mjs → monitor-CdFQ2z4g.mjs} +17 -17
- package/.output/server/chunks/build/{monitor-DX_K0WMq.mjs.map → monitor-CdFQ2z4g.mjs.map} +1 -1
- package/.output/server/chunks/build/{operations-BD6LK-Yz.mjs → operations-B2gHCWgZ.mjs} +7 -6
- package/.output/server/chunks/build/operations-B2gHCWgZ.mjs.map +1 -0
- package/.output/server/chunks/build/{pages-DloBBvU5.mjs → pages-BItCt1ar.mjs} +5 -4
- package/.output/server/chunks/build/pages-BItCt1ar.mjs.map +1 -0
- package/.output/server/chunks/build/{permissions-BvmodvsO.mjs → permissions-D6mQw_9j.mjs} +12 -12
- package/.output/server/chunks/build/{permissions-BvmodvsO.mjs.map → permissions-D6mQw_9j.mjs.map} +1 -1
- package/.output/server/chunks/build/plugins-NAS9MQ5r.mjs +2 -1
- package/.output/server/chunks/build/plugins-NAS9MQ5r.mjs.map +1 -1
- package/.output/server/chunks/build/{popconfirm-Ox-_2V8A.mjs → popconfirm-DFfoFhmt.mjs} +2 -2
- package/.output/server/chunks/build/{popconfirm-Ox-_2V8A.mjs.map → popconfirm-DFfoFhmt.mjs.map} +1 -1
- package/.output/server/chunks/build/{schedules-D8vYHgQ5.mjs → schedules-BjWNDWL5.mjs} +16 -16
- package/.output/server/chunks/build/{schedules-D8vYHgQ5.mjs.map → schedules-BjWNDWL5.mjs.map} +1 -1
- package/.output/server/chunks/build/{segmented-C61yLHvo.mjs → segmented-D7FkCgg7.mjs} +2 -2
- package/.output/server/chunks/build/{segmented-C61yLHvo.mjs.map → segmented-D7FkCgg7.mjs.map} +1 -1
- package/.output/server/chunks/build/{select-rdBWytVK.mjs → select-FqBNxgxT.mjs} +3 -3
- package/.output/server/chunks/build/{select-rdBWytVK.mjs.map → select-FqBNxgxT.mjs.map} +1 -1
- package/.output/server/chunks/build/{settings-B7HA-sdb.mjs → settings-Cl_KRyEn.mjs} +9 -9
- package/.output/server/chunks/build/{settings-B7HA-sdb.mjs.map → settings-Cl_KRyEn.mjs.map} +1 -1
- package/.output/server/chunks/build/{table-DOFAvY-v.mjs → table-CeOYERqr.mjs} +8 -9
- package/.output/server/chunks/build/{table-DOFAvY-v.mjs.map → table-CeOYERqr.mjs.map} +1 -1
- package/.output/server/chunks/build/{tabs-DTeIuZeP.mjs → tabs-LLNSdLl2.mjs} +5 -6
- package/.output/server/chunks/build/{tabs-DTeIuZeP.mjs.map → tabs-LLNSdLl2.mjs.map} +1 -1
- package/.output/server/chunks/build/{tag-CHLGvNM6.mjs → tag-Dwvkh0Dj.mjs} +2 -3
- package/.output/server/chunks/build/{tag-CHLGvNM6.mjs.map → tag-Dwvkh0Dj.mjs.map} +1 -1
- package/.output/server/chunks/build/{teams-wM-MdLv9.mjs → teams-CGDZHaQl.mjs} +11 -11
- package/.output/server/chunks/build/{teams-wM-MdLv9.mjs.map → teams-CGDZHaQl.mjs.map} +1 -1
- package/.output/server/chunks/build/{tokens-CloWk4x_.mjs → tokens-BOYkZuoB.mjs} +13 -13
- package/.output/server/chunks/build/{tokens-CloWk4x_.mjs.map → tokens-BOYkZuoB.mjs.map} +1 -1
- package/.output/server/chunks/build/{town-BIn3be5v.mjs → town-BV-hbwb5.mjs} +41 -6
- package/.output/server/chunks/build/town-BV-hbwb5.mjs.map +1 -0
- package/.output/server/chunks/build/{town-B2gBu_ZE.mjs → town-P1rYoi0v.mjs} +7 -6
- package/.output/server/chunks/build/town-P1rYoi0v.mjs.map +1 -0
- package/.output/server/chunks/build/types-D6J7slEa.mjs +1 -1
- package/.output/server/chunks/build/useAgentHarnessOptions-BnFCh23W.mjs +2 -1
- package/.output/server/chunks/build/useAgentHarnessOptions-BnFCh23W.mjs.map +1 -1
- package/.output/server/chunks/build/useAgentTemplateActions-DsBRUQni.mjs +2 -1
- package/.output/server/chunks/build/useAgentTemplateActions-DsBRUQni.mjs.map +1 -1
- package/.output/server/chunks/build/useAgentTemplateDialogState-CZzpu5og.mjs +2 -1
- package/.output/server/chunks/build/useAgentTemplateDialogState-CZzpu5og.mjs.map +1 -1
- package/.output/server/chunks/build/useAgentTemplateForm-DzQ_t2Ue.mjs +2 -1
- package/.output/server/chunks/build/useAgentTemplateForm-DzQ_t2Ue.mjs.map +1 -1
- package/.output/server/chunks/build/useAgentTemplatesCatalog-Q7LgG1Af.mjs +2 -1
- package/.output/server/chunks/build/useAgentTemplatesCatalog-Q7LgG1Af.mjs.map +1 -1
- package/.output/server/chunks/build/useAmlDatasets-DeoE1idn.mjs +2 -1
- package/.output/server/chunks/build/useAmlDatasets-DeoE1idn.mjs.map +1 -1
- package/.output/server/chunks/build/useAmlEntities-BMLHU_39.mjs +3 -2
- package/.output/server/chunks/build/useAmlEntities-BMLHU_39.mjs.map +1 -1
- package/.output/server/chunks/build/useAmlEnv-DdlyVzPu.mjs +2 -1
- package/.output/server/chunks/build/useAmlEnv-DdlyVzPu.mjs.map +1 -1
- package/.output/server/chunks/build/useAmlExperiments-Dloi834i.mjs +2 -1
- package/.output/server/chunks/build/useAmlExperiments-Dloi834i.mjs.map +1 -1
- package/.output/server/chunks/build/useAmlFormat-C2sl3MGB.mjs +2 -1
- package/.output/server/chunks/build/useAmlFormat-C2sl3MGB.mjs.map +1 -1
- package/.output/server/chunks/build/{useAmlJobs--a_1ovew.mjs → useAmlJobs-BG_v21hJ.mjs} +4 -3
- package/.output/server/chunks/build/useAmlJobs-BG_v21hJ.mjs.map +1 -0
- package/.output/server/chunks/build/useAmlModels-D7MuOWOy.mjs +2 -1
- package/.output/server/chunks/build/useAmlModels-D7MuOWOy.mjs.map +1 -1
- package/.output/server/chunks/build/useAmlNotes-CTZe-GI0.mjs +2 -1
- package/.output/server/chunks/build/useAmlNotes-CTZe-GI0.mjs.map +1 -1
- package/.output/server/chunks/build/useAmlPredict-BToRrVRV.mjs +2 -1
- package/.output/server/chunks/build/useAmlPredict-BToRrVRV.mjs.map +1 -1
- package/.output/server/chunks/build/useDaqAddNode-CaOCbe4-.mjs +3 -2
- package/.output/server/chunks/build/useDaqAddNode-CaOCbe4-.mjs.map +1 -1
- package/.output/server/chunks/build/useDaqDetailBinding-C7AbGIdP.mjs +2 -1
- package/.output/server/chunks/build/useDaqDetailBinding-C7AbGIdP.mjs.map +1 -1
- package/.output/server/chunks/build/useDaqDetailFrames-CmAEdbAL.mjs +2 -1
- package/.output/server/chunks/build/useDaqDetailFrames-CmAEdbAL.mjs.map +1 -1
- package/.output/server/chunks/build/{useDaqDetailHistory-pfi6zXWU.mjs → useDaqDetailHistory-C4LWayu1.mjs} +4 -3
- package/.output/server/chunks/build/useDaqDetailHistory-C4LWayu1.mjs.map +1 -0
- package/.output/server/chunks/build/{useDaqDetailNode-qT7MjqJ7.mjs → useDaqDetailNode-DXgwAu5u.mjs} +5 -4
- package/.output/server/chunks/build/useDaqDetailNode-DXgwAu5u.mjs.map +1 -0
- package/.output/server/chunks/build/useDaqDetailParams-CrTMDs-2.mjs +3 -2
- package/.output/server/chunks/build/useDaqDetailParams-CrTMDs-2.mjs.map +1 -1
- package/.output/server/chunks/build/{useDaqFilters-CMysN13f.mjs → useDaqFilters-Jx6EERfr.mjs} +5 -4
- package/.output/server/chunks/build/useDaqFilters-Jx6EERfr.mjs.map +1 -0
- package/.output/server/chunks/build/useDaqNodeWindow-1DWj2H5G.mjs +2 -1
- package/.output/server/chunks/build/useDaqNodeWindow-1DWj2H5G.mjs.map +1 -1
- package/.output/server/chunks/build/{useDaqOptimizations-Coq5lsfM.mjs → useDaqOptimizations-C5N4bcu4.mjs} +4 -3
- package/.output/server/chunks/build/useDaqOptimizations-C5N4bcu4.mjs.map +1 -0
- package/.output/server/chunks/build/useDaqStream-DhzdoyIR.mjs +1 -1
- package/.output/server/chunks/build/useDaqTemplates-C7GzQmdJ.mjs +3 -2
- package/.output/server/chunks/build/useDaqTemplates-C7GzQmdJ.mjs.map +1 -1
- package/.output/server/chunks/build/useDashboardCharts-D45083s_.mjs +2 -1
- package/.output/server/chunks/build/useDashboardCharts-D45083s_.mjs.map +1 -1
- package/.output/server/chunks/build/{useDashboardData-DgJcGJaF.mjs → useDashboardData-Ce-EU5DJ.mjs} +4 -3
- package/.output/server/chunks/build/useDashboardData-Ce-EU5DJ.mjs.map +1 -0
- package/.output/server/chunks/build/{useDcwAddNode-C9DbEKHi.mjs → useDcwAddNode-4mTPQ6T8.mjs} +38 -4
- package/.output/server/chunks/build/useDcwAddNode-4mTPQ6T8.mjs.map +1 -0
- package/.output/server/chunks/build/{useDcwCards-VDoMYG7l.mjs → useDcwCards-DvLGgUYr.mjs} +4 -3
- package/.output/server/chunks/build/useDcwCards-DvLGgUYr.mjs.map +1 -0
- package/.output/server/chunks/build/{useDcwDetailScope-CL97tJdJ.mjs → useDcwDetailScope-4j3B03Pi.mjs} +4 -3
- package/.output/server/chunks/build/useDcwDetailScope-4j3B03Pi.mjs.map +1 -0
- package/.output/server/chunks/build/{useDcwDetailTemplates-OLmjMSGD.mjs → useDcwDetailTemplates-yzNEAMK-.mjs} +4 -3
- package/.output/server/chunks/build/useDcwDetailTemplates-yzNEAMK-.mjs.map +1 -0
- package/.output/server/chunks/build/{useDcwFilter-Bs9C6-h_.mjs → useDcwFilter-BQDmQYY0.mjs} +4 -3
- package/.output/server/chunks/build/useDcwFilter-BQDmQYY0.mjs.map +1 -0
- package/.output/server/chunks/build/{useDcwLedger-Bbf_iFOY.mjs → useDcwLedger-DWGufEor.mjs} +4 -3
- package/.output/server/chunks/build/useDcwLedger-DWGufEor.mjs.map +1 -0
- package/.output/server/chunks/build/{useDcwLineMutations-Bhtuqw7J.mjs → useDcwLineMutations-DHF-Bemn.mjs} +4 -3
- package/.output/server/chunks/build/useDcwLineMutations-DHF-Bemn.mjs.map +1 -0
- package/.output/server/chunks/build/{useDcwLineRun-CGqZSnG4.mjs → useDcwLineRun-VFe35xou.mjs} +4 -3
- package/.output/server/chunks/build/useDcwLineRun-VFe35xou.mjs.map +1 -0
- package/.output/server/chunks/build/{useDcwParamApprovals-BBwdFsKv.mjs → useDcwParamApprovals-Bc0BGBds.mjs} +8 -7
- package/.output/server/chunks/build/useDcwParamApprovals-Bc0BGBds.mjs.map +1 -0
- package/.output/server/chunks/build/{useDcwProducts-BoBkJqpv.mjs → useDcwProducts-DXisXYMh.mjs} +4 -3
- package/.output/server/chunks/build/useDcwProducts-DXisXYMh.mjs.map +1 -0
- package/.output/server/chunks/build/{useDcwQuery-DP7b2qb6.mjs → useDcwQuery-Cmo3UtIQ.mjs} +4 -3
- package/.output/server/chunks/build/useDcwQuery-Cmo3UtIQ.mjs.map +1 -0
- package/.output/server/chunks/build/{useDcwQuickActions-DHRiA9KN.mjs → useDcwQuickActions-BkAcxVnj.mjs} +4 -3
- package/.output/server/chunks/build/useDcwQuickActions-BkAcxVnj.mjs.map +1 -0
- package/.output/server/chunks/build/{useDcwRecipes-CIMeH2oF.mjs → useDcwRecipes-BvtGPQJ9.mjs} +16 -5
- package/.output/server/chunks/build/useDcwRecipes-BvtGPQJ9.mjs.map +1 -0
- package/.output/server/chunks/build/{useDcwStream-B9ugUWRq.mjs → useDcwStream-BXJ2V8HM.mjs} +12 -2
- package/.output/server/chunks/build/{useDcwStream-B9ugUWRq.mjs.map → useDcwStream-BXJ2V8HM.mjs.map} +1 -1
- package/.output/server/chunks/build/{useDcwTemplates-M_-qjV8E.mjs → useDcwTemplates-Zxz2DPdu.mjs} +4 -3
- package/.output/server/chunks/build/useDcwTemplates-Zxz2DPdu.mjs.map +1 -0
- package/.output/server/chunks/build/{useDcwWrites-D94dAzqr.mjs → useDcwWrites-66CKxcos.mjs} +4 -3
- package/.output/server/chunks/build/useDcwWrites-66CKxcos.mjs.map +1 -0
- package/.output/server/chunks/build/useExpConfirmations-BbInIHsn.mjs +106 -0
- package/.output/server/chunks/build/useExpConfirmations-BbInIHsn.mjs.map +1 -0
- package/.output/server/chunks/build/{useLocalTime-DZ2RAtVs.mjs → useLocalTime-CUnDHV5V.mjs} +8 -2
- package/.output/server/chunks/build/useLocalTime-CUnDHV5V.mjs.map +1 -0
- package/.output/server/chunks/build/useLogsFormat-B-o4MHy7.mjs +2 -1
- package/.output/server/chunks/build/useLogsFormat-B-o4MHy7.mjs.map +1 -1
- package/.output/server/chunks/build/useLogsManual-CMjD62nt.mjs +2 -1
- package/.output/server/chunks/build/useLogsManual-CMjD62nt.mjs.map +1 -1
- package/.output/server/chunks/build/{useLogsQuery-2x1mKxT1.mjs → useLogsQuery-C5nadU1m.mjs} +15 -4
- package/.output/server/chunks/build/useLogsQuery-C5nadU1m.mjs.map +1 -0
- package/.output/server/chunks/build/{useLogsScope-04cUJCU-.mjs → useLogsScope-DgrB1ur3.mjs} +4 -3
- package/.output/server/chunks/build/useLogsScope-DgrB1ur3.mjs.map +1 -0
- package/.output/server/chunks/build/useMonitorColumns-DhYvkLDq.mjs +2 -1
- package/.output/server/chunks/build/useMonitorColumns-DhYvkLDq.mjs.map +1 -1
- package/.output/server/chunks/build/{useMonitorData-guVjMDtR.mjs → useMonitorData-D2gFSonG.mjs} +4 -3
- package/.output/server/chunks/build/useMonitorData-D2gFSonG.mjs.map +1 -0
- package/.output/server/chunks/build/{useMonitorFormat-C7lhZe4g.mjs → useMonitorFormat-DRCXsKwh.mjs} +4 -3
- package/.output/server/chunks/build/useMonitorFormat-DRCXsKwh.mjs.map +1 -0
- package/.output/server/chunks/build/useMonitorTerminal-Dj4QwRNW.mjs +2 -1
- package/.output/server/chunks/build/useMonitorTerminal-Dj4QwRNW.mjs.map +1 -1
- package/.output/server/chunks/build/useOperationsFeed-DsA2ym7M.mjs +2 -1
- package/.output/server/chunks/build/useOperationsFeed-DsA2ym7M.mjs.map +1 -1
- package/.output/server/chunks/build/useOpsLog-SnWPuRtK.mjs.map +1 -1
- package/.output/server/chunks/build/useRecipeDispatchApprovals-CbL2El3n.mjs +155 -0
- package/.output/server/chunks/build/useRecipeDispatchApprovals-CbL2El3n.mjs.map +1 -0
- package/.output/server/chunks/build/useTeamActions-BOLQkYxg.mjs +2 -1
- package/.output/server/chunks/build/useTeamActions-BOLQkYxg.mjs.map +1 -1
- package/.output/server/chunks/build/useTeamAddMemberDialog-BCgrLPxI.mjs +2 -1
- package/.output/server/chunks/build/useTeamAddMemberDialog-BCgrLPxI.mjs.map +1 -1
- package/.output/server/chunks/build/useTeamCreateDialog-CJk40LqS.mjs +2 -1
- package/.output/server/chunks/build/useTeamCreateDialog-CJk40LqS.mjs.map +1 -1
- package/.output/server/chunks/build/useTeamDeployDialog-49hdUXQP.mjs +2 -1
- package/.output/server/chunks/build/useTeamDeployDialog-49hdUXQP.mjs.map +1 -1
- package/.output/server/chunks/build/useTeamDialogState-CFRUQxAf.mjs +2 -1
- package/.output/server/chunks/build/useTeamDialogState-CFRUQxAf.mjs.map +1 -1
- package/.output/server/chunks/build/useTeamPluginDialog-Dh-QOoiU.mjs +2 -1
- package/.output/server/chunks/build/useTeamPluginDialog-Dh-QOoiU.mjs.map +1 -1
- package/.output/server/chunks/build/useTeamsCatalog-HBSyKt5P.mjs +2 -1
- package/.output/server/chunks/build/useTeamsCatalog-HBSyKt5P.mjs.map +1 -1
- package/.output/server/chunks/build/useTokenClipboard-CwQpoFeP.mjs +2 -1
- package/.output/server/chunks/build/useTokenClipboard-CwQpoFeP.mjs.map +1 -1
- package/.output/server/chunks/build/useTokenCreate-DkYvEQUD.mjs +2 -1
- package/.output/server/chunks/build/useTokenCreate-DkYvEQUD.mjs.map +1 -1
- package/.output/server/chunks/build/useTokenRename-DOCP4aeI.mjs +2 -1
- package/.output/server/chunks/build/useTokenRename-DOCP4aeI.mjs.map +1 -1
- package/.output/server/chunks/build/useTokenReveal-CybwwflV.mjs +2 -1
- package/.output/server/chunks/build/useTokenReveal-CybwwflV.mjs.map +1 -1
- package/.output/server/chunks/build/useTokensList-BLiMvrc4.mjs +2 -1
- package/.output/server/chunks/build/useTokensList-BLiMvrc4.mjs.map +1 -1
- package/.output/server/chunks/build/{useWorkbenchAuth-DqjBX-6w.mjs → useWorkbenchAuth-DAabQl7X.mjs} +6 -2
- package/.output/server/chunks/build/useWorkbenchAuth-DAabQl7X.mjs.map +1 -0
- package/.output/server/chunks/build/{useWorkbenchWorkspaces-GQVU9BLv.mjs → useWorkbenchWorkspaces-6-mpCGCR.mjs} +5 -4
- package/.output/server/chunks/build/useWorkbenchWorkspaces-6-mpCGCR.mjs.map +1 -0
- package/.output/server/chunks/build/{useWorkshopWs-CgeCsaYJ.mjs → useWorkshopWs-CM-Ywk4h.mjs} +2 -2
- package/.output/server/chunks/build/{useWorkshopWs-CgeCsaYJ.mjs.map → useWorkshopWs-CM-Ywk4h.mjs.map} +1 -1
- package/.output/server/chunks/build/useWorkspaceAuth-Dlvj9csD.mjs +2 -1
- package/.output/server/chunks/build/useWorkspaceAuth-Dlvj9csD.mjs.map +1 -1
- package/.output/server/chunks/build/{useWorkspaceChannels-B13vROC1.mjs → useWorkspaceChannels--65yU02b.mjs} +5 -4
- package/.output/server/chunks/build/useWorkspaceChannels--65yU02b.mjs.map +1 -0
- package/.output/server/chunks/build/useWorkspacePanels-CTwREmq0.mjs +2 -1
- package/.output/server/chunks/build/useWorkspacePanels-CTwREmq0.mjs.map +1 -1
- package/.output/server/chunks/build/useWorkspaceShell-BCypjjjE.mjs +2 -1
- package/.output/server/chunks/build/useWorkspaceShell-BCypjjjE.mjs.map +1 -1
- package/.output/server/chunks/build/{users-CCf5PgRs.mjs → users-B_pHStEa.mjs} +13 -13
- package/.output/server/chunks/build/{users-CCf5PgRs.mjs.map → users-B_pHStEa.mjs.map} +1 -1
- package/.output/server/chunks/build/workshop-C0DefygA.mjs +522 -0
- package/.output/server/chunks/build/workshop-C0DefygA.mjs.map +1 -0
- package/.output/server/chunks/routes/api/health.get.mjs +12 -2
- package/.output/server/chunks/routes/api/health.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/index.get.mjs +4 -3
- package/.output/server/chunks/routes/api/index.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/index.post.mjs +3 -2
- package/.output/server/chunks/routes/api/index.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/mcp/workshop.mjs +3 -2
- package/.output/server/chunks/routes/api/mcp/workshop.mjs.map +1 -1
- package/.output/server/chunks/routes/api/metrics.mjs +11 -1
- package/.output/server/chunks/routes/api/metrics.mjs.map +1 -1
- package/.output/server/chunks/routes/api/plugins/_name/_...path_.mjs +2 -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 +2 -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 +2 -1
- package/.output/server/chunks/routes/api/plugins/i18n.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/plugins/manifest.get.mjs +2 -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 +2 -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 +4 -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 +2 -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 +2 -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 +2 -1
- package/.output/server/chunks/routes/api/system/config.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/system/index.get.mjs +2 -1
- package/.output/server/chunks/routes/api/system/index.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/system/index.patch.mjs +2 -1
- package/.output/server/chunks/routes/api/system/index.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/system/index.post.mjs +2 -1
- package/.output/server/chunks/routes/api/system/index.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/system/index2.get.mjs +2 -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 +2 -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 +2 -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 +2 -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 +2 -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 +2 -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 +2 -1
- package/.output/server/chunks/routes/api/system/timezone.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/users/_id_.delete.mjs +2 -1
- package/.output/server/chunks/routes/api/users/_id_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/users/_id_.get.mjs +2 -1
- package/.output/server/chunks/routes/api/users/_id_.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/users/_id_.put.mjs +2 -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 +35 -0
- package/.output/server/chunks/routes/api/users/change-password.post.mjs.map +1 -0
- package/.output/server/chunks/routes/api/users/index.get.mjs +3 -2
- package/.output/server/chunks/routes/api/users/index.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/users/index.post.mjs +4 -3
- package/.output/server/chunks/routes/api/users/index.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/users/login.post.mjs +4 -3
- package/.output/server/chunks/routes/api/users/login.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/users/logout.post.mjs +3 -2
- package/.output/server/chunks/routes/api/users/logout.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/users/me.get.mjs +3 -2
- package/.output/server/chunks/routes/api/users/me.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/users/register.post.mjs +3 -2
- package/.output/server/chunks/routes/api/users/register.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/users/setup-status.get.mjs +6 -3
- 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 -2
- 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 -2
- 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 +4 -3
- package/.output/server/chunks/routes/api/users/tokens/_id_.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/_...path_.mjs +2 -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 +2 -1
- 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 +2 -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 +2 -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 +15 -5
- 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 -2
- 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 +24 -3
- 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 +3 -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 +3 -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 +3 -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 +48 -8
- 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 +3 -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 +3 -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 +3 -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 +2 -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 +2 -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 +2 -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 +2 -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 +3 -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 +3 -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 +3 -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 +3 -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 +2 -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 +3 -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 +3 -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 +3 -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 +3 -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 +3 -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 +2 -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 +3 -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 +3 -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 +3 -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 +3 -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 +3 -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 +3 -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 +3 -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 +3 -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 +3 -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 +3 -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 +3 -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 +3 -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 +3 -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 +3 -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 +3 -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 +3 -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 +3 -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 +3 -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 +3 -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 +3 -2
- package/.output/server/chunks/routes/api/workshop/aml/twin/providers.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/approvals/_id/decide.post.mjs +3 -2
- 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 +2 -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 +2 -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 +2 -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 +3 -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 +2 -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 +3 -2
- package/.output/server/chunks/routes/api/workshop/assets/index2.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/audit.get.mjs +2 -1
- package/.output/server/chunks/routes/api/workshop/audit.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/caller.mjs +3 -2
- 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 -4
- 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 +2 -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 +2 -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 +2 -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 +2 -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 +3 -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 +2 -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 +2 -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 +2 -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 +2 -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 +2 -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 +2 -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 +2 -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/stop.post.mjs +2 -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 +2 -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 +2 -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 +2 -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 +3 -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 +2 -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 +2 -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 +2 -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/index.get.mjs +2 -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 +3 -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 +3 -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 +2 -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 +2 -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/index3.get.mjs +2 -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 +3 -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 +2 -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 +3 -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 +3 -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 +2 -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/line.put.mjs +9 -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 +2 -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 +2 -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 +5 -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 +2 -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 +2 -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 +2 -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 +3 -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/twin-profile.get.mjs +3 -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 +3 -2
- 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 +2 -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 +3 -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 +2 -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 +2 -1
- package/.output/server/chunks/routes/api/workshop/channels.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channels.post.mjs +18 -5
- 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 -3
- 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 -3
- 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 +3 -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 +3 -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/samples.get.mjs +3 -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 -3
- 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 -3
- 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 -3
- 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 +3 -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 -2
- 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 -3
- package/.output/server/chunks/routes/api/workshop/daq/controller.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/daq/index.post.mjs +3 -2
- package/.output/server/chunks/routes/api/workshop/daq/index.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/daq/infra/reconnect.post.mjs +3 -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 +3 -2
- package/.output/server/chunks/routes/api/workshop/daq/infra.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/daq/templates/_key_.delete.mjs +3 -2
- 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 +3 -2
- 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 +5 -4
- 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 +3 -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 +3 -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 +3 -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 +3 -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 +3 -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 +3 -2
- 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 +3 -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 +3 -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 +3 -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 +3 -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 -3
- 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 +3 -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 +3 -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 +15 -12
- 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 +7 -4
- 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 +15 -14
- 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 +12 -4
- 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 +16 -5
- 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 +3 -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 +6 -4
- 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 +30 -0
- package/.output/server/chunks/routes/api/workshop/dcw/index7.get.mjs.map +1 -0
- package/.output/server/chunks/routes/api/workshop/dcw/journal/node/_nodeId/rollback.post.mjs +3 -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 +3 -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 +3 -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 +3 -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 +5 -4
- 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 +5 -4
- 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 +62 -0
- package/.output/server/chunks/routes/api/workshop/dcw/mes-artifacts/file.get.mjs.map +1 -0
- package/.output/server/chunks/routes/api/workshop/dcw/mes-hook-test.post.mjs +99 -0
- package/.output/server/chunks/routes/api/workshop/dcw/mes-hook-test.post.mjs.map +1 -0
- package/.output/server/chunks/routes/api/workshop/dcw/mes-test-read.post.mjs +3 -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 +3 -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 +3 -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 +3 -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 +3 -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 +3 -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 +3 -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 +3 -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 +3 -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 +3 -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 +3 -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 +7 -4
- 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 +7 -4
- 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 +7 -4
- 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 +7 -4
- 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 -2
- 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 +3 -2
- 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 +3 -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 +3 -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 +3 -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 +3 -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 +3 -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 +3 -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 +3 -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 +3 -2
- 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 +3 -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 +3 -2
- 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 +3 -2
- package/.output/server/chunks/routes/api/workshop/device-twins/_id_.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/exp/confirmations/_id/decide.post.mjs +55 -0
- package/.output/server/chunks/routes/api/workshop/exp/confirmations/_id/decide.post.mjs.map +1 -0
- package/.output/server/chunks/routes/api/workshop/exp/index.get.mjs +38 -0
- package/.output/server/chunks/routes/api/workshop/exp/index.get.mjs.map +1 -0
- package/.output/server/chunks/routes/api/workshop/fs/dirs.get.mjs +3 -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 +3 -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 +3 -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 +8 -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 +6 -3
- package/.output/server/chunks/routes/api/workshop/hitl/respond.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index.get.mjs +2 -1
- package/.output/server/chunks/routes/api/workshop/index.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index.post.mjs +2 -1
- package/.output/server/chunks/routes/api/workshop/index.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index.put.mjs +3 -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 -2
- package/.output/server/chunks/routes/api/workshop/index10.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index11.get.mjs +2 -1
- package/.output/server/chunks/routes/api/workshop/index11.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index12.get.mjs +2 -1
- package/.output/server/chunks/routes/api/workshop/index12.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index13.get.mjs +2 -1
- package/.output/server/chunks/routes/api/workshop/index13.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index14.get.mjs +2 -1
- package/.output/server/chunks/routes/api/workshop/index14.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index2.get.mjs +3 -2
- package/.output/server/chunks/routes/api/workshop/index2.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index2.post.mjs +2 -1
- package/.output/server/chunks/routes/api/workshop/index2.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index3.get.mjs +2 -1
- package/.output/server/chunks/routes/api/workshop/index3.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index3.post.mjs +8 -4
- package/.output/server/chunks/routes/api/workshop/index3.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index4.get.mjs +2 -1
- package/.output/server/chunks/routes/api/workshop/index4.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index4.post.mjs +8 -4
- package/.output/server/chunks/routes/api/workshop/index4.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index5.get.mjs +4 -3
- package/.output/server/chunks/routes/api/workshop/index5.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index5.post.mjs +3 -2
- package/.output/server/chunks/routes/api/workshop/index5.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index6.get.mjs +3 -2
- package/.output/server/chunks/routes/api/workshop/index6.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index6.post.mjs +3 -2
- package/.output/server/chunks/routes/api/workshop/index6.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index7.get.mjs +3 -2
- package/.output/server/chunks/routes/api/workshop/index7.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index7.post.mjs +2 -1
- package/.output/server/chunks/routes/api/workshop/index7.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index8.get.mjs +2 -1
- package/.output/server/chunks/routes/api/workshop/index8.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index8.post.mjs +2 -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 +2 -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 +2 -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 +2 -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 +2 -1
- package/.output/server/chunks/routes/api/workshop/memories/maintenance.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/notifications/read.post.mjs +2 -1
- package/.output/server/chunks/routes/api/workshop/notifications/read.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/plugins/_name/disable.post.mjs +3 -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 +3 -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 +2 -1
- package/.output/server/chunks/routes/api/workshop/plugins/index.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/runtime.get.mjs +2 -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 +3 -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 +3 -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 +2 -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 +2 -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 +2 -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 +2 -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 +2 -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 +2 -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 +2 -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 +2 -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 +2 -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 +2 -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 +48 -0
- package/.output/server/chunks/routes/api/workshop/tasks/_id/reopen.post.mjs.map +1 -0
- package/.output/server/chunks/routes/api/workshop/tasks/_id/report.post.mjs +2 -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 +2 -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/update.post.mjs +2 -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 +2 -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 +2 -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 +3 -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 +2 -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 +2 -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 +3 -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 +3 -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 +2 -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 +2 -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 +2 -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 +2 -1
- package/.output/server/chunks/routes/api/workshop/teams/_id_.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/users/me.get.mjs +2 -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 +2 -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 +4 -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 +2 -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 +2 -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 +2 -1
- package/.output/server/chunks/routes/api/workshop/workspaces/index.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/renderer.mjs +3 -3
- package/.output/server/chunks/virtual/entry.mjs +250 -57
- package/.output/server/chunks/virtual/entry.mjs.map +1 -1
- package/.output/server/chunks/virtual/precomputed.mjs +1 -1
- package/.output/server/index.mjs +2 -1
- package/.output/server/index.mjs.map +1 -1
- package/.output/server/package.json +1 -1
- package/LICENSE +69 -91
- package/README-zh.md +928 -833
- package/README.md +949 -845
- package/app/components/AppSidebar.vue +1 -1
- package/app/components/aml/AmlEnvPanel.vue +230 -230
- package/app/components/app-header/LoginModal.vue +131 -0
- package/app/components/app-header/UserChip.vue +161 -150
- package/app/components/dcw/DcwAddNodeModal.vue +29 -1
- package/app/components/dcw/DcwEditLineModal.vue +216 -108
- package/app/components/dcw/DcwLineCard.vue +129 -117
- package/app/components/dcw/DcwMesArtifacts.vue +140 -0
- package/app/components/dcw/DcwNodesTable.vue +9 -0
- package/app/components/dcw/DcwParamApprovalCard.vue +116 -110
- package/app/components/dcw/DcwRecipeEditModal.vue +399 -306
- package/app/components/dcw/ExpConfirmCard.vue +103 -0
- package/app/components/dcw/RecipeDispatchApprovalCard.vue +330 -0
- package/app/components/dcw/RecipeGateApprovalCard.vue +159 -0
- package/app/components/logs/LogsEventTable.vue +321 -309
- package/app/components/logs/LogsFilterCard.vue +253 -234
- package/app/components/workshop/DaqNodeRow.vue +616 -592
- package/app/components/workshop/town/TownView.vue +6 -2
- package/app/components/workshop/town/components/AutoModeConfirmModal.vue +94 -0
- package/app/components/workshop/town/components/TownAgentBindings.vue +18 -2
- package/app/components/workshop/town/components/TownAgentInspector.vue +10 -2
- package/app/components/workshop/town/components/TownRightRail.vue +4 -1
- package/app/components/workshop/workbench/AuthGate.vue +182 -179
- package/app/components/workshop/workbench/ChangePasswordModal.vue +106 -0
- package/app/composables/workshop/town/town-relay-props.ts +6 -1
- package/app/composables/workshop/town/useTownAgentBindings.ts +73 -6
- package/app/composables/workshop/useDcwStream.ts +374 -362
- package/app/composables/workshop/useOpsLog.ts +3 -0
- package/app/layouts/default.vue +201 -161
- package/app/layouts/town.vue +40 -21
- package/app/pages/daq/composables/useDaqDetailHistory.ts +199 -199
- package/app/pages/dcw/[id].vue +380 -318
- package/app/pages/dcw/composables/useDcwAddNode.ts +29 -0
- package/app/pages/dcw/composables/useDcwParamApprovals.ts +123 -119
- package/app/pages/dcw/composables/useDcwRecipes.ts +256 -242
- package/app/pages/dcw/composables/useExpConfirmations.ts +108 -0
- package/app/pages/dcw/composables/useRecipeDispatchApprovals.ts +200 -0
- package/app/pages/dcw/dcw-page.css +360 -344
- package/app/pages/dcw/index.vue +11 -0
- package/app/pages/logs/composables/useLogsQuery.ts +57 -52
- package/app/pages/logs/index.vue +95 -94
- package/app/pages/workshop/composables/useWorkbenchAuth.ts +131 -125
- package/app/pages/workshop/index.vue +121 -116
- package/app/plugins/http.ts +6 -0
- package/app/stores/workshop/auth-ui.ts +26 -0
- package/app/stores/workshop/user.ts +19 -2
- package/cli/commands/mcp.mjs +6 -0
- package/config.yml +180 -180
- package/docker-compose.yml +4 -0
- package/docs/cli.en.md +447 -447
- package/docs/cli.md +412 -412
- package/docs/plugins.en.md +621 -621
- package/docs/plugins.md +610 -610
- package/docs/sdk.en.md +964 -964
- package/docs/sdk.md +900 -900
- package/i18n/locales/en.ts +2812 -2738
- package/i18n/locales/zh-CN.ts +2812 -2738
- package/mcp/aw-mcp-server.mjs +4 -1
- package/package.json +181 -181
- package/scripts/_audit/feature-audit-e2e.mjs +12 -9
- package/scripts/_audit/idd-scenarios-e2e.mjs +239 -0
- package/scripts/aw-start-smoke.mjs +7 -1
- package/scripts/check-docs-sync.mjs +417 -367
- package/scripts/dev-guard.mjs +2 -1
- package/scripts/dev-mes-simulator.mjs +456 -0
- package/scripts/feature-sweep-e2e.mjs +176 -0
- package/scripts/onboarding/forge-channel.mjs +157 -0
- package/scripts/onboarding/lib.mjs +78 -0
- package/scripts/onboarding/onboard.mjs +196 -0
- package/scripts/onboarding/provision-line.mjs +179 -0
- package/scripts/onboarding/test-connection.mjs +42 -0
- package/scripts/onboarding/verify-line.mjs +95 -0
- package/scripts/perm-isolation-e2e.mjs +188 -0
- package/scripts/render-opt-curve.mjs +97 -0
- package/scripts/render-pressure-curve.mjs +89 -0
- package/scripts/start.mjs +126 -2
- package/scripts/testing/aep-live.mjs +60 -0
- package/scripts/testing/aggregate-benchmarks.mjs +79 -0
- package/scripts/testing/api-full-loop.mjs +172 -0
- package/scripts/testing/benchmark.config.json +66 -0
- package/scripts/testing/game-host.mjs +63 -0
- package/scripts/testing/hitl-expert.mjs +143 -0
- package/scripts/testing/idd-kb-smoke.mjs +46 -0
- package/scripts/testing/run-benchmark.mjs +984 -0
- package/scripts/testing/sdk-live.mjs +55 -0
- package/scripts/ui/e2e-interactive.mjs +14 -14
- package/scripts/ui/lib.mjs +210 -210
- package/server/api/health.get.ts +12 -1
- package/server/api/metrics.ts +89 -78
- package/server/api/users/change-password.post.ts +18 -0
- package/server/api/users/setup-status.get.ts +13 -8
- package/server/api/workshop/agent-tools/approvals/[id]/decide.post.ts +21 -6
- package/server/api/workshop/agent-tools/bindings/[id].patch.ts +36 -3
- package/server/api/workshop/agent-tools/bindings/index.post.ts +60 -9
- package/server/api/workshop/caller.ts +3 -2
- package/server/api/workshop/channel-templates/[id]/instantiate.post.ts +1 -1
- package/server/api/workshop/channels/[id]/line.put.ts +41 -30
- package/server/api/workshop/channels/[id]/members/join.post.ts +35 -30
- package/server/api/workshop/channels.post.ts +13 -0
- package/server/api/workshop/daq/index.post.ts +6 -1
- package/server/api/workshop/daq/test-driver.post.ts +3 -3
- package/server/api/workshop/dcw/index.post.ts +26 -20
- package/server/api/workshop/dcw/lines/[id].delete.ts +3 -2
- package/server/api/workshop/dcw/lines/[id].patch.ts +5 -3
- package/server/api/workshop/dcw/lines/index.post.ts +1 -1
- package/server/api/workshop/dcw/mes-artifacts/file.get.ts +50 -0
- package/server/api/workshop/dcw/mes-artifacts/index.get.ts +27 -0
- package/server/api/workshop/dcw/mes-hook-test.post.ts +105 -0
- package/server/api/workshop/dcw/products/index.post.ts +6 -2
- package/server/api/workshop/dcw/recipes/[id]/apply.post.ts +6 -2
- package/server/api/workshop/dcw/recipes/[id]/mark-good.post.ts +6 -2
- package/server/api/workshop/dcw/recipes/[id]/revert.post.ts +33 -29
- package/server/api/workshop/dcw/recipes/[id]/rollback-good.post.ts +7 -3
- package/server/api/workshop/dcw/recipes/index.post.ts +27 -15
- package/server/api/workshop/exp/confirmations/[id]/decide.post.ts +41 -0
- package/server/api/workshop/exp/confirmations/index.get.ts +25 -0
- package/server/api/workshop/hitl/pending.get.ts +57 -48
- package/server/api/workshop/hitl/respond.post.ts +10 -2
- package/server/api/workshop/ops-logs/index.get.ts +1 -0
- package/server/api/workshop/tasks/[id]/reopen.post.ts +35 -0
- package/server/api/workshop/ws/peer-sub.ts +135 -128
- package/server/api/workshop/ws/subscriptions.ts +15 -1
- package/server/plugins/backup.ts +94 -11
- package/server/plugins/daq.ts +3 -0
- package/server/plugins/memory-watch.ts +92 -0
- package/server/plugins/parent-watch.ts +22 -0
- package/server/plugins/workshop.ts +258 -230
- package/server/plugins-builtin/diag-bridge/client.mjs +49 -1
- package/server/plugins-builtin/diag-bridge/host/diagnosis.mjs +15 -6
- package/server/plugins-builtin/diag-bridge/host/exports.mjs +104 -0
- package/server/plugins-builtin/diag-bridge/host/plugin.mjs +120 -17
- package/server/plugins-builtin/diag-bridge/host/sweep.mjs +47 -0
- package/server/plugins-builtin/diag-bridge/i18n.json +82 -72
- package/server/repositories/user.repository.ts +36 -12
- package/server/schemas/user.schema.ts +7 -0
- package/server/services/user.service.ts +50 -8
- package/server/services/workshop/agents/agent-interface.ts +1 -1
- package/server/services/workshop/agents/base-agent.ts +8 -1
- package/server/services/workshop/agents/binding-authz.ts +8 -5
- package/server/services/workshop/agents/binding-mode.ts +51 -0
- package/server/services/workshop/agents/hitl-decision/dispatcher.ts +16 -3
- package/server/services/workshop/agents/hitl-decision/index.ts +24 -24
- package/server/services/workshop/agents/hitl-decision/line-of.ts +38 -0
- package/server/services/workshop/agents/hitl-decision/reconcile.ts +152 -70
- package/server/services/workshop/agents/hitl-decision/shared.ts +2 -0
- package/server/services/workshop/agents/hitl-registry.ts +582 -577
- package/server/services/workshop/agents/host-tool-bridge/catalog.ts +86 -2
- package/server/services/workshop/agents/host-tool-bridge/dispatch.ts +25 -0
- package/server/services/workshop/agents/host-tool-bridge/tools/industrial.ts +13 -1
- package/server/services/workshop/agents/host-tool-bridge/tools/memory.ts +4 -1
- package/server/services/workshop/agents/host-tool-bridge/tools/messaging.ts +45 -11
- package/server/services/workshop/agents/host-tool-bridge/tools/tasks.ts +5 -1
- package/server/services/workshop/agents/industrial/aml-activity.ts +131 -0
- package/server/services/workshop/agents/industrial/aml-dataset-tools.ts +21 -0
- package/server/services/workshop/agents/industrial/aml-job-tools.ts +9 -3
- package/server/services/workshop/agents/industrial/daq-export.ts +510 -0
- package/server/services/workshop/agents/industrial/dcw-judge-tools.ts +160 -149
- package/server/services/workshop/agents/industrial/dcw-tools.ts +68 -21
- package/server/services/workshop/agents/industrial/exp-tools.ts +104 -0
- package/server/services/workshop/agents/industrial/grant-guard.ts +145 -0
- package/server/services/workshop/agents/industrial/index.ts +4 -0
- package/server/services/workshop/agents/industrial/line-tools.ts +151 -0
- package/server/services/workshop/agents/industrial/manual-approval.ts +3 -2
- package/server/services/workshop/agents/industrial/mes-tools.ts +143 -135
- package/server/services/workshop/agents/industrial/ops-tools.ts +267 -68
- package/server/services/workshop/agents/industrial/optimization-tools.ts +19 -9
- package/server/services/workshop/agents/industrial/param-tools.ts +192 -169
- package/server/services/workshop/agents/industrial/recipe-gate.ts +96 -0
- package/server/services/workshop/agents/industrial/recipe-propose-tools.ts +366 -0
- package/server/services/workshop/agents/industrial/twin-tools.ts +38 -4
- package/server/services/workshop/agents/industrial-context.ts +122 -24
- package/server/services/workshop/agents/mock-agent.ts +17 -0
- package/server/services/workshop/agents/node-bindings.repo.ts +207 -206
- package/server/services/workshop/agents/node-delegation.ts +4 -4
- package/server/services/workshop/agents/omp-agent/event-mapping.ts +178 -142
- package/server/services/workshop/agents/tool-approvals.ts +261 -13
- package/server/services/workshop/aml/dataset-builder.ts +8 -1
- package/server/services/workshop/aml/env-manager.ts +242 -242
- package/server/services/workshop/aml/job-orchestrator/failure.ts +19 -0
- package/server/services/workshop/aml/job-orchestrator/stages.ts +27 -0
- package/server/services/workshop/aml/python-runtime.ts +600 -552
- package/server/services/workshop/aml/twin/binding-snapshot.ts +637 -603
- package/server/services/workshop/aml/twin/channel-profile.ts +3 -2
- package/server/services/workshop/daq/bus/queue-port.ts +3 -0
- package/server/services/workshop/daq/daq-controller/crud.ts +206 -202
- package/server/services/workshop/daq/daq-controller/driver-probe.ts +64 -64
- package/server/services/workshop/daq/daq-controller/ingest.ts +189 -189
- package/server/services/workshop/daq/daq-controller/state.ts +204 -197
- package/server/services/workshop/daq/daq-controller/views.ts +85 -84
- package/server/services/workshop/daq/daq-node.repo.ts +27 -4
- package/server/services/workshop/daq/daq-node.ts +4 -2
- package/server/services/workshop/daq/daq-runtime.ts +2 -1
- package/server/services/workshop/daq/drivers/index.ts +29 -29
- package/server/services/workshop/daq/drivers/mqtt.ts +217 -182
- package/server/services/workshop/daq/drivers/registry.ts +35 -1
- package/server/services/workshop/daq/drivers/shared.ts +63 -60
- package/server/services/workshop/daq/objectstore/disk.adapter.ts +48 -2
- package/server/services/workshop/daq/objectstore/gc.ts +92 -0
- package/server/services/workshop/daq/objectstore/objectstore-port.ts +12 -0
- package/server/services/workshop/daq/storage/sqlite.adapter.ts +318 -318
- package/server/services/workshop/daq/storage/timescale.adapter.ts +37 -3
- package/server/services/workshop/db/database/migrations.ts +12 -1
- package/server/services/workshop/db/database/open.ts +5 -1
- package/server/services/workshop/db/database/rows.ts +4 -0
- package/server/services/workshop/db/database/schema.ts +7 -2
- package/server/services/workshop/db/database/seed.ts +71 -0
- package/server/services/workshop/db/memory.repo.ts +1 -1
- package/server/services/workshop/db/ops.repo.ts +24 -7
- package/server/services/workshop/dcw/dcw-controller/actuation.ts +140 -127
- package/server/services/workshop/dcw/dcw-controller/bindings.ts +97 -83
- package/server/services/workshop/dcw/dcw-controller/crud.ts +19 -4
- package/server/services/workshop/dcw/dcw-controller/gate-persist.ts +80 -0
- package/server/services/workshop/dcw/dcw-controller/lines.ts +229 -213
- package/server/services/workshop/dcw/dcw-controller/recipes.ts +286 -196
- package/server/services/workshop/dcw/dcw-controller/state.ts +71 -66
- package/server/services/workshop/dcw/dcw-controller/write-verify.ts +98 -0
- package/server/services/workshop/dcw/dcw-controller/write.ts +51 -9
- package/server/services/workshop/dcw/dcw-line.repo.ts +17 -1
- package/server/services/workshop/dcw/dcw-node.repo.ts +110 -87
- package/server/services/workshop/dcw/dcw-node.ts +8 -3
- package/server/services/workshop/dcw/dcw-recipe.repo.ts +32 -0
- package/server/services/workshop/dcw/dcw-runtime.ts +8 -1
- package/server/services/workshop/dcw/drivers/http.ts +68 -66
- package/server/services/workshop/dcw/drivers/index.ts +27 -27
- package/server/services/workshop/dcw/drivers/mes-rest.ts +707 -543
- package/server/services/workshop/dcw/drivers/mock.ts +47 -44
- package/server/services/workshop/dcw/drivers/modbus-rtu.ts +1 -1
- package/server/services/workshop/dcw/drivers/modbus.ts +1 -1
- package/server/services/workshop/dcw/drivers/mqtt.ts +109 -108
- package/server/services/workshop/dcw/drivers/opcua.ts +1 -1
- package/server/services/workshop/dcw/drivers/registry.ts +142 -100
- package/server/services/workshop/dcw/drivers/shared.ts +186 -161
- package/server/services/workshop/dcw/param-map.repo.ts +349 -321
- package/server/services/workshop/dcw/recipe-op-anchor.ts +117 -0
- package/server/services/workshop/dcw/recipe-rollback.repo.ts +26 -0
- package/server/services/workshop/exp/exp-collector.ts +275 -0
- package/server/services/workshop/exp/exp-state.repo.ts +339 -0
- package/server/services/workshop/json-store.mjs +137 -105
- package/server/services/workshop/mes/mes-controller.ts +274 -26
- package/server/services/workshop/mes/mes-datasets.ts +503 -441
- package/server/services/workshop/mes/mes-hook.ts +567 -0
- package/server/services/workshop/ops/ops.ts +3 -0
- package/server/services/workshop/permissions.ts +7 -7
- package/server/services/workshop/plugin-driver-registry.ts +123 -108
- package/server/services/workshop/plugins/host/services.mjs +10 -0
- package/server/services/workshop/prompts/loader.ts +11 -2
- package/server/services/workshop/runtime/agent-runtime/lifecycle.ts +18 -0
- package/server/services/workshop/runtime/agent-runtime/message.ts +10 -0
- package/server/services/workshop/runtime/line-notify.ts +76 -0
- package/server/services/workshop/runtime/manager/access.ts +488 -483
- package/server/services/workshop/runtime/manager/channel-templates.ts +21 -2
- package/server/services/workshop/runtime/manager/runtime-wiring.ts +96 -1
- package/server/services/workshop/runtime/manager/state.ts +106 -1
- package/server/services/workshop/runtime/manager/tasks.ts +67 -4
- package/server/services/workshop/runtime/manager/workspace.ts +8 -2
- package/server/services/workshop/runtime/memory/recall.ts +20 -1
- package/server/services/workshop/runtime/memory/write.ts +149 -93
- package/server/services/workshop/runtime/platform-notice.ts +113 -0
- package/server/services/workshop/runtime/scheduler-loop/execute.ts +44 -12
- package/server/services/workshop/runtime/scheduler-loop/rules.ts +24 -7
- package/server/services/workshop/runtime/scheduler-loop/tick.ts +44 -1
- package/server/services/workshop/runtime/task-engine/lifecycle.ts +11 -0
- package/server/services/workshop/runtime/task-engine/update.ts +11 -0
- package/server/services/workshop/settings.ts +17 -0
- package/server/types/user.ts +4 -0
- package/server/utils/errors.ts +1 -0
- package/server/utils/response.ts +6 -0
- package/shared/config/schema.json +140 -138
- package/shared/config/single-instance.mjs +28 -1
- package/shared/daq-protocol.ts +12 -2
- package/shared/dcw-protocol/catalog.ts +6 -1
- package/shared/dcw-protocol/index.ts +19 -19
- package/shared/dcw-protocol/line.ts +34 -0
- package/shared/dcw-protocol/recipe.ts +33 -3
- package/shared/local-time.mjs +37 -13
- package/shared/workshop-protocol.ts +4 -0
- package/.output/public/_nuxt/B2x8SKRO2.js +0 -1
- package/.output/public/_nuxt/BOhcoxIu.js +0 -2
- package/.output/public/_nuxt/BQy0Yy7S.js +0 -1
- package/.output/public/_nuxt/BTVyPFng2.js +0 -1
- package/.output/public/_nuxt/BXR3tgEk.js +0 -1
- package/.output/public/_nuxt/B_9_BM9G.js +0 -3
- package/.output/public/_nuxt/BcX4fktE.js +0 -1
- package/.output/public/_nuxt/Bfe2qOYs.js +0 -1
- package/.output/public/_nuxt/BnoyYd0Z2.js +0 -1
- package/.output/public/_nuxt/BqYO-UfR.js +0 -1
- package/.output/public/_nuxt/Btv3HXrq.js +0 -1
- package/.output/public/_nuxt/BuXaEtBG2.js +0 -1
- package/.output/public/_nuxt/Bub2P5me.js +0 -28
- package/.output/public/_nuxt/CAaSPBqk.js +0 -1
- package/.output/public/_nuxt/CD9lpEz22.js +0 -13
- package/.output/public/_nuxt/CFjveTJh.js +0 -1
- package/.output/public/_nuxt/CI2yXRr42.js +0 -1
- package/.output/public/_nuxt/COQM2L1M.js +0 -1
- package/.output/public/_nuxt/Ch9KdZWb2.js +0 -1
- package/.output/public/_nuxt/CtXOpljm2.js +0 -1
- package/.output/public/_nuxt/CwLQAKay2.js +0 -1
- package/.output/public/_nuxt/DB4ma-iU2.js +0 -1
- package/.output/public/_nuxt/DV5joWTn2.js +0 -47
- package/.output/public/_nuxt/DVKXGuMz2.js +0 -1
- package/.output/public/_nuxt/DZDi8inD.js +0 -1
- package/.output/public/_nuxt/DZuXfuXS.js +0 -14
- package/.output/public/_nuxt/Db4_F1T2.js +0 -1
- package/.output/public/_nuxt/DlX0nqUe.js +0 -1
- package/.output/public/_nuxt/Dqz5HiXa.js +0 -2
- package/.output/public/_nuxt/I1cI6sPJ2.js +0 -1
- package/.output/public/_nuxt/Sjjmp5OD2.js +0 -1
- package/.output/public/_nuxt/WVTVkqef.js +0 -1
- package/.output/public/_nuxt/_id_.DZbVLNnu.css +0 -1
- package/.output/public/_nuxt/a4X3ARNm2.js +0 -1
- package/.output/public/_nuxt/bt__BP-I.js +0 -13
- package/.output/public/_nuxt/builds/meta/af879435-fc74-4017-ade0-3b92c1ab35bb.json +0 -1
- package/.output/public/_nuxt/cY_5jwFz2.js +0 -1
- package/.output/public/_nuxt/daq.0uieKcZk.css +0 -1
- package/.output/public/_nuxt/dcw.pQRVkAi_.css +0 -1
- package/.output/public/_nuxt/eutnXI4F.js +0 -24
- package/.output/public/_nuxt/k5K6Jj6g.js +0 -19
- package/.output/public/_nuxt/logs.CD0Olr3c.css +0 -1
- package/.output/public/_nuxt/wDPc4SSR.js +0 -106
- package/.output/public/_nuxt/workshop.b4YRXEe0.css +0 -1
- package/.output/server/chunks/_/SearchOutlined.mjs.map +0 -1
- package/.output/server/chunks/build/TownView-Bf5VFYFj.mjs.map +0 -1
- package/.output/server/chunks/build/_id_-CuUmVPRg.mjs.map +0 -1
- package/.output/server/chunks/build/_id_-WF20tjqT.mjs.map +0 -1
- package/.output/server/chunks/build/aml-C55iuLn-.mjs.map +0 -1
- package/.output/server/chunks/build/daq-D0kLscVr.mjs.map +0 -1
- package/.output/server/chunks/build/dcw-DuhEyu7S.mjs.map +0 -1
- package/.output/server/chunks/build/input-Cr_KFj4T.mjs +0 -1381
- package/.output/server/chunks/build/input-Cr_KFj4T.mjs.map +0 -1
- package/.output/server/chunks/build/logs-BlOalbsZ.mjs.map +0 -1
- package/.output/server/chunks/build/operations-BD6LK-Yz.mjs.map +0 -1
- package/.output/server/chunks/build/pages-DloBBvU5.mjs.map +0 -1
- package/.output/server/chunks/build/town-B2gBu_ZE.mjs.map +0 -1
- package/.output/server/chunks/build/town-BIn3be5v.mjs.map +0 -1
- package/.output/server/chunks/build/useAmlJobs--a_1ovew.mjs.map +0 -1
- package/.output/server/chunks/build/useDaqDetailHistory-pfi6zXWU.mjs.map +0 -1
- package/.output/server/chunks/build/useDaqDetailNode-qT7MjqJ7.mjs.map +0 -1
- package/.output/server/chunks/build/useDaqFilters-CMysN13f.mjs.map +0 -1
- package/.output/server/chunks/build/useDaqOptimizations-Coq5lsfM.mjs.map +0 -1
- package/.output/server/chunks/build/useDashboardData-DgJcGJaF.mjs.map +0 -1
- package/.output/server/chunks/build/useDcwAddNode-C9DbEKHi.mjs.map +0 -1
- package/.output/server/chunks/build/useDcwCards-VDoMYG7l.mjs.map +0 -1
- package/.output/server/chunks/build/useDcwDetailScope-CL97tJdJ.mjs.map +0 -1
- package/.output/server/chunks/build/useDcwDetailTemplates-OLmjMSGD.mjs.map +0 -1
- package/.output/server/chunks/build/useDcwFilter-Bs9C6-h_.mjs.map +0 -1
- package/.output/server/chunks/build/useDcwLedger-Bbf_iFOY.mjs.map +0 -1
- package/.output/server/chunks/build/useDcwLineMutations-Bhtuqw7J.mjs.map +0 -1
- package/.output/server/chunks/build/useDcwLineRun-CGqZSnG4.mjs.map +0 -1
- package/.output/server/chunks/build/useDcwParamApprovals-BBwdFsKv.mjs.map +0 -1
- package/.output/server/chunks/build/useDcwProducts-BoBkJqpv.mjs.map +0 -1
- package/.output/server/chunks/build/useDcwQuery-DP7b2qb6.mjs.map +0 -1
- package/.output/server/chunks/build/useDcwQuickActions-DHRiA9KN.mjs.map +0 -1
- package/.output/server/chunks/build/useDcwRecipes-CIMeH2oF.mjs.map +0 -1
- package/.output/server/chunks/build/useDcwTemplates-M_-qjV8E.mjs.map +0 -1
- package/.output/server/chunks/build/useDcwWrites-D94dAzqr.mjs.map +0 -1
- package/.output/server/chunks/build/useLocalTime-DZ2RAtVs.mjs.map +0 -1
- package/.output/server/chunks/build/useLogsQuery-2x1mKxT1.mjs.map +0 -1
- package/.output/server/chunks/build/useLogsScope-04cUJCU-.mjs.map +0 -1
- package/.output/server/chunks/build/useMonitorData-guVjMDtR.mjs.map +0 -1
- package/.output/server/chunks/build/useMonitorFormat-C7lhZe4g.mjs.map +0 -1
- package/.output/server/chunks/build/useWorkbenchAuth-DqjBX-6w.mjs.map +0 -1
- package/.output/server/chunks/build/useWorkbenchWorkspaces-GQVU9BLv.mjs.map +0 -1
- package/.output/server/chunks/build/useWorkspaceChannels-B13vROC1.mjs.map +0 -1
- package/.output/server/chunks/build/workshop-BDqWzJtr.mjs.map +0 -1
- package/scripts/_aw0746-stage5.mjs +0 -159
- package/scripts/_aw0746-stage6-aml.mjs +0 -177
- package/scripts/_aw0746-train-strong.py +0 -142
- package/scripts/_aw0747-readme-rows.mjs +0 -32
- package/scripts/_aw0748-fresh-channel.mjs +0 -21
- package/scripts/_aw0748-mock-dispatch-diag.mjs +0 -66
- package/scripts/_aw0748-wake-channel.mjs +0 -46
- package/scripts/_aw0749-readme-rows.mjs +0 -23
- package/scripts/_dbg-comm-verify.mjs +0 -188
- package/scripts/_dbg-im-e2e.mjs +0 -169
- package/scripts/_dbg-opt2-run.mjs +0 -114
- package/scripts/_dbg-opt2-setup.mjs +0 -95
- package/scripts/_dbg-param-map-e2e.ts +0 -248
- package/scripts/_dbg-param-map-rest-smoke.mjs +0 -73
- package/scripts/_dbg-param-real-scenario.mjs +0 -153
- package/scripts/_dbg-real-scenario-e2e.mjs +0 -246
- package/scripts/_dbg-recipe-stale-e2e.mjs +0 -135
- package/scripts/_dbg-schedule-ui-verify.mjs +0 -115
- package/scripts/_dbg-team-matrix.mjs +0 -148
- package/scripts/_dbg-ui-fullcrawl.mjs +0 -91
- package/scripts/_dbg-ui-static-audit.mjs +0 -65
- package/scripts/_dbg-write-lock-e2e.mjs +0 -131
- /package/.output/public/_nuxt/{DdNujZN52.js → DdNujZN5.js} +0 -0
|
@@ -1,2184 +1,2418 @@
|
|
|
1
|
-
[
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
"
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
"message":
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
"
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
"
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
{
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
"
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
"
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
"
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
"
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
{
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
"
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
"
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
"
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
|
|
479
|
-
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
"
|
|
501
|
-
|
|
502
|
-
|
|
503
|
-
|
|
504
|
-
|
|
505
|
-
|
|
506
|
-
|
|
507
|
-
|
|
508
|
-
|
|
509
|
-
|
|
510
|
-
|
|
511
|
-
|
|
512
|
-
|
|
513
|
-
|
|
514
|
-
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
|
|
518
|
-
|
|
519
|
-
|
|
520
|
-
|
|
521
|
-
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
{
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
|
|
535
|
-
|
|
536
|
-
|
|
537
|
-
|
|
538
|
-
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
|
|
543
|
-
"
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
|
|
551
|
-
|
|
552
|
-
|
|
553
|
-
|
|
554
|
-
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
|
|
561
|
-
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
|
|
565
|
-
|
|
566
|
-
|
|
567
|
-
|
|
568
|
-
|
|
569
|
-
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
|
|
580
|
-
|
|
581
|
-
|
|
582
|
-
|
|
583
|
-
|
|
584
|
-
|
|
585
|
-
|
|
586
|
-
|
|
587
|
-
|
|
588
|
-
|
|
589
|
-
}
|
|
590
|
-
|
|
591
|
-
|
|
592
|
-
|
|
593
|
-
|
|
594
|
-
"
|
|
595
|
-
|
|
596
|
-
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
|
|
602
|
-
|
|
603
|
-
|
|
604
|
-
|
|
605
|
-
|
|
606
|
-
|
|
607
|
-
|
|
608
|
-
|
|
609
|
-
|
|
610
|
-
|
|
611
|
-
|
|
612
|
-
|
|
613
|
-
|
|
614
|
-
|
|
615
|
-
|
|
616
|
-
|
|
617
|
-
|
|
618
|
-
|
|
619
|
-
|
|
620
|
-
|
|
621
|
-
|
|
622
|
-
|
|
623
|
-
|
|
624
|
-
|
|
625
|
-
|
|
626
|
-
{
|
|
627
|
-
|
|
628
|
-
|
|
629
|
-
|
|
630
|
-
|
|
631
|
-
|
|
632
|
-
|
|
633
|
-
|
|
634
|
-
|
|
635
|
-
|
|
636
|
-
|
|
637
|
-
|
|
638
|
-
|
|
639
|
-
|
|
640
|
-
|
|
641
|
-
|
|
642
|
-
|
|
643
|
-
|
|
644
|
-
}
|
|
645
|
-
|
|
646
|
-
|
|
647
|
-
|
|
648
|
-
|
|
649
|
-
"
|
|
650
|
-
|
|
651
|
-
|
|
652
|
-
|
|
653
|
-
|
|
654
|
-
|
|
655
|
-
|
|
656
|
-
|
|
657
|
-
|
|
658
|
-
|
|
659
|
-
|
|
660
|
-
|
|
661
|
-
|
|
662
|
-
|
|
663
|
-
|
|
664
|
-
|
|
665
|
-
|
|
666
|
-
|
|
667
|
-
|
|
668
|
-
|
|
669
|
-
|
|
670
|
-
|
|
671
|
-
|
|
672
|
-
|
|
673
|
-
|
|
674
|
-
|
|
675
|
-
|
|
676
|
-
|
|
677
|
-
|
|
678
|
-
}
|
|
679
|
-
|
|
680
|
-
|
|
681
|
-
|
|
682
|
-
|
|
683
|
-
|
|
684
|
-
|
|
685
|
-
|
|
686
|
-
|
|
687
|
-
|
|
688
|
-
|
|
689
|
-
|
|
690
|
-
|
|
691
|
-
|
|
692
|
-
|
|
693
|
-
|
|
694
|
-
|
|
695
|
-
|
|
696
|
-
|
|
697
|
-
|
|
698
|
-
|
|
699
|
-
|
|
700
|
-
|
|
701
|
-
|
|
702
|
-
|
|
703
|
-
|
|
704
|
-
|
|
705
|
-
|
|
706
|
-
"
|
|
707
|
-
|
|
708
|
-
|
|
709
|
-
|
|
710
|
-
|
|
711
|
-
|
|
712
|
-
|
|
713
|
-
|
|
714
|
-
|
|
715
|
-
|
|
716
|
-
|
|
717
|
-
|
|
718
|
-
|
|
719
|
-
|
|
720
|
-
|
|
721
|
-
|
|
722
|
-
|
|
723
|
-
|
|
724
|
-
|
|
725
|
-
|
|
726
|
-
|
|
727
|
-
|
|
728
|
-
|
|
729
|
-
|
|
730
|
-
|
|
731
|
-
|
|
732
|
-
|
|
733
|
-
|
|
734
|
-
|
|
735
|
-
|
|
736
|
-
|
|
737
|
-
|
|
738
|
-
|
|
739
|
-
|
|
740
|
-
|
|
741
|
-
"
|
|
742
|
-
|
|
743
|
-
|
|
744
|
-
|
|
745
|
-
|
|
746
|
-
|
|
747
|
-
|
|
748
|
-
|
|
749
|
-
|
|
750
|
-
|
|
751
|
-
|
|
752
|
-
|
|
753
|
-
|
|
754
|
-
|
|
755
|
-
|
|
756
|
-
|
|
757
|
-
|
|
758
|
-
|
|
759
|
-
|
|
760
|
-
|
|
761
|
-
|
|
762
|
-
|
|
763
|
-
"
|
|
764
|
-
|
|
765
|
-
|
|
766
|
-
|
|
767
|
-
|
|
768
|
-
|
|
769
|
-
|
|
770
|
-
|
|
771
|
-
|
|
772
|
-
|
|
773
|
-
|
|
774
|
-
|
|
775
|
-
|
|
776
|
-
|
|
777
|
-
|
|
778
|
-
|
|
779
|
-
|
|
780
|
-
|
|
781
|
-
|
|
782
|
-
|
|
783
|
-
|
|
784
|
-
|
|
785
|
-
|
|
786
|
-
|
|
787
|
-
|
|
788
|
-
|
|
789
|
-
|
|
790
|
-
|
|
791
|
-
|
|
792
|
-
|
|
793
|
-
|
|
794
|
-
|
|
795
|
-
|
|
796
|
-
|
|
797
|
-
|
|
798
|
-
|
|
799
|
-
|
|
800
|
-
|
|
801
|
-
|
|
802
|
-
|
|
803
|
-
|
|
804
|
-
|
|
805
|
-
|
|
806
|
-
|
|
807
|
-
|
|
808
|
-
|
|
809
|
-
"
|
|
810
|
-
|
|
811
|
-
|
|
812
|
-
|
|
813
|
-
{
|
|
814
|
-
|
|
815
|
-
|
|
816
|
-
|
|
817
|
-
|
|
818
|
-
|
|
819
|
-
|
|
820
|
-
|
|
821
|
-
|
|
822
|
-
|
|
823
|
-
|
|
824
|
-
|
|
825
|
-
|
|
826
|
-
|
|
827
|
-
|
|
828
|
-
|
|
829
|
-
|
|
830
|
-
|
|
831
|
-
|
|
832
|
-
|
|
833
|
-
|
|
834
|
-
|
|
835
|
-
|
|
836
|
-
|
|
837
|
-
|
|
838
|
-
|
|
839
|
-
|
|
840
|
-
|
|
841
|
-
|
|
842
|
-
|
|
843
|
-
|
|
844
|
-
|
|
845
|
-
|
|
846
|
-
|
|
847
|
-
}
|
|
848
|
-
|
|
849
|
-
|
|
850
|
-
|
|
851
|
-
|
|
852
|
-
|
|
853
|
-
|
|
854
|
-
|
|
855
|
-
{
|
|
856
|
-
|
|
857
|
-
|
|
858
|
-
|
|
859
|
-
|
|
860
|
-
|
|
861
|
-
|
|
862
|
-
|
|
863
|
-
|
|
864
|
-
|
|
865
|
-
|
|
866
|
-
|
|
867
|
-
|
|
868
|
-
|
|
869
|
-
|
|
870
|
-
|
|
871
|
-
|
|
872
|
-
|
|
873
|
-
|
|
874
|
-
|
|
875
|
-
|
|
876
|
-
|
|
877
|
-
|
|
878
|
-
|
|
879
|
-
|
|
880
|
-
|
|
881
|
-
|
|
882
|
-
|
|
883
|
-
|
|
884
|
-
|
|
885
|
-
|
|
886
|
-
|
|
887
|
-
|
|
888
|
-
|
|
889
|
-
|
|
890
|
-
|
|
891
|
-
|
|
892
|
-
|
|
893
|
-
|
|
894
|
-
|
|
895
|
-
|
|
896
|
-
|
|
897
|
-
|
|
898
|
-
|
|
899
|
-
|
|
900
|
-
|
|
901
|
-
|
|
902
|
-
|
|
903
|
-
|
|
904
|
-
|
|
905
|
-
|
|
906
|
-
|
|
907
|
-
|
|
908
|
-
|
|
909
|
-
|
|
910
|
-
|
|
911
|
-
|
|
912
|
-
|
|
913
|
-
|
|
914
|
-
|
|
915
|
-
|
|
916
|
-
|
|
917
|
-
|
|
918
|
-
|
|
919
|
-
{
|
|
920
|
-
|
|
921
|
-
|
|
922
|
-
|
|
923
|
-
|
|
924
|
-
|
|
925
|
-
|
|
926
|
-
|
|
927
|
-
|
|
928
|
-
|
|
929
|
-
|
|
930
|
-
|
|
931
|
-
|
|
932
|
-
|
|
933
|
-
|
|
934
|
-
|
|
935
|
-
|
|
936
|
-
|
|
937
|
-
|
|
938
|
-
|
|
939
|
-
|
|
940
|
-
|
|
941
|
-
|
|
942
|
-
|
|
943
|
-
|
|
944
|
-
|
|
945
|
-
|
|
946
|
-
|
|
947
|
-
}
|
|
948
|
-
|
|
949
|
-
|
|
950
|
-
|
|
951
|
-
|
|
952
|
-
|
|
953
|
-
|
|
954
|
-
|
|
955
|
-
|
|
956
|
-
|
|
957
|
-
|
|
958
|
-
|
|
959
|
-
|
|
960
|
-
|
|
961
|
-
|
|
962
|
-
|
|
963
|
-
|
|
964
|
-
|
|
965
|
-
|
|
966
|
-
|
|
967
|
-
|
|
968
|
-
|
|
969
|
-
|
|
970
|
-
|
|
971
|
-
|
|
972
|
-
|
|
973
|
-
|
|
974
|
-
|
|
975
|
-
|
|
976
|
-
|
|
977
|
-
|
|
978
|
-
|
|
979
|
-
|
|
980
|
-
|
|
981
|
-
|
|
982
|
-
|
|
983
|
-
|
|
984
|
-
|
|
985
|
-
|
|
986
|
-
|
|
987
|
-
|
|
988
|
-
|
|
989
|
-
|
|
990
|
-
|
|
991
|
-
|
|
992
|
-
|
|
993
|
-
|
|
994
|
-
|
|
995
|
-
|
|
996
|
-
}
|
|
997
|
-
|
|
998
|
-
|
|
999
|
-
|
|
1000
|
-
|
|
1001
|
-
|
|
1002
|
-
|
|
1003
|
-
|
|
1004
|
-
|
|
1005
|
-
|
|
1006
|
-
|
|
1007
|
-
|
|
1008
|
-
|
|
1009
|
-
|
|
1010
|
-
|
|
1011
|
-
|
|
1012
|
-
|
|
1013
|
-
|
|
1014
|
-
|
|
1015
|
-
|
|
1016
|
-
|
|
1017
|
-
|
|
1018
|
-
|
|
1019
|
-
|
|
1020
|
-
|
|
1021
|
-
|
|
1022
|
-
|
|
1023
|
-
|
|
1024
|
-
|
|
1025
|
-
|
|
1026
|
-
|
|
1027
|
-
|
|
1028
|
-
|
|
1029
|
-
|
|
1030
|
-
|
|
1031
|
-
|
|
1032
|
-
|
|
1033
|
-
|
|
1034
|
-
|
|
1035
|
-
"
|
|
1036
|
-
|
|
1037
|
-
|
|
1038
|
-
|
|
1039
|
-
|
|
1040
|
-
|
|
1041
|
-
|
|
1042
|
-
|
|
1043
|
-
|
|
1044
|
-
|
|
1045
|
-
|
|
1046
|
-
|
|
1047
|
-
|
|
1048
|
-
|
|
1049
|
-
|
|
1050
|
-
|
|
1051
|
-
|
|
1052
|
-
|
|
1053
|
-
|
|
1054
|
-
|
|
1055
|
-
|
|
1056
|
-
|
|
1057
|
-
"
|
|
1058
|
-
|
|
1059
|
-
|
|
1060
|
-
|
|
1061
|
-
|
|
1062
|
-
|
|
1063
|
-
|
|
1064
|
-
|
|
1065
|
-
|
|
1066
|
-
|
|
1067
|
-
|
|
1068
|
-
|
|
1069
|
-
|
|
1070
|
-
|
|
1071
|
-
|
|
1072
|
-
|
|
1073
|
-
|
|
1074
|
-
|
|
1075
|
-
|
|
1076
|
-
|
|
1077
|
-
|
|
1078
|
-
|
|
1079
|
-
|
|
1080
|
-
|
|
1081
|
-
|
|
1082
|
-
|
|
1083
|
-
|
|
1084
|
-
|
|
1085
|
-
|
|
1086
|
-
|
|
1087
|
-
|
|
1088
|
-
|
|
1089
|
-
|
|
1090
|
-
|
|
1091
|
-
|
|
1092
|
-
|
|
1093
|
-
"
|
|
1094
|
-
|
|
1095
|
-
|
|
1096
|
-
|
|
1097
|
-
|
|
1098
|
-
|
|
1099
|
-
|
|
1100
|
-
|
|
1101
|
-
|
|
1102
|
-
|
|
1103
|
-
|
|
1104
|
-
|
|
1105
|
-
|
|
1106
|
-
|
|
1107
|
-
|
|
1108
|
-
|
|
1109
|
-
|
|
1110
|
-
|
|
1111
|
-
|
|
1112
|
-
|
|
1113
|
-
|
|
1114
|
-
|
|
1115
|
-
|
|
1116
|
-
|
|
1117
|
-
|
|
1118
|
-
|
|
1119
|
-
|
|
1120
|
-
|
|
1121
|
-
|
|
1122
|
-
|
|
1123
|
-
|
|
1124
|
-
{
|
|
1125
|
-
|
|
1126
|
-
|
|
1127
|
-
|
|
1128
|
-
|
|
1129
|
-
|
|
1130
|
-
|
|
1131
|
-
|
|
1132
|
-
|
|
1133
|
-
|
|
1134
|
-
|
|
1135
|
-
"
|
|
1136
|
-
|
|
1137
|
-
|
|
1138
|
-
|
|
1139
|
-
|
|
1140
|
-
|
|
1141
|
-
|
|
1142
|
-
|
|
1143
|
-
|
|
1144
|
-
|
|
1145
|
-
|
|
1146
|
-
|
|
1147
|
-
|
|
1148
|
-
"
|
|
1149
|
-
|
|
1150
|
-
"
|
|
1151
|
-
|
|
1152
|
-
|
|
1153
|
-
|
|
1154
|
-
"
|
|
1155
|
-
|
|
1156
|
-
|
|
1157
|
-
|
|
1158
|
-
|
|
1159
|
-
|
|
1160
|
-
|
|
1161
|
-
|
|
1162
|
-
|
|
1163
|
-
|
|
1164
|
-
|
|
1165
|
-
|
|
1166
|
-
|
|
1167
|
-
|
|
1168
|
-
|
|
1169
|
-
|
|
1170
|
-
|
|
1171
|
-
|
|
1172
|
-
|
|
1173
|
-
|
|
1174
|
-
|
|
1175
|
-
|
|
1176
|
-
|
|
1177
|
-
|
|
1178
|
-
|
|
1179
|
-
|
|
1180
|
-
|
|
1181
|
-
|
|
1182
|
-
|
|
1183
|
-
|
|
1184
|
-
|
|
1185
|
-
|
|
1186
|
-
|
|
1187
|
-
|
|
1188
|
-
|
|
1189
|
-
|
|
1190
|
-
|
|
1191
|
-
|
|
1192
|
-
|
|
1193
|
-
|
|
1194
|
-
|
|
1195
|
-
|
|
1196
|
-
|
|
1197
|
-
|
|
1198
|
-
|
|
1199
|
-
|
|
1200
|
-
|
|
1201
|
-
|
|
1202
|
-
|
|
1203
|
-
|
|
1204
|
-
|
|
1205
|
-
|
|
1206
|
-
|
|
1207
|
-
|
|
1208
|
-
|
|
1209
|
-
|
|
1210
|
-
|
|
1211
|
-
|
|
1212
|
-
|
|
1213
|
-
|
|
1214
|
-
|
|
1215
|
-
|
|
1216
|
-
|
|
1217
|
-
|
|
1218
|
-
|
|
1219
|
-
|
|
1220
|
-
|
|
1221
|
-
|
|
1222
|
-
|
|
1223
|
-
|
|
1224
|
-
|
|
1225
|
-
|
|
1226
|
-
|
|
1227
|
-
|
|
1228
|
-
|
|
1229
|
-
|
|
1230
|
-
|
|
1231
|
-
|
|
1232
|
-
|
|
1233
|
-
|
|
1234
|
-
|
|
1235
|
-
|
|
1236
|
-
|
|
1237
|
-
|
|
1238
|
-
|
|
1239
|
-
|
|
1240
|
-
|
|
1241
|
-
|
|
1242
|
-
|
|
1243
|
-
|
|
1244
|
-
|
|
1245
|
-
|
|
1246
|
-
|
|
1247
|
-
|
|
1248
|
-
|
|
1249
|
-
|
|
1250
|
-
|
|
1251
|
-
|
|
1252
|
-
|
|
1253
|
-
|
|
1254
|
-
|
|
1255
|
-
|
|
1256
|
-
|
|
1257
|
-
|
|
1258
|
-
|
|
1259
|
-
|
|
1260
|
-
"
|
|
1261
|
-
|
|
1262
|
-
|
|
1263
|
-
|
|
1264
|
-
|
|
1265
|
-
|
|
1266
|
-
|
|
1267
|
-
|
|
1268
|
-
|
|
1269
|
-
|
|
1270
|
-
|
|
1271
|
-
|
|
1272
|
-
|
|
1273
|
-
|
|
1274
|
-
|
|
1275
|
-
|
|
1276
|
-
"
|
|
1277
|
-
|
|
1278
|
-
|
|
1279
|
-
"
|
|
1280
|
-
"
|
|
1281
|
-
|
|
1282
|
-
|
|
1283
|
-
|
|
1284
|
-
|
|
1285
|
-
|
|
1286
|
-
|
|
1287
|
-
|
|
1288
|
-
|
|
1289
|
-
|
|
1290
|
-
|
|
1291
|
-
|
|
1292
|
-
|
|
1293
|
-
|
|
1294
|
-
|
|
1295
|
-
|
|
1296
|
-
|
|
1297
|
-
|
|
1298
|
-
|
|
1299
|
-
|
|
1300
|
-
|
|
1301
|
-
|
|
1302
|
-
|
|
1303
|
-
|
|
1304
|
-
|
|
1305
|
-
|
|
1306
|
-
|
|
1307
|
-
|
|
1308
|
-
|
|
1309
|
-
|
|
1310
|
-
|
|
1311
|
-
|
|
1312
|
-
|
|
1313
|
-
|
|
1314
|
-
|
|
1315
|
-
|
|
1316
|
-
|
|
1317
|
-
|
|
1318
|
-
|
|
1319
|
-
|
|
1320
|
-
|
|
1321
|
-
|
|
1322
|
-
|
|
1323
|
-
|
|
1324
|
-
|
|
1325
|
-
|
|
1326
|
-
|
|
1327
|
-
|
|
1328
|
-
|
|
1329
|
-
|
|
1330
|
-
|
|
1331
|
-
|
|
1332
|
-
|
|
1333
|
-
|
|
1334
|
-
|
|
1335
|
-
|
|
1336
|
-
|
|
1337
|
-
|
|
1338
|
-
|
|
1339
|
-
|
|
1340
|
-
|
|
1341
|
-
|
|
1342
|
-
|
|
1343
|
-
|
|
1344
|
-
|
|
1345
|
-
|
|
1346
|
-
|
|
1347
|
-
|
|
1348
|
-
|
|
1349
|
-
|
|
1350
|
-
|
|
1351
|
-
|
|
1352
|
-
|
|
1353
|
-
|
|
1354
|
-
|
|
1355
|
-
|
|
1356
|
-
|
|
1357
|
-
|
|
1358
|
-
|
|
1359
|
-
|
|
1360
|
-
|
|
1361
|
-
|
|
1362
|
-
|
|
1363
|
-
|
|
1364
|
-
|
|
1365
|
-
|
|
1366
|
-
}
|
|
1367
|
-
|
|
1368
|
-
|
|
1369
|
-
|
|
1370
|
-
|
|
1371
|
-
|
|
1372
|
-
|
|
1373
|
-
|
|
1374
|
-
|
|
1375
|
-
|
|
1376
|
-
|
|
1377
|
-
|
|
1378
|
-
|
|
1379
|
-
|
|
1380
|
-
|
|
1381
|
-
|
|
1382
|
-
|
|
1383
|
-
|
|
1384
|
-
"
|
|
1385
|
-
|
|
1386
|
-
|
|
1387
|
-
|
|
1388
|
-
|
|
1389
|
-
|
|
1390
|
-
|
|
1391
|
-
|
|
1392
|
-
|
|
1393
|
-
|
|
1394
|
-
{
|
|
1395
|
-
|
|
1396
|
-
|
|
1397
|
-
|
|
1398
|
-
|
|
1399
|
-
|
|
1400
|
-
|
|
1401
|
-
|
|
1402
|
-
|
|
1403
|
-
|
|
1404
|
-
|
|
1405
|
-
|
|
1406
|
-
|
|
1407
|
-
"
|
|
1408
|
-
|
|
1409
|
-
|
|
1410
|
-
|
|
1411
|
-
{
|
|
1412
|
-
|
|
1413
|
-
|
|
1414
|
-
|
|
1415
|
-
|
|
1416
|
-
|
|
1417
|
-
|
|
1418
|
-
|
|
1419
|
-
|
|
1420
|
-
|
|
1421
|
-
}
|
|
1422
|
-
|
|
1423
|
-
|
|
1424
|
-
|
|
1425
|
-
|
|
1426
|
-
"
|
|
1427
|
-
|
|
1428
|
-
|
|
1429
|
-
|
|
1430
|
-
|
|
1431
|
-
|
|
1432
|
-
|
|
1433
|
-
|
|
1434
|
-
|
|
1435
|
-
|
|
1436
|
-
|
|
1437
|
-
|
|
1438
|
-
|
|
1439
|
-
|
|
1440
|
-
|
|
1441
|
-
|
|
1442
|
-
"
|
|
1443
|
-
|
|
1444
|
-
|
|
1445
|
-
|
|
1446
|
-
"
|
|
1447
|
-
"
|
|
1448
|
-
|
|
1449
|
-
|
|
1450
|
-
|
|
1451
|
-
|
|
1452
|
-
|
|
1453
|
-
|
|
1454
|
-
|
|
1455
|
-
|
|
1456
|
-
|
|
1457
|
-
|
|
1458
|
-
|
|
1459
|
-
|
|
1460
|
-
|
|
1461
|
-
|
|
1462
|
-
|
|
1463
|
-
|
|
1464
|
-
|
|
1465
|
-
|
|
1466
|
-
|
|
1467
|
-
|
|
1468
|
-
|
|
1469
|
-
|
|
1470
|
-
|
|
1471
|
-
|
|
1472
|
-
|
|
1473
|
-
|
|
1474
|
-
|
|
1475
|
-
|
|
1476
|
-
|
|
1477
|
-
|
|
1478
|
-
|
|
1479
|
-
|
|
1480
|
-
|
|
1481
|
-
|
|
1482
|
-
|
|
1483
|
-
|
|
1484
|
-
|
|
1485
|
-
|
|
1486
|
-
|
|
1487
|
-
|
|
1488
|
-
"
|
|
1489
|
-
|
|
1490
|
-
|
|
1491
|
-
|
|
1492
|
-
|
|
1493
|
-
|
|
1494
|
-
|
|
1495
|
-
|
|
1496
|
-
|
|
1497
|
-
|
|
1498
|
-
|
|
1499
|
-
|
|
1500
|
-
|
|
1501
|
-
|
|
1502
|
-
|
|
1503
|
-
|
|
1504
|
-
|
|
1505
|
-
|
|
1506
|
-
|
|
1507
|
-
|
|
1508
|
-
|
|
1509
|
-
|
|
1510
|
-
|
|
1511
|
-
}
|
|
1512
|
-
|
|
1513
|
-
|
|
1514
|
-
|
|
1515
|
-
|
|
1516
|
-
|
|
1517
|
-
|
|
1518
|
-
|
|
1519
|
-
{
|
|
1520
|
-
|
|
1521
|
-
|
|
1522
|
-
|
|
1523
|
-
|
|
1524
|
-
|
|
1525
|
-
|
|
1526
|
-
|
|
1527
|
-
|
|
1528
|
-
|
|
1529
|
-
|
|
1530
|
-
|
|
1531
|
-
|
|
1532
|
-
|
|
1533
|
-
|
|
1534
|
-
|
|
1535
|
-
|
|
1536
|
-
|
|
1537
|
-
|
|
1538
|
-
|
|
1539
|
-
|
|
1540
|
-
|
|
1541
|
-
|
|
1542
|
-
|
|
1543
|
-
|
|
1544
|
-
|
|
1545
|
-
|
|
1546
|
-
|
|
1547
|
-
|
|
1548
|
-
|
|
1549
|
-
|
|
1550
|
-
|
|
1551
|
-
|
|
1552
|
-
|
|
1553
|
-
|
|
1554
|
-
"
|
|
1555
|
-
|
|
1556
|
-
|
|
1557
|
-
|
|
1558
|
-
|
|
1559
|
-
|
|
1560
|
-
|
|
1561
|
-
|
|
1562
|
-
|
|
1563
|
-
|
|
1564
|
-
|
|
1565
|
-
}
|
|
1566
|
-
|
|
1567
|
-
|
|
1568
|
-
|
|
1569
|
-
"
|
|
1570
|
-
|
|
1571
|
-
|
|
1572
|
-
|
|
1573
|
-
|
|
1574
|
-
|
|
1575
|
-
|
|
1576
|
-
|
|
1577
|
-
|
|
1578
|
-
|
|
1579
|
-
|
|
1580
|
-
}
|
|
1581
|
-
|
|
1582
|
-
|
|
1583
|
-
|
|
1584
|
-
|
|
1585
|
-
|
|
1586
|
-
|
|
1587
|
-
|
|
1588
|
-
|
|
1589
|
-
|
|
1590
|
-
|
|
1591
|
-
|
|
1592
|
-
|
|
1593
|
-
|
|
1594
|
-
|
|
1595
|
-
|
|
1596
|
-
|
|
1597
|
-
|
|
1598
|
-
|
|
1599
|
-
|
|
1600
|
-
|
|
1601
|
-
|
|
1602
|
-
|
|
1603
|
-
|
|
1604
|
-
|
|
1605
|
-
|
|
1606
|
-
|
|
1607
|
-
|
|
1608
|
-
|
|
1609
|
-
|
|
1610
|
-
|
|
1611
|
-
|
|
1612
|
-
|
|
1613
|
-
|
|
1614
|
-
|
|
1615
|
-
|
|
1616
|
-
|
|
1617
|
-
|
|
1618
|
-
|
|
1619
|
-
|
|
1620
|
-
|
|
1621
|
-
|
|
1622
|
-
|
|
1623
|
-
|
|
1624
|
-
|
|
1625
|
-
|
|
1626
|
-
|
|
1627
|
-
|
|
1628
|
-
|
|
1629
|
-
|
|
1630
|
-
|
|
1631
|
-
|
|
1632
|
-
"
|
|
1633
|
-
|
|
1634
|
-
|
|
1635
|
-
|
|
1636
|
-
|
|
1637
|
-
|
|
1638
|
-
|
|
1639
|
-
|
|
1640
|
-
|
|
1641
|
-
|
|
1642
|
-
|
|
1643
|
-
{
|
|
1644
|
-
|
|
1645
|
-
|
|
1646
|
-
|
|
1647
|
-
|
|
1648
|
-
|
|
1649
|
-
|
|
1650
|
-
|
|
1651
|
-
|
|
1652
|
-
|
|
1653
|
-
|
|
1654
|
-
|
|
1655
|
-
|
|
1656
|
-
|
|
1657
|
-
|
|
1658
|
-
|
|
1659
|
-
|
|
1660
|
-
|
|
1661
|
-
|
|
1662
|
-
|
|
1663
|
-
|
|
1664
|
-
|
|
1665
|
-
|
|
1666
|
-
|
|
1667
|
-
|
|
1668
|
-
|
|
1669
|
-
|
|
1670
|
-
|
|
1671
|
-
|
|
1672
|
-
|
|
1673
|
-
|
|
1674
|
-
|
|
1675
|
-
|
|
1676
|
-
|
|
1677
|
-
|
|
1678
|
-
|
|
1679
|
-
|
|
1680
|
-
|
|
1681
|
-
|
|
1682
|
-
|
|
1683
|
-
|
|
1684
|
-
|
|
1685
|
-
{
|
|
1686
|
-
|
|
1687
|
-
|
|
1688
|
-
|
|
1689
|
-
|
|
1690
|
-
|
|
1691
|
-
|
|
1692
|
-
|
|
1693
|
-
|
|
1694
|
-
|
|
1695
|
-
|
|
1696
|
-
|
|
1697
|
-
|
|
1698
|
-
|
|
1699
|
-
|
|
1700
|
-
|
|
1701
|
-
|
|
1702
|
-
|
|
1703
|
-
|
|
1704
|
-
|
|
1705
|
-
|
|
1706
|
-
|
|
1707
|
-
|
|
1708
|
-
|
|
1709
|
-
|
|
1710
|
-
|
|
1711
|
-
|
|
1712
|
-
|
|
1713
|
-
|
|
1714
|
-
|
|
1715
|
-
|
|
1716
|
-
|
|
1717
|
-
|
|
1718
|
-
|
|
1719
|
-
|
|
1720
|
-
|
|
1721
|
-
|
|
1722
|
-
|
|
1723
|
-
|
|
1724
|
-
|
|
1725
|
-
|
|
1726
|
-
|
|
1727
|
-
|
|
1728
|
-
|
|
1729
|
-
"
|
|
1730
|
-
|
|
1731
|
-
|
|
1732
|
-
|
|
1733
|
-
|
|
1734
|
-
|
|
1735
|
-
|
|
1736
|
-
|
|
1737
|
-
|
|
1738
|
-
|
|
1739
|
-
|
|
1740
|
-
|
|
1741
|
-
|
|
1742
|
-
|
|
1743
|
-
|
|
1744
|
-
|
|
1745
|
-
|
|
1746
|
-
|
|
1747
|
-
|
|
1748
|
-
|
|
1749
|
-
|
|
1750
|
-
|
|
1751
|
-
|
|
1752
|
-
|
|
1753
|
-
|
|
1754
|
-
|
|
1755
|
-
|
|
1756
|
-
|
|
1757
|
-
|
|
1758
|
-
|
|
1759
|
-
|
|
1760
|
-
|
|
1761
|
-
|
|
1762
|
-
|
|
1763
|
-
|
|
1764
|
-
|
|
1765
|
-
|
|
1766
|
-
|
|
1767
|
-
|
|
1768
|
-
|
|
1769
|
-
|
|
1770
|
-
|
|
1771
|
-
|
|
1772
|
-
|
|
1773
|
-
|
|
1774
|
-
|
|
1775
|
-
|
|
1776
|
-
|
|
1777
|
-
|
|
1778
|
-
|
|
1779
|
-
|
|
1780
|
-
|
|
1781
|
-
|
|
1782
|
-
|
|
1783
|
-
|
|
1784
|
-
|
|
1785
|
-
|
|
1786
|
-
|
|
1787
|
-
|
|
1788
|
-
|
|
1789
|
-
|
|
1790
|
-
|
|
1791
|
-
|
|
1792
|
-
|
|
1793
|
-
|
|
1794
|
-
|
|
1795
|
-
|
|
1796
|
-
|
|
1797
|
-
|
|
1798
|
-
|
|
1799
|
-
|
|
1800
|
-
|
|
1801
|
-
|
|
1802
|
-
|
|
1803
|
-
|
|
1804
|
-
|
|
1805
|
-
|
|
1806
|
-
|
|
1807
|
-
|
|
1808
|
-
{
|
|
1809
|
-
|
|
1810
|
-
|
|
1811
|
-
|
|
1812
|
-
|
|
1813
|
-
|
|
1814
|
-
|
|
1815
|
-
|
|
1816
|
-
|
|
1817
|
-
|
|
1818
|
-
|
|
1819
|
-
|
|
1820
|
-
}
|
|
1821
|
-
|
|
1822
|
-
|
|
1823
|
-
|
|
1824
|
-
"
|
|
1825
|
-
|
|
1826
|
-
|
|
1827
|
-
|
|
1828
|
-
|
|
1829
|
-
|
|
1830
|
-
|
|
1831
|
-
|
|
1832
|
-
|
|
1833
|
-
|
|
1834
|
-
|
|
1835
|
-
|
|
1836
|
-
|
|
1837
|
-
|
|
1838
|
-
|
|
1839
|
-
|
|
1840
|
-
|
|
1841
|
-
|
|
1842
|
-
|
|
1843
|
-
|
|
1844
|
-
|
|
1845
|
-
|
|
1846
|
-
|
|
1847
|
-
|
|
1848
|
-
|
|
1849
|
-
|
|
1850
|
-
|
|
1851
|
-
|
|
1852
|
-
|
|
1853
|
-
|
|
1854
|
-
|
|
1855
|
-
|
|
1856
|
-
|
|
1857
|
-
|
|
1858
|
-
|
|
1859
|
-
|
|
1860
|
-
|
|
1861
|
-
|
|
1862
|
-
|
|
1863
|
-
|
|
1864
|
-
|
|
1865
|
-
|
|
1866
|
-
|
|
1867
|
-
|
|
1868
|
-
|
|
1869
|
-
|
|
1870
|
-
|
|
1871
|
-
|
|
1872
|
-
|
|
1873
|
-
|
|
1874
|
-
|
|
1875
|
-
|
|
1876
|
-
|
|
1877
|
-
|
|
1878
|
-
|
|
1879
|
-
|
|
1880
|
-
|
|
1881
|
-
|
|
1882
|
-
|
|
1883
|
-
|
|
1884
|
-
|
|
1885
|
-
|
|
1886
|
-
|
|
1887
|
-
|
|
1888
|
-
|
|
1889
|
-
|
|
1890
|
-
|
|
1891
|
-
|
|
1892
|
-
|
|
1893
|
-
|
|
1894
|
-
|
|
1895
|
-
|
|
1896
|
-
"
|
|
1897
|
-
|
|
1898
|
-
|
|
1899
|
-
|
|
1900
|
-
|
|
1901
|
-
|
|
1902
|
-
|
|
1903
|
-
|
|
1904
|
-
|
|
1905
|
-
|
|
1906
|
-
|
|
1907
|
-
|
|
1908
|
-
|
|
1909
|
-
|
|
1910
|
-
|
|
1911
|
-
|
|
1912
|
-
|
|
1913
|
-
|
|
1914
|
-
|
|
1915
|
-
|
|
1916
|
-
|
|
1917
|
-
|
|
1918
|
-
|
|
1919
|
-
|
|
1920
|
-
|
|
1921
|
-
|
|
1922
|
-
|
|
1923
|
-
|
|
1924
|
-
|
|
1925
|
-
|
|
1926
|
-
|
|
1927
|
-
|
|
1928
|
-
|
|
1929
|
-
|
|
1930
|
-
|
|
1931
|
-
|
|
1932
|
-
|
|
1933
|
-
|
|
1934
|
-
|
|
1935
|
-
|
|
1936
|
-
|
|
1937
|
-
"
|
|
1938
|
-
|
|
1939
|
-
|
|
1940
|
-
|
|
1941
|
-
|
|
1942
|
-
|
|
1943
|
-
|
|
1944
|
-
|
|
1945
|
-
|
|
1946
|
-
|
|
1947
|
-
|
|
1948
|
-
|
|
1949
|
-
|
|
1950
|
-
|
|
1951
|
-
|
|
1952
|
-
|
|
1953
|
-
|
|
1954
|
-
|
|
1955
|
-
|
|
1956
|
-
|
|
1957
|
-
|
|
1958
|
-
|
|
1959
|
-
|
|
1960
|
-
|
|
1961
|
-
|
|
1962
|
-
|
|
1963
|
-
|
|
1964
|
-
|
|
1965
|
-
|
|
1966
|
-
|
|
1967
|
-
|
|
1968
|
-
|
|
1969
|
-
|
|
1970
|
-
|
|
1971
|
-
|
|
1972
|
-
|
|
1973
|
-
|
|
1974
|
-
|
|
1975
|
-
|
|
1976
|
-
|
|
1977
|
-
|
|
1978
|
-
|
|
1979
|
-
|
|
1980
|
-
{
|
|
1981
|
-
|
|
1982
|
-
|
|
1983
|
-
|
|
1984
|
-
|
|
1985
|
-
|
|
1986
|
-
|
|
1987
|
-
|
|
1988
|
-
|
|
1989
|
-
|
|
1990
|
-
|
|
1991
|
-
|
|
1992
|
-
|
|
1993
|
-
|
|
1994
|
-
|
|
1995
|
-
|
|
1996
|
-
|
|
1997
|
-
|
|
1998
|
-
|
|
1999
|
-
|
|
2000
|
-
|
|
2001
|
-
|
|
2002
|
-
|
|
2003
|
-
|
|
2004
|
-
|
|
2005
|
-
|
|
2006
|
-
|
|
2007
|
-
|
|
2008
|
-
|
|
2009
|
-
|
|
2010
|
-
|
|
2011
|
-
|
|
2012
|
-
"
|
|
2013
|
-
|
|
2014
|
-
|
|
2015
|
-
|
|
2016
|
-
|
|
2017
|
-
|
|
2018
|
-
|
|
2019
|
-
|
|
2020
|
-
|
|
2021
|
-
|
|
2022
|
-
|
|
2023
|
-
"
|
|
2024
|
-
|
|
2025
|
-
|
|
2026
|
-
|
|
2027
|
-
|
|
2028
|
-
|
|
2029
|
-
|
|
2030
|
-
|
|
2031
|
-
|
|
2032
|
-
"
|
|
2033
|
-
|
|
2034
|
-
|
|
2035
|
-
|
|
2036
|
-
|
|
2037
|
-
|
|
2038
|
-
|
|
2039
|
-
|
|
2040
|
-
|
|
2041
|
-
|
|
2042
|
-
|
|
2043
|
-
|
|
2044
|
-
|
|
2045
|
-
|
|
2046
|
-
|
|
2047
|
-
|
|
2048
|
-
|
|
2049
|
-
|
|
2050
|
-
|
|
2051
|
-
|
|
2052
|
-
|
|
2053
|
-
|
|
2054
|
-
|
|
2055
|
-
|
|
2056
|
-
|
|
2057
|
-
|
|
2058
|
-
|
|
2059
|
-
|
|
2060
|
-
|
|
2061
|
-
|
|
2062
|
-
|
|
2063
|
-
|
|
2064
|
-
|
|
2065
|
-
|
|
2066
|
-
|
|
2067
|
-
|
|
2068
|
-
|
|
2069
|
-
|
|
2070
|
-
|
|
2071
|
-
|
|
2072
|
-
|
|
2073
|
-
|
|
2074
|
-
|
|
2075
|
-
|
|
2076
|
-
|
|
2077
|
-
|
|
2078
|
-
|
|
2079
|
-
|
|
2080
|
-
|
|
2081
|
-
|
|
2082
|
-
|
|
2083
|
-
|
|
2084
|
-
|
|
2085
|
-
|
|
2086
|
-
|
|
2087
|
-
|
|
2088
|
-
|
|
2089
|
-
|
|
2090
|
-
|
|
2091
|
-
|
|
2092
|
-
|
|
2093
|
-
|
|
2094
|
-
|
|
2095
|
-
|
|
2096
|
-
|
|
2097
|
-
|
|
2098
|
-
|
|
2099
|
-
|
|
2100
|
-
|
|
2101
|
-
|
|
2102
|
-
|
|
2103
|
-
|
|
2104
|
-
|
|
2105
|
-
|
|
2106
|
-
|
|
2107
|
-
|
|
2108
|
-
|
|
2109
|
-
|
|
2110
|
-
|
|
2111
|
-
|
|
2112
|
-
|
|
2113
|
-
|
|
2114
|
-
"
|
|
2115
|
-
"
|
|
2116
|
-
|
|
2117
|
-
|
|
2118
|
-
|
|
2119
|
-
{
|
|
2120
|
-
|
|
2121
|
-
|
|
2122
|
-
|
|
2123
|
-
|
|
2124
|
-
|
|
2125
|
-
|
|
2126
|
-
|
|
2127
|
-
|
|
2128
|
-
|
|
2129
|
-
|
|
2130
|
-
|
|
2131
|
-
|
|
2132
|
-
|
|
2133
|
-
|
|
2134
|
-
|
|
2135
|
-
|
|
2136
|
-
|
|
2137
|
-
|
|
2138
|
-
|
|
2139
|
-
|
|
2140
|
-
|
|
2141
|
-
"
|
|
2142
|
-
|
|
2143
|
-
|
|
2144
|
-
|
|
2145
|
-
|
|
2146
|
-
|
|
2147
|
-
|
|
2148
|
-
|
|
2149
|
-
|
|
2150
|
-
|
|
2151
|
-
|
|
2152
|
-
|
|
2153
|
-
|
|
2154
|
-
|
|
2155
|
-
|
|
2156
|
-
|
|
2157
|
-
|
|
2158
|
-
|
|
2159
|
-
|
|
2160
|
-
|
|
2161
|
-
|
|
2162
|
-
|
|
2163
|
-
|
|
2164
|
-
|
|
2165
|
-
|
|
2166
|
-
|
|
2167
|
-
|
|
2168
|
-
|
|
2169
|
-
|
|
2170
|
-
|
|
2171
|
-
|
|
2172
|
-
|
|
2173
|
-
|
|
2174
|
-
"
|
|
2175
|
-
|
|
2176
|
-
|
|
2177
|
-
|
|
2178
|
-
|
|
2179
|
-
|
|
2180
|
-
|
|
2181
|
-
|
|
2182
|
-
|
|
2183
|
-
|
|
2184
|
-
|
|
1
|
+
[
|
|
2
|
+
{
|
|
3
|
+
"name": "report_progress",
|
|
4
|
+
"label": "Report Progress",
|
|
5
|
+
"description": "Report your current task progress as a percentage (0-100). Call this whenever you make meaningful progress on your task.",
|
|
6
|
+
"parameters": {
|
|
7
|
+
"type": "object",
|
|
8
|
+
"properties": {
|
|
9
|
+
"progress": {
|
|
10
|
+
"type": "number",
|
|
11
|
+
"description": "Progress percentage 0-100"
|
|
12
|
+
},
|
|
13
|
+
"message": {
|
|
14
|
+
"type": "string",
|
|
15
|
+
"description": "Brief status message describing what you are doing"
|
|
16
|
+
}
|
|
17
|
+
},
|
|
18
|
+
"required": [
|
|
19
|
+
"progress"
|
|
20
|
+
],
|
|
21
|
+
"additionalProperties": false
|
|
22
|
+
}
|
|
23
|
+
},
|
|
24
|
+
{
|
|
25
|
+
"name": "complete_task",
|
|
26
|
+
"label": "Complete Task",
|
|
27
|
+
"description": "Mark a task as completed with final deliverables. Workers call this when their assigned task is done. Lead calls this for parent tasks when all children are done.",
|
|
28
|
+
"parameters": {
|
|
29
|
+
"type": "object",
|
|
30
|
+
"properties": {
|
|
31
|
+
"summary": {
|
|
32
|
+
"type": "string",
|
|
33
|
+
"description": "Summary of what was accomplished"
|
|
34
|
+
},
|
|
35
|
+
"deliverable": {
|
|
36
|
+
"type": "string",
|
|
37
|
+
"description": "Final deliverable: code, analysis result, document content, etc."
|
|
38
|
+
},
|
|
39
|
+
"task_id": {
|
|
40
|
+
"type": "string",
|
|
41
|
+
"description": "Task ID to complete. If omitted, completes your current assigned task."
|
|
42
|
+
}
|
|
43
|
+
},
|
|
44
|
+
"required": [
|
|
45
|
+
"summary"
|
|
46
|
+
],
|
|
47
|
+
"additionalProperties": false
|
|
48
|
+
}
|
|
49
|
+
},
|
|
50
|
+
{
|
|
51
|
+
"name": "submit_task",
|
|
52
|
+
"label": "Submit Task",
|
|
53
|
+
"description": "(Lead only) Register one tracked root task for a genuinely multi-step HUMAN request. A single source chat message has exactly one root, even if the title changes. Do not create a second root to polish or revise wording; reuse the existing root and close it with an ordered acceptance summary. If the request is simple, answer directly without submit_task.",
|
|
54
|
+
"parameters": {
|
|
55
|
+
"type": "object",
|
|
56
|
+
"properties": {
|
|
57
|
+
"title": {
|
|
58
|
+
"type": "string",
|
|
59
|
+
"description": "Short, verifiable title of the request (becomes the root task title)"
|
|
60
|
+
},
|
|
61
|
+
"description": {
|
|
62
|
+
"type": "string",
|
|
63
|
+
"description": "The full user request plus its constraints, in the user's own terms — this is what you will decompose and later verify each deliverable against"
|
|
64
|
+
},
|
|
65
|
+
"budget_minutes": {
|
|
66
|
+
"type": "number",
|
|
67
|
+
"description": "任务执行预算(分钟,可选;缺省用平台 root_timeout_ms)。长链路(多阶段巡检/AML 训练链)建议显式给足,如 60 —— 预算从入场起算,超预算未完成会被超时收口。"
|
|
68
|
+
}
|
|
69
|
+
},
|
|
70
|
+
"required": [
|
|
71
|
+
"title",
|
|
72
|
+
"description"
|
|
73
|
+
],
|
|
74
|
+
"additionalProperties": false
|
|
75
|
+
}
|
|
76
|
+
},
|
|
77
|
+
{
|
|
78
|
+
"name": "dispatch_task",
|
|
79
|
+
"label": "Dispatch Task",
|
|
80
|
+
"description": "(Lead only) Create one bounded child under an existing parent and assign it to a worker. The platform enforces finite root budgets (total child attempts, active children, canceled children, and ordinary depth); changing the title does not reset them. Freeze the child ID/title/contract after dispatch. Prefer update_task, send_message_to_agent, or reassign_task over cancel-and-recreate. Always include parent_task_id, route_reason, and a self-contained objective/deliverable/acceptance/boundary brief.",
|
|
81
|
+
"parameters": {
|
|
82
|
+
"type": "object",
|
|
83
|
+
"properties": {
|
|
84
|
+
"assignee_id": {
|
|
85
|
+
"type": "string",
|
|
86
|
+
"description": "ID of the worker agent to assign this task to"
|
|
87
|
+
},
|
|
88
|
+
"title": {
|
|
89
|
+
"type": "string",
|
|
90
|
+
"description": "Short task title"
|
|
91
|
+
},
|
|
92
|
+
"route_reason": {
|
|
93
|
+
"type": "string",
|
|
94
|
+
"description": "Why this agent was chosen (specialty fit / load / past success evidence) — one short line, kept as the auditable routing decision"
|
|
95
|
+
},
|
|
96
|
+
"description": {
|
|
97
|
+
"type": "string",
|
|
98
|
+
"description": "Detailed task description with requirements"
|
|
99
|
+
},
|
|
100
|
+
"parent_task_id": {
|
|
101
|
+
"type": "string",
|
|
102
|
+
"description": "The ID of the submitted parent task this subtask belongs to (from the task list)"
|
|
103
|
+
},
|
|
104
|
+
"grant_node_ids": {
|
|
105
|
+
"type": "array",
|
|
106
|
+
"items": {
|
|
107
|
+
"type": "string"
|
|
108
|
+
},
|
|
109
|
+
"description": "可选(Lead only):随本任务把节点授权授予 assignee —— 数组元素为节点 id,每个节点必须是 lead 自己已绑定的节点(daq/dcw 均可);任一节点不在 lead 绑定面则整单失败、任务不创建。用于派发时一并下发 DAQ/DCW 权限,worker 无需再等手动绑定。"
|
|
110
|
+
},
|
|
111
|
+
"grant_mode": {
|
|
112
|
+
"type": "string",
|
|
113
|
+
"enum": [
|
|
114
|
+
"auto",
|
|
115
|
+
"manual"
|
|
116
|
+
],
|
|
117
|
+
"description": "可选:随任务授予的绑定模式;缺省随 lead 自己的绑定模式(manual=每次写入需用户批准)"
|
|
118
|
+
}
|
|
119
|
+
},
|
|
120
|
+
"required": [
|
|
121
|
+
"assignee_id",
|
|
122
|
+
"title",
|
|
123
|
+
"parent_task_id"
|
|
124
|
+
],
|
|
125
|
+
"additionalProperties": false
|
|
126
|
+
}
|
|
127
|
+
},
|
|
128
|
+
{
|
|
129
|
+
"name": "send_message_to_agent",
|
|
130
|
+
"label": "Send Message",
|
|
131
|
+
"description": "Send a message to another agent (lead or worker) in the same channel via the channel mailbox (routed to the recipient's own mailbox). Use priority \"immediate\" for urgent real-time messages that the recipient sees instantly during work; use \"task\" (default) for messages that queue until the recipient finishes their current task. Set require_reply=true to demand a response: the recipient must reply with their result via this same tool. When replying to a message, pass its message_id as in_reply_to — replies are auto-upgraded to real-time delivery and pushed straight into the recipient's running session, so the answer reaches a waiting sender instantly.",
|
|
132
|
+
"parameters": {
|
|
133
|
+
"type": "object",
|
|
134
|
+
"properties": {
|
|
135
|
+
"to_agent_id": {
|
|
136
|
+
"type": "string",
|
|
137
|
+
"description": "Recipient agent ID"
|
|
138
|
+
},
|
|
139
|
+
"message": {
|
|
140
|
+
"type": "string",
|
|
141
|
+
"description": "Message content (when replying: your execution result + the content they asked for)"
|
|
142
|
+
},
|
|
143
|
+
"priority": {
|
|
144
|
+
"type": "string",
|
|
145
|
+
"enum": [
|
|
146
|
+
"immediate",
|
|
147
|
+
"task"
|
|
148
|
+
],
|
|
149
|
+
"description": "Message priority: \"immediate\" = inject into recipient's running session instantly; \"task\" = queue for later consumption (default)"
|
|
150
|
+
},
|
|
151
|
+
"require_reply": {
|
|
152
|
+
"type": "boolean",
|
|
153
|
+
"description": "Trigger: true = recipient MUST reply with result/content (default false)"
|
|
154
|
+
},
|
|
155
|
+
"in_reply_to": {
|
|
156
|
+
"type": "string",
|
|
157
|
+
"description": "Message ID this reply refers to (set when replying to a trigger message)"
|
|
158
|
+
}
|
|
159
|
+
},
|
|
160
|
+
"required": [
|
|
161
|
+
"to_agent_id",
|
|
162
|
+
"message"
|
|
163
|
+
],
|
|
164
|
+
"additionalProperties": false
|
|
165
|
+
}
|
|
166
|
+
},
|
|
167
|
+
{
|
|
168
|
+
"name": "poll_messages",
|
|
169
|
+
"label": "Poll Inbox",
|
|
170
|
+
"description": "Check your own mailbox for unread messages from other agents. When waiting for a reply, pass wait_seconds (e.g. 90) to block until it arrives or the wait expires — one blocking call replaces repeated empty polling. Returned collaboration messages are acknowledged on read (removed from the queue); task assignments are left for execution. Replies to your trigger messages are also pushed into your running session in real time — if you already saw an injected \"[实时消息 from X]\", that IS the reply, no need to poll again.",
|
|
171
|
+
"parameters": {
|
|
172
|
+
"type": "object",
|
|
173
|
+
"properties": {
|
|
174
|
+
"limit": {
|
|
175
|
+
"type": "number",
|
|
176
|
+
"description": "Max messages to return (default 10)"
|
|
177
|
+
},
|
|
178
|
+
"wait_seconds": {
|
|
179
|
+
"type": "number",
|
|
180
|
+
"description": "Block up to N seconds (0-180) waiting for a message before returning empty (default 0 = immediate check)"
|
|
181
|
+
}
|
|
182
|
+
},
|
|
183
|
+
"additionalProperties": false
|
|
184
|
+
}
|
|
185
|
+
},
|
|
186
|
+
{
|
|
187
|
+
"name": "read_channel_mail",
|
|
188
|
+
"label": "Read Channel Mail",
|
|
189
|
+
"description": "(Lead only) Read the FULL channel mail log: every message routed through the channel mailbox (peer messages, real-time replies with in_reply_to chains, and task deliveries), newest first, with read/unread state. Pass agent_id to inspect a specific member's mailbox. Use this BEFORE dispatching a task whose result may already exist — if a worker already computed/delivered the value via mail, do NOT re-dispatch it; reference the concrete result from the mail instead.",
|
|
190
|
+
"parameters": {
|
|
191
|
+
"type": "object",
|
|
192
|
+
"properties": {
|
|
193
|
+
"limit": {
|
|
194
|
+
"type": "number",
|
|
195
|
+
"description": "Max mails to return (default 50, max 500)"
|
|
196
|
+
},
|
|
197
|
+
"agent_id": {
|
|
198
|
+
"type": "string",
|
|
199
|
+
"description": "Optional: only show mails involving this agent (as sender or recipient)"
|
|
200
|
+
}
|
|
201
|
+
},
|
|
202
|
+
"additionalProperties": false
|
|
203
|
+
}
|
|
204
|
+
},
|
|
205
|
+
{
|
|
206
|
+
"name": "broadcast_message",
|
|
207
|
+
"label": "Broadcast",
|
|
208
|
+
"description": "Broadcast a message to ALL agents in the channel (lead + all workers). Useful for announcements.",
|
|
209
|
+
"parameters": {
|
|
210
|
+
"type": "object",
|
|
211
|
+
"properties": {
|
|
212
|
+
"message": {
|
|
213
|
+
"type": "string",
|
|
214
|
+
"description": "Message content to broadcast"
|
|
215
|
+
},
|
|
216
|
+
"priority": {
|
|
217
|
+
"type": "string",
|
|
218
|
+
"enum": [
|
|
219
|
+
"immediate",
|
|
220
|
+
"task"
|
|
221
|
+
],
|
|
222
|
+
"description": "Message priority (default \"task\")"
|
|
223
|
+
}
|
|
224
|
+
},
|
|
225
|
+
"required": [
|
|
226
|
+
"message"
|
|
227
|
+
],
|
|
228
|
+
"additionalProperties": false
|
|
229
|
+
}
|
|
230
|
+
},
|
|
231
|
+
{
|
|
232
|
+
"name": "list_channel_tasks",
|
|
233
|
+
"label": "List Tasks",
|
|
234
|
+
"description": "List all tasks in the current channel, including their status, progress, and assignee.",
|
|
235
|
+
"parameters": {
|
|
236
|
+
"type": "object",
|
|
237
|
+
"properties": {},
|
|
238
|
+
"additionalProperties": false
|
|
239
|
+
}
|
|
240
|
+
},
|
|
241
|
+
{
|
|
242
|
+
"name": "list_team_agents",
|
|
243
|
+
"label": "List Team",
|
|
244
|
+
"description": "List all agents in the current channel (lead + workers) with their roles and names.",
|
|
245
|
+
"parameters": {
|
|
246
|
+
"type": "object",
|
|
247
|
+
"properties": {},
|
|
248
|
+
"additionalProperties": false
|
|
249
|
+
}
|
|
250
|
+
},
|
|
251
|
+
{
|
|
252
|
+
"name": "get_task_details",
|
|
253
|
+
"label": "Get Task",
|
|
254
|
+
"description": "Get detailed information about a specific task, including artifacts and history.",
|
|
255
|
+
"parameters": {
|
|
256
|
+
"type": "object",
|
|
257
|
+
"properties": {
|
|
258
|
+
"task_id": {
|
|
259
|
+
"type": "string",
|
|
260
|
+
"description": "Task ID"
|
|
261
|
+
}
|
|
262
|
+
},
|
|
263
|
+
"required": [
|
|
264
|
+
"task_id"
|
|
265
|
+
],
|
|
266
|
+
"additionalProperties": false
|
|
267
|
+
}
|
|
268
|
+
},
|
|
269
|
+
{
|
|
270
|
+
"name": "get_my_task_queue",
|
|
271
|
+
"label": "My Queue",
|
|
272
|
+
"description": "View your own task queue: pending tasks (FIFO order), the task you are currently executing, and completed tasks. Use this to check if you have unfinished work.",
|
|
273
|
+
"parameters": {
|
|
274
|
+
"type": "object",
|
|
275
|
+
"properties": {},
|
|
276
|
+
"additionalProperties": false
|
|
277
|
+
}
|
|
278
|
+
},
|
|
279
|
+
{
|
|
280
|
+
"name": "get_queue_overview",
|
|
281
|
+
"label": "Queue Overview",
|
|
282
|
+
"description": "(Lead only) Real-time overview of every team member: status (idle/busy), current task, pending queue length, completed count. Use this to make optimal scheduling and rebalancing decisions.",
|
|
283
|
+
"parameters": {
|
|
284
|
+
"type": "object",
|
|
285
|
+
"properties": {},
|
|
286
|
+
"additionalProperties": false
|
|
287
|
+
}
|
|
288
|
+
},
|
|
289
|
+
{
|
|
290
|
+
"name": "reassign_task",
|
|
291
|
+
"label": "Reassign Task",
|
|
292
|
+
"description": "(Lead only) Move a pending (not yet started) or failed task from one worker to another. Use for load rebalancing or when a worker is stuck. The old worker's queued delivery is revoked automatically.",
|
|
293
|
+
"parameters": {
|
|
294
|
+
"type": "object",
|
|
295
|
+
"properties": {
|
|
296
|
+
"task_id": {
|
|
297
|
+
"type": "string",
|
|
298
|
+
"description": "Task ID to move"
|
|
299
|
+
},
|
|
300
|
+
"to_agent_id": {
|
|
301
|
+
"type": "string",
|
|
302
|
+
"description": "Worker agent ID to receive the task"
|
|
303
|
+
}
|
|
304
|
+
},
|
|
305
|
+
"required": [
|
|
306
|
+
"task_id",
|
|
307
|
+
"to_agent_id"
|
|
308
|
+
],
|
|
309
|
+
"additionalProperties": false
|
|
310
|
+
}
|
|
311
|
+
},
|
|
312
|
+
{
|
|
313
|
+
"name": "update_task",
|
|
314
|
+
"label": "Update Task",
|
|
315
|
+
"description": "(Lead only) Modify the title/description of a pending (queued, not started) task. The assignee's queued delivery is refreshed with the new content automatically.",
|
|
316
|
+
"parameters": {
|
|
317
|
+
"type": "object",
|
|
318
|
+
"properties": {
|
|
319
|
+
"task_id": {
|
|
320
|
+
"type": "string",
|
|
321
|
+
"description": "Task ID to update"
|
|
322
|
+
},
|
|
323
|
+
"title": {
|
|
324
|
+
"type": "string",
|
|
325
|
+
"description": "New title (optional)"
|
|
326
|
+
},
|
|
327
|
+
"description": {
|
|
328
|
+
"type": "string",
|
|
329
|
+
"description": "New description (optional)"
|
|
330
|
+
}
|
|
331
|
+
},
|
|
332
|
+
"required": [
|
|
333
|
+
"task_id"
|
|
334
|
+
],
|
|
335
|
+
"additionalProperties": false
|
|
336
|
+
}
|
|
337
|
+
},
|
|
338
|
+
{
|
|
339
|
+
"name": "cancel_task",
|
|
340
|
+
"label": "Cancel Task",
|
|
341
|
+
"description": "Cancel a task only when it is genuinely abandoned or blocked. Canceling a parent cascades to all non-terminal descendants and stops matching active runs; cancellation consumes the root budget. Do not cancel to rename/polish/revise a task. Prefer messaging, update_task, or reassign_task. Pending queued deliveries are revoked automatically.",
|
|
342
|
+
"parameters": {
|
|
343
|
+
"type": "object",
|
|
344
|
+
"properties": {
|
|
345
|
+
"task_id": {
|
|
346
|
+
"type": "string",
|
|
347
|
+
"description": "Task ID to cancel"
|
|
348
|
+
}
|
|
349
|
+
},
|
|
350
|
+
"required": [
|
|
351
|
+
"task_id"
|
|
352
|
+
],
|
|
353
|
+
"additionalProperties": false
|
|
354
|
+
}
|
|
355
|
+
},
|
|
356
|
+
{
|
|
357
|
+
"name": "search_memory",
|
|
358
|
+
"label": "Search Memory",
|
|
359
|
+
"description": "Search your persistent memory (hybrid keyword+semantic retrieval over your private memories and the channel's shared team memories). Results may include: your task history, the TEAM CHRONICLE (团队编年史 = rolling log of everything the team finished), past SESSION COMPACTION SUMMARIES (会话压缩摘要 = conclusions from earlier context windows), monthly reflections (作业反思), and shared conventions. Use this ANY TIME you need prior context: before starting a task, when you suspect relevant past work exists, or when the injected memory hints/brief mention something you need details on. Pass a focused query describing what you want to remember.",
|
|
360
|
+
"parameters": {
|
|
361
|
+
"type": "object",
|
|
362
|
+
"properties": {
|
|
363
|
+
"query": {
|
|
364
|
+
"type": "string",
|
|
365
|
+
"description": "What you want to recall, e.g. \"数据库连接池配置结论\" or \"previous deployment checklist\""
|
|
366
|
+
},
|
|
367
|
+
"scope": {
|
|
368
|
+
"type": "string",
|
|
369
|
+
"enum": [
|
|
370
|
+
"auto",
|
|
371
|
+
"private",
|
|
372
|
+
"shared"
|
|
373
|
+
],
|
|
374
|
+
"description": "Which memory domain to search: \"auto\" = your private + channel shared (default), \"private\" = only your own, \"shared\" = only channel-wide shared memories"
|
|
375
|
+
},
|
|
376
|
+
"limit": {
|
|
377
|
+
"type": "number",
|
|
378
|
+
"description": "Max results (default 5, max 20)"
|
|
379
|
+
}
|
|
380
|
+
},
|
|
381
|
+
"required": [
|
|
382
|
+
"query"
|
|
383
|
+
],
|
|
384
|
+
"additionalProperties": false
|
|
385
|
+
}
|
|
386
|
+
},
|
|
387
|
+
{
|
|
388
|
+
"name": "save_memory",
|
|
389
|
+
"label": "Save Memory",
|
|
390
|
+
"description": "Persist a distilled, reusable insight into memory for future tasks. scope=\"private\" saves to YOUR personal memory (only you recall it); scope=\"shared\" saves to the CHANNEL shared memory visible to ALL teammates (use for conclusions, conventions, or knowledge the whole team benefits from — not task-specific minutiae). Distill before saving: title = short topic, content = the reusable conclusion. Use a stable dedup_key to update an existing memory instead of duplicating. NOTE: the platform already auto-archives task outcomes, team results, the team chronicle, and session compaction summaries — never save whole task logs or raw session transcripts.",
|
|
391
|
+
"parameters": {
|
|
392
|
+
"type": "object",
|
|
393
|
+
"properties": {
|
|
394
|
+
"title": {
|
|
395
|
+
"type": "string",
|
|
396
|
+
"description": "Short topic title, e.g. \"API 网关限流方案结论\""
|
|
397
|
+
},
|
|
398
|
+
"content": {
|
|
399
|
+
"type": "string",
|
|
400
|
+
"description": "The distilled reusable knowledge/conclusion (plain text)"
|
|
401
|
+
},
|
|
402
|
+
"importance": {
|
|
403
|
+
"type": "number",
|
|
404
|
+
"description": "0-1 importance (default 0.7 private / 0.85 shared)"
|
|
405
|
+
},
|
|
406
|
+
"scope": {
|
|
407
|
+
"type": "string",
|
|
408
|
+
"enum": [
|
|
409
|
+
"private",
|
|
410
|
+
"shared"
|
|
411
|
+
],
|
|
412
|
+
"description": "\"private\" = your memory only; \"shared\" = channel-wide shared memory for all teammates"
|
|
413
|
+
},
|
|
414
|
+
"dedup_key": {
|
|
415
|
+
"type": "string",
|
|
416
|
+
"description": "Stable key for idempotent update (same key overwrites instead of duplicating)"
|
|
417
|
+
}
|
|
418
|
+
},
|
|
419
|
+
"required": [
|
|
420
|
+
"title",
|
|
421
|
+
"content",
|
|
422
|
+
"scope"
|
|
423
|
+
],
|
|
424
|
+
"additionalProperties": false
|
|
425
|
+
}
|
|
426
|
+
},
|
|
427
|
+
{
|
|
428
|
+
"name": "create_team_agent",
|
|
429
|
+
"label": "Create Team Agent",
|
|
430
|
+
"description": "(Lead only) Create a NEW worker only when capability/load evidence shows existing members cannot handle the work. Reuse existing workers first. The platform enforces a per-Channel worker roster cap, including disabled members; do not retry with another name after TEAM_WORKER_LIMIT.",
|
|
431
|
+
"parameters": {
|
|
432
|
+
"type": "object",
|
|
433
|
+
"properties": {
|
|
434
|
+
"name": {
|
|
435
|
+
"type": "string",
|
|
436
|
+
"description": "Short, descriptive member name, e.g. \"db-migrator\" or \"test-writer\""
|
|
437
|
+
},
|
|
438
|
+
"harness": {
|
|
439
|
+
"type": "string",
|
|
440
|
+
"enum": [
|
|
441
|
+
"omp",
|
|
442
|
+
"mock",
|
|
443
|
+
"claude"
|
|
444
|
+
],
|
|
445
|
+
"description": "Agent harness: \"omp\" = full LLM agent with native work tools (default, use this for real work), \"mock\" = scripted test agent, \"claude\" = claude harness"
|
|
446
|
+
},
|
|
447
|
+
"system_prompt": {
|
|
448
|
+
"type": "string",
|
|
449
|
+
"description": "System prompt prefix defining this member's specialty, working style, and conventions (maps to its systemPromptPrefix config)"
|
|
450
|
+
},
|
|
451
|
+
"reason": {
|
|
452
|
+
"type": "string",
|
|
453
|
+
"description": "Why this member is being added (shown to the user in the team event timeline)"
|
|
454
|
+
}
|
|
455
|
+
},
|
|
456
|
+
"required": [
|
|
457
|
+
"name"
|
|
458
|
+
],
|
|
459
|
+
"additionalProperties": false
|
|
460
|
+
}
|
|
461
|
+
},
|
|
462
|
+
{
|
|
463
|
+
"name": "update_team_agent",
|
|
464
|
+
"label": "Update Team Agent",
|
|
465
|
+
"description": "(Lead only) Update an existing team member (worker): rename it, revise its system prompt (e.g. to specialize or correct its behavior), or enable/disable it. The member's runtime reloads with the new config on its next assignment. You cannot update yourself.",
|
|
466
|
+
"parameters": {
|
|
467
|
+
"type": "object",
|
|
468
|
+
"properties": {
|
|
469
|
+
"agent_id": {
|
|
470
|
+
"type": "string",
|
|
471
|
+
"description": "ID of the worker agent to update (from list_team_agents)"
|
|
472
|
+
},
|
|
473
|
+
"name": {
|
|
474
|
+
"type": "string",
|
|
475
|
+
"description": "New name (optional)"
|
|
476
|
+
},
|
|
477
|
+
"system_prompt": {
|
|
478
|
+
"type": "string",
|
|
479
|
+
"description": "New system prompt prefix defining its specialty/conventions (optional)"
|
|
480
|
+
},
|
|
481
|
+
"enabled": {
|
|
482
|
+
"type": "boolean",
|
|
483
|
+
"description": "true = activate member, false = disable member (disabled members receive no new tasks; default true)"
|
|
484
|
+
},
|
|
485
|
+
"reason": {
|
|
486
|
+
"type": "string",
|
|
487
|
+
"description": "Why this change is made (shown in the team event timeline)"
|
|
488
|
+
}
|
|
489
|
+
},
|
|
490
|
+
"required": [
|
|
491
|
+
"agent_id"
|
|
492
|
+
],
|
|
493
|
+
"additionalProperties": false
|
|
494
|
+
}
|
|
495
|
+
},
|
|
496
|
+
{
|
|
497
|
+
"name": "remove_team_agent",
|
|
498
|
+
"label": "Remove Team Agent",
|
|
499
|
+
"description": "(Lead only) Remove a worker from your channel's team. Its queued tasks are automatically re-dispatched to the remaining worker with the shortest queue (or failed for retry if it was mid-execution), so no work is lost — but the member's context is. Use ONLY for sustained idle surplus or persistent underperformance; never as an experiment, and avoid removing members with active work. You cannot remove yourself.",
|
|
500
|
+
"parameters": {
|
|
501
|
+
"type": "object",
|
|
502
|
+
"properties": {
|
|
503
|
+
"agent_id": {
|
|
504
|
+
"type": "string",
|
|
505
|
+
"description": "ID of the worker agent to remove"
|
|
506
|
+
},
|
|
507
|
+
"reason": {
|
|
508
|
+
"type": "string",
|
|
509
|
+
"description": "Why this member is removed (shown in the team event timeline)"
|
|
510
|
+
}
|
|
511
|
+
},
|
|
512
|
+
"required": [
|
|
513
|
+
"agent_id"
|
|
514
|
+
],
|
|
515
|
+
"additionalProperties": false
|
|
516
|
+
}
|
|
517
|
+
},
|
|
518
|
+
{
|
|
519
|
+
"name": "refuse_task",
|
|
520
|
+
"label": "Refuse Task",
|
|
521
|
+
"description": "Reject a task assigned to you because it is outside your capability or work scope (wrong recipient, unrelated domain, or missing prerequisites). The task is marked FAILED with your reason and a rejection notice is immediately sent back to the dispatcher (task creator, or the channel lead), who should reassign it to a fitting member. Use this INSTEAD of silently ignoring the task or doing unrelated work; do NOT use it for tasks you are able to do, and do NOT use cancel_task for refusals.",
|
|
522
|
+
"parameters": {
|
|
523
|
+
"type": "object",
|
|
524
|
+
"properties": {
|
|
525
|
+
"task_id": {
|
|
526
|
+
"type": "string",
|
|
527
|
+
"description": "ID of the task you are refusing (must be assigned to you)"
|
|
528
|
+
},
|
|
529
|
+
"reason": {
|
|
530
|
+
"type": "string",
|
|
531
|
+
"description": "Why the task is out of your scope: capability mismatch / wrong recipient / prerequisites missing. Be specific so the dispatcher can reassign properly."
|
|
532
|
+
}
|
|
533
|
+
},
|
|
534
|
+
"required": [
|
|
535
|
+
"task_id",
|
|
536
|
+
"reason"
|
|
537
|
+
],
|
|
538
|
+
"additionalProperties": false
|
|
539
|
+
}
|
|
540
|
+
},
|
|
541
|
+
{
|
|
542
|
+
"name": "my_industrial_nodes",
|
|
543
|
+
"label": "My Industrial Nodes",
|
|
544
|
+
"description": "列出你的全部工业绑定与语义卡 —— 数控节点(PLC/MES 集成点位)与数采节点逐张卡:物理量/单位/量程/精度、工艺语义(物理机理与调参守则)、安全量程与活动配方工艺窗口、当前设定值、下发链路(PLC 驱动或 MES writeHook 单字段)、单步上限与操作守则;以及你绑定的配方操作面(运行状态/绑定模式 manual=逐动作 HITL 或 auto=免批/二级认证状态/参数对照表含参数键与描述)。在进行任何工业操作前必须先调用本工具;绑定前提:节点需 daq/dcw(存量)绑定,配方需 recipe 绑定 —— 未绑定对象不出现在清单中。",
|
|
545
|
+
"parameters": {
|
|
546
|
+
"type": "object",
|
|
547
|
+
"properties": {},
|
|
548
|
+
"additionalProperties": false
|
|
549
|
+
}
|
|
550
|
+
},
|
|
551
|
+
{
|
|
552
|
+
"name": "dcw_read",
|
|
553
|
+
"label": "DCW Read",
|
|
554
|
+
"description": "读取绑定的数控节点的 PLC 当前值(读写集成的读半边)。返回 PLC 实时读数(经标定解码的物理量纲)与设定值对照;用于下发前取证、下发后复核设定是否生效。读取是被动观测,不影响控制状态,也不需要审批。 【数值口径:value=平台下发设定值,readValue=PLC 实测反馈;写保持窗/断链期两者可能短暂不一致,引用时注明口径】",
|
|
555
|
+
"parameters": {
|
|
556
|
+
"type": "object",
|
|
557
|
+
"properties": {
|
|
558
|
+
"node_id": {
|
|
559
|
+
"type": "string",
|
|
560
|
+
"description": "数控节点 id(见 my_industrial_nodes)"
|
|
561
|
+
}
|
|
562
|
+
},
|
|
563
|
+
"required": [
|
|
564
|
+
"node_id"
|
|
565
|
+
],
|
|
566
|
+
"additionalProperties": false
|
|
567
|
+
}
|
|
568
|
+
},
|
|
569
|
+
{
|
|
570
|
+
"name": "param_read",
|
|
571
|
+
"label": "Param Read",
|
|
572
|
+
"description": "按工艺参数(key 语义键或 pp-id)读取执行节点当前值与分层限界明细(节点量程∩参数基准∩产品限界∩配方窗口,单步上限来源)。被动观测免审批;参数键目录(含每参数的描述)在回包中给出。参数写入已收敛到配方面(recipe_update/recipe_apply),本工具只读。 【数值口径:value=平台下发设定值,readValue=PLC 实测反馈;写保持窗/断链期两者可能短暂不一致,引用时注明口径】",
|
|
573
|
+
"parameters": {
|
|
574
|
+
"type": "object",
|
|
575
|
+
"properties": {
|
|
576
|
+
"param": {
|
|
577
|
+
"type": "string",
|
|
578
|
+
"description": "工艺参数 id(pp-*)或参数 key"
|
|
579
|
+
},
|
|
580
|
+
"line_id": {
|
|
581
|
+
"type": "string",
|
|
582
|
+
"description": "产线 id(可选;参数 key 跨产线同名时用于消歧)"
|
|
583
|
+
}
|
|
584
|
+
},
|
|
585
|
+
"required": [
|
|
586
|
+
"param"
|
|
587
|
+
],
|
|
588
|
+
"additionalProperties": false
|
|
589
|
+
}
|
|
590
|
+
},
|
|
591
|
+
{
|
|
592
|
+
"name": "daq_query",
|
|
593
|
+
"label": "DAQ Query",
|
|
594
|
+
"description": "从时序数据库检索你绑定的数采节点的历史/实时数据。支持按产线/产品/配方/批次/时间窗/降采样多维过滤(产品/配方过滤基于逐样本打标,可精确取某批次数据);返回结果携带物理含义(参数语义/单位/量程/统计摘要/最近序列)。默认只取**当前活动批次(活动配方)**的数据:产线正在跑什么配方就只查那个配方,不会把上一轮配方的样本混进本轮判读;需要跨配方看整段历史时显式传 scope=all。",
|
|
595
|
+
"parameters": {
|
|
596
|
+
"type": "object",
|
|
597
|
+
"properties": {
|
|
598
|
+
"node_id": {
|
|
599
|
+
"type": "string",
|
|
600
|
+
"description": "限定单个数采节点 id(缺省 = 全部绑定节点)"
|
|
601
|
+
},
|
|
602
|
+
"line_id": {
|
|
603
|
+
"type": "string",
|
|
604
|
+
"description": "按产线过滤(数据归属产线)"
|
|
605
|
+
},
|
|
606
|
+
"product_id": {
|
|
607
|
+
"type": "string",
|
|
608
|
+
"description": "按产品过滤(逐样本打标);显式传入即覆盖默认的活动批次过滤"
|
|
609
|
+
},
|
|
610
|
+
"recipe_id": {
|
|
611
|
+
"type": "string",
|
|
612
|
+
"description": "按配方过滤(逐样本打标);显式传入即覆盖默认过滤。缺省 = 该节点所在产线的活动配方(产线未开跑则不过滤)"
|
|
613
|
+
},
|
|
614
|
+
"run_id": {
|
|
615
|
+
"type": "string",
|
|
616
|
+
"description": "按批次 run 过滤(同一配方多次开跑时精确定位某一次);显式传入即覆盖默认过滤"
|
|
617
|
+
},
|
|
618
|
+
"scope": {
|
|
619
|
+
"type": "string",
|
|
620
|
+
"description": "作用域:active(缺省)= 只取当前活动批次;all = 不做配方过滤,返回窗口内全部样本(跨配方对比/历史复盘用)"
|
|
621
|
+
},
|
|
622
|
+
"last_minutes": {
|
|
623
|
+
"type": "number",
|
|
624
|
+
"description": "最近 N 分钟(缺省 30)"
|
|
625
|
+
},
|
|
626
|
+
"from_ms": {
|
|
627
|
+
"type": "number",
|
|
628
|
+
"description": "起始 epoch ms(与 to_ms 配合,优先于 last_minutes)"
|
|
629
|
+
},
|
|
630
|
+
"to_ms": {
|
|
631
|
+
"type": "number",
|
|
632
|
+
"description": "结束 epoch ms"
|
|
633
|
+
},
|
|
634
|
+
"bucket_ms": {
|
|
635
|
+
"type": "number",
|
|
636
|
+
"description": "时间间隔(降采样桶宽 ms):缺省 {queryDefaultBucketMs}(15s);可调,下限 {queryMinBucketMs}。不传即用缺省;系统配置变更后以新值为准"
|
|
637
|
+
},
|
|
638
|
+
"limit": {
|
|
639
|
+
"type": "number",
|
|
640
|
+
"description": "返回点数上限(缺省 500)"
|
|
641
|
+
}
|
|
642
|
+
},
|
|
643
|
+
"additionalProperties": false
|
|
644
|
+
}
|
|
645
|
+
},
|
|
646
|
+
{
|
|
647
|
+
"name": "dcw_judge",
|
|
648
|
+
"label": "DCW Judge",
|
|
649
|
+
"description": "对你发起的优化记录(调控 step)落判定。keep=已验证经验(配方可标 lastGood);rollback=判定应回退(判定入册后必须再调 dcw_rollback 执行,判定不自动改 PLC);uncertain=证据不足保持观察。判定必须引用数采证据(daq_query 窗口数据),禁止无证据判定。",
|
|
650
|
+
"parameters": {
|
|
651
|
+
"type": "object",
|
|
652
|
+
"properties": {
|
|
653
|
+
"record_id": {
|
|
654
|
+
"type": "string",
|
|
655
|
+
"description": "优化记录 id(dcw_control 下发成功后返回)"
|
|
656
|
+
},
|
|
657
|
+
"verdict": {
|
|
658
|
+
"type": "string",
|
|
659
|
+
"description": "判定结论:keep / rollback / uncertain",
|
|
660
|
+
"enum": [
|
|
661
|
+
"keep",
|
|
662
|
+
"rollback",
|
|
663
|
+
"uncertain"
|
|
664
|
+
]
|
|
665
|
+
},
|
|
666
|
+
"reason": {
|
|
667
|
+
"type": "string",
|
|
668
|
+
"description": "判定理由(必须引用具体数值/时间窗证据)"
|
|
669
|
+
}
|
|
670
|
+
},
|
|
671
|
+
"required": [
|
|
672
|
+
"record_id",
|
|
673
|
+
"verdict",
|
|
674
|
+
"reason"
|
|
675
|
+
],
|
|
676
|
+
"additionalProperties": false
|
|
677
|
+
}
|
|
678
|
+
},
|
|
679
|
+
{
|
|
680
|
+
"name": "dcw_journal",
|
|
681
|
+
"label": "DCW Journal",
|
|
682
|
+
"description": "查询参数变更史与优化记录(在册审计):谁/何时/从多少到多少/判定结论/假设声明。优化前先读史可避免重复试错;回退定位也在此查。",
|
|
683
|
+
"parameters": {
|
|
684
|
+
"type": "object",
|
|
685
|
+
"properties": {
|
|
686
|
+
"node_id": {
|
|
687
|
+
"type": "string",
|
|
688
|
+
"description": "限定数控节点 id(仅限自己绑定的节点)"
|
|
689
|
+
},
|
|
690
|
+
"recipe_id": {
|
|
691
|
+
"type": "string",
|
|
692
|
+
"description": "按配方过滤优化记录"
|
|
693
|
+
},
|
|
694
|
+
"limit": {
|
|
695
|
+
"type": "number",
|
|
696
|
+
"description": "返回条数上限(缺省 20,最大 100)"
|
|
697
|
+
}
|
|
698
|
+
},
|
|
699
|
+
"additionalProperties": false
|
|
700
|
+
}
|
|
701
|
+
},
|
|
702
|
+
{
|
|
703
|
+
"name": "send_cross_channel_message",
|
|
704
|
+
"label": "Cross-Channel Message",
|
|
705
|
+
"description": "[Leader only] Send a message to the LEADER of another channel, so the two teams can collaborate without being siloed. The message lands directly in the target channel leader mailbox; that leader will read your request and act on it (dispatch tasks in their channel, gather info, etc.) and can reply to you via the mailbox. Params: to_channel_id accepts the target channel id OR its exact name; message is your request to the other leader (state your need, deadline and what you expect back); require_reply=true to demand a response. Only channel leaders may call this tool - workers will be rejected. When replying to a cross-channel request you received, use this same tool addressed to the requester channel.",
|
|
706
|
+
"parameters": {
|
|
707
|
+
"type": "object",
|
|
708
|
+
"properties": {
|
|
709
|
+
"to_channel_id": {
|
|
710
|
+
"type": "string",
|
|
711
|
+
"description": "Target channel id or exact name (must be another channel, not your own)"
|
|
712
|
+
},
|
|
713
|
+
"message": {
|
|
714
|
+
"type": "string",
|
|
715
|
+
"description": "Request text for the target channel leader: what you need, why, and what to return"
|
|
716
|
+
},
|
|
717
|
+
"require_reply": {
|
|
718
|
+
"type": "boolean",
|
|
719
|
+
"description": "true = demand the target leader reply with their result/answer"
|
|
720
|
+
}
|
|
721
|
+
},
|
|
722
|
+
"required": [
|
|
723
|
+
"to_channel_id",
|
|
724
|
+
"message"
|
|
725
|
+
],
|
|
726
|
+
"additionalProperties": false
|
|
727
|
+
}
|
|
728
|
+
},
|
|
729
|
+
{
|
|
730
|
+
"name": "list_other_teams",
|
|
731
|
+
"label": "List Other Teams",
|
|
732
|
+
"description": "[Leader only] Overview of the OTHER teams (channels) in this workspace: each team name, description, lead, its in-progress scenario tasks, recently completed tasks, and how many shared memories it has (shared_memories > 0 means searchable knowledge exists - use search_other_teams_memory with that team). Decision flow: found knowledge -> reuse it directly; relevant work in progress but no knowledge yet -> message their leader via send_cross_channel_message; nothing -> consider whether your request justifies starting collaboration. Workers cannot call this tool.",
|
|
733
|
+
"parameters": {
|
|
734
|
+
"type": "object",
|
|
735
|
+
"properties": {},
|
|
736
|
+
"required": [],
|
|
737
|
+
"additionalProperties": false
|
|
738
|
+
}
|
|
739
|
+
},
|
|
740
|
+
{
|
|
741
|
+
"name": "search_other_teams_memory",
|
|
742
|
+
"label": "Search Other Teams Memory",
|
|
743
|
+
"description": "[All members] Read-only search across the SHARED memory of other teams (channels) in this workspace - what other teams have learned/concluded/done. Use it to reuse existing knowledge instead of asking for it: if you find relevant results, apply them directly; if nothing relevant exists but the other team is working on it, ask your leader to message that team leader via send_cross_channel_message. Results are attributed to their team.",
|
|
744
|
+
"parameters": {
|
|
745
|
+
"type": "object",
|
|
746
|
+
"properties": {
|
|
747
|
+
"query": {
|
|
748
|
+
"type": "string",
|
|
749
|
+
"description": "What to look for (keywords of the knowledge/conclusion)"
|
|
750
|
+
},
|
|
751
|
+
"limit": {
|
|
752
|
+
"type": "number",
|
|
753
|
+
"description": "Max results (default 5)"
|
|
754
|
+
}
|
|
755
|
+
},
|
|
756
|
+
"required": [
|
|
757
|
+
"query"
|
|
758
|
+
],
|
|
759
|
+
"additionalProperties": false
|
|
760
|
+
}
|
|
761
|
+
},
|
|
762
|
+
{
|
|
763
|
+
"name": "daq_export",
|
|
764
|
+
"label": "DAQ Export",
|
|
765
|
+
"description": "Export the FULL raw time-series (no downsampling) of your BOUND daq nodes(仅限你绑定的数采节点,越权 id 一律拒绝) to the platform data directory: one CSV per node (columns ts_iso,ts_ms,value,state) plus manifest.json containing the node mapping (name/unit/range/semantics), line-product-recipe-run context, recipe monitor windows and alarm statistics. Use when analysis needs complete waveforms rather than daq_query statistics: hand the export_id to diag_run (deep root-cause diagnosis) or hand the absolute directory to other workers for offline analysis.",
|
|
766
|
+
"parameters": {
|
|
767
|
+
"type": "object",
|
|
768
|
+
"properties": {
|
|
769
|
+
"node_ids": {
|
|
770
|
+
"type": "string",
|
|
771
|
+
"description": "Comma/space separated node ids to export (default = all bound daq nodes); out-of-scope ids are rejected"
|
|
772
|
+
},
|
|
773
|
+
"line_id": {
|
|
774
|
+
"type": "string",
|
|
775
|
+
"description": "Only export nodes of this line (narrowing filter)"
|
|
776
|
+
},
|
|
777
|
+
"from_ms": {
|
|
778
|
+
"type": "number",
|
|
779
|
+
"description": "Window start epoch ms (together with to_ms; overrides last_minutes)"
|
|
780
|
+
},
|
|
781
|
+
"to_ms": {
|
|
782
|
+
"type": "number",
|
|
783
|
+
"description": "Window end epoch ms (default now)"
|
|
784
|
+
},
|
|
785
|
+
"last_minutes": {
|
|
786
|
+
"type": "number",
|
|
787
|
+
"description": "Last N minutes (default 60; window capped at 7 days)"
|
|
788
|
+
},
|
|
789
|
+
"title": {
|
|
790
|
+
"type": "string",
|
|
791
|
+
"description": "Short title of this export recorded in manifest.json (e.g. 膜厚越限诊断数据集)"
|
|
792
|
+
},
|
|
793
|
+
"note": {
|
|
794
|
+
"type": "string",
|
|
795
|
+
"description": "Scenario note for the analyst/IDD written into manifest.json (symptoms, suspected cause, what to look at)"
|
|
796
|
+
},
|
|
797
|
+
"merge": {
|
|
798
|
+
"type": "boolean",
|
|
799
|
+
"description": "合并导出:额外在导出目录生成 merged.csv(多节点按时间秒级对齐的多参数宽表,列名=节点名),可直接交给 IDD 哨兵/experience 等按 CSV 文件分析的服务"
|
|
800
|
+
}
|
|
801
|
+
},
|
|
802
|
+
"required": [],
|
|
803
|
+
"additionalProperties": false
|
|
804
|
+
}
|
|
805
|
+
},
|
|
806
|
+
{
|
|
807
|
+
"name": "daq_frames",
|
|
808
|
+
"label": "DAQ Frames",
|
|
809
|
+
"description": "Query multi-modal DAQ frames for your BOUND daq nodes: multi-point profiles (thickness scanners, profile scanners — returns point-count summary, a point preview and derived metrics) and camera image frames (CCD — returns resolution, object reference and derived metrics like brightness/contrast; pixels are NOT loaded into context, view them in the frontend gallery). Supports kind=vector|image filter and time windows. Use BEFORE judging surface quality or profile measurements.",
|
|
810
|
+
"parameters": {
|
|
811
|
+
"type": "object",
|
|
812
|
+
"properties": {
|
|
813
|
+
"node_id": {
|
|
814
|
+
"type": "string",
|
|
815
|
+
"description": "Limit to one bound daq node id (optional; default all your bound daq nodes)"
|
|
816
|
+
},
|
|
817
|
+
"line_id": {
|
|
818
|
+
"type": "string",
|
|
819
|
+
"description": "Filter by line id (can only narrow, never widen your access)"
|
|
820
|
+
},
|
|
821
|
+
"kind": {
|
|
822
|
+
"type": "string",
|
|
823
|
+
"enum": [
|
|
824
|
+
"vector",
|
|
825
|
+
"image"
|
|
826
|
+
],
|
|
827
|
+
"description": "Frame kind filter (optional)"
|
|
828
|
+
},
|
|
829
|
+
"last_minutes": {
|
|
830
|
+
"type": "number",
|
|
831
|
+
"description": "Time window in minutes back from now (default 30)"
|
|
832
|
+
},
|
|
833
|
+
"from_ms": {
|
|
834
|
+
"type": "number",
|
|
835
|
+
"description": "Window start (epoch ms; overrides last_minutes)"
|
|
836
|
+
},
|
|
837
|
+
"to_ms": {
|
|
838
|
+
"type": "number",
|
|
839
|
+
"description": "Window end (epoch ms; default now)"
|
|
840
|
+
},
|
|
841
|
+
"limit": {
|
|
842
|
+
"type": "number",
|
|
843
|
+
"description": "Max frames per node (default 20, max 100)"
|
|
844
|
+
}
|
|
845
|
+
},
|
|
846
|
+
"additionalProperties": false
|
|
847
|
+
}
|
|
848
|
+
},
|
|
849
|
+
{
|
|
850
|
+
"name": "ops_log",
|
|
851
|
+
"label": "Ops Log",
|
|
852
|
+
"description": "查询你负责产线的运维日志(数控下发/优化判定/回退/配方下发/产线事件,新→旧)。来源区分 Agent/用户/系统:Agent 的操作者格式为「Channel名/成员名」。用于作业前后自查:你对节点做过哪些操作、他人或系统做过哪些干预。",
|
|
853
|
+
"parameters": {
|
|
854
|
+
"type": "object",
|
|
855
|
+
"properties": {
|
|
856
|
+
"line_id": {
|
|
857
|
+
"type": "string",
|
|
858
|
+
"description": "限定产线 id(须为你绑定节点所属产线;缺省=全部负责产线)"
|
|
859
|
+
},
|
|
860
|
+
"node_id": {
|
|
861
|
+
"type": "string",
|
|
862
|
+
"description": "限定数控/数采节点 id(须为你绑定的节点)"
|
|
863
|
+
},
|
|
864
|
+
"kind": {
|
|
865
|
+
"type": "string",
|
|
866
|
+
"description": "按分类过滤:write(下发)/recipe(配方)/rollback(回退)/daq(采集)/line(产线)"
|
|
867
|
+
},
|
|
868
|
+
"actor_kind": {
|
|
869
|
+
"type": "string",
|
|
870
|
+
"description": "按来源过滤:agent/user/system"
|
|
871
|
+
},
|
|
872
|
+
"minutes": {
|
|
873
|
+
"type": "number",
|
|
874
|
+
"description": "回看窗口(分钟,缺省 1440=24 小时)"
|
|
875
|
+
},
|
|
876
|
+
"limit": {
|
|
877
|
+
"type": "number",
|
|
878
|
+
"description": "返回条数上限(缺省 20,最大 100)"
|
|
879
|
+
},
|
|
880
|
+
"mine": {
|
|
881
|
+
"type": "boolean",
|
|
882
|
+
"description": "true=只看你自己发起的操作"
|
|
883
|
+
}
|
|
884
|
+
},
|
|
885
|
+
"additionalProperties": false
|
|
886
|
+
}
|
|
887
|
+
},
|
|
888
|
+
{
|
|
889
|
+
"name": "recipe_log",
|
|
890
|
+
"label": "Recipe Change Log",
|
|
891
|
+
"description": "查询你负责产线的 Recipe 变更史:配方一键下发(recipe.apply)、优化开窗、判定、回退执行(新→旧)。你据此知道配方层面对当前节点做过哪些下发变更、由谁执行、是否已回退。节点级参数值逐笔历史用 dcw_journal。",
|
|
892
|
+
"parameters": {
|
|
893
|
+
"type": "object",
|
|
894
|
+
"properties": {
|
|
895
|
+
"line_id": {
|
|
896
|
+
"type": "string",
|
|
897
|
+
"description": "限定产线 id(须为你绑定节点所属产线;缺省=全部负责产线)"
|
|
898
|
+
},
|
|
899
|
+
"recipe_id": {
|
|
900
|
+
"type": "string",
|
|
901
|
+
"description": "按配方 id 过滤"
|
|
902
|
+
},
|
|
903
|
+
"minutes": {
|
|
904
|
+
"type": "number",
|
|
905
|
+
"description": "回看窗口(分钟,缺省 1440=24 小时)"
|
|
906
|
+
},
|
|
907
|
+
"limit": {
|
|
908
|
+
"type": "number",
|
|
909
|
+
"description": "返回条数上限(缺省 20,最大 100)"
|
|
910
|
+
}
|
|
911
|
+
},
|
|
912
|
+
"additionalProperties": false
|
|
913
|
+
}
|
|
914
|
+
},
|
|
915
|
+
{
|
|
916
|
+
"name": "line_context",
|
|
917
|
+
"label": "Line Context",
|
|
918
|
+
"description": "读取你控制的产线/产品/配方全景(动手前必读):产线场景说明、运行状态与活动批次、产品说明、活动配方(名称/版本/描述)逐参数目标值 vs PLC 当前值 vs 工艺窗口(附参数键与参数描述)、我绑定的节点与配方清单(含执行中/未运行标注)、已知良好批次;无活动批次时列出产线配方定义。可见性=节点授权线 ∪ 绑定配方所在线 ∪ 频道绑定线(只读);确认归属与现状后再用 recipe_* 工具操作。 【数值口径:value=平台下发设定值,readValue=PLC 实测反馈;写保持窗/断链期两者可能短暂不一致,引用时注明口径】",
|
|
919
|
+
"parameters": {
|
|
920
|
+
"type": "object",
|
|
921
|
+
"properties": {
|
|
922
|
+
"line_id": {
|
|
923
|
+
"type": "string",
|
|
924
|
+
"description": "限定产线 id(须为你绑定节点所属产线;缺省=全部负责产线)"
|
|
925
|
+
}
|
|
926
|
+
},
|
|
927
|
+
"additionalProperties": false
|
|
928
|
+
}
|
|
929
|
+
},
|
|
930
|
+
{
|
|
931
|
+
"name": "recipe_versions",
|
|
932
|
+
"label": "Recipe Versions",
|
|
933
|
+
"description": "查看指定配方的参数版本史(旧→新):每条含版本号、时间、来源(用户/Agent/系统)、操作者人话名、变更原因与参数 diff。用途:回退前确认目标版本内容、复盘谁改了什么为什么改。可见性=该配方所在产线可读即可(节点授权线 ∪ 绑定配方线 ∪ 频道绑定线);回退操作走 recipe_rollback(写门,manual 绑定需 HITL)。",
|
|
934
|
+
"parameters": {
|
|
935
|
+
"type": "object",
|
|
936
|
+
"properties": {
|
|
937
|
+
"recipe_id": {
|
|
938
|
+
"type": "string",
|
|
939
|
+
"description": "配方 id(必填;line_context 可看到)"
|
|
940
|
+
},
|
|
941
|
+
"limit": {
|
|
942
|
+
"type": "number",
|
|
943
|
+
"description": "返回最近 N 条(缺省 20,最大 50)"
|
|
944
|
+
}
|
|
945
|
+
},
|
|
946
|
+
"additionalProperties": false
|
|
947
|
+
}
|
|
948
|
+
},
|
|
949
|
+
{
|
|
950
|
+
"name": "recipe_update",
|
|
951
|
+
"label": "Recipe Update",
|
|
952
|
+
"description": "把验证过的最佳参数保存进指定配方(生成新版本,带归因与理由)。权限模型:须已绑定该 recipe(可绑定多个配方)且通过其二级认证;配方必须正在执行(运行门,未运行拒绝);绑定 manual 时本次保存挂 HITL 等人工批准——reason 必填且要给出判断依据(数采证据/分析结论),审批卡会向人类展示。只改配方定义,要把参数推到运行中的产线用 recipe_apply。",
|
|
953
|
+
"parameters": {
|
|
954
|
+
"type": "object",
|
|
955
|
+
"properties": {
|
|
956
|
+
"recipe_id": {
|
|
957
|
+
"type": "string",
|
|
958
|
+
"description": "配方 id(必填)"
|
|
959
|
+
},
|
|
960
|
+
"params": {
|
|
961
|
+
"type": "array",
|
|
962
|
+
"description": "要更新的参数列表(部分合并,只列要改的节点)",
|
|
963
|
+
"items": {
|
|
964
|
+
"type": "object",
|
|
965
|
+
"properties": {
|
|
966
|
+
"node_id": {
|
|
967
|
+
"type": "string",
|
|
968
|
+
"description": "数控节点 id(须为你绑定 dcw 的节点)"
|
|
969
|
+
},
|
|
970
|
+
"value": {
|
|
971
|
+
"type": "number",
|
|
972
|
+
"description": "新的目标值"
|
|
973
|
+
},
|
|
974
|
+
"min": {
|
|
975
|
+
"type": "number",
|
|
976
|
+
"description": "可选:新配方窗口下限"
|
|
977
|
+
},
|
|
978
|
+
"max": {
|
|
979
|
+
"type": "number",
|
|
980
|
+
"description": "可选:新配方窗口上限"
|
|
981
|
+
}
|
|
982
|
+
}
|
|
983
|
+
}
|
|
984
|
+
},
|
|
985
|
+
"reason": {
|
|
986
|
+
"type": "string",
|
|
987
|
+
"description": "保存原因(必填;写明依据)"
|
|
988
|
+
},
|
|
989
|
+
"task_id": {
|
|
990
|
+
"type": "string",
|
|
991
|
+
"description": "关联任务 id(可选)"
|
|
992
|
+
}
|
|
993
|
+
},
|
|
994
|
+
"additionalProperties": false
|
|
995
|
+
}
|
|
996
|
+
},
|
|
997
|
+
{
|
|
998
|
+
"name": "recipe_rollback",
|
|
999
|
+
"label": "Recipe Rollback",
|
|
1000
|
+
"description": "回退配方参数到稳定版本(指定历史版本或已知良好批次),生成新版本(非破坏);dispatch=true 时统一回退(定义回退+参数整批重下发)。权限模型:须已绑定该 recipe 且过二级认证与运行门;绑定 manual 时挂 HITL——reason 必填说明回退原因(如优化劣化/越限)。",
|
|
1001
|
+
"parameters": {
|
|
1002
|
+
"type": "object",
|
|
1003
|
+
"properties": {
|
|
1004
|
+
"recipe_id": {
|
|
1005
|
+
"type": "string",
|
|
1006
|
+
"description": "配方 id(必填)"
|
|
1007
|
+
},
|
|
1008
|
+
"version": {
|
|
1009
|
+
"type": "number",
|
|
1010
|
+
"description": "回退到该历史版本(version 与 to_last_good 二选一)"
|
|
1011
|
+
},
|
|
1012
|
+
"to_last_good": {
|
|
1013
|
+
"type": "boolean",
|
|
1014
|
+
"description": "true=回退到已知良好批次参数冻结"
|
|
1015
|
+
},
|
|
1016
|
+
"reason": {
|
|
1017
|
+
"type": "string",
|
|
1018
|
+
"description": "回退原因(必填)"
|
|
1019
|
+
},
|
|
1020
|
+
"dispatch": {
|
|
1021
|
+
"type": "boolean",
|
|
1022
|
+
"description": "true=统一回退:定义回退后把恢复参数整批重下发到 PLC(优化闭环劣化时用);缺省 false=仅回退配方定义"
|
|
1023
|
+
},
|
|
1024
|
+
"emergency": {
|
|
1025
|
+
"type": "boolean",
|
|
1026
|
+
"description": "应急豁免配方下发间隔频控(不豁免审批;审批卡将标注【应急】并仍需人工批准;滥用会留审计痕迹)"
|
|
1027
|
+
}
|
|
1028
|
+
},
|
|
1029
|
+
"additionalProperties": false
|
|
1030
|
+
}
|
|
1031
|
+
},
|
|
1032
|
+
{
|
|
1033
|
+
"name": "mes_catalog",
|
|
1034
|
+
"label": "MES Catalog",
|
|
1035
|
+
"description": "检索 MES REST 点位目录(driver=mes-rest 的数控点位)。每条含 id/名称/产线/单位/量程与能力位(读=当前值,写=设定值,史=可取历史;史·vector=每时间点一个检测向量如膜厚断面/双折射光谱,史·image=图像帧如 CCD 相机,史·table/史·event=表格/事件记录流,钩子=该点位已配置数据下沉处理)与点位描述。是 mes_fetch 取数的寻址入口;支持按关键字(q,匹配名称与描述)与产线(line_id)过滤。只读目录,不触达设备。可见性=你绑定的数控点位与你绑定配方内的参数点位(未绑定点位不可见,不触达设备)。",
|
|
1036
|
+
"parameters": {
|
|
1037
|
+
"type": "object",
|
|
1038
|
+
"properties": {
|
|
1039
|
+
"q": {
|
|
1040
|
+
"type": "string",
|
|
1041
|
+
"description": "关键字子串过滤(匹配点位名称与描述)"
|
|
1042
|
+
},
|
|
1043
|
+
"line_id": {
|
|
1044
|
+
"type": "string",
|
|
1045
|
+
"description": "限定产线 id"
|
|
1046
|
+
},
|
|
1047
|
+
"limit": {
|
|
1048
|
+
"type": "number",
|
|
1049
|
+
"description": "返回条数上限(缺省 20,最大 100)"
|
|
1050
|
+
}
|
|
1051
|
+
},
|
|
1052
|
+
"additionalProperties": false
|
|
1053
|
+
}
|
|
1054
|
+
},
|
|
1055
|
+
{
|
|
1056
|
+
"name": "mes_fetch",
|
|
1057
|
+
"label": "MES Fetch",
|
|
1058
|
+
"description": "从 MES REST 点位取数(代码级护栏:仅限你绑定的数控点位;时间窗 ≤7 天;单次 ≤5000 行;每 60 秒最多 6 次)。格式自适应:标量点位回统计摘要;向量点位(每时间点一个检测向量,如膜厚断面 48 道)回按行均值的统计+维度+首中末采样;图像点位(如 CCD 帧)自动把帧落盘为文件、回包只给文件名与大小,图像 base64 永不进入对话;表格/事件点位回记录采样。若点位配置了数据钩子(dataHook),取数后会自动执行用户预设的下沉处理(绘图存档/存 CSV/统计),回包附处理摘要、处理说明与产物文件清单——直接引用它们,不要要求再给原文。param 对象会透传给钩子(如 {\"lane\": 12} 只看某车道)。三种模式:不传 from/to = 当前值快照直读;from/to 且 max_rows≤2000 = 同步内联;max_rows>2000 = 异步落 CSV 数据集(仅标量/向量;图像/表格/事件只支持内联),返回 job_id/dataset_id —— 勿轮询,用 mes_datasets 查状态、mes_dataset_read 读内容。",
|
|
1059
|
+
"parameters": {
|
|
1060
|
+
"type": "object",
|
|
1061
|
+
"properties": {
|
|
1062
|
+
"ids": {
|
|
1063
|
+
"type": "array",
|
|
1064
|
+
"items": {
|
|
1065
|
+
"type": "string"
|
|
1066
|
+
},
|
|
1067
|
+
"description": "目标点位 id 数组(mes_catalog 输出的 id;须为你绑定的数控点位)"
|
|
1068
|
+
},
|
|
1069
|
+
"from": {
|
|
1070
|
+
"type": "string",
|
|
1071
|
+
"description": "窗口起点 ISO 时间(与 to 成对;都不传=当前值快照模式)"
|
|
1072
|
+
},
|
|
1073
|
+
"to": {
|
|
1074
|
+
"type": "string",
|
|
1075
|
+
"description": "窗口终点 ISO 时间(与 from 成对;窗口 ≤7 天)"
|
|
1076
|
+
},
|
|
1077
|
+
"max_rows": {
|
|
1078
|
+
"type": "number",
|
|
1079
|
+
"description": "行数上限(缺省 500,硬上限 5000;>2000 走异步数据集)"
|
|
1080
|
+
},
|
|
1081
|
+
"param": {
|
|
1082
|
+
"type": "object",
|
|
1083
|
+
"description": "透传给点位数据钩子的参数对象(Agent 只传业务参数,如 {\"lane\":12,\"agg\":\"mean\"};请求构造与数据处理逻辑由点位配置决定);无钩子点位可省略"
|
|
1084
|
+
}
|
|
1085
|
+
},
|
|
1086
|
+
"required": [
|
|
1087
|
+
"ids"
|
|
1088
|
+
],
|
|
1089
|
+
"additionalProperties": false
|
|
1090
|
+
}
|
|
1091
|
+
},
|
|
1092
|
+
{
|
|
1093
|
+
"name": "mes_dataset_read",
|
|
1094
|
+
"label": "MES Dataset Read",
|
|
1095
|
+
"description": "读取 MES 取数数据集(mode=head=列名+总行数概览;mode=stats=count/min/max/mean/stddev/首末时间;mode=rows=offset 起每页 20 行分页)。仅创建者、该点位绑定者或该产线可读者可读;回包只带 ≤3 行采样,统计判读请用 mode=stats。",
|
|
1096
|
+
"parameters": {
|
|
1097
|
+
"type": "object",
|
|
1098
|
+
"properties": {
|
|
1099
|
+
"dataset_id": {
|
|
1100
|
+
"type": "string",
|
|
1101
|
+
"description": "数据集 id(mes_fetch 异步回包或 mes_datasets 清单)"
|
|
1102
|
+
},
|
|
1103
|
+
"mode": {
|
|
1104
|
+
"type": "string",
|
|
1105
|
+
"description": "head(缺省)| stats | rows"
|
|
1106
|
+
},
|
|
1107
|
+
"offset": {
|
|
1108
|
+
"type": "number",
|
|
1109
|
+
"description": "rows 模式的起始行号(缺省 0)"
|
|
1110
|
+
}
|
|
1111
|
+
},
|
|
1112
|
+
"required": [
|
|
1113
|
+
"dataset_id"
|
|
1114
|
+
],
|
|
1115
|
+
"additionalProperties": false
|
|
1116
|
+
}
|
|
1117
|
+
},
|
|
1118
|
+
{
|
|
1119
|
+
"name": "mes_datasets",
|
|
1120
|
+
"label": "MES Datasets",
|
|
1121
|
+
"description": "列出你可读的 MES 数据集清单(新→旧;含 dataset_id/点位/时间窗/行数/状态)。用于找回 mes_fetch 异步作业的 dataset_id 与确认取数状态 —— 替代轮询,作业未完成时先做别的任务。",
|
|
1122
|
+
"parameters": {
|
|
1123
|
+
"type": "object",
|
|
1124
|
+
"properties": {
|
|
1125
|
+
"limit": {
|
|
1126
|
+
"type": "number",
|
|
1127
|
+
"description": "返回条数上限(缺省 20,最大 100)"
|
|
1128
|
+
}
|
|
1129
|
+
},
|
|
1130
|
+
"additionalProperties": false
|
|
1131
|
+
}
|
|
1132
|
+
},
|
|
1133
|
+
{
|
|
1134
|
+
"name": "aml_node_catalog",
|
|
1135
|
+
"label": "AML Node Catalog",
|
|
1136
|
+
"description": "列出你可用的 AML 建模节点(全部 daq 绑定):节点 id/名称/物理语义/单位/量程/所属产线/近 24h 是否有批次打标数据。开始任何自动建模前先调用本工具选节点(control=可控输入/target=预测目标/feature=仅历史特征);无绑定会给出指引。",
|
|
1137
|
+
"parameters": {
|
|
1138
|
+
"type": "object",
|
|
1139
|
+
"properties": {},
|
|
1140
|
+
"additionalProperties": false
|
|
1141
|
+
}
|
|
1142
|
+
},
|
|
1143
|
+
{
|
|
1144
|
+
"name": "aml_dataset_build",
|
|
1145
|
+
"label": "AML Dataset Build",
|
|
1146
|
+
"description": "构建 AML 训练数据集:按隔离三元组(产线/产品/配方,防配方串味)拉取批次打标数据,清洗(状态/量程/Hampel)后对齐到 beat_ms 网格,按批次滑窗切分 train/val/test。鉴权:每个 node_id 都必须有你的 daq 绑定且归属 line_id(绑定只缩不放)。返回 dataset_id、行数、窗口计数、逐节点清洗摘要、控制→目标滞后估计。",
|
|
1147
|
+
"parameters": {
|
|
1148
|
+
"type": "object",
|
|
1149
|
+
"properties": {
|
|
1150
|
+
"line_id": {
|
|
1151
|
+
"type": "string",
|
|
1152
|
+
"description": "产线 id(必填;line_context 可查)"
|
|
1153
|
+
},
|
|
1154
|
+
"product_id": {
|
|
1155
|
+
"type": "string",
|
|
1156
|
+
"description": "产品 id(必填)"
|
|
1157
|
+
},
|
|
1158
|
+
"recipe_id": {
|
|
1159
|
+
"type": "string",
|
|
1160
|
+
"description": "配方 id(必填)"
|
|
1161
|
+
},
|
|
1162
|
+
"nodes": {
|
|
1163
|
+
"type": "array",
|
|
1164
|
+
"description": "节点与角色列表(≥2 项,必须含 1 个 target)",
|
|
1165
|
+
"items": {
|
|
1166
|
+
"type": "object",
|
|
1167
|
+
"properties": {
|
|
1168
|
+
"node_id": {
|
|
1169
|
+
"type": "string",
|
|
1170
|
+
"description": "数采节点 id(须有你的 daq 绑定)"
|
|
1171
|
+
},
|
|
1172
|
+
"role": {
|
|
1173
|
+
"type": "string",
|
|
1174
|
+
"enum": [
|
|
1175
|
+
"control",
|
|
1176
|
+
"feature",
|
|
1177
|
+
"target"
|
|
1178
|
+
],
|
|
1179
|
+
"description": "control=可控输入(未来轨迹已知)/ target=预测目标 / feature=仅历史特征"
|
|
1180
|
+
}
|
|
1181
|
+
},
|
|
1182
|
+
"required": [
|
|
1183
|
+
"node_id",
|
|
1184
|
+
"role"
|
|
1185
|
+
]
|
|
1186
|
+
}
|
|
1187
|
+
},
|
|
1188
|
+
"beat_ms": {
|
|
1189
|
+
"type": "number",
|
|
1190
|
+
"description": "数据对齐节拍(ms,≥1000,常用 5000~15000)"
|
|
1191
|
+
},
|
|
1192
|
+
"history_steps": {
|
|
1193
|
+
"type": "number",
|
|
1194
|
+
"description": "历史窗口步数(1~2048;覆盖主要滞后即可)"
|
|
1195
|
+
},
|
|
1196
|
+
"horizon_steps": {
|
|
1197
|
+
"type": "number",
|
|
1198
|
+
"description": "预测步长(1~512;mpc_surrogate 建议覆盖调控响应期)"
|
|
1199
|
+
},
|
|
1200
|
+
"split_seed": {
|
|
1201
|
+
"type": "number",
|
|
1202
|
+
"description": "切分随机种子(缺省 42)"
|
|
1203
|
+
},
|
|
1204
|
+
"val_ratio": {
|
|
1205
|
+
"type": "number",
|
|
1206
|
+
"description": "验证集比例(缺省 0.15)"
|
|
1207
|
+
},
|
|
1208
|
+
"test_ratio": {
|
|
1209
|
+
"type": "number",
|
|
1210
|
+
"description": "测试集比例(缺省 0.15)"
|
|
1211
|
+
},
|
|
1212
|
+
"purpose": {
|
|
1213
|
+
"type": "string",
|
|
1214
|
+
"enum": [
|
|
1215
|
+
"mpc_surrogate",
|
|
1216
|
+
"quality_predict"
|
|
1217
|
+
],
|
|
1218
|
+
"description": "建模目的:mpc_surrogate=代理模型(缺省)/ quality_predict=质量预测"
|
|
1219
|
+
},
|
|
1220
|
+
"note": {
|
|
1221
|
+
"type": "string",
|
|
1222
|
+
"description": "数据集备注(为什么建这个数据集)"
|
|
1223
|
+
},
|
|
1224
|
+
"run_ids": {
|
|
1225
|
+
"type": "array",
|
|
1226
|
+
"items": {
|
|
1227
|
+
"type": "string"
|
|
1228
|
+
},
|
|
1229
|
+
"description": "限定批次 id 列表(缺省 = 该配方全部已完结批次)"
|
|
1230
|
+
},
|
|
1231
|
+
"from_ms": {
|
|
1232
|
+
"type": "number",
|
|
1233
|
+
"description": "起始 epoch ms(可选)"
|
|
1234
|
+
},
|
|
1235
|
+
"to_ms": {
|
|
1236
|
+
"type": "number",
|
|
1237
|
+
"description": "结束 epoch ms(可选)"
|
|
1238
|
+
},
|
|
1239
|
+
"force": {
|
|
1240
|
+
"type": "boolean",
|
|
1241
|
+
"description": "熔断逃生口:10 分钟内已构建过同规格数据集时,默认拒绝并复用既有 dataset_id;确因数据已更新需要重建才传 true(防重试循环烧穿磁盘配额)。"
|
|
1242
|
+
}
|
|
1243
|
+
},
|
|
1244
|
+
"required": [
|
|
1245
|
+
"line_id",
|
|
1246
|
+
"product_id",
|
|
1247
|
+
"recipe_id",
|
|
1248
|
+
"nodes",
|
|
1249
|
+
"beat_ms",
|
|
1250
|
+
"history_steps",
|
|
1251
|
+
"horizon_steps"
|
|
1252
|
+
],
|
|
1253
|
+
"additionalProperties": false
|
|
1254
|
+
}
|
|
1255
|
+
},
|
|
1256
|
+
{
|
|
1257
|
+
"name": "aml_dataset_stats",
|
|
1258
|
+
"label": "AML Dataset Stats",
|
|
1259
|
+
"description": "查看数据集完整统计报告:逐节点 mean/std/p05/p50/p95/缺失率/清洗率、控制→目标滞后估计、逐批次目标均值轮廓(漂移检测)、train/val/test 窗口计数。提交训练前用它确认数据质量。",
|
|
1260
|
+
"parameters": {
|
|
1261
|
+
"type": "object",
|
|
1262
|
+
"properties": {
|
|
1263
|
+
"dataset_id": {
|
|
1264
|
+
"type": "string",
|
|
1265
|
+
"description": "数据集 id(aml_dataset_build 返回)"
|
|
1266
|
+
}
|
|
1267
|
+
},
|
|
1268
|
+
"required": [
|
|
1269
|
+
"dataset_id"
|
|
1270
|
+
],
|
|
1271
|
+
"additionalProperties": false
|
|
1272
|
+
}
|
|
1273
|
+
},
|
|
1274
|
+
{
|
|
1275
|
+
"name": "aml_job_submit",
|
|
1276
|
+
"label": "AML Job Submit",
|
|
1277
|
+
"description": "提交训练作业(内联 train.py 全文,≤500KB)。代码契约:必须 import amlkit;amlkit.load_bundle(datasetPath) 加载数据集;amlkit.report_progress(pct, note) 上报进度(防停摆误杀);amlkit.export_torch_onnx(model, manifest) 导出模型到 artifacts/model.onnx(契约缺失=永久失败);模型接口=one-step:输入 [batch, history_steps, 全节点数](归一化)→ 输出 [batch, 目标数](归一化)。change_note 遵守单组件改动纪律:每次实验只改一个组件(网络/特征/超参之一)并写明。",
|
|
1278
|
+
"parameters": {
|
|
1279
|
+
"type": "object",
|
|
1280
|
+
"properties": {
|
|
1281
|
+
"dataset_id": {
|
|
1282
|
+
"type": "string",
|
|
1283
|
+
"description": "数据集 id(aml_dataset_build 返回)"
|
|
1284
|
+
},
|
|
1285
|
+
"code": {
|
|
1286
|
+
"type": "string",
|
|
1287
|
+
"description": "train.py 全文(≤500KB,须 import amlkit 并导出 artifacts/model.onnx)。job_kind=hybrid_residual 时可省略:平台自动使用内置参考训练器(物理参数校准→有界残差集成→UQ 校准)"
|
|
1288
|
+
},
|
|
1289
|
+
"change_note": {
|
|
1290
|
+
"type": "string",
|
|
1291
|
+
"description": "本次实验改动说明(必填;单组件改动纪律:只改一个组件,写明改了什么与预期)"
|
|
1292
|
+
},
|
|
1293
|
+
"params": {
|
|
1294
|
+
"type": "object",
|
|
1295
|
+
"description": "超参数字典(如 {\"epochs\": 50, \"lr\": 0.001};传入训练代码的 job.json.params)"
|
|
1296
|
+
},
|
|
1297
|
+
"seed": {
|
|
1298
|
+
"type": "number",
|
|
1299
|
+
"description": "随机种子(缺省 42)"
|
|
1300
|
+
},
|
|
1301
|
+
"purpose": {
|
|
1302
|
+
"type": "string",
|
|
1303
|
+
"enum": [
|
|
1304
|
+
"mpc_surrogate",
|
|
1305
|
+
"quality_predict"
|
|
1306
|
+
],
|
|
1307
|
+
"description": "建模目的(缺省继承数据集 spec)"
|
|
1308
|
+
},
|
|
1309
|
+
"parent_experiment_id": {
|
|
1310
|
+
"type": "string",
|
|
1311
|
+
"description": "父实验 id(谱系对照:本次是在哪个实验基础上改的)"
|
|
1312
|
+
},
|
|
1313
|
+
"scene_id": {
|
|
1314
|
+
"type": "string",
|
|
1315
|
+
"description": "Hybrid Twin 场景 id(可选;写入作业谱系)"
|
|
1316
|
+
},
|
|
1317
|
+
"scene_version": {
|
|
1318
|
+
"type": "string",
|
|
1319
|
+
"description": "Hybrid Twin 场景版本"
|
|
1320
|
+
},
|
|
1321
|
+
"objective_id": {
|
|
1322
|
+
"type": "string",
|
|
1323
|
+
"description": "ObjectiveProfile id"
|
|
1324
|
+
},
|
|
1325
|
+
"job_kind": {
|
|
1326
|
+
"type": "string",
|
|
1327
|
+
"enum": [
|
|
1328
|
+
"supervised",
|
|
1329
|
+
"physics_calibration",
|
|
1330
|
+
"hybrid_residual",
|
|
1331
|
+
"uncertainty_calibration"
|
|
1332
|
+
],
|
|
1333
|
+
"description": "训练阶段;legacy 留空"
|
|
1334
|
+
},
|
|
1335
|
+
"physics_spec": {
|
|
1336
|
+
"type": "object",
|
|
1337
|
+
"description": "已冻结 SceneContract 对应的声明式 PhysicsSpec;平台会在隔离 workspace 写入 physics_spec.json"
|
|
1338
|
+
},
|
|
1339
|
+
"physics_manifest": {
|
|
1340
|
+
"type": "object",
|
|
1341
|
+
"description": "物理模型 manifest 快照"
|
|
1342
|
+
},
|
|
1343
|
+
"twin_snapshot": {
|
|
1344
|
+
"type": "object",
|
|
1345
|
+
"description": "训练所依据的 TwinSnapshot"
|
|
1346
|
+
},
|
|
1347
|
+
"objective_profile": {
|
|
1348
|
+
"type": "object",
|
|
1349
|
+
"description": "优化目标契约"
|
|
1350
|
+
},
|
|
1351
|
+
"model_name": {
|
|
1352
|
+
"type": "string",
|
|
1353
|
+
"description": "模型人读标识(可选,≤80 字符):注册时作 label 前缀;平台会自动追加「产品/配方·优化目标」谱系尾,换配方或换目标的模型必须能从名字区分"
|
|
1354
|
+
},
|
|
1355
|
+
"model_description": {
|
|
1356
|
+
"type": "string",
|
|
1357
|
+
"description": "建模意图描述(可选,≤500 字符):写清本模型针对的场景/配方与优化目标;缺省由平台按谱系派生"
|
|
1358
|
+
}
|
|
1359
|
+
},
|
|
1360
|
+
"required": [
|
|
1361
|
+
"dataset_id",
|
|
1362
|
+
"code",
|
|
1363
|
+
"change_note"
|
|
1364
|
+
],
|
|
1365
|
+
"additionalProperties": false
|
|
1366
|
+
}
|
|
1367
|
+
},
|
|
1368
|
+
{
|
|
1369
|
+
"name": "aml_job_status",
|
|
1370
|
+
"label": "AML Job Status",
|
|
1371
|
+
"description": "查看训练作业状态:状态/阶段(provision→train→evaluate)/进度/平台门禁逐项(G1 单步/G2 滚动 NRMSE 等)/错误。不带 job_id 列出最近 10 个;带 job_id 看单作业详情。训练中建议 30~60 秒轮询一次。",
|
|
1372
|
+
"parameters": {
|
|
1373
|
+
"type": "object",
|
|
1374
|
+
"properties": {
|
|
1375
|
+
"job_id": {
|
|
1376
|
+
"type": "string",
|
|
1377
|
+
"description": "作业 id(缺省 = 列最近 10 个)"
|
|
1378
|
+
}
|
|
1379
|
+
},
|
|
1380
|
+
"additionalProperties": false
|
|
1381
|
+
}
|
|
1382
|
+
},
|
|
1383
|
+
{
|
|
1384
|
+
"name": "aml_job_logs",
|
|
1385
|
+
"label": "AML Job Logs",
|
|
1386
|
+
"description": "查看 AML 训练/评估作业的日志行(按 job_id;含加载/训练/门禁/导出各阶段输出)。用于失败归因(如数据不足/门禁未过)与进度确认;作业终态回执已自动送达信箱,本工具用于补看细节。",
|
|
1387
|
+
"parameters": {
|
|
1388
|
+
"type": "object",
|
|
1389
|
+
"properties": {
|
|
1390
|
+
"job_id": {
|
|
1391
|
+
"type": "string",
|
|
1392
|
+
"description": "作业 id"
|
|
1393
|
+
},
|
|
1394
|
+
"lines": {
|
|
1395
|
+
"type": "number",
|
|
1396
|
+
"description": "返回行数(缺省 80,上限 400)"
|
|
1397
|
+
}
|
|
1398
|
+
},
|
|
1399
|
+
"required": [
|
|
1400
|
+
"job_id"
|
|
1401
|
+
],
|
|
1402
|
+
"additionalProperties": false
|
|
1403
|
+
}
|
|
1404
|
+
},
|
|
1405
|
+
{
|
|
1406
|
+
"name": "aml_job_cancel",
|
|
1407
|
+
"label": "AML Job Cancel",
|
|
1408
|
+
"description": "取消排队/运行中的训练作业(运行中的会终止进程树;取消动作入册可审计)。数据集不受影响,可复用重训。",
|
|
1409
|
+
"parameters": {
|
|
1410
|
+
"type": "object",
|
|
1411
|
+
"properties": {
|
|
1412
|
+
"job_id": {
|
|
1413
|
+
"type": "string",
|
|
1414
|
+
"description": "作业 id"
|
|
1415
|
+
}
|
|
1416
|
+
},
|
|
1417
|
+
"required": [
|
|
1418
|
+
"job_id"
|
|
1419
|
+
],
|
|
1420
|
+
"additionalProperties": false
|
|
1421
|
+
}
|
|
1422
|
+
},
|
|
1423
|
+
{
|
|
1424
|
+
"name": "aml_leaderboard",
|
|
1425
|
+
"label": "AML Leaderboard",
|
|
1426
|
+
"description": "查看数据集的实验谱系表(新→旧):每条实验的 change_note/父实验/状态/G1 单步与 G2 滚动 NRMSE/门禁通过情况,并标注当前最优(门禁通过且 G1 最小);同时列出已登记模型(model_id,晋升对象)。优化前先读榜,避免重复试错。",
|
|
1427
|
+
"parameters": {
|
|
1428
|
+
"type": "object",
|
|
1429
|
+
"properties": {
|
|
1430
|
+
"dataset_id": {
|
|
1431
|
+
"type": "string",
|
|
1432
|
+
"description": "数据集 id"
|
|
1433
|
+
}
|
|
1434
|
+
},
|
|
1435
|
+
"required": [
|
|
1436
|
+
"dataset_id"
|
|
1437
|
+
],
|
|
1438
|
+
"additionalProperties": false
|
|
1439
|
+
}
|
|
1440
|
+
},
|
|
1441
|
+
{
|
|
1442
|
+
"name": "aml_model_find",
|
|
1443
|
+
"label": "AML Model Find",
|
|
1444
|
+
"description": "模型发现与选型:按产线/产品/配方/purpose/优化目标/阶段过滤模型注册表,每个模型给出「label(产线·配方·优化目标标识)/阶段/G1+G2 指标/描述」,生产模型置顶,并按当前情况给出 选型指引:复用已有生产模型(aml_model_reference)→ 晋升候选(aml_model_promote,lead 专属)→ 新建模型(aml_dataset_build → aml_job_submit)。开始优化任务前先查:模型按 (产品, 配方, purpose) 隔离,不同 recipe 的模型不可跨用。",
|
|
1445
|
+
"parameters": {
|
|
1446
|
+
"type": "object",
|
|
1447
|
+
"properties": {
|
|
1448
|
+
"line_id": {
|
|
1449
|
+
"type": "string",
|
|
1450
|
+
"description": "限定产线 id(须为你绑定节点所属产线;缺省 = 全部负责产线)"
|
|
1451
|
+
},
|
|
1452
|
+
"product_id": {
|
|
1453
|
+
"type": "string",
|
|
1454
|
+
"description": "限定产品 id"
|
|
1455
|
+
},
|
|
1456
|
+
"recipe_id": {
|
|
1457
|
+
"type": "string",
|
|
1458
|
+
"description": "限定配方 id(配方隔离:换配方必须换模型,选型前务必指定)"
|
|
1459
|
+
},
|
|
1460
|
+
"purpose": {
|
|
1461
|
+
"type": "string",
|
|
1462
|
+
"enum": [
|
|
1463
|
+
"mpc_surrogate",
|
|
1464
|
+
"quality_predict"
|
|
1465
|
+
],
|
|
1466
|
+
"description": "限定建模目的"
|
|
1467
|
+
},
|
|
1468
|
+
"objective_id": {
|
|
1469
|
+
"type": "string",
|
|
1470
|
+
"description": "限定优化目标(ObjectiveProfile id;hybrid twin 模型携带)"
|
|
1471
|
+
},
|
|
1472
|
+
"stage": {
|
|
1473
|
+
"type": "string",
|
|
1474
|
+
"enum": [
|
|
1475
|
+
"candidate",
|
|
1476
|
+
"shadow",
|
|
1477
|
+
"production",
|
|
1478
|
+
"retired"
|
|
1479
|
+
],
|
|
1480
|
+
"description": "限定阶段(缺省 = 全部,production 置顶)"
|
|
1481
|
+
}
|
|
1482
|
+
},
|
|
1483
|
+
"additionalProperties": false
|
|
1484
|
+
}
|
|
1485
|
+
},
|
|
1486
|
+
{
|
|
1487
|
+
"name": "aml_model_promote",
|
|
1488
|
+
"label": "AML Model Promote",
|
|
1489
|
+
"description": "(Lead only) 晋升模型阶段:to_stage=shadow(影子观测)或 production(生产生效)。必须经人工审批(HITL 挂起,用户批准/拒绝/超时);批准晋升 production 时同组旧生产模型自动退役。worker 无此工具;模型 id 从 aml_leaderboard 查。",
|
|
1490
|
+
"parameters": {
|
|
1491
|
+
"type": "object",
|
|
1492
|
+
"properties": {
|
|
1493
|
+
"model_id": {
|
|
1494
|
+
"type": "string",
|
|
1495
|
+
"description": "模型 id(aml_leaderboard 的已登记模型段)"
|
|
1496
|
+
},
|
|
1497
|
+
"to_stage": {
|
|
1498
|
+
"type": "string",
|
|
1499
|
+
"enum": [
|
|
1500
|
+
"shadow",
|
|
1501
|
+
"production"
|
|
1502
|
+
],
|
|
1503
|
+
"description": "目标阶段:shadow=影子观测 / production=生产生效"
|
|
1504
|
+
}
|
|
1505
|
+
},
|
|
1506
|
+
"required": [
|
|
1507
|
+
"model_id",
|
|
1508
|
+
"to_stage"
|
|
1509
|
+
],
|
|
1510
|
+
"additionalProperties": false
|
|
1511
|
+
}
|
|
1512
|
+
},
|
|
1513
|
+
{
|
|
1514
|
+
"name": "aml_model_reference",
|
|
1515
|
+
"label": "AML Model Reference",
|
|
1516
|
+
"description": "影子模型参考(调参前先问影子模型):拉取最近历史数据组装生产模型输入,按当前/指定控制轨迹预测未来每拍的目标值(物理量纲)。用于 dcw_control 下发前对比不同设定方案的目标响应;预测仅供参考,真实下发仍走安全联锁。product/recipe 缺省时取你绑定节点所属产线的唯一活动批次。",
|
|
1517
|
+
"parameters": {
|
|
1518
|
+
"type": "object",
|
|
1519
|
+
"properties": {
|
|
1520
|
+
"line_id": {
|
|
1521
|
+
"type": "string",
|
|
1522
|
+
"description": "限定产线 id(须为你绑定节点所属产线;多产线绑定且未给全 product/recipe 时必传以消歧)"
|
|
1523
|
+
},
|
|
1524
|
+
"product_id": {
|
|
1525
|
+
"type": "string",
|
|
1526
|
+
"description": "产品 id(缺省 = 活动批次)"
|
|
1527
|
+
},
|
|
1528
|
+
"recipe_id": {
|
|
1529
|
+
"type": "string",
|
|
1530
|
+
"description": "配方 id(缺省 = 活动批次)"
|
|
1531
|
+
},
|
|
1532
|
+
"purpose": {
|
|
1533
|
+
"type": "string",
|
|
1534
|
+
"enum": [
|
|
1535
|
+
"mpc_surrogate",
|
|
1536
|
+
"quality_predict"
|
|
1537
|
+
],
|
|
1538
|
+
"description": "建模目的(缺省 mpc_surrogate)"
|
|
1539
|
+
},
|
|
1540
|
+
"controls": {
|
|
1541
|
+
"type": "object",
|
|
1542
|
+
"description": "控制节点设定值映射 {node_id: value}(候选方案;缺省 = 持最后观测)"
|
|
1543
|
+
},
|
|
1544
|
+
"steps": {
|
|
1545
|
+
"type": "number",
|
|
1546
|
+
"description": "滚动预测步数(≤ 模型 horizon;缺省 = 全 horizon)"
|
|
1547
|
+
}
|
|
1548
|
+
},
|
|
1549
|
+
"additionalProperties": false
|
|
1550
|
+
}
|
|
1551
|
+
},
|
|
1552
|
+
{
|
|
1553
|
+
"name": "twin_provider_catalog",
|
|
1554
|
+
"label": "Twin Provider Catalog",
|
|
1555
|
+
"description": "读取当前已注册的场景 Provider、ScenePack、SolverAdapter 及 generation/health 元数据;只读,不执行控制。",
|
|
1556
|
+
"parameters": {
|
|
1557
|
+
"type": "object",
|
|
1558
|
+
"properties": {
|
|
1559
|
+
"scene_kind": {
|
|
1560
|
+
"type": "string",
|
|
1561
|
+
"description": "可选场景类型过滤"
|
|
1562
|
+
}
|
|
1563
|
+
},
|
|
1564
|
+
"additionalProperties": false
|
|
1565
|
+
}
|
|
1566
|
+
},
|
|
1567
|
+
{
|
|
1568
|
+
"name": "twin_scene_discover",
|
|
1569
|
+
"label": "Twin Scene Discover",
|
|
1570
|
+
"description": "读取当前 Agent 已绑定的 DAQ/DCW 节点,推断 control/state/disturbance/target/guard 语义并返回证据与置信度;只读,不执行控制。",
|
|
1571
|
+
"parameters": {
|
|
1572
|
+
"type": "object",
|
|
1573
|
+
"properties": {
|
|
1574
|
+
"scene_kind": {
|
|
1575
|
+
"type": "string",
|
|
1576
|
+
"description": "可选场景类型"
|
|
1577
|
+
}
|
|
1578
|
+
},
|
|
1579
|
+
"additionalProperties": false
|
|
1580
|
+
}
|
|
1581
|
+
},
|
|
1582
|
+
{
|
|
1583
|
+
"name": "twin_scene_compile",
|
|
1584
|
+
"label": "Twin Scene Compile",
|
|
1585
|
+
"description": "根据已绑定节点和场景提示词生成 SceneContract Draft;默认 draft,首次训练/上线前必须由用户确认后冻结。",
|
|
1586
|
+
"parameters": {
|
|
1587
|
+
"type": "object",
|
|
1588
|
+
"properties": {
|
|
1589
|
+
"scene_id": {
|
|
1590
|
+
"type": "string"
|
|
1591
|
+
},
|
|
1592
|
+
"scene_version": {
|
|
1593
|
+
"type": "string"
|
|
1594
|
+
},
|
|
1595
|
+
"line_id": {
|
|
1596
|
+
"type": "string"
|
|
1597
|
+
},
|
|
1598
|
+
"product_id": {
|
|
1599
|
+
"type": "string"
|
|
1600
|
+
},
|
|
1601
|
+
"recipe_id": {
|
|
1602
|
+
"type": "string"
|
|
1603
|
+
},
|
|
1604
|
+
"prompt": {
|
|
1605
|
+
"type": "string"
|
|
1606
|
+
},
|
|
1607
|
+
"physics_profile_id": {
|
|
1608
|
+
"type": "string"
|
|
1609
|
+
},
|
|
1610
|
+
"objective_profile_ids": {
|
|
1611
|
+
"type": "array",
|
|
1612
|
+
"items": {
|
|
1613
|
+
"type": "string"
|
|
1614
|
+
}
|
|
1615
|
+
},
|
|
1616
|
+
"node_ids": {
|
|
1617
|
+
"type": "array",
|
|
1618
|
+
"items": {
|
|
1619
|
+
"type": "string"
|
|
1620
|
+
}
|
|
1621
|
+
}
|
|
1622
|
+
},
|
|
1623
|
+
"required": [
|
|
1624
|
+
"scene_id",
|
|
1625
|
+
"line_id"
|
|
1626
|
+
],
|
|
1627
|
+
"additionalProperties": false
|
|
1628
|
+
}
|
|
1629
|
+
},
|
|
1630
|
+
{
|
|
1631
|
+
"name": "twin_scene_freeze",
|
|
1632
|
+
"label": "Twin Scene Freeze",
|
|
1633
|
+
"description": "在用户明确确认后冻结 SceneContract;冻结后同一 scene_id/version 的契约不可覆盖,变更必须新建版本。",
|
|
1634
|
+
"parameters": {
|
|
1635
|
+
"type": "object",
|
|
1636
|
+
"properties": {
|
|
1637
|
+
"scene_id": {
|
|
1638
|
+
"type": "string"
|
|
1639
|
+
},
|
|
1640
|
+
"scene_version": {
|
|
1641
|
+
"type": "string"
|
|
1642
|
+
},
|
|
1643
|
+
"expected_hash": {
|
|
1644
|
+
"type": "string"
|
|
1645
|
+
},
|
|
1646
|
+
"approved_by": {
|
|
1647
|
+
"type": "string"
|
|
1648
|
+
},
|
|
1649
|
+
"confirmation": {
|
|
1650
|
+
"type": "string",
|
|
1651
|
+
"description": "必须为 USER_CONFIRMED_SCENE_CONTRACT"
|
|
1652
|
+
}
|
|
1653
|
+
},
|
|
1654
|
+
"required": [
|
|
1655
|
+
"scene_id",
|
|
1656
|
+
"scene_version",
|
|
1657
|
+
"confirmation"
|
|
1658
|
+
],
|
|
1659
|
+
"additionalProperties": false
|
|
1660
|
+
}
|
|
1661
|
+
},
|
|
1662
|
+
{
|
|
1663
|
+
"name": "twin_physics_spec_draft",
|
|
1664
|
+
"label": "Twin PhysicsSpec Draft",
|
|
1665
|
+
"description": "从场景(SceneContract,须含 nodeId 映射)自动生成骨架 PhysicsSpec:每个状态变量=一阶惯性弛豫方程(τ/控制增益为带先验盒的可校准参数),观测=持久性恒等基线,约束继承场景。这是任意工况建模的起点:生成后按真实物理润色方程 → twin_physics_spec_validate → twin_physics_spec_compile → aml_job_submit(job_kind=hybrid_residual,训练 stage A 会自动按数据拟合 τ/增益)。传 dt_sec 指定与数据集 beat 一致的步长(缺省 1s)。",
|
|
1666
|
+
"parameters": {
|
|
1667
|
+
"type": "object",
|
|
1668
|
+
"properties": {
|
|
1669
|
+
"scene_json": {
|
|
1670
|
+
"type": "object",
|
|
1671
|
+
"description": "SceneContract 全文(hybrid Channel 已绑定冻结场景时可省略)"
|
|
1672
|
+
},
|
|
1673
|
+
"dt_sec": {
|
|
1674
|
+
"type": "number",
|
|
1675
|
+
"description": "求解步长(秒;应与训练数据集 beatMs/1000 一致,缺省 1)"
|
|
1676
|
+
}
|
|
1677
|
+
},
|
|
1678
|
+
"additionalProperties": false
|
|
1679
|
+
}
|
|
1680
|
+
},
|
|
1681
|
+
{
|
|
1682
|
+
"name": "twin_physics_spec_validate",
|
|
1683
|
+
"label": "Twin PhysicsSpec Validate",
|
|
1684
|
+
"description": "校验孪生物理规格(PhysicsSpec)的结构与参数完整性:方程/常量/输入输出维度/量纲是否自洽。训练与评估前先校验,坏规格会在运行期才爆;校验回包给出逐项问题定位。",
|
|
1685
|
+
"parameters": {
|
|
1686
|
+
"type": "object",
|
|
1687
|
+
"properties": {
|
|
1688
|
+
"physics_spec": {
|
|
1689
|
+
"type": "object"
|
|
1690
|
+
},
|
|
1691
|
+
"spec_json": {
|
|
1692
|
+
"type": "string"
|
|
1693
|
+
}
|
|
1694
|
+
},
|
|
1695
|
+
"required": [
|
|
1696
|
+
"physics_spec"
|
|
1697
|
+
],
|
|
1698
|
+
"additionalProperties": false
|
|
1699
|
+
}
|
|
1700
|
+
},
|
|
1701
|
+
{
|
|
1702
|
+
"name": "twin_physics_spec_compile",
|
|
1703
|
+
"label": "Twin PhysicsSpec Compile",
|
|
1704
|
+
"description": "将已冻结场景的 PhysicsSpec 编译为隔离的 Generic Declarative Provider 候选并保存 artifact;不注册 production、不写 PLC。",
|
|
1705
|
+
"parameters": {
|
|
1706
|
+
"type": "object",
|
|
1707
|
+
"properties": {
|
|
1708
|
+
"physics_spec": {
|
|
1709
|
+
"type": "object"
|
|
1710
|
+
},
|
|
1711
|
+
"spec_json": {
|
|
1712
|
+
"type": "string"
|
|
1713
|
+
},
|
|
1714
|
+
"scene_json": {
|
|
1715
|
+
"type": "object"
|
|
1716
|
+
}
|
|
1717
|
+
},
|
|
1718
|
+
"required": [
|
|
1719
|
+
"physics_spec",
|
|
1720
|
+
"scene_json"
|
|
1721
|
+
],
|
|
1722
|
+
"additionalProperties": false
|
|
1723
|
+
}
|
|
1724
|
+
},
|
|
1725
|
+
{
|
|
1726
|
+
"name": "twin_scene_read",
|
|
1727
|
+
"label": "Twin Scene Read",
|
|
1728
|
+
"description": "读取绑定场景的机器可验证 SceneContract 与控制策略;仅返回场景/节点语义,不执行任何控制。",
|
|
1729
|
+
"parameters": {
|
|
1730
|
+
"type": "object",
|
|
1731
|
+
"properties": {
|
|
1732
|
+
"scene_id": {
|
|
1733
|
+
"type": "string",
|
|
1734
|
+
"description": "场景 id,缺省使用当前注塑 MVP 场景"
|
|
1735
|
+
}
|
|
1736
|
+
},
|
|
1737
|
+
"additionalProperties": false
|
|
1738
|
+
}
|
|
1739
|
+
},
|
|
1740
|
+
{
|
|
1741
|
+
"name": "twin_snapshot_create",
|
|
1742
|
+
"label": "Twin Snapshot Create",
|
|
1743
|
+
"description": "根据服务端绑定的 DAQ 样本创建带 freshness/watermark/hash/binding epoch 的不可变 TwinSnapshot;Hybrid Twin 必须 auto_daq=true、冻结场景和 BindingSnapshot,禁止 Agent 伪造样本。",
|
|
1744
|
+
"parameters": {
|
|
1745
|
+
"type": "object",
|
|
1746
|
+
"properties": {
|
|
1747
|
+
"scene_json": {
|
|
1748
|
+
"type": "object",
|
|
1749
|
+
"description": "SceneContract JSON(可选)"
|
|
1750
|
+
},
|
|
1751
|
+
"channel_id": {
|
|
1752
|
+
"type": "string"
|
|
1753
|
+
},
|
|
1754
|
+
"phase": {
|
|
1755
|
+
"type": "string"
|
|
1756
|
+
},
|
|
1757
|
+
"controls": {
|
|
1758
|
+
"type": "object"
|
|
1759
|
+
},
|
|
1760
|
+
"states": {
|
|
1761
|
+
"type": "object"
|
|
1762
|
+
},
|
|
1763
|
+
"disturbances": {
|
|
1764
|
+
"type": "object"
|
|
1765
|
+
},
|
|
1766
|
+
"samples": {
|
|
1767
|
+
"type": "array",
|
|
1768
|
+
"description": "[{nodeId,at,value,sequence}]"
|
|
1769
|
+
},
|
|
1770
|
+
"now_ms": {
|
|
1771
|
+
"type": "number"
|
|
1772
|
+
}
|
|
1773
|
+
},
|
|
1774
|
+
"required": [
|
|
1775
|
+
"samples",
|
|
1776
|
+
"controls"
|
|
1777
|
+
],
|
|
1778
|
+
"additionalProperties": false
|
|
1779
|
+
}
|
|
1780
|
+
},
|
|
1781
|
+
{
|
|
1782
|
+
"name": "twin_trial_run",
|
|
1783
|
+
"label": "Twin Virtual Trial",
|
|
1784
|
+
"description": "在隔离模型副本中注入候选控制轨迹,输出全轨迹约束、UQ/OOD 与收益;candidateExecuted=false,不触碰 PLC/DCW。传 model_id 时 rollout 由该训练注册的 hybrid 模型驱动(校准后物理主干+有界残差集成,UQ coverage 来自训练工件),且模型谱系必须与场景 line/product/recipe 一致;不传则用场景物理 provider。",
|
|
1785
|
+
"parameters": {
|
|
1786
|
+
"type": "object",
|
|
1787
|
+
"properties": {
|
|
1788
|
+
"scene_json": {
|
|
1789
|
+
"type": "object"
|
|
1790
|
+
},
|
|
1791
|
+
"snapshot_json": {
|
|
1792
|
+
"type": "object"
|
|
1793
|
+
},
|
|
1794
|
+
"snapshot_id": {
|
|
1795
|
+
"type": "string",
|
|
1796
|
+
"description": "生产 VirtualTrial 使用已持久化 TwinSnapshot id;Hybrid Twin 必填"
|
|
1797
|
+
},
|
|
1798
|
+
"model_id": {
|
|
1799
|
+
"type": "string",
|
|
1800
|
+
"description": "驱动 rollout 的 AML 模型 id(须为 hybrid 模型且与场景同谱系;aml_model_find 可查);缺省=场景物理 provider"
|
|
1801
|
+
},
|
|
1802
|
+
"baseline_controls": {
|
|
1803
|
+
"type": "object"
|
|
1804
|
+
},
|
|
1805
|
+
"candidate_controls": {
|
|
1806
|
+
"type": "array"
|
|
1807
|
+
},
|
|
1808
|
+
"objective": {
|
|
1809
|
+
"type": "object"
|
|
1810
|
+
},
|
|
1811
|
+
"uncertainty": {
|
|
1812
|
+
"type": "object"
|
|
1813
|
+
}
|
|
1814
|
+
},
|
|
1815
|
+
"required": [
|
|
1816
|
+
"snapshot_json",
|
|
1817
|
+
"candidate_controls"
|
|
1818
|
+
],
|
|
1819
|
+
"additionalProperties": false
|
|
1820
|
+
}
|
|
1821
|
+
},
|
|
1822
|
+
{
|
|
1823
|
+
"name": "mpc_optimize",
|
|
1824
|
+
"label": "MPC Recommendation Only",
|
|
1825
|
+
"description": "先检查冻结 SceneContract、绑定快照、模型门禁;未通过时只生成 safe_small_step 小步参数试探,门禁通过后才允许更精确的候选搜索;始终 recommendation-only。传 model_id 时候选评估由该训练注册的 hybrid 模型 rollout(残差修正+集成 UQ);不传则用场景物理 provider。",
|
|
1826
|
+
"parameters": {
|
|
1827
|
+
"type": "object",
|
|
1828
|
+
"properties": {
|
|
1829
|
+
"scene_json": {
|
|
1830
|
+
"type": "object"
|
|
1831
|
+
},
|
|
1832
|
+
"snapshot_id": {
|
|
1833
|
+
"type": "string",
|
|
1834
|
+
"description": "生产 MPC 使用已持久化 TwinSnapshot id;Hybrid Twin 必填"
|
|
1835
|
+
},
|
|
1836
|
+
"baseline_controls": {
|
|
1837
|
+
"type": "object"
|
|
1838
|
+
},
|
|
1839
|
+
"model_ready": {
|
|
1840
|
+
"type": "boolean"
|
|
1841
|
+
},
|
|
1842
|
+
"horizon_steps": {
|
|
1843
|
+
"type": "number"
|
|
1844
|
+
}
|
|
1845
|
+
},
|
|
1846
|
+
"required": [
|
|
1847
|
+
"baseline_controls"
|
|
1848
|
+
],
|
|
1849
|
+
"additionalProperties": false
|
|
1850
|
+
}
|
|
1851
|
+
},
|
|
1852
|
+
{
|
|
1853
|
+
"name": "twin_gate_evaluate",
|
|
1854
|
+
"label": "Twin Gate Evaluate",
|
|
1855
|
+
"description": "评估 AML 数据门、物理门、UQ/OOD、VirtualTrial 候选数量和硬约束;零候选/零分母自动拒绝。",
|
|
1856
|
+
"parameters": {
|
|
1857
|
+
"type": "object",
|
|
1858
|
+
"properties": {
|
|
1859
|
+
"rows": {
|
|
1860
|
+
"type": "number"
|
|
1861
|
+
},
|
|
1862
|
+
"runs": {
|
|
1863
|
+
"type": "number"
|
|
1864
|
+
},
|
|
1865
|
+
"one_step_nrmse": {
|
|
1866
|
+
"type": "number"
|
|
1867
|
+
},
|
|
1868
|
+
"rollout_nrmse": {
|
|
1869
|
+
"type": "number"
|
|
1870
|
+
},
|
|
1871
|
+
"val_test_gap": {
|
|
1872
|
+
"type": "number"
|
|
1873
|
+
},
|
|
1874
|
+
"calibration_rows": {
|
|
1875
|
+
"type": "number"
|
|
1876
|
+
},
|
|
1877
|
+
"coverage": {
|
|
1878
|
+
"type": "number"
|
|
1879
|
+
},
|
|
1880
|
+
"physics_failure_rate": {
|
|
1881
|
+
"type": "number"
|
|
1882
|
+
},
|
|
1883
|
+
"candidate_trials": {
|
|
1884
|
+
"type": "array"
|
|
1885
|
+
}
|
|
1886
|
+
},
|
|
1887
|
+
"required": [
|
|
1888
|
+
"rows",
|
|
1889
|
+
"runs",
|
|
1890
|
+
"candidate_trials"
|
|
1891
|
+
],
|
|
1892
|
+
"additionalProperties": false
|
|
1893
|
+
}
|
|
1894
|
+
},
|
|
1895
|
+
{
|
|
1896
|
+
"name": "twin_calibration_request",
|
|
1897
|
+
"label": "Twin Calibration Request",
|
|
1898
|
+
"description": "按新 DAQ run/rows、漂移或误差阈值登记一次去重的自动校准候选;只进入 AgentTeam 校准队列,不覆盖 production,不写 DCW。",
|
|
1899
|
+
"parameters": {
|
|
1900
|
+
"type": "object",
|
|
1901
|
+
"properties": {
|
|
1902
|
+
"scene_id": {
|
|
1903
|
+
"type": "string"
|
|
1904
|
+
},
|
|
1905
|
+
"line_id": {
|
|
1906
|
+
"type": "string"
|
|
1907
|
+
},
|
|
1908
|
+
"recipe_id": {
|
|
1909
|
+
"type": "string"
|
|
1910
|
+
},
|
|
1911
|
+
"new_runs": {
|
|
1912
|
+
"type": "number"
|
|
1913
|
+
},
|
|
1914
|
+
"new_rows": {
|
|
1915
|
+
"type": "number"
|
|
1916
|
+
},
|
|
1917
|
+
"drift_score": {
|
|
1918
|
+
"type": "number"
|
|
1919
|
+
},
|
|
1920
|
+
"error_score": {
|
|
1921
|
+
"type": "number"
|
|
1922
|
+
},
|
|
1923
|
+
"reason": {
|
|
1924
|
+
"type": "string"
|
|
1925
|
+
}
|
|
1926
|
+
},
|
|
1927
|
+
"required": [
|
|
1928
|
+
"line_id",
|
|
1929
|
+
"new_runs",
|
|
1930
|
+
"new_rows"
|
|
1931
|
+
],
|
|
1932
|
+
"additionalProperties": false
|
|
1933
|
+
}
|
|
1934
|
+
},
|
|
1935
|
+
{
|
|
1936
|
+
"name": "optimization_explore",
|
|
1937
|
+
"label": "Optimization Explore Step",
|
|
1938
|
+
"description": "工艺优化探索步(探索模式核心):按 goal 与指定方向/步长生成激励值,经数控下发治理链(绑定鉴权/HITL/写限界)真实写入产线,等待工艺响应后读回目标量均值,并把【写入值↔响应值】配对落库为探索记录(训练数据回流的事实源)。步长缺省取绑定 tuning.step 或场景调试跨度;方向 up/down 由你依据节点物理意义判断。多轮迭代以积累「参数波动↔目标响应」数据,供 AML 修正训练与后续模型寻优。",
|
|
1939
|
+
"parameters": {
|
|
1940
|
+
"type": "object",
|
|
1941
|
+
"properties": {
|
|
1942
|
+
"control_node_id": {
|
|
1943
|
+
"type": "string",
|
|
1944
|
+
"description": "数控节点 id(缺省=第一个数控绑定)"
|
|
1945
|
+
},
|
|
1946
|
+
"target_node_id": {
|
|
1947
|
+
"type": "string",
|
|
1948
|
+
"description": "目标观测节点 id(缺省=第一个数采绑定)"
|
|
1949
|
+
},
|
|
1950
|
+
"direction": {
|
|
1951
|
+
"type": "string",
|
|
1952
|
+
"enum": [
|
|
1953
|
+
"up",
|
|
1954
|
+
"down"
|
|
1955
|
+
],
|
|
1956
|
+
"description": "激励方向(依据节点物理意义与 goal 偏差判断)"
|
|
1957
|
+
},
|
|
1958
|
+
"step": {
|
|
1959
|
+
"type": "number",
|
|
1960
|
+
"description": "激励步长(缺省=绑定 tuning.step 或场景 maxStep)"
|
|
1961
|
+
},
|
|
1962
|
+
"settle_seconds": {
|
|
1963
|
+
"type": "number",
|
|
1964
|
+
"description": "写入后等待工艺响应的秒数(10~300,缺省 45)"
|
|
1965
|
+
},
|
|
1966
|
+
"hypothesis": {
|
|
1967
|
+
"type": "string",
|
|
1968
|
+
"description": "本次探索假设(入册追溯)"
|
|
1969
|
+
}
|
|
1970
|
+
},
|
|
1971
|
+
"additionalProperties": false
|
|
1972
|
+
}
|
|
1973
|
+
},
|
|
1974
|
+
{
|
|
1975
|
+
"name": "twin_bayes_optimize",
|
|
1976
|
+
"label": "Twin Bayesian Optimize",
|
|
1977
|
+
"description": "AML 模式贝叶斯寻优(须已绑定通过门禁的 AML 模型):以绑定模型 rollout 为代理,围绕当前最优邻域多轮生成候选,UCB(μ-κ·σ)权衡利用与探索,产出收敛轨迹与最终受治理推荐(recommendation-only,写入须审批)。快照/绑定校验与 mpc_optimize 同源。",
|
|
1978
|
+
"parameters": {
|
|
1979
|
+
"type": "object",
|
|
1980
|
+
"properties": {
|
|
1981
|
+
"scene_json": {
|
|
1982
|
+
"type": "object"
|
|
1983
|
+
},
|
|
1984
|
+
"snapshot_id": {
|
|
1985
|
+
"type": "string",
|
|
1986
|
+
"description": "已持久化 TwinSnapshot id(必填,requireFresh)"
|
|
1987
|
+
},
|
|
1988
|
+
"baseline_controls": {
|
|
1989
|
+
"type": "object"
|
|
1990
|
+
},
|
|
1991
|
+
"objective": {
|
|
1992
|
+
"type": "object",
|
|
1993
|
+
"description": "ObjectiveProfile(缺省=Channel goal)"
|
|
1994
|
+
},
|
|
1995
|
+
"rounds": {
|
|
1996
|
+
"type": "number",
|
|
1997
|
+
"description": "搜索轮数(1~10,缺省 4)"
|
|
1998
|
+
},
|
|
1999
|
+
"candidates_per_round": {
|
|
2000
|
+
"type": "number",
|
|
2001
|
+
"description": "每轮候选数(2~20,缺省 6)"
|
|
2002
|
+
},
|
|
2003
|
+
"kappa": {
|
|
2004
|
+
"type": "number",
|
|
2005
|
+
"description": "UCB 探索系数(缺省 1.96)"
|
|
2006
|
+
},
|
|
2007
|
+
"horizon_steps": {
|
|
2008
|
+
"type": "number",
|
|
2009
|
+
"description": "rollout 步数(缺省 4)"
|
|
2010
|
+
}
|
|
2011
|
+
},
|
|
2012
|
+
"required": [
|
|
2013
|
+
"snapshot_id",
|
|
2014
|
+
"baseline_controls"
|
|
2015
|
+
],
|
|
2016
|
+
"additionalProperties": false
|
|
2017
|
+
}
|
|
2018
|
+
},
|
|
2019
|
+
{
|
|
2020
|
+
"name": "aml_training_plan_list",
|
|
2021
|
+
"label": "AML Training Plan List",
|
|
2022
|
+
"description": "建模任务清单(解耦编排面):列出全部建模任务的谱系绑定/策略(auto=新批次自动修正训练)/状态/最新模型与 spec 固化情况。",
|
|
2023
|
+
"parameters": {
|
|
2024
|
+
"type": "object",
|
|
2025
|
+
"properties": {},
|
|
2026
|
+
"additionalProperties": false
|
|
2027
|
+
}
|
|
2028
|
+
},
|
|
2029
|
+
{
|
|
2030
|
+
"name": "aml_training_plan_create",
|
|
2031
|
+
"label": "AML Training Plan Create",
|
|
2032
|
+
"description": "创建建模任务(绑定产线/产品/配方三元组 + 数据集 IO 契约:control=DCW 输入,target=DAQ 输出 + 固化训练 spec)。auto 策略的任务在新批次(含工艺优化 Channel 的探索数据)到达时由平台自动修正训练;模型入册后可在 AML 界面绑定到工艺优化 Channel。",
|
|
2033
|
+
"parameters": {
|
|
2034
|
+
"type": "object",
|
|
2035
|
+
"properties": {
|
|
2036
|
+
"name": {
|
|
2037
|
+
"type": "string"
|
|
2038
|
+
},
|
|
2039
|
+
"line_id": {
|
|
2040
|
+
"type": "string"
|
|
2041
|
+
},
|
|
2042
|
+
"product_id": {
|
|
2043
|
+
"type": "string"
|
|
2044
|
+
},
|
|
2045
|
+
"recipe_id": {
|
|
2046
|
+
"type": "string"
|
|
2047
|
+
},
|
|
2048
|
+
"scene_id": {
|
|
2049
|
+
"type": "string"
|
|
2050
|
+
},
|
|
2051
|
+
"scene_version": {
|
|
2052
|
+
"type": "string"
|
|
2053
|
+
},
|
|
2054
|
+
"objective_id": {
|
|
2055
|
+
"type": "string"
|
|
2056
|
+
},
|
|
2057
|
+
"strategy": {
|
|
2058
|
+
"type": "string",
|
|
2059
|
+
"enum": [
|
|
2060
|
+
"auto",
|
|
2061
|
+
"manual"
|
|
2062
|
+
]
|
|
2063
|
+
},
|
|
2064
|
+
"dataset_spec": {
|
|
2065
|
+
"type": "object",
|
|
2066
|
+
"description": "AmlDatasetSpec 完整契约"
|
|
2067
|
+
},
|
|
2068
|
+
"training_spec": {
|
|
2069
|
+
"type": "object",
|
|
2070
|
+
"description": "固化的 PhysicsSpec(含 modelId;来自 twin_physics_spec_draft/compile 流程)"
|
|
2071
|
+
},
|
|
2072
|
+
"model_name_prefix": {
|
|
2073
|
+
"type": "string"
|
|
2074
|
+
},
|
|
2075
|
+
"params": {
|
|
2076
|
+
"type": "object"
|
|
2077
|
+
},
|
|
2078
|
+
"seed": {
|
|
2079
|
+
"type": "number"
|
|
2080
|
+
},
|
|
2081
|
+
"min_interval_sec": {
|
|
2082
|
+
"type": "number"
|
|
2083
|
+
}
|
|
2084
|
+
},
|
|
2085
|
+
"required": [
|
|
2086
|
+
"line_id",
|
|
2087
|
+
"product_id",
|
|
2088
|
+
"recipe_id",
|
|
2089
|
+
"dataset_spec"
|
|
2090
|
+
],
|
|
2091
|
+
"additionalProperties": false
|
|
2092
|
+
}
|
|
2093
|
+
},
|
|
2094
|
+
{
|
|
2095
|
+
"name": "aml_training_plan_train",
|
|
2096
|
+
"label": "AML Training Plan Train",
|
|
2097
|
+
"description": "立即触发建模任务的修正训练:重建数据集(历史+新批次)→ 平台参考训练器 → 门禁 → 模型入册;plan 状态回写,AML 界面可渲染。",
|
|
2098
|
+
"parameters": {
|
|
2099
|
+
"type": "object",
|
|
2100
|
+
"properties": {
|
|
2101
|
+
"plan_id": {
|
|
2102
|
+
"type": "string",
|
|
2103
|
+
"description": "建模任务 id"
|
|
2104
|
+
}
|
|
2105
|
+
},
|
|
2106
|
+
"required": [
|
|
2107
|
+
"plan_id"
|
|
2108
|
+
],
|
|
2109
|
+
"additionalProperties": false
|
|
2110
|
+
}
|
|
2111
|
+
},
|
|
2112
|
+
{
|
|
2113
|
+
"name": "team_grant_nodes",
|
|
2114
|
+
"label": "Grant Nodes",
|
|
2115
|
+
"description": "(Lead only) Grant industrial node permissions (DAQ read / DCW control) to a worker in this channel. HARD RULE: every node must already be bound to YOU (the lead) — you cannot grant permissions beyond your own bindings. Grants are all-or-nothing: if any node is not in your binding surface, the whole request is rejected and nothing is granted. Use this before dispatching (so the worker can act immediately) or mid-execution when scope expands. The worker sees granted nodes via my_industrial_nodes. To grant together with a task, prefer dispatch_task(grant_node_ids=[...]). 可委派对象:数采节点(观察)与配方(recipe;被授予者获得该配方的参数写入/下发能力,受运行门与 HITL 约束)。每个对象必须已绑定你自己(绑定即前提,权限不可超越授予者)。",
|
|
2116
|
+
"parameters": {
|
|
2117
|
+
"type": "object",
|
|
2118
|
+
"properties": {
|
|
2119
|
+
"agent_id": {
|
|
2120
|
+
"type": "string",
|
|
2121
|
+
"description": "Worker member instance id in this channel"
|
|
2122
|
+
},
|
|
2123
|
+
"node_ids": {
|
|
2124
|
+
"type": "array",
|
|
2125
|
+
"items": {
|
|
2126
|
+
"type": "string"
|
|
2127
|
+
},
|
|
2128
|
+
"description": "Node ids to grant (DAQ and/or DCW nodes; must all be bound to you, the lead)"
|
|
2129
|
+
},
|
|
2130
|
+
"mode": {
|
|
2131
|
+
"type": "string",
|
|
2132
|
+
"enum": [
|
|
2133
|
+
"auto",
|
|
2134
|
+
"manual"
|
|
2135
|
+
],
|
|
2136
|
+
"description": "Optional binding mode for the granted nodes; default = the mode of YOUR own binding for that node (manual = every write needs user approval)"
|
|
2137
|
+
}
|
|
2138
|
+
},
|
|
2139
|
+
"required": [
|
|
2140
|
+
"agent_id",
|
|
2141
|
+
"node_ids"
|
|
2142
|
+
],
|
|
2143
|
+
"additionalProperties": false
|
|
2144
|
+
}
|
|
2145
|
+
},
|
|
2146
|
+
{
|
|
2147
|
+
"name": "team_revoke_nodes",
|
|
2148
|
+
"label": "Revoke Nodes",
|
|
2149
|
+
"description": "(Lead only) Take back node permissions previously granted to a worker in this channel. You can revoke bindings you granted, or bindings for nodes you hold yourself; other bindings are reported as not revoked. Use when a task closes or scope narrows.",
|
|
2150
|
+
"parameters": {
|
|
2151
|
+
"type": "object",
|
|
2152
|
+
"properties": {
|
|
2153
|
+
"agent_id": {
|
|
2154
|
+
"type": "string",
|
|
2155
|
+
"description": "Worker member instance id in this channel"
|
|
2156
|
+
},
|
|
2157
|
+
"node_ids": {
|
|
2158
|
+
"type": "array",
|
|
2159
|
+
"items": {
|
|
2160
|
+
"type": "string"
|
|
2161
|
+
},
|
|
2162
|
+
"description": "Node ids to revoke from this worker"
|
|
2163
|
+
}
|
|
2164
|
+
},
|
|
2165
|
+
"required": [
|
|
2166
|
+
"agent_id",
|
|
2167
|
+
"node_ids"
|
|
2168
|
+
],
|
|
2169
|
+
"additionalProperties": false
|
|
2170
|
+
}
|
|
2171
|
+
},
|
|
2172
|
+
{
|
|
2173
|
+
"name": "recipe_trial",
|
|
2174
|
+
"label": "Recipe Trial",
|
|
2175
|
+
"description": "多参数候选整批试验下发(不写配方版本)。权限模型:须已绑定该 recipe 且过二级认证与运行门;候选只能覆盖配方内参数节点;绑定 manual 时挂 HITL 等人工批准 —— hypothesis 必填,即本次试验的理由与判断依据,审批卡会向人类展示。整批一次落产线;复测判读后有进步用 recipe_update 固化,劣化用 recipe_rollback(dispatch=true) 统一回退。受同线试验节拍(默认 ≥5 分钟)与四层限界卡控。",
|
|
2176
|
+
"parameters": {
|
|
2177
|
+
"type": "object",
|
|
2178
|
+
"properties": {
|
|
2179
|
+
"recipe_id": {
|
|
2180
|
+
"type": "string",
|
|
2181
|
+
"description": "配方 id(必填;line_context 可看到当前配方)"
|
|
2182
|
+
},
|
|
2183
|
+
"params": {
|
|
2184
|
+
"type": "array",
|
|
2185
|
+
"description": "候选参数集(≥1条;一次把要改的参数都带上,整批下发防震荡)",
|
|
2186
|
+
"items": {
|
|
2187
|
+
"type": "object",
|
|
2188
|
+
"properties": {
|
|
2189
|
+
"node_id": {
|
|
2190
|
+
"type": "string",
|
|
2191
|
+
"description": "数控节点 id"
|
|
2192
|
+
},
|
|
2193
|
+
"value": {
|
|
2194
|
+
"type": "number",
|
|
2195
|
+
"description": "候选工程量值"
|
|
2196
|
+
}
|
|
2197
|
+
},
|
|
2198
|
+
"required": [
|
|
2199
|
+
"node_id",
|
|
2200
|
+
"value"
|
|
2201
|
+
]
|
|
2202
|
+
}
|
|
2203
|
+
},
|
|
2204
|
+
"hypothesis": {
|
|
2205
|
+
"type": "string",
|
|
2206
|
+
"description": "试验假设/依据(必填:知识库条目或数据分析结论)"
|
|
2207
|
+
},
|
|
2208
|
+
"emergency": {
|
|
2209
|
+
"type": "boolean",
|
|
2210
|
+
"description": "应急豁免配方下发间隔频控(不豁免审批;审批卡将标注【应急】并仍需人工批准;滥用会留审计痕迹)"
|
|
2211
|
+
}
|
|
2212
|
+
},
|
|
2213
|
+
"required": [
|
|
2214
|
+
"recipe_id",
|
|
2215
|
+
"params",
|
|
2216
|
+
"hypothesis"
|
|
2217
|
+
],
|
|
2218
|
+
"additionalProperties": false
|
|
2219
|
+
}
|
|
2220
|
+
},
|
|
2221
|
+
{
|
|
2222
|
+
"name": "recipe_apply",
|
|
2223
|
+
"label": "Recipe Apply",
|
|
2224
|
+
"description": "把配方当前已固化参数整批下发到运行中的产线(改配方 recipe_update 之后用)。权限模型:须已绑定该 recipe 且过二级认证与运行门(配方须在执行);绑定 manual 时挂 HITL 等人工批准——reason 必填,说明为什么要下发、依据是什么。批准后整批经治理联锁(量程/步长/限速)下发,逐参数回执;拒绝可附指导,按指导修订后重提。",
|
|
2225
|
+
"parameters": {
|
|
2226
|
+
"type": "object",
|
|
2227
|
+
"properties": {
|
|
2228
|
+
"recipe_id": {
|
|
2229
|
+
"type": "string",
|
|
2230
|
+
"description": "配方 id(必填)"
|
|
2231
|
+
},
|
|
2232
|
+
"reason": {
|
|
2233
|
+
"type": "string",
|
|
2234
|
+
"description": "下发理由(必填):说明为什么这样调 —— 数据依据/试验结论/GOAL 差距分析,产线专家在审批卡上要能看懂你的判断逻辑"
|
|
2235
|
+
},
|
|
2236
|
+
"emergency": {
|
|
2237
|
+
"type": "boolean",
|
|
2238
|
+
"description": "应急豁免配方下发间隔频控(不豁免审批;审批卡将标注【应急】并仍需人工批准;滥用会留审计痕迹)"
|
|
2239
|
+
}
|
|
2240
|
+
},
|
|
2241
|
+
"required": [
|
|
2242
|
+
"recipe_id",
|
|
2243
|
+
"reason"
|
|
2244
|
+
],
|
|
2245
|
+
"additionalProperties": false
|
|
2246
|
+
}
|
|
2247
|
+
},
|
|
2248
|
+
{
|
|
2249
|
+
"name": "exp_collect",
|
|
2250
|
+
"label": "Exp Collect",
|
|
2251
|
+
"description": "采集产线经验动作(经验工程师/产线医生共用):平台动作=平台有写入留痕的变更(锚账本增量,带来源归因/证据锚/人工裁决意见);推断动作=SET 变化且时间窗内平台无写入(疑似现场本地调整),只入待确认队列,人工确认后才进入经验总结。产出 episode 供总结入库;水位+哈希双剔重,重复调用幂等。纯只读,不写产线。",
|
|
2252
|
+
"parameters": {
|
|
2253
|
+
"type": "object",
|
|
2254
|
+
"properties": {
|
|
2255
|
+
"line_id": {
|
|
2256
|
+
"type": "string",
|
|
2257
|
+
"description": "限定产线 id(缺省=全部可读产线:节点授权线 ∪ 频道绑线)"
|
|
2258
|
+
}
|
|
2259
|
+
},
|
|
2260
|
+
"additionalProperties": false
|
|
2261
|
+
}
|
|
2262
|
+
},
|
|
2263
|
+
{
|
|
2264
|
+
"name": "aml_activity",
|
|
2265
|
+
"label": "AML Activity",
|
|
2266
|
+
"description": "查询产线 AML 优化循环是否活动(只读自查):频道投用模型(production)/在跑优化作业/近 30 分钟优化事件三路信号。活动期间整包下发(recipe_propose)会被硬闸拒绝并降级为建议报告,提交方案前必须先查。纯只读,不写产线。",
|
|
2267
|
+
"parameters": {
|
|
2268
|
+
"type": "object",
|
|
2269
|
+
"properties": {
|
|
2270
|
+
"line_id": {
|
|
2271
|
+
"type": "string",
|
|
2272
|
+
"description": "限定产线 id(缺省=全部可读产线:节点授权线 ∪ 频道绑线)"
|
|
2273
|
+
}
|
|
2274
|
+
},
|
|
2275
|
+
"additionalProperties": false
|
|
2276
|
+
}
|
|
2277
|
+
},
|
|
2278
|
+
{
|
|
2279
|
+
"name": "recipe_propose",
|
|
2280
|
+
"label": "Recipe Propose",
|
|
2281
|
+
"description": "提交整包优化方案审批(诊断工程师下发面,1~3 套候选方案一次审批):逐参数必须带 basis(为什么这样调)与 exp_ref(经验/证据引用);服务端先按配方真实限界预检(越界参数剔除,全部失效打回),再挂一张结构化审批单,等待人类在产线页选定方案批准。AML 优化活动期被硬闸拒绝(降级为建议);同一配方已有在飞审批单时软提示等待。批准后整批下发并回执逐参数结果+runId;拒绝/超时人工意见逐字回流。审批与绑定模式无关,永远人工裁决,绝不直写。",
|
|
2282
|
+
"parameters": {
|
|
2283
|
+
"type": "object",
|
|
2284
|
+
"properties": {
|
|
2285
|
+
"recipe_id": {
|
|
2286
|
+
"type": "string",
|
|
2287
|
+
"description": "配方 id(必填;line_context 可看到当前配方 id)"
|
|
2288
|
+
},
|
|
2289
|
+
"packages": {
|
|
2290
|
+
"type": "array",
|
|
2291
|
+
"description": "候选方案集(1~3 套;每套 { name, rationale?, params })",
|
|
2292
|
+
"items": {
|
|
2293
|
+
"type": "object",
|
|
2294
|
+
"properties": {
|
|
2295
|
+
"name": {
|
|
2296
|
+
"type": "string",
|
|
2297
|
+
"description": "方案名(审批卡展示,必填)"
|
|
2298
|
+
},
|
|
2299
|
+
"rationale": {
|
|
2300
|
+
"type": "string",
|
|
2301
|
+
"description": "方案总体思路与预期效果(建议提供)"
|
|
2302
|
+
},
|
|
2303
|
+
"params": {
|
|
2304
|
+
"type": "array",
|
|
2305
|
+
"description": "参数组(每条 { node_id, to, basis, exp_ref };from 缺省=服务端自取当前值)",
|
|
2306
|
+
"items": {
|
|
2307
|
+
"type": "object",
|
|
2308
|
+
"properties": {
|
|
2309
|
+
"node_id": {
|
|
2310
|
+
"type": "string",
|
|
2311
|
+
"description": "数控节点 id(须为配方内节点)"
|
|
2312
|
+
},
|
|
2313
|
+
"from": {
|
|
2314
|
+
"type": "number",
|
|
2315
|
+
"description": "当前值(可缺省;缺省时服务端自取节点现值)"
|
|
2316
|
+
},
|
|
2317
|
+
"to": {
|
|
2318
|
+
"type": "number",
|
|
2319
|
+
"description": "目标值(必填,数字)"
|
|
2320
|
+
},
|
|
2321
|
+
"unit": {
|
|
2322
|
+
"type": "string",
|
|
2323
|
+
"description": "单位(缺省取节点单位)"
|
|
2324
|
+
},
|
|
2325
|
+
"basis": {
|
|
2326
|
+
"type": "string",
|
|
2327
|
+
"description": "依据:为什么这样调(必填;缺失该参数拒绝入包)"
|
|
2328
|
+
},
|
|
2329
|
+
"exp_ref": {
|
|
2330
|
+
"type": "string",
|
|
2331
|
+
"description": "经验/证据引用(知识库条目标题或数据证据;必填,缺失拒绝入包)"
|
|
2332
|
+
}
|
|
2333
|
+
},
|
|
2334
|
+
"required": [
|
|
2335
|
+
"node_id",
|
|
2336
|
+
"to",
|
|
2337
|
+
"basis",
|
|
2338
|
+
"exp_ref"
|
|
2339
|
+
]
|
|
2340
|
+
}
|
|
2341
|
+
}
|
|
2342
|
+
},
|
|
2343
|
+
"required": [
|
|
2344
|
+
"name",
|
|
2345
|
+
"params"
|
|
2346
|
+
]
|
|
2347
|
+
}
|
|
2348
|
+
},
|
|
2349
|
+
"emergency": {
|
|
2350
|
+
"type": "boolean",
|
|
2351
|
+
"description": "应急豁免配方下发间隔频控(不豁免审批;审批卡将标注【应急】并仍需人工批准;滥用会留审计痕迹)"
|
|
2352
|
+
}
|
|
2353
|
+
},
|
|
2354
|
+
"required": [
|
|
2355
|
+
"recipe_id",
|
|
2356
|
+
"packages"
|
|
2357
|
+
],
|
|
2358
|
+
"additionalProperties": false
|
|
2359
|
+
}
|
|
2360
|
+
},
|
|
2361
|
+
{
|
|
2362
|
+
"name": "line_start",
|
|
2363
|
+
"label": "Line Start",
|
|
2364
|
+
"description": "产线开跑(仅频道 lead):以指定配方开线并下发参数,激活该产线的批次窗口与数采打标。恒为 HITL —— 必须人工批准才执行;运行门/配方归属校验照常。reason 必填(工单/排产/实验依据)。",
|
|
2365
|
+
"parameters": {
|
|
2366
|
+
"type": "object",
|
|
2367
|
+
"properties": {
|
|
2368
|
+
"recipe_id": {
|
|
2369
|
+
"type": "string",
|
|
2370
|
+
"description": "配方 id(必填,须属于本频道绑定的产线)"
|
|
2371
|
+
},
|
|
2372
|
+
"reason": {
|
|
2373
|
+
"type": "string",
|
|
2374
|
+
"description": "开线理由(必填):工单/排产/实验目的,人工审批要能看懂"
|
|
2375
|
+
}
|
|
2376
|
+
},
|
|
2377
|
+
"required": [
|
|
2378
|
+
"recipe_id",
|
|
2379
|
+
"reason"
|
|
2380
|
+
],
|
|
2381
|
+
"additionalProperties": false
|
|
2382
|
+
}
|
|
2383
|
+
},
|
|
2384
|
+
{
|
|
2385
|
+
"name": "line_stop",
|
|
2386
|
+
"label": "Line Stop",
|
|
2387
|
+
"description": "产线停线(仅频道 lead):关闭当前批次窗口(防跨批次污染)并停止该线数采。恒为 HITL —— 必须人工批准;reason 必填。停后数据保留可查。",
|
|
2388
|
+
"parameters": {
|
|
2389
|
+
"type": "object",
|
|
2390
|
+
"properties": {
|
|
2391
|
+
"reason": {
|
|
2392
|
+
"type": "string",
|
|
2393
|
+
"description": "停线理由(必填):完工/检修/异常"
|
|
2394
|
+
}
|
|
2395
|
+
},
|
|
2396
|
+
"required": [
|
|
2397
|
+
"reason"
|
|
2398
|
+
],
|
|
2399
|
+
"additionalProperties": false
|
|
2400
|
+
}
|
|
2401
|
+
},
|
|
2402
|
+
{
|
|
2403
|
+
"name": "line_status",
|
|
2404
|
+
"label": "Line Status",
|
|
2405
|
+
"description": "产线运行状态(只读):本频道绑定产线的活动批次/配方/打标样本数;未运行返回未运行态。",
|
|
2406
|
+
"parameters": {
|
|
2407
|
+
"type": "object",
|
|
2408
|
+
"properties": {
|
|
2409
|
+
"line_id": {
|
|
2410
|
+
"type": "string",
|
|
2411
|
+
"description": "产线 id(缺省=本频道绑定的产线)"
|
|
2412
|
+
}
|
|
2413
|
+
},
|
|
2414
|
+
"required": [],
|
|
2415
|
+
"additionalProperties": false
|
|
2416
|
+
}
|
|
2417
|
+
}
|
|
2418
|
+
]
|