@claudexor/review 1.0.0 → 2.1.2
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/convergence.d.ts.map +1 -1
- package/dist/convergence.js +4 -2
- package/dist/convergence.js.map +1 -1
- package/dist/findings.d.ts.map +1 -1
- package/dist/findings.js.map +1 -1
- package/dist/gates.d.ts +11 -2
- package/dist/gates.d.ts.map +1 -1
- package/dist/gates.js +126 -5
- package/dist/gates.js.map +1 -1
- package/dist/readiness.d.ts.map +1 -1
- package/dist/readiness.js +5 -1
- package/dist/readiness.js.map +1 -1
- package/dist/reviewEngine.d.ts +7 -20
- package/dist/reviewEngine.d.ts.map +1 -1
- package/dist/reviewEngine.js +308 -373
- package/dist/reviewEngine.js.map +1 -1
- package/dist/reviewPrompt.d.ts +3 -0
- package/dist/reviewPrompt.d.ts.map +1 -0
- package/dist/reviewPrompt.js +36 -0
- package/dist/reviewPrompt.js.map +1 -0
- package/dist/route.d.ts.map +1 -1
- package/dist/route.js +5 -1
- package/dist/route.js.map +1 -1
- package/package.json +6 -5
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"convergence.d.ts","sourceRoot":"","sources":["../src/convergence.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAIzF,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,oBAAoB,CAAC;IAChC,KAAK,EAAE,UAAU,EAAE,CAAC;IACpB,QAAQ,EAAE,aAAa,EAAE,CAAC;IAC1B,6DAA6D;IAC7D,gBAAgB,EAAE,OAAO,CAAC;IAC1B,yEAAyE;IACzE,qBAAqB,EAAE,OAAO,CAAC;CAChC;AAED,MAAM,WAAW,iBAAiB;IAChC,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,YAAY,EAAE,aAAa,EAAE,CAAC;CAC/B;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,gBAAgB,GAAG,iBAAiB,
|
|
1
|
+
{"version":3,"file":"convergence.d.ts","sourceRoot":"","sources":["../src/convergence.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAIzF,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,oBAAoB,CAAC;IAChC,KAAK,EAAE,UAAU,EAAE,CAAC;IACpB,QAAQ,EAAE,aAAa,EAAE,CAAC;IAC1B,6DAA6D;IAC7D,gBAAgB,EAAE,OAAO,CAAC;IAC1B,yEAAyE;IACzE,qBAAqB,EAAE,OAAO,CAAC;CAChC;AAED,MAAM,WAAW,iBAAiB;IAChC,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,YAAY,EAAE,aAAa,EAAE,CAAC;CAC/B;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,gBAAgB,GAAG,iBAAiB,CAkC9E"}
|
package/dist/convergence.js
CHANGED
|
@@ -15,13 +15,15 @@ export function evaluateConvergence(input) {
|
|
|
15
15
|
if (p.require_no_accepted_block_open && openBlockers.some((f) => f.severity === "BLOCK")) {
|
|
16
16
|
reasons.push("an accepted BLOCK finding is open");
|
|
17
17
|
}
|
|
18
|
-
if (p.require_no_accepted_fix_first_open &&
|
|
18
|
+
if (p.require_no_accepted_fix_first_open &&
|
|
19
|
+
openBlockers.some((f) => f.severity === "FIX_FIRST")) {
|
|
19
20
|
reasons.push("an accepted FIX_FIRST finding is open");
|
|
20
21
|
}
|
|
21
22
|
// An accepted NEEDS_HUMAN escalation blocks convergence on its own. Without
|
|
22
23
|
// this, a run with cross-family clean review disabled could converge to
|
|
23
24
|
// success with an open NEEDS_HUMAN (the v0.8 hole), bypassing the human gate.
|
|
24
|
-
if (p.require_no_accepted_needs_human_open &&
|
|
25
|
+
if (p.require_no_accepted_needs_human_open &&
|
|
26
|
+
openBlockers.some((f) => f.severity === "NEEDS_HUMAN")) {
|
|
25
27
|
reasons.push("an accepted NEEDS_HUMAN escalation is open");
|
|
26
28
|
}
|
|
27
29
|
if (p.require_final_cross_family_clean_review && !input.finalReviewClean) {
|
package/dist/convergence.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"convergence.js","sourceRoot":"","sources":["../src/convergence.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAkBzC;;;;GAIG;AACH,MAAM,UAAU,mBAAmB,CAAC,KAAuB;IACzD,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,MAAM,CAAC,GAAG,KAAK,CAAC,SAAS,CAAC;IAC1B,MAAM,YAAY,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;IAEjE,IAAI,CAAC,CAAC,kBAAkB,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;QACtD,OAAO,CAAC,IAAI,CAAC,oCAAoC,CAAC,CAAC;IACrD,CAAC;IACD,IAAI,CAAC,CAAC,8BAA8B,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,OAAO,CAAC,EAAE,CAAC;QACzF,OAAO,CAAC,IAAI,CAAC,mCAAmC,CAAC,CAAC;IACpD,CAAC;IACD,
|
|
1
|
+
{"version":3,"file":"convergence.js","sourceRoot":"","sources":["../src/convergence.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAkBzC;;;;GAIG;AACH,MAAM,UAAU,mBAAmB,CAAC,KAAuB;IACzD,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,MAAM,CAAC,GAAG,KAAK,CAAC,SAAS,CAAC;IAC1B,MAAM,YAAY,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;IAEjE,IAAI,CAAC,CAAC,kBAAkB,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;QACtD,OAAO,CAAC,IAAI,CAAC,oCAAoC,CAAC,CAAC;IACrD,CAAC;IACD,IAAI,CAAC,CAAC,8BAA8B,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,OAAO,CAAC,EAAE,CAAC;QACzF,OAAO,CAAC,IAAI,CAAC,mCAAmC,CAAC,CAAC;IACpD,CAAC;IACD,IACE,CAAC,CAAC,kCAAkC;QACpC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,WAAW,CAAC,EACpD,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,uCAAuC,CAAC,CAAC;IACxD,CAAC;IACD,4EAA4E;IAC5E,wEAAwE;IACxE,8EAA8E;IAC9E,IACE,CAAC,CAAC,oCAAoC;QACtC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,aAAa,CAAC,EACtD,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,4CAA4C,CAAC,CAAC;IAC7D,CAAC;IACD,IAAI,CAAC,CAAC,uCAAuC,IAAI,CAAC,KAAK,CAAC,gBAAgB,EAAE,CAAC;QACzE,OAAO,CAAC,IAAI,CAAC,oCAAoC,CAAC,CAAC;IACrD,CAAC;IACD,IAAI,CAAC,CAAC,sCAAsC,IAAI,CAAC,KAAK,CAAC,qBAAqB,EAAE,CAAC;QAC7E,OAAO,CAAC,IAAI,CAAC,mDAAmD,CAAC,CAAC;IACpE,CAAC;IAED,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,OAAO,EAAE,YAAY,EAAE,CAAC;AACpE,CAAC"}
|
package/dist/findings.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"findings.d.ts","sourceRoot":"","sources":["../src/findings.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,gBAAgB,EAAY,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"findings.d.ts","sourceRoot":"","sources":["../src/findings.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,gBAAgB,EAAY,MAAM,mBAAmB,CAAC;AAInF,iFAAiF;AACjF,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,EAAE,CA2HzD;AAED,MAAM,WAAW,YAAY;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,kBAAkB,CAAC,EAAE,gBAAgB,CAAC;CACvC;AAED,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,YAAY,GACrB;IAAE,QAAQ,EAAE,aAAa,EAAE,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAkDlD;AAgBD;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,aAAa,EAAE,GAAG,aAAa,EAAE,CAwBzE"}
|
package/dist/findings.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"findings.js","sourceRoot":"","sources":["../src/findings.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,IAAI,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACzE,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"findings.js","sourceRoot":"","sources":["../src/findings.ts"],"names":[],"mappings":"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"}
|
package/dist/gates.d.ts
CHANGED
|
@@ -1,7 +1,14 @@
|
|
|
1
|
-
import type { GateResult } from "@claudexor/schema";
|
|
1
|
+
import type { AccessProfile, GateResult, TestCommandGrant } from "@claudexor/schema";
|
|
2
2
|
export interface GateSpec {
|
|
3
3
|
id: string;
|
|
4
|
-
|
|
4
|
+
program: string;
|
|
5
|
+
args: string[];
|
|
6
|
+
cwd?: string;
|
|
7
|
+
envAllowlist?: string[];
|
|
8
|
+
trustRequired?: boolean;
|
|
9
|
+
trustGrant?: TestCommandGrant | null;
|
|
10
|
+
projectRoot?: string;
|
|
11
|
+
accessProfile?: AccessProfile;
|
|
5
12
|
required?: boolean;
|
|
6
13
|
}
|
|
7
14
|
export interface RunGatesOptions {
|
|
@@ -16,4 +23,6 @@ export interface RunGatesOptions {
|
|
|
16
23
|
export declare function runGate(spec: GateSpec, opts: RunGatesOptions): Promise<GateResult>;
|
|
17
24
|
export declare function runGates(specs: GateSpec[], opts: RunGatesOptions): Promise<GateResult[]>;
|
|
18
25
|
export declare function gatesPassed(gates: GateResult[]): boolean;
|
|
26
|
+
/** Build the exact record an explicit user-level trust surface persists. */
|
|
27
|
+
export declare function buildTestCommandGrant(invocation: Pick<GateSpec, "program" | "args" | "cwd" | "envAllowlist">, projectRoot: string, accessProfile: AccessProfile): TestCommandGrant;
|
|
19
28
|
//# sourceMappingURL=gates.d.ts.map
|
package/dist/gates.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gates.d.ts","sourceRoot":"","sources":["../src/gates.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"gates.d.ts","sourceRoot":"","sources":["../src/gates.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAWrF,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,UAAU,CAAC,EAAE,gBAAgB,GAAG,IAAI,CAAC;IACrC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,eAAe;IAC9B,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;wEACoE;IACpE,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAED,0FAA0F;AAC1F,wBAAsB,OAAO,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,UAAU,CAAC,CA4CxF;AAqGD,wBAAsB,QAAQ,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC,CAS9F;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,UAAU,EAAE,GAAG,OAAO,CAExD;AAED,4EAA4E;AAC5E,wBAAgB,qBAAqB,CACnC,UAAU,EAAE,IAAI,CAAC,QAAQ,EAAE,SAAS,GAAG,MAAM,GAAG,KAAK,GAAG,cAAc,CAAC,EACvE,WAAW,EAAE,MAAM,EACnB,aAAa,EAAE,aAAa,GAC3B,gBAAgB,CAoBlB"}
|
package/dist/gates.js
CHANGED
|
@@ -1,6 +1,10 @@
|
|
|
1
1
|
import { GateResult as GateResultSchema } from "@claudexor/schema";
|
|
2
|
+
import { loadConfig } from "@claudexor/config";
|
|
2
3
|
import { runCapture } from "@claudexor/core";
|
|
3
|
-
import { redactSecrets } from "@claudexor/util";
|
|
4
|
+
import { canonicalProjectRoot, hashJson, redactSecrets, sha256 } from "@claudexor/util";
|
|
5
|
+
import { createHash } from "node:crypto";
|
|
6
|
+
import { existsSync, readFileSync, realpathSync, statSync } from "node:fs";
|
|
7
|
+
import { delimiter, isAbsolute, relative, resolve } from "node:path";
|
|
4
8
|
const GATE_OUTPUT_TAIL_CHARS = 12_000;
|
|
5
9
|
/** Run one deterministic gate. Outcome is decided by exit code, never by parsing text. */
|
|
6
10
|
export async function runGate(spec, opts) {
|
|
@@ -9,10 +13,16 @@ export async function runGate(spec, opts) {
|
|
|
9
13
|
let timedOut = false;
|
|
10
14
|
let stdout = "";
|
|
11
15
|
let stderr = "";
|
|
16
|
+
const command = JSON.stringify([spec.program, ...spec.args]);
|
|
12
17
|
try {
|
|
13
|
-
const
|
|
14
|
-
|
|
15
|
-
|
|
18
|
+
const cwd = commandCwd(opts.cwd, spec.cwd);
|
|
19
|
+
const env = commandEnv(spec.envAllowlist ?? [], opts.env);
|
|
20
|
+
if (spec.trustRequired)
|
|
21
|
+
verifyExternalGrant(spec, cwd, env);
|
|
22
|
+
const r = await runCapture(spec.program, spec.args, {
|
|
23
|
+
cwd,
|
|
24
|
+
env,
|
|
25
|
+
inheritEnv: "clean",
|
|
16
26
|
timeoutMs: opts.timeoutMs ?? 600_000,
|
|
17
27
|
abortSignal: opts.signal,
|
|
18
28
|
});
|
|
@@ -35,7 +45,7 @@ export async function runGate(spec, opts) {
|
|
|
35
45
|
const stderrEvidence = includeOutput ? outputTail(stderr) : EMPTY_OUTPUT_TAIL;
|
|
36
46
|
return GateResultSchema.parse({
|
|
37
47
|
id: spec.id,
|
|
38
|
-
command
|
|
48
|
+
command,
|
|
39
49
|
exit_code: code,
|
|
40
50
|
status,
|
|
41
51
|
duration_ms: Date.now() - start,
|
|
@@ -45,6 +55,95 @@ export async function runGate(spec, opts) {
|
|
|
45
55
|
output_truncated: stdoutEvidence.truncated || stderrEvidence.truncated,
|
|
46
56
|
});
|
|
47
57
|
}
|
|
58
|
+
/** Exact external-grant verification for versioned project commands. A repo
|
|
59
|
+
* can request argv, but cannot grant execution authority to itself. */
|
|
60
|
+
function verifyExternalGrant(spec, cwd, env) {
|
|
61
|
+
const grant = spec.trustGrant;
|
|
62
|
+
if (!grant)
|
|
63
|
+
throw new Error("versioned project gate has no external trust grant");
|
|
64
|
+
const invocation = {
|
|
65
|
+
program: spec.program,
|
|
66
|
+
args: spec.args,
|
|
67
|
+
...(spec.cwd === undefined ? {} : { cwd: spec.cwd }),
|
|
68
|
+
envAllowlist: spec.envAllowlist ?? [],
|
|
69
|
+
};
|
|
70
|
+
const projectRoot = spec.projectRoot;
|
|
71
|
+
if (!projectRoot || !spec.accessProfile) {
|
|
72
|
+
throw new Error("versioned project gate is missing its current project context");
|
|
73
|
+
}
|
|
74
|
+
const currentConfig = loadConfig(projectRoot);
|
|
75
|
+
if (grant.projectDigest !== sha256(canonicalProjectRoot(projectRoot)) ||
|
|
76
|
+
grant.configDigest !== hashJson(currentConfig.project) ||
|
|
77
|
+
grant.commandDigest !== hashJson(invocation) ||
|
|
78
|
+
grant.accessProfile !== spec.accessProfile) {
|
|
79
|
+
throw new Error("versioned project gate trust grant does not match its current context");
|
|
80
|
+
}
|
|
81
|
+
const executablePath = resolveExecutable(spec.program, cwd, env["PATH"] ?? process.env.PATH);
|
|
82
|
+
if (executablePath !== grant.executablePath ||
|
|
83
|
+
fileDigest(executablePath) !== grant.executableDigest) {
|
|
84
|
+
throw new Error("versioned project gate executable changed since it was granted");
|
|
85
|
+
}
|
|
86
|
+
const scriptPath = resolveScript(spec.program, spec.args, cwd);
|
|
87
|
+
const scriptDigest = scriptPath ? fileDigest(scriptPath) : null;
|
|
88
|
+
// commandDigest binds the exact relative/absolute argv. A fresh verifier
|
|
89
|
+
// intentionally resolves that same relative script inside another worktree,
|
|
90
|
+
// so the absolute evidence path may differ while the script digest must not.
|
|
91
|
+
if ((scriptPath === null) !== (grant.scriptPath === null) ||
|
|
92
|
+
scriptDigest !== grant.scriptDigest) {
|
|
93
|
+
throw new Error("versioned project gate script changed since it was granted");
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
function resolveExecutable(program, cwd, pathValue) {
|
|
97
|
+
const candidates = program.includes("/")
|
|
98
|
+
? [isAbsolute(program) ? program : resolve(cwd, program)]
|
|
99
|
+
: (pathValue ?? "")
|
|
100
|
+
.split(delimiter)
|
|
101
|
+
.filter(Boolean)
|
|
102
|
+
.map((entry) => resolve(entry, program));
|
|
103
|
+
const found = candidates.find((candidate) => existsSync(candidate) && statSync(candidate).isFile());
|
|
104
|
+
if (!found)
|
|
105
|
+
throw new Error(`cannot resolve gate executable ${program}`);
|
|
106
|
+
return realpathSync(found);
|
|
107
|
+
}
|
|
108
|
+
function resolveScript(program, args, cwd) {
|
|
109
|
+
if (["pnpm", "npm", "yarn", "bun"].includes(program.split(/[\\/]/).at(-1) ?? "")) {
|
|
110
|
+
const packageJson = resolve(cwd, "package.json");
|
|
111
|
+
if (existsSync(packageJson) && statSync(packageJson).isFile())
|
|
112
|
+
return realpathSync(packageJson);
|
|
113
|
+
}
|
|
114
|
+
const candidate = args.find((arg) => !arg.startsWith("-"));
|
|
115
|
+
if (!candidate)
|
|
116
|
+
return null;
|
|
117
|
+
const path = isAbsolute(candidate) ? candidate : resolve(cwd, candidate);
|
|
118
|
+
return existsSync(path) && statSync(path).isFile() ? realpathSync(path) : null;
|
|
119
|
+
}
|
|
120
|
+
function fileDigest(path) {
|
|
121
|
+
return `sha256:${createHash("sha256").update(readFileSync(path)).digest("hex")}`;
|
|
122
|
+
}
|
|
123
|
+
function commandCwd(root, requested) {
|
|
124
|
+
if (!requested)
|
|
125
|
+
return root;
|
|
126
|
+
if (isAbsolute(requested))
|
|
127
|
+
throw new Error("gate cwd must be project-relative");
|
|
128
|
+
const resolved = resolve(root, requested);
|
|
129
|
+
const rel = relative(root, resolved);
|
|
130
|
+
if (rel === ".." || rel.startsWith(`..${process.platform === "win32" ? "\\" : "/"}`)) {
|
|
131
|
+
throw new Error("gate cwd escapes the project root");
|
|
132
|
+
}
|
|
133
|
+
return resolved;
|
|
134
|
+
}
|
|
135
|
+
function commandEnv(allowlist, overrides) {
|
|
136
|
+
const env = { ...(overrides ?? {}) };
|
|
137
|
+
for (const name of allowlist) {
|
|
138
|
+
if (/(?:TOKEN|KEY|SECRET|PASSWORD|AUTH|COOKIE|CREDENTIAL)/i.test(name)) {
|
|
139
|
+
throw new Error(`gate env allowlist refuses sensitive name ${name}`);
|
|
140
|
+
}
|
|
141
|
+
const value = process.env[name];
|
|
142
|
+
if (value !== undefined)
|
|
143
|
+
env[name] = value;
|
|
144
|
+
}
|
|
145
|
+
return env;
|
|
146
|
+
}
|
|
48
147
|
export async function runGates(specs, opts) {
|
|
49
148
|
const out = [];
|
|
50
149
|
for (const spec of specs) {
|
|
@@ -59,6 +158,28 @@ export async function runGates(specs, opts) {
|
|
|
59
158
|
export function gatesPassed(gates) {
|
|
60
159
|
return gates.filter((g) => g.required).every((g) => g.status === "passed");
|
|
61
160
|
}
|
|
161
|
+
/** Build the exact record an explicit user-level trust surface persists. */
|
|
162
|
+
export function buildTestCommandGrant(invocation, projectRoot, accessProfile) {
|
|
163
|
+
const cwd = commandCwd(projectRoot, invocation.cwd);
|
|
164
|
+
const executablePath = resolveExecutable(invocation.program, cwd, process.env.PATH);
|
|
165
|
+
const scriptPath = resolveScript(invocation.program, invocation.args, cwd);
|
|
166
|
+
const currentConfig = loadConfig(projectRoot);
|
|
167
|
+
return {
|
|
168
|
+
projectDigest: sha256(canonicalProjectRoot(projectRoot)),
|
|
169
|
+
configDigest: hashJson(currentConfig.project),
|
|
170
|
+
commandDigest: hashJson({
|
|
171
|
+
program: invocation.program,
|
|
172
|
+
args: invocation.args,
|
|
173
|
+
...(invocation.cwd === undefined ? {} : { cwd: invocation.cwd }),
|
|
174
|
+
envAllowlist: invocation.envAllowlist ?? [],
|
|
175
|
+
}),
|
|
176
|
+
executablePath,
|
|
177
|
+
executableDigest: fileDigest(executablePath),
|
|
178
|
+
scriptPath,
|
|
179
|
+
scriptDigest: scriptPath ? fileDigest(scriptPath) : null,
|
|
180
|
+
accessProfile,
|
|
181
|
+
};
|
|
182
|
+
}
|
|
62
183
|
const EMPTY_OUTPUT_TAIL = { tail: null, truncated: false };
|
|
63
184
|
function outputTail(text) {
|
|
64
185
|
const redacted = redactSecrets(text).trimEnd();
|
package/dist/gates.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gates.js","sourceRoot":"","sources":["../src/gates.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,IAAI,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACnE,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"gates.js","sourceRoot":"","sources":["../src/gates.ts"],"names":[],"mappings":"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"}
|
package/dist/readiness.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"readiness.d.ts","sourceRoot":"","sources":["../src/readiness.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,aAAa;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;;;;GAKG;AACH,qBAAa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAoC;IAE1D,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAUpD,4EAA4E;IAC5E,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,SAAI,GAAG,OAAO;CAGrD;AAED,2EAA2E;AAC3E,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,MAAM,
|
|
1
|
+
{"version":3,"file":"readiness.d.ts","sourceRoot":"","sources":["../src/readiness.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,aAAa;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;;;;GAKG;AACH,qBAAa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAoC;IAE1D,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAUpD,4EAA4E;IAC5E,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,SAAI,GAAG,OAAO;CAGrD;AAED,2EAA2E;AAC3E,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,MAAM,CAM1D"}
|
package/dist/readiness.js
CHANGED
|
@@ -23,6 +23,10 @@ export class ReadinessLedger {
|
|
|
23
23
|
}
|
|
24
24
|
/** Stable signature for a set of failure reasons, for thrash detection. */
|
|
25
25
|
export function failureSignature(reasons) {
|
|
26
|
-
return reasons
|
|
26
|
+
return reasons
|
|
27
|
+
.slice()
|
|
28
|
+
.map((r) => r.toLowerCase())
|
|
29
|
+
.sort()
|
|
30
|
+
.join(" | ");
|
|
27
31
|
}
|
|
28
32
|
//# sourceMappingURL=readiness.js.map
|
package/dist/readiness.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"readiness.js","sourceRoot":"","sources":["../src/readiness.ts"],"names":[],"mappings":"AAMA;;;;;GAKG;AACH,MAAM,OAAO,eAAe;IACT,KAAK,GAAG,IAAI,GAAG,EAAyB,CAAC;IAE1D,WAAW,CAAC,SAAiB,EAAE,MAAc;QAC3C,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACvC,IAAI,IAAI,EAAE,CAAC;YACT,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC;YAChB,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC;QAC3B,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,CAAC;QACzE,CAAC;IACH,CAAC;IAED,4EAA4E;IAC5E,SAAS,CAAC,SAAiB,EAAE,SAAS,GAAG,CAAC;QACxC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,KAAK,IAAI,CAAC,CAAC,IAAI,SAAS,CAAC;IAC9D,CAAC;CACF;AAED,2EAA2E;AAC3E,MAAM,UAAU,gBAAgB,CAAC,OAAiB;IAChD,OAAO,OAAO,
|
|
1
|
+
{"version":3,"file":"readiness.js","sourceRoot":"","sources":["../src/readiness.ts"],"names":[],"mappings":"AAMA;;;;;GAKG;AACH,MAAM,OAAO,eAAe;IACT,KAAK,GAAG,IAAI,GAAG,EAAyB,CAAC;IAE1D,WAAW,CAAC,SAAiB,EAAE,MAAc;QAC3C,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACvC,IAAI,IAAI,EAAE,CAAC;YACT,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC;YAChB,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC;QAC3B,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,CAAC;QACzE,CAAC;IACH,CAAC;IAED,4EAA4E;IAC5E,SAAS,CAAC,SAAiB,EAAE,SAAS,GAAG,CAAC;QACxC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,KAAK,IAAI,CAAC,CAAC,IAAI,SAAS,CAAC;IAC9D,CAAC;CACF;AAED,2EAA2E;AAC3E,MAAM,UAAU,gBAAgB,CAAC,OAAiB;IAChD,OAAO,OAAO;SACX,KAAK,EAAE;SACP,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;SAC3B,IAAI,EAAE;SACN,IAAI,CAAC,KAAK,CAAC,CAAC;AACjB,CAAC"}
|
package/dist/reviewEngine.d.ts
CHANGED
|
@@ -9,26 +9,21 @@ export interface ReviewerSpec {
|
|
|
9
9
|
authPreference?: AuthPreference | null;
|
|
10
10
|
}
|
|
11
11
|
export interface ReviewCandidateInput {
|
|
12
|
-
/** Anonymized label (e.g. "Candidate A") — never reveal which model produced it. */
|
|
13
12
|
candidateLabel: string;
|
|
14
13
|
diff: string;
|
|
15
14
|
evidenceDir: string;
|
|
16
|
-
/** Persistent local artifact directory for raw reviewer telemetry. Defaults under evidenceDir for tests. */
|
|
17
15
|
artifactsDir?: string;
|
|
16
|
+
evidenceReadOnly?: boolean;
|
|
17
|
+
frozenIdentity?: {
|
|
18
|
+
candidateSha: string;
|
|
19
|
+
candidateTree: string;
|
|
20
|
+
packetManifestSha256: string;
|
|
21
|
+
};
|
|
18
22
|
cwd: string;
|
|
19
23
|
reviewers: ReviewerSpec[];
|
|
20
24
|
reviewerTimeoutMs?: number;
|
|
21
25
|
transientRetryPolicy?: TransientRetryPolicy;
|
|
22
|
-
/** Child-env composition for the reviewer harnesses (defaults to mirror_native).
|
|
23
|
-
* Reviewer runs are paid harness children too, so they must honor the configured
|
|
24
|
-
* env isolation (clean) the same way candidate runs do. */
|
|
25
26
|
envInheritance?: "mirror_native" | "clean";
|
|
26
|
-
/** Scoped harness HOME/config-dir env (HOME, CODEX_HOME, CLAUDE_CONFIG_DIR, …)
|
|
27
|
-
* for the reviewer children, so a reviewer's native state (codex session
|
|
28
|
-
* rollouts, claude config) is contained in a per-review scoped home instead of
|
|
29
|
-
* the operator's real ~/.codex / ~/.claude (CLAUDEXOR_BIBLE §6). The codex
|
|
30
|
-
* route-proof transcript is read from this same CODEX_HOME, so route proof still
|
|
31
|
-
* verifies. Adapters seed auth into these dirs. */
|
|
32
27
|
env?: Record<string, string>;
|
|
33
28
|
signal?: AbortSignal;
|
|
34
29
|
onReviewerEvent?: (event: ReviewerProgressEvent) => void;
|
|
@@ -42,13 +37,10 @@ export interface ReviewCandidateResult {
|
|
|
42
37
|
requested_model: string | null;
|
|
43
38
|
requested_effort: string | null;
|
|
44
39
|
}[];
|
|
45
|
-
/** True only when >=2 distinct provider families returned parseable JSON. Not a route-proof claim. */
|
|
46
40
|
crossFamilyHealthy: boolean;
|
|
47
41
|
healthyProviders: ProviderFamily[];
|
|
48
|
-
/** True only when >=2 distinct provider families have verified route proofs. */
|
|
49
42
|
crossFamilyVerified: boolean;
|
|
50
43
|
distinctProviders: ProviderFamily[];
|
|
51
|
-
/** Observed reviewer panel spend (budget truth: reviewers are paid work). */
|
|
52
44
|
reviewSpendUsd: number;
|
|
53
45
|
reviewSpendEstimated: boolean;
|
|
54
46
|
}
|
|
@@ -73,13 +65,8 @@ export interface ReviewerProgressEvent {
|
|
|
73
65
|
at: string;
|
|
74
66
|
duration_ms?: number;
|
|
75
67
|
message?: string;
|
|
68
|
+
review_wave_id?: string;
|
|
76
69
|
}
|
|
77
|
-
/**
|
|
78
|
-
* Cross-family review of one anonymized candidate. Each reviewer runs its review
|
|
79
|
-
* intent and emits JSON findings; we attach route proofs and verify the
|
|
80
|
-
* reviewers span >= 2 distinct provider families.
|
|
81
|
-
*/
|
|
82
70
|
export declare function reviewCandidate(input: ReviewCandidateInput): Promise<ReviewCandidateResult>;
|
|
83
|
-
/** Test-only alias for the preserve-set extractor. */
|
|
84
71
|
export declare function __testExtractDiffTouchedPaths(diff: string): Set<string>;
|
|
85
72
|
//# sourceMappingURL=reviewEngine.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reviewEngine.d.ts","sourceRoot":"","sources":["../src/reviewEngine.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgC,KAAK,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAEpF,OAAO,KAAK,EACV,cAAc,EACd,UAAU,EAEV,cAAc,EACd,aAAa,EACb,UAAU,EACX,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,cAAc,EAGf,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"reviewEngine.d.ts","sourceRoot":"","sources":["../src/reviewEngine.ts"],"names":[],"mappings":"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"}
|