@humanbased/crosscheck 0.15.0-beta.147 → 0.15.0-beta.157
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/__tests__/diagnose.test.js +25 -0
- package/dist/__tests__/diagnose.test.js.map +1 -1
- package/dist/__tests__/kickass.test.js +9 -1
- package/dist/__tests__/kickass.test.js.map +1 -1
- package/dist/__tests__/optimize.test.js +81 -1
- package/dist/__tests__/optimize.test.js.map +1 -1
- package/dist/__tests__/tips.test.d.ts +2 -0
- package/dist/__tests__/tips.test.d.ts.map +1 -0
- package/dist/__tests__/tips.test.js +44 -0
- package/dist/__tests__/tips.test.js.map +1 -0
- package/dist/__tests__/verdict-gate.test.d.ts +2 -0
- package/dist/__tests__/verdict-gate.test.d.ts.map +1 -0
- package/dist/__tests__/verdict-gate.test.js +81 -0
- package/dist/__tests__/verdict-gate.test.js.map +1 -0
- package/dist/commands/diagnose.d.ts +4 -0
- package/dist/commands/diagnose.d.ts.map +1 -1
- package/dist/commands/diagnose.js +26 -4
- package/dist/commands/diagnose.js.map +1 -1
- package/dist/commands/kickass.d.ts +14 -4
- package/dist/commands/kickass.d.ts.map +1 -1
- package/dist/commands/kickass.js +98 -7
- package/dist/commands/kickass.js.map +1 -1
- package/dist/commands/optimize.d.ts +16 -0
- package/dist/commands/optimize.d.ts.map +1 -1
- package/dist/commands/optimize.js +266 -60
- package/dist/commands/optimize.js.map +1 -1
- package/dist/commands/review.d.ts.map +1 -1
- package/dist/commands/review.js +12 -4
- package/dist/commands/review.js.map +1 -1
- package/dist/lib/board.d.ts +1 -0
- package/dist/lib/board.d.ts.map +1 -1
- package/dist/lib/board.js +13 -0
- package/dist/lib/board.js.map +1 -1
- package/dist/lib/runner.d.ts.map +1 -1
- package/dist/lib/runner.js +12 -4
- package/dist/lib/runner.js.map +1 -1
- package/dist/lib/tips.d.ts +12 -0
- package/dist/lib/tips.d.ts.map +1 -0
- package/dist/lib/tips.js +31 -0
- package/dist/lib/tips.js.map +1 -0
- package/dist/lib/verdict.d.ts +7 -0
- package/dist/lib/verdict.d.ts.map +1 -1
- package/dist/lib/verdict.js +45 -0
- package/dist/lib/verdict.js.map +1 -1
- package/package.json +1 -1
|
@@ -2,16 +2,18 @@ import { readFileSync, writeFileSync, existsSync, mkdtempSync, rmSync, mkdirSync
|
|
|
2
2
|
import { fileURLToPath } from 'url';
|
|
3
3
|
import { dirname, join, resolve } from 'path';
|
|
4
4
|
import { tmpdir, homedir } from 'os';
|
|
5
|
+
import { createInterface } from 'readline';
|
|
5
6
|
import chalk from 'chalk';
|
|
6
7
|
import { execa } from 'execa';
|
|
7
8
|
import yaml from 'js-yaml';
|
|
8
|
-
import { loadConfig } from '../config/loader.js';
|
|
9
|
+
import { loadConfig, resolveConfigPath } from '../config/loader.js';
|
|
9
10
|
import { DEFAULT_REVIEW_INSTRUCTIONS } from '../lib/workflow.js';
|
|
10
11
|
import { buildDiagnoseReport } from './diagnose.js';
|
|
11
12
|
const __filename = fileURLToPath(import.meta.url);
|
|
12
13
|
const __dirname = dirname(__filename);
|
|
13
14
|
// dist/commands/ → ../../ = package root
|
|
14
15
|
const PACKAGE_ROOT = resolve(__dirname, '..', '..');
|
|
16
|
+
const ANSI_RE = /\x1b\[[0-9;]*m/g;
|
|
15
17
|
export function selectOptimizeAgent(config, report) {
|
|
16
18
|
const enabled = [];
|
|
17
19
|
if (config.vendors.claude.enabled)
|
|
@@ -35,6 +37,47 @@ export function selectOptimizeAgent(config, report) {
|
|
|
35
37
|
}
|
|
36
38
|
return { agent: 'claude', reason: 'default (both enabled, no data or equal rates)' };
|
|
37
39
|
}
|
|
40
|
+
// Derives config-level changes directly from diagnose suggestions — no agent needed.
|
|
41
|
+
export function deriveConfigChanges(report, config) {
|
|
42
|
+
const changes = [];
|
|
43
|
+
const seen = new Set();
|
|
44
|
+
for (const s of report.suggestions) {
|
|
45
|
+
if (s.type !== 'config_change')
|
|
46
|
+
continue;
|
|
47
|
+
if (/timed? ?out/i.test(s.reason) && !seen.has('timeout_tier')) {
|
|
48
|
+
seen.add('timeout_tier');
|
|
49
|
+
const tier = config.quality.tier;
|
|
50
|
+
const lower = tier === 'thorough' ? 'balanced' : tier === 'balanced' ? 'fast' : null;
|
|
51
|
+
if (lower) {
|
|
52
|
+
changes.push({
|
|
53
|
+
target: 'config_field',
|
|
54
|
+
field: 'quality.tier',
|
|
55
|
+
label: 'quality.tier',
|
|
56
|
+
oldValue: tier,
|
|
57
|
+
newValue: lower,
|
|
58
|
+
reason: s.reason,
|
|
59
|
+
outcome: 'shorter per-review wall-clock; fewer hard timeout failures',
|
|
60
|
+
});
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
if (/budget/i.test(s.reason) && !seen.has('budget_cap')) {
|
|
64
|
+
seen.add('budget_cap');
|
|
65
|
+
const cur = config.budget.per_review_usd;
|
|
66
|
+
const next = Math.round(cur * 2 * 100) / 100;
|
|
67
|
+
changes.push({
|
|
68
|
+
target: 'config_field',
|
|
69
|
+
field: 'budget.per_review_usd',
|
|
70
|
+
label: 'budget.per_review_usd',
|
|
71
|
+
oldValue: String(cur),
|
|
72
|
+
newValue: String(next),
|
|
73
|
+
reason: s.reason,
|
|
74
|
+
outcome: 'reviews no longer cut off mid-run at the budget ceiling',
|
|
75
|
+
});
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
return changes;
|
|
79
|
+
}
|
|
80
|
+
// ── Helpers ───────────────────────────────────────────────────────────────────
|
|
38
81
|
function findAgentMd(cwd) {
|
|
39
82
|
const candidates = [
|
|
40
83
|
join(cwd, 'AGENT.md'),
|
|
@@ -54,7 +97,6 @@ function unifiedDiff(oldText, newText) {
|
|
|
54
97
|
const a = oldText.split('\n');
|
|
55
98
|
const b = newText.split('\n');
|
|
56
99
|
const m = a.length, n = b.length;
|
|
57
|
-
// LCS via DP
|
|
58
100
|
const dp = Array.from({ length: m + 1 }, () => new Array(n + 1).fill(0));
|
|
59
101
|
for (let i = m - 1; i >= 0; i--)
|
|
60
102
|
for (let j = n - 1; j >= 0; j--)
|
|
@@ -76,10 +118,46 @@ function unifiedDiff(oldText, newText) {
|
|
|
76
118
|
i++;
|
|
77
119
|
}
|
|
78
120
|
}
|
|
79
|
-
return lines.filter(l => !l.startsWith(' ')).length > 0
|
|
80
|
-
|
|
81
|
-
|
|
121
|
+
return lines.filter(l => !l.startsWith(' ')).length > 0 ? lines.join('\n') : '';
|
|
122
|
+
}
|
|
123
|
+
function stripAnsi(s) {
|
|
124
|
+
return s.replace(ANSI_RE, '');
|
|
125
|
+
}
|
|
126
|
+
export function countInstructionDiffLines(diff) {
|
|
127
|
+
const plainLines = diff.split('\n').map(stripAnsi);
|
|
128
|
+
return {
|
|
129
|
+
additions: plainLines.filter(l => l.startsWith('+')).length,
|
|
130
|
+
deletions: plainLines.filter(l => l.startsWith('-')).length,
|
|
131
|
+
};
|
|
132
|
+
}
|
|
133
|
+
export function buildCodexOptimizeArgs(outputFile) {
|
|
134
|
+
return [
|
|
135
|
+
'exec',
|
|
136
|
+
'--skip-git-repo-check',
|
|
137
|
+
'-o', outputFile,
|
|
138
|
+
'Read OPTIMIZE_PROMPT.md carefully and produce the new instructions.md content. ' +
|
|
139
|
+
'Output only the file content — no explanation, no markdown fences.',
|
|
140
|
+
];
|
|
141
|
+
}
|
|
142
|
+
function setNestedPath(obj, path, value) {
|
|
143
|
+
const parts = path.split('.');
|
|
144
|
+
let cur = obj;
|
|
145
|
+
for (let i = 0; i < parts.length - 1; i++) {
|
|
146
|
+
if (typeof cur[parts[i]] !== 'object' || cur[parts[i]] === null)
|
|
147
|
+
cur[parts[i]] = {};
|
|
148
|
+
cur = cur[parts[i]];
|
|
149
|
+
}
|
|
150
|
+
cur[parts[parts.length - 1]] = value;
|
|
82
151
|
}
|
|
152
|
+
function parseConfigValue(s) {
|
|
153
|
+
if (s === 'true')
|
|
154
|
+
return true;
|
|
155
|
+
if (s === 'false')
|
|
156
|
+
return false;
|
|
157
|
+
const n = Number(s);
|
|
158
|
+
return Number.isNaN(n) ? s : n;
|
|
159
|
+
}
|
|
160
|
+
// ── Agent runners ─────────────────────────────────────────────────────────────
|
|
83
161
|
async function runWithClaude(prompt) {
|
|
84
162
|
let result;
|
|
85
163
|
try {
|
|
@@ -99,52 +177,107 @@ async function runWithClaude(prompt) {
|
|
|
99
177
|
return (result.stdout ?? result.stderr ?? '').trim();
|
|
100
178
|
}
|
|
101
179
|
async function runWithCodex(prompt) {
|
|
102
|
-
//
|
|
103
|
-
// avoiding shell argument length limits on large prompts.
|
|
180
|
+
// Write prompt as a file — avoids shell argument length limits on large prompts.
|
|
104
181
|
const tmpDir = mkdtempSync(join(tmpdir(), 'crosscheck-optimize-'));
|
|
182
|
+
const outputFile = join(tmpDir, 'output.txt');
|
|
105
183
|
try {
|
|
106
184
|
writeFileSync(join(tmpDir, 'OPTIMIZE_PROMPT.md'), prompt);
|
|
107
|
-
|
|
108
|
-
'-q',
|
|
109
|
-
'Read OPTIMIZE_PROMPT.md carefully and produce the new instructions.md content. ' +
|
|
110
|
-
'Output only the file content — no explanation, no markdown fences.',
|
|
111
|
-
], {
|
|
185
|
+
await execa('codex', buildCodexOptimizeArgs(outputFile), {
|
|
112
186
|
cwd: tmpDir,
|
|
113
187
|
timeout: 180_000,
|
|
114
188
|
env: { ...process.env },
|
|
115
189
|
});
|
|
116
|
-
|
|
190
|
+
if (existsSync(outputFile)) {
|
|
191
|
+
return readFileSync(outputFile, 'utf8').trim();
|
|
192
|
+
}
|
|
193
|
+
return '';
|
|
117
194
|
}
|
|
118
195
|
finally {
|
|
119
196
|
rmSync(tmpDir, { recursive: true, force: true });
|
|
120
197
|
}
|
|
121
198
|
}
|
|
199
|
+
// Runs primary agent; on failure, retries with fallback if one is available.
|
|
200
|
+
async function runAgentWithFallback(primary, fallback, prompt) {
|
|
201
|
+
try {
|
|
202
|
+
const result = primary === 'claude' ? await runWithClaude(prompt) : await runWithCodex(prompt);
|
|
203
|
+
return { result, agent: primary };
|
|
204
|
+
}
|
|
205
|
+
catch (err) {
|
|
206
|
+
if (!fallback)
|
|
207
|
+
throw err;
|
|
208
|
+
const msg = err instanceof Error ? err.message : String(err);
|
|
209
|
+
console.log(chalk.yellow(` ⚠ ${primary} failed: ${msg.slice(0, 80)}`));
|
|
210
|
+
console.log(chalk.dim(` falling back to ${fallback}...`));
|
|
211
|
+
const result = fallback === 'claude' ? await runWithClaude(prompt) : await runWithCodex(prompt);
|
|
212
|
+
return { result, agent: fallback };
|
|
213
|
+
}
|
|
214
|
+
}
|
|
215
|
+
// ── Interactive confirmation ───────────────────────────────────────────────────
|
|
216
|
+
async function confirmChange(change, index, total, diff) {
|
|
217
|
+
return new Promise(resolve => {
|
|
218
|
+
const rl = createInterface({ input: process.stdin, output: process.stdout });
|
|
219
|
+
console.log();
|
|
220
|
+
console.log(` ${chalk.bold(`[${index}/${total}]`)} ${chalk.cyan(change.label)}`);
|
|
221
|
+
if (change.target === 'config_field') {
|
|
222
|
+
console.log(` ${chalk.dim('from')} ${chalk.red(change.oldValue)}`);
|
|
223
|
+
console.log(` ${chalk.dim('to')} ${chalk.green(change.newValue)}`);
|
|
224
|
+
}
|
|
225
|
+
else {
|
|
226
|
+
// Show a compact diff preview (first 10 changed lines)
|
|
227
|
+
const changedLines = diff.split('\n').filter(l => l.startsWith('+') || l.startsWith('-'));
|
|
228
|
+
const preview = changedLines.slice(0, 10);
|
|
229
|
+
for (const l of preview)
|
|
230
|
+
console.log(` ${l}`);
|
|
231
|
+
if (changedLines.length > 10) {
|
|
232
|
+
console.log(chalk.dim(` … (${changedLines.length - 10} more changed lines)`));
|
|
233
|
+
}
|
|
234
|
+
}
|
|
235
|
+
console.log(` ${chalk.dim('reason')} ${change.reason}`);
|
|
236
|
+
console.log(` ${chalk.dim('outcome')} ${change.outcome}`);
|
|
237
|
+
console.log();
|
|
238
|
+
rl.question(' Apply? [y/N] ', answer => {
|
|
239
|
+
rl.close();
|
|
240
|
+
const a = answer.trim().toLowerCase();
|
|
241
|
+
resolve(a === 'y' || a === 'yes');
|
|
242
|
+
});
|
|
243
|
+
});
|
|
244
|
+
}
|
|
245
|
+
// ── Main command ──────────────────────────────────────────────────────────────
|
|
122
246
|
export async function runOptimize(opts) {
|
|
123
247
|
const config = loadConfig(opts.config);
|
|
124
248
|
const cwd = process.cwd();
|
|
125
249
|
// 1. Diagnose
|
|
126
250
|
console.log(chalk.dim(' Running diagnose...'));
|
|
127
251
|
const report = buildDiagnoseReport(opts.since);
|
|
128
|
-
// 2. Select agent
|
|
129
|
-
let
|
|
252
|
+
// 2. Select primary agent and optional fallback
|
|
253
|
+
let primaryAgent;
|
|
130
254
|
let agentReason;
|
|
255
|
+
let fallbackAgent;
|
|
131
256
|
if (opts.agent === 'claude' || opts.agent === 'codex') {
|
|
132
|
-
|
|
257
|
+
primaryAgent = opts.agent;
|
|
133
258
|
agentReason = '--agent flag';
|
|
259
|
+
// No fallback when agent is explicitly chosen
|
|
134
260
|
}
|
|
135
261
|
else {
|
|
136
262
|
try {
|
|
137
263
|
const sel = selectOptimizeAgent(config, report);
|
|
138
|
-
|
|
264
|
+
primaryAgent = sel.agent;
|
|
139
265
|
agentReason = sel.reason;
|
|
140
266
|
}
|
|
141
267
|
catch (err) {
|
|
142
268
|
console.error(chalk.red(`✗ ${err instanceof Error ? err.message : String(err)}`));
|
|
143
269
|
process.exit(1);
|
|
144
270
|
}
|
|
271
|
+
// Fallback: the other enabled vendor
|
|
272
|
+
const other = primaryAgent === 'claude' ? 'codex' : 'claude';
|
|
273
|
+
if (primaryAgent === 'claude' && config.vendors.codex.enabled)
|
|
274
|
+
fallbackAgent = other;
|
|
275
|
+
if (primaryAgent === 'codex' && config.vendors.claude.enabled)
|
|
276
|
+
fallbackAgent = other;
|
|
145
277
|
}
|
|
146
|
-
|
|
147
|
-
|
|
278
|
+
const fallbackSuffix = fallbackAgent ? chalk.dim(` → ${fallbackAgent} on failure`) : '';
|
|
279
|
+
console.log(` agent ${chalk.cyan(primaryAgent)} ${chalk.dim(`(${agentReason})`)}${fallbackSuffix}`);
|
|
280
|
+
// 3. Load AGENT.md and current workflow instructions
|
|
148
281
|
let agentMd;
|
|
149
282
|
try {
|
|
150
283
|
agentMd = findAgentMd(cwd);
|
|
@@ -164,14 +297,14 @@ export async function runOptimize(opts) {
|
|
|
164
297
|
const workflowSteps = Array.isArray(workflowRaw.steps)
|
|
165
298
|
? workflowRaw.steps
|
|
166
299
|
: [];
|
|
167
|
-
// Match by name first, then fall back to type so custom step names still work
|
|
168
300
|
const reviewStepIdx = workflowSteps.findIndex(s => s.name === 'review' || s.type === 'review');
|
|
169
301
|
const reviewStep = reviewStepIdx >= 0 ? workflowSteps[reviewStepIdx] : null;
|
|
170
302
|
const currentInstructions = typeof reviewStep?.instructions === 'string'
|
|
171
303
|
? reviewStep.instructions
|
|
172
304
|
: DEFAULT_REVIEW_INSTRUCTIONS;
|
|
173
|
-
|
|
174
|
-
|
|
305
|
+
// 4. Derive rule-based config changes from diagnose suggestions
|
|
306
|
+
const configChanges = deriveConfigChanges(report, config);
|
|
307
|
+
// 5. Run AI agent (with fallback) to improve workflow instructions
|
|
175
308
|
const prompt = [
|
|
176
309
|
agentMd,
|
|
177
310
|
'',
|
|
@@ -183,62 +316,135 @@ export async function runOptimize(opts) {
|
|
|
183
316
|
JSON.stringify(report, null, 2),
|
|
184
317
|
'```',
|
|
185
318
|
'',
|
|
186
|
-
`## Current ${
|
|
319
|
+
`## Current review step instructions (${workflowPath})`,
|
|
187
320
|
'',
|
|
188
321
|
currentInstructions || '(empty)',
|
|
189
322
|
].join('\n');
|
|
190
|
-
|
|
191
|
-
console.log(chalk.dim(` Asking ${selectedAgent} to optimize instructions...`));
|
|
323
|
+
console.log(chalk.dim(` Asking ${primaryAgent} to optimize instructions...`));
|
|
192
324
|
let newInstructions;
|
|
325
|
+
let usedAgent;
|
|
193
326
|
try {
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
327
|
+
const r = await runAgentWithFallback(primaryAgent, fallbackAgent, prompt);
|
|
328
|
+
newInstructions = r.result;
|
|
329
|
+
usedAgent = r.agent;
|
|
197
330
|
}
|
|
198
331
|
catch (err) {
|
|
199
|
-
console.error(chalk.red(`✗
|
|
332
|
+
console.error(chalk.red(`✗ agent(s) failed: ${err instanceof Error ? err.message : String(err)}`));
|
|
200
333
|
process.exit(1);
|
|
201
334
|
}
|
|
335
|
+
if (usedAgent !== primaryAgent) {
|
|
336
|
+
console.log(chalk.dim(` used ${usedAgent} (fallback)`));
|
|
337
|
+
}
|
|
338
|
+
// 6. Build full list of proposed changes
|
|
202
339
|
if (!newInstructions || newInstructions.length < 20) {
|
|
203
|
-
console.error(chalk.red('✗
|
|
340
|
+
console.error(chalk.red('✗ agent returned an unusable response (too short or empty) — cannot optimize instructions'));
|
|
204
341
|
process.exit(1);
|
|
205
342
|
}
|
|
206
|
-
|
|
207
|
-
const
|
|
208
|
-
|
|
209
|
-
|
|
343
|
+
const instructionsDiff = unifiedDiff(currentInstructions, newInstructions);
|
|
344
|
+
const allChanges = [
|
|
345
|
+
...configChanges,
|
|
346
|
+
...(instructionsDiff ? [{
|
|
347
|
+
target: 'workflow_instructions',
|
|
348
|
+
label: 'review step instructions',
|
|
349
|
+
oldValue: currentInstructions,
|
|
350
|
+
newValue: newInstructions,
|
|
351
|
+
reason: `${report.errors.length} distinct error patterns across ${report.period.log_files} log files`,
|
|
352
|
+
outcome: 'more targeted instructions; fewer constraint-check failures',
|
|
353
|
+
}] : []),
|
|
354
|
+
];
|
|
355
|
+
if (allChanges.length === 0) {
|
|
356
|
+
console.log(chalk.green('\n ✓ Everything looks optimal — no changes proposed.'));
|
|
210
357
|
return;
|
|
211
358
|
}
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
359
|
+
// 7. Confirm and apply
|
|
360
|
+
const isInteractive = process.stdin.isTTY && !opts.apply && !opts.dryRun;
|
|
361
|
+
const accepted = [];
|
|
362
|
+
if (isInteractive) {
|
|
363
|
+
// Ask about each change individually
|
|
364
|
+
console.log(chalk.bold(`\n ${allChanges.length} change${allChanges.length !== 1 ? 's' : ''} proposed\n`));
|
|
365
|
+
for (let i = 0; i < allChanges.length; i++) {
|
|
366
|
+
const ch = allChanges[i];
|
|
367
|
+
const diff = ch.target === 'workflow_instructions' ? instructionsDiff : '';
|
|
368
|
+
const yes = await confirmChange(ch, i + 1, allChanges.length, diff);
|
|
369
|
+
if (yes)
|
|
370
|
+
accepted.push(ch);
|
|
371
|
+
}
|
|
372
|
+
}
|
|
373
|
+
else {
|
|
374
|
+
// Non-interactive: print summary
|
|
375
|
+
console.log(chalk.bold(`\n Proposed changes (${allChanges.length})\n`));
|
|
376
|
+
for (const ch of allChanges) {
|
|
377
|
+
if (ch.target === 'config_field') {
|
|
378
|
+
console.log(` ${chalk.cyan(ch.label.padEnd(28))} ${chalk.red(ch.oldValue)} → ${chalk.green(ch.newValue)}`);
|
|
379
|
+
}
|
|
380
|
+
else {
|
|
381
|
+
const { additions: adds, deletions: dels } = countInstructionDiffLines(instructionsDiff);
|
|
382
|
+
console.log(` ${chalk.cyan(ch.label.padEnd(28))} ${chalk.green(`+${adds}`)} ${chalk.red(`-${dels}`)} lines`);
|
|
383
|
+
}
|
|
384
|
+
console.log(` ${chalk.dim(ch.reason)}`);
|
|
385
|
+
}
|
|
386
|
+
console.log();
|
|
387
|
+
if (instructionsDiff) {
|
|
388
|
+
console.log(chalk.bold(' Instruction diff\n'));
|
|
389
|
+
console.log(instructionsDiff);
|
|
390
|
+
console.log();
|
|
391
|
+
}
|
|
392
|
+
if (opts.dryRun) {
|
|
393
|
+
console.log(chalk.dim(' Dry run — no changes written.'));
|
|
394
|
+
return;
|
|
395
|
+
}
|
|
396
|
+
if (opts.apply) {
|
|
397
|
+
accepted.push(...allChanges);
|
|
228
398
|
}
|
|
229
399
|
else {
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
on: ['opened', 'synchronize'],
|
|
233
|
-
steps: [{ name: 'review', type: 'review', reviewer: 'auto', max_rounds: 1, instructions: newInstructions }],
|
|
234
|
-
};
|
|
235
|
-
writeFileSync(workflowPath, yaml.dump(workflow, { lineWidth: -1, noRefs: true }));
|
|
400
|
+
console.log(chalk.dim(' Run with --apply to accept all, or without any flags for interactive mode.'));
|
|
401
|
+
return;
|
|
236
402
|
}
|
|
237
|
-
console.log(chalk.green(` ✓ Written to ${workflowPath}`));
|
|
238
|
-
console.log(chalk.dim(' Next reviews will use the updated instructions.'));
|
|
239
403
|
}
|
|
240
|
-
|
|
241
|
-
console.log(chalk.dim(
|
|
404
|
+
if (accepted.length === 0) {
|
|
405
|
+
console.log(chalk.dim('\n No changes applied.'));
|
|
406
|
+
return;
|
|
407
|
+
}
|
|
408
|
+
// 8. Write accepted changes
|
|
409
|
+
const configPath = resolveConfigPath(opts.config) ?? join(homedir(), '.crosscheck', 'config.yml');
|
|
410
|
+
for (const ch of accepted) {
|
|
411
|
+
if (ch.target === 'config_field' && ch.field) {
|
|
412
|
+
let raw = {};
|
|
413
|
+
if (existsSync(configPath)) {
|
|
414
|
+
try {
|
|
415
|
+
raw = (yaml.load(readFileSync(configPath, 'utf8')) ?? {});
|
|
416
|
+
}
|
|
417
|
+
catch { /* start fresh */ }
|
|
418
|
+
}
|
|
419
|
+
setNestedPath(raw, ch.field, parseConfigValue(ch.newValue));
|
|
420
|
+
mkdirSync(dirname(configPath), { recursive: true });
|
|
421
|
+
writeFileSync(configPath, yaml.dump(raw, { lineWidth: -1, noRefs: true }));
|
|
422
|
+
console.log(chalk.green(` ✓ ${ch.label}: ${ch.oldValue} → ${ch.newValue}`) + chalk.dim(` (${configPath})`));
|
|
423
|
+
}
|
|
424
|
+
else if (ch.target === 'workflow_instructions') {
|
|
425
|
+
mkdirSync(dirname(workflowPath), { recursive: true });
|
|
426
|
+
if (reviewStepIdx >= 0) {
|
|
427
|
+
workflowSteps[reviewStepIdx] = { ...workflowSteps[reviewStepIdx], instructions: ch.newValue };
|
|
428
|
+
workflowRaw.steps = workflowSteps;
|
|
429
|
+
writeFileSync(workflowPath, yaml.dump(workflowRaw, { lineWidth: -1, noRefs: true }));
|
|
430
|
+
}
|
|
431
|
+
else if (existsSync(workflowPath) && workflowSteps.length > 0) {
|
|
432
|
+
workflowRaw.steps = [...workflowSteps, { name: 'review', type: 'review', reviewer: 'auto', max_rounds: 1, instructions: ch.newValue }];
|
|
433
|
+
writeFileSync(workflowPath, yaml.dump(workflowRaw, { lineWidth: -1, noRefs: true }));
|
|
434
|
+
}
|
|
435
|
+
else {
|
|
436
|
+
const workflow = {
|
|
437
|
+
on: ['opened', 'synchronize'],
|
|
438
|
+
steps: [{ name: 'review', type: 'review', reviewer: 'auto', max_rounds: 1, instructions: ch.newValue }],
|
|
439
|
+
};
|
|
440
|
+
writeFileSync(workflowPath, yaml.dump(workflow, { lineWidth: -1, noRefs: true }));
|
|
441
|
+
}
|
|
442
|
+
console.log(chalk.green(` ✓ review step instructions updated`) + chalk.dim(` (${workflowPath})`));
|
|
443
|
+
}
|
|
242
444
|
}
|
|
445
|
+
const skipped = allChanges.length - accepted.length;
|
|
446
|
+
if (skipped > 0)
|
|
447
|
+
console.log(chalk.dim(` ${skipped} change${skipped !== 1 ? 's' : ''} skipped.`));
|
|
448
|
+
console.log(chalk.dim(' Next reviews will use the updated configuration.'));
|
|
243
449
|
}
|
|
244
450
|
//# sourceMappingURL=optimize.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"optimize.js","sourceRoot":"","sources":["../../src/commands/optimize.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"optimize.js","sourceRoot":"","sources":["../../src/commands/optimize.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"review.d.ts","sourceRoot":"","sources":["../../src/commands/review.ts"],"names":[],"mappings":"AAqBA,wBAAsB,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"review.d.ts","sourceRoot":"","sources":["../../src/commands/review.ts"],"names":[],"mappings":"AAqBA,wBAAsB,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,MAAM,iBAmJzF"}
|
package/dist/commands/review.js
CHANGED
|
@@ -10,7 +10,7 @@ import { runClaudeReview } from '../reviewers/claude.js';
|
|
|
10
10
|
import { loadConfig, getGithubToken } from '../config/loader.js';
|
|
11
11
|
import { normalizeVendor, VENDOR_ALIAS_HINT } from '../lib/vendor.js';
|
|
12
12
|
import { initLogger, log as fileLog, logError } from '../lib/logger.js';
|
|
13
|
-
import { parseVerdict, formatVerdict, prependVerdictToComment, NULL_VERDICT_WARNING } from '../lib/verdict.js';
|
|
13
|
+
import { parseVerdict, formatVerdict, prependVerdictToComment, NULL_VERDICT_WARNING, applySeverityGate, SEVERITY_GATE_NOTE } from '../lib/verdict.js';
|
|
14
14
|
import { clonePRForReview } from '../lib/clone.js';
|
|
15
15
|
function parsePRUrl(url) {
|
|
16
16
|
const m = url.match(/github\.com\/([^/]+)\/([^/]+)\/pull\/(\d+)/);
|
|
@@ -99,15 +99,23 @@ export async function runReview(prUrl, configPath, forceReviewer) {
|
|
|
99
99
|
clearInterval(elapsedTimer);
|
|
100
100
|
}
|
|
101
101
|
reviewSpinner.succeed(`Review complete (${elapsed}s)`);
|
|
102
|
-
const
|
|
103
|
-
|
|
102
|
+
const parsed = parseVerdict(reviewText);
|
|
103
|
+
const { clean } = parsed;
|
|
104
|
+
if (parsed.verdict === null) {
|
|
104
105
|
fileLog({ level: 'warn', event: 'verdict_parse_failed', repo: `${owner}/${repo}`, pr: number, reviewer, output_length: reviewText.length });
|
|
105
106
|
}
|
|
107
|
+
// Severity gate: a NEEDS WORK review with no blocking (Critical/High) finding is
|
|
108
|
+
// approved-with-comments (matches the runner's gating so both paths converge).
|
|
109
|
+
const gate = applySeverityGate(parsed.verdict, clean);
|
|
110
|
+
const verdict = gate.verdict;
|
|
111
|
+
if (gate.downgraded) {
|
|
112
|
+
fileLog({ level: 'info', event: 'verdict_severity_gated', repo: `${owner}/${repo}`, pr: number, reviewer, raw_verdict: parsed.verdict, gated_verdict: verdict });
|
|
113
|
+
}
|
|
106
114
|
fileLog({ level: 'info', event: 'review_complete', repo: `${owner}/${repo}`, pr: number, reviewer, model, verdict: verdict ?? undefined, duration_ms: Date.now() - reviewStart, tokens_used: tokensUsed });
|
|
107
115
|
console.log(` ${formatVerdict(verdict)}`);
|
|
108
116
|
const commentBody = verdict === null
|
|
109
117
|
? `${NULL_VERDICT_WARNING}\n\n${clean}`
|
|
110
|
-
: prependVerdictToComment(clean, verdict);
|
|
118
|
+
: prependVerdictToComment(gate.downgraded ? `${SEVERITY_GATE_NOTE}\n\n${clean}` : clean, verdict);
|
|
111
119
|
await postReviewComment(octokit, owner, repo, number, commentBody, reviewer, config.brand, origin, verdict ?? undefined, undefined, false, model, 'review', 1, pr.head.sha);
|
|
112
120
|
fileLog({ level: 'info', event: 'comment_posted', repo: `${owner}/${repo}`, pr: number, url: prUrl });
|
|
113
121
|
console.log(chalk.green(`\n✓ Review posted to ${prUrl}\n`));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"review.js","sourceRoot":"","sources":["../../src/commands/review.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,IAAI,CAAA;AACxC,OAAO,EAAE,MAAM,EAAE,MAAM,IAAI,CAAA;AAC3B,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAC3B,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,GAAG,MAAM,KAAK,CAAA;AACrB,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AAC3E,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAiB,MAAM,uBAAuB,CAAA;AACvF,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AACxD,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAChE,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AACrE,OAAO,EAAE,UAAU,EAAE,GAAG,IAAI,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AACvE,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,uBAAuB,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAA;
|
|
1
|
+
{"version":3,"file":"review.js","sourceRoot":"","sources":["../../src/commands/review.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/board.d.ts
CHANGED
package/dist/lib/board.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"board.d.ts","sourceRoot":"","sources":["../../src/lib/board.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAgB,MAAM,qBAAqB,CAAA;AAC/D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;
|
|
1
|
+
{"version":3,"file":"board.d.ts","sourceRoot":"","sources":["../../src/lib/board.ts"],"names":[],"mappings":"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"}
|