@hotmeshio/long-tail 0.5.12 → 0.6.2
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/README.md +1 -0
- package/build/api/escalations/bulk.js +9 -1
- package/build/api/escalations/cancel.js +5 -7
- package/build/api/escalations/claim.js +18 -15
- package/build/api/escalations/create.d.ts +6 -0
- package/build/api/escalations/create.js +11 -8
- package/build/api/escalations/facets.d.ts +18 -0
- package/build/api/escalations/facets.js +115 -0
- package/build/api/escalations/helpers.d.ts +70 -1
- package/build/api/escalations/helpers.js +101 -7
- package/build/api/escalations/index.d.ts +3 -2
- package/build/api/escalations/index.js +7 -1
- package/build/api/escalations/list.d.ts +21 -2
- package/build/api/escalations/list.js +109 -10
- package/build/api/escalations/metadata.js +22 -27
- package/build/api/escalations/resolve.d.ts +19 -1
- package/build/api/escalations/resolve.js +111 -26
- package/build/api/escalations/single.js +8 -8
- package/build/api/users.d.ts +6 -0
- package/build/api/users.js +29 -1
- package/build/bin/ltc.js +40 -0
- package/build/lib/cli/commands/escalations.d.ts +36 -0
- package/build/lib/cli/commands/escalations.js +98 -0
- package/build/lib/db/schemas/001_schema.sql +10 -5
- package/build/lib/db/schemas/012_lt_tasks_workflow_id_unique.sql +20 -0
- package/build/lib/db/schemas/013_role_scope.sql +37 -0
- package/build/modules/version.d.ts +10 -5
- package/build/modules/version.js +27 -11
- package/build/routes/escalations/facets.d.ts +7 -0
- package/build/routes/escalations/facets.js +81 -0
- package/build/routes/escalations/index.js +3 -0
- package/build/routes/escalations/list.js +46 -0
- package/build/routes/escalations/resolve.js +22 -4
- package/build/routes/users.js +9 -5
- package/build/sdk/index.d.ts +33 -2
- package/build/sdk/index.js +7 -0
- package/build/services/escalation/crud.d.ts +56 -6
- package/build/services/escalation/crud.js +102 -31
- package/build/services/escalation/facet-sql.d.ts +18 -0
- package/build/services/escalation/facet-sql.js +118 -0
- package/build/services/escalation/facets.d.ts +45 -0
- package/build/services/escalation/facets.js +218 -0
- package/build/services/escalation/index.d.ts +1 -0
- package/build/services/escalation/index.js +8 -1
- package/build/services/escalation/queries.d.ts +45 -0
- package/build/services/escalation/queries.js +107 -6
- package/build/services/escalation/sql.d.ts +10 -4
- package/build/services/escalation/sql.js +36 -8
- package/build/services/interceptor/activities/escalation.d.ts +2 -0
- package/build/services/interceptor/activities/escalation.js +1 -1
- package/build/services/interceptor/lifecycle.js +4 -0
- package/build/services/mcp/server-tools.js +10 -4
- package/build/services/orchestrator/condition.js +6 -2
- package/build/services/role/index.js +2 -3
- package/build/services/role/sql.d.ts +8 -0
- package/build/services/role/sql.js +17 -1
- package/build/services/task/crud.js +22 -14
- package/build/services/task/process.js +3 -21
- package/build/services/task/sql.d.ts +24 -1
- package/build/services/task/sql.js +65 -1
- package/build/services/user/crud.d.ts +1 -0
- package/build/services/user/crud.js +29 -11
- package/build/services/user/index.d.ts +2 -1
- package/build/services/user/index.js +12 -1
- package/build/services/user/rbac.d.ts +18 -0
- package/build/services/user/rbac.js +27 -0
- package/build/services/user/roles.d.ts +7 -2
- package/build/services/user/roles.js +21 -5
- package/build/services/user/scope.d.ts +22 -0
- package/build/services/user/scope.js +50 -0
- package/build/services/user/seed-admin.js +34 -17
- package/build/services/user/sql.d.ts +18 -7
- package/build/services/user/sql.js +38 -13
- package/build/services/user/sso-provision.js +41 -24
- package/build/services/user/types.d.ts +9 -5
- package/build/system/mcp-servers/admin/escalations.js +65 -0
- package/build/system/mcp-servers/admin/schemas.d.ts +325 -0
- package/build/system/mcp-servers/admin/schemas.js +63 -2
- package/build/system/mcp-servers/admin/users.js +28 -2
- package/build/tsconfig.tsbuildinfo +1 -1
- package/build/types/envelope.d.ts +7 -0
- package/build/types/facets.d.ts +60 -0
- package/build/types/facets.js +10 -0
- package/build/types/index.d.ts +2 -1
- package/build/types/user.d.ts +11 -0
- package/dashboard/dist/assets/AdminDashboard-C5gfVEeL.js +2 -0
- package/dashboard/dist/assets/{AdminDashboard-LTiYLuzq.js.map → AdminDashboard-C5gfVEeL.js.map} +1 -1
- package/dashboard/dist/assets/{AgentConfigPage-nlOudfpZ.js → AgentConfigPage-CWEnuiGN.js} +6 -6
- package/dashboard/dist/assets/{AgentConfigPage-nlOudfpZ.js.map → AgentConfigPage-CWEnuiGN.js.map} +1 -1
- package/dashboard/dist/assets/{AgentDetailPage-BSUnDvGp.js → AgentDetailPage-B6IE27iK.js} +3 -3
- package/dashboard/dist/assets/AgentDetailPage-B6IE27iK.js.map +1 -0
- package/dashboard/dist/assets/AgentsPage-Blhh2RsK.js +2 -0
- package/dashboard/dist/assets/{AgentsPage-DpS0cCYe.js.map → AgentsPage-Blhh2RsK.js.map} +1 -1
- package/dashboard/dist/assets/AvailableEscalationsPage-ClwAle76.js +2 -0
- package/dashboard/dist/assets/AvailableEscalationsPage-ClwAle76.js.map +1 -0
- package/dashboard/dist/assets/{BotPicker-BhKmq7M7.js → BotPicker-DSozotGk.js} +2 -2
- package/dashboard/dist/assets/{BotPicker-BhKmq7M7.js.map → BotPicker-DSozotGk.js.map} +1 -1
- package/dashboard/dist/assets/CapabilitiesPage-CrS_DTA1.js +2 -0
- package/dashboard/dist/assets/CapabilitiesPage-CrS_DTA1.js.map +1 -0
- package/dashboard/dist/assets/{CollapsibleSection-D7SVwNVk.js → CollapsibleSection-1i6bOQ1L.js} +2 -2
- package/dashboard/dist/assets/{CollapsibleSection-D7SVwNVk.js.map → CollapsibleSection-1i6bOQ1L.js.map} +1 -1
- package/dashboard/dist/assets/CopyableId-blg-gZvT.js +2 -0
- package/dashboard/dist/assets/CopyableId-blg-gZvT.js.map +1 -0
- package/dashboard/dist/assets/{CredentialsPage-fat5Z2U9.js → CredentialsPage-BxJio06E.js} +2 -2
- package/dashboard/dist/assets/{CredentialsPage-fat5Z2U9.js.map → CredentialsPage-BxJio06E.js.map} +1 -1
- package/dashboard/dist/assets/{CronLabel-OOP4P2mJ.js → CronLabel-BAfIHHz4.js} +2 -2
- package/dashboard/dist/assets/{CronLabel-OOP4P2mJ.js.map → CronLabel-BAfIHHz4.js.map} +1 -1
- package/dashboard/dist/assets/{CustomDurationPicker-COacSAXO.js → CustomDurationPicker-BLF0NFJK.js} +2 -2
- package/dashboard/dist/assets/{CustomDurationPicker-COacSAXO.js.map → CustomDurationPicker-BLF0NFJK.js.map} +1 -1
- package/dashboard/dist/assets/{DataTable-D9yuBv0w.js → DataTable-ZWgVQg7F.js} +2 -2
- package/dashboard/dist/assets/DataTable-ZWgVQg7F.js.map +1 -0
- package/dashboard/dist/assets/{DropZone-Bfw2YLVS.js → DropZone-CEx_wk-g.js} +2 -2
- package/dashboard/dist/assets/{DropZone-Bfw2YLVS.js.map → DropZone-CEx_wk-g.js.map} +1 -1
- package/dashboard/dist/assets/{ElapsedCell-CkfCD-m7.js → ElapsedCell-nKGJvznH.js} +2 -2
- package/dashboard/dist/assets/{ElapsedCell-CkfCD-m7.js.map → ElapsedCell-nKGJvznH.js.map} +1 -1
- package/dashboard/dist/assets/{EscalationsOverview-BmI8jxlh.js → EscalationsOverview-bNNVA6R2.js} +2 -2
- package/dashboard/dist/assets/{EscalationsOverview-BmI8jxlh.js.map → EscalationsOverview-bNNVA6R2.js.map} +1 -1
- package/dashboard/dist/assets/{EventTable-CeKfFk3m.js → EventTable-BCuDdqlU.js} +2 -2
- package/dashboard/dist/assets/{EventTable-CeKfFk3m.js.map → EventTable-BCuDdqlU.js.map} +1 -1
- package/dashboard/dist/assets/FilterBar-BQ2JGg8U.js +2 -0
- package/dashboard/dist/assets/FilterBar-BQ2JGg8U.js.map +1 -0
- package/dashboard/dist/assets/GraphInvokePage-BPAvqHls.js +2 -0
- package/dashboard/dist/assets/GraphInvokePage-BPAvqHls.js.map +1 -0
- package/dashboard/dist/assets/HomePage-BZ1YTrjR.js +2 -0
- package/dashboard/dist/assets/HomePage-BZ1YTrjR.js.map +1 -0
- package/dashboard/dist/assets/{ListToolbar-BJaCzAXS.js → ListToolbar-DIJZfEgu.js} +2 -2
- package/dashboard/dist/assets/{ListToolbar-BJaCzAXS.js.map → ListToolbar-DIJZfEgu.js.map} +1 -1
- package/dashboard/dist/assets/{McpOverview-CvnDG5OB.js → McpOverview-DCfSCfPg.js} +2 -2
- package/dashboard/dist/assets/{McpOverview-CvnDG5OB.js.map → McpOverview-DCfSCfPg.js.map} +1 -1
- package/dashboard/dist/assets/{McpQueryDetailPage-DwmSIcIL.js → McpQueryDetailPage-mb7rmtNe.js} +2 -2
- package/dashboard/dist/assets/{McpQueryDetailPage-DwmSIcIL.js.map → McpQueryDetailPage-mb7rmtNe.js.map} +1 -1
- package/dashboard/dist/assets/{McpQueryPage-CU6FMEEk.js → McpQueryPage-D9b1T0I3.js} +2 -2
- package/dashboard/dist/assets/{McpQueryPage-CU6FMEEk.js.map → McpQueryPage-D9b1T0I3.js.map} +1 -1
- package/dashboard/dist/assets/{McpRunDetailPage-8a6lsehv.js → McpRunDetailPage-Bz2UyuNm.js} +2 -2
- package/dashboard/dist/assets/{McpRunDetailPage-8a6lsehv.js.map → McpRunDetailPage-Bz2UyuNm.js.map} +1 -1
- package/dashboard/dist/assets/McpRunsPage-Dw7w_ZO-.js +2 -0
- package/dashboard/dist/assets/McpRunsPage-Dw7w_ZO-.js.map +1 -0
- package/dashboard/dist/assets/{NamespacePill-D6btr6e8.js → NamespacePill-D27vqDXy.js} +2 -2
- package/dashboard/dist/assets/{NamespacePill-D6btr6e8.js.map → NamespacePill-D27vqDXy.js.map} +1 -1
- package/dashboard/dist/assets/OperatorDashboard-CTzSDW3N.js +2 -0
- package/dashboard/dist/assets/{OperatorDashboard-g9o7I925.js.map → OperatorDashboard-CTzSDW3N.js.map} +1 -1
- package/dashboard/dist/assets/PageHeader-B_1zTx2q.js +2 -0
- package/dashboard/dist/assets/PageHeader-B_1zTx2q.js.map +1 -0
- package/dashboard/dist/assets/{PageHeaderWithStats-DJQCZ0FR.js → PageHeaderWithStats-D-cPg7UD.js} +2 -2
- package/dashboard/dist/assets/{PageHeaderWithStats-DJQCZ0FR.js.map → PageHeaderWithStats-D-cPg7UD.js.map} +1 -1
- package/dashboard/dist/assets/PriorityBadge-B4ykBH7f.js +2 -0
- package/dashboard/dist/assets/PriorityBadge-B4ykBH7f.js.map +1 -0
- package/dashboard/dist/assets/{ProcessDetailPage-ByyWCs2A.js → ProcessDetailPage-olG2CS-h.js} +2 -2
- package/dashboard/dist/assets/{ProcessDetailPage-ByyWCs2A.js.map → ProcessDetailPage-olG2CS-h.js.map} +1 -1
- package/dashboard/dist/assets/{ProcessesListPage-BTsXds4l.js → ProcessesListPage-CUZSL06Y.js} +2 -2
- package/dashboard/dist/assets/{ProcessesListPage-BTsXds4l.js.map → ProcessesListPage-CUZSL06Y.js.map} +1 -1
- package/dashboard/dist/assets/RolePill-B-V-31lC.js +2 -0
- package/dashboard/dist/assets/RolePill-B-V-31lC.js.map +1 -0
- package/dashboard/dist/assets/RolesPage-DLnaW6iD.js +2 -0
- package/dashboard/dist/assets/RolesPage-DLnaW6iD.js.map +1 -0
- package/dashboard/dist/assets/RowActions-BA9L9djf.js +2 -0
- package/dashboard/dist/assets/RowActions-BA9L9djf.js.map +1 -0
- package/dashboard/dist/assets/{RunAsSelector-BzkZXpSX.js → RunAsSelector-BoLHF4fy.js} +2 -2
- package/dashboard/dist/assets/{RunAsSelector-BzkZXpSX.js.map → RunAsSelector-BoLHF4fy.js.map} +1 -1
- package/dashboard/dist/assets/StickyPagination-BEMY1L-H.js +2 -0
- package/dashboard/dist/assets/StickyPagination-BEMY1L-H.js.map +1 -0
- package/dashboard/dist/assets/{StreamMessageDetail-B6ch-6SY.js → StreamMessageDetail-CVRVWXcU.js} +2 -2
- package/dashboard/dist/assets/{StreamMessageDetail-B6ch-6SY.js.map → StreamMessageDetail-CVRVWXcU.js.map} +1 -1
- package/dashboard/dist/assets/{SwimlaneTimeline-CjvfUkls.js → SwimlaneTimeline-DDpU0-Jn.js} +2 -2
- package/dashboard/dist/assets/{SwimlaneTimeline-CjvfUkls.js.map → SwimlaneTimeline-DDpU0-Jn.js.map} +1 -1
- package/dashboard/dist/assets/{TagInput-CZSeyesi.js → TagInput-BHVfG307.js} +2 -2
- package/dashboard/dist/assets/{TagInput-CZSeyesi.js.map → TagInput-BHVfG307.js.map} +1 -1
- package/dashboard/dist/assets/{TaskDetailPage-BjHU6opi.js → TaskDetailPage-B_xQtJMg.js} +2 -2
- package/dashboard/dist/assets/{TaskDetailPage-BjHU6opi.js.map → TaskDetailPage-B_xQtJMg.js.map} +1 -1
- package/dashboard/dist/assets/{TaskQueuePill-CQrXrSxk.js → TaskQueuePill-CGlxXqWt.js} +2 -2
- package/dashboard/dist/assets/{TaskQueuePill-CQrXrSxk.js.map → TaskQueuePill-CGlxXqWt.js.map} +1 -1
- package/dashboard/dist/assets/{TasksListPage-Bem44zd0.js → TasksListPage-CsrdIOKk.js} +2 -2
- package/dashboard/dist/assets/{TasksListPage-Bem44zd0.js.map → TasksListPage-CsrdIOKk.js.map} +1 -1
- package/dashboard/dist/assets/TimeAgo-DmicaxjT.js +2 -0
- package/dashboard/dist/assets/{TimeAgo-CUIYqSt_.js.map → TimeAgo-DmicaxjT.js.map} +1 -1
- package/dashboard/dist/assets/{TimestampCell--tnreI1i.js → TimestampCell-DeK89eRV.js} +2 -2
- package/dashboard/dist/assets/{TimestampCell--tnreI1i.js.map → TimestampCell-DeK89eRV.js.map} +1 -1
- package/dashboard/dist/assets/{ToolPill-O09jsTQM.js → ToolPill-NV7PxSpA.js} +2 -2
- package/dashboard/dist/assets/{ToolPill-O09jsTQM.js.map → ToolPill-NV7PxSpA.js.map} +1 -1
- package/dashboard/dist/assets/{ToolTestPanel-OD99H7Pk.js → ToolTestPanel-D3s2n9-9.js} +2 -2
- package/dashboard/dist/assets/{ToolTestPanel-OD99H7Pk.js.map → ToolTestPanel-D3s2n9-9.js.map} +1 -1
- package/dashboard/dist/assets/{TopicDetailPage-rh_dsTJI.js → TopicDetailPage-qyv7UWT_.js} +3 -3
- package/dashboard/dist/assets/TopicDetailPage-qyv7UWT_.js.map +1 -0
- package/dashboard/dist/assets/TopicsPage-CEUfMoed.js +2 -0
- package/dashboard/dist/assets/TopicsPage-CEUfMoed.js.map +1 -0
- package/dashboard/dist/assets/{UserName-C__c8BN0.js → UserName-Bn_BxI8K.js} +2 -2
- package/dashboard/dist/assets/{UserName-C__c8BN0.js.map → UserName-Bn_BxI8K.js.map} +1 -1
- package/dashboard/dist/assets/{WorkflowExecutionPage-Bw6QdtUO.js → WorkflowExecutionPage-DAk2RqpB.js} +2 -2
- package/dashboard/dist/assets/{WorkflowExecutionPage-Bw6QdtUO.js.map → WorkflowExecutionPage-DAk2RqpB.js.map} +1 -1
- package/dashboard/dist/assets/{WorkflowPill-CS-IsR0U.js → WorkflowPill-DDR0B6DN.js} +2 -2
- package/dashboard/dist/assets/{WorkflowPill-CS-IsR0U.js.map → WorkflowPill-DDR0B6DN.js.map} +1 -1
- package/dashboard/dist/assets/WorkflowsDashboard-DfBgM80t.js +2 -0
- package/dashboard/dist/assets/WorkflowsDashboard-DfBgM80t.js.map +1 -0
- package/dashboard/dist/assets/{WorkflowsOverview-BRc0QbA7.js → WorkflowsOverview--Dkoo9Jq.js} +2 -2
- package/dashboard/dist/assets/{WorkflowsOverview-BRc0QbA7.js.map → WorkflowsOverview--Dkoo9Jq.js.map} +1 -1
- package/dashboard/dist/assets/{YamlWorkflowDetailPage-DdzspNQR.js → YamlWorkflowDetailPage-B6HYbfFj.js} +25 -25
- package/dashboard/dist/assets/{YamlWorkflowDetailPage-DdzspNQR.js.map → YamlWorkflowDetailPage-B6HYbfFj.js.map} +1 -1
- package/dashboard/dist/assets/{YamlWorkflowsPage-Djw5ZbgQ.js → YamlWorkflowsPage-CJE-PxC0.js} +2 -2
- package/dashboard/dist/assets/{YamlWorkflowsPage-Djw5ZbgQ.js.map → YamlWorkflowsPage-CJE-PxC0.js.map} +1 -1
- package/dashboard/dist/assets/{agents-xstNkF6c.js → agents-DUciUZpt.js} +2 -2
- package/dashboard/dist/assets/{agents-xstNkF6c.js.map → agents-DUciUZpt.js.map} +1 -1
- package/dashboard/dist/assets/{bots-BztAI0s_.js → bots-BnyqCfuC.js} +2 -2
- package/dashboard/dist/assets/{bots-BztAI0s_.js.map → bots-BnyqCfuC.js.map} +1 -1
- package/dashboard/dist/assets/{capabilities-CEDwtxNL.js → capabilities-CkTWWT0q.js} +2 -2
- package/dashboard/dist/assets/{capabilities-CEDwtxNL.js.map → capabilities-CkTWWT0q.js.map} +1 -1
- package/dashboard/dist/assets/{controlplane-BlGEsRKe.js → controlplane-D9HaFZsC.js} +2 -2
- package/dashboard/dist/assets/{controlplane-BlGEsRKe.js.map → controlplane-D9HaFZsC.js.map} +1 -1
- package/dashboard/dist/assets/{escalation-iI4QKlP-.js → escalation-De9JnTKI.js} +2 -2
- package/dashboard/dist/assets/{escalation-iI4QKlP-.js.map → escalation-De9JnTKI.js.map} +1 -1
- package/dashboard/dist/assets/escalation-columns-Df7Pluzg.js +2 -0
- package/dashboard/dist/assets/escalation-columns-Df7Pluzg.js.map +1 -0
- package/dashboard/dist/assets/index-7hqtQI43.js +2 -0
- package/dashboard/dist/assets/index-7hqtQI43.js.map +1 -0
- package/dashboard/dist/assets/{index-CAqEy2Db.js → index-B07xLlyz.js} +2 -2
- package/dashboard/dist/assets/{index-CAqEy2Db.js.map → index-B07xLlyz.js.map} +1 -1
- package/dashboard/dist/assets/{index-D1xVY4JR.js → index-B1kc6itM.js} +24 -24
- package/dashboard/dist/assets/index-B1kc6itM.js.map +1 -0
- package/dashboard/dist/assets/index-BAhkWcOq.js +9 -0
- package/dashboard/dist/assets/index-BAhkWcOq.js.map +1 -0
- package/dashboard/dist/assets/{index-Dsi5o7dx.js → index-BsIaUbKD.js} +2 -2
- package/dashboard/dist/assets/{index-Dsi5o7dx.js.map → index-BsIaUbKD.js.map} +1 -1
- package/dashboard/dist/assets/index-BxdiKgnH.js +6 -0
- package/dashboard/dist/assets/index-BxdiKgnH.js.map +1 -0
- package/dashboard/dist/assets/{index-B7VC0vjf.js → index-BzMsh6Ui.js} +2 -2
- package/dashboard/dist/assets/{index-B7VC0vjf.js.map → index-BzMsh6Ui.js.map} +1 -1
- package/dashboard/dist/assets/index-CN0efCE9.js +6 -0
- package/dashboard/dist/assets/index-CN0efCE9.js.map +1 -0
- package/dashboard/dist/assets/{index-B5qsp8lb.js → index-CgD9fA9P.js} +2 -2
- package/dashboard/dist/assets/{index-B5qsp8lb.js.map → index-CgD9fA9P.js.map} +1 -1
- package/dashboard/dist/assets/{index-CUfgt3mV.js → index-Cqjf-yVP.js} +2 -2
- package/dashboard/dist/assets/{index-CUfgt3mV.js.map → index-Cqjf-yVP.js.map} +1 -1
- package/dashboard/dist/assets/{index-DjJ6VCuc.js → index-DNugmBs7.js} +2 -2
- package/dashboard/dist/assets/{index-DjJ6VCuc.js.map → index-DNugmBs7.js.map} +1 -1
- package/dashboard/dist/assets/{index-BUmnJ4eT.js → index-DjxTV3cn.js} +2 -2
- package/dashboard/dist/assets/{index-BUmnJ4eT.js.map → index-DjxTV3cn.js.map} +1 -1
- package/dashboard/dist/assets/index-DpAS4-DA.js +2 -0
- package/dashboard/dist/assets/index-DpAS4-DA.js.map +1 -0
- package/dashboard/dist/assets/index-nO0cim3_.css +1 -0
- package/dashboard/dist/assets/{knowledge-BKg0cr39.js → knowledge-D4SvdNv5.js} +2 -2
- package/dashboard/dist/assets/{knowledge-BKg0cr39.js.map → knowledge-D4SvdNv5.js.map} +1 -1
- package/dashboard/dist/assets/{mcp-CVdHpKlz.js → mcp-DVxt4T9J.js} +2 -2
- package/dashboard/dist/assets/{mcp-CVdHpKlz.js.map → mcp-DVxt4T9J.js.map} +1 -1
- package/dashboard/dist/assets/{mcp-query-CYxZcbwQ.js → mcp-query-CLP9EnnU.js} +2 -2
- package/dashboard/dist/assets/{mcp-query-CYxZcbwQ.js.map → mcp-query-CLP9EnnU.js.map} +1 -1
- package/dashboard/dist/assets/{pipelines-BOEv7P6O.js → pipelines-C_x0LTBN.js} +2 -2
- package/dashboard/dist/assets/{pipelines-BOEv7P6O.js.map → pipelines-C_x0LTBN.js.map} +1 -1
- package/dashboard/dist/assets/{roles-c5cV2QYQ.js → roles-QaGFZQ58.js} +2 -2
- package/dashboard/dist/assets/{roles-c5cV2QYQ.js.map → roles-QaGFZQ58.js.map} +1 -1
- package/dashboard/dist/assets/{tasks-JV3BjeEF.js → tasks-1eTuP02d.js} +2 -2
- package/dashboard/dist/assets/{tasks-JV3BjeEF.js.map → tasks-1eTuP02d.js.map} +1 -1
- package/dashboard/dist/assets/{topics-BDaPnhnQ.js → topics-B3p8K0PW.js} +2 -2
- package/dashboard/dist/assets/{topics-BDaPnhnQ.js.map → topics-B3p8K0PW.js.map} +1 -1
- package/dashboard/dist/assets/{useEventHooks-a7Dnh8G4.js → useEventHooks-BNZky4xM.js} +2 -2
- package/dashboard/dist/assets/{useEventHooks-a7Dnh8G4.js.map → useEventHooks-BNZky4xM.js.map} +1 -1
- package/dashboard/dist/assets/{useNamespace-BSwEV0e9.js → useNamespace-Dx81_JM0.js} +2 -2
- package/dashboard/dist/assets/{useNamespace-BSwEV0e9.js.map → useNamespace-Dx81_JM0.js.map} +1 -1
- package/dashboard/dist/assets/{useYamlActivityEvents-BuqvL-cn.js → useYamlActivityEvents-D5T3TbE7.js} +2 -2
- package/dashboard/dist/assets/{useYamlActivityEvents-BuqvL-cn.js.map → useYamlActivityEvents-D5T3TbE7.js.map} +1 -1
- package/dashboard/dist/assets/users-BEMysNdR.js +2 -0
- package/dashboard/dist/assets/users-BEMysNdR.js.map +1 -0
- package/dashboard/dist/assets/{vendor-icons-D5ycKPA2.js → vendor-icons--Ivmp-RX.js} +132 -112
- package/dashboard/dist/assets/vendor-icons--Ivmp-RX.js.map +1 -0
- package/dashboard/dist/assets/{workflows-DF-9Voyi.js → workflows-C4rjvQbI.js} +2 -2
- package/dashboard/dist/assets/{workflows-DF-9Voyi.js.map → workflows-C4rjvQbI.js.map} +1 -1
- package/dashboard/dist/assets/{yaml-workflows-2roKaSSK.js → yaml-workflows-4rJ5v5rJ.js} +2 -2
- package/dashboard/dist/assets/{yaml-workflows-2roKaSSK.js.map → yaml-workflows-4rJ5v5rJ.js.map} +1 -1
- package/dashboard/dist/index.html +3 -3
- package/docs/api/http/escalations.md +131 -10
- package/docs/api/http/roles.md +44 -9
- package/docs/api/http/users.md +15 -6
- package/docs/api/mcp/admin.md +8 -2
- package/docs/api/mcp/human-queue.md +34 -2
- package/docs/api/sdk/escalations.md +155 -2
- package/docs/api/sdk/roles.md +11 -0
- package/docs/api/sdk/users.md +26 -1
- package/docs/auth.md +1 -1
- package/docs/dashboard.md +5 -4
- package/docs/data.md +9 -2
- package/docs/faceted-routing.md +221 -0
- package/docs/hitl-guide.md +50 -0
- package/docs/iam.md +31 -0
- package/docs/mcp.md +8 -0
- package/package.json +2 -2
- package/dashboard/dist/assets/AdminDashboard-LTiYLuzq.js +0 -2
- package/dashboard/dist/assets/AgentDetailPage-BSUnDvGp.js.map +0 -1
- package/dashboard/dist/assets/AgentsPage-DpS0cCYe.js +0 -2
- package/dashboard/dist/assets/AvailableEscalationsPage-BEylRqjP.js +0 -2
- package/dashboard/dist/assets/AvailableEscalationsPage-BEylRqjP.js.map +0 -1
- package/dashboard/dist/assets/CapabilitiesPage-DLIleX2L.js +0 -2
- package/dashboard/dist/assets/CapabilitiesPage-DLIleX2L.js.map +0 -1
- package/dashboard/dist/assets/CopyableId-DaT0ZRHg.js +0 -2
- package/dashboard/dist/assets/CopyableId-DaT0ZRHg.js.map +0 -1
- package/dashboard/dist/assets/DataTable-D9yuBv0w.js.map +0 -1
- package/dashboard/dist/assets/FilterBar-Ck4K4rzu.js +0 -2
- package/dashboard/dist/assets/FilterBar-Ck4K4rzu.js.map +0 -1
- package/dashboard/dist/assets/GraphInvokePage-BZBPBCSq.js +0 -2
- package/dashboard/dist/assets/GraphInvokePage-BZBPBCSq.js.map +0 -1
- package/dashboard/dist/assets/HomePage-dM7U2tl6.js +0 -2
- package/dashboard/dist/assets/HomePage-dM7U2tl6.js.map +0 -1
- package/dashboard/dist/assets/McpRunsPage-CPMYWgm_.js +0 -2
- package/dashboard/dist/assets/McpRunsPage-CPMYWgm_.js.map +0 -1
- package/dashboard/dist/assets/OperatorDashboard-g9o7I925.js +0 -2
- package/dashboard/dist/assets/PageHeader-Dk2Pe44Q.js +0 -2
- package/dashboard/dist/assets/PageHeader-Dk2Pe44Q.js.map +0 -1
- package/dashboard/dist/assets/PriorityBadge-DfQY9St9.js +0 -2
- package/dashboard/dist/assets/PriorityBadge-DfQY9St9.js.map +0 -1
- package/dashboard/dist/assets/RolePill-Du-aNnjR.js +0 -2
- package/dashboard/dist/assets/RolePill-Du-aNnjR.js.map +0 -1
- package/dashboard/dist/assets/RolesPage-B2Kdf-L9.js +0 -2
- package/dashboard/dist/assets/RolesPage-B2Kdf-L9.js.map +0 -1
- package/dashboard/dist/assets/RowActions-Dg-Fsm5O.js +0 -2
- package/dashboard/dist/assets/RowActions-Dg-Fsm5O.js.map +0 -1
- package/dashboard/dist/assets/StickyPagination-BWhFSr2d.js +0 -2
- package/dashboard/dist/assets/StickyPagination-BWhFSr2d.js.map +0 -1
- package/dashboard/dist/assets/TimeAgo-CUIYqSt_.js +0 -2
- package/dashboard/dist/assets/TopicDetailPage-rh_dsTJI.js.map +0 -1
- package/dashboard/dist/assets/TopicsPage-CD_40_v-.js +0 -2
- package/dashboard/dist/assets/TopicsPage-CD_40_v-.js.map +0 -1
- package/dashboard/dist/assets/WorkflowsDashboard-BgI-iOP6.js +0 -2
- package/dashboard/dist/assets/WorkflowsDashboard-BgI-iOP6.js.map +0 -1
- package/dashboard/dist/assets/escalation-columns-nVYVt7Gl.js +0 -2
- package/dashboard/dist/assets/escalation-columns-nVYVt7Gl.js.map +0 -1
- package/dashboard/dist/assets/index-CMviPjXQ.js +0 -9
- package/dashboard/dist/assets/index-CMviPjXQ.js.map +0 -1
- package/dashboard/dist/assets/index-CP0JEQhZ.js +0 -6
- package/dashboard/dist/assets/index-CP0JEQhZ.js.map +0 -1
- package/dashboard/dist/assets/index-ClvYSNZd.css +0 -1
- package/dashboard/dist/assets/index-D1xVY4JR.js.map +0 -1
- package/dashboard/dist/assets/index-DPLy-jwO.js +0 -2
- package/dashboard/dist/assets/index-DPLy-jwO.js.map +0 -1
- package/dashboard/dist/assets/index-DzVYjoex.js +0 -6
- package/dashboard/dist/assets/index-DzVYjoex.js.map +0 -1
- package/dashboard/dist/assets/index-FuhiJuHL.js +0 -2
- package/dashboard/dist/assets/index-FuhiJuHL.js.map +0 -1
- package/dashboard/dist/assets/users-Pn85K_3C.js +0 -2
- package/dashboard/dist/assets/users-Pn85K_3C.js.map +0 -1
- package/dashboard/dist/assets/vendor-icons-D5ycKPA2.js.map +0 -1
|
@@ -51,30 +51,91 @@ export declare const findEscalationsSchema: z.ZodObject<{
|
|
|
51
51
|
order: z.ZodOptional<z.ZodEnum<["asc", "desc"]>>;
|
|
52
52
|
limit: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
|
|
53
53
|
offset: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
|
|
54
|
+
roles: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
55
|
+
facets: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
|
|
56
|
+
block: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodAny>, "many">>;
|
|
57
|
+
range: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
58
|
+
facet: z.ZodString;
|
|
59
|
+
op: z.ZodEnum<["<", "<=", ">", ">=", "="]>;
|
|
60
|
+
value: z.ZodNumber;
|
|
61
|
+
}, "strip", z.ZodTypeAny, {
|
|
62
|
+
value: number;
|
|
63
|
+
facet: string;
|
|
64
|
+
op: "<" | "<=" | ">" | ">=" | "=";
|
|
65
|
+
}, {
|
|
66
|
+
value: number;
|
|
67
|
+
facet: string;
|
|
68
|
+
op: "<" | "<=" | ">" | ">=" | "=";
|
|
69
|
+
}>, "many">>;
|
|
70
|
+
exists: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
71
|
+
available: z.ZodOptional<z.ZodBoolean>;
|
|
72
|
+
orderBy: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
73
|
+
field: z.ZodString;
|
|
74
|
+
direction: z.ZodOptional<z.ZodEnum<["asc", "desc"]>>;
|
|
75
|
+
numeric: z.ZodOptional<z.ZodBoolean>;
|
|
76
|
+
}, "strip", z.ZodTypeAny, {
|
|
77
|
+
field: string;
|
|
78
|
+
direction?: "asc" | "desc" | undefined;
|
|
79
|
+
numeric?: boolean | undefined;
|
|
80
|
+
}, {
|
|
81
|
+
field: string;
|
|
82
|
+
direction?: "asc" | "desc" | undefined;
|
|
83
|
+
numeric?: boolean | undefined;
|
|
84
|
+
}>, "many">>;
|
|
54
85
|
}, "strip", z.ZodTypeAny, {
|
|
55
86
|
limit: number;
|
|
56
87
|
offset: number;
|
|
57
88
|
role?: string | undefined;
|
|
58
89
|
status?: "pending" | "cancelled" | "resolved" | undefined;
|
|
90
|
+
roles?: string[] | undefined;
|
|
59
91
|
type?: string | undefined;
|
|
60
92
|
search?: string | undefined;
|
|
61
93
|
priority?: number | undefined;
|
|
94
|
+
orderBy?: {
|
|
95
|
+
field: string;
|
|
96
|
+
direction?: "asc" | "desc" | undefined;
|
|
97
|
+
numeric?: boolean | undefined;
|
|
98
|
+
}[] | undefined;
|
|
62
99
|
assigned_to?: string | undefined;
|
|
63
100
|
subtype?: string | undefined;
|
|
101
|
+
available?: boolean | undefined;
|
|
64
102
|
sort_by?: "created_at" | "updated_at" | "priority" | undefined;
|
|
65
103
|
order?: "asc" | "desc" | undefined;
|
|
104
|
+
facets?: Record<string, any> | undefined;
|
|
105
|
+
block?: Record<string, any>[] | undefined;
|
|
106
|
+
range?: {
|
|
107
|
+
value: number;
|
|
108
|
+
facet: string;
|
|
109
|
+
op: "<" | "<=" | ">" | ">=" | "=";
|
|
110
|
+
}[] | undefined;
|
|
111
|
+
exists?: string[] | undefined;
|
|
66
112
|
}, {
|
|
67
113
|
role?: string | undefined;
|
|
68
114
|
status?: "pending" | "cancelled" | "resolved" | undefined;
|
|
115
|
+
roles?: string[] | undefined;
|
|
69
116
|
type?: string | undefined;
|
|
70
117
|
search?: string | undefined;
|
|
71
118
|
limit?: number | undefined;
|
|
72
119
|
offset?: number | undefined;
|
|
73
120
|
priority?: number | undefined;
|
|
121
|
+
orderBy?: {
|
|
122
|
+
field: string;
|
|
123
|
+
direction?: "asc" | "desc" | undefined;
|
|
124
|
+
numeric?: boolean | undefined;
|
|
125
|
+
}[] | undefined;
|
|
74
126
|
assigned_to?: string | undefined;
|
|
75
127
|
subtype?: string | undefined;
|
|
128
|
+
available?: boolean | undefined;
|
|
76
129
|
sort_by?: "created_at" | "updated_at" | "priority" | undefined;
|
|
77
130
|
order?: "asc" | "desc" | undefined;
|
|
131
|
+
facets?: Record<string, any> | undefined;
|
|
132
|
+
block?: Record<string, any>[] | undefined;
|
|
133
|
+
range?: {
|
|
134
|
+
value: number;
|
|
135
|
+
facet: string;
|
|
136
|
+
op: "<" | "<=" | ">" | ">=" | "=";
|
|
137
|
+
}[] | undefined;
|
|
138
|
+
exists?: string[] | undefined;
|
|
78
139
|
}>;
|
|
79
140
|
export declare const getEscalationSchema: z.ZodObject<{
|
|
80
141
|
id: z.ZodString;
|
|
@@ -406,19 +467,27 @@ export declare const createUserSchema: z.ZodObject<{
|
|
|
406
467
|
display_name: z.ZodOptional<z.ZodString>;
|
|
407
468
|
email: z.ZodOptional<z.ZodString>;
|
|
408
469
|
roles: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
470
|
+
read_scope: z.ZodOptional<z.ZodEnum<["self", "all"]>>;
|
|
471
|
+
write_scope: z.ZodOptional<z.ZodEnum<["none", "self", "all"]>>;
|
|
409
472
|
role: z.ZodString;
|
|
410
473
|
type: z.ZodEnum<["superadmin", "admin", "member"]>;
|
|
411
474
|
}, "strip", z.ZodTypeAny, {
|
|
412
475
|
role: string;
|
|
413
476
|
type: "admin" | "member" | "superadmin";
|
|
477
|
+
read_scope?: "self" | "all" | undefined;
|
|
478
|
+
write_scope?: "self" | "all" | "none" | undefined;
|
|
414
479
|
}, {
|
|
415
480
|
role: string;
|
|
416
481
|
type: "admin" | "member" | "superadmin";
|
|
482
|
+
read_scope?: "self" | "all" | undefined;
|
|
483
|
+
write_scope?: "self" | "all" | "none" | undefined;
|
|
417
484
|
}>, "many">>>;
|
|
418
485
|
}, "strip", z.ZodTypeAny, {
|
|
419
486
|
roles: {
|
|
420
487
|
role: string;
|
|
421
488
|
type: "admin" | "member" | "superadmin";
|
|
489
|
+
read_scope?: "self" | "all" | undefined;
|
|
490
|
+
write_scope?: "self" | "all" | "none" | undefined;
|
|
422
491
|
}[];
|
|
423
492
|
external_id: string;
|
|
424
493
|
email?: string | undefined;
|
|
@@ -428,11 +497,15 @@ export declare const createUserSchema: z.ZodObject<{
|
|
|
428
497
|
roles?: {
|
|
429
498
|
role: string;
|
|
430
499
|
type: "admin" | "member" | "superadmin";
|
|
500
|
+
read_scope?: "self" | "all" | undefined;
|
|
501
|
+
write_scope?: "self" | "all" | "none" | undefined;
|
|
431
502
|
}[] | undefined;
|
|
432
503
|
email?: string | undefined;
|
|
433
504
|
display_name?: string | undefined;
|
|
434
505
|
}>;
|
|
435
506
|
export declare const addUserRoleSchema: z.ZodObject<{
|
|
507
|
+
read_scope: z.ZodOptional<z.ZodEnum<["self", "all"]>>;
|
|
508
|
+
write_scope: z.ZodOptional<z.ZodEnum<["none", "self", "all"]>>;
|
|
436
509
|
user_id: z.ZodString;
|
|
437
510
|
role: z.ZodString;
|
|
438
511
|
type: z.ZodEnum<["superadmin", "admin", "member"]>;
|
|
@@ -440,10 +513,14 @@ export declare const addUserRoleSchema: z.ZodObject<{
|
|
|
440
513
|
role: string;
|
|
441
514
|
type: "admin" | "member" | "superadmin";
|
|
442
515
|
user_id: string;
|
|
516
|
+
read_scope?: "self" | "all" | undefined;
|
|
517
|
+
write_scope?: "self" | "all" | "none" | undefined;
|
|
443
518
|
}, {
|
|
444
519
|
role: string;
|
|
445
520
|
type: "admin" | "member" | "superadmin";
|
|
446
521
|
user_id: string;
|
|
522
|
+
read_scope?: "self" | "all" | undefined;
|
|
523
|
+
write_scope?: "self" | "all" | "none" | undefined;
|
|
447
524
|
}>;
|
|
448
525
|
export declare const removeUserRoleSchema: z.ZodObject<{
|
|
449
526
|
user_id: z.ZodString;
|
|
@@ -1154,3 +1231,251 @@ export declare const findOrphanedSignalsSchema: z.ZodObject<{
|
|
|
1154
1231
|
limit?: number | undefined;
|
|
1155
1232
|
within_hours?: number | undefined;
|
|
1156
1233
|
}>;
|
|
1234
|
+
/** A faceted query over a pond — filter/sort by columns and metadata facets. */
|
|
1235
|
+
export declare const facetQuerySchema: z.ZodObject<{
|
|
1236
|
+
role: z.ZodString;
|
|
1237
|
+
status: z.ZodOptional<z.ZodString>;
|
|
1238
|
+
available: z.ZodOptional<z.ZodBoolean>;
|
|
1239
|
+
facets: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
|
|
1240
|
+
orderBy: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
1241
|
+
column: z.ZodString;
|
|
1242
|
+
direction: z.ZodEnum<["asc", "desc"]>;
|
|
1243
|
+
}, "strip", z.ZodTypeAny, {
|
|
1244
|
+
column: string;
|
|
1245
|
+
direction: "asc" | "desc";
|
|
1246
|
+
}, {
|
|
1247
|
+
column: string;
|
|
1248
|
+
direction: "asc" | "desc";
|
|
1249
|
+
}>, "many">>;
|
|
1250
|
+
limit: z.ZodOptional<z.ZodNumber>;
|
|
1251
|
+
offset: z.ZodOptional<z.ZodNumber>;
|
|
1252
|
+
}, "strip", z.ZodTypeAny, {
|
|
1253
|
+
role: string;
|
|
1254
|
+
status?: string | undefined;
|
|
1255
|
+
limit?: number | undefined;
|
|
1256
|
+
offset?: number | undefined;
|
|
1257
|
+
orderBy?: {
|
|
1258
|
+
column: string;
|
|
1259
|
+
direction: "asc" | "desc";
|
|
1260
|
+
}[] | undefined;
|
|
1261
|
+
available?: boolean | undefined;
|
|
1262
|
+
facets?: Record<string, any> | undefined;
|
|
1263
|
+
}, {
|
|
1264
|
+
role: string;
|
|
1265
|
+
status?: string | undefined;
|
|
1266
|
+
limit?: number | undefined;
|
|
1267
|
+
offset?: number | undefined;
|
|
1268
|
+
orderBy?: {
|
|
1269
|
+
column: string;
|
|
1270
|
+
direction: "asc" | "desc";
|
|
1271
|
+
}[] | undefined;
|
|
1272
|
+
available?: boolean | undefined;
|
|
1273
|
+
facets?: Record<string, any> | undefined;
|
|
1274
|
+
}>;
|
|
1275
|
+
export declare const resolveByIdsSchema: z.ZodObject<{
|
|
1276
|
+
ids: z.ZodArray<z.ZodString, "many">;
|
|
1277
|
+
resolverPayload: z.ZodRecord<z.ZodString, z.ZodAny>;
|
|
1278
|
+
metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
|
|
1279
|
+
}, "strip", z.ZodTypeAny, {
|
|
1280
|
+
ids: string[];
|
|
1281
|
+
resolverPayload: Record<string, any>;
|
|
1282
|
+
metadata?: Record<string, any> | undefined;
|
|
1283
|
+
}, {
|
|
1284
|
+
ids: string[];
|
|
1285
|
+
resolverPayload: Record<string, any>;
|
|
1286
|
+
metadata?: Record<string, any> | undefined;
|
|
1287
|
+
}>;
|
|
1288
|
+
export declare const searchByFacetsSchema: z.ZodObject<{
|
|
1289
|
+
role: z.ZodString;
|
|
1290
|
+
status: z.ZodOptional<z.ZodString>;
|
|
1291
|
+
available: z.ZodOptional<z.ZodBoolean>;
|
|
1292
|
+
facets: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
|
|
1293
|
+
orderBy: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
1294
|
+
column: z.ZodString;
|
|
1295
|
+
direction: z.ZodEnum<["asc", "desc"]>;
|
|
1296
|
+
}, "strip", z.ZodTypeAny, {
|
|
1297
|
+
column: string;
|
|
1298
|
+
direction: "asc" | "desc";
|
|
1299
|
+
}, {
|
|
1300
|
+
column: string;
|
|
1301
|
+
direction: "asc" | "desc";
|
|
1302
|
+
}>, "many">>;
|
|
1303
|
+
limit: z.ZodOptional<z.ZodNumber>;
|
|
1304
|
+
offset: z.ZodOptional<z.ZodNumber>;
|
|
1305
|
+
}, "strip", z.ZodTypeAny, {
|
|
1306
|
+
role: string;
|
|
1307
|
+
status?: string | undefined;
|
|
1308
|
+
limit?: number | undefined;
|
|
1309
|
+
offset?: number | undefined;
|
|
1310
|
+
orderBy?: {
|
|
1311
|
+
column: string;
|
|
1312
|
+
direction: "asc" | "desc";
|
|
1313
|
+
}[] | undefined;
|
|
1314
|
+
available?: boolean | undefined;
|
|
1315
|
+
facets?: Record<string, any> | undefined;
|
|
1316
|
+
}, {
|
|
1317
|
+
role: string;
|
|
1318
|
+
status?: string | undefined;
|
|
1319
|
+
limit?: number | undefined;
|
|
1320
|
+
offset?: number | undefined;
|
|
1321
|
+
orderBy?: {
|
|
1322
|
+
column: string;
|
|
1323
|
+
direction: "asc" | "desc";
|
|
1324
|
+
}[] | undefined;
|
|
1325
|
+
available?: boolean | undefined;
|
|
1326
|
+
facets?: Record<string, any> | undefined;
|
|
1327
|
+
}>;
|
|
1328
|
+
export declare const claimGroupsSchema: z.ZodObject<{
|
|
1329
|
+
query: z.ZodObject<{
|
|
1330
|
+
role: z.ZodString;
|
|
1331
|
+
status: z.ZodOptional<z.ZodString>;
|
|
1332
|
+
available: z.ZodOptional<z.ZodBoolean>;
|
|
1333
|
+
facets: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
|
|
1334
|
+
orderBy: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
1335
|
+
column: z.ZodString;
|
|
1336
|
+
direction: z.ZodEnum<["asc", "desc"]>;
|
|
1337
|
+
}, "strip", z.ZodTypeAny, {
|
|
1338
|
+
column: string;
|
|
1339
|
+
direction: "asc" | "desc";
|
|
1340
|
+
}, {
|
|
1341
|
+
column: string;
|
|
1342
|
+
direction: "asc" | "desc";
|
|
1343
|
+
}>, "many">>;
|
|
1344
|
+
limit: z.ZodOptional<z.ZodNumber>;
|
|
1345
|
+
offset: z.ZodOptional<z.ZodNumber>;
|
|
1346
|
+
}, "strip", z.ZodTypeAny, {
|
|
1347
|
+
role: string;
|
|
1348
|
+
status?: string | undefined;
|
|
1349
|
+
limit?: number | undefined;
|
|
1350
|
+
offset?: number | undefined;
|
|
1351
|
+
orderBy?: {
|
|
1352
|
+
column: string;
|
|
1353
|
+
direction: "asc" | "desc";
|
|
1354
|
+
}[] | undefined;
|
|
1355
|
+
available?: boolean | undefined;
|
|
1356
|
+
facets?: Record<string, any> | undefined;
|
|
1357
|
+
}, {
|
|
1358
|
+
role: string;
|
|
1359
|
+
status?: string | undefined;
|
|
1360
|
+
limit?: number | undefined;
|
|
1361
|
+
offset?: number | undefined;
|
|
1362
|
+
orderBy?: {
|
|
1363
|
+
column: string;
|
|
1364
|
+
direction: "asc" | "desc";
|
|
1365
|
+
}[] | undefined;
|
|
1366
|
+
available?: boolean | undefined;
|
|
1367
|
+
facets?: Record<string, any> | undefined;
|
|
1368
|
+
}>;
|
|
1369
|
+
limit: z.ZodOptional<z.ZodNumber>;
|
|
1370
|
+
durationMinutes: z.ZodOptional<z.ZodNumber>;
|
|
1371
|
+
sizeFacet: z.ZodOptional<z.ZodString>;
|
|
1372
|
+
}, "strip", z.ZodTypeAny, {
|
|
1373
|
+
query: {
|
|
1374
|
+
role: string;
|
|
1375
|
+
status?: string | undefined;
|
|
1376
|
+
limit?: number | undefined;
|
|
1377
|
+
offset?: number | undefined;
|
|
1378
|
+
orderBy?: {
|
|
1379
|
+
column: string;
|
|
1380
|
+
direction: "asc" | "desc";
|
|
1381
|
+
}[] | undefined;
|
|
1382
|
+
available?: boolean | undefined;
|
|
1383
|
+
facets?: Record<string, any> | undefined;
|
|
1384
|
+
};
|
|
1385
|
+
limit?: number | undefined;
|
|
1386
|
+
durationMinutes?: number | undefined;
|
|
1387
|
+
sizeFacet?: string | undefined;
|
|
1388
|
+
}, {
|
|
1389
|
+
query: {
|
|
1390
|
+
role: string;
|
|
1391
|
+
status?: string | undefined;
|
|
1392
|
+
limit?: number | undefined;
|
|
1393
|
+
offset?: number | undefined;
|
|
1394
|
+
orderBy?: {
|
|
1395
|
+
column: string;
|
|
1396
|
+
direction: "asc" | "desc";
|
|
1397
|
+
}[] | undefined;
|
|
1398
|
+
available?: boolean | undefined;
|
|
1399
|
+
facets?: Record<string, any> | undefined;
|
|
1400
|
+
};
|
|
1401
|
+
limit?: number | undefined;
|
|
1402
|
+
durationMinutes?: number | undefined;
|
|
1403
|
+
sizeFacet?: string | undefined;
|
|
1404
|
+
}>;
|
|
1405
|
+
export declare const claimByFacetsSchema: z.ZodObject<{
|
|
1406
|
+
query: z.ZodObject<{
|
|
1407
|
+
role: z.ZodString;
|
|
1408
|
+
status: z.ZodOptional<z.ZodString>;
|
|
1409
|
+
available: z.ZodOptional<z.ZodBoolean>;
|
|
1410
|
+
facets: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
|
|
1411
|
+
orderBy: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
1412
|
+
column: z.ZodString;
|
|
1413
|
+
direction: z.ZodEnum<["asc", "desc"]>;
|
|
1414
|
+
}, "strip", z.ZodTypeAny, {
|
|
1415
|
+
column: string;
|
|
1416
|
+
direction: "asc" | "desc";
|
|
1417
|
+
}, {
|
|
1418
|
+
column: string;
|
|
1419
|
+
direction: "asc" | "desc";
|
|
1420
|
+
}>, "many">>;
|
|
1421
|
+
limit: z.ZodOptional<z.ZodNumber>;
|
|
1422
|
+
offset: z.ZodOptional<z.ZodNumber>;
|
|
1423
|
+
}, "strip", z.ZodTypeAny, {
|
|
1424
|
+
role: string;
|
|
1425
|
+
status?: string | undefined;
|
|
1426
|
+
limit?: number | undefined;
|
|
1427
|
+
offset?: number | undefined;
|
|
1428
|
+
orderBy?: {
|
|
1429
|
+
column: string;
|
|
1430
|
+
direction: "asc" | "desc";
|
|
1431
|
+
}[] | undefined;
|
|
1432
|
+
available?: boolean | undefined;
|
|
1433
|
+
facets?: Record<string, any> | undefined;
|
|
1434
|
+
}, {
|
|
1435
|
+
role: string;
|
|
1436
|
+
status?: string | undefined;
|
|
1437
|
+
limit?: number | undefined;
|
|
1438
|
+
offset?: number | undefined;
|
|
1439
|
+
orderBy?: {
|
|
1440
|
+
column: string;
|
|
1441
|
+
direction: "asc" | "desc";
|
|
1442
|
+
}[] | undefined;
|
|
1443
|
+
available?: boolean | undefined;
|
|
1444
|
+
facets?: Record<string, any> | undefined;
|
|
1445
|
+
}>;
|
|
1446
|
+
limit: z.ZodOptional<z.ZodNumber>;
|
|
1447
|
+
durationMinutes: z.ZodOptional<z.ZodNumber>;
|
|
1448
|
+
allOrNone: z.ZodOptional<z.ZodBoolean>;
|
|
1449
|
+
}, "strip", z.ZodTypeAny, {
|
|
1450
|
+
query: {
|
|
1451
|
+
role: string;
|
|
1452
|
+
status?: string | undefined;
|
|
1453
|
+
limit?: number | undefined;
|
|
1454
|
+
offset?: number | undefined;
|
|
1455
|
+
orderBy?: {
|
|
1456
|
+
column: string;
|
|
1457
|
+
direction: "asc" | "desc";
|
|
1458
|
+
}[] | undefined;
|
|
1459
|
+
available?: boolean | undefined;
|
|
1460
|
+
facets?: Record<string, any> | undefined;
|
|
1461
|
+
};
|
|
1462
|
+
limit?: number | undefined;
|
|
1463
|
+
durationMinutes?: number | undefined;
|
|
1464
|
+
allOrNone?: boolean | undefined;
|
|
1465
|
+
}, {
|
|
1466
|
+
query: {
|
|
1467
|
+
role: string;
|
|
1468
|
+
status?: string | undefined;
|
|
1469
|
+
limit?: number | undefined;
|
|
1470
|
+
offset?: number | undefined;
|
|
1471
|
+
orderBy?: {
|
|
1472
|
+
column: string;
|
|
1473
|
+
direction: "asc" | "desc";
|
|
1474
|
+
}[] | undefined;
|
|
1475
|
+
available?: boolean | undefined;
|
|
1476
|
+
facets?: Record<string, any> | undefined;
|
|
1477
|
+
};
|
|
1478
|
+
limit?: number | undefined;
|
|
1479
|
+
durationMinutes?: number | undefined;
|
|
1480
|
+
allOrNone?: boolean | undefined;
|
|
1481
|
+
}>;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.updateBotSchema = exports.createBotSchema = exports.getBotSchema = exports.listBotsSchema = exports.deleteAgentSubscriptionSchema = exports.createAgentSubscriptionSchema = exports.listAgentSubscriptionsSchema = exports.deleteAgentSchema = exports.updateAgentSchema = exports.createAgentSchema = exports.getAgentSchema = exports.listAgentsSchema = exports.pruneSchema = exports.addEscalationChainSchema = exports.createRoleSchema = exports.listRolesSchema = exports.removeUserRoleSchema = exports.addUserRoleSchema = exports.createUserSchema = exports.listUsersSchema = exports.invokeYamlWorkflowSchema = exports.deployYamlWorkflowSchema = exports.createYamlWorkflowSchema = exports.getYamlWorkflowSchema = exports.listYamlWorkflowsSchema = exports.disconnectMcpServerSchema = exports.connectMcpServerSchema = exports.updateMcpServerSchema = exports.listMcpServersSchema = exports.getWorkflowStatusSchema = exports.invokeWorkflowSchema = exports.listDiscoveredWorkflowsSchema = exports.deleteWorkflowConfigSchema = exports.upsertWorkflowConfigSchema = exports.listWorkflowConfigsSchema = exports.bulkTriageSchema = exports.releaseExpiredClaimsSchema = exports.bulkCancelSchema = exports.cancelEscalationSchema = exports.escalateEscalationSchema = exports.resolveBySignalKeySchema = exports.resolveEscalationSchema = exports.releaseEscalationSchema = exports.claimEscalationSchema = exports.getEscalationStatsSchema = exports.getEscalationsByWorkflowSchema = exports.getEscalationSchema = exports.findEscalationsSchema = exports.getProcessDetailSchema = exports.findTasksSchema = void 0;
|
|
4
|
-
exports.findOrphanedSignalsSchema = exports.findStalledJobsSchema = exports.diagnoseJobSchema = exports.getExportStatusSchema = exports.exportWorkflowExecutionSchema = exports.exportWorkflowStateSchema = exports.listExportJobsSchema = exports.getSettingsSchema = exports.updatePrioritySchema = exports.bulkEscalateSchema = exports.bulkAssignSchema = exports.bulkClaimSchema = exports.resolveByMetadataSchema = exports.claimByMetadataSchema = exports.findByMetadataSchema = exports.deleteTopicSchema = exports.updateTopicSchema = exports.createTopicSchema = exports.getTopicSchema = exports.listTopicsSchema = exports.interruptJobSchema = exports.getJobExecutionSchema = exports.listPipelineJobsSchema = exports.listPipelineEntitiesSchema = exports.listStreamMessagesSchema = exports.getStreamStatsSchema = exports.applyThrottleSchema = exports.rollCallSchema = exports.listAppsSchema = exports.revokeBotKeySchema = exports.createBotApiKeySchema = exports.deleteBotSchema = void 0;
|
|
4
|
+
exports.claimByFacetsSchema = exports.claimGroupsSchema = exports.searchByFacetsSchema = exports.resolveByIdsSchema = exports.facetQuerySchema = exports.findOrphanedSignalsSchema = exports.findStalledJobsSchema = exports.diagnoseJobSchema = exports.getExportStatusSchema = exports.exportWorkflowExecutionSchema = exports.exportWorkflowStateSchema = exports.listExportJobsSchema = exports.getSettingsSchema = exports.updatePrioritySchema = exports.bulkEscalateSchema = exports.bulkAssignSchema = exports.bulkClaimSchema = exports.resolveByMetadataSchema = exports.claimByMetadataSchema = exports.findByMetadataSchema = exports.deleteTopicSchema = exports.updateTopicSchema = exports.createTopicSchema = exports.getTopicSchema = exports.listTopicsSchema = exports.interruptJobSchema = exports.getJobExecutionSchema = exports.listPipelineJobsSchema = exports.listPipelineEntitiesSchema = exports.listStreamMessagesSchema = exports.getStreamStatsSchema = exports.applyThrottleSchema = exports.rollCallSchema = exports.listAppsSchema = exports.revokeBotKeySchema = exports.createBotApiKeySchema = exports.deleteBotSchema = void 0;
|
|
5
5
|
/**
|
|
6
6
|
* Zod schemas for the admin MCP server tools.
|
|
7
7
|
*
|
|
@@ -39,6 +39,23 @@ exports.findEscalationsSchema = zod_1.z.object({
|
|
|
39
39
|
order: zod_1.z.enum(['asc', 'desc']).optional().describe('Sort direction for sort_by'),
|
|
40
40
|
limit: zod_1.z.number().int().min(1).max(100).optional().default(5),
|
|
41
41
|
offset: zod_1.z.number().int().min(0).optional().default(0),
|
|
42
|
+
// Faceted metadata query (role-scoped in SQL). A "facet" is a key/value INSIDE the
|
|
43
|
+
// row's metadata JSONB, matched by containment (metadata @>), GIN-served.
|
|
44
|
+
roles: zod_1.z.array(zod_1.z.string()).optional().describe('Restrict to these roles (role = ANY); narrows within scope, never widens past it'),
|
|
45
|
+
facets: zod_1.z.record(zod_1.z.any()).optional().describe('Required metadata facets — metadata @> facets (AND). e.g. { filament: "pla" } means metadata.filament == "pla"'),
|
|
46
|
+
block: zod_1.z.array(zod_1.z.record(zod_1.z.any())).optional().describe('Exclude rows whose metadata contains ANY of these facet sets: NOT (metadata @> ANY(block))'),
|
|
47
|
+
range: zod_1.z.array(zod_1.z.object({
|
|
48
|
+
facet: zod_1.z.string(),
|
|
49
|
+
op: zod_1.z.enum(['<', '<=', '>', '>=', '=']),
|
|
50
|
+
value: zod_1.z.number(),
|
|
51
|
+
})).optional().describe('Numeric ranges over a metadata facet, e.g. { facet: "confidence", op: "<=", value: 0.7 }'),
|
|
52
|
+
exists: zod_1.z.array(zod_1.z.string()).optional().describe('Metadata keys that must be present: metadata ? key'),
|
|
53
|
+
available: zod_1.z.boolean().optional().describe('true = only unclaimed/expired; false = only held now'),
|
|
54
|
+
orderBy: zod_1.z.array(zod_1.z.object({
|
|
55
|
+
field: zod_1.z.string(),
|
|
56
|
+
direction: zod_1.z.enum(['asc', 'desc']).optional(),
|
|
57
|
+
numeric: zod_1.z.boolean().optional(),
|
|
58
|
+
})).optional().describe('Sort by a column or a metadata path written "metadata.<key>" (set numeric for numeric sort)'),
|
|
42
59
|
});
|
|
43
60
|
exports.getEscalationSchema = zod_1.z.object({
|
|
44
61
|
id: zod_1.z.string().describe('Escalation UUID'),
|
|
@@ -174,6 +191,16 @@ exports.listUsersSchema = zod_1.z.object({
|
|
|
174
191
|
limit: zod_1.z.number().int().min(1).max(100).optional().default(50),
|
|
175
192
|
offset: zod_1.z.number().int().min(0).optional().default(0),
|
|
176
193
|
});
|
|
194
|
+
// Work-surface scope for a `member` grant. read governs search breadth, write
|
|
195
|
+
// governs claim/ack/delete breadth; admin/superadmin ignore scope (act on all).
|
|
196
|
+
// The write ⊆ read constraint (write_scope='all' requires read_scope='all') is
|
|
197
|
+
// validated in the handler so these stay plain object shapes for the tool registry.
|
|
198
|
+
const scopeFields = {
|
|
199
|
+
read_scope: zod_1.z.enum(['self', 'all']).optional()
|
|
200
|
+
.describe("Member search breadth: 'self' (own items) or 'all' (whole queue). Default all"),
|
|
201
|
+
write_scope: zod_1.z.enum(['none', 'self', 'all']).optional()
|
|
202
|
+
.describe("Member claim/ack/delete breadth: 'none', 'self' (own items), or 'all'. Default all"),
|
|
203
|
+
};
|
|
177
204
|
exports.createUserSchema = zod_1.z.object({
|
|
178
205
|
external_id: zod_1.z.string().describe('Stable user identifier'),
|
|
179
206
|
display_name: zod_1.z.string().optional(),
|
|
@@ -181,12 +208,14 @@ exports.createUserSchema = zod_1.z.object({
|
|
|
181
208
|
roles: zod_1.z.array(zod_1.z.object({
|
|
182
209
|
role: zod_1.z.string(),
|
|
183
210
|
type: zod_1.z.enum(['superadmin', 'admin', 'member']),
|
|
184
|
-
|
|
211
|
+
...scopeFields,
|
|
212
|
+
})).optional().default([]).describe('Roles to assign on creation (each with optional work-surface scope)'),
|
|
185
213
|
});
|
|
186
214
|
exports.addUserRoleSchema = zod_1.z.object({
|
|
187
215
|
user_id: zod_1.z.string().describe('User UUID'),
|
|
188
216
|
role: zod_1.z.string().describe('Role name'),
|
|
189
217
|
type: zod_1.z.enum(['superadmin', 'admin', 'member']).describe('Permission level'),
|
|
218
|
+
...scopeFields,
|
|
190
219
|
});
|
|
191
220
|
exports.removeUserRoleSchema = zod_1.z.object({
|
|
192
221
|
user_id: zod_1.z.string().describe('User UUID'),
|
|
@@ -467,3 +496,35 @@ exports.findOrphanedSignalsSchema = zod_1.z.object({
|
|
|
467
496
|
within_hours: zod_1.z.number().int().min(1).max(720).optional().default(24).describe('Recent time window to scan, in hours (default: 24, max: 720). Bounds the scan of the partitioned worker_streams table — widen deliberately to reach older orphans.'),
|
|
468
497
|
limit: zod_1.z.number().int().min(1).max(500).optional().default(100).describe('Max results (default: 100, max: 500)'),
|
|
469
498
|
});
|
|
499
|
+
// ── Faceted routing + set resolve ───────────────────────────────────────────
|
|
500
|
+
/** A faceted query over a pond — filter/sort by columns and metadata facets. */
|
|
501
|
+
exports.facetQuerySchema = zod_1.z.object({
|
|
502
|
+
role: zod_1.z.string().describe('Pond role to target (the escalation role)'),
|
|
503
|
+
status: zod_1.z.string().optional().describe("Status filter (e.g. 'pending')"),
|
|
504
|
+
available: zod_1.z.boolean().optional().describe('Only rows not currently claimed'),
|
|
505
|
+
facets: zod_1.z.record(zod_1.z.any()).optional().describe('Metadata facet equality filters'),
|
|
506
|
+
orderBy: zod_1.z.array(zod_1.z.object({
|
|
507
|
+
column: zod_1.z.string(),
|
|
508
|
+
direction: zod_1.z.enum(['asc', 'desc']),
|
|
509
|
+
})).optional().describe('Sort order over columns'),
|
|
510
|
+
limit: zod_1.z.number().int().min(1).optional(),
|
|
511
|
+
offset: zod_1.z.number().int().min(0).optional(),
|
|
512
|
+
});
|
|
513
|
+
exports.resolveByIdsSchema = zod_1.z.object({
|
|
514
|
+
ids: zod_1.z.array(zod_1.z.string()).min(1).describe('Escalation ids to resolve as one set'),
|
|
515
|
+
resolverPayload: zod_1.z.record(zod_1.z.any()).describe('Resolution payload applied to every row'),
|
|
516
|
+
metadata: zod_1.z.record(zod_1.z.any()).optional().describe('Outcome patch merged into each row'),
|
|
517
|
+
});
|
|
518
|
+
exports.searchByFacetsSchema = exports.facetQuerySchema;
|
|
519
|
+
exports.claimGroupsSchema = zod_1.z.object({
|
|
520
|
+
query: exports.facetQuerySchema,
|
|
521
|
+
limit: zod_1.z.number().int().min(1).optional().describe('Max groups to claim'),
|
|
522
|
+
durationMinutes: zod_1.z.number().int().min(1).optional().describe('Claim TTL in minutes'),
|
|
523
|
+
sizeFacet: zod_1.z.string().optional().describe('Metadata key holding the group size'),
|
|
524
|
+
});
|
|
525
|
+
exports.claimByFacetsSchema = zod_1.z.object({
|
|
526
|
+
query: exports.facetQuerySchema,
|
|
527
|
+
limit: zod_1.z.number().int().min(1).optional().describe('Max rows to claim'),
|
|
528
|
+
durationMinutes: zod_1.z.number().int().min(1).optional().describe('Claim TTL in minutes'),
|
|
529
|
+
allOrNone: zod_1.z.boolean().optional().describe('Commit only if the full limit was acquired'),
|
|
530
|
+
});
|
|
@@ -74,6 +74,18 @@ function registerUserTools(server) {
|
|
|
74
74
|
'claim and resolve escalations for their assigned roles.',
|
|
75
75
|
inputSchema: schemas_1.createUserSchema,
|
|
76
76
|
}, async (args) => {
|
|
77
|
+
// roles carry optional read_scope/write_scope (default all/all); createUser
|
|
78
|
+
// normalizes admin/superadmin to all/all and stores member scope verbatim.
|
|
79
|
+
for (const r of args.roles) {
|
|
80
|
+
const read = r.read_scope ?? userService.DEFAULT_READ_SCOPE;
|
|
81
|
+
const write = r.write_scope ?? userService.DEFAULT_WRITE_SCOPE;
|
|
82
|
+
if (!userService.isValidScopePair(read, write)) {
|
|
83
|
+
return {
|
|
84
|
+
isError: true,
|
|
85
|
+
content: [{ type: 'text', text: `write_scope=all requires read_scope=all (role "${r.role}")` }],
|
|
86
|
+
};
|
|
87
|
+
}
|
|
88
|
+
}
|
|
77
89
|
const user = await userService.createUser({
|
|
78
90
|
external_id: args.external_id,
|
|
79
91
|
display_name: args.display_name,
|
|
@@ -87,10 +99,24 @@ function registerUserTools(server) {
|
|
|
87
99
|
// mirrors POST /api/users/:id/roles
|
|
88
100
|
server.registerTool('add_user_role', {
|
|
89
101
|
title: 'Add User Role',
|
|
90
|
-
description: 'Assign a role to a user. Role type: member, admin, or superadmin.'
|
|
102
|
+
description: 'Assign a role to a user. Role type: member, admin, or superadmin. For a ' +
|
|
103
|
+
'member, optional read_scope/write_scope set the work-surface (e.g. ' +
|
|
104
|
+
'read_scope=self + write_scope=self for a one-time user who only handles ' +
|
|
105
|
+
'their own pre-assigned escalation).',
|
|
91
106
|
inputSchema: schemas_1.addUserRoleSchema,
|
|
92
107
|
}, async (args) => {
|
|
93
|
-
const
|
|
108
|
+
const read = args.read_scope ?? userService.DEFAULT_READ_SCOPE;
|
|
109
|
+
const write = args.write_scope ?? userService.DEFAULT_WRITE_SCOPE;
|
|
110
|
+
if (!userService.isValidScopePair(read, write)) {
|
|
111
|
+
return {
|
|
112
|
+
isError: true,
|
|
113
|
+
content: [{ type: 'text', text: 'write_scope=all requires read_scope=all' }],
|
|
114
|
+
};
|
|
115
|
+
}
|
|
116
|
+
const result = await userService.addUserRole(args.user_id, args.role, args.type, {
|
|
117
|
+
read_scope: args.read_scope,
|
|
118
|
+
write_scope: args.write_scope,
|
|
119
|
+
});
|
|
94
120
|
return {
|
|
95
121
|
content: [{ type: 'text', text: JSON.stringify(result) }],
|
|
96
122
|
};
|