yaml-flow 8.6.1 → 8.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/browser/asset-integrity.json +3 -3
- package/examples/board/demo-shell-with-server.html +2 -2
- package/examples/board/doc.html +2 -2
- package/examples/board/server/board-server.js +544 -45
- package/examples/board/server-config.json +2 -1
- package/examples/board/test/server-http-test.js +12 -4
- package/examples/board-local/demo-shell-localstorage.html +3 -3
- package/lib/{artifacts-store-lib-CLOtsiav.d.cts → artifacts-store-lib-BR-Samty.d.cts} +1 -1
- package/lib/{artifacts-store-lib-C1rtrkxm.d.ts → artifacts-store-lib-DT7XlWUL.d.ts} +1 -1
- package/lib/artifacts-store-public.d.cts +3 -3
- package/lib/artifacts-store-public.d.ts +3 -3
- package/lib/board-live-cards-mcp.cjs +1 -1
- package/lib/board-live-cards-mcp.d.cts +56 -23
- package/lib/board-live-cards-mcp.d.ts +56 -23
- package/lib/board-live-cards-mcp.js +1 -1
- package/lib/board-live-cards-node.cjs +8 -8
- package/lib/board-live-cards-node.d.cts +39 -21
- package/lib/board-live-cards-node.d.ts +39 -21
- package/lib/board-live-cards-node.js +8 -8
- package/lib/{board-live-cards-public-CBVjm327.d.ts → board-live-cards-public-BMUIPOrc.d.ts} +67 -42
- package/lib/board-live-cards-public-async-DKZqbJVU.d.ts +256 -0
- package/lib/board-live-cards-public-async-dMWNbWq6.d.cts +256 -0
- package/lib/{board-live-cards-public-CPJy-aGW.d.cts → board-live-cards-public-wkNmBIRC.d.cts} +67 -42
- package/lib/board-live-cards-public.cjs +1 -1
- package/lib/board-live-cards-public.d.cts +2 -2
- package/lib/board-live-cards-public.d.ts +2 -2
- package/lib/board-live-cards-public.js +1 -1
- package/lib/board-live-cards-server-runtime.cjs +1 -1
- package/lib/board-live-cards-server-runtime.d.cts +7 -6
- package/lib/board-live-cards-server-runtime.d.ts +7 -6
- package/lib/board-live-cards-server-runtime.js +1 -1
- package/lib/board-worker-adapter.cjs +4 -3
- package/lib/board-worker-adapter.d.cts +24 -14
- package/lib/board-worker-adapter.d.ts +24 -14
- package/lib/board-worker-adapter.js +4 -3
- package/lib/card-store-public.d.cts +2 -2
- package/lib/card-store-public.d.ts +2 -2
- package/lib/{chat-storage-lib-CKylihjm.d.cts → chat-storage-lib-BIUbE-fM.d.cts} +1 -1
- package/lib/{chat-storage-lib-Bce-xx6l.d.ts → chat-storage-lib-BlG-sobS.d.ts} +1 -1
- package/lib/chat-store-public.d.cts +3 -3
- package/lib/chat-store-public.d.ts +3 -3
- package/lib/{chunk-CWREBRXS.js → chunk-BQS3EIEK.js} +3 -3
- package/lib/{chunk-LDAP75GN.js → chunk-CIAJNUR4.js} +2 -2
- package/lib/chunk-GJJMEAVN.cjs +2 -0
- package/lib/chunk-H5HBXPOI.cjs +3 -0
- package/lib/chunk-HEEDJEKM.js +2 -0
- package/lib/chunk-KQX6R4PV.cjs +8 -0
- package/lib/chunk-MLVTJASJ.js +2 -0
- package/lib/chunk-N6P2JW4W.js +3 -0
- package/lib/chunk-OEFTOO47.cjs +3 -0
- package/lib/chunk-OSWJKJLB.js +8 -0
- package/lib/chunk-PBCDDO4V.cjs +2 -0
- package/lib/{chunk-I4WH5U5D.cjs → chunk-PMUSJQSR.cjs} +2 -2
- package/lib/chunk-SCWHDI3I.js +2 -0
- package/lib/{chunk-UVE65IPR.cjs → chunk-SFVO2LB2.cjs} +3 -3
- package/lib/{chunk-5DB54ZX2.cjs → chunk-U2N6MCD5.cjs} +2 -2
- package/lib/chunk-VMW4Z6EF.js +3 -0
- package/lib/chunk-WOALA3V5.cjs +2 -0
- package/lib/{chunk-LBMEVV4U.js → chunk-XQRNDX4Q.js} +2 -2
- package/lib/cloud-storage.cjs +2 -0
- package/lib/cloud-storage.d.cts +177 -0
- package/lib/cloud-storage.d.ts +177 -0
- package/lib/cloud-storage.js +2 -0
- package/lib/execution-refs.cjs +1 -1
- package/lib/execution-refs.js +1 -1
- package/lib/index.cjs +2 -2
- package/lib/index.d.cts +1 -1
- package/lib/index.d.ts +1 -1
- package/lib/index.js +1 -1
- package/lib/{types-DRl0Hy_p.d.cts → queue-lane-registry-BPKWWgd4.d.cts} +66 -14
- package/lib/{types-BuK2UMxk.d.ts → queue-lane-registry-Be6c0ftj.d.ts} +66 -14
- package/lib/server-runtime/index.cjs +1 -1
- package/lib/server-runtime/index.d.cts +18 -7
- package/lib/server-runtime/index.d.ts +18 -7
- package/lib/server-runtime/index.js +1 -1
- package/lib/step-machine-public/index.cjs +1 -1
- package/lib/step-machine-public/index.d.cts +1 -1
- package/lib/step-machine-public/index.d.ts +1 -1
- package/lib/step-machine-public/index.js +1 -1
- package/lib/{storage-interface-Ct-C4tlz.d.cts → storage-interface-BFiD3kyB.d.cts} +11 -1
- package/lib/{storage-interface-Ct-C4tlz.d.ts → storage-interface-BFiD3kyB.d.ts} +11 -1
- package/lib/stores/index.cjs +1 -1
- package/lib/stores/index.d.cts +1 -1
- package/lib/stores/index.d.ts +1 -1
- package/lib/stores/index.js +1 -1
- package/lib/stores/kv.d.cts +1 -1
- package/lib/stores/kv.d.ts +1 -1
- package/package.json +6 -1
- package/lib/chunk-6APH25VI.js +0 -2
- package/lib/chunk-KNFFDVLD.cjs +0 -2
- package/lib/chunk-LVNQCE5X.cjs +0 -3
- package/lib/chunk-M7EQRS6W.js +0 -3
- package/lib/chunk-NJJ7WEDT.cjs +0 -2
- package/lib/chunk-P64UKI3L.cjs +0 -8
- package/lib/chunk-Q6VSL327.js +0 -8
- package/lib/chunk-VCCTAUIG.js +0 -2
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
'use strict';var
|
|
1
|
+
'use strict';var chunkWOALA3V5_cjs=require('./chunk-WOALA3V5.cjs'),chunkPMUSJQSR_cjs=require('./chunk-PMUSJQSR.cjs');require('./chunk-PBCDDO4V.cjs');var chunkOEFTOO47_cjs=require('./chunk-OEFTOO47.cjs'),chunkU2N6MCD5_cjs=require('./chunk-U2N6MCD5.cjs'),chunkSFVO2LB2_cjs=require('./chunk-SFVO2LB2.cjs');require('./chunk-G4XXRHL2.cjs'),require('./chunk-LODXIALE.cjs');var chunkGJJMEAVN_cjs=require('./chunk-GJJMEAVN.cjs');require('./chunk-IXZG74EW.cjs');var chunkNMZ6XNLB_cjs=require('./chunk-NMZ6XNLB.cjs');require('./chunk-UJ7ZTV4J.cjs');var chunkYMEIPKLW_cjs=require('./chunk-YMEIPKLW.cjs'),chunkP7ZCDICS_cjs=require('./chunk-P7ZCDICS.cjs');require('./chunk-GNFE24S7.cjs');var child_process=require('child_process'),a=require('fs'),Ee=require('os'),y=require('path'),Te=require('net'),url=require('url'),crypto=require('crypto'),module$1=require('module'),properLockfile=require('proper-lockfile');var _documentCurrentScript=typeof document!=='undefined'?document.currentScript:null;function _interopNamespace(e){if(e&&e.__esModule)return e;var n=Object.create(null);if(e){Object.keys(e).forEach(function(k){if(k!=='default'){var d=Object.getOwnPropertyDescriptor(e,k);Object.defineProperty(n,k,d.get?d:{enumerable:true,get:function(){return e[k]}});}})}n.default=e;return Object.freeze(n)}var a__namespace=/*#__PURE__*/_interopNamespace(a);var Ee__namespace=/*#__PURE__*/_interopNamespace(Ee);var y__namespace=/*#__PURE__*/_interopNamespace(y);var Te__namespace=/*#__PURE__*/_interopNamespace(Te);function b(...e){return y__namespace.join(...e)}function Be(e){return y__namespace.isAbsolute(e)}function X(){return crypto.randomUUID()}function Ie(e){return crypto.createHash("sha256").update(e).digest("hex")}function Ce(e){return y__namespace.dirname(url.fileURLToPath(e))}function wt(e){if(typeof e=="object"&&e!==null){let{command:r,args:n=[],...o}=e,s=Ae(r,n);return {...o,command:s.command,args:s.args}}let t=Fe(e);if(t.length===0)throw new Error(`Empty command spec: ${JSON.stringify(e)}`);return Ae(t[0],t.slice(1))}function Ae(e,t){return /^(node|node\.exe)$/i.test(e)?{command:process.execPath,args:t}:/\.m?js$/i.test(e)?{command:process.execPath,args:[e,...t]}:{command:e,args:t}}function Fe(e){let t=[],r="",n=null;for(let o of e.trim()){if(n){o===n?n=null:r+=o;continue}if(o==='"'||o==="'"){n=o;continue}if(/\s/.test(o)){r&&(t.push(r),r="");continue}r+=o;}if(n)throw new Error(`Unterminated quote in command: ${e}`);return r&&t.push(r),t}function Me(e){return process.platform==="win32"&&/\.(cmd|bat)$/i.test(e)}function je(e,t){let{command:r,args:n=[],cwd:o,env:s,timeoutMs:u}=e;return child_process.execFileSync(r,n,{shell:Me(r),timeout:u,encoding:t?.encoding??"utf-8",cwd:o,windowsHide:true,env:s?{...process.env,...s}:void 0,input:t?.input})}function kt(e,t){let{command:r,args:n=[],cwd:o,env:s,timeoutMs:u=3e4}=e;child_process.execFile(r,n,{shell:Me(r),encoding:"utf8",windowsHide:true,timeout:u,maxBuffer:10*1024*1024,cwd:o,env:s?{...process.env,...s}:void 0},(l,g,i)=>t(l??null,g,i));}function $e(e,t,r){let n=y__namespace.join(e,"board-live-cards-cli.js");if(a__namespace.existsSync(n))return {cmd:process.execPath,args:[n,t,...r]};let o=y__namespace.join(e,"board-live-cards-cli.ts"),u=[y__namespace.join(e,"..","..","..","node_modules","tsx","dist","cli.mjs"),y__namespace.join(e,"..","..","node_modules","tsx","dist","cli.mjs"),y__namespace.join(e,"..","..","..","node_modules",".bin","tsx"),y__namespace.join(e,"..","..","node_modules",".bin","tsx")].find(g=>a__namespace.existsSync(g));return a__namespace.existsSync(o)&&u?{cmd:process.execPath,args:[u,o,t,...r]}:{cmd:process.platform==="win32"?"npx.cmd":"npx",args:["tsx",o,t,...r]}}function Pe(e){let t=y__namespace.join(e,"board-live-cards-cli.mjs");if(a__namespace.existsSync(t))return t;let r=y__namespace.join(e,"..","..","..","dev","board-live-cards-cli.js");if(a__namespace.existsSync(r))return r;let n=y__namespace.join(e,"..","..","dev","board-live-cards-cli.js");if(a__namespace.existsSync(n))return n;let o=y__namespace.join(e,"board-live-cards-cli.js");if(a__namespace.existsSync(o))return o;throw new Error(`resolveBoardCliCallbackTarget: cannot find callback target in ${e} (expected dev/board-live-cards-cli.js wrapper, ${o}, or ${t})`)}function vt(e){return process.platform==="win32"?`\\\\.\\pipe\\${e}`:y__namespace.join(Ee__namespace.tmpdir(),`${e}.sock`)}var Z=new Map;function Le(e,t,r){if(t.length===0)return;let n=t.map(l=>JSON.stringify(l)).join(`
|
|
2
2
|
`)+`
|
|
3
|
-
`,o=D.get(e);if(o&&!o.socket.destroyed){o.ready?o.socket.write(s):o.queue.push(s);return}let u=mt(e),i=ve__namespace.createConnection(u);o={socket:i,ready:false,queue:[s]},D.set(e,o),i.on("connect",()=>{o.ready=true;for(let l of o.queue)i.write(l);o.queue.length=0;}),i.on("error",l=>{r?.(`[named-pipe publish] ${u}: ${l instanceof Error?l.message:String(l)}`),D.delete(e);}),i.on("close",()=>{D.delete(e);});}function je(){return {executeSync(e,t,r){return Be({command:e,args:t,cwd:r?.cwd,timeoutMs:r?.timeout,env:r?.env},{encoding:r?.encoding,input:r?.input})},executeAsync(e,t,r){gt({command:e,args:t},r);},resolveInvocation(e,t){let r=pt({command:e,args:t});return {cmd:r.command,args:r.args??[]}},splitCommand:Te,spawnDetached(e,t){H({command:e,args:t});}}}var yt=module$1.createRequire((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('board-live-cards-node.cjs', document.baseURI).href)));function Rt(e){return typeof e=="object"?e:chunkUVE65IPR_cjs.b(e)}function $e(e){let t=h__namespace.basename(String(e||"").trim());if(!t)throw new Error(`resolveYamlFlowCliPath: expected non-empty cli file name, got ${JSON.stringify(e)}`);let r=h__namespace.dirname(yt.resolve("yaml-flow/package.json")),s=t.replace(/\.[^.]+$/,""),o=h__namespace.join(r,"cli","bundled",`${s}.mjs`);if(a__namespace.existsSync(o))return o;let u=h__namespace.join(r,"cli","node",t);if(a__namespace.existsSync(u))return u;throw new Error(`resolveYamlFlowCliPath: could not find ${t} under cli/bundled or cli/node in ${r}`)}function C(e){let t=Rt(e);return t.kind==="yaml-flow-cli"?$e(t.value):t.value}function St(e,t){let r=C(e);switch(r){case "source-cli-task-executor":{let s=h__namespace.join(t,"source-cli-task-executor.js");if(a__namespace.existsSync(s))return {command:process.execPath,args:[s]};let o=h__namespace.join(t,"source-cli-task-executor.ts"),u=h__namespace.join(t,"..","..","node_modules","tsx","dist","cli.mjs"),i=h__namespace.join(t,"..","..","node_modules",".bin","tsx"),l=a__namespace.existsSync(u)?u:i;return a__namespace.existsSync(o)&&a__namespace.existsSync(l)?{command:process.execPath,args:[l,o]}:{command:process.execPath,args:[s]}}case "board-live-cards":{let{cmd:s,args:o}=ae(t,"_",[]);return {command:s,args:o}}default:throw new Error(`resolveBuiltIn: unknown built-in name "${r}". Supported: source-cli-task-executor, board-live-cards`)}}function Pe(e,t){if(e.howToRun==="built-in"){let{command:s,args:o}=St(e.whatToRun,t);return {command:s,baseArgs:o}}let r=(typeof e.whatToRun=="object",C(e.whatToRun));switch(e.howToRun){case "local-node":return {command:process.execPath,baseArgs:[r]};case "local-python":return {command:process.platform==="win32"?"python":"python3",baseArgs:[r]};case "local-process":return {command:r,baseArgs:[]};default:throw new Error(`resolveBaseInvocation: howToRun "${e.howToRun}" is not a local transport`)}}function xt(e,t){let r=[e.subcommand];return e.inRef&&r.push("--in-ref",e.inRef),e.outRef&&r.push("--out-ref",e.outRef),e.errRef&&r.push("--err-ref",e.errRef),t&&r.push("--extra",Buffer.from(JSON.stringify(t)).toString("base64")),r}function K(e,t){return Pe(e,t)}var ue=new Map;function wt(e,t){let r=String(e||"").trim();if(!r)throw new Error("registerInProcessExecutionHandler: key is required");ue.set(r,t);}function kt(e){let t=String(e||"").trim();t&&ue.delete(t);}function Me(e){let t=e.trim();if(!t)throw new Error("empty stdout");try{return JSON.parse(t)}catch{let r=t.split(/\r?\n/).filter(Boolean),s=r[r.length-1];return JSON.parse(s)}}function qe(e,t){return {...t,whatToRun:C(e.whatToRun),...e.extra?{extra:e.extra}:{}}}function de(e,t,r="invokeExecutionRef"){return chunkI4WH5U5D_cjs.a(e,t,r)}function Oe(e,t){if(e&&typeof e=="object"&&!Array.isArray(e)&&typeof e.result=="string"&&e.data&&typeof e.data=="object"&&!Array.isArray(e.data))return {...e,...t||{}};if(e&&typeof e=="object"&&!Array.isArray(e)&&typeof e.status=="string"){let s=e,o=s.status==="success"?"success":s.status==="fail"?"failure":s.status,u=s.data&&typeof s.data=="object"&&!Array.isArray(s.data)?s.data:s.data===void 0?{}:{stdout:s.data};return {result:o,data:u,...typeof s.error=="string"?{error:s.error}:{},...t||{}}}return {result:"success",data:e&&typeof e=="object"&&!Array.isArray(e)?e:{stdout:e},...t||{}}}function I(e){return {result:"failure",data:{error:e}}}function $(e,t,r){let s=r?.label??"invokeExecutionRefSync",o=r?.cliDir??r?.cwd??process.cwd(),u;try{u=de(e.argsMassaging,qe(e,t),s);}catch(d){let f=d instanceof Error?d.message:String(d);return I(f)}let i;try{i=K(e,o);}catch(d){let f=d instanceof Error?d.message:String(d);return I(`[${s}] ref resolution failed: ${f}`)}let l=[...i.baseArgs,...u.cmdArgs??[]],g=JSON.stringify(u.stdin??t),c=je(),n;try{n=c.executeSync(i.command,l,{timeout:r?.timeoutMs??3e4,encoding:"utf-8",cwd:r?.cwd,input:g});}catch(d){let f=d,m=(f.stderr?String(f.stderr):"").trim(),p=typeof f.status=="number"?f.status:"unknown",y=m||f.message;return I(`[${s}] ref exited with status ${p}${y?`: ${y}`:""}`)}try{return Oe(Me(n))}catch{return {result:"success",data:{stdout:n.trim()}}}}async function Fe(e,t,r){let s=r?.label??"invokeExecutionRef",o;try{o=de(e.argsMassaging,qe(e,t),s);}catch(d){let f=d instanceof Error?d.message:String(d);return I(f)}let u=C(e.whatToRun),i=o.headers?{"Content-Type":"application/json",...o.headers}:{"Content-Type":"application/json"},l=o.url??u,g;if(e.howToRun==="http:get"){let d=o.body&&typeof o.body=="object"&&!Array.isArray(o.body)?o.body:t,f=new URLSearchParams(Object.entries(d).filter(([,m])=>m!=null).map(([m,p])=>[m,String(p)]));f.size>0&&(l=`${l}${l.includes("?")?"&":"?"}${f.toString()}`);}else g=JSON.stringify(o.body??t);let c={method:e.howToRun==="http:get"?"GET":"POST",headers:i,body:g},n=0;for(;;)try{let d=await fetch(l,c);if(!d.ok){let y=await d.text().catch(()=>"");return I(`[${s}] HTTP ${d.status}${y?`: ${y}`:""}`)}let f={};d.headers.forEach((y,R)=>{f[R]=y;});let m=new Uint8Array(await d.arrayBuffer());if(m.byteLength===0)return {result:"success",data:{},headers:f};let p=new TextDecoder().decode(m);try{return Oe(Me(p),{headers:f})}catch{return {result:"success",data:{stdout:p},headers:f}}}catch(d){let f=d?.cause,m=f&&typeof f=="object"&&"code"in f?String(f.code||""):"";if((m==="ECONNRESET"||m==="UND_ERR_SOCKET")&&n===0){n+=1;continue}let y=d instanceof Error?d.message:String(d),R=f instanceof Error?`${f.name}: ${f.message}${m?` [${m}]`:""}`:f?String(f):"",S=o.url??u??"",v=`${y}${R?` (cause: ${R})`:""}${S?` url=${S}`:""}`;return I(`[${s}] ${v}`)}}async function vt(e,t,r){let s=r?.label??"invokeExecutionRef",o=C(e.whatToRun).trim();if(!o)return I(`[${s}] in-process-loop requires a non-empty handler key`);let u=ue.get(o);if(!u)return I(`[${s}] no in-process handler registered for: ${o}`);try{return await u(e,t,r)}catch(i){let l=i instanceof Error?i.message:String(i);return I(`[${s}] ${l}`)}}var bt={"local-node":async(e,t,r)=>$(e,t,r),"local-python":async(e,t,r)=>$(e,t,r),"local-process":async(e,t,r)=>$(e,t,r),"built-in":async(e,t,r)=>$(e,t,r),"http:post":Fe,"http:get":Fe,"in-process-loop":vt},At={"local-node":$,"local-python":$,"local-process":$,"built-in":$};async function L(e,t,r){let s=r?.transports?.[e.howToRun]??bt[e.howToRun];return s?s(e,t,r):I(`[${r?.label??"invokeExecutionRef"}] unsupported howToRun: ${e.howToRun}`)}function le(e,t,r){let s=r?.syncTransports?.[e.howToRun]??At[e.howToRun];return s?s(e,t,r):I(`[${r?.label??"invokeExecutionRefSync"}] unsupported sync howToRun: ${e.howToRun}`)}function Et(e){return {invoke(t,r){return L(t,r,e)},invokeSync(t,r){return le(t,r,e)}}}function Tt(e,t,r){return le(e,t,r)}function Le(e,t,r){if(e.howToRun==="http:post"||e.howToRun==="http:get"||e.howToRun==="in-process-loop"){L(e,t,{cliDir:r,cwd:process.cwd(),label:"dispatchTaskExecutorDetached"}).then(l=>{if(l.result!=="success"){let g=typeof l.data?.error=="string"?l.data.error:l.error;console.error(`[dispatchTaskExecutorDetached] dispatch failed: ${g||l.result}`);}}).catch(l=>{console.error(`[dispatchTaskExecutorDetached] async dispatch failed: ${l.message}`);});return}let{command:o,baseArgs:u}=Pe(e,r),i=xt(t,e.extra);H({command:o,args:[...u,...i]});}function fe(e){return {messageId:e.id,enqueuedAt:e.enqueuedAt,attempt:e.attempt,request:e.body}}function Bt(e){return {...fe(e),leaseToken:e.leaseToken,leaseExpiresAt:e.leaseExpiresAt}}function It(e){return {...fe(e),reason:e.reason}}function U(e){return {enqueueRequest(t){return e.enqueue(t).id},leaseRequests(t){return e.lease(t).map(Bt)},ackRequest(t,r){return e.ack(t,r)},nackRequest(t,r,s){return e.nack(t,r,s)},peekActive(){return e.peekActive().map(fe)},peekDeadLetter(){return e.peekDeadLetter().map(It)}}}function E(e,t){if(process.platform!=="win32"){a__namespace.renameSync(e,t);return}let r=[10,20,40,80,160];for(let s=0;s<=r.length;s++)try{a__namespace.renameSync(e,t);return}catch(o){let u=o.code;if((u==="EPERM"||u==="EBUSY")&&s<r.length){Atomics.wait(new Int32Array(new SharedArrayBuffer(4)),0,0,r[s]);continue}throw o}}function W(e){function t(o){return h__namespace.join(e,...o.split("/"))}function r(o){return h__namespace.relative(e,o).replace(/\\/g,"/")}function s(o,u){if(a__namespace.existsSync(o))for(let i of a__namespace.readdirSync(o,{withFileTypes:true})){let l=h__namespace.join(o,i.name);if(i.isDirectory()){s(l,u);continue}i.isFile()&&u.push(r(l));}}return {read(o){let u=t(o);if(!a__namespace.existsSync(u))return null;try{return a__namespace.readFileSync(u,"utf-8")}catch{return null}},write(o,u){let i=t(o),l=`${i}.${process.pid}.${crypto.randomUUID()}.tmp`;a__namespace.mkdirSync(h__namespace.dirname(i),{recursive:true}),a__namespace.writeFileSync(l,u,"utf-8"),E(l,i);},exists(o){return a__namespace.existsSync(t(o))},remove(o){let u=t(o);try{a__namespace.existsSync(u)&&a__namespace.unlinkSync(u);}catch{}},readBytes(o){let u=t(o);if(!a__namespace.existsSync(u))return null;try{return new Uint8Array(a__namespace.readFileSync(u))}catch{return null}},writeBytes(o,u){let i=t(o),l=`${i}.${process.pid}.${crypto.randomUUID()}.tmp`;a__namespace.mkdirSync(h__namespace.dirname(i),{recursive:true}),a__namespace.writeFileSync(l,Buffer.from(u)),E(l,i);},listKeys(o){let u=[];s(e,u);let i=u.sort();return o?i.filter(l=>l.startsWith(o)):i},stat(o){let u=t(o);if(!a__namespace.existsSync(u))return null;try{let i=a__namespace.statSync(u);return {key:o,size:Number(i.size||0),updatedAt:new Date(i.mtimeMs).toISOString()}}catch{return null}},keyRef(o){return {kind:"fs-path",value:t(o)}}}}function he(){return {read(e){if(!a__namespace.existsSync(e))return null;try{return a__namespace.readFileSync(e,"utf-8")}catch{return null}},write(e,t){let r=`${e}.${process.pid}.${crypto.randomUUID()}.tmp`;a__namespace.mkdirSync(h__namespace.dirname(e),{recursive:true}),a__namespace.writeFileSync(r,t,"utf-8"),E(r,e);},exists(e){return a__namespace.existsSync(e)},remove(e){try{a__namespace.existsSync(e)&&a__namespace.unlinkSync(e);}catch{}},readBytes(e){if(!a__namespace.existsSync(e))return null;try{return new Uint8Array(a__namespace.readFileSync(e))}catch{return null}},writeBytes(e,t){let r=`${e}.${process.pid}.${crypto.randomUUID()}.tmp`;a__namespace.mkdirSync(h__namespace.dirname(e),{recursive:true}),a__namespace.writeFileSync(r,Buffer.from(t)),E(r,e);},stat(e){if(!a__namespace.existsSync(e))return null;try{let t=a__namespace.statSync(e);return {key:e,size:Number(t.size||0),updatedAt:new Date(t.mtimeMs).toISOString()}}catch{return null}},listKeys(e){return []}}}function N(e,t){let r=`${e}.${process.pid}.${crypto.randomUUID()}.tmp`;a__namespace.mkdirSync(h__namespace.dirname(e),{recursive:true}),a__namespace.writeFileSync(r,JSON.stringify(t,null,2),"utf-8"),E(r,e);}function _(e){if(!a__namespace.existsSync(e))return null;try{return JSON.parse(a__namespace.readFileSync(e,"utf-8"))}catch{return null}}function V(e){return a__namespace.existsSync(e)?a__namespace.readdirSync(e).filter(t=>t.endsWith(".json")).sort().map(t=>h__namespace.join(e,t)):[]}function Y(e){return {id:e.id,body:e.body,enqueuedAt:e.enqueuedAt,attempt:e.attempt}}function Ft(e){return {...Y(e),leaseToken:String(e.leaseToken||""),leaseExpiresAt:String(e.leaseExpiresAt||"")}}function $t(e){return {...Y(e),reason:e.reason}}function X(e){let t=h__namespace.join(e,"active"),r=h__namespace.join(e,"leased"),s=h__namespace.join(e,"done"),o=h__namespace.join(e,"dead");for(let n of [t,r,s,o])a__namespace.mkdirSync(n,{recursive:true});function u(n){let d=String(n.enqueuedAt||new Date().toISOString()).replace(/[:.]/g,"-");return h__namespace.join(t,`${d}-${n.id}.json`)}function i(n){return h__namespace.join(r,`${n}.json`)}function l(n){return h__namespace.join(s,`${n}.json`)}function g(n){return h__namespace.join(o,`${n}.json`)}function c(){let n=Date.now();for(let d of V(r)){let f=_(d);if(!f?.leaseExpiresAt)continue;let m=Date.parse(f.leaseExpiresAt);if(Number.isNaN(m)||m>n)continue;let p={id:f.id,body:f.body,enqueuedAt:f.enqueuedAt,attempt:f.attempt};N(u(p),p);try{a__namespace.unlinkSync(d);}catch{}}}return {enqueue(n){let d={id:crypto.randomUUID(),body:n,enqueuedAt:new Date().toISOString(),attempt:0};return N(u(d),d),Y(d)},lease(n){c();let d=Math.max(1,Math.floor(n?.max??1)),f=Math.max(1,Math.floor(n?.visibilityMs??6e4)),m=[];for(let p of V(t)){if(m.length>=d)break;let y=_(p);if(!y)continue;let R=i(y.id);try{E(p,R);}catch{continue}let S={...y,attempt:(Number(y.attempt)||0)+1,leaseToken:crypto.randomUUID(),leaseExpiresAt:new Date(Date.now()+f).toISOString()};N(R,S),m.push(Ft(S));}return m},ack(n,d){let f=i(n),m=_(f);if(!m||m.leaseToken!==d)return false;try{E(f,l(n));}catch{return false}return true},nack(n,d,f){let m=i(n),p=_(m);if(!p||p.leaseToken!==d)return false;let y={id:p.id,body:p.body,enqueuedAt:p.enqueuedAt,attempt:p.attempt};f?.dead?(y.reason=f.reason,N(g(n),y)):N(u(y),y);try{a__namespace.unlinkSync(m);}catch{}return true},peekActive(n){return c(),V(t).map(d=>_(d)).filter(d=>!!d).map(Y)},peekDeadLetter(n){return V(o).map(d=>_(d)).filter(d=>!!d).map($t)}}}var pe="__scratch-marker",ge="__scratch-config.json",Pt=1440*60*1e3,Mt=720*60*1e3,qt=500;function _e(e,t){if(!e)return t;let r=e.replace(/[^A-Za-z0-9._-]/g,"_");return r.length>0?r:t}function J(e){a__namespace.mkdirSync(e,{recursive:true});let t=h__namespace.join(e,pe),r=h__namespace.join(e,ge),s=!a__namespace.existsSync(t);if(s)try{a__namespace.writeFileSync(t,`scratch-store
|
|
3
|
+
`,o=Z.get(e);if(o&&!o.socket.destroyed){o.ready?o.socket.write(n):o.queue.push(n);return}let s=vt(e),u=Te__namespace.createConnection(s);o={socket:u,ready:false,queue:[n]},Z.set(e,o),u.on("connect",()=>{o.ready=true;for(let l of o.queue)u.write(l);o.queue.length=0;}),u.on("error",l=>{r?.(`[named-pipe publish] ${s}: ${l instanceof Error?l.message:String(l)}`),Z.delete(e);}),u.on("close",()=>{Z.delete(e);});}function qe(){return {executeSync(e,t,r){return je({command:e,args:t,cwd:r?.cwd,timeoutMs:r?.timeout,env:r?.env},{encoding:r?.encoding,input:r?.input})},executeAsync(e,t,r){kt({command:e,args:t},r);},resolveInvocation(e,t){let r=wt({command:e,args:t});return {cmd:r.command,args:r.args??[]}},splitCommand:Fe}}function fe(e){return {id:e.id??"board-worker",pollIntervalMs:e.pollIntervalMs,visibilityMs:e.visibilityMs,concurrency:e.concurrency,maxAttempts:e.maxAttempts,async lease(t){return e.workerStore.leaseRequests(t).map(r=>({id:r.messageId,attempt:r.attempt,message:r.request,ack:()=>e.workerStore.ackRequest(r.messageId,r.leaseToken),nack:n=>e.workerStore.nackRequest(r.messageId,r.leaseToken,n)}))},async handle(t){await e.handleRequest(t.args,t);},onError:e.onError}}function pe(e){return {id:e.id,pollIntervalMs:e.pollIntervalMs,visibilityMs:e.visibilityMs,concurrency:e.concurrency,maxAttempts:e.maxAttempts,async lease(t){return e.queueStorage.lease(t).map(r=>({id:r.id,attempt:r.attempt,message:r.body,ack:()=>e.queueStorage.ack(r.id,r.leaseToken),nack:n=>e.queueStorage.nack(r.id,r.leaseToken,n)}))},handle:e.handleMessage,onError:e.onError}}async function Oe(e,t){try{await e.handle(t.message,t),await t.ack();}catch(r){let n=t.attempt>=Math.max(1,Math.floor(e.maxAttempts??5));await t.nack({dead:n,reason:r instanceof Error?r.message:String(r)}),e.onError?.(r,t);}}function Qe(e){let t=Math.max(1,Math.floor(e.pollIntervalMs??250)),r=Math.max(1,Math.floor(e.visibilityMs??6e4)),n=Math.max(1,Math.floor(e.concurrency??1)),o=false,s=false;async function u(){if(!(o||s)){s=true;try{let g=await e.lease({max:n,visibilityMs:r});for(let i of g)await Oe(e,i);}finally{s=false;}}}let l=setInterval(()=>{u();},t);return typeof l.unref=="function"&&l.unref(),u(),()=>{o=true,clearInterval(l);}}async function bt(e){let t=Math.max(1,Math.floor(e.visibilityMs??6e4)),r=Math.max(1,Math.floor(e.concurrency??1)),n=await e.lease({max:r,visibilityMs:t});for(let o of n)await Oe(e,o);return n.length}async function ee(e,t){let r=Math.max(1,Math.floor(t?.maxPasses??256)),n=0;for(let o=0;o<r;o+=1){let s=await bt(e);if(n+=s,s<=0)return n}throw new Error(`drainQueueLaneToIdle exceeded ${r} passes for lane "${e.id}"`)}function At(e){let r=(Array.isArray(e)?e:e.lanes).map(n=>Qe(n));return ()=>{for(let n of r)n();}}var Tt=module$1.createRequire((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('board-live-cards-node.cjs', document.baseURI).href)));function Bt(e){return typeof e=="object"?e:chunkSFVO2LB2_cjs.b(e)}function Ne(e){let t=y__namespace.basename(String(e||"").trim());if(!t)throw new Error(`resolveYamlFlowCliPath: expected non-empty cli file name, got ${JSON.stringify(e)}`);let r=y__namespace.dirname(Tt.resolve("yaml-flow/package.json")),n=t.replace(/\.[^.]+$/,""),o=y__namespace.join(r,"cli","bundled",`${n}.mjs`);if(a__namespace.existsSync(o))return o;let s=y__namespace.join(r,"cli","node",t);if(a__namespace.existsSync(s))return s;throw new Error(`resolveYamlFlowCliPath: could not find ${t} under cli/bundled or cli/node in ${r}`)}function $(e){let t=Bt(e);return t.kind==="yaml-flow-cli"?Ne(t.value):t.value}function It(e,t){let r=$(e);switch(r){case "source-cli-task-executor":{let n=y__namespace.join(t,"source-cli-task-executor.js");if(a__namespace.existsSync(n))return {command:process.execPath,args:[n]};let o=y__namespace.join(t,"source-cli-task-executor.ts"),s=y__namespace.join(t,"..","..","node_modules","tsx","dist","cli.mjs"),u=y__namespace.join(t,"..","..","node_modules",".bin","tsx"),l=a__namespace.existsSync(s)?s:u;return a__namespace.existsSync(o)&&a__namespace.existsSync(l)?{command:process.execPath,args:[l,o]}:{command:process.execPath,args:[n]}}case "board-live-cards":{let{cmd:n,args:o}=$e(t,"_",[]);return {command:n,args:o}}default:throw new Error(`resolveBuiltIn: unknown built-in name "${r}". Supported: source-cli-task-executor, board-live-cards`)}}function Ct(e,t){if(e.howToRun==="built-in"){let{command:n,args:o}=It(e.whatToRun,t);return {command:n,baseArgs:o}}let r=(typeof e.whatToRun=="object",$(e.whatToRun));switch(e.howToRun){case "local-node":return {command:process.execPath,baseArgs:[r]};case "local-python":return {command:process.platform==="win32"?"python":"python3",baseArgs:[r]};case "local-process":return {command:r,baseArgs:[]};default:throw new Error(`resolveBaseInvocation: howToRun "${e.howToRun}" is not a local transport`)}}function te(e,t){return Ct(e,t)}var ge=new Map;function Ft(e,t){let r=String(e||"").trim();if(!r)throw new Error("registerInProcessExecutionHandler: key is required");ge.set(r,t);}function Mt(e){let t=String(e||"").trim();t&&ge.delete(t);}function _e(e){let t=e.trim();if(!t)throw new Error("empty stdout");try{return JSON.parse(t)}catch{let r=t.split(/\r?\n/).filter(Boolean),n=r[r.length-1];return JSON.parse(n)}}function Je(e,t){return {...t,whatToRun:$(e.whatToRun),...e.extra?{extra:e.extra}:{}}}function me(e,t,r="invokeExecutionRef"){return chunkPMUSJQSR_cjs.a(e,t,r)}function De(e,t){if(e&&typeof e=="object"&&!Array.isArray(e)&&typeof e.result=="string"&&e.data&&typeof e.data=="object"&&!Array.isArray(e.data))return {...e,...t||{}};if(e&&typeof e=="object"&&!Array.isArray(e)&&typeof e.status=="string"){let n=e,o=n.status==="success"?"success":n.status==="fail"?"failure":n.status,s=n.data&&typeof n.data=="object"&&!Array.isArray(n.data)?n.data:n.data===void 0?{}:{stdout:n.data};return {result:o,data:s,...typeof n.error=="string"?{error:n.error}:{},...t||{}}}return {result:"success",data:e&&typeof e=="object"&&!Array.isArray(e)?e:{stdout:e},...t||{}}}function j(e){return {result:"failure",data:{error:e}}}function q(e,t,r){let n=r?.label??"invokeExecutionRefSync",o=r?.cliDir??r?.cwd??process.cwd(),s;try{s=me(e.argsMassaging,Je(e,t),n);}catch(d){let f=d instanceof Error?d.message:String(d);return j(f)}let u;try{u=te(e,o);}catch(d){let f=d instanceof Error?d.message:String(d);return j(`[${n}] ref resolution failed: ${f}`)}let l=[...u.baseArgs,...s.cmdArgs??[]],g=JSON.stringify(s.stdin??t),i=qe(),c;try{c=i.executeSync(u.command,l,{timeout:r?.timeoutMs??3e4,encoding:"utf-8",cwd:r?.cwd,input:g});}catch(d){let f=d,m=(f.stderr?String(f.stderr):"").trim(),S=typeof f.status=="number"?f.status:"unknown",h=m||f.message;return j(`[${n}] ref exited with status ${S}${h?`: ${h}`:""}`)}try{return De(_e(c))}catch{return {result:"success",data:{stdout:c.trim()}}}}async function We(e,t,r){let n=r?.label??"invokeExecutionRef",o;try{o=me(e.argsMassaging,Je(e,t),n);}catch(d){let f=d instanceof Error?d.message:String(d);return j(f)}let s=$(e.whatToRun),u=o.headers?{"Content-Type":"application/json",...o.headers}:{"Content-Type":"application/json"},l=o.url??s,g;if(e.howToRun==="http:get"){let d=o.body&&typeof o.body=="object"&&!Array.isArray(o.body)?o.body:t,f=new URLSearchParams(Object.entries(d).filter(([,m])=>m!=null).map(([m,S])=>[m,String(S)]));f.size>0&&(l=`${l}${l.includes("?")?"&":"?"}${f.toString()}`);}else g=JSON.stringify(o.body??t);let i={method:e.howToRun==="http:get"?"GET":"POST",headers:u,body:g},c=0;for(;;)try{let d=await fetch(l,i);if(!d.ok){let h=await d.text().catch(()=>"");return j(`[${n}] HTTP ${d.status}${h?`: ${h}`:""}`)}let f={};d.headers.forEach((h,k)=>{f[k]=h;});let m=new Uint8Array(await d.arrayBuffer());if(m.byteLength===0)return {result:"success",data:{},headers:f};let S=new TextDecoder().decode(m);try{return De(_e(S),{headers:f})}catch{return {result:"success",data:{stdout:S},headers:f}}}catch(d){let f=d?.cause,m=f&&typeof f=="object"&&"code"in f?String(f.code||""):"";if((m==="ECONNRESET"||m==="UND_ERR_SOCKET")&&c===0){c+=1;continue}let h=d instanceof Error?d.message:String(d),k=f instanceof Error?`${f.name}: ${f.message}${m?` [${m}]`:""}`:f?String(f):"",p=o.url??s??"",x=`${h}${k?` (cause: ${k})`:""}${p?` url=${p}`:""}`;return j(`[${n}] ${x}`)}}async function jt(e,t,r){let n=r?.label??"invokeExecutionRef",o=$(e.whatToRun).trim();if(!o)return j(`[${n}] in-process-loop requires a non-empty handler key`);let s=ge.get(o);if(!s)return j(`[${n}] no in-process handler registered for: ${o}`);try{return await s(e,t,r)}catch(u){let l=u instanceof Error?u.message:String(u);return j(`[${n}] ${l}`)}}var $t={"local-node":async(e,t,r)=>q(e,t,r),"local-python":async(e,t,r)=>q(e,t,r),"local-process":async(e,t,r)=>q(e,t,r),"built-in":async(e,t,r)=>q(e,t,r),"http:post":We,"http:get":We,"in-process-loop":jt},Pt={"local-node":q,"local-python":q,"local-process":q,"built-in":q};async function D(e,t,r){let n=r?.transports?.[e.howToRun]??$t[e.howToRun];return n?n(e,t,r):j(`[${r?.label??"invokeExecutionRef"}] unsupported howToRun: ${e.howToRun}`)}function ye(e,t,r){let n=r?.syncTransports?.[e.howToRun]??Pt[e.howToRun];return n?n(e,t,r):j(`[${r?.label??"invokeExecutionRefSync"}] unsupported sync howToRun: ${e.howToRun}`)}function Lt(e){return {invoke(t,r){return D(t,r,e)},invokeSync(t,r){return ye(t,r,e)}}}function qt(e,t,r){return ye(e,t,r)}function he(e){return {messageId:e.id,enqueuedAt:e.enqueuedAt,attempt:e.attempt,request:e.body}}function Ot(e){return {...he(e),leaseToken:e.leaseToken,leaseExpiresAt:e.leaseExpiresAt}}function Qt(e){return {...he(e),reason:e.reason}}function H(e){return {enqueueRequest(t){return e.enqueue(t).id},enqueueRequestIfAbsent:e.enqueueIfAbsent?(t,r)=>{let n=e.enqueueIfAbsent(t,r);return n?n.id:null}:void 0,leaseRequests(t){return e.lease(t).map(Ot)},ackRequest(t,r){return e.ack(t,r)},nackRequest(t,r,n){return e.nack(t,r,n)},peekActive(){return e.peekActive().map(he)},peekDeadLetter(){return e.peekDeadLetter().map(Qt)}}}function C(e,t){if(process.platform!=="win32"){a__namespace.renameSync(e,t);return}let r=[10,20,40,80,160];for(let n=0;n<=r.length;n++)try{a__namespace.renameSync(e,t);return}catch(o){let s=o.code;if((s==="EPERM"||s==="EBUSY")&&n<r.length){Atomics.wait(new Int32Array(new SharedArrayBuffer(4)),0,0,r[n]);continue}throw o}}function U(e){function t(o){return y__namespace.join(e,...o.split("/"))}function r(o){return y__namespace.relative(e,o).replace(/\\/g,"/")}function n(o,s){if(a__namespace.existsSync(o))for(let u of a__namespace.readdirSync(o,{withFileTypes:true})){let l=y__namespace.join(o,u.name);if(u.isDirectory()){n(l,s);continue}u.isFile()&&s.push(r(l));}}return {read(o){let s=t(o);if(!a__namespace.existsSync(s))return null;try{return a__namespace.readFileSync(s,"utf-8")}catch{return null}},write(o,s){let u=t(o),l=`${u}.${process.pid}.${crypto.randomUUID()}.tmp`;a__namespace.mkdirSync(y__namespace.dirname(u),{recursive:true}),a__namespace.writeFileSync(l,s,"utf-8"),C(l,u);},exists(o){return a__namespace.existsSync(t(o))},remove(o){let s=t(o);try{a__namespace.existsSync(s)&&a__namespace.unlinkSync(s);}catch{}},readBytes(o){let s=t(o);if(!a__namespace.existsSync(s))return null;try{return new Uint8Array(a__namespace.readFileSync(s))}catch{return null}},writeBytes(o,s){let u=t(o),l=`${u}.${process.pid}.${crypto.randomUUID()}.tmp`;a__namespace.mkdirSync(y__namespace.dirname(u),{recursive:true}),a__namespace.writeFileSync(l,Buffer.from(s)),C(l,u);},listKeys(o){let s=[];n(e,s);let u=s.sort();return o?u.filter(l=>l.startsWith(o)):u},stat(o){let s=t(o);if(!a__namespace.existsSync(s))return null;try{let u=a__namespace.statSync(s);return {key:o,size:Number(u.size||0),updatedAt:new Date(u.mtimeMs).toISOString()}}catch{return null}},keyRef(o){return {kind:"fs-path",value:t(o)}}}}function we(){return {read(e){if(!a__namespace.existsSync(e))return null;try{return a__namespace.readFileSync(e,"utf-8")}catch{return null}},write(e,t){let r=`${e}.${process.pid}.${crypto.randomUUID()}.tmp`;a__namespace.mkdirSync(y__namespace.dirname(e),{recursive:true}),a__namespace.writeFileSync(r,t,"utf-8"),C(r,e);},exists(e){return a__namespace.existsSync(e)},remove(e){try{a__namespace.existsSync(e)&&a__namespace.unlinkSync(e);}catch{}},readBytes(e){if(!a__namespace.existsSync(e))return null;try{return new Uint8Array(a__namespace.readFileSync(e))}catch{return null}},writeBytes(e,t){let r=`${e}.${process.pid}.${crypto.randomUUID()}.tmp`;a__namespace.mkdirSync(y__namespace.dirname(e),{recursive:true}),a__namespace.writeFileSync(r,Buffer.from(t)),C(r,e);},stat(e){if(!a__namespace.existsSync(e))return null;try{let t=a__namespace.statSync(e);return {key:e,size:Number(t.size||0),updatedAt:new Date(t.mtimeMs).toISOString()}}catch{return null}},listKeys(e){return []}}}function K(e,t){let r=`${e}.${process.pid}.${crypto.randomUUID()}.tmp`;a__namespace.mkdirSync(y__namespace.dirname(e),{recursive:true}),a__namespace.writeFileSync(r,JSON.stringify(t,null,2),"utf-8"),C(r,e);}function N(e){if(!a__namespace.existsSync(e))return null;try{return JSON.parse(a__namespace.readFileSync(e,"utf-8"))}catch{return null}}function V(e){return a__namespace.existsSync(e)?a__namespace.readdirSync(e).filter(t=>t.endsWith(".json")).sort().map(t=>y__namespace.join(e,t)):[]}function z(e){return {id:e.id,body:e.body,enqueuedAt:e.enqueuedAt,attempt:e.attempt}}function _t(e){return {...z(e),leaseToken:String(e.leaseToken||""),leaseExpiresAt:String(e.leaseExpiresAt||"")}}function Jt(e){return {...z(e),reason:e.reason}}function _(e){let t=y__namespace.join(e,"active"),r=y__namespace.join(e,"leased"),n=y__namespace.join(e,"done"),o=y__namespace.join(e,"dead");for(let c of [t,r,n,o])a__namespace.mkdirSync(c,{recursive:true});function s(c){let d=String(c.enqueuedAt||new Date().toISOString()).replace(/[:.]/g,"-");return y__namespace.join(t,`${d}-${c.id}.json`)}function u(c){return y__namespace.join(r,`${c}.json`)}function l(c){return y__namespace.join(n,`${c}.json`)}function g(c){return y__namespace.join(o,`${c}.json`)}function i(){let c=Date.now();for(let d of V(r)){let f=N(d);if(!f?.leaseExpiresAt)continue;let m=Date.parse(f.leaseExpiresAt);if(Number.isNaN(m)||m>c)continue;let S={id:f.id,body:f.body,enqueuedAt:f.enqueuedAt,attempt:f.attempt};K(s(S),S);try{a__namespace.unlinkSync(d);}catch{}}}return {enqueue(c){let d={id:crypto.randomUUID(),body:c,enqueuedAt:new Date().toISOString(),attempt:0};return K(s(d),d),z(d)},enqueueIfAbsent(c,d){i();for(let m of [t,r])for(let S of V(m))if(N(S)?.dedupKey===d)return null;let f={id:crypto.randomUUID(),body:c,enqueuedAt:new Date().toISOString(),attempt:0,dedupKey:d};return K(s(f),f),z(f)},lease(c){i();let d=Math.max(1,Math.floor(c?.max??1)),f=Math.max(1,Math.floor(c?.visibilityMs??6e4)),m=[];for(let S of V(t)){if(m.length>=d)break;let h=N(S);if(!h)continue;let k=u(h.id);try{C(S,k);}catch{continue}let p={...h,attempt:(Number(h.attempt)||0)+1,leaseToken:crypto.randomUUID(),leaseExpiresAt:new Date(Date.now()+f).toISOString()};K(k,p),m.push(_t(p));}return m},ack(c,d){let f=u(c),m=N(f);if(!m||m.leaseToken!==d)return false;try{C(f,l(c));}catch{return false}return true},nack(c,d,f){let m=u(c),S=N(m);if(!S||S.leaseToken!==d)return false;let h={id:S.id,body:S.body,enqueuedAt:S.enqueuedAt,attempt:S.attempt};f?.dead?(h.reason=f.reason,K(g(c),h)):K(s(h),h);try{a__namespace.unlinkSync(m);}catch{}return true},peekActive(c){return i(),V(t).map(d=>N(d)).filter(d=>!!d).map(z)},peekDeadLetter(c){return V(o).map(d=>N(d)).filter(d=>!!d).map(Jt)}}}var Se="__scratch-marker",Re="__scratch-config.json",Dt=1440*60*1e3,Ht=720*60*1e3,Kt=500;function He(e,t){if(!e)return t;let r=e.replace(/[^A-Za-z0-9._-]/g,"_");return r.length>0?r:t}function G(e){a__namespace.mkdirSync(e,{recursive:true});let t=y__namespace.join(e,Se),r=y__namespace.join(e,Re),n=!a__namespace.existsSync(t);if(n)try{a__namespace.writeFileSync(t,`scratch-store
|
|
4
4
|
${new Date().toISOString()}
|
|
5
|
-
`,"utf-8");}catch{}function o(){if(!a__namespace.existsSync(r))return {};try{let
|
|
5
|
+
`,"utf-8");}catch{}function o(){if(!a__namespace.existsSync(r))return {};try{let i=a__namespace.readFileSync(r,"utf-8"),c=JSON.parse(i);return c&&typeof c=="object"&&!Array.isArray(c)?c:{}}catch{return {}}}function s(i){let c=`${r}.${process.pid}.${crypto.randomUUID()}.tmp`;try{a__namespace.writeFileSync(c,JSON.stringify(i,null,2),"utf-8"),C(c,r);}catch{}}if(n){let i=o();typeof i["retention.lastSweepAt"]!="number"&&(i["retention.lastSweepAt"]=Date.now(),s(i));}function u(){if(!a__namespace.existsSync(t))return;let i=o(),c=typeof i["retention.maxAgeMs"]=="number"?i["retention.maxAgeMs"]:Dt,d=typeof i["retention.sweepIntervalMs"]=="number"?i["retention.sweepIntervalMs"]:Ht;if(c<=0||d<=0)return;let f=typeof i["retention.lastSweepAt"]=="number"?i["retention.lastSweepAt"]:0,m=Date.now();if(m-f<d)return;i["retention.lastSweepAt"]=m,s(i);let S=m;try{let h=a__namespace.readdirSync(e,{withFileTypes:!0});for(let k of h){if(Date.now()-S>Kt)break;if(!k.isFile()||k.name===Se||k.name===Re)continue;let p=y__namespace.join(e,k.name);try{let x=a__namespace.statSync(p);if(m-x.mtimeMs>c)try{a__namespace.unlinkSync(p);}catch{}}catch{}}}catch{}}function l(i,c){let d=He(i,"scratch"),f=He(c,".json"),m=f.startsWith(".")?f:`.${f}`,S=`${d}-${Date.now()}-${crypto.randomUUID().slice(0,8)}${m}`;return y__namespace.join(e,S)}function g(i,c){let d=`${i}.${process.pid}.${crypto.randomUUID()}.tmp`;a__namespace.mkdirSync(y__namespace.dirname(i),{recursive:true}),a__namespace.writeFileSync(d,c,"utf-8"),C(d,i);}return {read(i){if(!a__namespace.existsSync(i))return null;try{return a__namespace.readFileSync(i,"utf-8")}catch{return null}},write(i,c){g(i,c);try{u();}catch{}},exists(i){return a__namespace.existsSync(i)},remove(i){try{a__namespace.existsSync(i)&&a__namespace.unlinkSync(i);}catch{}},readBytes(i){if(!a__namespace.existsSync(i))return null;try{return new Uint8Array(a__namespace.readFileSync(i))}catch{return null}},writeBytes(i,c){let d=`${i}.${process.pid}.${crypto.randomUUID()}.tmp`;a__namespace.mkdirSync(y__namespace.dirname(i),{recursive:true}),a__namespace.writeFileSync(d,Buffer.from(c)),C(d,i);try{u();}catch{}},stat(i){if(!a__namespace.existsSync(i))return null;try{let c=a__namespace.statSync(i);return {key:i,size:Number(c.size||0),updatedAt:new Date(c.mtimeMs).toISOString()}}catch{return null}},listKeys(i){try{let c=a__namespace.readdirSync(e,{withFileTypes:!0}),d=[];for(let f of c){if(!f.isFile()||f.name===Se||f.name===Re)continue;let m=y__namespace.join(e,f.name);(!i||m.startsWith(i))&&d.push(m);}return d.sort()}catch{return []}},getUniqueKey(i,c){return l(i,c)},create(i,c,d){let f=l(c,d);g(f,i);try{u();}catch{}return f},keyRef(i){return {kind:"fs-path",value:i}},config:{get(i){return o()[i]??null},set(i,c){let d=o();c==null?delete d[i]:d[i]=c,s(d);}}}}var Ut="__archive-marker",Vt="__archive-config.json",re="streams",ne="blobs",zt=500;function Ke(e){let t=e.replace(/[^A-Za-z0-9._-]/g,"_");if(!t)throw new Error("Archive segment name cannot be empty after sanitization");return t}function oe(e){a__namespace.mkdirSync(e,{recursive:true}),a__namespace.mkdirSync(y__namespace.join(e,re),{recursive:true}),a__namespace.mkdirSync(y__namespace.join(e,ne),{recursive:true});let t=y__namespace.join(e,Ut),r=y__namespace.join(e,Vt);if(!a__namespace.existsSync(t))try{a__namespace.writeFileSync(t,`archive-store
|
|
6
6
|
${new Date().toISOString()}
|
|
7
|
-
`,"utf-8");}catch{}function
|
|
8
|
-
`).filter(Boolean).map(
|
|
9
|
-
`,"utf-8"),
|
|
10
|
-
`).filter(Boolean).map(
|
|
11
|
-
`,"utf-8");},generateId(){return crypto.randomUUID()}}}function De(e){return {tryAcquire(){try{if(!a__namespace.existsSync(e)){a__namespace.mkdirSync(h__namespace.dirname(e),{recursive:!0});try{a__namespace.writeFileSync(e,"{}",{flag:"wx"});}catch{}}return properLockfile.lockSync(e,{retries:0})}catch{return null}}}}function Wt(e){let t=Math.max(1,Math.floor(e.pollIntervalMs??250)),r=Math.max(1,Math.floor(e.visibilityMs??6e4)),s=Math.max(1,Math.floor(e.concurrency??1)),o=Math.max(1,Math.floor(e.maxAttempts??5)),u=false,i=false;async function l(n){try{await e.executeBoardWorkerRequest(n.request.args,n.request),e.workerStore.ackRequest(n.messageId,n.leaseToken);}catch(d){let f=n.attempt>=o;e.workerStore.nackRequest(n.messageId,n.leaseToken,{dead:f,reason:d instanceof Error?d.message:String(d)}),e.onError?.(d,n);}}async function g(){if(!(u||i)){i=true;try{let n=e.workerStore.leaseRequests({max:s,visibilityMs:r});for(let d of n)await l(d);}finally{i=false;}}}let c=setInterval(()=>{g();},t);return typeof c.unref=="function"&&c.unref(),g(),()=>{u=true,clearInterval(c);}}function kr(){return {async invoke(e,t){if(e.howToRun!=="local-node")return {dispatched:false,error:`createNodeSpawnInvocationAdapter: unsupported howToRun "${e.howToRun}"`};let r="";try{let u=e.whatToRun;r=C(u);}catch{r="";}if(!r)return {dispatched:false,error:"createNodeSpawnInvocationAdapter: could not resolve executable path from whatToRun"};let s={...t},o=Buffer.from(JSON.stringify(s)).toString("base64");try{return child_process.spawn(process.execPath,[r,"--boardId",String(t.boardId??""),"--cardId",String(t.cardId??""),"--extraEncJson",o],{stdio:"ignore",windowsHide:!0}).unref(),{dispatched:!0}}catch(u){return {dispatched:false,error:u instanceof Error?u.message:String(u)}}},async describe(e){if(e.howToRun!=="local-node")return null;let t="";try{let r=e.whatToRun;t=C(r);}catch{t="";}if(!t)return null;try{let r=child_process.spawnSync(process.execPath,[t,"describe"],{timeout:5e3,encoding:"utf-8",windowsHide:!0});return r.status!==0?null:JSON.parse(String(r.stdout).trim())}catch{return null}}}}var Jt=".board.lock";function He(e,t){if(!e||!t)return false;let r=String(e).replace(/[\\/]+$/,"").split(/[\\/]+/).filter(Boolean);return r.length>0&&r[r.length-1]===t}function Dt(e,t){return typeof e=="string"?{cliDir:e,opts:t}:{cliDir:void 0,opts:e}}function Qt(e,t){return typeof e=="string"?{cliDir:e,opts:t}:{cliDir:void 0,opts:e}}function Ke(e){if(e)return e;let t=Ee((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('board-live-cards-node.cjs', document.baseURI).href))),r=[t,k(t,"..","cli","node"),k(t,"..","..","cli","node")];for(let s of r)try{return ce(s),s}catch{}throw new Error(`createFsBoardPlatformAdapter: could not resolve a public CLI directory from module dir ${t}`)}function Ht(e,t,r){let{cliDir:s,opts:o}=Dt(t,r),u=Ke(s),i=e.value,l,g=o?.suppressSpawn?"":ce(u),c=o?.selfRef??{meta:"board-live-cards",howToRun:"local-node",whatToRun:g?chunkUVE65IPR_cjs.a({kind:"yaml-flow-cli",value:"board-live-cards-cli.js"}):"",...o?.notifyChannel?{extra:{notifyChannel:o.notifyChannel}}:{}};return {kvStorage:n=>ee(k(i,`.${n}`)),blobStorage:n=>n?W(k(i,n)):W(i),scratchStorage:()=>J(k(i,".tmp")),scratchStorageForRef:n=>J(chunkUVE65IPR_cjs.b(n).value),archiveFactory:()=>Z(k(i,"archive")),archiveFactoryForRef:n=>Z(chunkUVE65IPR_cjs.b(n).value),journalAdapter:()=>Je(i),boardWorkerStore:()=>(l||(l=U(X(k(i,".board-worker-queue")))),l),lock:De(k(i,Jt)),selfRef:c,async dispatchExecution(n,d){let f=!!d.output?.ref;if(n.howToRun==="queue-storage")try{let p=l??U(X(k(i,".board-worker-queue")));l||(l=p);let y=typeof n.extra?.boardId=="string"?n.extra.boardId:void 0;if(f)return p.enqueueRequest({boardId:y,ref:n,args:d}),{dispatched:!0};let R=d.source_def?.bindTo??Q().slice(0,8),S=J(k(i,".tmp")),v=S.create(JSON.stringify(d,null,2),`exec-in-${R}`,".json"),F=S.getUniqueKey(`exec-out-${R}`,".json"),j=S.getUniqueKey(`exec-err-${R}`,".txt"),P=chunkUVE65IPR_cjs.a(S.keyRef(v)),te=chunkUVE65IPR_cjs.a(S.keyRef(F)),w=chunkUVE65IPR_cjs.a(S.keyRef(j));return p.enqueueRequest({boardId:y,ref:n,args:{subcommand:"run-source-fetch",inRef:P,outRef:te,errRef:w}}),{dispatched:!0}}catch(p){return {dispatched:false,error:p instanceof Error?p.message:String(p)}}if(f&&(n.howToRun==="http:post"||n.howToRun==="in-process-loop"))try{if(n.howToRun==="http:post"){let R=C(n.whatToRun),S=await fetch(R,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({...d,...n.extra?{extra:n.extra}:{}})});if(!S.ok){let v=await S.text().catch(()=>"");return {dispatched:!1,error:`HTTP ${S.status}: ${v}`}}return {dispatched:!0}}let p=await L(n,d,{cliDir:u,cwd:process.cwd(),label:"dispatchExecution.directHostedWorker"});return p.result==="success"?{dispatched:!0}:{dispatched:!1,error:(typeof p.data?.error=="string"?p.data.error:p.error)||p.result}}catch(p){return {dispatched:false,error:p instanceof Error?p.message:String(p)}}let m=n.howToRun==="local-node"||n.howToRun==="local-process"||n.howToRun==="local-python"||n.howToRun==="built-in";if(o?.suppressSpawn&&m)return {dispatched:false};try{let p=d.source_def?.bindTo??Q().slice(0,8),y=J(k(i,".tmp")),R=y.create(JSON.stringify(d,null,2),`exec-in-${p}`,".json"),S=y.getUniqueKey(`exec-out-${p}`,".json"),v=y.getUniqueKey(`exec-err-${p}`,".txt"),F=chunkUVE65IPR_cjs.a(y.keyRef(R)),j=chunkUVE65IPR_cjs.a(y.keyRef(S)),P=chunkUVE65IPR_cjs.a(y.keyRef(v));return Le(n,{subcommand:"run-source-fetch",inRef:F,outRef:j,errRef:P},u),{dispatched:!0}}catch(p){let y=p instanceof Error?p.message:String(p);try{let R=Z(k(i,"archive")),S=new Date().toISOString().replace(/[:.]/g,"-"),v=d.source_def?.bindTo??"unknown";R.blob("exec-failures").write(`${S}-${v}.json`,JSON.stringify({error:y,args:d,ref:n,at:new Date().toISOString()},null,2));}catch{}return {dispatched:false,error:y}}},supportsDirectSourceOutput(n){return n.howToRun==="queue-storage"||n.howToRun==="http:post"||n.howToRun==="in-process-loop"},resolveBlob(n){let d=be(n.value)?he().read(n.value):W(i).read(n.value);if(d===null)throw new Error(`resolveBlob: blob not found: ::${n.kind}::${n.value}`);return d},hashFn:Ne,genId:()=>Ae(`${Date.now()}-${Math.random()}`).slice(0,32),kvStorageForRef:n=>ee(chunkUVE65IPR_cjs.b(n).value),requestProcessAccumulated(){o?.suppressSpawn||Ie(u,e,o?.notifyChannel);},publishBoardChangeNotifications(n){if(!o?.notifyChannel||n.length===0)return;let d=n.map(f=>({id:Q(),ts:new Date().toISOString(),boardRef:chunkUVE65IPR_cjs.a(e),notification:f}));Ce(o.notifyChannel,d,o.onWarn);},onWarn:o?.onWarn}}function vr(e,t,r){let{cliDir:s,opts:o}=Qt(t,r),u=Ke(s);return {...Ht(e,u,o),async invokeExecutor(l,g,c){if(l.howToRun==="queue-storage")throw new Error("queue-storage does not support inline executor request/response");if(l.howToRun==="http:post"||l.howToRun==="http:get"||l.howToRun==="in-process-loop"){let p=await L(l,{subcommand:g,...c?.input!==void 0?{input:c.input}:{},...l.extra?{extra:l.extra}:{}},{cliDir:u,cwd:process.cwd(),timeoutMs:c?.timeout??3e4,label:`invokeExecutor:${g}`});if(p.result!=="success"){let y=typeof p.data?.error=="string"?p.data.error:p.error;throw new Error(y||`executor request failed: ${p.result}`)}return typeof p.data?.stdout=="string"?p.data.stdout:JSON.stringify(p.data??{})}let{command:n,baseArgs:d}=K(l,u),f=l.extra?["--extra",Buffer.from(JSON.stringify(l.extra)).toString("base64")]:[],m=[...d,g,...f];return await new Promise((p,y)=>{let R=child_process.spawn(n,m,{cwd:process.cwd(),stdio:"pipe",windowsHide:true,shell:process.platform==="win32"&&/\.(cmd|bat)$/i.test(n)}),S=[],v=[],F=false,j=null,P=w=>{F||(F=true,j&&clearTimeout(j),y(w));},te=w=>{F||(F=true,j&&clearTimeout(j),p(w));};R.stdout.on("data",w=>{S.push(Buffer.from(w));}),R.stderr.on("data",w=>{v.push(Buffer.from(w));}),R.on("error",w=>{let O=w;O.stdout=Buffer.concat(S).toString("utf-8"),O.stderr=Buffer.concat(v).toString("utf-8"),P(O);}),R.on("close",w=>{let O=Buffer.concat(S).toString("utf-8"),Re=Buffer.concat(v).toString("utf-8");if(w===0){te(O);return}let re=new Error(Re.trim()||`executor exited with status ${w}`);re.stdout=O,re.stderr=Re,P(re);}),c?.timeout&&c.timeout>0&&(j=setTimeout(()=>{R.kill();let w=new Error(`executor timed out after ${c.timeout}ms`);w.stdout=Buffer.concat(S).toString("utf-8"),w.stderr=Buffer.concat(v).toString("utf-8"),P(w);},c.timeout)),c?.input!==void 0?R.stdin.end(c.input):R.stdin.end();})},validateSchema(l){let g=chunkNMZ6XNLB_cjs.d(l);return {ok:g.errors.length===0,errors:g.errors}},absoluteBlob:he()}}function br(e,t={}){let r=t.chatsSubdir??"chats",s=t.kvSubdir??".kv",o=s?[s,"chat"]:["chat"],u=r&&!He(e,r)?k(e,r):e,i=ee(k(e,...o));return chunkNJJ7WEDT_cjs.a(l=>{let c=`${String(l).replace(/[^a-zA-Z0-9_-]/g,"_")}.jsonl`,n=k(u,c);return ye(n)},i)}function Ar(e,t={}){let r=t.filesSubdir??"files",s=r&&!He(e,r)?k(e,r):e;return chunkNJJ7WEDT_cjs.c(W(s))}function Er(e){try{let t=JSON.parse(Buffer.from(e,"base64url").toString());return typeof t.br=="string"?t.br:null}catch{return null}}Object.defineProperty(exports,"createArtifactsStore",{enumerable:true,get:function(){return chunkNJJ7WEDT_cjs.c}});Object.defineProperty(exports,"createCardFileMetadataStore",{enumerable:true,get:function(){return chunkNJJ7WEDT_cjs.e}});Object.defineProperty(exports,"createChatStorage",{enumerable:true,get:function(){return chunkNJJ7WEDT_cjs.a}});Object.defineProperty(exports,"createFileArtifactsStore",{enumerable:true,get:function(){return chunkNJJ7WEDT_cjs.d}});Object.defineProperty(exports,"createInMemoryChatStorage",{enumerable:true,get:function(){return chunkNJJ7WEDT_cjs.b}});Object.defineProperty(exports,"BOARD_GRAPH_KEY",{enumerable:true,get:function(){return chunkLVNQCE5X_cjs.c}});Object.defineProperty(exports,"EMPTY_CONFIG",{enumerable:true,get:function(){return chunkLVNQCE5X_cjs.d}});Object.defineProperty(exports,"SNAPSHOT_SCHEMA_VERSION_V1",{enumerable:true,get:function(){return chunkLVNQCE5X_cjs.b}});Object.defineProperty(exports,"createBoardLiveCardsNonCorePublic",{enumerable:true,get:function(){return chunkLVNQCE5X_cjs.f}});Object.defineProperty(exports,"createBoardLiveCardsPublic",{enumerable:true,get:function(){return chunkLVNQCE5X_cjs.e}});Object.defineProperty(exports,"createCardStore",{enumerable:true,get:function(){return chunkLVNQCE5X_cjs.a}});Object.defineProperty(exports,"executionRefFromScriptPath",{enumerable:true,get:function(){return chunk5DB54ZX2_cjs.a}});Object.defineProperty(exports,"parseExecutionRef",{enumerable:true,get:function(){return chunk5DB54ZX2_cjs.c}});Object.defineProperty(exports,"serializeExecutionRef",{enumerable:true,get:function(){return chunk5DB54ZX2_cjs.b}});Object.defineProperty(exports,"parseRef",{enumerable:true,get:function(){return chunkUVE65IPR_cjs.b}});Object.defineProperty(exports,"serializeRef",{enumerable:true,get:function(){return chunkUVE65IPR_cjs.a}});Object.defineProperty(exports,"createBoardLiveCardsMcp",{enumerable:true,get:function(){return chunkKNFFDVLD_cjs.a}});Object.defineProperty(exports,"createCardStorePublic",{enumerable:true,get:function(){return chunkYMEIPKLW_cjs.a}});Object.defineProperty(exports,"createArtifactsStorePublic",{enumerable:true,get:function(){return chunkP7ZCDICS_cjs.a}});exports.buildLocalBaseSpec=K;exports.createBoardWorkerStore=U;exports.createExecutionRefInvoker=Et;exports.createFsBoardChatStorage=br;exports.createFsBoardFileArtifactsStore=Ar;exports.createFsBoardNonCorePlatformAdapter=vr;exports.createFsBoardPlatformAdapter=Ht;exports.createFsQueueStorage=X;exports.createNodeSpawnInvocationAdapter=kr;exports.decodeBoardRefFromToken=Er;exports.evaluateArgsMassaging=de;exports.invokeExecutionRef=L;exports.invokeExecutionRefSync=le;exports.invokeRefSync=Tt;exports.registerInProcessExecutionHandler=wt;exports.resolveWhatToRunValue=C;exports.resolveYamlFlowCliPath=$e;exports.startBoardWorkerQueueRunner=Wt;exports.unregisterInProcessExecutionHandler=kt;//# sourceMappingURL=board-live-cards-node.cjs.map
|
|
7
|
+
`,"utf-8");}catch{}function n(){if(!a__namespace.existsSync(r))return {};try{let u=a__namespace.readFileSync(r,"utf-8"),l=JSON.parse(u);return l&&typeof l=="object"&&!Array.isArray(l)?l:{}}catch{return {}}}function o(u){let l=`${r}.${process.pid}.${crypto.randomUUID()}.tmp`;try{a__namespace.writeFileSync(l,JSON.stringify(u,null,2),"utf-8"),C(l,r);}catch{}}function s(){if(!a__namespace.existsSync(t))return;let u=n(),l=typeof u["retention.maxAgeMs"]=="number"?u["retention.maxAgeMs"]:0,g=typeof u["retention.sweepIntervalMs"]=="number"?u["retention.sweepIntervalMs"]:0;if(l<=0||g<=0)return;let i=typeof u["retention.lastSweepAt"]=="number"?u["retention.lastSweepAt"]:0,c=Date.now();if(c-i<g)return;u["retention.lastSweepAt"]=c,o(u);let d=c,f=m=>{let S;try{S=a__namespace.readdirSync(m,{withFileTypes:!0});}catch{return}for(let h of S){if(Date.now()-d>zt)return;let k=y__namespace.join(m,h.name);if(h.isDirectory()){f(k);continue}if(h.isFile())try{let p=a__namespace.statSync(k);if(c-p.mtimeMs>l)try{a__namespace.unlinkSync(k);}catch{}}catch{}}};f(y__namespace.join(e,re)),f(y__namespace.join(e,ne));}return {stream(u){let l=Ke(u),g=y__namespace.join(e,re,`${l}.jsonl`),i=ke(g);return {append(c){let d=i.append(c);try{s();}catch{}return d},readAll:()=>i.readAll(),readAfter:c=>i.readAfter(c),clear:()=>{i.clear&&i.clear();}}},blob(u){let l=Ke(u),g=y__namespace.join(e,ne,l);a__namespace.mkdirSync(g,{recursive:true});let i=U(g);return {read:c=>i.read(c),write:(c,d)=>{i.write(c,d);try{s();}catch{}},exists:c=>i.exists(c),remove:c=>i.remove(c),readBytes:i.readBytes?c=>i.readBytes(c):void 0,writeBytes:i.writeBytes?(c,d)=>{i.writeBytes(c,d);try{s();}catch{}}:void 0,listKeys:c=>i.listKeys(c),stat:i.stat?c=>i.stat(c):void 0}},listStreams(u){let l=y__namespace.join(e,re);try{return a__namespace.readdirSync(l,{withFileTypes:!0}).filter(g=>g.isFile()&&g.name.endsWith(".jsonl")).map(g=>g.name.slice(0,-6)).filter(g=>!u||g.startsWith(u)).sort()}catch{return []}},listBlobs(u){let l=y__namespace.join(e,ne);try{return a__namespace.readdirSync(l,{withFileTypes:!0}).filter(g=>g.isDirectory()).map(g=>g.name).filter(g=>!u||g.startsWith(u)).sort()}catch{return []}},config:{get(u){return n()[u]??null},set(u,l){let g=n();l==null?delete g[u]:g[u]=l,o(g);}}}}function se(e){function t(n){return y__namespace.join(e,...n.split("/"))+".json"}function r(n,o,s,u){if(a__namespace.existsSync(n))for(let l of a__namespace.readdirSync(n,{withFileTypes:true})){let g=o?`${o}/${l.name}`:l.name;if(l.isDirectory()){r(y__namespace.join(n,l.name),g,s,u);continue}if(!l.isFile()||!l.name.endsWith(".json"))continue;let i=g.replace(/\.json$/,"");(!s||i.startsWith(s))&&u.push(i);}}return {read(n){let o=t(n);if(!a__namespace.existsSync(o))return null;try{return JSON.parse(a__namespace.readFileSync(o,"utf-8"))}catch{return null}},write(n,o){let s=t(n),u=`${s}.${process.pid}.${crypto.randomUUID()}.tmp`;a__namespace.mkdirSync(y__namespace.dirname(s),{recursive:true}),a__namespace.writeFileSync(u,JSON.stringify(o,null,2),"utf-8"),C(u,s);},delete(n){let o=t(n);try{a__namespace.existsSync(o)&&a__namespace.unlinkSync(o);}catch{}},listKeys(n){let o=[];return r(e,"",n,o),o.sort()}}}function ke(e){function t(){if(!a__namespace.existsSync(e))return [];let r=a__namespace.readFileSync(e,"utf-8").trim();return r?r.split(`
|
|
8
|
+
`).filter(Boolean).map(n=>JSON.parse(n)):[]}return {append(r){let n={id:crypto.randomUUID(),payload:r};return a__namespace.mkdirSync(y__namespace.dirname(e),{recursive:true}),a__namespace.appendFileSync(e,JSON.stringify(n)+`
|
|
9
|
+
`,"utf-8"),n},readAll(){return t()},readAfter(r){let n=t();if(!r)return {entries:n,newCursor:n.length>0?n[n.length-1].id:null};let o=n.findIndex(u=>u.id===r),s=o===-1?n:n.slice(o+1);return {entries:s,newCursor:s.length>0?s[s.length-1].id:r}},clear(){a__namespace.existsSync(e)&&a__namespace.truncateSync(e,0);}}}function xe(e){if(e==null||typeof e!="object")return JSON.stringify(e);if(Array.isArray(e))return `[${e.map(xe).join(",")}]`;let t=e;return `{${Object.keys(t).sort().map(n=>`${JSON.stringify(n)}:${xe(t[n])}`).join(",")}}`}function Ue(e){return crypto.createHash("sha256").update(xe(e)).digest("hex")}function Ve(e){let t=y__namespace.join(e,"board-journal.jsonl");return {readAllEntries(){if(!a__namespace.existsSync(t))return [];let r=a__namespace.readFileSync(t,"utf-8").trim();return r?r.split(`
|
|
10
|
+
`).filter(Boolean).map(n=>JSON.parse(n)):[]},appendEntry(r){a__namespace.appendFileSync(t,JSON.stringify(r)+`
|
|
11
|
+
`,"utf-8");},generateId(){return crypto.randomUUID()}}}function ze(e){return {tryAcquire(){try{if(!a__namespace.existsSync(e)){a__namespace.mkdirSync(y__namespace.dirname(e),{recursive:!0});try{a__namespace.writeFileSync(e,"{}",{flag:"wx"});}catch{}}return properLockfile.lockSync(e,{retries:0})}catch{return null}}}}function _r(){return {async invoke(e,t){if(e.howToRun!=="local-node")return {dispatched:false,error:`createNodeSpawnInvocationAdapter: unsupported howToRun "${e.howToRun}"`};let r="";try{let s=e.whatToRun;r=$(s);}catch{r="";}if(!r)return {dispatched:false,error:"createNodeSpawnInvocationAdapter: could not resolve executable path from whatToRun"};let n={...t},o=Buffer.from(JSON.stringify(n)).toString("base64");try{return child_process.spawn(process.execPath,[r,"--boardId",String(t.boardId??""),"--cardId",String(t.cardId??""),"--extraEncJson",o],{stdio:"ignore",windowsHide:!0}).unref(),{dispatched:!0}}catch(s){return {dispatched:false,error:s instanceof Error?s.message:String(s)}}},async describe(e){if(e.howToRun!=="local-node")return null;let t="";try{let r=e.whatToRun;t=$(r);}catch{t="";}if(!t)return null;try{let r=child_process.spawnSync(process.execPath,[t,"describe"],{timeout:5e3,encoding:"utf-8",windowsHide:!0});return r.status!==0?null:JSON.parse(String(r.stdout).trim())}catch{return null}}}}var Yt=".board.lock";function Ye(e,t){if(!e||!t)return false;let r=String(e).replace(/[\\/]+$/,"").split(/[\\/]+/).filter(Boolean);return r.length>0&&r[r.length-1]===t}function Zt(e,t){return typeof e=="string"?{cliDir:e,opts:t}:{cliDir:void 0,opts:e}}function Xt(e,t){return typeof e=="string"?{cliDir:e,opts:t}:{cliDir:void 0,opts:e}}function Ze(e){if(e)return e;let t=Ce((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('board-live-cards-node.cjs', document.baseURI).href))),r=[t,b(t,"..","cli","node"),b(t,"..","..","cli","node")];for(let n of r)try{return Pe(n),n}catch{}throw new Error(`createFsBoardPlatformAdapter: could not resolve a public CLI directory from module dir ${t}`)}function er(e,t,r){let{cliDir:n,opts:o}=Zt(t,r),s=e.value,u,l=null,g,i,c,d=null,f;function m(){return f||(f=Ze(n)),f}let S=o?.callbackTransport??chunkOEFTOO47_cjs.g(o?.notifyChannel),h;function k(){if(o?.suppressSpawn||l)return;let p=fe({id:"task-executor",workerStore:h.boardWorkerStore(),handleRequest:async(x,B)=>{let v=await D(B.ref,B.args,{cliDir:m(),cwd:process.cwd(),label:"fsBoardAdapter.boardWorker"});if(v.result!=="success"){let R=typeof v.data?.error=="string"?v.data.error:v.error;throw new Error(R||v.result)}}});l=ee(p).catch(x=>{o?.onWarn?.(`[board-worker] in-process queue drain failed: ${x instanceof Error?x.message:String(x)}`);}).finally(()=>{l=null,h.boardWorkerStore().peekActive().length>0&&k();});}return h={kvStorage:p=>se(b(s,`.${p}`)),blobStorage:p=>p?U(b(s,p)):U(s),scratchStorage:()=>G(b(s,".tmp")),scratchStorageForRef:p=>G(chunkSFVO2LB2_cjs.b(p).value),archiveFactory:()=>oe(b(s,"archive")),archiveFactoryForRef:p=>oe(chunkSFVO2LB2_cjs.b(p).value),journalAdapter:()=>Ve(s),boardWorkerStore:()=>(u||(u=H(_(b(s,".board-worker-queue")))),u),chatAgentStore:()=>(g||(g=H(_(b(s,".chat-agent-queue")))),g),processAccumulatedStore:()=>(i||(i=_(b(s,".process-accumulated-queue"))),i),lock:ze(b(s,Yt)),callbackTransport:S,async dispatchExecution(p,x){let B=!!x.output?.ref;if(p.howToRun==="queue-storage")try{let R=u??H(_(b(s,".board-worker-queue")));u||(u=R);let E=typeof p.extra?.boardId=="string"?p.extra.boardId:void 0;if(B)return R.enqueueRequest({boardId:E,ref:p,args:x}),{dispatched:!0};let F=x.source_def?.bindTo??X().slice(0,8),w=G(b(s,".tmp")),I=w.create(JSON.stringify(x,null,2),`exec-in-${F}`,".json"),J=w.getUniqueKey(`exec-out-${F}`,".json"),O=w.getUniqueKey(`exec-err-${F}`,".txt"),ae=chunkSFVO2LB2_cjs.a(w.keyRef(I)),Y=chunkSFVO2LB2_cjs.a(w.keyRef(J)),ie=chunkSFVO2LB2_cjs.a(w.keyRef(O));return R.enqueueRequest({boardId:E,ref:p,args:{subcommand:"run-source-fetch",inRef:ae,outRef:Y,errRef:ie}}),{dispatched:!0}}catch(R){return {dispatched:false,error:R instanceof Error?R.message:String(R)}}if(B&&(p.howToRun==="http:post"||p.howToRun==="in-process-loop"))try{if(p.howToRun==="http:post"){let F=$(p.whatToRun),w=await fetch(F,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({...x,...p.extra?{extra:p.extra}:{}})});if(!w.ok){let I=await w.text().catch(()=>"");return {dispatched:!1,error:`HTTP ${w.status}: ${I}`}}return {dispatched:!0}}let R=await D(p,x,{cwd:process.cwd(),label:"dispatchExecution.directHostedWorker"});return R.result==="success"?{dispatched:!0}:{dispatched:!1,error:(typeof R.data?.error=="string"?R.data.error:R.error)||R.result}}catch(R){return {dispatched:false,error:R instanceof Error?R.message:String(R)}}let v=p.howToRun==="local-node"||p.howToRun==="local-process"||p.howToRun==="local-python"||p.howToRun==="built-in";if(o?.suppressSpawn&&v)return {dispatched:false};try{let R=x.source_def?.bindTo??X().slice(0,8),E=G(b(s,".tmp")),F=E.create(JSON.stringify(x,null,2),`exec-in-${R}`,".json"),w=E.getUniqueKey(`exec-out-${R}`,".json"),I=E.getUniqueKey(`exec-err-${R}`,".txt"),J=chunkSFVO2LB2_cjs.a(E.keyRef(F)),O=chunkSFVO2LB2_cjs.a(E.keyRef(w)),ae=chunkSFVO2LB2_cjs.a(E.keyRef(I)),Y=u??H(_(b(s,".board-worker-queue")));u||(u=Y);let ie=typeof p.extra?.boardId=="string"?p.extra.boardId:void 0;return Y.enqueueRequest({boardId:ie,ref:p,args:{subcommand:"run-source-fetch",inRef:J,outRef:O,errRef:ae}}),k(),{dispatched:!0}}catch(R){let E=R instanceof Error?R.message:String(R);try{let F=oe(b(s,"archive")),w=new Date().toISOString().replace(/[:.]/g,"-"),I=x.source_def?.bindTo??"unknown";F.blob("exec-failures").write(`${w}-${I}.json`,JSON.stringify({error:E,args:x,ref:p,at:new Date().toISOString()},null,2));}catch{}return {dispatched:false,error:E}}},supportsDirectSourceOutput(p){return p.howToRun==="queue-storage"||p.howToRun==="http:post"||p.howToRun==="in-process-loop"},resolveBlob(p){let x=Be(p.value)?we().read(p.value):U(s).read(p.value);if(x===null)throw new Error(`resolveBlob: blob not found: ::${p.kind}::${p.value}`);return x},hashFn:Ue,genId:()=>Ie(`${Date.now()}-${Math.random()}`).slice(0,32),kvStorageForRef:p=>se(chunkSFVO2LB2_cjs.b(p).value),requestProcessAccumulated(){if(o?.suppressSpawn||d)return;let p=this,x=c??=chunkOEFTOO47_cjs.y(e,p),B=pe({id:"process-accumulated",queueStorage:p.processAccumulatedStore(),handleMessage:async()=>{let v=await x.processAccumulatedEvents({});if(v.status!=="success")throw new Error(v.error||`processAccumulatedEvents returned ${v.status}`)}});d=ee(B).catch(v=>{o?.onWarn?.(`[process-accumulated] in-process queue drain failed: ${v instanceof Error?v.message:String(v)}`);}).finally(()=>{d=null,p.processAccumulatedStore().peekActive().length>0&&p.requestProcessAccumulated?.();});},publishBoardChangeNotifications(p){if(!o?.notifyChannel||p.length===0)return;let x=p.map(B=>({id:X(),ts:new Date().toISOString(),boardRef:chunkSFVO2LB2_cjs.a(e),notification:B}));Le(o.notifyChannel,x,o.onWarn);},onWarn:o?.onWarn},h}function Jr(e,t,r){let{cliDir:n,opts:o}=Xt(t,r),s,u=()=>(s||(s=Ze(n)),s);return {...er(e,n,o),async invokeExecutor(g,i,c){if(g.howToRun==="queue-storage")throw new Error("queue-storage does not support inline executor request/response");if(g.howToRun==="http:post"||g.howToRun==="http:get"||g.howToRun==="in-process-loop"){let h=await D(g,{subcommand:i,...c?.input!==void 0?{input:c.input}:{},...g.extra?{extra:g.extra}:{}},{cwd:process.cwd(),timeoutMs:c?.timeout??3e4,label:`invokeExecutor:${i}`});if(h.result!=="success"){let k=typeof h.data?.error=="string"?h.data.error:h.error;throw new Error(k||`executor request failed: ${h.result}`)}return typeof h.data?.stdout=="string"?h.data.stdout:JSON.stringify(h.data??{})}let{command:d,baseArgs:f}=te(g,u()),m=g.extra?["--extra",Buffer.from(JSON.stringify(g.extra)).toString("base64")]:[],S=[...f,i,...m];return await new Promise((h,k)=>{let p=child_process.spawn(d,S,{cwd:process.cwd(),stdio:"pipe",windowsHide:true,shell:process.platform==="win32"&&/\.(cmd|bat)$/i.test(d)}),x=[],B=[],v=false,R=null,E=w=>{v||(v=true,R&&clearTimeout(R),k(w));},F=w=>{v||(v=true,R&&clearTimeout(R),h(w));};p.stdout.on("data",w=>{x.push(Buffer.from(w));}),p.stderr.on("data",w=>{B.push(Buffer.from(w));}),p.on("error",w=>{let I=w;I.stdout=Buffer.concat(x).toString("utf-8"),I.stderr=Buffer.concat(B).toString("utf-8"),E(I);}),p.on("close",w=>{let I=Buffer.concat(x).toString("utf-8"),J=Buffer.concat(B).toString("utf-8");if(w===0){F(I);return}let O=new Error(J.trim()||`executor exited with status ${w}`);O.stdout=I,O.stderr=J,E(O);}),c?.timeout&&c.timeout>0&&(R=setTimeout(()=>{p.kill();let w=new Error(`executor timed out after ${c.timeout}ms`);w.stdout=Buffer.concat(x).toString("utf-8"),w.stderr=Buffer.concat(B).toString("utf-8"),E(w);},c.timeout)),c?.input!==void 0?p.stdin.end(c.input):p.stdin.end();})},validateSchema(g){let i=chunkNMZ6XNLB_cjs.d(g);return {ok:i.errors.length===0,errors:i.errors}},absoluteBlob:we()}}function Dr(e,t={}){let r=t.chatsSubdir??"chats",n=t.kvSubdir??".kv",o=n?[n,"chat"]:["chat"],s=r&&!Ye(e,r)?b(e,r):e,u=se(b(e,...o));return chunkWOALA3V5_cjs.a(l=>{let i=`${String(l).replace(/[^a-zA-Z0-9_-]/g,"_")}.jsonl`,c=b(s,i);return ke(c)},u)}function Hr(e,t={}){let r=t.filesSubdir??"files",n=r&&!Ye(e,r)?b(e,r):e;return chunkWOALA3V5_cjs.c(U(n))}function Kr(e){try{let t=JSON.parse(Buffer.from(e,"base64url").toString());return typeof t.br=="string"?t.br:null}catch{return null}}Object.defineProperty(exports,"createArtifactsStore",{enumerable:true,get:function(){return chunkWOALA3V5_cjs.c}});Object.defineProperty(exports,"createCardFileMetadataStore",{enumerable:true,get:function(){return chunkWOALA3V5_cjs.e}});Object.defineProperty(exports,"createChatStorage",{enumerable:true,get:function(){return chunkWOALA3V5_cjs.a}});Object.defineProperty(exports,"createFileArtifactsStore",{enumerable:true,get:function(){return chunkWOALA3V5_cjs.d}});Object.defineProperty(exports,"createInMemoryChatStorage",{enumerable:true,get:function(){return chunkWOALA3V5_cjs.b}});Object.defineProperty(exports,"createQueueLaneRegistry",{enumerable:true,get:function(){return chunkWOALA3V5_cjs.f}});Object.defineProperty(exports,"BOARD_GRAPH_KEY",{enumerable:true,get:function(){return chunkOEFTOO47_cjs.n}});Object.defineProperty(exports,"EMPTY_CONFIG",{enumerable:true,get:function(){return chunkOEFTOO47_cjs.u}});Object.defineProperty(exports,"SNAPSHOT_SCHEMA_VERSION_V1",{enumerable:true,get:function(){return chunkOEFTOO47_cjs.m}});Object.defineProperty(exports,"createBoardLiveCardsNonCorePublic",{enumerable:true,get:function(){return chunkOEFTOO47_cjs.z}});Object.defineProperty(exports,"createBoardLiveCardsPublic",{enumerable:true,get:function(){return chunkOEFTOO47_cjs.y}});Object.defineProperty(exports,"createCardStore",{enumerable:true,get:function(){return chunkOEFTOO47_cjs.l}});Object.defineProperty(exports,"createHttpBoardCallbackTransport",{enumerable:true,get:function(){return chunkOEFTOO47_cjs.e}});Object.defineProperty(exports,"createInProcessBoardCallbackTransport",{enumerable:true,get:function(){return chunkOEFTOO47_cjs.f}});Object.defineProperty(exports,"createLocalNodeBoardCallbackTransport",{enumerable:true,get:function(){return chunkOEFTOO47_cjs.g}});Object.defineProperty(exports,"executionRefFromScriptPath",{enumerable:true,get:function(){return chunkU2N6MCD5_cjs.a}});Object.defineProperty(exports,"parseExecutionRef",{enumerable:true,get:function(){return chunkU2N6MCD5_cjs.c}});Object.defineProperty(exports,"serializeExecutionRef",{enumerable:true,get:function(){return chunkU2N6MCD5_cjs.b}});Object.defineProperty(exports,"parseRef",{enumerable:true,get:function(){return chunkSFVO2LB2_cjs.b}});Object.defineProperty(exports,"serializeRef",{enumerable:true,get:function(){return chunkSFVO2LB2_cjs.a}});Object.defineProperty(exports,"createBoardLiveCardsMcp",{enumerable:true,get:function(){return chunkGJJMEAVN_cjs.a}});Object.defineProperty(exports,"createCardStorePublic",{enumerable:true,get:function(){return chunkYMEIPKLW_cjs.a}});Object.defineProperty(exports,"createArtifactsStorePublic",{enumerable:true,get:function(){return chunkP7ZCDICS_cjs.a}});exports.buildLocalBaseSpec=te;exports.createBoardWorkerQueueLane=fe;exports.createBoardWorkerStore=H;exports.createExecutionRefInvoker=Lt;exports.createFsBoardChatStorage=Dr;exports.createFsBoardFileArtifactsStore=Hr;exports.createFsBoardNonCorePlatformAdapter=Jr;exports.createFsBoardPlatformAdapter=er;exports.createFsQueueStorage=_;exports.createNodeSpawnInvocationAdapter=_r;exports.createQueueStorageLane=pe;exports.decodeBoardRefFromToken=Kr;exports.drainQueueLaneToIdle=ee;exports.evaluateArgsMassaging=me;exports.invokeExecutionRef=D;exports.invokeExecutionRefSync=ye;exports.invokeRefSync=qt;exports.registerInProcessExecutionHandler=Ft;exports.resolveWhatToRunValue=$;exports.resolveYamlFlowCliPath=Ne;exports.startQueueLaneRunner=Qe;exports.startQueueLaneRunners=At;exports.unregisterInProcessExecutionHandler=Mt;//# sourceMappingURL=board-live-cards-node.cjs.map
|
|
12
12
|
//# sourceMappingURL=board-live-cards-node.cjs.map
|
|
@@ -1,18 +1,19 @@
|
|
|
1
|
-
import { a as ArtifactsStore } from './artifacts-store-lib-
|
|
2
|
-
export { c as createArtifactsStore, b as createCardFileMetadataStore, d as createFileArtifactsStore } from './artifacts-store-lib-
|
|
3
|
-
import { I as InvocationAdapter } from './
|
|
4
|
-
export { D as DescribeEnvelope } from './
|
|
5
|
-
import { a as KindValueRef,
|
|
6
|
-
export { p as parseRef, s as serializeRef } from './storage-interface-
|
|
7
|
-
import {
|
|
8
|
-
export {
|
|
9
|
-
import { c as ChatStorage } from './chat-storage-lib-
|
|
10
|
-
export { b as ChatConfig, C as ChatRecord, d as createChatStorage, e as createInMemoryChatStorage } from './chat-storage-lib-
|
|
1
|
+
import { a as ArtifactsStore } from './artifacts-store-lib-BR-Samty.cjs';
|
|
2
|
+
export { c as createArtifactsStore, b as createCardFileMetadataStore, d as createFileArtifactsStore } from './artifacts-store-lib-BR-Samty.cjs';
|
|
3
|
+
import { h as QueueLaneLease, i as QueueLaneDescriptor, Q as QueueLaneRegistry, I as InvocationAdapter } from './queue-lane-registry-BPKWWgd4.cjs';
|
|
4
|
+
export { D as DescribeEnvelope, j as createQueueLaneRegistry } from './queue-lane-registry-BPKWWgd4.cjs';
|
|
5
|
+
import { a as KindValueRef, g as QueueStorage } from './storage-interface-BFiD3kyB.cjs';
|
|
6
|
+
export { p as parseRef, s as serializeRef } from './storage-interface-BFiD3kyB.cjs';
|
|
7
|
+
import { l as BoardWorkerStore, B as BoardWorkerRequest, g as BoardCallbackTransport, e as BoardNonCorePlatformAdapter, f as BoardPlatformAdapter } from './board-live-cards-public-wkNmBIRC.cjs';
|
|
8
|
+
export { m as BOARD_GRAPH_KEY, n as BoardLiveCardsNonCorePublic, d as BoardLiveCardsPublic, o as BoardWorkerDeadLetterRequest, p as BoardWorkerLeasedRequest, q as BoardWorkerQueuedRequest, a as CommandInput, C as CommandResult, E as EMPTY_CONFIG, L as LiveCard, r as SNAPSHOT_SCHEMA_VERSION_V1, s as createBoardLiveCardsNonCorePublic, t as createBoardLiveCardsPublic, u as createBoardWorkerStore, v as createCardStore, w as createHttpBoardCallbackTransport, x as createInProcessBoardCallbackTransport, y as createLocalNodeBoardCallbackTransport } from './board-live-cards-public-wkNmBIRC.cjs';
|
|
9
|
+
import { c as ChatStorage } from './chat-storage-lib-BIUbE-fM.cjs';
|
|
10
|
+
export { b as ChatConfig, C as ChatRecord, d as createChatStorage, e as createInMemoryChatStorage } from './chat-storage-lib-BIUbE-fM.cjs';
|
|
11
|
+
export { BoardLiveCardsMcp, BoardLiveCardsMcpBoardStatusResult, BoardLiveCardsMcpDeps, BoardLiveCardsMcpDiscoverSourceKindsResult, BoardLiveCardsMcpFileDownloadDescriptor, BoardLiveCardsMcpInspectCardDefinitionAndRuntimeResult, BoardLiveCardsMcpInspectChatMessagesResult, BoardLiveCardsMcpManageUpsertCardResult, createBoardLiveCardsMcp } from './board-live-cards-mcp.cjs';
|
|
11
12
|
import { ExecutionRef, ArgsMassaging } from './execution-refs.cjs';
|
|
12
13
|
export { executionRefFromScriptPath, parseExecutionRef, serializeExecutionRef } from './execution-refs.cjs';
|
|
13
|
-
export { BoardLiveCardsMcp, BoardLiveCardsMcpBoardStatusResult, BoardLiveCardsMcpDeps, BoardLiveCardsMcpDiscoverSourceKindsResult, BoardLiveCardsMcpFileDownloadDescriptor, BoardLiveCardsMcpInspectCardDefinitionAndRuntimeResult, BoardLiveCardsMcpInspectChatMessagesResult, BoardLiveCardsMcpManageUpsertCardResult, createBoardLiveCardsMcp } from './board-live-cards-mcp.cjs';
|
|
14
14
|
export { createCardStorePublic } from './card-store-public.cjs';
|
|
15
15
|
export { createArtifactsStorePublic } from './artifacts-store-public.cjs';
|
|
16
|
+
import './board-live-cards-public-async-dMWNbWq6.cjs';
|
|
16
17
|
import './types-BBhqYGhE.cjs';
|
|
17
18
|
import './chat-store-public.cjs';
|
|
18
19
|
|
|
@@ -167,25 +168,42 @@ declare function invokeRefSync(ref: ExecutionRef, args: Record<string, unknown>,
|
|
|
167
168
|
|
|
168
169
|
declare function createFsQueueStorage(rootDir: string): QueueStorage;
|
|
169
170
|
|
|
170
|
-
interface
|
|
171
|
+
interface CreateBoardWorkerQueueLaneOptions {
|
|
172
|
+
id?: string;
|
|
171
173
|
workerStore: BoardWorkerStore;
|
|
172
|
-
|
|
174
|
+
handleRequest(args: Record<string, unknown>, request: BoardWorkerRequest): Promise<void>;
|
|
175
|
+
pollIntervalMs?: number;
|
|
176
|
+
visibilityMs?: number;
|
|
177
|
+
concurrency?: number;
|
|
178
|
+
maxAttempts?: number;
|
|
179
|
+
onError?: (error: unknown, lease: QueueLaneLease<BoardWorkerRequest>) => void;
|
|
180
|
+
}
|
|
181
|
+
interface CreateQueueStorageLaneOptions<TMessage> {
|
|
182
|
+
id: string;
|
|
183
|
+
queueStorage: QueueStorage;
|
|
184
|
+
handleMessage(message: TMessage, lease: QueueLaneLease<TMessage>): Promise<void>;
|
|
173
185
|
pollIntervalMs?: number;
|
|
174
186
|
visibilityMs?: number;
|
|
175
187
|
concurrency?: number;
|
|
176
188
|
maxAttempts?: number;
|
|
177
|
-
onError?: (error: unknown, lease:
|
|
189
|
+
onError?: (error: unknown, lease: QueueLaneLease<TMessage>) => void;
|
|
178
190
|
}
|
|
179
|
-
declare function
|
|
191
|
+
declare function createBoardWorkerQueueLane(opts: CreateBoardWorkerQueueLaneOptions): QueueLaneDescriptor<BoardWorkerRequest>;
|
|
192
|
+
declare function createQueueStorageLane<TMessage>(opts: CreateQueueStorageLaneOptions<TMessage>): QueueLaneDescriptor<TMessage>;
|
|
193
|
+
declare function startQueueLaneRunner<TMessage>(lane: QueueLaneDescriptor<TMessage>): () => void;
|
|
194
|
+
declare function drainQueueLaneToIdle<TMessage>(lane: QueueLaneDescriptor<TMessage>, opts?: {
|
|
195
|
+
maxPasses?: number;
|
|
196
|
+
}): Promise<number>;
|
|
197
|
+
declare function startQueueLaneRunners(registryOrLanes: QueueLaneRegistry | QueueLaneDescriptor[]): () => void;
|
|
180
198
|
|
|
181
199
|
/**
|
|
182
|
-
* Creates
|
|
200
|
+
* Creates a Node host InvocationAdapter backed by `spawn`/`spawnSync`.
|
|
183
201
|
*
|
|
184
202
|
* Supports howToRun: 'local-node'
|
|
185
|
-
* → spawns the script as a detached
|
|
203
|
+
* → the Node host adapter spawns the script as a detached child process.
|
|
186
204
|
*
|
|
187
205
|
* Pass to createSingleBoardServerRuntime / createMultiBoardServerRuntime as
|
|
188
|
-
* the `invocationAdapter` option. This is the reference Node
|
|
206
|
+
* the `invocationAdapter` option. This is the reference Node host implementation;
|
|
189
207
|
* replace with your own for Azure Functions, Lambda, etc.
|
|
190
208
|
*/
|
|
191
209
|
declare function createNodeSpawnInvocationAdapter(): InvocationAdapter;
|
|
@@ -193,11 +211,11 @@ type FsBoardAdapterOpts = {
|
|
|
193
211
|
onWarn?: (msg: string) => void;
|
|
194
212
|
suppressSpawn?: boolean;
|
|
195
213
|
notifyChannel?: string;
|
|
196
|
-
|
|
214
|
+
callbackTransport?: BoardCallbackTransport;
|
|
197
215
|
};
|
|
198
216
|
type FsBoardNonCoreAdapterOpts = {
|
|
199
217
|
onWarn?: (msg: string) => void;
|
|
200
|
-
|
|
218
|
+
callbackTransport?: BoardCallbackTransport;
|
|
201
219
|
};
|
|
202
220
|
declare function createFsBoardPlatformAdapter(baseRef: KindValueRef, cliDirOrOpts?: string | FsBoardAdapterOpts, maybeOpts?: FsBoardAdapterOpts): BoardPlatformAdapter;
|
|
203
221
|
declare function createFsBoardNonCorePlatformAdapter(baseRef: KindValueRef, cliDirOrOpts?: string | FsBoardNonCoreAdapterOpts, maybeOpts?: FsBoardNonCoreAdapterOpts): BoardNonCorePlatformAdapter;
|
|
@@ -219,4 +237,4 @@ declare function createFsBoardFileArtifactsStore(baseDir: string, opts?: FsBoard
|
|
|
219
237
|
*/
|
|
220
238
|
declare function decodeBoardRefFromToken(token: string): string | null;
|
|
221
239
|
|
|
222
|
-
export { BoardNonCorePlatformAdapter, BoardPlatformAdapter,
|
|
240
|
+
export { BoardNonCorePlatformAdapter, BoardPlatformAdapter, BoardWorkerRequest, BoardWorkerStore, ChatStorage, type CreateExecutionRefInvokerOptions, ExecutionRef, type ExecutionRefInvoker, type FsBoardChatStorageOptions, type FsBoardFileArtifactsStoreOptions, type InProcessExecutionHandler, InvocationAdapter, type InvokeExecutionRefOptions, type InvokeRefResult, KindValueRef, QueueLaneDescriptor, QueueLaneLease, QueueLaneRegistry, type SyncTransportInvoker, type TransportInvoker, buildLocalBaseSpec, createBoardWorkerQueueLane, createExecutionRefInvoker, createFsBoardChatStorage, createFsBoardFileArtifactsStore, createFsBoardNonCorePlatformAdapter, createFsBoardPlatformAdapter, createFsQueueStorage, createNodeSpawnInvocationAdapter, createQueueStorageLane, decodeBoardRefFromToken, drainQueueLaneToIdle, evaluateArgsMassaging, invokeExecutionRef, invokeExecutionRefSync, invokeRefSync, registerInProcessExecutionHandler, resolveWhatToRunValue, resolveYamlFlowCliPath, startQueueLaneRunner, startQueueLaneRunners, unregisterInProcessExecutionHandler };
|
|
@@ -1,18 +1,19 @@
|
|
|
1
|
-
import { a as ArtifactsStore } from './artifacts-store-lib-
|
|
2
|
-
export { c as createArtifactsStore, b as createCardFileMetadataStore, d as createFileArtifactsStore } from './artifacts-store-lib-
|
|
3
|
-
import { I as InvocationAdapter } from './
|
|
4
|
-
export { D as DescribeEnvelope } from './
|
|
5
|
-
import { a as KindValueRef,
|
|
6
|
-
export { p as parseRef, s as serializeRef } from './storage-interface-
|
|
7
|
-
import {
|
|
8
|
-
export {
|
|
9
|
-
import { c as ChatStorage } from './chat-storage-lib-
|
|
10
|
-
export { b as ChatConfig, C as ChatRecord, d as createChatStorage, e as createInMemoryChatStorage } from './chat-storage-lib-
|
|
1
|
+
import { a as ArtifactsStore } from './artifacts-store-lib-DT7XlWUL.js';
|
|
2
|
+
export { c as createArtifactsStore, b as createCardFileMetadataStore, d as createFileArtifactsStore } from './artifacts-store-lib-DT7XlWUL.js';
|
|
3
|
+
import { h as QueueLaneLease, i as QueueLaneDescriptor, Q as QueueLaneRegistry, I as InvocationAdapter } from './queue-lane-registry-Be6c0ftj.js';
|
|
4
|
+
export { D as DescribeEnvelope, j as createQueueLaneRegistry } from './queue-lane-registry-Be6c0ftj.js';
|
|
5
|
+
import { a as KindValueRef, g as QueueStorage } from './storage-interface-BFiD3kyB.js';
|
|
6
|
+
export { p as parseRef, s as serializeRef } from './storage-interface-BFiD3kyB.js';
|
|
7
|
+
import { l as BoardWorkerStore, B as BoardWorkerRequest, g as BoardCallbackTransport, e as BoardNonCorePlatformAdapter, f as BoardPlatformAdapter } from './board-live-cards-public-BMUIPOrc.js';
|
|
8
|
+
export { m as BOARD_GRAPH_KEY, n as BoardLiveCardsNonCorePublic, d as BoardLiveCardsPublic, o as BoardWorkerDeadLetterRequest, p as BoardWorkerLeasedRequest, q as BoardWorkerQueuedRequest, a as CommandInput, C as CommandResult, E as EMPTY_CONFIG, L as LiveCard, r as SNAPSHOT_SCHEMA_VERSION_V1, s as createBoardLiveCardsNonCorePublic, t as createBoardLiveCardsPublic, u as createBoardWorkerStore, v as createCardStore, w as createHttpBoardCallbackTransport, x as createInProcessBoardCallbackTransport, y as createLocalNodeBoardCallbackTransport } from './board-live-cards-public-BMUIPOrc.js';
|
|
9
|
+
import { c as ChatStorage } from './chat-storage-lib-BlG-sobS.js';
|
|
10
|
+
export { b as ChatConfig, C as ChatRecord, d as createChatStorage, e as createInMemoryChatStorage } from './chat-storage-lib-BlG-sobS.js';
|
|
11
|
+
export { BoardLiveCardsMcp, BoardLiveCardsMcpBoardStatusResult, BoardLiveCardsMcpDeps, BoardLiveCardsMcpDiscoverSourceKindsResult, BoardLiveCardsMcpFileDownloadDescriptor, BoardLiveCardsMcpInspectCardDefinitionAndRuntimeResult, BoardLiveCardsMcpInspectChatMessagesResult, BoardLiveCardsMcpManageUpsertCardResult, createBoardLiveCardsMcp } from './board-live-cards-mcp.js';
|
|
11
12
|
import { ExecutionRef, ArgsMassaging } from './execution-refs.js';
|
|
12
13
|
export { executionRefFromScriptPath, parseExecutionRef, serializeExecutionRef } from './execution-refs.js';
|
|
13
|
-
export { BoardLiveCardsMcp, BoardLiveCardsMcpBoardStatusResult, BoardLiveCardsMcpDeps, BoardLiveCardsMcpDiscoverSourceKindsResult, BoardLiveCardsMcpFileDownloadDescriptor, BoardLiveCardsMcpInspectCardDefinitionAndRuntimeResult, BoardLiveCardsMcpInspectChatMessagesResult, BoardLiveCardsMcpManageUpsertCardResult, createBoardLiveCardsMcp } from './board-live-cards-mcp.js';
|
|
14
14
|
export { createCardStorePublic } from './card-store-public.js';
|
|
15
15
|
export { createArtifactsStorePublic } from './artifacts-store-public.js';
|
|
16
|
+
import './board-live-cards-public-async-DKZqbJVU.js';
|
|
16
17
|
import './types-BBhqYGhE.js';
|
|
17
18
|
import './chat-store-public.js';
|
|
18
19
|
|
|
@@ -167,25 +168,42 @@ declare function invokeRefSync(ref: ExecutionRef, args: Record<string, unknown>,
|
|
|
167
168
|
|
|
168
169
|
declare function createFsQueueStorage(rootDir: string): QueueStorage;
|
|
169
170
|
|
|
170
|
-
interface
|
|
171
|
+
interface CreateBoardWorkerQueueLaneOptions {
|
|
172
|
+
id?: string;
|
|
171
173
|
workerStore: BoardWorkerStore;
|
|
172
|
-
|
|
174
|
+
handleRequest(args: Record<string, unknown>, request: BoardWorkerRequest): Promise<void>;
|
|
175
|
+
pollIntervalMs?: number;
|
|
176
|
+
visibilityMs?: number;
|
|
177
|
+
concurrency?: number;
|
|
178
|
+
maxAttempts?: number;
|
|
179
|
+
onError?: (error: unknown, lease: QueueLaneLease<BoardWorkerRequest>) => void;
|
|
180
|
+
}
|
|
181
|
+
interface CreateQueueStorageLaneOptions<TMessage> {
|
|
182
|
+
id: string;
|
|
183
|
+
queueStorage: QueueStorage;
|
|
184
|
+
handleMessage(message: TMessage, lease: QueueLaneLease<TMessage>): Promise<void>;
|
|
173
185
|
pollIntervalMs?: number;
|
|
174
186
|
visibilityMs?: number;
|
|
175
187
|
concurrency?: number;
|
|
176
188
|
maxAttempts?: number;
|
|
177
|
-
onError?: (error: unknown, lease:
|
|
189
|
+
onError?: (error: unknown, lease: QueueLaneLease<TMessage>) => void;
|
|
178
190
|
}
|
|
179
|
-
declare function
|
|
191
|
+
declare function createBoardWorkerQueueLane(opts: CreateBoardWorkerQueueLaneOptions): QueueLaneDescriptor<BoardWorkerRequest>;
|
|
192
|
+
declare function createQueueStorageLane<TMessage>(opts: CreateQueueStorageLaneOptions<TMessage>): QueueLaneDescriptor<TMessage>;
|
|
193
|
+
declare function startQueueLaneRunner<TMessage>(lane: QueueLaneDescriptor<TMessage>): () => void;
|
|
194
|
+
declare function drainQueueLaneToIdle<TMessage>(lane: QueueLaneDescriptor<TMessage>, opts?: {
|
|
195
|
+
maxPasses?: number;
|
|
196
|
+
}): Promise<number>;
|
|
197
|
+
declare function startQueueLaneRunners(registryOrLanes: QueueLaneRegistry | QueueLaneDescriptor[]): () => void;
|
|
180
198
|
|
|
181
199
|
/**
|
|
182
|
-
* Creates
|
|
200
|
+
* Creates a Node host InvocationAdapter backed by `spawn`/`spawnSync`.
|
|
183
201
|
*
|
|
184
202
|
* Supports howToRun: 'local-node'
|
|
185
|
-
* → spawns the script as a detached
|
|
203
|
+
* → the Node host adapter spawns the script as a detached child process.
|
|
186
204
|
*
|
|
187
205
|
* Pass to createSingleBoardServerRuntime / createMultiBoardServerRuntime as
|
|
188
|
-
* the `invocationAdapter` option. This is the reference Node
|
|
206
|
+
* the `invocationAdapter` option. This is the reference Node host implementation;
|
|
189
207
|
* replace with your own for Azure Functions, Lambda, etc.
|
|
190
208
|
*/
|
|
191
209
|
declare function createNodeSpawnInvocationAdapter(): InvocationAdapter;
|
|
@@ -193,11 +211,11 @@ type FsBoardAdapterOpts = {
|
|
|
193
211
|
onWarn?: (msg: string) => void;
|
|
194
212
|
suppressSpawn?: boolean;
|
|
195
213
|
notifyChannel?: string;
|
|
196
|
-
|
|
214
|
+
callbackTransport?: BoardCallbackTransport;
|
|
197
215
|
};
|
|
198
216
|
type FsBoardNonCoreAdapterOpts = {
|
|
199
217
|
onWarn?: (msg: string) => void;
|
|
200
|
-
|
|
218
|
+
callbackTransport?: BoardCallbackTransport;
|
|
201
219
|
};
|
|
202
220
|
declare function createFsBoardPlatformAdapter(baseRef: KindValueRef, cliDirOrOpts?: string | FsBoardAdapterOpts, maybeOpts?: FsBoardAdapterOpts): BoardPlatformAdapter;
|
|
203
221
|
declare function createFsBoardNonCorePlatformAdapter(baseRef: KindValueRef, cliDirOrOpts?: string | FsBoardNonCoreAdapterOpts, maybeOpts?: FsBoardNonCoreAdapterOpts): BoardNonCorePlatformAdapter;
|
|
@@ -219,4 +237,4 @@ declare function createFsBoardFileArtifactsStore(baseDir: string, opts?: FsBoard
|
|
|
219
237
|
*/
|
|
220
238
|
declare function decodeBoardRefFromToken(token: string): string | null;
|
|
221
239
|
|
|
222
|
-
export { BoardNonCorePlatformAdapter, BoardPlatformAdapter,
|
|
240
|
+
export { BoardNonCorePlatformAdapter, BoardPlatformAdapter, BoardWorkerRequest, BoardWorkerStore, ChatStorage, type CreateExecutionRefInvokerOptions, ExecutionRef, type ExecutionRefInvoker, type FsBoardChatStorageOptions, type FsBoardFileArtifactsStoreOptions, type InProcessExecutionHandler, InvocationAdapter, type InvokeExecutionRefOptions, type InvokeRefResult, KindValueRef, QueueLaneDescriptor, QueueLaneLease, QueueLaneRegistry, type SyncTransportInvoker, type TransportInvoker, buildLocalBaseSpec, createBoardWorkerQueueLane, createExecutionRefInvoker, createFsBoardChatStorage, createFsBoardFileArtifactsStore, createFsBoardNonCorePlatformAdapter, createFsBoardPlatformAdapter, createFsQueueStorage, createNodeSpawnInvocationAdapter, createQueueStorageLane, decodeBoardRefFromToken, drainQueueLaneToIdle, evaluateArgsMassaging, invokeExecutionRef, invokeExecutionRefSync, invokeRefSync, registerInProcessExecutionHandler, resolveWhatToRunValue, resolveYamlFlowCliPath, startQueueLaneRunner, startQueueLaneRunners, unregisterInProcessExecutionHandler };
|