@volter/supercode-orchestrator 0.4.36 → 0.4.37

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 (2) hide show
  1. package/board/cli.mjs +15 -1
  2. package/package.json +1 -1
package/board/cli.mjs CHANGED
@@ -316,7 +316,21 @@ export async function runWorkflow(argv) {
316
316
  updated: (a, b) => (b.completed_at ?? b.started_at ?? b.created_at) - (a.completed_at ?? a.started_at ?? a.created_at),
317
317
  };
318
318
  if (args.sort) { if (!sorters[args.sort]) throw new Error(`--sort is one of ${Object.keys(sorters).join(', ')}`); cards.sort(sorters[args.sort]); }
319
- if (args.json) { say(args, '', cards.map(cardDict)); return 0; }
319
+ if (args.json) {
320
+ // beyond Hermes's fields: the workflow's own status, the cards it waits on and its open run, so a reader of the
321
+ // whole board (a board file's sync) needs no `show` per card
322
+ const extra = withBoard((b) => new Map(cards.map((t) => {
323
+ const run = t.current_run_id ? b.db.prepare('SELECT id, status, started_at, metadata FROM task_runs WHERE id = ?').get(t.current_run_id) : null;
324
+ const session = run ? json(run.metadata, {})?.supercode ?? {} : {};
325
+ return [t.id, {
326
+ workflow_status: t.stage ?? t.status,
327
+ parents: b.db.prepare('SELECT parent_id FROM task_links WHERE child_id = ? ORDER BY parent_id').all(t.id).map((r) => r.parent_id),
328
+ run: run ? { id: run.id, status: run.status, started_at: run.started_at, session: session.address ?? session.session_id ?? null } : null,
329
+ }];
330
+ })));
331
+ say(args, '', cards.map((t) => ({ ...cardDict(t), ...extra.get(t.id) })));
332
+ return 0;
333
+ }
320
334
  const others = boardsOf(root, { includeArchived: false }).length - 1;
321
335
  if (others > 0) process.stdout.write(`Board: ${slug} (${others} other board${others === 1 ? '' : 's'} — \`supercode workflow boards list\`)\n\n`);
322
336
  process.stdout.write(cards.length ? `${cards.map(line).join('\n')}\n` : '(no matching tasks)\n');
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@volter/supercode-orchestrator",
3
- "version": "0.4.36",
3
+ "version": "0.4.37",
4
4
  "type": "module",
5
5
  "description": "The orchestrator runtime over the Volter Harness ontology: one typed operational model whose folder is its serialization, read and written through the harness orchestration doors (docs/ORCHESTRATOR-IR.md)",
6
6
  "exports": {