@agentteams/runner 0.0.59-dev.106 → 0.0.60-dev.108

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.
@@ -1 +1 @@
1
- {"version":3,"file":"trigger-handler.test.js","sourceRoot":"","sources":["../../src/handlers/trigger-handler.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"trigger-handler.test.js","sourceRoot":"","sources":["../../src/handlers/trigger-handler.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ import type { DaemonApiClient } from "../api-client.js";
2
+ import type { HarnessConfig, HarnessYml } from "./types.js";
3
+ /**
4
+ * Load local harness.yml from the project's authPath.
5
+ */
6
+ export declare const loadLocalHarnessConfig: (authPath: string) => Promise<HarnessYml | null>;
7
+ /**
8
+ * Fetch server-side harness config for a project.
9
+ */
10
+ export declare const fetchServerHarnessConfig: (client: DaemonApiClient, projectId: string) => Promise<HarnessYml | null>;
11
+ /**
12
+ * Deep merge two harness configs. Local overrides server.
13
+ */
14
+ export declare const mergeHarnessConfig: (local: HarnessYml | null, server: HarnessYml | null) => HarnessConfig;
15
+ /**
16
+ * Unified loader: load local file → fetch server → merge.
17
+ */
18
+ export declare const loadHarnessConfig: (authPath: string, client: DaemonApiClient, projectId: string) => Promise<HarnessConfig>;
@@ -0,0 +1,96 @@
1
+ import { promises as fs } from "node:fs";
2
+ import { join } from "node:path";
3
+ import { logger } from "../logger.js";
4
+ import { parseYaml } from "./yaml-parser.js";
5
+ const HARNESS_YML_PATH = ".agentteams/harness.yml";
6
+ const EMPTY_CONFIG = {
7
+ preHooks: [],
8
+ postHooks: [],
9
+ qualityGate: null
10
+ };
11
+ /**
12
+ * Load local harness.yml from the project's authPath.
13
+ */
14
+ export const loadLocalHarnessConfig = async (authPath) => {
15
+ const filePath = join(authPath, HARNESS_YML_PATH);
16
+ try {
17
+ const content = await fs.readFile(filePath, "utf8");
18
+ const parsed = parseYaml(content);
19
+ return parsed;
20
+ }
21
+ catch (error) {
22
+ if (isFileNotFoundError(error)) {
23
+ return null;
24
+ }
25
+ logger.warn("Failed to parse harness.yml, falling back to server config", {
26
+ path: filePath,
27
+ error: error instanceof Error ? error.message : String(error)
28
+ });
29
+ return null;
30
+ }
31
+ };
32
+ /**
33
+ * Fetch server-side harness config for a project.
34
+ */
35
+ export const fetchServerHarnessConfig = async (client, projectId) => {
36
+ try {
37
+ const response = await client.fetchHarnessConfig(projectId);
38
+ if (!response) {
39
+ return null;
40
+ }
41
+ return response.config;
42
+ }
43
+ catch (error) {
44
+ logger.warn("Failed to fetch server harness config, continuing without it", {
45
+ projectId,
46
+ error: error instanceof Error ? error.message : String(error)
47
+ });
48
+ return null;
49
+ }
50
+ };
51
+ /**
52
+ * Deep merge two harness configs. Local overrides server.
53
+ */
54
+ export const mergeHarnessConfig = (local, server) => {
55
+ if (!local && !server) {
56
+ return { ...EMPTY_CONFIG };
57
+ }
58
+ if (!server) {
59
+ return toHarnessConfig(local);
60
+ }
61
+ if (!local) {
62
+ return toHarnessConfig(server);
63
+ }
64
+ // Local overrides server (field-level merge)
65
+ return {
66
+ preHooks: local.preHooks ?? server.preHooks ?? [],
67
+ postHooks: local.postHooks ?? server.postHooks ?? [],
68
+ qualityGate: local.qualityGate !== undefined
69
+ ? local.qualityGate
70
+ : server.qualityGate ?? null
71
+ };
72
+ };
73
+ /**
74
+ * Unified loader: load local file → fetch server → merge.
75
+ */
76
+ export const loadHarnessConfig = async (authPath, client, projectId) => {
77
+ const [local, server] = await Promise.all([
78
+ loadLocalHarnessConfig(authPath),
79
+ fetchServerHarnessConfig(client, projectId)
80
+ ]);
81
+ return mergeHarnessConfig(local, server);
82
+ };
83
+ // ---------------------------------------------------------------------------
84
+ // Helpers
85
+ // ---------------------------------------------------------------------------
86
+ const toHarnessConfig = (yml) => ({
87
+ preHooks: yml.preHooks ?? [],
88
+ postHooks: yml.postHooks ?? [],
89
+ qualityGate: yml.qualityGate ?? null
90
+ });
91
+ const isFileNotFoundError = (error) => {
92
+ return (error instanceof Error &&
93
+ "code" in error &&
94
+ error.code === "ENOENT");
95
+ };
96
+ //# sourceMappingURL=config-loader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config-loader.js","sourceRoot":"","sources":["../../src/harness/config-loader.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,110 @@
1
+ import assert from "node:assert/strict";
2
+ import { mkdir, mkdtemp, rm, writeFile } from "node:fs/promises";
3
+ import { tmpdir } from "node:os";
4
+ import { join } from "node:path";
5
+ import test, { describe } from "node:test";
6
+ import { mergeHarnessConfig, loadLocalHarnessConfig } from "./config-loader.js";
7
+ const withTempDir = async (run) => {
8
+ const dir = await mkdtemp(join(tmpdir(), "harness-config-test-"));
9
+ try {
10
+ await run(dir);
11
+ }
12
+ finally {
13
+ await rm(dir, { recursive: true, force: true });
14
+ }
15
+ };
16
+ // ---------------------------------------------------------------------------
17
+ // mergeHarnessConfig
18
+ // ---------------------------------------------------------------------------
19
+ describe("mergeHarnessConfig", () => {
20
+ test("returns empty config when both are null", () => {
21
+ const result = mergeHarnessConfig(null, null);
22
+ assert.deepStrictEqual(result, {
23
+ preHooks: [],
24
+ postHooks: [],
25
+ qualityGate: null
26
+ });
27
+ });
28
+ test("returns server config when local is null", () => {
29
+ const server = {
30
+ preHooks: [{ name: "lint", command: "npm run lint", onFailure: "fail" }],
31
+ postHooks: [],
32
+ qualityGate: { minScore: 80, onBelowThreshold: "warn" }
33
+ };
34
+ const result = mergeHarnessConfig(null, server);
35
+ assert.deepStrictEqual(result.preHooks, server.preHooks);
36
+ assert.deepStrictEqual(result.qualityGate, server.qualityGate);
37
+ });
38
+ test("returns local config when server is null", () => {
39
+ const local = {
40
+ preHooks: [{ name: "test", command: "npm test", onFailure: "needs_review" }]
41
+ };
42
+ const result = mergeHarnessConfig(local, null);
43
+ assert.deepStrictEqual(result.preHooks, local.preHooks);
44
+ assert.deepStrictEqual(result.postHooks, []);
45
+ assert.strictEqual(result.qualityGate, null);
46
+ });
47
+ test("local overrides server at field level", () => {
48
+ const local = {
49
+ preHooks: [{ name: "local-lint", command: "eslint .", onFailure: "warn" }]
50
+ };
51
+ const server = {
52
+ preHooks: [{ name: "server-lint", command: "npm run lint", onFailure: "fail" }],
53
+ postHooks: [{ name: "deploy", command: "npm run deploy", onFailure: "fail" }],
54
+ qualityGate: { minScore: 90, onBelowThreshold: "fail" }
55
+ };
56
+ const result = mergeHarnessConfig(local, server);
57
+ // local preHooks overrides server
58
+ assert.strictEqual(result.preHooks.length, 1);
59
+ assert.strictEqual(result.preHooks[0].name, "local-lint");
60
+ // server postHooks used (local didn't specify)
61
+ assert.strictEqual(result.postHooks.length, 1);
62
+ assert.strictEqual(result.postHooks[0].name, "deploy");
63
+ // server qualityGate used (local didn't specify)
64
+ assert.strictEqual(result.qualityGate?.minScore, 90);
65
+ });
66
+ test("local can explicitly set qualityGate to null", () => {
67
+ const local = { qualityGate: null };
68
+ const server = {
69
+ qualityGate: { minScore: 80, onBelowThreshold: "fail" }
70
+ };
71
+ const result = mergeHarnessConfig(local, server);
72
+ assert.strictEqual(result.qualityGate, null);
73
+ });
74
+ });
75
+ // ---------------------------------------------------------------------------
76
+ // loadLocalHarnessConfig
77
+ // ---------------------------------------------------------------------------
78
+ describe("loadLocalHarnessConfig", () => {
79
+ test("returns null when harness.yml does not exist", async () => {
80
+ await withTempDir(async (dir) => {
81
+ const result = await loadLocalHarnessConfig(dir);
82
+ assert.strictEqual(result, null);
83
+ });
84
+ });
85
+ test("parses harness.yml with pre-hooks", async () => {
86
+ await withTempDir(async (dir) => {
87
+ const agentteamsDir = join(dir, ".agentteams");
88
+ await mkdir(agentteamsDir, { recursive: true });
89
+ await writeFile(join(agentteamsDir, "harness.yml"), [
90
+ "preHooks:",
91
+ " - name: lint",
92
+ " command: npm run lint",
93
+ " onFailure: fail",
94
+ "postHooks:",
95
+ " - name: report",
96
+ " command: npm run report",
97
+ " onFailure: warn"
98
+ ].join("\n"), "utf8");
99
+ const result = await loadLocalHarnessConfig(dir);
100
+ assert.ok(result);
101
+ assert.strictEqual(result.preHooks?.length, 1);
102
+ assert.strictEqual(result.preHooks[0].name, "lint");
103
+ assert.strictEqual(result.preHooks[0].command, "npm run lint");
104
+ assert.strictEqual(result.preHooks[0].onFailure, "fail");
105
+ assert.strictEqual(result.postHooks?.length, 1);
106
+ assert.strictEqual(result.postHooks[0].name, "report");
107
+ });
108
+ });
109
+ });
110
+ //# sourceMappingURL=config-loader.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config-loader.test.js","sourceRoot":"","sources":["../../src/harness/config-loader.test.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,oBAAoB,CAAC;AACxC,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACjE,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACjC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,IAAI,EAAE,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAGhF,MAAM,WAAW,GAAG,KAAK,EAAE,GAAmC,EAAiB,EAAE;IAC/E,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,sBAAsB,CAAC,CAAC,CAAC;IAClE,IAAI,CAAC;QACH,MAAM,GAAG,CAAC,GAAG,CAAC,CAAC;IACjB,CAAC;YAAS,CAAC;QACT,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IAClD,CAAC;AACH,CAAC,CAAC;AAEF,8EAA8E;AAC9E,qBAAqB;AACrB,8EAA8E;AAE9E,QAAQ,CAAC,oBAAoB,EAAE,GAAG,EAAE;IAClC,IAAI,CAAC,yCAAyC,EAAE,GAAG,EAAE;QACnD,MAAM,MAAM,GAAG,kBAAkB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAC9C,MAAM,CAAC,eAAe,CAAC,MAAM,EAAE;YAC7B,QAAQ,EAAE,EAAE;YACZ,SAAS,EAAE,EAAE;YACb,WAAW,EAAE,IAAI;SAClB,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,0CAA0C,EAAE,GAAG,EAAE;QACpD,MAAM,MAAM,GAAe;YACzB,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC;YACxE,SAAS,EAAE,EAAE;YACb,WAAW,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,gBAAgB,EAAE,MAAM,EAAE;SACxD,CAAC;QAEF,MAAM,MAAM,GAAG,kBAAkB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAChD,MAAM,CAAC,eAAe,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;QACzD,MAAM,CAAC,eAAe,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;IACjE,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,0CAA0C,EAAE,GAAG,EAAE;QACpD,MAAM,KAAK,GAAe;YACxB,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,cAAc,EAAE,CAAC;SAC7E,CAAC;QAEF,MAAM,MAAM,GAAG,kBAAkB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QAC/C,MAAM,CAAC,eAAe,CAAC,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;QACxD,MAAM,CAAC,eAAe,CAAC,MAAM,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;QAC7C,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;IAC/C,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,uCAAuC,EAAE,GAAG,EAAE;QACjD,MAAM,KAAK,GAAe;YACxB,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC;SAC3E,CAAC;QAEF,MAAM,MAAM,GAAe;YACzB,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC;YAC/E,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC;YAC7E,WAAW,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,gBAAgB,EAAE,MAAM,EAAE;SACxD,CAAC;QAEF,MAAM,MAAM,GAAG,kBAAkB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QACjD,kCAAkC;QAClC,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QAC9C,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAE,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;QAC3D,+CAA+C;QAC/C,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QAC/C,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAE,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QACxD,iDAAiD;QACjD,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,WAAW,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC;IACvD,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,8CAA8C,EAAE,GAAG,EAAE;QACxD,MAAM,KAAK,GAAe,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;QAChD,MAAM,MAAM,GAAe;YACzB,WAAW,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,gBAAgB,EAAE,MAAM,EAAE;SACxD,CAAC;QAEF,MAAM,MAAM,GAAG,kBAAkB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QACjD,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;IAC/C,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,8EAA8E;AAC9E,yBAAyB;AACzB,8EAA8E;AAE9E,QAAQ,CAAC,wBAAwB,EAAE,GAAG,EAAE;IACtC,IAAI,CAAC,8CAA8C,EAAE,KAAK,IAAI,EAAE;QAC9D,MAAM,WAAW,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;YAC9B,MAAM,MAAM,GAAG,MAAM,sBAAsB,CAAC,GAAG,CAAC,CAAC;YACjD,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QACnC,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,mCAAmC,EAAE,KAAK,IAAI,EAAE;QACnD,MAAM,WAAW,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;YAC9B,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC;YAC/C,MAAM,KAAK,CAAC,aAAa,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAChD,MAAM,SAAS,CACb,IAAI,CAAC,aAAa,EAAE,aAAa,CAAC,EAClC;gBACE,WAAW;gBACX,gBAAgB;gBAChB,2BAA2B;gBAC3B,qBAAqB;gBACrB,YAAY;gBACZ,kBAAkB;gBAClB,6BAA6B;gBAC7B,qBAAqB;aACtB,CAAC,IAAI,CAAC,IAAI,CAAC,EACZ,MAAM,CACP,CAAC;YAEF,MAAM,MAAM,GAAG,MAAM,sBAAsB,CAAC,GAAG,CAAC,CAAC;YACjD,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;YAClB,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;YAC/C,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,QAAS,CAAC,CAAC,CAAE,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YACtD,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,QAAS,CAAC,CAAC,CAAE,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;YACjE,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,QAAS,CAAC,CAAC,CAAE,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;YAC3D,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;YAChD,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,SAAU,CAAC,CAAC,CAAE,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QAC3D,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -0,0 +1,24 @@
1
+ import type { HookDefinition, HookFailureAction } from "./types.js";
2
+ export type HookLogLevel = "INFO" | "WARN" | "ERROR";
3
+ export type HookContext = {
4
+ authPath: string;
5
+ triggerId: string;
6
+ triggerLogAppend: (level: HookLogLevel, message: string) => void;
7
+ };
8
+ export type HookResult = {
9
+ name: string;
10
+ success: boolean;
11
+ exitCode: number | null;
12
+ stdout: string;
13
+ stderr: string;
14
+ durationMs: number;
15
+ };
16
+ export type PreHooksOutcome = {
17
+ results: HookResult[];
18
+ /** If a hook failed with a blocking policy, this is set. */
19
+ failureAction: HookFailureAction | null;
20
+ /** Human-readable reason for the failure. */
21
+ failureReason: string | null;
22
+ };
23
+ export declare const executeHook: (hook: HookDefinition, context: HookContext, timeoutMs?: number) => Promise<HookResult>;
24
+ export declare const executePreHooks: (hooks: HookDefinition[], context: HookContext) => Promise<PreHooksOutcome>;
@@ -0,0 +1,98 @@
1
+ import { spawn } from "node:child_process";
2
+ // ---------------------------------------------------------------------------
3
+ // Single hook execution
4
+ // ---------------------------------------------------------------------------
5
+ const DEFAULT_TIMEOUT_MS = 30_000;
6
+ export const executeHook = (hook, context, timeoutMs = DEFAULT_TIMEOUT_MS) => {
7
+ return new Promise((resolve) => {
8
+ const start = Date.now();
9
+ let stdout = "";
10
+ let stderr = "";
11
+ let settled = false;
12
+ let killTimer = null;
13
+ const child = spawn(hook.command, {
14
+ cwd: context.authPath,
15
+ shell: true,
16
+ stdio: ["ignore", "pipe", "pipe"],
17
+ windowsHide: true,
18
+ });
19
+ const settle = (exitCode) => {
20
+ if (settled)
21
+ return;
22
+ settled = true;
23
+ if (killTimer)
24
+ clearTimeout(killTimer);
25
+ resolve({
26
+ name: hook.name,
27
+ success: exitCode === 0,
28
+ exitCode,
29
+ stdout,
30
+ stderr,
31
+ durationMs: Date.now() - start,
32
+ });
33
+ };
34
+ child.stdout.on("data", (chunk) => {
35
+ stdout += chunk.toString();
36
+ });
37
+ child.stderr.on("data", (chunk) => {
38
+ stderr += chunk.toString();
39
+ });
40
+ child.on("close", (code) => {
41
+ settle(code);
42
+ });
43
+ child.on("error", (err) => {
44
+ stderr += err.message;
45
+ settle(1);
46
+ });
47
+ // Timeout handling
48
+ killTimer = setTimeout(() => {
49
+ if (!settled) {
50
+ stderr += `\nHook timed out after ${timeoutMs}ms`;
51
+ try {
52
+ child.kill("SIGTERM");
53
+ }
54
+ catch {
55
+ // Process may have already exited
56
+ }
57
+ settle(null);
58
+ }
59
+ }, timeoutMs);
60
+ });
61
+ };
62
+ // ---------------------------------------------------------------------------
63
+ // Sequential pre-hook execution
64
+ // ---------------------------------------------------------------------------
65
+ export const executePreHooks = async (hooks, context) => {
66
+ const results = [];
67
+ if (hooks.length === 0) {
68
+ return { results, failureAction: null, failureReason: null };
69
+ }
70
+ for (const hook of hooks) {
71
+ context.triggerLogAppend("INFO", `Running pre-hook: ${hook.name} (${hook.command})`);
72
+ const result = await executeHook(hook, context);
73
+ results.push(result);
74
+ context.triggerLogAppend(result.success ? "INFO" : "WARN", `Pre-hook "${hook.name}" ${result.success ? "passed" : "failed"} (exit=${result.exitCode}, ${result.durationMs}ms)`);
75
+ if (result.stdout.trim()) {
76
+ context.triggerLogAppend("INFO", `[${hook.name} stdout] ${result.stdout.trim()}`);
77
+ }
78
+ if (result.stderr.trim()) {
79
+ context.triggerLogAppend("WARN", `[${hook.name} stderr] ${result.stderr.trim()}`);
80
+ }
81
+ if (!result.success) {
82
+ if (hook.onFailure === "warn") {
83
+ context.triggerLogAppend("WARN", `Pre-hook "${hook.name}" failed but onFailure=warn, continuing.`);
84
+ continue;
85
+ }
86
+ // "fail" or "needs_review" — both block execution
87
+ const reason = `Pre-hook "${hook.name}" failed with exit code ${result.exitCode}. Policy: ${hook.onFailure}.`;
88
+ context.triggerLogAppend("ERROR", reason);
89
+ return {
90
+ results,
91
+ failureAction: hook.onFailure,
92
+ failureReason: reason,
93
+ };
94
+ }
95
+ }
96
+ return { results, failureAction: null, failureReason: null };
97
+ };
98
+ //# sourceMappingURL=hook-executor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hook-executor.js","sourceRoot":"","sources":["../../src/harness/hook-executor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,114 @@
1
+ import assert from "node:assert/strict";
2
+ import { describe, it } from "node:test";
3
+ import { executeHook, executePreHooks } from "./hook-executor.js";
4
+ const makeContext = (overrides) => ({
5
+ authPath: process.cwd(),
6
+ triggerId: "test-trigger-id",
7
+ triggerLogAppend: () => { },
8
+ ...overrides,
9
+ });
10
+ // ---------------------------------------------------------------------------
11
+ // executeHook
12
+ // ---------------------------------------------------------------------------
13
+ describe("executeHook", () => {
14
+ it("returns success=true when command exits 0", async () => {
15
+ const hook = { name: "echo-hook", command: "echo hello", onFailure: "fail" };
16
+ const result = await executeHook(hook, makeContext());
17
+ assert.equal(result.success, true);
18
+ assert.equal(result.exitCode, 0);
19
+ assert.equal(result.name, "echo-hook");
20
+ assert.ok(result.stdout.includes("hello"));
21
+ assert.ok(result.durationMs >= 0);
22
+ });
23
+ it("returns success=false when command exits non-zero", async () => {
24
+ const hook = { name: "fail-hook", command: "exit 1", onFailure: "fail" };
25
+ const result = await executeHook(hook, makeContext());
26
+ assert.equal(result.success, false);
27
+ assert.equal(result.exitCode, 1);
28
+ });
29
+ it("captures stderr", async () => {
30
+ const hook = { name: "stderr-hook", command: "echo error >&2", onFailure: "fail" };
31
+ const result = await executeHook(hook, makeContext());
32
+ assert.ok(result.stderr.includes("error"));
33
+ });
34
+ it("kills process on timeout and returns success=false", async () => {
35
+ const hook = { name: "slow-hook", command: "sleep 60", onFailure: "fail" };
36
+ const result = await executeHook(hook, makeContext(), 200);
37
+ assert.equal(result.success, false);
38
+ assert.equal(result.exitCode, null);
39
+ assert.ok(result.stderr.includes("timed out"));
40
+ assert.ok(result.durationMs < 5000);
41
+ });
42
+ it("uses authPath as cwd", async () => {
43
+ const hook = { name: "pwd-hook", command: "pwd", onFailure: "fail" };
44
+ const ctx = makeContext({ authPath: "/tmp" });
45
+ const result = await executeHook(hook, ctx);
46
+ assert.equal(result.success, true);
47
+ // /tmp may resolve to /private/tmp on macOS
48
+ assert.ok(result.stdout.trim() === "/tmp" || result.stdout.trim() === "/private/tmp", `Expected /tmp or /private/tmp but got ${result.stdout.trim()}`);
49
+ });
50
+ });
51
+ // ---------------------------------------------------------------------------
52
+ // executePreHooks
53
+ // ---------------------------------------------------------------------------
54
+ describe("executePreHooks", () => {
55
+ it("returns empty results for no hooks", async () => {
56
+ const outcome = await executePreHooks([], makeContext());
57
+ assert.deepStrictEqual(outcome.results, []);
58
+ assert.equal(outcome.failureAction, null);
59
+ assert.equal(outcome.failureReason, null);
60
+ });
61
+ it("runs all hooks sequentially when all pass", async () => {
62
+ const hooks = [
63
+ { name: "h1", command: "echo one", onFailure: "fail" },
64
+ { name: "h2", command: "echo two", onFailure: "fail" },
65
+ ];
66
+ const outcome = await executePreHooks(hooks, makeContext());
67
+ assert.equal(outcome.results.length, 2);
68
+ assert.ok(outcome.results.every((r) => r.success));
69
+ assert.equal(outcome.failureAction, null);
70
+ });
71
+ it("stops on first failure with onFailure=fail", async () => {
72
+ const hooks = [
73
+ { name: "pass", command: "echo ok", onFailure: "fail" },
74
+ { name: "blocker", command: "exit 1", onFailure: "fail" },
75
+ { name: "never", command: "echo unreachable", onFailure: "fail" },
76
+ ];
77
+ const outcome = await executePreHooks(hooks, makeContext());
78
+ assert.equal(outcome.results.length, 2);
79
+ assert.equal(outcome.failureAction, "fail");
80
+ assert.ok(outcome.failureReason.includes("blocker"));
81
+ });
82
+ it("continues on failure with onFailure=warn", async () => {
83
+ const hooks = [
84
+ { name: "warn-hook", command: "exit 1", onFailure: "warn" },
85
+ { name: "after", command: "echo ok", onFailure: "fail" },
86
+ ];
87
+ const outcome = await executePreHooks(hooks, makeContext());
88
+ assert.equal(outcome.results.length, 2);
89
+ assert.equal(outcome.failureAction, null);
90
+ assert.equal(outcome.results[0].success, false);
91
+ assert.equal(outcome.results[1].success, true);
92
+ });
93
+ it("returns needs_review as failureAction", async () => {
94
+ const hooks = [
95
+ { name: "review-hook", command: "exit 2", onFailure: "needs_review" },
96
+ ];
97
+ const outcome = await executePreHooks(hooks, makeContext());
98
+ assert.equal(outcome.failureAction, "needs_review");
99
+ assert.ok(outcome.failureReason.includes("needs_review"));
100
+ });
101
+ it("logs hook output via triggerLogAppend", async () => {
102
+ const logs = [];
103
+ const ctx = makeContext({
104
+ triggerLogAppend: (_level, msg) => logs.push(msg),
105
+ });
106
+ const hooks = [
107
+ { name: "log-hook", command: "echo logged", onFailure: "fail" },
108
+ ];
109
+ await executePreHooks(hooks, ctx);
110
+ assert.ok(logs.some((l) => l.includes("log-hook")));
111
+ assert.ok(logs.some((l) => l.includes("logged")));
112
+ });
113
+ });
114
+ //# sourceMappingURL=hook-executor.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hook-executor.test.js","sourceRoot":"","sources":["../../src/harness/hook-executor.test.ts"],"names":[],"mappings":"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"}