yaml-flow 8.8.5 → 8.8.6
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/browser/asset-integrity.json +3 -3
- package/browser/server-runtime-controlface.js +3 -3
- package/examples/board/test/server-http-test.js +2 -1
- package/lib/board-live-cards-node.cjs +1 -1
- package/lib/board-live-cards-node.js +1 -1
- package/lib/board-live-cards-server-runtime.cjs +1 -1
- package/lib/board-live-cards-server-runtime.js +1 -1
- package/lib/chunk-3MMTBEAO.js +2 -0
- package/lib/{chunk-O6II7S4M.js → chunk-EPCJYP4N.js} +3 -3
- package/lib/chunk-OJ2CAQ4C.cjs +2 -0
- package/lib/{chunk-PN5D32NP.cjs → chunk-QG6ERLZQ.cjs} +3 -3
- package/lib/compute-jsonata/browser.cjs +2 -0
- package/lib/compute-jsonata/browser.d.cts +20 -0
- package/lib/compute-jsonata/browser.d.ts +20 -0
- package/lib/compute-jsonata/browser.js +2 -0
- package/lib/compute-jsonata/index.cjs +2 -0
- package/lib/compute-jsonata/index.d.cts +20 -0
- package/lib/compute-jsonata/index.d.ts +20 -0
- package/lib/compute-jsonata/index.js +2 -0
- package/lib/compute-jsonata/jsonata-sync.cjs +7623 -0
- package/lib/server-runtime/index.cjs +1 -1
- package/lib/server-runtime/index.js +1 -1
- package/lib/server-runtime-controlface/index.cjs +1 -1
- package/lib/server-runtime-controlface/index.js +1 -1
- package/lib/server-runtime-core/index.cjs +1 -1
- package/lib/server-runtime-core/index.js +1 -1
- package/package.json +7 -1
- package/lib/chunk-NU5NO5NM.js +0 -2
- package/lib/chunk-ZK3E7L4Y.cjs +0 -2
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
'use strict';var
|
|
1
|
+
'use strict';var chunkQG6ERLZQ_cjs=require('../chunk-QG6ERLZQ.cjs');require('../chunk-OJ2CAQ4C.cjs'),require('../chunk-7FGPOGRV.cjs'),require('../chunk-LPXVVMQT.cjs'),require('../chunk-H22NK6KH.cjs'),require('../chunk-NM6O35RY.cjs'),require('../chunk-272IYUKT.cjs');var chunkETW3BXHD_cjs=require('../chunk-ETW3BXHD.cjs');require('../chunk-BQUQTOPB.cjs'),require('../chunk-NBJTYAYN.cjs'),require('../chunk-GPCMBPLK.cjs'),require('../chunk-36QUKFL7.cjs'),require('../chunk-37HDEW26.cjs'),require('../chunk-ZENTBLLA.cjs'),require('../chunk-7JVHYHT2.cjs'),require('../chunk-VQCIOKJV.cjs'),require('../chunk-G4XXRHL2.cjs'),require('../chunk-LODXIALE.cjs'),require('../chunk-7QZ267XP.cjs'),require('../chunk-IXZG74EW.cjs'),require('../chunk-HWYMZK3N.cjs'),require('../chunk-UJ7ZTV4J.cjs'),require('../chunk-YMEIPKLW.cjs'),require('../chunk-UB54HZA4.cjs'),require('../chunk-GNFE24S7.cjs');Object.defineProperty(exports,"createMultiBoardServerRuntime",{enumerable:true,get:function(){return chunkQG6ERLZQ_cjs.b}});Object.defineProperty(exports,"createSingleBoardServerRuntime",{enumerable:true,get:function(){return chunkQG6ERLZQ_cjs.a}});Object.defineProperty(exports,"createHostedBoardQueueLaneRegistry",{enumerable:true,get:function(){return chunkETW3BXHD_cjs.a}});//# sourceMappingURL=index.cjs.map
|
|
2
2
|
//# sourceMappingURL=index.cjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export{b as createMultiBoardServerRuntime,a as createSingleBoardServerRuntime}from'../chunk-
|
|
1
|
+
export{b as createMultiBoardServerRuntime,a as createSingleBoardServerRuntime}from'../chunk-EPCJYP4N.js';import'../chunk-3MMTBEAO.js';import'../chunk-NTICU4OK.js';import'../chunk-O7NOHKVR.js';import'../chunk-ABAVFLDP.js';import'../chunk-XYN5D3GL.js';import'../chunk-ZJ5M5COT.js';export{a as createHostedBoardQueueLaneRegistry}from'../chunk-6OPXQPSC.js';import'../chunk-FOFGEABN.js';import'../chunk-O5UYCGIN.js';import'../chunk-RKKSVOP2.js';import'../chunk-7QQFDYBM.js';import'../chunk-NNSBBO5R.js';import'../chunk-ZWVT24YW.js';import'../chunk-ANKA7HEJ.js';import'../chunk-44L64VQ2.js';import'../chunk-VGT3TRQG.js';import'../chunk-WDPOGXTY.js';import'../chunk-35N7ONTH.js';import'../chunk-JMDHDY6M.js';import'../chunk-3KC6LBOG.js';import'../chunk-MNEOJWPS.js';import'../chunk-KBELAKIY.js';import'../chunk-Q3OTUDIE.js';import'../chunk-FW4363Y4.js';//# sourceMappingURL=index.js.map
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
'use strict';var
|
|
1
|
+
'use strict';var chunkQG6ERLZQ_cjs=require('../chunk-QG6ERLZQ.cjs');require('../chunk-OJ2CAQ4C.cjs'),require('../chunk-7FGPOGRV.cjs'),require('../chunk-LPXVVMQT.cjs'),require('../chunk-H22NK6KH.cjs'),require('../chunk-NM6O35RY.cjs'),require('../chunk-272IYUKT.cjs'),require('../chunk-ETW3BXHD.cjs'),require('../chunk-BQUQTOPB.cjs'),require('../chunk-NBJTYAYN.cjs'),require('../chunk-GPCMBPLK.cjs'),require('../chunk-36QUKFL7.cjs'),require('../chunk-37HDEW26.cjs'),require('../chunk-ZENTBLLA.cjs'),require('../chunk-7JVHYHT2.cjs'),require('../chunk-VQCIOKJV.cjs'),require('../chunk-G4XXRHL2.cjs'),require('../chunk-LODXIALE.cjs'),require('../chunk-7QZ267XP.cjs'),require('../chunk-IXZG74EW.cjs'),require('../chunk-HWYMZK3N.cjs'),require('../chunk-UJ7ZTV4J.cjs'),require('../chunk-YMEIPKLW.cjs'),require('../chunk-UB54HZA4.cjs'),require('../chunk-GNFE24S7.cjs');var a=["/mcp","/mcp-raw","/mcp-actions","/mcp-controlplane","/mcp-webhooks"];function l(n,e){return a.some(r=>e===`${n}${r}`)}function s(n,e){return a.some(r=>{let i=`${r}`;if(!e.startsWith(`${n}/`)||!e.endsWith(i))return false;let t=e.slice(n.length+1,e.length-i.length);return t.length>0&&!t.includes("/")})}function c(n){let e=chunkQG6ERLZQ_cjs.a(n);return {...e,async handleRuntimeApi(r,i,t){return l(e.apiBasePath,t.pathname)?e.handleRuntimeApi(r,i,t):false}}}function d(n){let e=chunkQG6ERLZQ_cjs.b(n);return {...e,async handleApi(r,i,t){return s(e.apiBasePath,t.pathname)?e.handleApi(r,i,t):false}}}exports.createMultiBoardServerRuntime=d;exports.createSingleBoardServerRuntime=c;//# sourceMappingURL=index.cjs.map
|
|
2
2
|
//# sourceMappingURL=index.cjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import {a as a$1,b}from'../chunk-
|
|
1
|
+
import {a as a$1,b}from'../chunk-EPCJYP4N.js';import'../chunk-3MMTBEAO.js';import'../chunk-NTICU4OK.js';import'../chunk-O7NOHKVR.js';import'../chunk-ABAVFLDP.js';import'../chunk-XYN5D3GL.js';import'../chunk-ZJ5M5COT.js';import'../chunk-6OPXQPSC.js';import'../chunk-FOFGEABN.js';import'../chunk-O5UYCGIN.js';import'../chunk-RKKSVOP2.js';import'../chunk-7QQFDYBM.js';import'../chunk-NNSBBO5R.js';import'../chunk-ZWVT24YW.js';import'../chunk-ANKA7HEJ.js';import'../chunk-44L64VQ2.js';import'../chunk-VGT3TRQG.js';import'../chunk-WDPOGXTY.js';import'../chunk-35N7ONTH.js';import'../chunk-JMDHDY6M.js';import'../chunk-3KC6LBOG.js';import'../chunk-MNEOJWPS.js';import'../chunk-KBELAKIY.js';import'../chunk-Q3OTUDIE.js';import'../chunk-FW4363Y4.js';var a=["/mcp","/mcp-raw","/mcp-actions","/mcp-controlplane","/mcp-webhooks"];function l(n,e){return a.some(r=>e===`${n}${r}`)}function s(n,e){return a.some(r=>{let i=`${r}`;if(!e.startsWith(`${n}/`)||!e.endsWith(i))return false;let t=e.slice(n.length+1,e.length-i.length);return t.length>0&&!t.includes("/")})}function c(n){let e=a$1(n);return {...e,async handleRuntimeApi(r,i,t){return l(e.apiBasePath,t.pathname)?e.handleRuntimeApi(r,i,t):false}}}function d(n){let e=b(n);return {...e,async handleApi(r,i,t){return s(e.apiBasePath,t.pathname)?e.handleApi(r,i,t):false}}}export{d as createMultiBoardServerRuntime,c as createSingleBoardServerRuntime};//# sourceMappingURL=index.js.map
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
'use strict';var
|
|
1
|
+
'use strict';var chunkOJ2CAQ4C_cjs=require('../chunk-OJ2CAQ4C.cjs'),chunkLPXVVMQT_cjs=require('../chunk-LPXVVMQT.cjs'),chunk272IYUKT_cjs=require('../chunk-272IYUKT.cjs'),chunkETW3BXHD_cjs=require('../chunk-ETW3BXHD.cjs'),chunkBQUQTOPB_cjs=require('../chunk-BQUQTOPB.cjs');require('../chunk-GPCMBPLK.cjs'),require('../chunk-37HDEW26.cjs'),require('../chunk-7JVHYHT2.cjs'),require('../chunk-VQCIOKJV.cjs'),require('../chunk-7QZ267XP.cjs'),require('../chunk-IXZG74EW.cjs'),require('../chunk-HWYMZK3N.cjs'),require('../chunk-UJ7ZTV4J.cjs'),require('../chunk-GNFE24S7.cjs');Object.defineProperty(exports,"appendNotification",{enumerable:true,get:function(){return chunkOJ2CAQ4C_cjs.c}});Object.defineProperty(exports,"createCardFileOps",{enumerable:true,get:function(){return chunkOJ2CAQ4C_cjs.j}});Object.defineProperty(exports,"createControlplaneToolHandlers",{enumerable:true,get:function(){return chunkOJ2CAQ4C_cjs.h}});Object.defineProperty(exports,"createMcpControlplaneToolRegistry",{enumerable:true,get:function(){return chunkOJ2CAQ4C_cjs.m}});Object.defineProperty(exports,"createMcpFacadeModule",{enumerable:true,get:function(){return chunkOJ2CAQ4C_cjs.n}});Object.defineProperty(exports,"createMcpToolRegistry",{enumerable:true,get:function(){return chunkOJ2CAQ4C_cjs.k}});Object.defineProperty(exports,"createMcpWebhookToolRegistry",{enumerable:true,get:function(){return chunkOJ2CAQ4C_cjs.l}});Object.defineProperty(exports,"createRuntimePayloadModule",{enumerable:true,get:function(){return chunkOJ2CAQ4C_cjs.i}});Object.defineProperty(exports,"expectControlplaneSuccess",{enumerable:true,get:function(){return chunkOJ2CAQ4C_cjs.d}});Object.defineProperty(exports,"expectControlplaneSuccessAsync",{enumerable:true,get:function(){return chunkOJ2CAQ4C_cjs.e}});Object.defineProperty(exports,"getCardMetaKey",{enumerable:true,get:function(){return chunkOJ2CAQ4C_cjs.f}});Object.defineProperty(exports,"hasNonEmptyCardCountStatus",{enumerable:true,get:function(){return chunkOJ2CAQ4C_cjs.b}});Object.defineProperty(exports,"makeNotificationState",{enumerable:true,get:function(){return chunkOJ2CAQ4C_cjs.a}});Object.defineProperty(exports,"readCardMetaValue",{enumerable:true,get:function(){return chunkOJ2CAQ4C_cjs.g}});Object.defineProperty(exports,"getMcpArgNumber",{enumerable:true,get:function(){return chunkLPXVVMQT_cjs.b}});Object.defineProperty(exports,"getMcpArgRecord",{enumerable:true,get:function(){return chunkLPXVVMQT_cjs.c}});Object.defineProperty(exports,"getMcpArgString",{enumerable:true,get:function(){return chunkLPXVVMQT_cjs.a}});Object.defineProperty(exports,"getRequiredMcpArgNumber",{enumerable:true,get:function(){return chunkLPXVVMQT_cjs.e}});Object.defineProperty(exports,"getRequiredMcpArgRecord",{enumerable:true,get:function(){return chunkLPXVVMQT_cjs.d}});Object.defineProperty(exports,"parseMcpUploadBytes",{enumerable:true,get:function(){return chunkLPXVVMQT_cjs.f}});Object.defineProperty(exports,"extractMcpFailureMessage",{enumerable:true,get:function(){return chunk272IYUKT_cjs.b}});Object.defineProperty(exports,"invokeMcpTool",{enumerable:true,get:function(){return chunk272IYUKT_cjs.a}});Object.defineProperty(exports,"createHostedBoardQueueLaneRegistry",{enumerable:true,get:function(){return chunkETW3BXHD_cjs.a}});Object.defineProperty(exports,"concatUint8Arrays",{enumerable:true,get:function(){return chunkBQUQTOPB_cjs.d}});Object.defineProperty(exports,"escapeRegExp",{enumerable:true,get:function(){return chunkBQUQTOPB_cjs.c}});Object.defineProperty(exports,"executionWhatToRunValue",{enumerable:true,get:function(){return chunkBQUQTOPB_cjs.b}});Object.defineProperty(exports,"isAsyncBoardPlatformAdapter",{enumerable:true,get:function(){return chunkBQUQTOPB_cjs.a}});//# sourceMappingURL=index.cjs.map
|
|
2
2
|
//# sourceMappingURL=index.cjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export{c as appendNotification,j as createCardFileOps,h as createControlplaneToolHandlers,m as createMcpControlplaneToolRegistry,n as createMcpFacadeModule,k as createMcpToolRegistry,l as createMcpWebhookToolRegistry,i as createRuntimePayloadModule,d as expectControlplaneSuccess,e as expectControlplaneSuccessAsync,f as getCardMetaKey,b as hasNonEmptyCardCountStatus,a as makeNotificationState,g as readCardMetaValue}from'../chunk-
|
|
1
|
+
export{c as appendNotification,j as createCardFileOps,h as createControlplaneToolHandlers,m as createMcpControlplaneToolRegistry,n as createMcpFacadeModule,k as createMcpToolRegistry,l as createMcpWebhookToolRegistry,i as createRuntimePayloadModule,d as expectControlplaneSuccess,e as expectControlplaneSuccessAsync,f as getCardMetaKey,b as hasNonEmptyCardCountStatus,a as makeNotificationState,g as readCardMetaValue}from'../chunk-3MMTBEAO.js';export{b as getMcpArgNumber,c as getMcpArgRecord,a as getMcpArgString,e as getRequiredMcpArgNumber,d as getRequiredMcpArgRecord,f as parseMcpUploadBytes}from'../chunk-O7NOHKVR.js';export{b as extractMcpFailureMessage,a as invokeMcpTool}from'../chunk-ZJ5M5COT.js';export{a as createHostedBoardQueueLaneRegistry}from'../chunk-6OPXQPSC.js';export{d as concatUint8Arrays,c as escapeRegExp,b as executionWhatToRunValue,a as isAsyncBoardPlatformAdapter}from'../chunk-FOFGEABN.js';import'../chunk-RKKSVOP2.js';import'../chunk-NNSBBO5R.js';import'../chunk-ANKA7HEJ.js';import'../chunk-44L64VQ2.js';import'../chunk-35N7ONTH.js';import'../chunk-JMDHDY6M.js';import'../chunk-3KC6LBOG.js';import'../chunk-MNEOJWPS.js';import'../chunk-FW4363Y4.js';//# sourceMappingURL=index.js.map
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "yaml-flow",
|
|
3
|
-
"version": "8.8.
|
|
3
|
+
"version": "8.8.6",
|
|
4
4
|
"description": "Unified workflow engine: step-machine (sequential) + event-graph (stateless DAG) with pluggable storage",
|
|
5
5
|
"author": "",
|
|
6
6
|
"license": "MIT",
|
|
@@ -54,6 +54,12 @@
|
|
|
54
54
|
"import": "./lib/step-machine-public/index.js",
|
|
55
55
|
"require": "./lib/step-machine-public/index.cjs"
|
|
56
56
|
},
|
|
57
|
+
"./compute-jsonata": {
|
|
58
|
+
"types": "./lib/compute-jsonata/index.d.ts",
|
|
59
|
+
"browser": "./lib/compute-jsonata/browser.js",
|
|
60
|
+
"import": "./lib/compute-jsonata/index.js",
|
|
61
|
+
"require": "./lib/compute-jsonata/index.cjs"
|
|
62
|
+
},
|
|
57
63
|
"./card-validation": {
|
|
58
64
|
"types": "./lib/card-validation.d.ts",
|
|
59
65
|
"import": "./lib/card-validation.js",
|
package/lib/chunk-NU5NO5NM.js
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import {a,c,d,e,b,f}from'./chunk-O7NOHKVR.js';import {a as a$1}from'./chunk-FOFGEABN.js';import {b as b$1}from'./chunk-44L64VQ2.js';import {a as a$2}from'./chunk-35N7ONTH.js';function W(){return {status:null,computedValues:{},dataObjects:{},cards:{}}}function V(s){if(!s||typeof s!="object")return false;let e=s.summary;return !e||typeof e!="object"?false:Number(e.card_count||0)>0}function H(s,e){if(!e||typeof e!="object")return;let n=e;if(n.kind==="notification-batch"&&Array.isArray(n.notifications)){for(let l of n.notifications)H(s,l);return}n.kind==="status"&&V(n.status)&&(s.status=n.status),n.kind==="computed_values"&&n.cardId&&(s.computedValues[n.cardId]=n.values),n.kind==="data_object"&&n.key&&(s.dataObjects[n.key]=n.payload),n.kind==="card_refreshed"&&n.cardId&&(s.cards[n.cardId]=n.card),n.kind==="card_removed"&&n.cardId&&(delete s.cards[n.cardId],delete s.computedValues[n.cardId]);}function j(s,e){if(s?.status==="success")return Object.prototype.hasOwnProperty.call(s,"data")?s.data:void 0;throw s?.status==="fail"||s?.status==="error"?Object.assign(new Error(s.error||`${e} failed`),{statusCode:400}):Object.assign(new Error(`${e} returned an unexpected response`),{statusCode:500})}async function B(s,e){return j(await s,e)}function D(s){let e=a(s,"key");if(!e)throw Object.assign(new Error("MCP tool requires key"),{statusCode:400});let n=e.split(".");if(!(n.length>=2&&n[0]==="chat"&&n.every(h=>/^[A-Za-z_][A-Za-z0-9_]*$/.test(h))))throw Object.assign(new Error("MCP tool only supports card private keys under chat.*"),{statusCode:400});return e}function q(s,e){let n=s.__private;for(let l of e.split(".")){if(!n||typeof n!="object"||Array.isArray(n)||!Object.prototype.hasOwnProperty.call(n,l))return {exists:false,value:null};n=n[l];}return {exists:true,value:n}}function Q(s){let{boardId:e,bootstrapBoard:n,sseHub:l,onChannelSubscribed:h,onChannelUnsubscribed:v,getMcpFacade:I,getMcpCardStoreFacade:r}=s;function C(d){let u=a(d,"board_id");if(!u)throw Object.assign(new Error("MCP tool requires board_id"),{statusCode:400});if(u!==e)throw Object.assign(new Error(`Unknown board_id: ${u}`),{statusCode:400})}function w(d){let u=a(d,"client_id");if(!u)throw Object.assign(new Error("MCP tool requires client_id"),{statusCode:400});return u}function c(d){C(d);let u=w(d),a$1=a(d,"channel_name"),t=a(d,"card_id")||void 0;if(!a$1)throw Object.assign(new Error("MCP tool requires channel_name"),{statusCode:400});return {clientId:u,channelName:a$1,...t?{cardId:t}:{}}}function g(d){C(d);let u=a(d,"card_id");if(!u)throw Object.assign(new Error("MCP tool requires card_id"),{statusCode:400});return {cardId:u}}async function b(d){await n();let{cardId:u}=g(d),a=w(d);if(!await l.subscribeChat(a,u))throw Object.assign(new Error(`SSE client not connected: ${a}`),{statusCode:404});return {status:"success",data:{boardId:e,cardId:u,clientId:a,subscribed:true}}}async function y(d){await n();let{cardId:u}=g(d),a=w(d);if(!l.unsubscribeChat(a,u))throw Object.assign(new Error(`SSE client not connected: ${a}`),{statusCode:404});return {status:"success",data:{boardId:e,cardId:u,clientId:a,subscribed:false}}}async function k(d,u){await n();let{clientId:a,channelName:t,cardId:o}=c(d);if(!l.has(a))throw Object.assign(new Error(`SSE client not connected: ${a}`),{statusCode:404});return u?h?.(a,t,o?{cardId:o}:{}):v?.(a,t,o?{cardId:o}:{}),{status:"success",data:{boardId:e,clientId:a,channelName:t,subscribed:u,...o?{cardId:o}:{}}}}async function f(d,u){let{cardId:a}=g(d);return await I().setChatProcessing({cardId:a,active:u}),{status:"success",data:{boardId:e,cardId:a,active:u}}}async function i(d){let{cardId:u}=g(d),a=await I().getChatProcessing({cardId:u});return {status:"success",data:{boardId:e,cardId:u,active:a.active}}}async function m(d){let{cardId:u}=g(d),a=D(d);if(!Object.prototype.hasOwnProperty.call(d,"value"))throw Object.assign(new Error("MCP tool requires value"),{statusCode:400});if(a.split(".").includes("visible_controlplane_only")){let t=await B(r().get({params:{id:u}}),"cardStore.get"),o=Array.isArray(t.cards)&&t.cards.length>0&&typeof t.cards[0]=="object"&&!Array.isArray(t.cards[0])?t.cards[0]:null,R=o?q(o,"visible_controlplane_only").value:void 0;if(d.value!==R)throw Object.assign(new Error("MCP tool cannot change the reserved private flag visible_controlplane_only"),{statusCode:403});return {status:"success",data:{boardId:e,cardId:u,key:a}}}return j(await r().patch({params:{id:u,path:`__private.${a}`},body:{value:d.value}}),"cardStore.patch"),{status:"success",data:{boardId:e,cardId:u,key:a}}}async function _(d){let{cardId:u}=g(d),a=D(d),t=await B(r().get({params:{id:u}}),"cardStore.get"),o=Array.isArray(t.cards)&&t.cards.length>0&&t.cards[0]&&typeof t.cards[0]=="object"&&!Array.isArray(t.cards[0])?t.cards[0]:null;if(!o)throw Object.assign(new Error(`Card "${u}" not found`),{statusCode:404});let R=q(o,a);return {status:"success",data:{boardId:e,cardId:u,key:a,exists:R.exists,value:R.value}}}return {requireCardArgs:g,subscribeChat:b,unsubscribeChat:y,watchChannel:k,setChatProcessing:f,getChatProcessing:i,setCardMeta:m,getCardMeta:_}}function ee(s){let{boardId:e,boardContexts:n,readCardDefinitions:l,readChatRecords:h,getChatProcessing:v}=s;async function I(){let c=(await Promise.all(n.map(async f=>{try{let i=f.boardAdapter.kvStorageForRef(f.outputsStoreRef),m=await Promise.resolve(i.read("status"));if(m!=null)return m}catch{}return f.notification.status}))).filter(Boolean);if(c.length===0)return null;if(c.length===1)return c[0];let g=[],b=["completed","eligible","pending","blocked","unresolved","failed","in_progress","orphan_cards"],y={};for(let f of b)y[f]=0;for(let f of c){let i=f,m=Array.isArray(i.cards)?i.cards:[];g.push(...m);for(let _ of b)y[_]+=Number(i?.summary?.[_]||0);}let k=c[0];return {...k,cards:g,summary:{...k.summary||{},card_count:g.length,...y}}}async function r(){let c={},g=async b=>{try{let y=await b.boardOps.getAllOutputsComputedValues({});if(y.status==="success"&&y.data&&typeof y.data=="object"){for(let[k,f]of Object.entries(y.data)){let i=b.notification.cards[k];c[k]={schema_version:"v1",card_id:k,card_data:i?.card_data??{},computed_values:f??{}};}return}}catch{}for(let[y,k]of Object.entries(b.notification.computedValues)){let f=b.notification.cards[y];c[y]={schema_version:"v1",card_id:y,card_data:f?.card_data??{},computed_values:k??{}};}};for(let b of n)await g(b);return c}async function C(){let c={};for(let g of n){try{let b=await g.boardOps.getAllOutputsDataObjects({});if(b.status==="success"&&b.data&&typeof b.data=="object"){Object.assign(c,b.data);continue}}catch{}Object.assign(c,g.notification.dataObjects||{});}return c}async function w(){let c=await l(),g=await r(),b=await C(),y={};for(let f of c){if(!f?.id)continue;let i=f.id,m=g[i]||{},_={...m.card_data&&typeof m.card_data=="object"?m.card_data:f.card_data&&typeof f.card_data=="object"?f.card_data:{}};y[i]={schema_version:m.schema_version||"v1",card_id:m.card_id||i,card_data:_,computed_values:m.computed_values&&typeof m.computed_values=="object"?m.computed_values:{}};}let k={};for(let f of c){if(!f?.id)continue;let i=f.id;try{let m=await h(i),_=await v(i);(m.length>0||_)&&(k[i]={messages:m.map(d=>({role:String(d.role||"system"),text:String(d.text||""),files:Array.isArray(d.files)?d.files:[]})),receiving:!1,processing:_});}catch{}}return {boardId:e,cardDefinitions:c,statusSnapshot:await I(),dataObjectsByToken:b,cardRuntimeById:y,cardChatsByCardId:k}}return {readStatusSnapshot:I,readCardRuntimeArtifacts:r,readDataObjectsByToken:C,buildPublishedRuntimePayload:w}}function z(s){let e=String(s||"").trim();if(!e)return "upload.bin";let n=Math.max(e.lastIndexOf("/"),e.lastIndexOf("\\"));return (n>=0?e.slice(n+1):e)||"upload.bin"}function re(s){let{safeCardId:e,artifactsStores:n,cardFileMetadataStore:l,readCardFromStore:h,updateCardLocalOnly:v,writeChatRecord:I}=s;async function r(c){let g=[];try{let b=await h(c);if(!b)return g;let y=l().read(b.card_data&&typeof b.card_data=="object"?b.card_data:null);for(let k of y)g.push(String(k.stored_name??""));}catch{}return g}async function C(c,g,b,y){let k=e(c),f=n(c),i=z(g),m=await r(c),d=`${String(m.length+1).padStart(3,"0")}-${i}`.slice(-36);if(!f.files)throw Object.assign(new Error(`artifactsStoreRef is not configured for card uploads: ${c}`),{statusCode:500});return await f.files.putBytes(`${k}/${d}`,new Uint8Array(y),b||"application/octet-stream"),{name:i,stored_name:d,size:y.length,mime_type:b||"application/octet-stream",uploaded_at:new Date().toISOString()}}async function w(c,g,b,y,k){if(!y.length)throw Object.assign(new Error("Empty upload body"),{statusCode:400});let f=k?.inChat===true,i=await C(c,g,b,y),m=null;if(await v(c,_=>{let d=new Date().toISOString(),u=_.card_data&&typeof _.card_data=="object"?_.card_data:{};_.card_data=u;let a=l().normalizeIncoming([{name:i.name,stored_name:i.stored_name,size:i.size,mime_type:i.mime_type,uploaded_at:i.uploaded_at||d,chat:f}],d);return m=l().merge(u,a).findIndex(o=>o.stored_name===i.stored_name),_}),f&&k?.suppressChatRecordWrite!==true){let _=typeof m=="number"&&m>=0?` #${m}`:"";await I(c,"system",`file uploaded: ${i.name} as ${i.stored_name}${_}`,[],k?.turnId??"");}return {ok:true,file:{...i,...typeof m=="number"&&m>=0?{file_idx:m}:{},chat:f},...typeof m=="number"&&m>=0?{file_idx:m}:{}}}return {uploadCardFile:w,readCardStoredFileNames:r}}function se(s){return {"discover.source-kinds":()=>s.discoverSourceKinds(),"inspect.board-runtime-status":()=>s.inspectBoardRuntimeStatus(),"inspect.card-definition-and-runtime":e=>s.inspectCardDefinitionAndRuntime({cardId:a(e,"card_id")}),"inspect.chat-messages-on-cards":e=>{let n=b(e,"tail_turns"),l=b(e,"tail"),h=a(e,"turn_id"),v=e.all_turns===true,I=a(e,"tail_turns_before_id");return s.inspectChatMessagesOnCards({cardId:a(e,"card_id"),...n!==void 0?{lastUserTurns:n}:{},...l!==void 0?{tail:l}:{},...h?{turnId:h}:{},...v?{allTurns:true}:{},...I?{tailTurnsBeforeId:I}:{}})},"inspect.file-contents":e=>s.inspectFileContents({cardId:a(e,"card_id"),fileIdx:Number(b(e,"file_idx"))}),"preflight.validate-candidate-card-definition":e=>s.preflightValidateCandidateCardDefinition({candidateCardContent:d(e,"candidate_card_content","candidate_card_content")}),"preflight.materialize-candidate-card":e=>s.preflightMaterializeCandidateCard({candidateCardContent:d(e,"candidate_card_content","candidate_card_content"),mockRequires:d(e,"mock_requires","mock_requires"),mockFetchedSources:d(e,"mock_fetched_sources","mock_fetched_sources")}),"preflight.probe-single-source-in-candidate-card":e$1=>s.preflightProbeSingleSourceInCandidateCard({candidateCardContent:d(e$1,"candidate_card_content","candidate_card_content"),mockProjections:c(e$1,"mock_projections"),sourceIdx:e(e$1,"source_idx","source_idx")}),"preflight.run-single-source-in-candidate-card":e$1=>s.preflightRunSingleSourceInCandidateCard({candidateCardContent:d(e$1,"candidate_card_content","candidate_card_content"),mockProjections:c(e$1,"mock_projections"),sourceIdx:e(e$1,"source_idx","source_idx")}),"preflight.run-single-source-in-live-card":e$1=>s.preflightRunSingleSourceInLiveCard({cardId:a(e$1,"card_id"),sourceIdx:e(e$1,"source_idx","source_idx"),mockRequires:d(e$1,"mock_requires","mock_requires")}),"preflight.run-one-cycle-with-candidate-card":e=>s.preflightRunOneCycleWithCandidateCard({candidateCardContent:d(e,"candidate_card_content","candidate_card_content"),mockRequires:c(e,"mock_requires")}),"manage.read-card":e=>s.manageReadCard({cardId:a(e,"card_id")}),"stage-ai-response-and-any-attachments":e=>{let n=a(e,"turn_id");if(!n)throw Object.assign(new Error("stage-ai-response-and-any-attachments requires a non-empty turn_id"),{statusCode:400});return s.manageAddChatEntryAndAnyAttachments({cardId:a(e,"card_id"),role:"assistant",...typeof e.text=="string"?{text:e.text}:{},...n?{turn:n}:{},...Array.isArray(e.files)?{files:e.files}:{}})},"manage.upsert-card":e=>s.manageUpsertCard({cardId:a(e,"card_id"),candidateCardContent:c(e,"candidate_card_content")}),"manage.remove-card":e=>s.manageRemoveCard({cardId:a(e,"card_id")})}}function oe(s){return {"webhook.process-accumulated":()=>s.webhookProcessAccumulated(),"webhook.source-fetch-done":e=>s.webhookSourceFetchDone({token:a(e,"token"),ref:a(e,"ref")}),"webhook.source-fetch-failed":e=>s.webhookSourceFetchFailed({token:a(e,"token"),reason:a(e,"reason")})}}function de(s){let{boardId:e,uploadCardFile:n,getMcpFacade:l,controlplane:h}=s;function v(r,C){let w=a(r,"board_id");if(!w)throw Object.assign(new Error(`${C} requires board_id`),{statusCode:400});if(w!==e)throw Object.assign(new Error(`Unknown board_id: ${w}`),{statusCode:400})}function I(r,C){let{cardId:w}=h.requireCardArgs(r),c=a(r,"turn_id");return v(r,C),l().manageAddChatAttachment({cardId:w,role:a(r,"role")||"user",...c?{turn:c}:{},files:[{file_name:a(r,"file_name"),content_type:a(r,"content_type")||"application/octet-stream",...typeof r.text=="string"?{text:r.text}:{},...typeof r.base64=="string"?{base64:r.base64}:{},...Array.isArray(r.bytes)?{bytes:r.bytes}:{}}]})}return {"list-runtime-cards":r=>(v(r,"list-runtime-cards"),l().listRuntimeCards()),"sse.subscribe-chat":r=>h.subscribeChat(r),"sse.unsubscribe-chat":r=>h.unsubscribeChat(r),"sse.watch-channel":r=>h.watchChannel(r,true),"sse.unwatch-channel":r=>h.watchChannel(r,false),"getstate.is-chat-processing":r=>h.getChatProcessing(r),"setstate.chat-processing-started":r=>h.setChatProcessing(r,true),"setstate.chat-processing-done":r=>h.setChatProcessing(r,false),"getstate.card-private":r=>h.getCardMeta(r),"setstate.card-private":r=>h.setCardMeta(r),"manage.upload-card-file":r=>{let C=a(r,"card_id"),w=a(r,"file_name"),c=a(r,"content_type")||"application/octet-stream",g=f(r);if(v(r,"manage.upload-card-file"),!C)throw Object.assign(new Error("manage.upload-card-file requires card_id"),{statusCode:400});if(!w)throw Object.assign(new Error("manage.upload-card-file requires file_name"),{statusCode:400});if(!g)throw Object.assign(new Error("manage.upload-card-file requires args.bytes, args.text, or args.base64"),{statusCode:400});return n(C,w,c,g,{inChat:false})},"manage.add-chat-attachment":r=>I(r,"manage.add-chat-attachment"),"manage.add-chat-attachement":r=>I(r,"manage.add-chat-attachement"),"manage.add-chat-entry-and-any-attachments":r=>{let{cardId:C}=h.requireCardArgs(r),w=a(r,"role")||"user",c=a(r,"turn_id");return v(r,"manage.add-chat-entry-and-any-attachments"),l().manageAddChatEntryAndAnyAttachments({cardId:C,role:w,...typeof r.text=="string"?{text:r.text}:{},...c?{turn:c}:{},...Array.isArray(r.files)?{files:r.files}:{}})},"manage.patch-card":r=>{let{cardId:C}=h.requireCardArgs(r);return v(r,"manage.patch-card"),l().managePatchCard({cardId:C,patch:c(r,"patch")})},"manage.upsert-card":r=>{let{cardId:C}=h.requireCardArgs(r);return v(r,"manage.upsert-card"),l().manageUpsertCard({cardId:C,candidateCardContent:c(r,"candidate_card_content")})},"manage.remove-card":r=>{let{cardId:C}=h.requireCardArgs(r);return v(r,"manage.remove-card"),l().manageRemoveCard({cardId:C})},"manage.admin-read-card":async r=>{let{cardId:C}=h.requireCardArgs(r);return {status:"success",data:{cards:await l().adminReadCard({cardId:C})}}},"manage.admin-upsert-card":r=>{let C=a(r,"board_id"),w=a(r,"card_id");if(!C)throw Object.assign(new Error("manage.admin-upsert-card requires board_id"),{statusCode:400});if(!w)throw Object.assign(new Error("manage.admin-upsert-card requires card_id"),{statusCode:400});if(C!==e)throw Object.assign(new Error(`Unknown board_id: ${C}`),{statusCode:400});return l().adminUpsertCard({cardId:w,candidateCardContent:c(r,"candidate_card_content")})}}}function pe(s){let{boardContexts:e,cardOwnerIndex:n,cardContextForCard:l,readStatusSnapshot:h,readDataObjectsByToken:v,readCardRuntimeArtifacts:I,readCardFromStore:r,readCardDefinitions:C,processAccumulatedLaneInternal:w,reportSourceFetched:c,reportSourceFetchFailure:g,uploadCardFile:b,chatStorePublic:y,serverUrl:k,apiBasePath:f}=s;function i(){return e[0]??null}function m(){return {async status(){let a=await h();return a==null?{status:"fail",error:"Board status is unavailable"}:{status:"success",data:a}},async getOutputsDataObject(a){let t=a?.params?.key;return t?{status:"success",data:(await v())[t]}:{status:"fail",error:"getOutputsDataObject requires params.key"}},async getOutputsComputedValues(a){let t=a?.params?.key;return t?{status:"success",data:(await I())[t]?.computed_values}:{status:"fail",error:"getOutputsComputedValues requires params.key"}},async getOutputsFetchedSources(a){let t=a?.params?.key;if(!t)return {status:"fail",error:"getOutputsFetchedSources requires params.key"};let o=l(t)??i();return o?o.boardOps.getOutputsFetchedSources({params:{key:t}}):{status:"fail",error:"Board context is unavailable"}},async removeCard(a){let t=a?.params?.id;if(!t)return {status:"fail",error:"removeCard requires params.id"};let o=l(t)??i();return o?o.boardOps.removeCard({params:{id:t}}):{status:"fail",error:"Board context is unavailable"}},async cardRefreshedNotify(a){let t=a?.params?.cardId;if(!t)return {status:"fail",error:"cardRefreshedNotify requires params.cardId"};let o=l(t)??i();return o?o.boardOps.cardRefreshedNotify({params:{cardId:t}}):{status:"fail",error:"Board context is unavailable"}},async upsertCard(a){let t=a?.params?.cardId;if(!t)return {status:"fail",error:"upsertCard requires params.cardId"};let o=l(t)??i();if(!o)return {status:"fail",error:"Board context is unavailable"};let R=await o.boardOps.upsertCard({params:{cardId:t,restart:a.params.restart===true}});if(R.status!=="success")return R;if(a$1(o.boardAdapter)){let P=await w(true);if(P.status!=="success")return P}return R}}}function _(){let a=()=>{let t=i();if(!t?.nonCore)throw new Error("Board non-core adapter is not configured for MCP preflight/discovery tools");return t.nonCore};return {describeTaskExecutorCapabilities(t){return a().describeTaskExecutorCapabilities(t)},validateCardPreflight(t){return a().validateCardPreflight(t)},evalCardCompute(t){return a().evalCardCompute(t)},probeSourcePreflight(t){return a().probeSourcePreflight(t)},runSourcePreflight(t){return a().runSourcePreflight(t)},simulateCardCycle(t){return a().simulateCardCycle(t)}}}function d(){return {async get(a){let t=typeof a.params?.id=="string"?a.params.id:void 0;if(t){let o=await r(t);return o?{status:"success",data:{cards:[o]}}:{status:"success",data:{cards:[]}}}return {status:"success",data:{cards:await C()}}},async set(a){let t=a.body;if(t==null)return {status:"fail",error:"set requires a body (card object or array of cards)"};let o=Array.isArray(t)?t:[t];for(let R of o){let P=R,A=typeof P.id=="string"?P.id:"";if(!A)return {status:"fail",error:"each card must have a string `id` field"};let E=n.get(A)??0,N=e[E]??i();if(!N)return {status:"fail",error:"Board context is unavailable"};let T=await N.cardStoreOps.set({body:P});if(T.status!=="success")return T;n.set(A,E);}return {status:"success",data:{count:o.length}}},async del(a){let t=[a.params?.id,...a.body?.ids??[]].filter(o=>typeof o=="string"&&!!o);if(t.length===0)return {status:"fail",error:"del requires body.ids (string[]) or params.id"};for(let o of t){let R=l(o)??i();if(!R)return {status:"fail",error:"Board context is unavailable"};let P=await R.cardStoreOps.del({params:{id:o}});if(P.status!=="success")return P;n.delete(o);}return {status:"success",data:{count:t.length}}},async patch(a){let t=typeof a.params?.id=="string"?a.params.id:void 0,o=typeof a.params?.path=="string"?a.params.path:void 0;if(!t||!o)return {status:"fail",error:"patch requires params.id and params.path"};let R=l(t)??i();return R?R.cardStoreOps.patch(a):{status:"fail",error:"Board context is unavailable"}},async appendFiles(a){let t=typeof a.params?.id=="string"?a.params.id:void 0;if(!t)return {status:"fail",error:"appendFiles requires params.id"};let o=l(t)??i();return o?o.cardStoreOps.appendFiles(a):{status:"fail",error:"Board context is unavailable"}}}}function u(){return a$2({board:m(),nonCore:_(),cardStore:d(),chatStore:y,processAccumulated:()=>w(true),sourceFetchDone:({token:a,ref:t})=>c(a,t),sourceFetchFailed:({token:a,reason:t})=>g(a,t),uploadCardFile({cardId:a,fileName:t,contentType:o,bytes:R,suppressChatRecordWrite:P}){return b(a,t,o,R,{inChat:true,...P===true?{suppressChatRecordWrite:true}:{}})},buildFileDownloadUrl({cardId:a,fileIdx:t,storedName:o}){let R=`${k||""}${f}/cards/${encodeURIComponent(a)}/files/${t}`;return o?`${R}?sn=${encodeURIComponent(o)}`:R},readFetchedSourceJsonByRef({cardId:a,ref:t}){let o=l(a)??i();if(!o||a$1(o.boardAdapter))return null;let A=o.boardAdapter.resolveBlob(b$1(t)).trim();return A?JSON.parse(A):null}})}return {mcpBoardFacade:m,mcpNonCoreFacade:_,mcpCardStoreFacade:d,createMcpFacade:u}}export{W as a,V as b,H as c,j as d,B as e,D as f,q as g,Q as h,ee as i,re as j,se as k,oe as l,de as m,pe as n};//# sourceMappingURL=chunk-NU5NO5NM.js.map
|
|
2
|
-
//# sourceMappingURL=chunk-NU5NO5NM.js.map
|
package/lib/chunk-ZK3E7L4Y.cjs
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
'use strict';var chunkLPXVVMQT_cjs=require('./chunk-LPXVVMQT.cjs'),chunkBQUQTOPB_cjs=require('./chunk-BQUQTOPB.cjs'),chunkVQCIOKJV_cjs=require('./chunk-VQCIOKJV.cjs'),chunk7QZ267XP_cjs=require('./chunk-7QZ267XP.cjs');function W(){return {status:null,computedValues:{},dataObjects:{},cards:{}}}function V(s){if(!s||typeof s!="object")return false;let e=s.summary;return !e||typeof e!="object"?false:Number(e.card_count||0)>0}function H(s,e){if(!e||typeof e!="object")return;let n=e;if(n.kind==="notification-batch"&&Array.isArray(n.notifications)){for(let l of n.notifications)H(s,l);return}n.kind==="status"&&V(n.status)&&(s.status=n.status),n.kind==="computed_values"&&n.cardId&&(s.computedValues[n.cardId]=n.values),n.kind==="data_object"&&n.key&&(s.dataObjects[n.key]=n.payload),n.kind==="card_refreshed"&&n.cardId&&(s.cards[n.cardId]=n.card),n.kind==="card_removed"&&n.cardId&&(delete s.cards[n.cardId],delete s.computedValues[n.cardId]);}function j(s,e){if(s?.status==="success")return Object.prototype.hasOwnProperty.call(s,"data")?s.data:void 0;throw s?.status==="fail"||s?.status==="error"?Object.assign(new Error(s.error||`${e} failed`),{statusCode:400}):Object.assign(new Error(`${e} returned an unexpected response`),{statusCode:500})}async function B(s,e){return j(await s,e)}function D(s){let e=chunkLPXVVMQT_cjs.a(s,"key");if(!e)throw Object.assign(new Error("MCP tool requires key"),{statusCode:400});let n=e.split(".");if(!(n.length>=2&&n[0]==="chat"&&n.every(h=>/^[A-Za-z_][A-Za-z0-9_]*$/.test(h))))throw Object.assign(new Error("MCP tool only supports card private keys under chat.*"),{statusCode:400});return e}function q(s,e){let n=s.__private;for(let l of e.split(".")){if(!n||typeof n!="object"||Array.isArray(n)||!Object.prototype.hasOwnProperty.call(n,l))return {exists:false,value:null};n=n[l];}return {exists:true,value:n}}function Q(s){let{boardId:e,bootstrapBoard:n,sseHub:l,onChannelSubscribed:h,onChannelUnsubscribed:v,getMcpFacade:I,getMcpCardStoreFacade:r}=s;function C(d){let u=chunkLPXVVMQT_cjs.a(d,"board_id");if(!u)throw Object.assign(new Error("MCP tool requires board_id"),{statusCode:400});if(u!==e)throw Object.assign(new Error(`Unknown board_id: ${u}`),{statusCode:400})}function w(d){let u=chunkLPXVVMQT_cjs.a(d,"client_id");if(!u)throw Object.assign(new Error("MCP tool requires client_id"),{statusCode:400});return u}function c(d){C(d);let u=w(d),a=chunkLPXVVMQT_cjs.a(d,"channel_name"),t=chunkLPXVVMQT_cjs.a(d,"card_id")||void 0;if(!a)throw Object.assign(new Error("MCP tool requires channel_name"),{statusCode:400});return {clientId:u,channelName:a,...t?{cardId:t}:{}}}function g(d){C(d);let u=chunkLPXVVMQT_cjs.a(d,"card_id");if(!u)throw Object.assign(new Error("MCP tool requires card_id"),{statusCode:400});return {cardId:u}}async function b(d){await n();let{cardId:u}=g(d),a=w(d);if(!await l.subscribeChat(a,u))throw Object.assign(new Error(`SSE client not connected: ${a}`),{statusCode:404});return {status:"success",data:{boardId:e,cardId:u,clientId:a,subscribed:true}}}async function y(d){await n();let{cardId:u}=g(d),a=w(d);if(!l.unsubscribeChat(a,u))throw Object.assign(new Error(`SSE client not connected: ${a}`),{statusCode:404});return {status:"success",data:{boardId:e,cardId:u,clientId:a,subscribed:false}}}async function k(d,u){await n();let{clientId:a,channelName:t,cardId:o}=c(d);if(!l.has(a))throw Object.assign(new Error(`SSE client not connected: ${a}`),{statusCode:404});return u?h?.(a,t,o?{cardId:o}:{}):v?.(a,t,o?{cardId:o}:{}),{status:"success",data:{boardId:e,clientId:a,channelName:t,subscribed:u,...o?{cardId:o}:{}}}}async function f(d,u){let{cardId:a}=g(d);return await I().setChatProcessing({cardId:a,active:u}),{status:"success",data:{boardId:e,cardId:a,active:u}}}async function i(d){let{cardId:u}=g(d),a=await I().getChatProcessing({cardId:u});return {status:"success",data:{boardId:e,cardId:u,active:a.active}}}async function m(d){let{cardId:u}=g(d),a=D(d);if(!Object.prototype.hasOwnProperty.call(d,"value"))throw Object.assign(new Error("MCP tool requires value"),{statusCode:400});if(a.split(".").includes("visible_controlplane_only")){let t=await B(r().get({params:{id:u}}),"cardStore.get"),o=Array.isArray(t.cards)&&t.cards.length>0&&typeof t.cards[0]=="object"&&!Array.isArray(t.cards[0])?t.cards[0]:null,R=o?q(o,"visible_controlplane_only").value:void 0;if(d.value!==R)throw Object.assign(new Error("MCP tool cannot change the reserved private flag visible_controlplane_only"),{statusCode:403});return {status:"success",data:{boardId:e,cardId:u,key:a}}}return j(await r().patch({params:{id:u,path:`__private.${a}`},body:{value:d.value}}),"cardStore.patch"),{status:"success",data:{boardId:e,cardId:u,key:a}}}async function _(d){let{cardId:u}=g(d),a=D(d),t=await B(r().get({params:{id:u}}),"cardStore.get"),o=Array.isArray(t.cards)&&t.cards.length>0&&t.cards[0]&&typeof t.cards[0]=="object"&&!Array.isArray(t.cards[0])?t.cards[0]:null;if(!o)throw Object.assign(new Error(`Card "${u}" not found`),{statusCode:404});let R=q(o,a);return {status:"success",data:{boardId:e,cardId:u,key:a,exists:R.exists,value:R.value}}}return {requireCardArgs:g,subscribeChat:b,unsubscribeChat:y,watchChannel:k,setChatProcessing:f,getChatProcessing:i,setCardMeta:m,getCardMeta:_}}function ee(s){let{boardId:e,boardContexts:n,readCardDefinitions:l,readChatRecords:h,getChatProcessing:v}=s;async function I(){let c=(await Promise.all(n.map(async f=>{try{let i=f.boardAdapter.kvStorageForRef(f.outputsStoreRef),m=await Promise.resolve(i.read("status"));if(m!=null)return m}catch{}return f.notification.status}))).filter(Boolean);if(c.length===0)return null;if(c.length===1)return c[0];let g=[],b=["completed","eligible","pending","blocked","unresolved","failed","in_progress","orphan_cards"],y={};for(let f of b)y[f]=0;for(let f of c){let i=f,m=Array.isArray(i.cards)?i.cards:[];g.push(...m);for(let _ of b)y[_]+=Number(i?.summary?.[_]||0);}let k=c[0];return {...k,cards:g,summary:{...k.summary||{},card_count:g.length,...y}}}async function r(){let c={},g=async b=>{try{let y=await b.boardOps.getAllOutputsComputedValues({});if(y.status==="success"&&y.data&&typeof y.data=="object"){for(let[k,f]of Object.entries(y.data)){let i=b.notification.cards[k];c[k]={schema_version:"v1",card_id:k,card_data:i?.card_data??{},computed_values:f??{}};}return}}catch{}for(let[y,k]of Object.entries(b.notification.computedValues)){let f=b.notification.cards[y];c[y]={schema_version:"v1",card_id:y,card_data:f?.card_data??{},computed_values:k??{}};}};for(let b of n)await g(b);return c}async function C(){let c={};for(let g of n){try{let b=await g.boardOps.getAllOutputsDataObjects({});if(b.status==="success"&&b.data&&typeof b.data=="object"){Object.assign(c,b.data);continue}}catch{}Object.assign(c,g.notification.dataObjects||{});}return c}async function w(){let c=await l(),g=await r(),b=await C(),y={};for(let f of c){if(!f?.id)continue;let i=f.id,m=g[i]||{},_={...m.card_data&&typeof m.card_data=="object"?m.card_data:f.card_data&&typeof f.card_data=="object"?f.card_data:{}};y[i]={schema_version:m.schema_version||"v1",card_id:m.card_id||i,card_data:_,computed_values:m.computed_values&&typeof m.computed_values=="object"?m.computed_values:{}};}let k={};for(let f of c){if(!f?.id)continue;let i=f.id;try{let m=await h(i),_=await v(i);(m.length>0||_)&&(k[i]={messages:m.map(d=>({role:String(d.role||"system"),text:String(d.text||""),files:Array.isArray(d.files)?d.files:[]})),receiving:!1,processing:_});}catch{}}return {boardId:e,cardDefinitions:c,statusSnapshot:await I(),dataObjectsByToken:b,cardRuntimeById:y,cardChatsByCardId:k}}return {readStatusSnapshot:I,readCardRuntimeArtifacts:r,readDataObjectsByToken:C,buildPublishedRuntimePayload:w}}function z(s){let e=String(s||"").trim();if(!e)return "upload.bin";let n=Math.max(e.lastIndexOf("/"),e.lastIndexOf("\\"));return (n>=0?e.slice(n+1):e)||"upload.bin"}function re(s){let{safeCardId:e,artifactsStores:n,cardFileMetadataStore:l,readCardFromStore:h,updateCardLocalOnly:v,writeChatRecord:I}=s;async function r(c){let g=[];try{let b=await h(c);if(!b)return g;let y=l().read(b.card_data&&typeof b.card_data=="object"?b.card_data:null);for(let k of y)g.push(String(k.stored_name??""));}catch{}return g}async function C(c,g,b,y){let k=e(c),f=n(c),i=z(g),m=await r(c),d=`${String(m.length+1).padStart(3,"0")}-${i}`.slice(-36);if(!f.files)throw Object.assign(new Error(`artifactsStoreRef is not configured for card uploads: ${c}`),{statusCode:500});return await f.files.putBytes(`${k}/${d}`,new Uint8Array(y),b||"application/octet-stream"),{name:i,stored_name:d,size:y.length,mime_type:b||"application/octet-stream",uploaded_at:new Date().toISOString()}}async function w(c,g,b,y,k){if(!y.length)throw Object.assign(new Error("Empty upload body"),{statusCode:400});let f=k?.inChat===true,i=await C(c,g,b,y),m=null;if(await v(c,_=>{let d=new Date().toISOString(),u=_.card_data&&typeof _.card_data=="object"?_.card_data:{};_.card_data=u;let a=l().normalizeIncoming([{name:i.name,stored_name:i.stored_name,size:i.size,mime_type:i.mime_type,uploaded_at:i.uploaded_at||d,chat:f}],d);return m=l().merge(u,a).findIndex(o=>o.stored_name===i.stored_name),_}),f&&k?.suppressChatRecordWrite!==true){let _=typeof m=="number"&&m>=0?` #${m}`:"";await I(c,"system",`file uploaded: ${i.name} as ${i.stored_name}${_}`,[],k?.turnId??"");}return {ok:true,file:{...i,...typeof m=="number"&&m>=0?{file_idx:m}:{},chat:f},...typeof m=="number"&&m>=0?{file_idx:m}:{}}}return {uploadCardFile:w,readCardStoredFileNames:r}}function se(s){return {"discover.source-kinds":()=>s.discoverSourceKinds(),"inspect.board-runtime-status":()=>s.inspectBoardRuntimeStatus(),"inspect.card-definition-and-runtime":e=>s.inspectCardDefinitionAndRuntime({cardId:chunkLPXVVMQT_cjs.a(e,"card_id")}),"inspect.chat-messages-on-cards":e=>{let n=chunkLPXVVMQT_cjs.b(e,"tail_turns"),l=chunkLPXVVMQT_cjs.b(e,"tail"),h=chunkLPXVVMQT_cjs.a(e,"turn_id"),v=e.all_turns===true,I=chunkLPXVVMQT_cjs.a(e,"tail_turns_before_id");return s.inspectChatMessagesOnCards({cardId:chunkLPXVVMQT_cjs.a(e,"card_id"),...n!==void 0?{lastUserTurns:n}:{},...l!==void 0?{tail:l}:{},...h?{turnId:h}:{},...v?{allTurns:true}:{},...I?{tailTurnsBeforeId:I}:{}})},"inspect.file-contents":e=>s.inspectFileContents({cardId:chunkLPXVVMQT_cjs.a(e,"card_id"),fileIdx:Number(chunkLPXVVMQT_cjs.b(e,"file_idx"))}),"preflight.validate-candidate-card-definition":e=>s.preflightValidateCandidateCardDefinition({candidateCardContent:chunkLPXVVMQT_cjs.d(e,"candidate_card_content","candidate_card_content")}),"preflight.materialize-candidate-card":e=>s.preflightMaterializeCandidateCard({candidateCardContent:chunkLPXVVMQT_cjs.d(e,"candidate_card_content","candidate_card_content"),mockRequires:chunkLPXVVMQT_cjs.d(e,"mock_requires","mock_requires"),mockFetchedSources:chunkLPXVVMQT_cjs.d(e,"mock_fetched_sources","mock_fetched_sources")}),"preflight.probe-single-source-in-candidate-card":e=>s.preflightProbeSingleSourceInCandidateCard({candidateCardContent:chunkLPXVVMQT_cjs.d(e,"candidate_card_content","candidate_card_content"),mockProjections:chunkLPXVVMQT_cjs.c(e,"mock_projections"),sourceIdx:chunkLPXVVMQT_cjs.e(e,"source_idx","source_idx")}),"preflight.run-single-source-in-candidate-card":e=>s.preflightRunSingleSourceInCandidateCard({candidateCardContent:chunkLPXVVMQT_cjs.d(e,"candidate_card_content","candidate_card_content"),mockProjections:chunkLPXVVMQT_cjs.c(e,"mock_projections"),sourceIdx:chunkLPXVVMQT_cjs.e(e,"source_idx","source_idx")}),"preflight.run-single-source-in-live-card":e=>s.preflightRunSingleSourceInLiveCard({cardId:chunkLPXVVMQT_cjs.a(e,"card_id"),sourceIdx:chunkLPXVVMQT_cjs.e(e,"source_idx","source_idx"),mockRequires:chunkLPXVVMQT_cjs.d(e,"mock_requires","mock_requires")}),"preflight.run-one-cycle-with-candidate-card":e=>s.preflightRunOneCycleWithCandidateCard({candidateCardContent:chunkLPXVVMQT_cjs.d(e,"candidate_card_content","candidate_card_content"),mockRequires:chunkLPXVVMQT_cjs.c(e,"mock_requires")}),"manage.read-card":e=>s.manageReadCard({cardId:chunkLPXVVMQT_cjs.a(e,"card_id")}),"stage-ai-response-and-any-attachments":e=>{let n=chunkLPXVVMQT_cjs.a(e,"turn_id");if(!n)throw Object.assign(new Error("stage-ai-response-and-any-attachments requires a non-empty turn_id"),{statusCode:400});return s.manageAddChatEntryAndAnyAttachments({cardId:chunkLPXVVMQT_cjs.a(e,"card_id"),role:"assistant",...typeof e.text=="string"?{text:e.text}:{},...n?{turn:n}:{},...Array.isArray(e.files)?{files:e.files}:{}})},"manage.upsert-card":e=>s.manageUpsertCard({cardId:chunkLPXVVMQT_cjs.a(e,"card_id"),candidateCardContent:chunkLPXVVMQT_cjs.c(e,"candidate_card_content")}),"manage.remove-card":e=>s.manageRemoveCard({cardId:chunkLPXVVMQT_cjs.a(e,"card_id")})}}function oe(s){return {"webhook.process-accumulated":()=>s.webhookProcessAccumulated(),"webhook.source-fetch-done":e=>s.webhookSourceFetchDone({token:chunkLPXVVMQT_cjs.a(e,"token"),ref:chunkLPXVVMQT_cjs.a(e,"ref")}),"webhook.source-fetch-failed":e=>s.webhookSourceFetchFailed({token:chunkLPXVVMQT_cjs.a(e,"token"),reason:chunkLPXVVMQT_cjs.a(e,"reason")})}}function de(s){let{boardId:e,uploadCardFile:n,getMcpFacade:l,controlplane:h}=s;function v(r,C){let w=chunkLPXVVMQT_cjs.a(r,"board_id");if(!w)throw Object.assign(new Error(`${C} requires board_id`),{statusCode:400});if(w!==e)throw Object.assign(new Error(`Unknown board_id: ${w}`),{statusCode:400})}function I(r,C){let{cardId:w}=h.requireCardArgs(r),c=chunkLPXVVMQT_cjs.a(r,"turn_id");return v(r,C),l().manageAddChatAttachment({cardId:w,role:chunkLPXVVMQT_cjs.a(r,"role")||"user",...c?{turn:c}:{},files:[{file_name:chunkLPXVVMQT_cjs.a(r,"file_name"),content_type:chunkLPXVVMQT_cjs.a(r,"content_type")||"application/octet-stream",...typeof r.text=="string"?{text:r.text}:{},...typeof r.base64=="string"?{base64:r.base64}:{},...Array.isArray(r.bytes)?{bytes:r.bytes}:{}}]})}return {"list-runtime-cards":r=>(v(r,"list-runtime-cards"),l().listRuntimeCards()),"sse.subscribe-chat":r=>h.subscribeChat(r),"sse.unsubscribe-chat":r=>h.unsubscribeChat(r),"sse.watch-channel":r=>h.watchChannel(r,true),"sse.unwatch-channel":r=>h.watchChannel(r,false),"getstate.is-chat-processing":r=>h.getChatProcessing(r),"setstate.chat-processing-started":r=>h.setChatProcessing(r,true),"setstate.chat-processing-done":r=>h.setChatProcessing(r,false),"getstate.card-private":r=>h.getCardMeta(r),"setstate.card-private":r=>h.setCardMeta(r),"manage.upload-card-file":r=>{let C=chunkLPXVVMQT_cjs.a(r,"card_id"),w=chunkLPXVVMQT_cjs.a(r,"file_name"),c=chunkLPXVVMQT_cjs.a(r,"content_type")||"application/octet-stream",g=chunkLPXVVMQT_cjs.f(r);if(v(r,"manage.upload-card-file"),!C)throw Object.assign(new Error("manage.upload-card-file requires card_id"),{statusCode:400});if(!w)throw Object.assign(new Error("manage.upload-card-file requires file_name"),{statusCode:400});if(!g)throw Object.assign(new Error("manage.upload-card-file requires args.bytes, args.text, or args.base64"),{statusCode:400});return n(C,w,c,g,{inChat:false})},"manage.add-chat-attachment":r=>I(r,"manage.add-chat-attachment"),"manage.add-chat-attachement":r=>I(r,"manage.add-chat-attachement"),"manage.add-chat-entry-and-any-attachments":r=>{let{cardId:C}=h.requireCardArgs(r),w=chunkLPXVVMQT_cjs.a(r,"role")||"user",c=chunkLPXVVMQT_cjs.a(r,"turn_id");return v(r,"manage.add-chat-entry-and-any-attachments"),l().manageAddChatEntryAndAnyAttachments({cardId:C,role:w,...typeof r.text=="string"?{text:r.text}:{},...c?{turn:c}:{},...Array.isArray(r.files)?{files:r.files}:{}})},"manage.patch-card":r=>{let{cardId:C}=h.requireCardArgs(r);return v(r,"manage.patch-card"),l().managePatchCard({cardId:C,patch:chunkLPXVVMQT_cjs.c(r,"patch")})},"manage.upsert-card":r=>{let{cardId:C}=h.requireCardArgs(r);return v(r,"manage.upsert-card"),l().manageUpsertCard({cardId:C,candidateCardContent:chunkLPXVVMQT_cjs.c(r,"candidate_card_content")})},"manage.remove-card":r=>{let{cardId:C}=h.requireCardArgs(r);return v(r,"manage.remove-card"),l().manageRemoveCard({cardId:C})},"manage.admin-read-card":async r=>{let{cardId:C}=h.requireCardArgs(r);return {status:"success",data:{cards:await l().adminReadCard({cardId:C})}}},"manage.admin-upsert-card":r=>{let C=chunkLPXVVMQT_cjs.a(r,"board_id"),w=chunkLPXVVMQT_cjs.a(r,"card_id");if(!C)throw Object.assign(new Error("manage.admin-upsert-card requires board_id"),{statusCode:400});if(!w)throw Object.assign(new Error("manage.admin-upsert-card requires card_id"),{statusCode:400});if(C!==e)throw Object.assign(new Error(`Unknown board_id: ${C}`),{statusCode:400});return l().adminUpsertCard({cardId:w,candidateCardContent:chunkLPXVVMQT_cjs.c(r,"candidate_card_content")})}}}function pe(s){let{boardContexts:e,cardOwnerIndex:n,cardContextForCard:l,readStatusSnapshot:h,readDataObjectsByToken:v,readCardRuntimeArtifacts:I,readCardFromStore:r,readCardDefinitions:C,processAccumulatedLaneInternal:w,reportSourceFetched:c,reportSourceFetchFailure:g,uploadCardFile:b,chatStorePublic:y,serverUrl:k,apiBasePath:f}=s;function i(){return e[0]??null}function m(){return {async status(){let a=await h();return a==null?{status:"fail",error:"Board status is unavailable"}:{status:"success",data:a}},async getOutputsDataObject(a){let t=a?.params?.key;return t?{status:"success",data:(await v())[t]}:{status:"fail",error:"getOutputsDataObject requires params.key"}},async getOutputsComputedValues(a){let t=a?.params?.key;return t?{status:"success",data:(await I())[t]?.computed_values}:{status:"fail",error:"getOutputsComputedValues requires params.key"}},async getOutputsFetchedSources(a){let t=a?.params?.key;if(!t)return {status:"fail",error:"getOutputsFetchedSources requires params.key"};let o=l(t)??i();return o?o.boardOps.getOutputsFetchedSources({params:{key:t}}):{status:"fail",error:"Board context is unavailable"}},async removeCard(a){let t=a?.params?.id;if(!t)return {status:"fail",error:"removeCard requires params.id"};let o=l(t)??i();return o?o.boardOps.removeCard({params:{id:t}}):{status:"fail",error:"Board context is unavailable"}},async cardRefreshedNotify(a){let t=a?.params?.cardId;if(!t)return {status:"fail",error:"cardRefreshedNotify requires params.cardId"};let o=l(t)??i();return o?o.boardOps.cardRefreshedNotify({params:{cardId:t}}):{status:"fail",error:"Board context is unavailable"}},async upsertCard(a){let t=a?.params?.cardId;if(!t)return {status:"fail",error:"upsertCard requires params.cardId"};let o=l(t)??i();if(!o)return {status:"fail",error:"Board context is unavailable"};let R=await o.boardOps.upsertCard({params:{cardId:t,restart:a.params.restart===true}});if(R.status!=="success")return R;if(chunkBQUQTOPB_cjs.a(o.boardAdapter)){let P=await w(true);if(P.status!=="success")return P}return R}}}function _(){let a=()=>{let t=i();if(!t?.nonCore)throw new Error("Board non-core adapter is not configured for MCP preflight/discovery tools");return t.nonCore};return {describeTaskExecutorCapabilities(t){return a().describeTaskExecutorCapabilities(t)},validateCardPreflight(t){return a().validateCardPreflight(t)},evalCardCompute(t){return a().evalCardCompute(t)},probeSourcePreflight(t){return a().probeSourcePreflight(t)},runSourcePreflight(t){return a().runSourcePreflight(t)},simulateCardCycle(t){return a().simulateCardCycle(t)}}}function d(){return {async get(a){let t=typeof a.params?.id=="string"?a.params.id:void 0;if(t){let o=await r(t);return o?{status:"success",data:{cards:[o]}}:{status:"success",data:{cards:[]}}}return {status:"success",data:{cards:await C()}}},async set(a){let t=a.body;if(t==null)return {status:"fail",error:"set requires a body (card object or array of cards)"};let o=Array.isArray(t)?t:[t];for(let R of o){let P=R,A=typeof P.id=="string"?P.id:"";if(!A)return {status:"fail",error:"each card must have a string `id` field"};let E=n.get(A)??0,N=e[E]??i();if(!N)return {status:"fail",error:"Board context is unavailable"};let T=await N.cardStoreOps.set({body:P});if(T.status!=="success")return T;n.set(A,E);}return {status:"success",data:{count:o.length}}},async del(a){let t=[a.params?.id,...a.body?.ids??[]].filter(o=>typeof o=="string"&&!!o);if(t.length===0)return {status:"fail",error:"del requires body.ids (string[]) or params.id"};for(let o of t){let R=l(o)??i();if(!R)return {status:"fail",error:"Board context is unavailable"};let P=await R.cardStoreOps.del({params:{id:o}});if(P.status!=="success")return P;n.delete(o);}return {status:"success",data:{count:t.length}}},async patch(a){let t=typeof a.params?.id=="string"?a.params.id:void 0,o=typeof a.params?.path=="string"?a.params.path:void 0;if(!t||!o)return {status:"fail",error:"patch requires params.id and params.path"};let R=l(t)??i();return R?R.cardStoreOps.patch(a):{status:"fail",error:"Board context is unavailable"}},async appendFiles(a){let t=typeof a.params?.id=="string"?a.params.id:void 0;if(!t)return {status:"fail",error:"appendFiles requires params.id"};let o=l(t)??i();return o?o.cardStoreOps.appendFiles(a):{status:"fail",error:"Board context is unavailable"}}}}function u(){return chunk7QZ267XP_cjs.a({board:m(),nonCore:_(),cardStore:d(),chatStore:y,processAccumulated:()=>w(true),sourceFetchDone:({token:a,ref:t})=>c(a,t),sourceFetchFailed:({token:a,reason:t})=>g(a,t),uploadCardFile({cardId:a,fileName:t,contentType:o,bytes:R,suppressChatRecordWrite:P}){return b(a,t,o,R,{inChat:true,...P===true?{suppressChatRecordWrite:true}:{}})},buildFileDownloadUrl({cardId:a,fileIdx:t,storedName:o}){let R=`${k||""}${f}/cards/${encodeURIComponent(a)}/files/${t}`;return o?`${R}?sn=${encodeURIComponent(o)}`:R},readFetchedSourceJsonByRef({cardId:a,ref:t}){let o=l(a)??i();if(!o||chunkBQUQTOPB_cjs.a(o.boardAdapter))return null;let A=o.boardAdapter.resolveBlob(chunkVQCIOKJV_cjs.b(t)).trim();return A?JSON.parse(A):null}})}return {mcpBoardFacade:m,mcpNonCoreFacade:_,mcpCardStoreFacade:d,createMcpFacade:u}}exports.a=W;exports.b=V;exports.c=H;exports.d=j;exports.e=B;exports.f=D;exports.g=q;exports.h=Q;exports.i=ee;exports.j=re;exports.k=se;exports.l=oe;exports.m=de;exports.n=pe;//# sourceMappingURL=chunk-ZK3E7L4Y.cjs.map
|
|
2
|
-
//# sourceMappingURL=chunk-ZK3E7L4Y.cjs.map
|