@gaunt-sloth/batch 2.0.0-alpha.19

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 (44) hide show
  1. package/LICENSE +7 -0
  2. package/dist/BatchRunner.d.ts +18 -0
  3. package/dist/BatchRunner.js +100 -0
  4. package/dist/BatchRunner.js.map +1 -0
  5. package/dist/deterministicChecks.d.ts +16 -0
  6. package/dist/deterministicChecks.js +34 -0
  7. package/dist/deterministicChecks.js.map +1 -0
  8. package/dist/evalOutput.d.ts +11 -0
  9. package/dist/evalOutput.js +19 -0
  10. package/dist/evalOutput.js.map +1 -0
  11. package/dist/evalRunner.d.ts +25 -0
  12. package/dist/evalRunner.js +100 -0
  13. package/dist/evalRunner.js.map +1 -0
  14. package/dist/evalSuite.d.ts +24 -0
  15. package/dist/evalSuite.js +129 -0
  16. package/dist/evalSuite.js.map +1 -0
  17. package/dist/evalTypes.d.ts +98 -0
  18. package/dist/evalTypes.js +14 -0
  19. package/dist/evalTypes.js.map +1 -0
  20. package/dist/index.d.ts +18 -0
  21. package/dist/index.js +17 -0
  22. package/dist/index.js.map +1 -0
  23. package/dist/interpolate.d.ts +16 -0
  24. package/dist/interpolate.js +48 -0
  25. package/dist/interpolate.js.map +1 -0
  26. package/dist/judge.d.ts +62 -0
  27. package/dist/judge.js +119 -0
  28. package/dist/judge.js.map +1 -0
  29. package/dist/matrix.d.ts +11 -0
  30. package/dist/matrix.js +31 -0
  31. package/dist/matrix.js.map +1 -0
  32. package/dist/output.d.ts +13 -0
  33. package/dist/output.js +24 -0
  34. package/dist/output.js.map +1 -0
  35. package/dist/parseOver.d.ts +14 -0
  36. package/dist/parseOver.js +116 -0
  37. package/dist/parseOver.js.map +1 -0
  38. package/dist/types.d.ts +97 -0
  39. package/dist/types.js +12 -0
  40. package/dist/types.js.map +1 -0
  41. package/dist/workflow/runWorkflow.d.ts +79 -0
  42. package/dist/workflow/runWorkflow.js +142 -0
  43. package/dist/workflow/runWorkflow.js.map +1 -0
  44. package/package.json +49 -0
package/dist/types.js ADDED
@@ -0,0 +1,12 @@
1
+ /**
2
+ * @packageDocumentation
3
+ * BATCH-1 — the shapes shared across matrix construction, the concurrency/retry runner, and the
4
+ * structured output writer. Deliberately independent of any LLM/runner types (`GthConfig`,
5
+ * `runSingleShot`, …): this package only knows about *cells* and *outcomes*. The production
6
+ * adapter that turns a cell into an actual `runSingleShot` call lives in
7
+ * `packages/app/src/commands/batchCommand.ts`, which is what keeps {@link RunCellFn} injectable —
8
+ * unit tests here fake it, the CLI wires the real one.
9
+ */
10
+ /** The default concurrency cap when `-j/--concurrency` is not supplied. */
11
+ export const DEFAULT_CONCURRENCY = 4;
12
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AA+FH,2EAA2E;AAC3E,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC"}
@@ -0,0 +1,79 @@
1
+ /**
2
+ * @module workflow/runWorkflow
3
+ *
4
+ * BATCH-3 — the `gth workflow` host. Runs a local JS orchestration script (`.mjs`/`.js`) that drives
5
+ * one or more LLM calls through a small, generic {@link WorkflowContext}. This is the
6
+ * script-orchestrated sibling of `gth batch` (matrix over a single prompt): a workflow is arbitrary
7
+ * local code that decides *how* to fan calls out.
8
+ *
9
+ * The host provides two agent shapes, both reusing the proven production wiring:
10
+ * - a **structured** call via {@link askStructured} (`@gaunt-sloth/core`) — a bare, non-agentic
11
+ * `withStructuredOutput` model call that returns a schema-validated object;
12
+ * - a **text** call that mirrors `buildProductionRunCell` (packages/app/src/commands/batchCommand.ts)
13
+ * exactly — its own `createResolvers()`, a lean agent factory, `runSingleShot`, and
14
+ * `cleanupTools()` on every path.
15
+ *
16
+ * Packaging note: the text path pulls in `@gaunt-sloth/agent` (`createResolvers`,
17
+ * `resolveAgentFactory`), so this package now declares `@gaunt-sloth/agent` as a dependency. That is
18
+ * a deliberate widening of the batch package (whose matrix runtime was kept LLM/runner-agnostic) to
19
+ * host the workflow runtime the BATCH-3 brief scopes here; `batch → agent → core` stays a clean DAG
20
+ * (agent does not depend on batch).
21
+ */
22
+ import * as z from 'zod';
23
+ import type { CommandLineConfigOverrides, GthConfig } from '@gaunt-sloth/core/config.js';
24
+ import type { GthCommand } from '@gaunt-sloth/core/core/types.js';
25
+ /** Options for a single {@link WorkflowContext.agent} call. */
26
+ export interface WorkflowAgentOptions {
27
+ /** Zod schema → structured output (via {@link askStructured}). Omit for a plain-text agent run.
28
+ * Build it with {@link WorkflowContext.z} so it is the exact zod instance the model introspects. */
29
+ schema?: z.ZodType<unknown>;
30
+ /** System-message text. Default `''`. */
31
+ system?: string;
32
+ /** Model override (e.g. `'google-genai:gemini-3.1-flash-lite'`); omit to use the host's base config. */
33
+ model?: string;
34
+ /** Agent mode for the text path's `runSingleShot` (default `'ask'`). Ignored for the schema path. */
35
+ command?: GthCommand;
36
+ }
37
+ /** The context object a workflow script's default export receives. */
38
+ export interface WorkflowContext {
39
+ /**
40
+ * Run one LLM call. With `opts.schema` → returns the schema-validated object (throws `Error(msg)`
41
+ * on a structured failure). Without a schema → returns the answer text (throws on failure).
42
+ */
43
+ agent(prompt: string, opts?: WorkflowAgentOptions): Promise<unknown>;
44
+ /**
45
+ * Run thunks concurrently (cap = {@link DEFAULT_CONCURRENCY}), results in input order; a throwing
46
+ * thunk yields `null` in its slot and never rejects the whole `parallel`.
47
+ */
48
+ parallel<T>(thunks: Array<() => Promise<T>>): Promise<Array<T | null>>;
49
+ /** The value passed via `--args <json>` (parsed), or `undefined`. */
50
+ args: unknown;
51
+ /** Emit a progress line (via `consoleUtils`, not raw `console.log`). */
52
+ log(message: string): void;
53
+ /**
54
+ * The host's own zod module. Build schemas with `ctx.z` (not a bare `import 'zod'` from the
55
+ * script's own location) so `agent({ schema })` uses the exact zod instance
56
+ * `withStructuredOutput` introspects — a foreign copy triggers the dual-zod `instanceof` mismatch.
57
+ */
58
+ z: typeof z;
59
+ }
60
+ /** Inputs to {@link runWorkflow}. */
61
+ export interface RunWorkflowOptions {
62
+ /** The resolved base config (the configured model), respecting `-i <profile>` etc. */
63
+ baseConfig: GthConfig;
64
+ /** CLI overrides, threaded into per-`model` `initConfig` calls (see the model resolver). */
65
+ commandLineConfigOverrides: CommandLineConfigOverrides;
66
+ /** The parsed `--args` value handed to the script as `ctx.args`. */
67
+ args: unknown;
68
+ }
69
+ /**
70
+ * Run a workflow script.
71
+ *
72
+ * Resolves `scriptPath` to an absolute path, dynamic-imports it (`.mjs`/`.js`), requires an async
73
+ * function as its default export, builds the {@link WorkflowContext}, and returns whatever the
74
+ * script resolves to. Script errors propagate (the CLI surfaces them).
75
+ *
76
+ * @param scriptPath Path to the workflow script (`.mjs`/`.js`).
77
+ * @param options The base config, CLI overrides, and parsed `--args` value.
78
+ */
79
+ export declare function runWorkflow(scriptPath: string, options: RunWorkflowOptions): Promise<unknown>;
@@ -0,0 +1,142 @@
1
+ /**
2
+ * @module workflow/runWorkflow
3
+ *
4
+ * BATCH-3 — the `gth workflow` host. Runs a local JS orchestration script (`.mjs`/`.js`) that drives
5
+ * one or more LLM calls through a small, generic {@link WorkflowContext}. This is the
6
+ * script-orchestrated sibling of `gth batch` (matrix over a single prompt): a workflow is arbitrary
7
+ * local code that decides *how* to fan calls out.
8
+ *
9
+ * The host provides two agent shapes, both reusing the proven production wiring:
10
+ * - a **structured** call via {@link askStructured} (`@gaunt-sloth/core`) — a bare, non-agentic
11
+ * `withStructuredOutput` model call that returns a schema-validated object;
12
+ * - a **text** call that mirrors `buildProductionRunCell` (packages/app/src/commands/batchCommand.ts)
13
+ * exactly — its own `createResolvers()`, a lean agent factory, `runSingleShot`, and
14
+ * `cleanupTools()` on every path.
15
+ *
16
+ * Packaging note: the text path pulls in `@gaunt-sloth/agent` (`createResolvers`,
17
+ * `resolveAgentFactory`), so this package now declares `@gaunt-sloth/agent` as a dependency. That is
18
+ * a deliberate widening of the batch package (whose matrix runtime was kept LLM/runner-agnostic) to
19
+ * host the workflow runtime the BATCH-3 brief scopes here; `batch → agent → core` stays a clean DAG
20
+ * (agent does not depend on batch).
21
+ */
22
+ import * as z from 'zod';
23
+ import { resolve } from 'node:path';
24
+ import { initConfig } from '@gaunt-sloth/core/config.js';
25
+ import { askStructured } from '@gaunt-sloth/core/runtime/askStructured.js';
26
+ import { importExternalFile } from '@gaunt-sloth/core/utils/fileUtils.js';
27
+ import { displayInfo, displayWarning } from '@gaunt-sloth/core/utils/consoleUtils.js';
28
+ import { DEFAULT_CONCURRENCY } from '#src/types.js';
29
+ /**
30
+ * Build a per-`model` {@link GthConfig} cache — the same idiom as `createCellConfigResolver` in
31
+ * `batchCommand.ts`: `undefined` model → the base config; a named model → one cached
32
+ * `initConfig({ ...overrides, model })` call (cached by `Promise` so concurrent requests for the
33
+ * same not-yet-resolved model share one in-flight build rather than racing).
34
+ */
35
+ function createModelConfigResolver(baseConfig, commandLineConfigOverrides) {
36
+ const configForModel = new Map();
37
+ return (model) => {
38
+ if (!model) {
39
+ return Promise.resolve(baseConfig);
40
+ }
41
+ let cached = configForModel.get(model);
42
+ if (!cached) {
43
+ cached = initConfig({ ...commandLineConfigOverrides, model });
44
+ configForModel.set(model, cached);
45
+ }
46
+ return cached;
47
+ };
48
+ }
49
+ /**
50
+ * Run a workflow script.
51
+ *
52
+ * Resolves `scriptPath` to an absolute path, dynamic-imports it (`.mjs`/`.js`), requires an async
53
+ * function as its default export, builds the {@link WorkflowContext}, and returns whatever the
54
+ * script resolves to. Script errors propagate (the CLI surfaces them).
55
+ *
56
+ * @param scriptPath Path to the workflow script (`.mjs`/`.js`).
57
+ * @param options The base config, CLI overrides, and parsed `--args` value.
58
+ */
59
+ export async function runWorkflow(scriptPath, options) {
60
+ const { baseConfig, commandLineConfigOverrides, args } = options;
61
+ const absolutePath = resolve(scriptPath);
62
+ const imported = await importExternalFile(absolutePath);
63
+ const scriptDefault = imported?.default;
64
+ if (typeof scriptDefault !== 'function') {
65
+ throw new Error(`Workflow script "${scriptPath}" must export an async function as its default export.`);
66
+ }
67
+ const resolveModelConfig = createModelConfigResolver(baseConfig, commandLineConfigOverrides);
68
+ // The per-call config: the model's config, cloned the way batch does — no interactive ESC
69
+ // interrupt and no per-call `.md` report file (a workflow's return value is its output).
70
+ const cellConfigForModel = async (model) => {
71
+ const modelConfig = await resolveModelConfig(model);
72
+ return { ...modelConfig, canInterruptInferenceWithEsc: false, writeOutputToFile: false };
73
+ };
74
+ const agent = async (prompt, opts = {}) => {
75
+ const cellConfig = await cellConfigForModel(opts.model);
76
+ if (opts.schema) {
77
+ // Structured path — a bare model call (no resolvers/tools); askStructured never throws.
78
+ const result = await askStructured(opts.schema, {
79
+ config: cellConfig,
80
+ system: opts.system ?? '',
81
+ user: prompt,
82
+ });
83
+ if (!result.ok) {
84
+ throw new Error(result.error);
85
+ }
86
+ return result.value;
87
+ }
88
+ // Text path — mirrors buildProductionRunCell (batchCommand.ts): own resolvers, lean agent
89
+ // factory, cleanup on every path.
90
+ const { runSingleShot } = await import('@gaunt-sloth/core/runtime/singleShot.js');
91
+ const { createResolvers } = await import('@gaunt-sloth/agent/resolvers.js');
92
+ const { resolveAgentFactory } = await import('@gaunt-sloth/agent/core/resolveAgentFactory.js');
93
+ const resolvers = createResolvers();
94
+ try {
95
+ const { ok, answer } = await runSingleShot(`WORKFLOW-${Date.now()}`, opts.system ?? '', prompt, cellConfig, resolvers, opts.command ?? 'ask', resolveAgentFactory(cellConfig, 'lean'));
96
+ if (!ok) {
97
+ throw new Error('agent run failed');
98
+ }
99
+ return answer;
100
+ }
101
+ finally {
102
+ // Guard cleanup so a teardown failure never masks the real return/throw above.
103
+ try {
104
+ await resolvers.cleanupTools?.();
105
+ }
106
+ catch (cleanupError) {
107
+ displayWarning(`Failed to clean up workflow agent tools: ` +
108
+ `${cleanupError instanceof Error ? cleanupError.message : String(cleanupError)}`);
109
+ }
110
+ }
111
+ };
112
+ const parallel = async (thunks) => {
113
+ const results = new Array(thunks.length).fill(null);
114
+ let nextIndex = 0;
115
+ const worker = async () => {
116
+ for (;;) {
117
+ const i = nextIndex++;
118
+ if (i >= thunks.length)
119
+ return;
120
+ try {
121
+ results[i] = await thunks[i]();
122
+ }
123
+ catch {
124
+ // A throwing thunk yields null in its slot and never fails the other thunks.
125
+ results[i] = null;
126
+ }
127
+ }
128
+ };
129
+ const workerCount = Math.min(DEFAULT_CONCURRENCY, thunks.length);
130
+ await Promise.all(Array.from({ length: workerCount }, () => worker()));
131
+ return results;
132
+ };
133
+ const ctx = {
134
+ agent,
135
+ parallel,
136
+ args,
137
+ log: (message) => displayInfo(message),
138
+ z,
139
+ };
140
+ return scriptDefault(ctx);
141
+ }
142
+ //# sourceMappingURL=runWorkflow.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runWorkflow.js","sourceRoot":"","sources":["../../src/workflow/runWorkflow.ts"],"names":[],"mappings":"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"}
package/package.json ADDED
@@ -0,0 +1,49 @@
1
+ {
2
+ "name": "@gaunt-sloth/batch",
3
+ "version": "2.0.0-alpha.19",
4
+ "description": "Batch matrix runtime for Gaunt Sloth (BATCH-1): run a prompt-executable over a matrix of models and/or content-bound inputs",
5
+ "license": "MIT",
6
+ "author": "Andrew Kondratev",
7
+ "repository": {
8
+ "type": "git",
9
+ "url": "git+https://github.com/pukeko-robotics/gaunt-sloth.git",
10
+ "directory": "packages/batch"
11
+ },
12
+ "bugs": {
13
+ "url": "https://github.com/pukeko-robotics/gaunt-sloth/issues"
14
+ },
15
+ "homepage": "https://github.com/pukeko-robotics/gaunt-sloth/tree/main/packages/batch#readme",
16
+ "keywords": [
17
+ "ai",
18
+ "agent",
19
+ "llm",
20
+ "batch",
21
+ "cli"
22
+ ],
23
+ "type": "module",
24
+ "main": "dist/index.js",
25
+ "types": "dist/index.d.ts",
26
+ "exports": {
27
+ ".": "./dist/index.js",
28
+ "./*.js": "./dist/*.js"
29
+ },
30
+ "imports": {
31
+ "#src/*.js": "./dist/*.js"
32
+ },
33
+ "dependencies": {
34
+ "@langchain/core": "^1.2.3",
35
+ "yaml": "^2.9.0",
36
+ "zod": "^4.4.3",
37
+ "@gaunt-sloth/agent": "2.0.0-alpha.19",
38
+ "@gaunt-sloth/core": "2.0.0-alpha.19"
39
+ },
40
+ "files": [
41
+ "./dist/*"
42
+ ],
43
+ "publishConfig": {
44
+ "tag": "alpha"
45
+ },
46
+ "scripts": {
47
+ "build": "tsc"
48
+ }
49
+ }