yaml-flow 8.0.3 → 8.0.4

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 (37) hide show
  1. package/browser/asset-integrity.json +2 -2
  2. package/browser/board-livecards-localstorage.js +3 -3
  3. package/cli/browser-api/board-live-cards-browser-adapter.d.ts +1 -1
  4. package/cli/node/board-live-cards-cli.js +6 -6
  5. package/cli/node/fs-board-adapter.d.ts +2 -2
  6. package/cli/node/fs-board-adapter.js +6 -6
  7. package/cli/{types-C2YQXFwo.d.ts → types-D2XnLbBj.d.ts} +15 -0
  8. package/examples/board/demo-shell-with-server.html +2 -2
  9. package/examples/board/demo-task-executor.js +29 -32
  10. package/examples/board-local/demo-shell-localstorage.html +3 -3
  11. package/lib/{artifacts-store-lib-public-BABrgFkV.d.ts → artifacts-store-lib-public-BWC3YuLa.d.ts} +1 -1
  12. package/lib/{artifacts-store-lib-public-DGa8BpJT.d.cts → artifacts-store-lib-public-DBICnGL6.d.cts} +1 -1
  13. package/lib/artifacts-store-public.d.cts +2 -2
  14. package/lib/artifacts-store-public.d.ts +2 -2
  15. package/lib/board-live-cards-node.cjs +6 -6
  16. package/lib/board-live-cards-node.d.cts +5 -5
  17. package/lib/board-live-cards-node.d.ts +5 -5
  18. package/lib/board-live-cards-node.js +6 -6
  19. package/lib/{board-live-cards-public-BnmRAbQV.d.cts → board-live-cards-public-BF9FP0mL.d.cts} +15 -0
  20. package/lib/{board-live-cards-public-CsmYrvpd.d.ts → board-live-cards-public-dJAl5IL-.d.ts} +15 -0
  21. package/lib/board-live-cards-public.cjs +1 -1
  22. package/lib/board-live-cards-public.d.cts +1 -1
  23. package/lib/board-live-cards-public.d.ts +1 -1
  24. package/lib/board-live-cards-public.js +1 -1
  25. package/lib/board-live-cards-server-runtime.cjs +4 -4
  26. package/lib/board-live-cards-server-runtime.d.cts +2 -2
  27. package/lib/board-live-cards-server-runtime.d.ts +2 -2
  28. package/lib/board-live-cards-server-runtime.js +4 -4
  29. package/lib/card-store-public.d.cts +1 -1
  30. package/lib/card-store-public.d.ts +1 -1
  31. package/lib/server-runtime/index.cjs +4 -4
  32. package/lib/server-runtime/index.d.cts +3 -3
  33. package/lib/server-runtime/index.d.ts +3 -3
  34. package/lib/server-runtime/index.js +4 -4
  35. package/lib/{types-DkFvgxwq.d.cts → types-CXBzvC0s.d.cts} +1 -1
  36. package/lib/{types-CBxkYuLY.d.ts → types-D48hpnTR.d.ts} +1 -1
  37. package/package.json +1 -1
@@ -277,6 +277,21 @@ interface BoardNonCorePlatformAdapter extends BoardPlatformAdapter {
277
277
  makeTempFilePath(label: string, ext?: string): string;
278
278
  /** Absolute-path blob I/O for temp files and card file references. */
279
279
  absoluteBlob: BlobStorage;
280
+ /**
281
+ * Default timeouts (ms) for synchronous executor invocations.
282
+ * Each field can also be overridden per-source via source_def.timeout.
283
+ *
284
+ * validationMs — validate-source-def, validate-card-preflight (structural, fast). Default: 10_000.
285
+ * preflightMs — probe-source-preflight (runs a real source fetch). Default: 60_000.
286
+ * probeMs — run-source-fetch in probe/simulation paths. Default: 60_000.
287
+ * describeMs — describe-capabilities introspection. Default: 10_000.
288
+ */
289
+ executorTimeouts?: {
290
+ validationMs?: number;
291
+ preflightMs?: number;
292
+ probeMs?: number;
293
+ describeMs?: number;
294
+ };
280
295
  }
281
296
  interface BoardLiveCardsNonCorePublic {
282
297
  /** params: cardId? or all?; returns array even for single card */
@@ -19,8 +19,8 @@
19
19
  <script src="https://cdn.jsdelivr.net/npm/marked/marked.min.js"></script>
20
20
  <script src="https://cdn.jsdelivr.net/npm/dompurify/dist/purify.min.js"></script>
21
21
  <script src="https://cdn.jsdelivr.net/npm/leader-line/leader-line.min.js"></script>
22
- <script src="https://cdn.jsdelivr.net/npm/yaml-flow@8.0.3/browser/live-cards.js"></script>
23
- <script src="https://cdn.jsdelivr.net/npm/yaml-flow@8.0.3/browser/board-livecards-client.js"></script>
22
+ <script src="https://cdn.jsdelivr.net/npm/yaml-flow@8.0.4/browser/live-cards.js"></script>
23
+ <script src="https://cdn.jsdelivr.net/npm/yaml-flow@8.0.4/browser/board-livecards-client.js"></script>
24
24
  </head>
25
25
  <body class="bg-light">
26
26
  <div class="container-fluid py-3">
@@ -7,24 +7,23 @@
7
7
  * run-source-fetch — fetch data for one source entry
8
8
  * describe-capabilities — print supported source kinds + schemas to stdout (JSON)
9
9
  *
10
- * CLI args:
11
- * --in <source.json> Required. Path to a temp JSON file containing the source definition.
12
- * --out <result.json> Required. Path where this executor must write its JSON result.
13
- * --err <error.txt> Optional. Path where this executor writes an error message on failure.
14
- * --extra <base64json> Optional. Base64-encoded JSON with board topology context
15
- * (baked into .task-executor at board init time, passed blindly by the CLI).
10
+ * Subcommand CLI args:
16
11
  *
17
- * --in payload (source definition):
18
- * {
19
- * "bindTo": "token_name",
20
- * "outputFile": "relative/path.json",
21
- * "cwd": "<card directory>", // injected by CLI
22
- * "boardDir":"<board runtime directory>", // injected by CLI
23
- * "_projections": { "refKey": <resolvedValue> }, // named projections from card_data/requires,
24
- * // declared in source_defs[].projections and resolved
25
- * // by the engine before invoking the executor
26
- * // ...plus any custom fields authored on the source entry (bindTo, outputFile, projections, etc.)
27
- * }
12
+ * run-source-fetch
13
+ * --in-ref <b64ref> Required. Ref to a temp JSON envelope: { source_def, callback? }
14
+ * --out-ref <b64ref> Required. Ref where this executor writes its JSON result.
15
+ * --err-ref <b64ref> Optional. Ref where this executor writes an error message on failure.
16
+ * --extra <base64json> Optional. Base64-encoded JSON with board topology context.
17
+ *
18
+ * validate-source-def source def JSON on stdin; stdout: { ok, errors[] }
19
+ * validate-card-preflight card JSON on stdin; stdout: { ok, errors[] }
20
+ * probe-source-preflight — source def JSON (with _projections) on stdin;
21
+ * stdout: { ok, reachable, latencyMs, error? }
22
+ * describe-capabilities — no stdin; stdout: capability manifest JSON
23
+ *
24
+ * run-source-fetch --in-ref envelope payload:
25
+ * { "source_def": { ... }, "callback": { ... } }
26
+ * or legacy: raw source_def object (no callback field)
28
27
  *
29
28
  * --extra (decoded):
30
29
  * {
@@ -506,27 +505,25 @@ async function probeSourcePreflightSubcommand(argv) {
506
505
  }
507
506
 
508
507
  // ---------------------------------------------------------------------------
509
- // validate-source-def — structural validation of a source definition
508
+ // validate-source-def — structural validation of a source definition.
509
+ // Source def JSON arrives on stdin (board-live-cards-public sends it via input:).
510
510
  // ---------------------------------------------------------------------------
511
- function validateSourceDefSubcommand(argv) {
512
- const inIdx = argv.indexOf('--in');
513
- const inFile = inIdx !== -1 ? argv[inIdx + 1] : undefined;
514
-
515
- if (!inFile) {
516
- console.error('[demo-task-executor] Usage: validate-source-def --in <source.json>');
517
- process.exit(1);
518
- }
519
-
520
- if (!fs.existsSync(inFile)) {
521
- console.log(JSON.stringify({ ok: false, errors: [`Input file not found: ${inFile}`] }));
511
+ async function validateSourceDefSubcommand() {
512
+ const chunks = [];
513
+ for await (const chunk of process.stdin) {
514
+ chunks.push(Buffer.isBuffer(chunk) ? chunk : Buffer.from(chunk));
515
+ }
516
+ const raw = Buffer.concat(chunks).toString('utf-8').trim();
517
+ if (!raw) {
518
+ console.log(JSON.stringify({ ok: false, errors: ['No input provided on stdin'] }));
522
519
  process.exit(1);
523
520
  }
524
521
 
525
522
  let sourceDef;
526
523
  try {
527
- sourceDef = readJson(inFile);
524
+ sourceDef = JSON.parse(raw);
528
525
  } catch (err) {
529
- console.log(JSON.stringify({ ok: false, errors: [`Cannot parse source file: ${err && err.message || err}`] }));
526
+ console.log(JSON.stringify({ ok: false, errors: [`Cannot parse input: ${err && err.message || err}`] }));
530
527
  process.exit(1);
531
528
  }
532
529
 
@@ -710,7 +707,7 @@ async function main() {
710
707
  return;
711
708
  }
712
709
  if (sub === 'validate-source-def') {
713
- validateSourceDefSubcommand(process.argv.slice(3));
710
+ await validateSourceDefSubcommand();
714
711
  return;
715
712
  }
716
713
 
@@ -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.0.3/browser/compute-jsonata.js"></script>
9
+ <script src="https://cdn.jsdelivr.net/npm/yaml-flow@8.0.4/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.0.3/browser/live-cards.js"></script>
15
- <script src="https://cdn.jsdelivr.net/npm/yaml-flow@8.0.3/browser/board-livecards-localstorage.js"></script>
14
+ <script src="https://cdn.jsdelivr.net/npm/yaml-flow@8.0.4/browser/live-cards.js"></script>
15
+ <script src="https://cdn.jsdelivr.net/npm/yaml-flow@8.0.4/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 { C as CommandInput, a as CommandResult } from './board-live-cards-public-CsmYrvpd.js';
1
+ import { C as CommandInput, a as CommandResult } from './board-live-cards-public-dJAl5IL-.js';
2
2
  import { B as BlobStorage } from './storage-interface-BhAON-gW.js';
3
3
 
4
4
  /**
@@ -1,4 +1,4 @@
1
- import { C as CommandInput, a as CommandResult } from './board-live-cards-public-BnmRAbQV.cjs';
1
+ import { C as CommandInput, a as CommandResult } from './board-live-cards-public-BF9FP0mL.cjs';
2
2
  import { B as BlobStorage } from './storage-interface-BhAON-gW.cjs';
3
3
 
4
4
  /**
@@ -1,5 +1,5 @@
1
- import './board-live-cards-public-BnmRAbQV.cjs';
2
- export { A as ArtifactsStorePublic, a as createArtifactsStorePublic } from './artifacts-store-lib-public-DGa8BpJT.cjs';
1
+ import './board-live-cards-public-BF9FP0mL.cjs';
2
+ export { A as ArtifactsStorePublic, a as createArtifactsStorePublic } from './artifacts-store-lib-public-DBICnGL6.cjs';
3
3
  import './storage-interface-BhAON-gW.cjs';
4
4
  import './execution-refs.cjs';
5
5
  import './types-BBhqYGhE.cjs';
@@ -1,5 +1,5 @@
1
- import './board-live-cards-public-CsmYrvpd.js';
2
- export { A as ArtifactsStorePublic, a as createArtifactsStorePublic } from './artifacts-store-lib-public-BABrgFkV.js';
1
+ import './board-live-cards-public-dJAl5IL-.js';
2
+ export { A as ArtifactsStorePublic, a as createArtifactsStorePublic } from './artifacts-store-lib-public-BWC3YuLa.js';
3
3
  import './storage-interface-BhAON-gW.js';
4
4
  import './execution-refs.js';
5
5
  import './types-BBhqYGhE.js';