yaml-flow 8.5.3 → 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.
Files changed (176) hide show
  1. package/browser/asset-integrity.json +3 -3
  2. package/examples/board/demo-shell-with-server.html +2 -2
  3. package/examples/board/doc.html +2 -2
  4. package/examples/board/server/board-server.js +773 -13
  5. package/examples/board/server/board-worker/task-executor.js +166 -51
  6. package/examples/board/server/chat-flow/copilot-chat/assistant.js +25 -12
  7. package/examples/board/server/chat-flow/copilot-chat/probe.js +7 -0
  8. package/examples/board/server/chat-flow/copilot-chat/shared.js +97 -0
  9. package/examples/board/server/chat-flow/flow-steps.json +109 -51
  10. package/examples/board/server-config.json +2 -0
  11. package/examples/board/test/server-http-test.js +878 -67
  12. package/examples/board-local/demo-shell-localstorage.html +3 -3
  13. package/lib/{artifacts-store-lib-CVgtQrNZ.d.cts → artifacts-store-lib-BR-Samty.d.cts} +1 -1
  14. package/lib/{artifacts-store-lib-D-k-E8Vy.d.ts → artifacts-store-lib-DT7XlWUL.d.ts} +1 -1
  15. package/lib/artifacts-store-public.cjs +1 -1
  16. package/lib/artifacts-store-public.d.cts +3 -3
  17. package/lib/artifacts-store-public.d.ts +3 -3
  18. package/lib/artifacts-store-public.js +1 -1
  19. package/lib/batch/index.cjs +1 -1
  20. package/lib/batch/index.js +1 -1
  21. package/lib/board-live-cards-mcp.cjs +1 -1
  22. package/lib/board-live-cards-mcp.d.cts +87 -34
  23. package/lib/board-live-cards-mcp.d.ts +87 -34
  24. package/lib/board-live-cards-mcp.js +1 -1
  25. package/lib/board-live-cards-node.cjs +8 -16
  26. package/lib/board-live-cards-node.d.cts +52 -14
  27. package/lib/board-live-cards-node.d.ts +52 -14
  28. package/lib/board-live-cards-node.js +8 -16
  29. package/lib/{board-live-cards-public-BGS22cMb.d.ts → board-live-cards-public-BMUIPOrc.d.ts} +90 -30
  30. package/lib/board-live-cards-public-async-DKZqbJVU.d.ts +256 -0
  31. package/lib/board-live-cards-public-async-dMWNbWq6.d.cts +256 -0
  32. package/lib/{board-live-cards-public-B13InXhC.d.cts → board-live-cards-public-wkNmBIRC.d.cts} +90 -30
  33. package/lib/board-live-cards-public.cjs +1 -2
  34. package/lib/board-live-cards-public.d.cts +2 -2
  35. package/lib/board-live-cards-public.d.ts +2 -2
  36. package/lib/board-live-cards-public.js +1 -2
  37. package/lib/board-live-cards-server-runtime.cjs +1 -7
  38. package/lib/board-live-cards-server-runtime.d.cts +7 -6
  39. package/lib/board-live-cards-server-runtime.d.ts +7 -6
  40. package/lib/board-live-cards-server-runtime.js +1 -7
  41. package/lib/board-livegraph-runtime/index.cjs +1 -2
  42. package/lib/board-livegraph-runtime/index.js +1 -2
  43. package/lib/board-worker-adapter.cjs +22 -7
  44. package/lib/board-worker-adapter.d.cts +28 -3
  45. package/lib/board-worker-adapter.d.ts +28 -3
  46. package/lib/board-worker-adapter.js +22 -7
  47. package/lib/card-compute/index.cjs +1 -9
  48. package/lib/card-compute/index.js +1 -9
  49. package/lib/card-store-public.cjs +1 -1
  50. package/lib/card-store-public.d.cts +2 -2
  51. package/lib/card-store-public.d.ts +2 -2
  52. package/lib/card-store-public.js +1 -1
  53. package/lib/card-validation.cjs +1 -9
  54. package/lib/card-validation.js +1 -9
  55. package/lib/{chat-storage-lib-0imhRX3l.d.cts → chat-storage-lib-BIUbE-fM.d.cts} +1 -1
  56. package/lib/{chat-storage-lib-CJn7a6OH.d.ts → chat-storage-lib-BlG-sobS.d.ts} +1 -1
  57. package/lib/chat-store-public.cjs +1 -1
  58. package/lib/chat-store-public.d.cts +3 -3
  59. package/lib/chat-store-public.d.ts +3 -3
  60. package/lib/chat-store-public.js +1 -1
  61. package/lib/chunk-2MZUYY65.cjs +2 -0
  62. package/lib/chunk-5EA2ESS4.cjs +16 -0
  63. package/lib/chunk-76ON3V7R.js +2 -0
  64. package/lib/chunk-7BKNHFNH.js +2 -0
  65. package/lib/chunk-BQS3EIEK.js +3 -0
  66. package/lib/chunk-CIAJNUR4.js +2 -0
  67. package/lib/chunk-DAXACY63.js +2 -0
  68. package/lib/chunk-FW4363Y4.js +2 -0
  69. package/lib/chunk-FZ2SBU5M.js +3 -0
  70. package/lib/chunk-G4XXRHL2.cjs +3 -0
  71. package/lib/chunk-GJJMEAVN.cjs +2 -0
  72. package/lib/chunk-GNFE24S7.cjs +2 -0
  73. package/lib/chunk-GYQXDNNI.cjs +2 -0
  74. package/lib/chunk-H5HBXPOI.cjs +3 -0
  75. package/lib/chunk-H5KD3JPY.cjs +2 -0
  76. package/lib/chunk-HEEDJEKM.js +2 -0
  77. package/lib/chunk-HLJH7LGW.js +16 -0
  78. package/lib/chunk-IXZG74EW.cjs +2 -0
  79. package/lib/chunk-JAL25FGA.cjs +2 -0
  80. package/lib/chunk-JM5EKT57.js +2 -0
  81. package/lib/chunk-JMDHDY6M.js +2 -0
  82. package/lib/chunk-KBELAKIY.js +2 -0
  83. package/lib/chunk-KHJABJ45.cjs +3 -0
  84. package/lib/chunk-KLRUISRY.cjs +2 -0
  85. package/lib/chunk-KQX6R4PV.cjs +8 -0
  86. package/lib/chunk-LODXIALE.cjs +2 -0
  87. package/lib/chunk-MLVTJASJ.js +2 -0
  88. package/lib/chunk-MNEOJWPS.js +10 -0
  89. package/lib/chunk-N6P2JW4W.js +3 -0
  90. package/lib/chunk-NMZ6XNLB.cjs +3 -0
  91. package/lib/chunk-OEFTOO47.cjs +3 -0
  92. package/lib/chunk-OPNGCSXJ.js +2 -0
  93. package/lib/chunk-OSWJKJLB.js +8 -0
  94. package/lib/chunk-P7ZCDICS.cjs +2 -0
  95. package/lib/chunk-PBCDDO4V.cjs +2 -0
  96. package/lib/chunk-PMUSJQSR.cjs +2 -0
  97. package/lib/chunk-Q6H7NINN.cjs +5 -0
  98. package/lib/chunk-QWBNDVUA.js +5 -0
  99. package/lib/chunk-S6DRP2HX.cjs +2 -0
  100. package/lib/chunk-SCWHDI3I.js +2 -0
  101. package/lib/chunk-SFVO2LB2.cjs +3 -0
  102. package/lib/chunk-U2N6MCD5.cjs +2 -0
  103. package/lib/chunk-UJ7ZTV4J.cjs +10 -0
  104. package/lib/chunk-VGT3TRQG.js +3 -0
  105. package/lib/chunk-VLBB3D6B.js +3 -0
  106. package/lib/chunk-VMW4Z6EF.js +3 -0
  107. package/lib/chunk-WDPOGXTY.js +2 -0
  108. package/lib/chunk-WOALA3V5.cjs +2 -0
  109. package/lib/chunk-X3LC4LII.js +2 -0
  110. package/lib/chunk-XQRNDX4Q.js +2 -0
  111. package/lib/chunk-YGKDQLYP.js +2 -0
  112. package/lib/chunk-YMEIPKLW.cjs +2 -0
  113. package/lib/cloud-storage.cjs +2 -0
  114. package/lib/cloud-storage.d.cts +177 -0
  115. package/lib/cloud-storage.d.ts +177 -0
  116. package/lib/cloud-storage.js +2 -0
  117. package/lib/config/index.cjs +1 -1
  118. package/lib/config/index.js +1 -1
  119. package/lib/continuous-event-graph/index.cjs +1 -2
  120. package/lib/continuous-event-graph/index.js +1 -2
  121. package/lib/event-graph/index.cjs +1 -22
  122. package/lib/event-graph/index.js +1 -22
  123. package/lib/execution-refs.cjs +1 -2
  124. package/lib/execution-refs.d.cts +3 -2
  125. package/lib/execution-refs.d.ts +3 -2
  126. package/lib/execution-refs.js +1 -2
  127. package/lib/index.cjs +2 -24
  128. package/lib/index.d.cts +1 -1
  129. package/lib/index.d.ts +1 -1
  130. package/lib/index.js +2 -24
  131. package/lib/{types-CIgsh56O.d.cts → queue-lane-registry-BPKWWgd4.d.cts} +66 -14
  132. package/lib/{types-30R357js.d.ts → queue-lane-registry-Be6c0ftj.d.ts} +66 -14
  133. package/lib/server-runtime/index.cjs +1 -7
  134. package/lib/server-runtime/index.d.cts +18 -7
  135. package/lib/server-runtime/index.d.ts +18 -7
  136. package/lib/server-runtime/index.js +1 -7
  137. package/lib/step-machine/index.cjs +1 -11
  138. package/lib/step-machine/index.js +1 -11
  139. package/lib/step-machine-public/index.cjs +1 -4
  140. package/lib/step-machine-public/index.d.cts +1 -1
  141. package/lib/step-machine-public/index.d.ts +1 -1
  142. package/lib/step-machine-public/index.js +1 -4
  143. package/lib/{storage-interface-B2WD9D5n.d.cts → storage-interface-BFiD3kyB.d.cts} +38 -1
  144. package/lib/{storage-interface-B2WD9D5n.d.ts → storage-interface-BFiD3kyB.d.ts} +38 -1
  145. package/lib/stores/index.cjs +1 -2
  146. package/lib/stores/index.d.cts +1 -1
  147. package/lib/stores/index.d.ts +1 -1
  148. package/lib/stores/index.js +1 -2
  149. package/lib/stores/kv.cjs +1 -2
  150. package/lib/stores/kv.d.cts +1 -1
  151. package/lib/stores/kv.d.ts +1 -1
  152. package/lib/stores/kv.js +1 -2
  153. package/lib/stores/memory.cjs +1 -1
  154. package/lib/stores/memory.js +1 -1
  155. package/package.json +7 -16
  156. package/cli/board-live-cards-lib-COi4bSpk.d.ts +0 -322
  157. package/cli/browser-api/board-live-cards-browser-adapter.d.ts +0 -36
  158. package/cli/browser-api/board-live-cards-browser-adapter.js +0 -4
  159. package/cli/browser-api/card-store-browser-api.d.ts +0 -25
  160. package/cli/browser-api/card-store-browser-api.js +0 -2
  161. package/cli/browser-api/jsonata-sync.cjs +0 -7623
  162. package/cli/bundled/artifacts-store-cli.mjs +0 -12
  163. package/cli/bundled/batch-runner-cli.mjs +0 -3
  164. package/cli/bundled/board-live-cards-cli.mjs +0 -29
  165. package/cli/bundled/card-store-cli.mjs +0 -154
  166. package/cli/bundled/chat-store-cli.mjs +0 -16
  167. package/cli/bundled/jsonata-sync.cjs +0 -7623
  168. package/cli/bundled/step-machine-cli.mjs +0 -150
  169. package/cli/execution-interface-BCIhu1gO.d.ts +0 -442
  170. package/cli/types-H3EMBPY2.d.ts +0 -398
  171. package/examples/board/server/README-mcp-api.md +0 -690
  172. package/examples/board/test/server-http-mcp-test.js +0 -1280
  173. package/lib/board-livegraph-runtime/jsonata-sync.cjs +0 -7623
  174. package/lib/card-compute/jsonata-sync.cjs +0 -7623
  175. package/lib/continuous-event-graph/jsonata-sync.cjs +0 -7623
  176. package/lib/server-runtime/jsonata-sync.cjs +0 -7623
@@ -6,13 +6,13 @@
6
6
  <title>Example Board Demo (LocalStorage Runtime)</title>
7
7
  <link rel="icon" type="image/svg+xml" href="../../browser/favicon.svg" />
8
8
  <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css" rel="stylesheet" />
9
- <script src="https://cdn.jsdelivr.net/npm/yaml-flow@8.5.3/browser/compute-jsonata.js"></script>
9
+ <script src="https://cdn.jsdelivr.net/npm/yaml-flow@8.6.2/browser/compute-jsonata.js"></script>
10
10
  <script src="https://cdn.jsdelivr.net/npm/chart.js"></script>
11
11
  <script src="https://cdn.jsdelivr.net/npm/marked/marked.min.js"></script>
12
12
  <script src="https://cdn.jsdelivr.net/npm/dompurify/dist/purify.min.js"></script>
13
13
  <script src="https://cdn.jsdelivr.net/npm/leader-line/leader-line.min.js"></script>
14
- <script src="https://cdn.jsdelivr.net/npm/yaml-flow@8.5.3/browser/live-cards.js"></script>
15
- <script src="https://cdn.jsdelivr.net/npm/yaml-flow@8.5.3/browser/board-livecards-localstorage.js"></script>
14
+ <script src="https://cdn.jsdelivr.net/npm/yaml-flow@8.6.2/browser/live-cards.js"></script>
15
+ <script src="https://cdn.jsdelivr.net/npm/yaml-flow@8.6.2/browser/board-livecards-localstorage.js"></script>
16
16
  </head>
17
17
  <body class="bg-light">
18
18
  <div class="container-fluid py-3">
@@ -1,4 +1,4 @@
1
- import { B as BlobStorage } from './storage-interface-B2WD9D5n.cjs';
1
+ import { B as BlobStorage } from './storage-interface-BFiD3kyB.cjs';
2
2
 
3
3
  /**
4
4
  * artifacts-store-lib.ts
@@ -1,4 +1,4 @@
1
- import { B as BlobStorage } from './storage-interface-B2WD9D5n.js';
1
+ import { B as BlobStorage } from './storage-interface-BFiD3kyB.js';
2
2
 
3
3
  /**
4
4
  * artifacts-store-lib.ts
@@ -1,2 +1,2 @@
1
- 'use strict';function f(r){function a(e){return {status:"success",data:e}}function s(e){return {status:"fail",error:e}}function u(e){return {status:"error",error:e instanceof Error?e.message:String(e)}}return {list(e){try{let t=e.params?.prefix??"";return a({artifacts:r.list(t)})}catch(t){return u(t)}},head(e){try{let t=e.params?.key;return t?a({artifact:r.head(t)}):s("head requires params.key")}catch(t){return u(t)}},put(e){try{let t=e.params?.key,i=e.params?.contentType;if(!t)return s("put requires params.key");let n=e.body;if(typeof n=="string")return a({artifact:r.putText(t,n,i)});if(n&&typeof n=="object"&&typeof n.text=="string")return a({artifact:r.putText(t,n.text,i)});if(n&&typeof n=="object"&&Array.isArray(n.bytes)){let o=n.bytes,m=new Uint8Array(o.map(c=>Math.max(0,Math.min(255,Number(c)||0))));return a({artifact:r.putBytes(t,m,i)})}return s("put requires body as string, {text}, or {bytes:number[]}")}catch(t){return u(t)}},get(e){try{let t=e.params?.key,i=e.params?.as??"base64";if(!t)return s("get requires params.key");let n=r.head(t);if(!n)return s(`artifact "${t}" not found`);if(i==="text"){let m=r.getText(t);return m===null?s(`artifact "${t}" not found`):a({key:t,contentType:n.contentType,size:n.size,text:m})}let o=r.getBytes(t);return o===null?s(`artifact "${t}" not found`):a({key:t,contentType:n.contentType,size:n.size,bytes:[...o]})}catch(t){return u(t)}},del(e){try{let t=e.params?.key;return t?(r.remove(t),a({ok:!0})):s("del requires params.key")}catch(t){return u(t)}}}}exports.createArtifactsStorePublic=f;//# sourceMappingURL=artifacts-store-public.cjs.map
1
+ 'use strict';var chunkP7ZCDICS_cjs=require('./chunk-P7ZCDICS.cjs');require('./chunk-GNFE24S7.cjs');Object.defineProperty(exports,"createArtifactsStorePublic",{enumerable:true,get:function(){return chunkP7ZCDICS_cjs.a}});//# sourceMappingURL=artifacts-store-public.cjs.map
2
2
  //# sourceMappingURL=artifacts-store-public.cjs.map
@@ -1,6 +1,6 @@
1
- import { a as CommandInput, C as CommandResult } from './board-live-cards-public-B13InXhC.cjs';
2
- import { A as ArtifactInfo, a as ArtifactsStore } from './artifacts-store-lib-CVgtQrNZ.cjs';
3
- import './storage-interface-B2WD9D5n.cjs';
1
+ import { a as CommandInput, C as CommandResult } from './board-live-cards-public-wkNmBIRC.cjs';
2
+ import { A as ArtifactInfo, a as ArtifactsStore } from './artifacts-store-lib-BR-Samty.cjs';
3
+ import './storage-interface-BFiD3kyB.cjs';
4
4
  import './execution-refs.cjs';
5
5
  import './types-BBhqYGhE.cjs';
6
6
 
@@ -1,6 +1,6 @@
1
- import { a as CommandInput, C as CommandResult } from './board-live-cards-public-BGS22cMb.js';
2
- import { A as ArtifactInfo, a as ArtifactsStore } from './artifacts-store-lib-D-k-E8Vy.js';
3
- import './storage-interface-B2WD9D5n.js';
1
+ import { a as CommandInput, C as CommandResult } from './board-live-cards-public-BMUIPOrc.js';
2
+ import { A as ArtifactInfo, a as ArtifactsStore } from './artifacts-store-lib-DT7XlWUL.js';
3
+ import './storage-interface-BFiD3kyB.js';
4
4
  import './execution-refs.js';
5
5
  import './types-BBhqYGhE.js';
6
6
 
@@ -1,2 +1,2 @@
1
- function f(r){function a(e){return {status:"success",data:e}}function s(e){return {status:"fail",error:e}}function u(e){return {status:"error",error:e instanceof Error?e.message:String(e)}}return {list(e){try{let t=e.params?.prefix??"";return a({artifacts:r.list(t)})}catch(t){return u(t)}},head(e){try{let t=e.params?.key;return t?a({artifact:r.head(t)}):s("head requires params.key")}catch(t){return u(t)}},put(e){try{let t=e.params?.key,i=e.params?.contentType;if(!t)return s("put requires params.key");let n=e.body;if(typeof n=="string")return a({artifact:r.putText(t,n,i)});if(n&&typeof n=="object"&&typeof n.text=="string")return a({artifact:r.putText(t,n.text,i)});if(n&&typeof n=="object"&&Array.isArray(n.bytes)){let o=n.bytes,m=new Uint8Array(o.map(c=>Math.max(0,Math.min(255,Number(c)||0))));return a({artifact:r.putBytes(t,m,i)})}return s("put requires body as string, {text}, or {bytes:number[]}")}catch(t){return u(t)}},get(e){try{let t=e.params?.key,i=e.params?.as??"base64";if(!t)return s("get requires params.key");let n=r.head(t);if(!n)return s(`artifact "${t}" not found`);if(i==="text"){let m=r.getText(t);return m===null?s(`artifact "${t}" not found`):a({key:t,contentType:n.contentType,size:n.size,text:m})}let o=r.getBytes(t);return o===null?s(`artifact "${t}" not found`):a({key:t,contentType:n.contentType,size:n.size,bytes:[...o]})}catch(t){return u(t)}},del(e){try{let t=e.params?.key;return t?(r.remove(t),a({ok:!0})):s("del requires params.key")}catch(t){return u(t)}}}}export{f as createArtifactsStorePublic};//# sourceMappingURL=artifacts-store-public.js.map
1
+ export{a as createArtifactsStorePublic}from'./chunk-X3LC4LII.js';import'./chunk-FW4363Y4.js';//# sourceMappingURL=artifacts-store-public.js.map
2
2
  //# sourceMappingURL=artifacts-store-public.js.map
@@ -1,2 +1,2 @@
1
- 'use strict';async function y(u,f){let{concurrency:B=5,processor:w,onItemComplete:I,onItemError:R,onProgress:x,signal:T}=f,t=u.length,a=new Array(t),m=Date.now(),r=0,o=0,l=0;function g(c){let n=r+o;return {completed:r,failed:o,active:c,pending:t-n-c,total:t,percent:t===0?100:Math.round(n/t*100),elapsedMs:Date.now()-m}}return t===0?{items:[],completed:0,failed:0,total:0,durationMs:0}:new Promise(c=>{let n=0;function d(){for(;n<B&&l<t;){if(T?.aborted){for(;l<t;){let e=l++;a[e]={item:u[e],index:e,status:"failed",error:new Error("Batch aborted"),durationMs:0},o++;}n===0&&r+o===t&&c({items:a,completed:r,failed:o,total:t,durationMs:Date.now()-m});break}let s=l++,i=u[s];n++;let h=Date.now();w(i,s).then(e=>{a[s]={item:i,index:s,status:"completed",result:e,durationMs:Date.now()-h},r++,I?.(i,e,s);}).catch(e=>{let p=e instanceof Error?e:new Error(String(e));a[s]={item:i,index:s,status:"failed",error:p,durationMs:Date.now()-h},o++,R?.(i,p,s);}).finally(()=>{n--,x?.(g(n)),r+o===t?c({items:a,completed:r,failed:o,total:t,durationMs:Date.now()-m}):d();});}}d();})}exports.batch=y;//# sourceMappingURL=index.cjs.map
1
+ 'use strict';var chunkKLRUISRY_cjs=require('../chunk-KLRUISRY.cjs');require('../chunk-GNFE24S7.cjs');Object.defineProperty(exports,"batch",{enumerable:true,get:function(){return chunkKLRUISRY_cjs.a}});//# sourceMappingURL=index.cjs.map
2
2
  //# sourceMappingURL=index.cjs.map
@@ -1,2 +1,2 @@
1
- async function y(u,f){let{concurrency:B=5,processor:w,onItemComplete:I,onItemError:R,onProgress:x,signal:T}=f,t=u.length,a=new Array(t),m=Date.now(),r=0,o=0,l=0;function g(c){let n=r+o;return {completed:r,failed:o,active:c,pending:t-n-c,total:t,percent:t===0?100:Math.round(n/t*100),elapsedMs:Date.now()-m}}return t===0?{items:[],completed:0,failed:0,total:0,durationMs:0}:new Promise(c=>{let n=0;function d(){for(;n<B&&l<t;){if(T?.aborted){for(;l<t;){let e=l++;a[e]={item:u[e],index:e,status:"failed",error:new Error("Batch aborted"),durationMs:0},o++;}n===0&&r+o===t&&c({items:a,completed:r,failed:o,total:t,durationMs:Date.now()-m});break}let s=l++,i=u[s];n++;let h=Date.now();w(i,s).then(e=>{a[s]={item:i,index:s,status:"completed",result:e,durationMs:Date.now()-h},r++,I?.(i,e,s);}).catch(e=>{let p=e instanceof Error?e:new Error(String(e));a[s]={item:i,index:s,status:"failed",error:p,durationMs:Date.now()-h},o++,R?.(i,p,s);}).finally(()=>{n--,x?.(g(n)),r+o===t?c({items:a,completed:r,failed:o,total:t,durationMs:Date.now()-m}):d();});}}d();})}export{y as batch};//# sourceMappingURL=index.js.map
1
+ export{a as batch}from'../chunk-7BKNHFNH.js';import'../chunk-FW4363Y4.js';//# sourceMappingURL=index.js.map
2
2
  //# sourceMappingURL=index.js.map
@@ -1,2 +1,2 @@
1
- 'use strict';var module$1=require('module');require('ajv-formats');var _documentCurrentScript=typeof document!=='undefined'?document.currentScript:null;var ae=module$1.createRequire((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('board-live-cards-mcp.cjs', document.baseURI).href)));ae("./jsonata-sync.cjs");var de=module$1.createRequire((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('board-live-cards-mcp.cjs', document.baseURI).href))),B=de("./jsonata-sync.cjs"),K=B;function D(e,r){if(!r||!e)return;let s=r.split("."),t=e;for(let a=0;a<s.length;a++){if(t==null)return;t=t[s[a]];}return t}function z(e,r,s){let t=r.split("."),a=e;for(let c=0;c<t.length-1;c++)(a[t[c]]==null||typeof a[t[c]]!="object")&&(a[t[c]]={}),a=a[t[c]];a[t[t.length-1]]=s;}async function ce(e,r){if(!e?.compute?.length)return e;e.card_data||(e.card_data={}),e.computed_values={},e._sourcesData=r?.sourcesData??{};let s=e.requires??{},t={card_data:e.card_data,requires:s,expects_data:s,fetched_sources:e._sourcesData,data:e.computed_values,computed_values:e.computed_values};for(let a of e.compute)try{let c=await B(a.expr).evaluate(t);z(e.computed_values,a.bindTo,c),t.computed_values=e.computed_values;}catch{}return e}function ue(e,r){if(!e?.compute?.length)return {ok:true,node:e};e.card_data||(e.card_data={}),e.computed_values={},e._sourcesData=r?.sourcesData??{};let s=e.requires??{},t={card_data:e.card_data,requires:s,expects_data:s,fetched_sources:e._sourcesData,data:e.computed_values,computed_values:e.computed_values},a=[];for(let c of e.compute)try{let l=K(c.expr).evaluate(t);z(e.computed_values,c.bindTo,l),t.computed_values=e.computed_values;}catch(l){let g=l instanceof Error?l.message:String(l);a.push({bindTo:c.bindTo,error:g});}return a.length>0?{ok:true,node:e,errors:a}:{ok:true,node:e}}async function pe(e,r,s){let t={...s??{},card_data:r.card_data??{},requires:r.requires??{},fetched_sources:r._sourcesData??{},computed_values:r.computed_values??{}};return B(e).evaluate(t)}function le(e,r){return r.startsWith("fetched_sources.")?D(e._sourcesData??{},r.slice(16)):D(e,r)}var V=new Set(["metric","table","editable-table","chart","form","filter","list","notes","todo","alert","narrative","badge","text","markdown","ref","custom","actions"]),fe=new Set(["id","meta","requires","provides","view","card_data","compute","source_defs"]);function me(e){let r=[];if(!e||typeof e!="object"||Array.isArray(e))return {ok:false,errors:["Node must be a non-null object"]};let s=e;(typeof s.id!="string"||!s.id)&&r.push("id: required, must be a non-empty string");for(let t of Object.keys(s))fe.has(t)||r.push(`Unknown top-level key: "${t}"`);if((s.card_data==null||typeof s.card_data!="object"||Array.isArray(s.card_data))&&r.push("card_data: required, must be an object"),s.meta!=null)if(typeof s.meta!="object"||Array.isArray(s.meta))r.push("meta: must be an object");else {let t=s.meta;t.title!=null&&typeof t.title!="string"&&r.push("meta.title: must be a string"),t.tags!=null&&!Array.isArray(t.tags)&&r.push("meta.tags: must be an array");}if(s.requires!=null&&!Array.isArray(s.requires)&&r.push("requires: must be an array of strings"),s.provides!=null&&(Array.isArray(s.provides)?s.provides.forEach((t,a)=>{if(!t||typeof t!="object"||Array.isArray(t))r.push(`provides[${a}]: must be an object with bindTo and ref`);else {let c=t;(typeof c.bindTo!="string"||!c.bindTo)&&r.push(`provides[${a}]: missing required "bindTo" string`),(typeof c.ref!="string"||!c.ref)&&r.push(`provides[${a}]: missing required "ref" string`);}}):r.push("provides: must be an array of { bindTo, ref } bindings")),s.compute!=null&&(Array.isArray(s.compute)?s.compute.forEach((t,a)=>{if(!t||typeof t!="object"||Array.isArray(t))r.push(`compute[${a}]: must be a compute step object`);else {let c=t;(typeof c.bindTo!="string"||!c.bindTo)&&r.push(`compute[${a}]: missing required "bindTo" property`),(typeof c.expr!="string"||!c.expr)&&r.push(`compute[${a}]: missing required "expr" string (JSONata expression)`);}}):r.push("compute: must be an array of compute steps")),s.source_defs!=null)if(!Array.isArray(s.source_defs))r.push("source_defs: must be an array");else {let t=new Set,a=new Set;s.source_defs.forEach((c,l)=>{if(!c||typeof c!="object"||Array.isArray(c))r.push(`source_defs[${l}]: must be an object`);else {let g=c;typeof g.bindTo!="string"||!g.bindTo?r.push(`source_defs[${l}]: missing required "bindTo" property`):(t.has(g.bindTo)&&r.push(`source_defs[${l}]: bindTo "${g.bindTo}" is not unique across source_defs`),t.add(g.bindTo)),typeof g.outputFile!="string"||!g.outputFile?r.push(`source_defs[${l}]: missing required "outputFile" property`):(a.has(g.outputFile)&&r.push(`source_defs[${l}]: outputFile "${g.outputFile}" is not unique across source_defs`),a.add(g.outputFile)),g.optionalForCompletionGating!=null&&typeof g.optionalForCompletionGating!="boolean"&&r.push(`source_defs[${l}]: optionalForCompletionGating must be a boolean`);}});}if(s.view!=null)if(typeof s.view!="object"||Array.isArray(s.view))r.push("view: must be an object");else {let t=s.view;!Array.isArray(t.elements)||t.elements.length===0?r.push("view.elements: required, must be a non-empty array"):t.elements.forEach((a,c)=>{if(!a||typeof a!="object"){r.push(`view.elements[${c}]: must be an object`);return}!a.kind||typeof a.kind!="string"?r.push(`view.elements[${c}].kind: required, must be a string`):V.has(a.kind)||r.push(`view.elements[${c}].kind: unknown kind "${a.kind}". Valid: ${[...V].join(", ")}`),a.data!=null&&(typeof a.data!="object"||Array.isArray(a.data))&&r.push(`view.elements[${c}].data: must be an object`);}),t.layout!=null&&(typeof t.layout!="object"||Array.isArray(t.layout))&&r.push("view.layout: must be an object"),t.features!=null&&(typeof t.features!="object"||Array.isArray(t.features))&&r.push("view.features: must be an object");}return {ok:r.length===0,errors:r}}async function ge(e,r){if(!e||e.length===0)return [];let s={card_data:r.card_data??{},requires:r.requires??{}};return Promise.all(e.map(async t=>{let a={};if(t.projections&&typeof t.projections=="object"&&!Array.isArray(t.projections)){for(let[c,l]of Object.entries(t.projections))if(typeof l=="string"&&l.trim().length>0)try{a[c]=await B(l).evaluate(s);}catch{a[c]=void 0;}}return {...t,_projections:a}}))}function ye(e,r){if(!e||e.length===0)return [];let s={card_data:r.card_data??{},requires:r.requires??{}};return e.map(t=>{let a={};if(t.projections&&typeof t.projections=="object"&&!Array.isArray(t.projections)){for(let[c,l]of Object.entries(t.projections))if(typeof l=="string"&&l.trim().length>0)try{a[c]=K(l).evaluate(s);}catch{a[c]=void 0;}}return {...t,_projections:a}})}var W={run:ce,runSync:ue,eval:pe,resolve:le,validate:me,enrichSources:ge,enrichSourcesSync:ye};function k(e,r){if(e?.status==="success")return Object.prototype.hasOwnProperty.call(e,"data")?e.data:void 0;throw e?.status==="fail"||e?.status==="error"?new Error(e.error||`${r} failed`):new Error(`${r} returned an unexpected response`)}function we(e,r){if(e?.status==="success"&&Object.prototype.hasOwnProperty.call(e,"data"))return e.data;throw e?.status==="success"?new Error(`${r} returned success without data`):e?.status==="fail"||e?.status==="error"?new Error(e.error||`${r} failed`):new Error(`${r} returned an unexpected response`)}function d(e){return e&&typeof e=="object"&&!Array.isArray(e)?e:{}}function b(e){return Array.isArray(e)?e:[]}function N(e,r){if(typeof r!="string"||r.length===0)return;let s=e,t=r;t.startsWith("fetched_sources.")&&(s=d(e).fetched_sources,t=t.slice(16));for(let a of t.split(".")){if(s==null||typeof s!="object")return;s=s[a];}return s}function O(e,r){let s=d(e.view),t=b(s.elements);return {layout:s.layout,features:s.features,elements:t.map((a,c)=>{let l=d(a),g=d(l.data),j=typeof l.visible=="string"?!!N(r,l.visible):true,I=typeof g.bind=="string"?g.bind:void 0,x=typeof g.maxRows=="number"?g.maxRows:void 0,q=I?N(r,I):void 0,U={id:typeof l.id=="string"&&l.id?l.id:`element-${c}`,kind:l.kind,label:l.label,visible:j};return q!==void 0&&(U.resolved=Array.isArray(q)&&typeof x=="number"?q.slice(0,x):q),U})}}function J(e,r){let s=typeof e.id=="string"&&e.id?e.id:"card",t=b(e.provides),a=t.length>0?t:[{bindTo:s,ref:"card_data"}],c={};for(let l of a){let g=d(l),j=typeof g.bindTo=="string"?g.bindTo:"",I=typeof g.ref=="string"?g.ref:"";if(!j||!I)continue;let x=N(r,I);x!==void 0&&(c[j]=x);}return c}function be(e){if(typeof e!="string"||!e.trim())return null;let r=/^(file uploaded|AI generated|AI geneterated):\s*.*?#(\d+)\s*$/i.exec(e.trim());if(!r)return null;let s=Number.parseInt(r[2],10);return !Number.isInteger(s)||s<0?null:s}function Ce(e){return {"card-content":e}}function $(e,r){let s=k(e.get({params:{id:r}}),"cardStore.get"),t=Array.isArray(s?.cards)?s.cards:[];if(t.length===0)throw new Error(`Card "${r}" not found`);return t[0]}function $e(e){let{board:r,nonCore:s,cardStore:t,chatStore:a,uploadCardFile:c,buildFileDownloadUrl:l,readFetchedSourceJsonByRef:g}=e;function j(n){if(Array.isArray(n.bytes))return new Uint8Array(n.bytes.map(o=>Math.max(0,Math.min(255,Number(o)||0))));if(typeof n.text=="string")return new TextEncoder().encode(n.text);if(typeof n.base64=="string"){let o=String(n.base64).replace(/-/g,"+").replace(/_/g,"/"),i=o+"=".repeat((4-o.length%4)%4),m=atob(i);return Uint8Array.from(m,u=>u.charCodeAt(0))}throw new Error("file entry requires bytes, text, or base64")}function I(){let n=d(k(s.describeTaskExecutorCapabilities({}),"describeTaskExecutorCapabilities"));return {version:n.version,commonSourceFields:d(n.commonSourceDefFields),sourceKinds:d(n.sourceKinds)}}function x(){let n=d(k(r.status({}),"status")),o=d(n.summary),i=b(n.cards);return {meta:d(n.meta),summary:{card_count:typeof o.card_count=="number"?o.card_count:0,completed:typeof o.completed=="number"?o.completed:0,eligible:typeof o.eligible=="number"?o.eligible:0,pending:typeof o.pending=="number"?o.pending:0,blocked:typeof o.blocked=="number"?o.blocked:0,in_progress:typeof o.in_progress=="number"?o.in_progress:0,failed:typeof o.failed=="number"?o.failed:0,unresolved:typeof o.unresolved=="number"?o.unresolved:0},cards:i.map(m=>{let u=d(m);return {"card-id":typeof u.name=="string"?u.name:null,status:u.status??null,error:u.error??null,requires:b(u.requires),requires_satisfied:b(u.requires_satisfied),requires_missing:b(u.requires_missing),provides_declared:b(u.provides_declared),provides_runtime:b(u.provides_runtime)}})}}function q(n){let o=String(n.cardId||"").trim();if(!o)throw new Error("inspectCardDefinitionAndRuntime requires cardId");let i=d(k(r.status({}),"status")),u=b(i.cards).map(d).find(f=>f.name===o);if(!u)throw new Error(`card "${o}" not found in board status`);let p=d($(t,o)),y=b(u.requires_satisfied).filter(f=>typeof f=="string"&&!!f),_=b(u.provides_runtime).filter(f=>typeof f=="string"&&!!f),C=Object.fromEntries(y.map(f=>[f,k(r.getOutputsDataObject({params:{key:f}}),`getOutputsDataObject(${f})`)])),R=Object.fromEntries(_.map(f=>[f,k(r.getOutputsDataObject({params:{key:f}}),`getOutputsDataObject(${f})`)])),v=d(k(r.getOutputsComputedValues({params:{key:o}}),"getOutputsComputedValues")),A=k(r.getOutputsFetchedSources({params:{key:o}}),"getOutputsFetchedSources"),h=b(p.source_defs).map(d),S={};for(let f of h)typeof f.bindTo=="string"&&typeof f.outputFile=="string"&&(S[f.outputFile]=f.bindTo);let w={};for(let[f,E]of Object.entries(A)){let M=S[f]??f;if(!g||typeof E!="string"){w[M]=null;continue}try{w[M]=g({cardId:o,ref:E});}catch{w[M]=null;}}let T={card_data:d(p.card_data),requires:C,fetched_sources:w,computed_values:v};return {cardId:o,card_status_in_board:u,card_definition_and_static_data:p,refs_for_fetched_source_files:A,runtime_data:{requires:C,provides:R,computed_values:v,rendered_view:O(p,T)}}}function U(n){let o=String(n.cardId||"").trim();if(!o)throw new Error("inspectChatMessagesOnCards requires cardId");let i=typeof n.turnId=="string"?n.turnId:"",m=n.allTurns===true,u=typeof n.tailTurnsBeforeId=="string"?n.tailTurnsBeforeId:"",p=m?void 0:n.lastUserTurns??(i?void 0:1),y=n.tail,_={...p===void 0?{}:{tailTurns:p},...i?{turnId:i}:{},...m?{allTurns:true}:{},...u?{tailTurnsBeforeId:u}:{}},C=Object.keys(_).length>0?{params:{cardId:o},body:_}:{params:{cardId:o}},R=k(a.readAll(C),"chatStore.readAll"),v=d($(t,o)),A=b(d(v.card_data).files).map((w,T)=>({idx:T,stored_name:d(w).stored_name})).filter(w=>typeof w.stored_name=="string"&&w.stored_name.length>0),S=(Array.isArray(R.records)?R.records:[]).map(w=>{let f=d(w.payload),E={...w},M=typeof w?.role=="string"?w.role:typeof f.role=="string"?String(f.role):"",oe=typeof w?.text=="string"?w.text:typeof f.text=="string"?String(f.text):"";if(M==="system"){let F=be(oe);if(F!==null&&A.some(L=>L.idx===F)){let L=`Retrieve using inspect-file-contents --card-id ${o} --file-idx ${F}`;E.retrieval_hint=L,Object.keys(f).length>0&&typeof w.role!="string"&&(E.payload={...f,retrieval_hint:L});}}return E});return {cardId:o,messages:typeof y=="number"&&y>=0?S.slice(-y):S}}function G(n){let o=String(n.cardId||"").trim(),i=Number(n.fileIdx);if(!o)throw new Error("inspectFileContents requires cardId");if(!Number.isInteger(i)||i<0)throw new Error("inspectFileContents requires fileIdx to be a non-negative integer");let m=d($(t,o)),u=b(d(m.card_data).files).map(d);if(i>=u.length)throw new Error(`attachment index ${i} is out of range for card "${o}"`);let p=u[i],y=typeof p.stored_name=="string"?p.stored_name:null;return {cardId:o,fileIdx:i,downloadUrl:l({cardId:o,fileIdx:i,storedName:y}),...typeof p.name=="string"?{name:p.name}:{},...typeof p.stored_name=="string"?{stored_name:p.stored_name}:{},...typeof p.mime_type=="string"?{mime_type:p.mime_type}:{},...typeof p.size=="number"?{size:p.size}:{},...typeof p.uploaded_at=="string"?{uploaded_at:p.uploaded_at}:{}}}function P(n){return s.validateCardPreflight({body:Ce(n.candidateCardContent)})}function H(n){if(!n.mockRequires||typeof n.mockRequires!="object"||Array.isArray(n.mockRequires))throw new Error("preflightMaterializeCandidateCard requires mockRequires");if(!n.mockFetchedSources||typeof n.mockFetchedSources!="object"||Array.isArray(n.mockFetchedSources))throw new Error("preflightMaterializeCandidateCard requires mockFetchedSources");let o=s.evalCardCompute({body:{"card-content":n.candidateCardContent,"mock-requires":n.mockRequires,"mock-fetched-sources":n.mockFetchedSources}});if(o.status!=="success")return o;let i=d(we(o,"evalCardCompute")),m=d(n.candidateCardContent),u={card_data:d(m.card_data),requires:d(n.mockRequires),fetched_sources:d(n.mockFetchedSources),computed_values:d(i.computed_values)};return {status:"success",data:{cardId:typeof i.cardId=="string"?i.cardId:typeof m.id=="string"?m.id:"(unknown)",ok:i.ok===true,computed_values:d(i.computed_values),errors:b(i.errors).map(p=>{let y=d(p);return {bindTo:typeof y.bindTo=="string"?y.bindTo:"",error:typeof y.error=="string"?y.error:""}}),provides_outputs:J(m,u),rendered_view:O(m,u)}}}function Y(n){return s.probeSourcePreflight({params:{sourceIdx:n.sourceIdx},body:{"card-content":n.candidateCardContent,"mock-projections":n.mockProjections}})}function Q(n){return s.runSourcePreflight({params:{sourceIdx:n.sourceIdx},body:{"card-content":n.candidateCardContent,"mock-projections":n.mockProjections}})}function X(n){let o=String(n.cardId||"").trim();if(!o)throw new Error("preflightRunSingleSourceInLiveCard requires cardId");if(!n.mockRequires||typeof n.mockRequires!="object"||Array.isArray(n.mockRequires))throw new Error("preflightRunSingleSourceInLiveCard requires mockRequires");let i=d($(t,o)),m=b(i.source_defs).filter(p=>!!p&&typeof p=="object"&&!Array.isArray(p)),u={};if(n.sourceIdx>=0&&n.sourceIdx<m.length){let p=m[n.sourceIdx],y=W.enrichSourcesSync([p],{card_data:d(i.card_data),requires:n.mockRequires});Array.isArray(y)&&y.length>0&&(u=d(y[0]._projections));}return s.runSourcePreflight({params:{sourceIdx:n.sourceIdx},body:{"card-content":i,"mock-requires":n.mockRequires,"mock-projections":u}})}function Z(n){let o=d(k(s.simulateCardCycle({body:{"card-content":n.candidateCardContent,"mock-requires":n.mockRequires}}),"simulateCardCycle")),i=d(n.candidateCardContent),m=d(o.validation),u=b(o.source_probes),p=b(o.projection_errors),y=d(o.fetched_sources),_=b(o.compute_errors),C=d(o.computed_values),R={card_data:d(i.card_data),requires:n.mockRequires,fetched_sources:y,computed_values:C},v=[];for(let A of b(m.issues))typeof A=="string"&&A&&v.push(A);for(let A of u){let h=d(A),S=typeof h.bindTo=="string"?h.bindTo:"source",w=typeof h.error=="string"?h.error:"";w&&v.push(`${S}: ${w}`);}for(let A of p){let h=d(A),S=typeof h.bindTo=="string"?h.bindTo:"source",w=typeof h.key=="string"?h.key:"projection",T=typeof h.error=="string"?h.error:"projection failed";v.push(`${S}.${w}: ${T}`);}for(let A of _){let h=d(A),S=typeof h.bindTo=="string"?h.bindTo:"compute",w=typeof h.error=="string"?h.error:"compute failed";v.push(`${S}: ${w}`);}return {status:"success",data:{cardId:typeof o.cardId=="string"?o.cardId:"(unknown)",ok:o.ok===true,issues:v,provides_outputs:J(i,R),rendered_view:O(i,R)}}}function ee(n){let o=String(n.cardId||"").trim();if(!o)throw new Error("manageReadCard requires cardId");let i=k(t.get({params:{id:o}}),"cardStore.get");return Array.isArray(i.cards)?i.cards:[]}function re(n){let o=String(n.cardId||"").trim(),i=String(n.role||"").trim(),m=typeof n.text=="string"?n.text:"",u=typeof n.turn=="string"?n.turn:"";if(!o)throw new Error("manageAddChatEntryAndAnyAttachments requires cardId");if(!i)throw new Error("manageAddChatEntryAndAnyAttachments requires role");let p=b(n.files).map(_=>{let C=d(_),R=String(C.file_name??C.fileName??C.name??"").trim(),v=String(C.content_type??C.contentType??"application/octet-stream");if(!R)throw new Error("file entry requires file_name");return c({cardId:o,fileName:R,contentType:v,bytes:j(C)}).file});p.forEach((_,C)=>{let R=i==="assistant"?`AI generated: ${String(_.name||"")} as ${String(_.stored_name||"")} #${C}`:`file uploaded: ${String(_.name||"")} as ${String(_.stored_name||"")} #${C}`;k(a.append({params:{cardId:o},body:{role:"system",text:R,files:[],turn:u}}),"chatStore.append(system attachment message)");});let y=k(a.append({params:{cardId:o},body:{role:i,text:m,files:p,turn:u}}),"chatStore.append");return {status:"success",data:{cardId:o,id:String(y.id),role:i,turn:u,files:p}}}function te(n){let o=String(n.cardId||"").trim(),i=d(n.candidateCardContent);if(!o)throw new Error("manageUpsertCard requires cardId");if(typeof i.id!="string"||!i.id.trim())throw new Error("candidateCardContent.id must be a non-empty string");if(i.id!==o)throw new Error(`candidateCardContent.id must match cardId (${o})`);let m=P({candidateCardContent:i}),u=d(m),p=d(u.data);if(u.status!=="success"||p.isValid!==true)return {status:"fail",step:"validate",validation:m};let y=null;try{y=$(t,o);}catch{y=null;}let _=t.set({body:i});k(_,"cardStore.set");let C;try{C=r.upsertCard({params:{cardId:o,restart:!0}}),k(C,"upsertCard");}catch(v){try{y&&t.set({body:y});}catch{}throw v}let R=null;try{R=r.cardRefreshedNotify({params:{cardId:o}}),k(R,"cardRefreshedNotify");}catch{R=null;}return {status:"success",data:{validation:m,card_saved:null,board_result:C,refresh_notify:R}}}function ne(n){let o=String(n.cardId||"").trim();if(!o)throw new Error("manageRemoveCard requires cardId");let i=r.removeCard({params:{id:o}});k(i,"removeCard");let m=t.del({params:{id:o}});return k(m,"cardStore.del"),{status:"success",data:{board_result:i,store_result:m}}}return {discoverSourceKinds:I,inspectBoardRuntimeStatus:x,inspectCardDefinitionAndRuntime:q,inspectChatMessagesOnCards:U,inspectFileContents:G,preflightValidateCandidateCardDefinition:P,preflightMaterializeCandidateCard:H,preflightProbeSingleSourceInCandidateCard:Y,preflightRunSingleSourceInCandidateCard:Q,preflightRunSingleSourceInLiveCard:X,preflightRunOneCycleWithCandidateCard:Z,manageReadCard:ee,manageAddChatEntryAndAnyAttachments:re,manageUpsertCard:te,manageRemoveCard:ne}}exports.createBoardLiveCardsMcp=$e;//# sourceMappingURL=board-live-cards-mcp.cjs.map
1
+ 'use strict';var chunkGJJMEAVN_cjs=require('./chunk-GJJMEAVN.cjs');require('./chunk-IXZG74EW.cjs'),require('./chunk-NMZ6XNLB.cjs'),require('./chunk-UJ7ZTV4J.cjs'),require('./chunk-GNFE24S7.cjs');Object.defineProperty(exports,"createBoardLiveCardsMcp",{enumerable:true,get:function(){return chunkGJJMEAVN_cjs.a}});//# sourceMappingURL=board-live-cards-mcp.cjs.map
2
2
  //# sourceMappingURL=board-live-cards-mcp.cjs.map
@@ -1,8 +1,7 @@
1
- import { C as CommandResult, L as LiveCard } from './board-live-cards-public-B13InXhC.cjs';
2
- import { CardStorePublic } from './card-store-public.cjs';
1
+ import { C as CommandResult, L as LiveCard } from './board-live-cards-public-wkNmBIRC.cjs';
3
2
  import { ChatStorePublic } from './chat-store-public.cjs';
4
- import { C as ChatRecord } from './chat-storage-lib-0imhRX3l.cjs';
5
- import './storage-interface-B2WD9D5n.cjs';
3
+ import { C as ChatRecord } from './chat-storage-lib-BIUbE-fM.cjs';
4
+ import './storage-interface-BFiD3kyB.cjs';
6
5
  import './execution-refs.cjs';
7
6
  import './types-BBhqYGhE.cjs';
8
7
 
@@ -16,6 +15,7 @@ import './types-BBhqYGhE.cjs';
16
15
  */
17
16
 
18
17
  type UnknownRecord = Record<string, unknown>;
18
+ type Awaitable<T> = T | Promise<T>;
19
19
  interface BoardLiveCardsMcpFileDownloadDescriptor {
20
20
  cardId: string;
21
21
  fileIdx: number;
@@ -139,44 +139,77 @@ interface BoardLiveCardsMcpPreflightMaterializeResult {
139
139
  };
140
140
  }
141
141
  interface BoardLiveCardsMcpBoardDeps {
142
- status(input: {}): CommandResult;
142
+ status(input: {}): Awaitable<CommandResult>;
143
143
  getOutputsDataObject(input: {
144
144
  params: {
145
145
  key: string;
146
146
  };
147
- }): CommandResult;
147
+ }): Awaitable<CommandResult>;
148
148
  getOutputsComputedValues(input: {
149
149
  params: {
150
150
  key: string;
151
151
  };
152
- }): CommandResult;
152
+ }): Awaitable<CommandResult>;
153
153
  getOutputsFetchedSources(input: {
154
154
  params: {
155
155
  key: string;
156
156
  };
157
- }): CommandResult<Record<string, string>>;
157
+ }): Awaitable<CommandResult<Record<string, string>>>;
158
158
  removeCard(input: {
159
159
  params: {
160
160
  id: string;
161
161
  };
162
- }): CommandResult;
162
+ }): Awaitable<CommandResult>;
163
163
  cardRefreshedNotify(input: {
164
164
  params: {
165
165
  cardId: string;
166
166
  };
167
- }): CommandResult;
167
+ }): Awaitable<CommandResult>;
168
168
  upsertCard(input: {
169
169
  params: {
170
170
  cardId: string;
171
171
  restart?: boolean;
172
172
  };
173
- }): CommandResult;
173
+ }): Awaitable<CommandResult>;
174
+ }
175
+ interface BoardLiveCardsMcpCardStoreDeps {
176
+ get(input: {
177
+ params?: {
178
+ id?: string;
179
+ };
180
+ }): Awaitable<CommandResult<{
181
+ cards?: Array<Record<string, unknown>>;
182
+ }>>;
183
+ set(input: {
184
+ body?: unknown;
185
+ }): Awaitable<CommandResult>;
186
+ del(input: {
187
+ params?: {
188
+ id?: string;
189
+ };
190
+ body?: {
191
+ ids?: string[];
192
+ };
193
+ }): Awaitable<CommandResult>;
194
+ patch(input: {
195
+ params?: {
196
+ id?: string;
197
+ path?: string;
198
+ };
199
+ body?: unknown;
200
+ }): Awaitable<CommandResult>;
201
+ appendFiles?(input: {
202
+ params?: {
203
+ id?: string;
204
+ };
205
+ body?: unknown;
206
+ }): Awaitable<CommandResult>;
174
207
  }
175
208
  interface BoardLiveCardsMcpNonCoreDeps {
176
- describeTaskExecutorCapabilities(input: {}): CommandResult;
209
+ describeTaskExecutorCapabilities(input: {}): Promise<CommandResult>;
177
210
  validateCardPreflight(input: {
178
211
  body: unknown;
179
- }): CommandResult;
212
+ }): Promise<CommandResult>;
180
213
  evalCardCompute(input: {
181
214
  body: unknown;
182
215
  }): CommandResult<{
@@ -193,31 +226,31 @@ interface BoardLiveCardsMcpNonCoreDeps {
193
226
  sourceIdx: number;
194
227
  };
195
228
  body: unknown;
196
- }): CommandResult;
229
+ }): Promise<CommandResult>;
197
230
  runSourcePreflight(input: {
198
231
  params: {
199
232
  sourceIdx: number;
200
233
  };
201
234
  body: unknown;
202
- }): CommandResult;
235
+ }): Promise<CommandResult>;
203
236
  simulateCardCycle(input: {
204
237
  body: unknown;
205
- }): CommandResult;
238
+ }): Promise<CommandResult>;
206
239
  }
207
240
  interface BoardLiveCardsMcpDeps {
208
241
  board: BoardLiveCardsMcpBoardDeps;
209
242
  nonCore: BoardLiveCardsMcpNonCoreDeps;
210
- cardStore: CardStorePublic;
243
+ cardStore: BoardLiveCardsMcpCardStoreDeps;
211
244
  chatStore: ChatStorePublic;
212
245
  uploadCardFile(args: {
213
246
  cardId: string;
214
247
  fileName: string;
215
248
  contentType: string;
216
249
  bytes: Uint8Array;
217
- }): {
250
+ }): Awaitable<{
218
251
  ok: true;
219
252
  file: Record<string, unknown>;
220
- };
253
+ }>;
221
254
  buildFileDownloadUrl(args: {
222
255
  cardId: string;
223
256
  fileIdx: number;
@@ -229,11 +262,11 @@ interface BoardLiveCardsMcpDeps {
229
262
  }): unknown | null;
230
263
  }
231
264
  interface BoardLiveCardsMcp {
232
- discoverSourceKinds(): BoardLiveCardsMcpDiscoverSourceKindsResult;
233
- inspectBoardRuntimeStatus(): BoardLiveCardsMcpBoardStatusResult;
265
+ discoverSourceKinds(): Promise<BoardLiveCardsMcpDiscoverSourceKindsResult>;
266
+ inspectBoardRuntimeStatus(): Promise<BoardLiveCardsMcpBoardStatusResult>;
234
267
  inspectCardDefinitionAndRuntime(args: {
235
268
  cardId: string;
236
- }): BoardLiveCardsMcpInspectCardDefinitionAndRuntimeResult;
269
+ }): Promise<BoardLiveCardsMcpInspectCardDefinitionAndRuntimeResult>;
237
270
  inspectChatMessagesOnCards(args: {
238
271
  cardId: string;
239
272
  lastUserTurns?: number;
@@ -241,14 +274,14 @@ interface BoardLiveCardsMcp {
241
274
  turnId?: string;
242
275
  allTurns?: boolean;
243
276
  tailTurnsBeforeId?: string;
244
- }): BoardLiveCardsMcpInspectChatMessagesResult;
277
+ }): Promise<BoardLiveCardsMcpInspectChatMessagesResult>;
245
278
  inspectFileContents(args: {
246
279
  cardId: string;
247
280
  fileIdx: number;
248
- }): BoardLiveCardsMcpFileDownloadDescriptor;
281
+ }): Promise<BoardLiveCardsMcpFileDownloadDescriptor>;
249
282
  preflightValidateCandidateCardDefinition(args: {
250
283
  candidateCardContent: UnknownRecord;
251
- }): unknown;
284
+ }): Promise<unknown>;
252
285
  preflightMaterializeCandidateCard(args: {
253
286
  candidateCardContent: UnknownRecord;
254
287
  mockRequires: UnknownRecord;
@@ -258,39 +291,59 @@ interface BoardLiveCardsMcp {
258
291
  candidateCardContent: UnknownRecord;
259
292
  mockProjections: UnknownRecord;
260
293
  sourceIdx: number;
261
- }): unknown;
294
+ }): Promise<unknown>;
262
295
  preflightRunSingleSourceInCandidateCard(args: {
263
296
  candidateCardContent: UnknownRecord;
264
297
  mockProjections: UnknownRecord;
265
298
  sourceIdx: number;
266
- }): unknown;
299
+ }): Promise<unknown>;
267
300
  preflightRunSingleSourceInLiveCard(args: {
268
301
  cardId: string;
269
302
  sourceIdx: number;
270
303
  mockRequires: UnknownRecord;
271
- }): unknown;
304
+ }): Promise<unknown>;
272
305
  preflightRunOneCycleWithCandidateCard(args: {
273
306
  candidateCardContent: UnknownRecord;
274
307
  mockRequires: UnknownRecord;
275
- }): BoardLiveCardsMcpPreflightRunOneCycleResult;
308
+ }): Promise<BoardLiveCardsMcpPreflightRunOneCycleResult>;
276
309
  manageReadCard(args: {
277
310
  cardId: string;
278
- }): LiveCard[];
311
+ }): Promise<LiveCard[]>;
279
312
  manageAddChatEntryAndAnyAttachments(args: {
280
313
  cardId: string;
281
314
  role: string;
282
315
  text?: string;
283
316
  turn?: string;
284
317
  files?: unknown[];
285
- }): BoardLiveCardsMcpManageAddChatEntryAndAnyAttachmentsResult;
318
+ }): Promise<BoardLiveCardsMcpManageAddChatEntryAndAnyAttachmentsResult>;
286
319
  manageUpsertCard(args: {
287
320
  cardId: string;
288
321
  candidateCardContent: UnknownRecord;
289
- }): BoardLiveCardsMcpManageUpsertCardResult;
322
+ }): Promise<BoardLiveCardsMcpManageUpsertCardResult>;
290
323
  manageRemoveCard(args: {
291
324
  cardId: string;
292
- }): unknown;
325
+ }): Promise<unknown>;
326
+ adminReadCard(args: {
327
+ cardId: string;
328
+ }): Promise<LiveCard[]>;
329
+ adminUpsertCard(args: {
330
+ cardId: string;
331
+ candidateCardContent: UnknownRecord;
332
+ }): Promise<BoardLiveCardsMcpManageUpsertCardResult>;
333
+ getChatProcessing(args: {
334
+ cardId: string;
335
+ }): {
336
+ cardId: string;
337
+ active: boolean;
338
+ };
339
+ setChatProcessing(args: {
340
+ cardId: string;
341
+ active: boolean;
342
+ }): {
343
+ cardId: string;
344
+ active: boolean;
345
+ };
293
346
  }
294
347
  declare function createBoardLiveCardsMcp(deps: BoardLiveCardsMcpDeps): BoardLiveCardsMcp;
295
348
 
296
- export { type BoardLiveCardsMcp, type BoardLiveCardsMcpBoardDeps, type BoardLiveCardsMcpBoardStatusCard, type BoardLiveCardsMcpBoardStatusResult, type BoardLiveCardsMcpDeps, type BoardLiveCardsMcpDiscoverSourceKindsResult, type BoardLiveCardsMcpFileDownloadDescriptor, type BoardLiveCardsMcpInspectCardDefinitionAndRuntimeResult, type BoardLiveCardsMcpInspectChatMessagesResult, type BoardLiveCardsMcpManageAddChatEntryAndAnyAttachmentsResult, type BoardLiveCardsMcpManageUpsertCardFailureResult, type BoardLiveCardsMcpManageUpsertCardResult, type BoardLiveCardsMcpManageUpsertCardSuccessResult, type BoardLiveCardsMcpNonCoreDeps, type BoardLiveCardsMcpPreflightMaterializeResult, type BoardLiveCardsMcpPreflightRunOneCycleResult, type BoardLiveCardsMcpRenderedView, type BoardLiveCardsMcpRenderedViewElement, createBoardLiveCardsMcp };
349
+ export { type BoardLiveCardsMcp, type BoardLiveCardsMcpBoardDeps, type BoardLiveCardsMcpBoardStatusCard, type BoardLiveCardsMcpBoardStatusResult, type BoardLiveCardsMcpCardStoreDeps, type BoardLiveCardsMcpDeps, type BoardLiveCardsMcpDiscoverSourceKindsResult, type BoardLiveCardsMcpFileDownloadDescriptor, type BoardLiveCardsMcpInspectCardDefinitionAndRuntimeResult, type BoardLiveCardsMcpInspectChatMessagesResult, type BoardLiveCardsMcpManageAddChatEntryAndAnyAttachmentsResult, type BoardLiveCardsMcpManageUpsertCardFailureResult, type BoardLiveCardsMcpManageUpsertCardResult, type BoardLiveCardsMcpManageUpsertCardSuccessResult, type BoardLiveCardsMcpNonCoreDeps, type BoardLiveCardsMcpPreflightMaterializeResult, type BoardLiveCardsMcpPreflightRunOneCycleResult, type BoardLiveCardsMcpRenderedView, type BoardLiveCardsMcpRenderedViewElement, createBoardLiveCardsMcp };
@@ -1,8 +1,7 @@
1
- import { C as CommandResult, L as LiveCard } from './board-live-cards-public-BGS22cMb.js';
2
- import { CardStorePublic } from './card-store-public.js';
1
+ import { C as CommandResult, L as LiveCard } from './board-live-cards-public-BMUIPOrc.js';
3
2
  import { ChatStorePublic } from './chat-store-public.js';
4
- import { C as ChatRecord } from './chat-storage-lib-CJn7a6OH.js';
5
- import './storage-interface-B2WD9D5n.js';
3
+ import { C as ChatRecord } from './chat-storage-lib-BlG-sobS.js';
4
+ import './storage-interface-BFiD3kyB.js';
6
5
  import './execution-refs.js';
7
6
  import './types-BBhqYGhE.js';
8
7
 
@@ -16,6 +15,7 @@ import './types-BBhqYGhE.js';
16
15
  */
17
16
 
18
17
  type UnknownRecord = Record<string, unknown>;
18
+ type Awaitable<T> = T | Promise<T>;
19
19
  interface BoardLiveCardsMcpFileDownloadDescriptor {
20
20
  cardId: string;
21
21
  fileIdx: number;
@@ -139,44 +139,77 @@ interface BoardLiveCardsMcpPreflightMaterializeResult {
139
139
  };
140
140
  }
141
141
  interface BoardLiveCardsMcpBoardDeps {
142
- status(input: {}): CommandResult;
142
+ status(input: {}): Awaitable<CommandResult>;
143
143
  getOutputsDataObject(input: {
144
144
  params: {
145
145
  key: string;
146
146
  };
147
- }): CommandResult;
147
+ }): Awaitable<CommandResult>;
148
148
  getOutputsComputedValues(input: {
149
149
  params: {
150
150
  key: string;
151
151
  };
152
- }): CommandResult;
152
+ }): Awaitable<CommandResult>;
153
153
  getOutputsFetchedSources(input: {
154
154
  params: {
155
155
  key: string;
156
156
  };
157
- }): CommandResult<Record<string, string>>;
157
+ }): Awaitable<CommandResult<Record<string, string>>>;
158
158
  removeCard(input: {
159
159
  params: {
160
160
  id: string;
161
161
  };
162
- }): CommandResult;
162
+ }): Awaitable<CommandResult>;
163
163
  cardRefreshedNotify(input: {
164
164
  params: {
165
165
  cardId: string;
166
166
  };
167
- }): CommandResult;
167
+ }): Awaitable<CommandResult>;
168
168
  upsertCard(input: {
169
169
  params: {
170
170
  cardId: string;
171
171
  restart?: boolean;
172
172
  };
173
- }): CommandResult;
173
+ }): Awaitable<CommandResult>;
174
+ }
175
+ interface BoardLiveCardsMcpCardStoreDeps {
176
+ get(input: {
177
+ params?: {
178
+ id?: string;
179
+ };
180
+ }): Awaitable<CommandResult<{
181
+ cards?: Array<Record<string, unknown>>;
182
+ }>>;
183
+ set(input: {
184
+ body?: unknown;
185
+ }): Awaitable<CommandResult>;
186
+ del(input: {
187
+ params?: {
188
+ id?: string;
189
+ };
190
+ body?: {
191
+ ids?: string[];
192
+ };
193
+ }): Awaitable<CommandResult>;
194
+ patch(input: {
195
+ params?: {
196
+ id?: string;
197
+ path?: string;
198
+ };
199
+ body?: unknown;
200
+ }): Awaitable<CommandResult>;
201
+ appendFiles?(input: {
202
+ params?: {
203
+ id?: string;
204
+ };
205
+ body?: unknown;
206
+ }): Awaitable<CommandResult>;
174
207
  }
175
208
  interface BoardLiveCardsMcpNonCoreDeps {
176
- describeTaskExecutorCapabilities(input: {}): CommandResult;
209
+ describeTaskExecutorCapabilities(input: {}): Promise<CommandResult>;
177
210
  validateCardPreflight(input: {
178
211
  body: unknown;
179
- }): CommandResult;
212
+ }): Promise<CommandResult>;
180
213
  evalCardCompute(input: {
181
214
  body: unknown;
182
215
  }): CommandResult<{
@@ -193,31 +226,31 @@ interface BoardLiveCardsMcpNonCoreDeps {
193
226
  sourceIdx: number;
194
227
  };
195
228
  body: unknown;
196
- }): CommandResult;
229
+ }): Promise<CommandResult>;
197
230
  runSourcePreflight(input: {
198
231
  params: {
199
232
  sourceIdx: number;
200
233
  };
201
234
  body: unknown;
202
- }): CommandResult;
235
+ }): Promise<CommandResult>;
203
236
  simulateCardCycle(input: {
204
237
  body: unknown;
205
- }): CommandResult;
238
+ }): Promise<CommandResult>;
206
239
  }
207
240
  interface BoardLiveCardsMcpDeps {
208
241
  board: BoardLiveCardsMcpBoardDeps;
209
242
  nonCore: BoardLiveCardsMcpNonCoreDeps;
210
- cardStore: CardStorePublic;
243
+ cardStore: BoardLiveCardsMcpCardStoreDeps;
211
244
  chatStore: ChatStorePublic;
212
245
  uploadCardFile(args: {
213
246
  cardId: string;
214
247
  fileName: string;
215
248
  contentType: string;
216
249
  bytes: Uint8Array;
217
- }): {
250
+ }): Awaitable<{
218
251
  ok: true;
219
252
  file: Record<string, unknown>;
220
- };
253
+ }>;
221
254
  buildFileDownloadUrl(args: {
222
255
  cardId: string;
223
256
  fileIdx: number;
@@ -229,11 +262,11 @@ interface BoardLiveCardsMcpDeps {
229
262
  }): unknown | null;
230
263
  }
231
264
  interface BoardLiveCardsMcp {
232
- discoverSourceKinds(): BoardLiveCardsMcpDiscoverSourceKindsResult;
233
- inspectBoardRuntimeStatus(): BoardLiveCardsMcpBoardStatusResult;
265
+ discoverSourceKinds(): Promise<BoardLiveCardsMcpDiscoverSourceKindsResult>;
266
+ inspectBoardRuntimeStatus(): Promise<BoardLiveCardsMcpBoardStatusResult>;
234
267
  inspectCardDefinitionAndRuntime(args: {
235
268
  cardId: string;
236
- }): BoardLiveCardsMcpInspectCardDefinitionAndRuntimeResult;
269
+ }): Promise<BoardLiveCardsMcpInspectCardDefinitionAndRuntimeResult>;
237
270
  inspectChatMessagesOnCards(args: {
238
271
  cardId: string;
239
272
  lastUserTurns?: number;
@@ -241,14 +274,14 @@ interface BoardLiveCardsMcp {
241
274
  turnId?: string;
242
275
  allTurns?: boolean;
243
276
  tailTurnsBeforeId?: string;
244
- }): BoardLiveCardsMcpInspectChatMessagesResult;
277
+ }): Promise<BoardLiveCardsMcpInspectChatMessagesResult>;
245
278
  inspectFileContents(args: {
246
279
  cardId: string;
247
280
  fileIdx: number;
248
- }): BoardLiveCardsMcpFileDownloadDescriptor;
281
+ }): Promise<BoardLiveCardsMcpFileDownloadDescriptor>;
249
282
  preflightValidateCandidateCardDefinition(args: {
250
283
  candidateCardContent: UnknownRecord;
251
- }): unknown;
284
+ }): Promise<unknown>;
252
285
  preflightMaterializeCandidateCard(args: {
253
286
  candidateCardContent: UnknownRecord;
254
287
  mockRequires: UnknownRecord;
@@ -258,39 +291,59 @@ interface BoardLiveCardsMcp {
258
291
  candidateCardContent: UnknownRecord;
259
292
  mockProjections: UnknownRecord;
260
293
  sourceIdx: number;
261
- }): unknown;
294
+ }): Promise<unknown>;
262
295
  preflightRunSingleSourceInCandidateCard(args: {
263
296
  candidateCardContent: UnknownRecord;
264
297
  mockProjections: UnknownRecord;
265
298
  sourceIdx: number;
266
- }): unknown;
299
+ }): Promise<unknown>;
267
300
  preflightRunSingleSourceInLiveCard(args: {
268
301
  cardId: string;
269
302
  sourceIdx: number;
270
303
  mockRequires: UnknownRecord;
271
- }): unknown;
304
+ }): Promise<unknown>;
272
305
  preflightRunOneCycleWithCandidateCard(args: {
273
306
  candidateCardContent: UnknownRecord;
274
307
  mockRequires: UnknownRecord;
275
- }): BoardLiveCardsMcpPreflightRunOneCycleResult;
308
+ }): Promise<BoardLiveCardsMcpPreflightRunOneCycleResult>;
276
309
  manageReadCard(args: {
277
310
  cardId: string;
278
- }): LiveCard[];
311
+ }): Promise<LiveCard[]>;
279
312
  manageAddChatEntryAndAnyAttachments(args: {
280
313
  cardId: string;
281
314
  role: string;
282
315
  text?: string;
283
316
  turn?: string;
284
317
  files?: unknown[];
285
- }): BoardLiveCardsMcpManageAddChatEntryAndAnyAttachmentsResult;
318
+ }): Promise<BoardLiveCardsMcpManageAddChatEntryAndAnyAttachmentsResult>;
286
319
  manageUpsertCard(args: {
287
320
  cardId: string;
288
321
  candidateCardContent: UnknownRecord;
289
- }): BoardLiveCardsMcpManageUpsertCardResult;
322
+ }): Promise<BoardLiveCardsMcpManageUpsertCardResult>;
290
323
  manageRemoveCard(args: {
291
324
  cardId: string;
292
- }): unknown;
325
+ }): Promise<unknown>;
326
+ adminReadCard(args: {
327
+ cardId: string;
328
+ }): Promise<LiveCard[]>;
329
+ adminUpsertCard(args: {
330
+ cardId: string;
331
+ candidateCardContent: UnknownRecord;
332
+ }): Promise<BoardLiveCardsMcpManageUpsertCardResult>;
333
+ getChatProcessing(args: {
334
+ cardId: string;
335
+ }): {
336
+ cardId: string;
337
+ active: boolean;
338
+ };
339
+ setChatProcessing(args: {
340
+ cardId: string;
341
+ active: boolean;
342
+ }): {
343
+ cardId: string;
344
+ active: boolean;
345
+ };
293
346
  }
294
347
  declare function createBoardLiveCardsMcp(deps: BoardLiveCardsMcpDeps): BoardLiveCardsMcp;
295
348
 
296
- export { type BoardLiveCardsMcp, type BoardLiveCardsMcpBoardDeps, type BoardLiveCardsMcpBoardStatusCard, type BoardLiveCardsMcpBoardStatusResult, type BoardLiveCardsMcpDeps, type BoardLiveCardsMcpDiscoverSourceKindsResult, type BoardLiveCardsMcpFileDownloadDescriptor, type BoardLiveCardsMcpInspectCardDefinitionAndRuntimeResult, type BoardLiveCardsMcpInspectChatMessagesResult, type BoardLiveCardsMcpManageAddChatEntryAndAnyAttachmentsResult, type BoardLiveCardsMcpManageUpsertCardFailureResult, type BoardLiveCardsMcpManageUpsertCardResult, type BoardLiveCardsMcpManageUpsertCardSuccessResult, type BoardLiveCardsMcpNonCoreDeps, type BoardLiveCardsMcpPreflightMaterializeResult, type BoardLiveCardsMcpPreflightRunOneCycleResult, type BoardLiveCardsMcpRenderedView, type BoardLiveCardsMcpRenderedViewElement, createBoardLiveCardsMcp };
349
+ export { type BoardLiveCardsMcp, type BoardLiveCardsMcpBoardDeps, type BoardLiveCardsMcpBoardStatusCard, type BoardLiveCardsMcpBoardStatusResult, type BoardLiveCardsMcpCardStoreDeps, type BoardLiveCardsMcpDeps, type BoardLiveCardsMcpDiscoverSourceKindsResult, type BoardLiveCardsMcpFileDownloadDescriptor, type BoardLiveCardsMcpInspectCardDefinitionAndRuntimeResult, type BoardLiveCardsMcpInspectChatMessagesResult, type BoardLiveCardsMcpManageAddChatEntryAndAnyAttachmentsResult, type BoardLiveCardsMcpManageUpsertCardFailureResult, type BoardLiveCardsMcpManageUpsertCardResult, type BoardLiveCardsMcpManageUpsertCardSuccessResult, type BoardLiveCardsMcpNonCoreDeps, type BoardLiveCardsMcpPreflightMaterializeResult, type BoardLiveCardsMcpPreflightRunOneCycleResult, type BoardLiveCardsMcpRenderedView, type BoardLiveCardsMcpRenderedViewElement, createBoardLiveCardsMcp };