codex-orchestrator 0.1.19 → 0.1.20
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/README.md +132 -33
- package/dist/src/codex/command-adapter.d.ts +3 -0
- package/dist/src/codex/command-adapter.d.ts.map +1 -1
- package/dist/src/codex/command-adapter.js +18 -7
- package/dist/src/codex/command-adapter.js.map +1 -1
- package/dist/src/config/schema.d.ts +3 -0
- package/dist/src/config/schema.d.ts.map +1 -1
- package/dist/src/config/schema.js +3 -0
- package/dist/src/config/schema.js.map +1 -1
- package/dist/src/git/worktree.d.ts +17 -0
- package/dist/src/git/worktree.d.ts.map +1 -1
- package/dist/src/git/worktree.js +38 -0
- package/dist/src/git/worktree.js.map +1 -1
- package/dist/src/github/gh-issue-adapter.js +6 -3
- package/dist/src/github/gh-issue-adapter.js.map +1 -1
- package/dist/src/github/issues.d.ts +1 -1
- package/dist/src/github/issues.d.ts.map +1 -1
- package/dist/src/index.d.ts +6 -2
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +3 -1
- package/dist/src/index.js.map +1 -1
- package/dist/src/process/command.d.ts +3 -0
- package/dist/src/process/command.d.ts.map +1 -1
- package/dist/src/process/command.js +59 -9
- package/dist/src/process/command.js.map +1 -1
- package/dist/src/runner/command-utils.d.ts +4 -0
- package/dist/src/runner/command-utils.d.ts.map +1 -1
- package/dist/src/runner/command-utils.js +40 -1
- package/dist/src/runner/command-utils.js.map +1 -1
- package/dist/src/runner/completion-report.d.ts +54 -0
- package/dist/src/runner/completion-report.d.ts.map +1 -0
- package/dist/src/runner/completion-report.js +220 -0
- package/dist/src/runner/completion-report.js.map +1 -0
- package/dist/src/runner/local-execution-session.d.ts +34 -0
- package/dist/src/runner/local-execution-session.d.ts.map +1 -0
- package/dist/src/runner/local-execution-session.js +25 -0
- package/dist/src/runner/local-execution-session.js.map +1 -0
- package/dist/src/runner/local-state.d.ts +1 -0
- package/dist/src/runner/local-state.d.ts.map +1 -1
- package/dist/src/runner/local-state.js +2 -1
- package/dist/src/runner/local-state.js.map +1 -1
- package/dist/src/runner/plan-auto-command.d.ts +1 -0
- package/dist/src/runner/plan-auto-command.d.ts.map +1 -1
- package/dist/src/runner/plan-auto-command.js +55 -29
- package/dist/src/runner/plan-auto-command.js.map +1 -1
- package/dist/src/runner/prompt.d.ts +2 -53
- package/dist/src/runner/prompt.d.ts.map +1 -1
- package/dist/src/runner/prompt.js +15 -220
- package/dist/src/runner/prompt.js.map +1 -1
- package/dist/src/runner/review-gates.d.ts +1 -1
- package/dist/src/runner/review-gates.d.ts.map +1 -1
- package/dist/src/runner/review-gates.js +20 -1
- package/dist/src/runner/review-gates.js.map +1 -1
- package/dist/src/runner/run-log.d.ts +18 -0
- package/dist/src/runner/run-log.d.ts.map +1 -0
- package/dist/src/runner/run-log.js +53 -0
- package/dist/src/runner/run-log.js.map +1 -0
- package/dist/src/runner/safety.d.ts +1 -1
- package/dist/src/runner/safety.d.ts.map +1 -1
- package/dist/src/runner/scoped-auto-command.d.ts +4 -0
- package/dist/src/runner/scoped-auto-command.d.ts.map +1 -1
- package/dist/src/runner/scoped-auto-command.js +118 -35
- package/dist/src/runner/scoped-auto-command.js.map +1 -1
- package/dist/src/runner/visual-proof-runner.d.ts +1 -1
- package/dist/src/runner/visual-proof-runner.d.ts.map +1 -1
- package/dist/src/runner/visual-proof-runner.js +64 -9
- package/dist/src/runner/visual-proof-runner.js.map +1 -1
- package/dist/src/setup/project-config.d.ts.map +1 -1
- package/dist/src/setup/project-config.js +5 -0
- package/dist/src/setup/project-config.js.map +1 -1
- package/package.json +2 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gh-issue-adapter.js","sourceRoot":"","sources":["../../../src/github/gh-issue-adapter.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"gh-issue-adapter.js","sourceRoot":"","sources":["../../../src/github/gh-issue-adapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"issues.d.ts","sourceRoot":"","sources":["../../../src/github/issues.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,QAAQ,CAAC;AAC3C,MAAM,MAAM,gBAAgB,GAAG,MAAM,GAAG,QAAQ,GAAG,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"issues.d.ts","sourceRoot":"","sources":["../../../src/github/issues.ts"],"names":[],"mappings":"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"}
|
package/dist/src/index.d.ts
CHANGED
|
@@ -14,8 +14,12 @@ export { ensureAutonomousChildBody, isAutonomousChildOfParent, renderAutonomousC
|
|
|
14
14
|
export type { PlanChildNode, PlanDependencyEdge, PlanGraph, PlanGraphValidationResult } from './runner/issue-tree.js';
|
|
15
15
|
export { RunnerStateStore } from './runner/local-state.js';
|
|
16
16
|
export type { RunnerProcessMetadata, RunnerStateFile } from './runner/local-state.js';
|
|
17
|
-
export {
|
|
18
|
-
export type {
|
|
17
|
+
export { runLocalExecutionSession } from './runner/local-execution-session.js';
|
|
18
|
+
export type { LocalExecutionPhaseExecutor, LocalExecutionPhaseInput, LocalExecutionPhaseResult, LocalExecutionSessionInput, LocalExecutionSessionResult, } from './runner/local-execution-session.js';
|
|
19
|
+
export { readPlanAutoCompletionReport, readScopedCompletionReport, } from './runner/completion-report.js';
|
|
20
|
+
export type { PlanAutoCompletionReport, ScopedCompletionReport, } from './runner/completion-report.js';
|
|
21
|
+
export { buildPlanAutoPrompt, buildScopedImplementationPrompt, sessionPromptPath, sessionReportPath, writeDurablePrompt, } from './runner/prompt.js';
|
|
22
|
+
export type { PlanAutoPromptInput, ScopedPromptInput, } from './runner/prompt.js';
|
|
19
23
|
export { runDaemonCommand } from './runner/daemon-command.js';
|
|
20
24
|
export type { DaemonCommandOptions, DaemonCommandResult } from './runner/daemon-command.js';
|
|
21
25
|
export { cleanupMergedWorktrees } from './runner/worktree-cleanup.js';
|
package/dist/src/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,uBAAuB,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAC1F,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AACvF,YAAY,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAC9F,OAAO,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AAC9E,YAAY,EACV,WAAW,EACX,kBAAkB,EAClB,kBAAkB,EAClB,gBAAgB,EAChB,qBAAqB,EACrB,UAAU,EACV,gBAAgB,GACjB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,0BAA0B,EAAE,MAAM,oBAAoB,CAAC;AAChE,YAAY,EAAE,2BAA2B,EAAE,iBAAiB,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AAC1H,OAAO,EAAE,gCAAgC,EAAE,MAAM,2BAA2B,CAAC;AAC7E,OAAO,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAC7E,OAAO,EACL,sBAAsB,EACtB,uBAAuB,EACvB,UAAU,EACV,sBAAsB,EACtB,iBAAiB,EACjB,6CAA6C,GAC9C,MAAM,iCAAiC,CAAC;AACzC,YAAY,EACV,qBAAqB,EACrB,wBAAwB,EACxB,kBAAkB,EAClB,sBAAsB,EACtB,UAAU,EACV,cAAc,GACf,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACL,yBAAyB,EACzB,yBAAyB,EACzB,2BAA2B,EAC3B,iBAAiB,GAClB,MAAM,wBAAwB,CAAC;AAChC,YAAY,EAAE,aAAa,EAAE,kBAAkB,EAAE,SAAS,EAAE,yBAAyB,EAAE,MAAM,wBAAwB,CAAC;AACtH,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,YAAY,EAAE,qBAAqB,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AACtF,OAAO,EACL,mBAAmB,EACnB,+BAA+B,EAC/B,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/src/index.js
CHANGED
|
@@ -7,7 +7,9 @@ export { GitWorktreeManager, renderBranchTemplate } from './git/worktree.js';
|
|
|
7
7
|
export { applyClarificationGate, applyCodexSessionResult, claimIssue, clearClarificationGate, discoverIssueWork, hasMaintainerResponseAfterLatestClarification, } from './runner/issue-state-machine.js';
|
|
8
8
|
export { ensureAutonomousChildBody, isAutonomousChildOfParent, renderAutonomousChildMarker, validatePlanGraph, } from './runner/issue-tree.js';
|
|
9
9
|
export { RunnerStateStore } from './runner/local-state.js';
|
|
10
|
-
export {
|
|
10
|
+
export { runLocalExecutionSession } from './runner/local-execution-session.js';
|
|
11
|
+
export { readPlanAutoCompletionReport, readScopedCompletionReport, } from './runner/completion-report.js';
|
|
12
|
+
export { buildPlanAutoPrompt, buildScopedImplementationPrompt, sessionPromptPath, sessionReportPath, writeDurablePrompt, } from './runner/prompt.js';
|
|
11
13
|
export { runDaemonCommand } from './runner/daemon-command.js';
|
|
12
14
|
export { cleanupMergedWorktrees } from './runner/worktree-cleanup.js';
|
|
13
15
|
export { reconcileRunnerState } from './runner/recovery.js';
|
package/dist/src/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAEvF,OAAO,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AAU9E,OAAO,EAAE,0BAA0B,EAAE,MAAM,oBAAoB,CAAC;AAEhE,OAAO,EAAE,gCAAgC,EAAE,MAAM,2BAA2B,CAAC;AAC7E,OAAO,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAC7E,OAAO,EACL,sBAAsB,EACtB,uBAAuB,EACvB,UAAU,EACV,sBAAsB,EACtB,iBAAiB,EACjB,6CAA6C,GAC9C,MAAM,iCAAiC,CAAC;AASzC,OAAO,EACL,yBAAyB,EACzB,yBAAyB,EACzB,2BAA2B,EAC3B,iBAAiB,GAClB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAE3D,OAAO,EACL,mBAAmB,EACnB,+BAA+B,EAC/B,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAEvF,OAAO,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AAU9E,OAAO,EAAE,0BAA0B,EAAE,MAAM,oBAAoB,CAAC;AAEhE,OAAO,EAAE,gCAAgC,EAAE,MAAM,2BAA2B,CAAC;AAC7E,OAAO,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAC7E,OAAO,EACL,sBAAsB,EACtB,uBAAuB,EACvB,UAAU,EACV,sBAAsB,EACtB,iBAAiB,EACjB,6CAA6C,GAC9C,MAAM,iCAAiC,CAAC;AASzC,OAAO,EACL,yBAAyB,EACzB,yBAAyB,EACzB,2BAA2B,EAC3B,iBAAiB,GAClB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAE3D,OAAO,EAAE,wBAAwB,EAAE,MAAM,qCAAqC,CAAC;AAQ/E,OAAO,EACL,4BAA4B,EAC5B,0BAA0B,GAC3B,MAAM,+BAA+B,CAAC;AAKvC,OAAO,EACL,mBAAmB,EACnB,+BAA+B,EAC/B,iBAAiB,EACjB,iBAAiB,EACjB,kBAAkB,GACnB,MAAM,oBAAoB,CAAC;AAK5B,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAE9D,OAAO,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AAOtE,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAE5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAEnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;AAEvE,OAAO,EACL,oBAAoB,EACpB,8BAA8B,EAC9B,kCAAkC,GACnC,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAG9D,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC"}
|
|
@@ -3,6 +3,9 @@ export interface ProcessCommandOptions {
|
|
|
3
3
|
env?: Record<string, string>;
|
|
4
4
|
stdin?: string;
|
|
5
5
|
timeoutMs?: number;
|
|
6
|
+
idleTimeoutMs?: number;
|
|
7
|
+
onStdoutChunk?: (chunk: string) => void | Promise<void>;
|
|
8
|
+
onStderrChunk?: (chunk: string) => void | Promise<void>;
|
|
6
9
|
}
|
|
7
10
|
export interface ProcessCommandResult {
|
|
8
11
|
stdout: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command.d.ts","sourceRoot":"","sources":["../../../src/process/command.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,qBAAqB;IACpC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC7B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"command.d.ts","sourceRoot":"","sources":["../../../src/process/command.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,qBAAqB;IACpC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC7B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACxD,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACzD;AAED,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,MAAM,eAAe,GAAG,CAC5B,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,EAAE,EACd,OAAO,CAAC,EAAE,qBAAqB,KAC5B,OAAO,CAAC,oBAAoB,CAAC,CAAC;AAEnC,MAAM,MAAM,oBAAoB,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,qBAAqB,KAAK,OAAO,CAAC,oBAAoB,CAAC,CAAC;AAEvH,eAAO,MAAM,sBAAsB,EAAE,eACe,CAAC;AAErD,eAAO,MAAM,2BAA2B,EAAE,oBACU,CAAC"}
|
|
@@ -5,6 +5,8 @@ function runSpawn(file, args, options) {
|
|
|
5
5
|
return new Promise((resolve, reject) => {
|
|
6
6
|
let settled = false;
|
|
7
7
|
let timedOut = false;
|
|
8
|
+
let idleTimedOut = false;
|
|
9
|
+
const callbackTasks = [];
|
|
8
10
|
const child = spawn(file, args, {
|
|
9
11
|
cwd: options.cwd,
|
|
10
12
|
env: options.env ? { ...options.env } : process.env,
|
|
@@ -15,11 +17,40 @@ function runSpawn(file, args, options) {
|
|
|
15
17
|
let stderr = '';
|
|
16
18
|
child.stdout.setEncoding('utf8');
|
|
17
19
|
child.stderr.setEncoding('utf8');
|
|
20
|
+
const scheduleCallback = (callback, chunk) => {
|
|
21
|
+
if (callback) {
|
|
22
|
+
callbackTasks.push(Promise.resolve(callback(chunk)));
|
|
23
|
+
}
|
|
24
|
+
};
|
|
25
|
+
let idleTimeout;
|
|
26
|
+
const resetIdleTimeout = () => {
|
|
27
|
+
if (!options.idleTimeoutMs || options.idleTimeoutMs <= 0) {
|
|
28
|
+
return;
|
|
29
|
+
}
|
|
30
|
+
if (idleTimeout) {
|
|
31
|
+
clearTimeout(idleTimeout);
|
|
32
|
+
}
|
|
33
|
+
idleTimeout = setTimeout(() => {
|
|
34
|
+
idleTimedOut = true;
|
|
35
|
+
child.kill('SIGTERM');
|
|
36
|
+
setTimeout(() => {
|
|
37
|
+
if (!settled) {
|
|
38
|
+
child.kill('SIGKILL');
|
|
39
|
+
}
|
|
40
|
+
}, 2_000).unref();
|
|
41
|
+
}, options.idleTimeoutMs);
|
|
42
|
+
idleTimeout.unref();
|
|
43
|
+
};
|
|
44
|
+
resetIdleTimeout();
|
|
18
45
|
child.stdout.on('data', (chunk) => {
|
|
19
46
|
stdout += chunk;
|
|
47
|
+
scheduleCallback(options.onStdoutChunk, chunk);
|
|
48
|
+
resetIdleTimeout();
|
|
20
49
|
});
|
|
21
50
|
child.stderr.on('data', (chunk) => {
|
|
22
51
|
stderr += chunk;
|
|
52
|
+
scheduleCallback(options.onStderrChunk, chunk);
|
|
53
|
+
resetIdleTimeout();
|
|
23
54
|
});
|
|
24
55
|
const timeout = options.timeoutMs && options.timeoutMs > 0
|
|
25
56
|
? setTimeout(() => {
|
|
@@ -41,6 +72,9 @@ function runSpawn(file, args, options) {
|
|
|
41
72
|
if (timeout) {
|
|
42
73
|
clearTimeout(timeout);
|
|
43
74
|
}
|
|
75
|
+
if (idleTimeout) {
|
|
76
|
+
clearTimeout(idleTimeout);
|
|
77
|
+
}
|
|
44
78
|
reject(error);
|
|
45
79
|
});
|
|
46
80
|
child.on('close', (exitCode) => {
|
|
@@ -51,16 +85,32 @@ function runSpawn(file, args, options) {
|
|
|
51
85
|
if (timeout) {
|
|
52
86
|
clearTimeout(timeout);
|
|
53
87
|
}
|
|
54
|
-
if (
|
|
55
|
-
|
|
56
|
-
resolve({
|
|
57
|
-
stdout,
|
|
58
|
-
stderr: stderr ? `${stderr}\n${timeoutMessage}` : timeoutMessage,
|
|
59
|
-
exitCode: 124,
|
|
60
|
-
});
|
|
61
|
-
return;
|
|
88
|
+
if (idleTimeout) {
|
|
89
|
+
clearTimeout(idleTimeout);
|
|
62
90
|
}
|
|
63
|
-
|
|
91
|
+
const finish = async () => {
|
|
92
|
+
await Promise.all(callbackTasks);
|
|
93
|
+
if (idleTimedOut) {
|
|
94
|
+
const timeoutMessage = `Command idle timed out after ${options.idleTimeoutMs}ms.`;
|
|
95
|
+
resolve({
|
|
96
|
+
stdout,
|
|
97
|
+
stderr: stderr ? `${stderr}\n${timeoutMessage}` : timeoutMessage,
|
|
98
|
+
exitCode: 124,
|
|
99
|
+
});
|
|
100
|
+
return;
|
|
101
|
+
}
|
|
102
|
+
if (timedOut) {
|
|
103
|
+
const timeoutMessage = `Command timed out after ${options.timeoutMs}ms.`;
|
|
104
|
+
resolve({
|
|
105
|
+
stdout,
|
|
106
|
+
stderr: stderr ? `${stderr}\n${timeoutMessage}` : timeoutMessage,
|
|
107
|
+
exitCode: 124,
|
|
108
|
+
});
|
|
109
|
+
return;
|
|
110
|
+
}
|
|
111
|
+
resolve({ stdout, stderr, exitCode: exitCode ?? 1 });
|
|
112
|
+
};
|
|
113
|
+
void finish().catch(reject);
|
|
64
114
|
});
|
|
65
115
|
if (options.stdin !== undefined) {
|
|
66
116
|
child.stdin.end(options.stdin);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command.js","sourceRoot":"","sources":["../../../src/process/command.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"command.js","sourceRoot":"","sources":["../../../src/process/command.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,9 @@
|
|
|
1
1
|
import { type CodexOrchestratorConfig } from '../config/schema.js';
|
|
2
|
+
import type { SessionCommitInfo } from '../git/worktree.js';
|
|
3
|
+
import type { ScopedCompletionReport } from './completion-report.js';
|
|
2
4
|
export declare function readRunnerConfig(targetRoot: string): Promise<CodexOrchestratorConfig>;
|
|
3
5
|
export declare function bulletList(items: string[]): string[];
|
|
4
6
|
export declare function formatSessionTimestamp(now: Date): string;
|
|
7
|
+
export declare function mergeArtifacts(existing: ScopedCompletionReport['artifacts'], additions: ScopedCompletionReport['artifacts']): ScopedCompletionReport['artifacts'];
|
|
8
|
+
export declare function renderCommitEvidence(commits: SessionCommitInfo[]): string[];
|
|
5
9
|
//# sourceMappingURL=command-utils.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command-utils.d.ts","sourceRoot":"","sources":["../../../src/runner/command-utils.ts"],"names":[],"mappings":"AAEA,OAAO,EAAkB,KAAK,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"command-utils.d.ts","sourceRoot":"","sources":["../../../src/runner/command-utils.ts"],"names":[],"mappings":"AAEA,OAAO,EAAkB,KAAK,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AACnF,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAE5D,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAErE,wBAAsB,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAQ3F;AAuBD,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAEpD;AAED,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,IAAI,GAAG,MAAM,CAExD;AAED,wBAAgB,cAAc,CAC5B,QAAQ,EAAE,sBAAsB,CAAC,WAAW,CAAC,EAC7C,SAAS,EAAE,sBAAsB,CAAC,WAAW,CAAC,GAC7C,sBAAsB,CAAC,WAAW,CAAC,CAYrC;AAED,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,iBAAiB,EAAE,GAAG,MAAM,EAAE,CAK3E"}
|
|
@@ -3,17 +3,56 @@ import { validateConfig } from '../config/schema.js';
|
|
|
3
3
|
import { projectConfigPath } from '../setup/project-config.js';
|
|
4
4
|
export async function readRunnerConfig(targetRoot) {
|
|
5
5
|
const content = await readFile(projectConfigPath(targetRoot), 'utf8');
|
|
6
|
-
const parsed = JSON.parse(content);
|
|
6
|
+
const parsed = withRuntimeConfigDefaults(JSON.parse(content));
|
|
7
7
|
const validation = validateConfig(parsed);
|
|
8
8
|
if (!validation.ok) {
|
|
9
9
|
throw new Error(`Invalid config: ${validation.errors.join('; ')}`);
|
|
10
10
|
}
|
|
11
11
|
return validation.value;
|
|
12
12
|
}
|
|
13
|
+
function withRuntimeConfigDefaults(value) {
|
|
14
|
+
if (typeof value !== 'object' || value === null || Array.isArray(value)) {
|
|
15
|
+
return value;
|
|
16
|
+
}
|
|
17
|
+
const root = value;
|
|
18
|
+
if (typeof root.runner !== 'object' || root.runner === null || Array.isArray(root.runner)) {
|
|
19
|
+
return value;
|
|
20
|
+
}
|
|
21
|
+
const runner = root.runner;
|
|
22
|
+
if ('allowAgentLocalCommits' in runner) {
|
|
23
|
+
return value;
|
|
24
|
+
}
|
|
25
|
+
return {
|
|
26
|
+
...root,
|
|
27
|
+
runner: {
|
|
28
|
+
...runner,
|
|
29
|
+
allowAgentLocalCommits: false,
|
|
30
|
+
},
|
|
31
|
+
};
|
|
32
|
+
}
|
|
13
33
|
export function bulletList(items) {
|
|
14
34
|
return items.length > 0 ? items.map((item) => `- ${item}`) : ['- none'];
|
|
15
35
|
}
|
|
16
36
|
export function formatSessionTimestamp(now) {
|
|
17
37
|
return now.toISOString().replace(/\D/g, '').slice(0, 14);
|
|
18
38
|
}
|
|
39
|
+
export function mergeArtifacts(existing, additions) {
|
|
40
|
+
const seen = new Set(existing.map((artifact) => artifact.url ?? artifact.path ?? artifact.description));
|
|
41
|
+
const merged = [...existing];
|
|
42
|
+
for (const artifact of additions) {
|
|
43
|
+
const key = artifact.url ?? artifact.path ?? artifact.description;
|
|
44
|
+
if (seen.has(key)) {
|
|
45
|
+
continue;
|
|
46
|
+
}
|
|
47
|
+
seen.add(key);
|
|
48
|
+
merged.push(artifact);
|
|
49
|
+
}
|
|
50
|
+
return merged;
|
|
51
|
+
}
|
|
52
|
+
export function renderCommitEvidence(commits) {
|
|
53
|
+
if (commits.length === 0) {
|
|
54
|
+
return ['- none'];
|
|
55
|
+
}
|
|
56
|
+
return commits.map((commit) => `- ${commit.sha.slice(0, 12)} ${commit.subject}`);
|
|
57
|
+
}
|
|
19
58
|
//# sourceMappingURL=command-utils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command-utils.js","sourceRoot":"","sources":["../../../src/runner/command-utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5C,OAAO,EAAE,cAAc,EAAgC,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"command-utils.js","sourceRoot":"","sources":["../../../src/runner/command-utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import type { PlanGraph } from './issue-tree.js';
|
|
2
|
+
export type CompletionStatus = 'completed' | 'needs-promotion';
|
|
3
|
+
export type ValidationStatus = 'passed' | 'failed' | 'skipped';
|
|
4
|
+
export type ProhibitedActionType = 'secret-file-read' | 'secret-file-change' | 'destructive-db-or-cache' | 'production-deploy-or-release';
|
|
5
|
+
export interface ScopedCompletionReport {
|
|
6
|
+
status: CompletionStatus;
|
|
7
|
+
changes: string[];
|
|
8
|
+
validation: Array<{
|
|
9
|
+
command: string;
|
|
10
|
+
status: ValidationStatus;
|
|
11
|
+
summary: string;
|
|
12
|
+
}>;
|
|
13
|
+
artifacts: Array<{
|
|
14
|
+
type: 'screenshot' | 'log' | 'other';
|
|
15
|
+
path?: string;
|
|
16
|
+
url?: string;
|
|
17
|
+
description: string;
|
|
18
|
+
}>;
|
|
19
|
+
skippedChecks: string[];
|
|
20
|
+
residualRisks: string[];
|
|
21
|
+
prohibitedActions: Array<{
|
|
22
|
+
type: ProhibitedActionType;
|
|
23
|
+
description: string;
|
|
24
|
+
}>;
|
|
25
|
+
promotion?: {
|
|
26
|
+
reason: string;
|
|
27
|
+
criteria: string[];
|
|
28
|
+
evidence: string[];
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
export interface PlanAutoCompletionReport {
|
|
32
|
+
status: 'completed';
|
|
33
|
+
parent: {
|
|
34
|
+
title?: string;
|
|
35
|
+
body: string;
|
|
36
|
+
};
|
|
37
|
+
graph: PlanGraph;
|
|
38
|
+
residualRisks: string[];
|
|
39
|
+
}
|
|
40
|
+
export type ScopedCompletionReportReadResult = {
|
|
41
|
+
kind: 'missing';
|
|
42
|
+
} | {
|
|
43
|
+
kind: 'valid';
|
|
44
|
+
report: ScopedCompletionReport;
|
|
45
|
+
};
|
|
46
|
+
export type PlanAutoCompletionReportReadResult = {
|
|
47
|
+
kind: 'missing';
|
|
48
|
+
} | {
|
|
49
|
+
kind: 'valid';
|
|
50
|
+
report: PlanAutoCompletionReport;
|
|
51
|
+
};
|
|
52
|
+
export declare function readScopedCompletionReport(reportPath: string): Promise<ScopedCompletionReportReadResult>;
|
|
53
|
+
export declare function readPlanAutoCompletionReport(reportPath: string): Promise<PlanAutoCompletionReportReadResult>;
|
|
54
|
+
//# sourceMappingURL=completion-report.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"completion-report.d.ts","sourceRoot":"","sources":["../../../src/runner/completion-report.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAGjD,MAAM,MAAM,gBAAgB,GAAG,WAAW,GAAG,iBAAiB,CAAC;AAC/D,MAAM,MAAM,gBAAgB,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,CAAC;AAC/D,MAAM,MAAM,oBAAoB,GAC5B,kBAAkB,GAClB,oBAAoB,GACpB,yBAAyB,GACzB,8BAA8B,CAAC;AAEnC,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,gBAAgB,CAAC;IACzB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,UAAU,EAAE,KAAK,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,gBAAgB,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAClF,SAAS,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,YAAY,GAAG,KAAK,GAAG,OAAO,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,GAAG,CAAC,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC7G,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,iBAAiB,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,oBAAoB,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC9E,SAAS,CAAC,EAAE;QACV,MAAM,EAAE,MAAM,CAAC;QACf,QAAQ,EAAE,MAAM,EAAE,CAAC;QACnB,QAAQ,EAAE,MAAM,EAAE,CAAC;KACpB,CAAC;CACH;AAED,MAAM,WAAW,wBAAwB;IACvC,MAAM,EAAE,WAAW,CAAC;IACpB,MAAM,EAAE;QACN,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,IAAI,EAAE,MAAM,CAAC;KACd,CAAC;IACF,KAAK,EAAE,SAAS,CAAC;IACjB,aAAa,EAAE,MAAM,EAAE,CAAC;CACzB;AAED,MAAM,MAAM,gCAAgC,GACxC;IAAE,IAAI,EAAE,SAAS,CAAA;CAAE,GACnB;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,sBAAsB,CAAA;CAAE,CAAC;AAEtD,MAAM,MAAM,kCAAkC,GAC1C;IAAE,IAAI,EAAE,SAAS,CAAA;CAAE,GACnB;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,wBAAwB,CAAA;CAAE,CAAC;AAExD,wBAAsB,0BAA0B,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,gCAAgC,CAAC,CAsB9G;AAED,wBAAsB,4BAA4B,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,kCAAkC,CAAC,CAmBlH"}
|
|
@@ -0,0 +1,220 @@
|
|
|
1
|
+
import { readFile } from 'node:fs/promises';
|
|
2
|
+
import { validatePlanGraph } from './issue-tree.js';
|
|
3
|
+
export async function readScopedCompletionReport(reportPath) {
|
|
4
|
+
let content;
|
|
5
|
+
try {
|
|
6
|
+
content = await readFile(reportPath, 'utf8');
|
|
7
|
+
}
|
|
8
|
+
catch (error) {
|
|
9
|
+
if (error instanceof Error && 'code' in error && error.code === 'ENOENT') {
|
|
10
|
+
return { kind: 'missing' };
|
|
11
|
+
}
|
|
12
|
+
throw error;
|
|
13
|
+
}
|
|
14
|
+
let parsed;
|
|
15
|
+
try {
|
|
16
|
+
parsed = JSON.parse(content);
|
|
17
|
+
}
|
|
18
|
+
catch {
|
|
19
|
+
throw new Error('Invalid scoped completion report: report must be valid JSON');
|
|
20
|
+
}
|
|
21
|
+
if (typeof parsed === 'object' && parsed !== null && !Array.isArray(parsed) && !('artifacts' in parsed)) {
|
|
22
|
+
parsed.artifacts = [];
|
|
23
|
+
}
|
|
24
|
+
assertScopedCompletionReport(parsed);
|
|
25
|
+
return { kind: 'valid', report: parsed };
|
|
26
|
+
}
|
|
27
|
+
export async function readPlanAutoCompletionReport(reportPath) {
|
|
28
|
+
let content;
|
|
29
|
+
try {
|
|
30
|
+
content = await readFile(reportPath, 'utf8');
|
|
31
|
+
}
|
|
32
|
+
catch (error) {
|
|
33
|
+
if (error instanceof Error && 'code' in error && error.code === 'ENOENT') {
|
|
34
|
+
return { kind: 'missing' };
|
|
35
|
+
}
|
|
36
|
+
throw error;
|
|
37
|
+
}
|
|
38
|
+
let parsed;
|
|
39
|
+
try {
|
|
40
|
+
parsed = JSON.parse(content);
|
|
41
|
+
}
|
|
42
|
+
catch {
|
|
43
|
+
throw new Error('Invalid plan-auto completion report: report must be valid JSON');
|
|
44
|
+
}
|
|
45
|
+
assertPlanAutoCompletionReport(parsed);
|
|
46
|
+
return { kind: 'valid', report: parsed };
|
|
47
|
+
}
|
|
48
|
+
function assertScopedCompletionReport(value) {
|
|
49
|
+
if (typeof value !== 'object' || value === null || Array.isArray(value)) {
|
|
50
|
+
throw new Error('Invalid scoped completion report: report must be an object');
|
|
51
|
+
}
|
|
52
|
+
const record = value;
|
|
53
|
+
if (record.status !== 'completed' && record.status !== 'needs-promotion') {
|
|
54
|
+
throw new Error('Invalid scoped completion report: status must be completed or needs-promotion');
|
|
55
|
+
}
|
|
56
|
+
assertStringArray(record.changes, 'changes');
|
|
57
|
+
assertValidation(record.validation);
|
|
58
|
+
assertArtifacts(record.artifacts);
|
|
59
|
+
assertStringArray(record.skippedChecks, 'skippedChecks');
|
|
60
|
+
assertStringArray(record.residualRisks, 'residualRisks');
|
|
61
|
+
assertProhibitedActions(record.prohibitedActions);
|
|
62
|
+
if (record.status === 'needs-promotion') {
|
|
63
|
+
assertPromotion(record.promotion);
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
function assertPlanAutoCompletionReport(value) {
|
|
67
|
+
if (typeof value !== 'object' || value === null || Array.isArray(value)) {
|
|
68
|
+
throw new Error('Invalid plan-auto completion report: report must be an object');
|
|
69
|
+
}
|
|
70
|
+
const record = value;
|
|
71
|
+
if (record.status !== 'completed') {
|
|
72
|
+
throw new Error('Invalid plan-auto completion report: status must be completed');
|
|
73
|
+
}
|
|
74
|
+
assertPlanParent(record.parent);
|
|
75
|
+
assertPlanGraph(record.graph);
|
|
76
|
+
assertStringArray(record.residualRisks, 'residualRisks', 'Invalid plan-auto completion report');
|
|
77
|
+
const graphValidation = validatePlanGraph(record.graph);
|
|
78
|
+
if (!graphValidation.ok) {
|
|
79
|
+
throw new Error(`Invalid plan-auto completion report: ${graphValidation.errors.join('; ')}`);
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
function assertPlanParent(value) {
|
|
83
|
+
if (typeof value !== 'object' || value === null || Array.isArray(value)) {
|
|
84
|
+
throw new Error('Invalid plan-auto completion report: parent must be an object');
|
|
85
|
+
}
|
|
86
|
+
const record = value;
|
|
87
|
+
if ('title' in record && typeof record.title !== 'string') {
|
|
88
|
+
throw new Error('Invalid plan-auto completion report: parent.title must be a string');
|
|
89
|
+
}
|
|
90
|
+
if (typeof record.body !== 'string' || record.body.trim().length === 0) {
|
|
91
|
+
throw new Error('Invalid plan-auto completion report: parent.body must be a non-empty string');
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
function assertPlanGraph(value) {
|
|
95
|
+
if (typeof value !== 'object' || value === null || Array.isArray(value)) {
|
|
96
|
+
throw new Error('Invalid plan-auto completion report: graph must be an object');
|
|
97
|
+
}
|
|
98
|
+
const record = value;
|
|
99
|
+
if (!Array.isArray(record.nodes)) {
|
|
100
|
+
throw new Error('Invalid plan-auto completion report: graph.nodes must be an array');
|
|
101
|
+
}
|
|
102
|
+
if (!Array.isArray(record.edges)) {
|
|
103
|
+
throw new Error('Invalid plan-auto completion report: graph.edges must be an array');
|
|
104
|
+
}
|
|
105
|
+
if (record.specGate !== 'wave-level') {
|
|
106
|
+
throw new Error('Invalid plan-auto completion report: graph.specGate must be wave-level');
|
|
107
|
+
}
|
|
108
|
+
for (const item of record.nodes) {
|
|
109
|
+
assertPlanChildNode(item);
|
|
110
|
+
}
|
|
111
|
+
for (const item of record.edges) {
|
|
112
|
+
assertPlanDependencyEdge(item);
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
function assertPlanChildNode(value) {
|
|
116
|
+
if (typeof value !== 'object' || value === null || Array.isArray(value)) {
|
|
117
|
+
throw new Error('Invalid plan-auto completion report: graph node must be an object');
|
|
118
|
+
}
|
|
119
|
+
const record = value;
|
|
120
|
+
for (const key of ['stableId', 'title', 'body']) {
|
|
121
|
+
if (typeof record[key] !== 'string' || record[key].length === 0) {
|
|
122
|
+
throw new Error(`Invalid plan-auto completion report: graph node ${key} must be a non-empty string`);
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
if ('issueNumber' in record && !Number.isInteger(record.issueNumber)) {
|
|
126
|
+
throw new Error('Invalid plan-auto completion report: graph node issueNumber must be an integer');
|
|
127
|
+
}
|
|
128
|
+
if (record.afkHitl !== 'afk' && record.afkHitl !== 'hitl') {
|
|
129
|
+
throw new Error('Invalid plan-auto completion report: graph node afkHitl must be afk or hitl');
|
|
130
|
+
}
|
|
131
|
+
assertStringArray(record.ownershipScope, 'ownershipScope', 'Invalid plan-auto completion report');
|
|
132
|
+
assertStringArray(record.dependsOn, 'dependsOn', 'Invalid plan-auto completion report');
|
|
133
|
+
assertStringArray(record.verification, 'verification', 'Invalid plan-auto completion report');
|
|
134
|
+
}
|
|
135
|
+
function assertPlanDependencyEdge(value) {
|
|
136
|
+
if (typeof value !== 'object' || value === null || Array.isArray(value)) {
|
|
137
|
+
throw new Error('Invalid plan-auto completion report: graph edge must be an object');
|
|
138
|
+
}
|
|
139
|
+
const record = value;
|
|
140
|
+
for (const key of ['from', 'to', 'reason']) {
|
|
141
|
+
if (typeof record[key] !== 'string' || record[key].length === 0) {
|
|
142
|
+
throw new Error(`Invalid plan-auto completion report: graph edge ${key} must be a non-empty string`);
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
function assertStringArray(value, key, prefix = 'Invalid scoped completion report') {
|
|
147
|
+
if (!Array.isArray(value) || value.some((item) => typeof item !== 'string')) {
|
|
148
|
+
throw new Error(`${prefix}: ${key} must be a string array`);
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
function assertValidation(value) {
|
|
152
|
+
if (!Array.isArray(value)) {
|
|
153
|
+
throw new Error('Invalid scoped completion report: validation must be an array');
|
|
154
|
+
}
|
|
155
|
+
for (const item of value) {
|
|
156
|
+
if (typeof item !== 'object' || item === null || Array.isArray(item)) {
|
|
157
|
+
throw new Error('Invalid scoped completion report: validation item must be an object');
|
|
158
|
+
}
|
|
159
|
+
const record = item;
|
|
160
|
+
if (typeof record.command !== 'string' || !['passed', 'failed', 'skipped'].includes(String(record.status)) || typeof record.summary !== 'string') {
|
|
161
|
+
throw new Error('Invalid scoped completion report: validation item is malformed');
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
function assertArtifacts(value) {
|
|
166
|
+
if (!Array.isArray(value)) {
|
|
167
|
+
throw new Error('Invalid scoped completion report: artifacts must be an array');
|
|
168
|
+
}
|
|
169
|
+
for (const item of value) {
|
|
170
|
+
if (typeof item !== 'object' || item === null || Array.isArray(item)) {
|
|
171
|
+
throw new Error('Invalid scoped completion report: artifacts item must be an object');
|
|
172
|
+
}
|
|
173
|
+
const record = item;
|
|
174
|
+
if (typeof record.type !== 'string'
|
|
175
|
+
|| !['screenshot', 'log', 'other'].includes(record.type)
|
|
176
|
+
|| typeof record.description !== 'string'
|
|
177
|
+
|| record.description.trim().length === 0) {
|
|
178
|
+
throw new Error('Invalid scoped completion report: artifacts item is malformed');
|
|
179
|
+
}
|
|
180
|
+
if ('path' in record && typeof record.path !== 'string') {
|
|
181
|
+
throw new Error('Invalid scoped completion report: artifacts path must be a string');
|
|
182
|
+
}
|
|
183
|
+
if ('url' in record && typeof record.url !== 'string') {
|
|
184
|
+
throw new Error('Invalid scoped completion report: artifacts url must be a string');
|
|
185
|
+
}
|
|
186
|
+
if (!record.path && !record.url) {
|
|
187
|
+
throw new Error('Invalid scoped completion report: artifacts item must include path or url');
|
|
188
|
+
}
|
|
189
|
+
}
|
|
190
|
+
}
|
|
191
|
+
function assertProhibitedActions(value) {
|
|
192
|
+
const types = new Set(['secret-file-read', 'secret-file-change', 'destructive-db-or-cache', 'production-deploy-or-release']);
|
|
193
|
+
if (!Array.isArray(value)) {
|
|
194
|
+
throw new Error('Invalid scoped completion report: prohibitedActions must be an array');
|
|
195
|
+
}
|
|
196
|
+
for (const item of value) {
|
|
197
|
+
if (typeof item !== 'object' || item === null || Array.isArray(item)) {
|
|
198
|
+
throw new Error('Invalid scoped completion report: prohibitedActions item must be an object');
|
|
199
|
+
}
|
|
200
|
+
const record = item;
|
|
201
|
+
if (typeof record.type !== 'string' || !types.has(record.type) || typeof record.description !== 'string') {
|
|
202
|
+
throw new Error('Invalid scoped completion report: prohibitedActions item is malformed');
|
|
203
|
+
}
|
|
204
|
+
}
|
|
205
|
+
}
|
|
206
|
+
function assertPromotion(value) {
|
|
207
|
+
if (typeof value !== 'object' || value === null || Array.isArray(value)) {
|
|
208
|
+
throw new Error('Invalid scoped completion report: promotion is required for needs-promotion');
|
|
209
|
+
}
|
|
210
|
+
const record = value;
|
|
211
|
+
if (typeof record.reason !== 'string' || record.reason.trim().length === 0) {
|
|
212
|
+
throw new Error('Invalid scoped completion report: promotion.reason must be non-empty');
|
|
213
|
+
}
|
|
214
|
+
assertStringArray(record.criteria, 'promotion.criteria');
|
|
215
|
+
assertStringArray(record.evidence, 'promotion.evidence');
|
|
216
|
+
if (record.criteria.length === 0 || record.evidence.length === 0) {
|
|
217
|
+
throw new Error('Invalid scoped completion report: promotion criteria and evidence must be non-empty');
|
|
218
|
+
}
|
|
219
|
+
}
|
|
220
|
+
//# sourceMappingURL=completion-report.js.map
|