@agentteams/runner 0.0.58 → 0.0.59-dev.107
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.
- package/dist/api-client.d.ts +2 -0
- package/dist/api-client.js +11 -0
- package/dist/api-client.js.map +1 -1
- package/dist/handlers/trigger-handler.js +63 -3
- package/dist/handlers/trigger-handler.js.map +1 -1
- package/dist/handlers/trigger-handler.test.js +351 -0
- package/dist/handlers/trigger-handler.test.js.map +1 -1
- package/dist/harness/config-loader.d.ts +18 -0
- package/dist/harness/config-loader.js +96 -0
- package/dist/harness/config-loader.js.map +1 -0
- package/dist/harness/config-loader.test.d.ts +1 -0
- package/dist/harness/config-loader.test.js +110 -0
- package/dist/harness/config-loader.test.js.map +1 -0
- package/dist/harness/hook-executor.d.ts +24 -0
- package/dist/harness/hook-executor.js +98 -0
- package/dist/harness/hook-executor.js.map +1 -0
- package/dist/harness/hook-executor.test.d.ts +1 -0
- package/dist/harness/hook-executor.test.js +114 -0
- package/dist/harness/hook-executor.test.js.map +1 -0
- package/dist/harness/types.d.ts +35 -0
- package/dist/harness/types.js +8 -0
- package/dist/harness/types.js.map +1 -0
- package/dist/harness/yaml-parser.d.ts +12 -0
- package/dist/harness/yaml-parser.js +160 -0
- package/dist/harness/yaml-parser.js.map +1 -0
- package/dist/poller.js +6 -11
- package/dist/poller.js.map +1 -1
- package/dist/types.d.ts +1 -1
- package/package.json +1 -1
|
@@ -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":"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"}
|
|
@@ -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":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAgC3C,8EAA8E;AAC9E,wBAAwB;AACxB,8EAA8E;AAE9E,MAAM,kBAAkB,GAAG,MAAM,CAAC;AAElC,MAAM,CAAC,MAAM,WAAW,GAAG,CACzB,IAAoB,EACpB,OAAoB,EACpB,YAAoB,kBAAkB,EACjB,EAAE;IACvB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACzB,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,IAAI,OAAO,GAAG,KAAK,CAAC;QACpB,IAAI,SAAS,GAAyC,IAAI,CAAC;QAE3D,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE;YAChC,GAAG,EAAE,OAAO,CAAC,QAAQ;YACrB,KAAK,EAAE,IAAI;YACX,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC;YACjC,WAAW,EAAE,IAAI;SAClB,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,CAAC,QAAuB,EAAE,EAAE;YACzC,IAAI,OAAO;gBAAE,OAAO;YACpB,OAAO,GAAG,IAAI,CAAC;YACf,IAAI,SAAS;gBAAE,YAAY,CAAC,SAAS,CAAC,CAAC;YACvC,OAAO,CAAC;gBACN,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,OAAO,EAAE,QAAQ,KAAK,CAAC;gBACvB,QAAQ;gBACR,MAAM;gBACN,MAAM;gBACN,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;aAC/B,CAAC,CAAC;QACL,CAAC,CAAC;QAEF,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAa,EAAE,EAAE;YACxC,MAAM,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;QAC7B,CAAC,CAAC,CAAC;QAEH,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAa,EAAE,EAAE;YACxC,MAAM,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;QAC7B,CAAC,CAAC,CAAC;QAEH,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;YACzB,MAAM,CAAC,IAAI,CAAC,CAAC;QACf,CAAC,CAAC,CAAC;QAEH,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;YACxB,MAAM,IAAI,GAAG,CAAC,OAAO,CAAC;YACtB,MAAM,CAAC,CAAC,CAAC,CAAC;QACZ,CAAC,CAAC,CAAC;QAEH,mBAAmB;QACnB,SAAS,GAAG,UAAU,CAAC,GAAG,EAAE;YAC1B,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,MAAM,IAAI,0BAA0B,SAAS,IAAI,CAAC;gBAClD,IAAI,CAAC;oBACH,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBACxB,CAAC;gBAAC,MAAM,CAAC;oBACP,kCAAkC;gBACpC,CAAC;gBACD,MAAM,CAAC,IAAI,CAAC,CAAC;YACf,CAAC;QACH,CAAC,EAAE,SAAS,CAAC,CAAC;IAChB,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,8EAA8E;AAC9E,gCAAgC;AAChC,8EAA8E;AAE9E,MAAM,CAAC,MAAM,eAAe,GAAG,KAAK,EAClC,KAAuB,EACvB,OAAoB,EACM,EAAE;IAC5B,MAAM,OAAO,GAAiB,EAAE,CAAC;IAEjC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;IAC/D,CAAC;IAED,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,OAAO,CAAC,gBAAgB,CAAC,MAAM,EAAE,qBAAqB,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC;QAErF,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAChD,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAErB,OAAO,CAAC,gBAAgB,CACtB,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAChC,aAAa,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,UAAU,MAAM,CAAC,QAAQ,KAAK,MAAM,CAAC,UAAU,KAAK,CACpH,CAAC;QAEF,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;YACzB,OAAO,CAAC,gBAAgB,CAAC,MAAM,EAAE,IAAI,IAAI,CAAC,IAAI,YAAY,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACpF,CAAC;QACD,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;YACzB,OAAO,CAAC,gBAAgB,CAAC,MAAM,EAAE,IAAI,IAAI,CAAC,IAAI,YAAY,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACpF,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACpB,IAAI,IAAI,CAAC,SAAS,KAAK,MAAM,EAAE,CAAC;gBAC9B,OAAO,CAAC,gBAAgB,CAAC,MAAM,EAAE,aAAa,IAAI,CAAC,IAAI,0CAA0C,CAAC,CAAC;gBACnG,SAAS;YACX,CAAC;YAED,kDAAkD;YAClD,MAAM,MAAM,GAAG,aAAa,IAAI,CAAC,IAAI,2BAA2B,MAAM,CAAC,QAAQ,aAAa,IAAI,CAAC,SAAS,GAAG,CAAC;YAC9G,OAAO,CAAC,gBAAgB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;YAE1C,OAAO;gBACL,OAAO;gBACP,aAAa,EAAE,IAAI,CAAC,SAAS;gBAC7B,aAAa,EAAE,MAAM;aACtB,CAAC;QACJ,CAAC;IACH,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;AAC/D,CAAC,CAAC"}
|
|
@@ -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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"}
|