@zhixuan92/multi-model-agent-core 3.7.0 → 3.8.1
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 +1 -1
- package/dist/config/read-only-review-flag.d.ts +8 -0
- package/dist/config/read-only-review-flag.d.ts.map +1 -0
- package/dist/config/read-only-review-flag.js +13 -0
- package/dist/config/read-only-review-flag.js.map +1 -0
- package/dist/executors/_shared/findings-schema.d.ts +80 -0
- package/dist/executors/_shared/findings-schema.d.ts.map +1 -0
- package/dist/executors/_shared/findings-schema.js +35 -0
- package/dist/executors/_shared/findings-schema.js.map +1 -0
- package/dist/executors/_shared/review-verdict-mapping.d.ts +16 -0
- package/dist/executors/_shared/review-verdict-mapping.d.ts.map +1 -0
- package/dist/executors/_shared/review-verdict-mapping.js +24 -0
- package/dist/executors/_shared/review-verdict-mapping.js.map +1 -0
- package/dist/executors/audit.d.ts.map +1 -1
- package/dist/executors/audit.js +21 -5
- package/dist/executors/audit.js.map +1 -1
- package/dist/executors/debug.d.ts.map +1 -1
- package/dist/executors/debug.js +11 -2
- package/dist/executors/debug.js.map +1 -1
- package/dist/executors/investigate.d.ts.map +1 -1
- package/dist/executors/investigate.js +23 -17
- package/dist/executors/investigate.js.map +1 -1
- package/dist/executors/review.d.ts.map +1 -1
- package/dist/executors/review.js +48 -48
- package/dist/executors/review.js.map +1 -1
- package/dist/executors/types.d.ts +4 -1
- package/dist/executors/types.d.ts.map +1 -1
- package/dist/executors/verify.d.ts.map +1 -1
- package/dist/executors/verify.js +43 -8
- package/dist/executors/verify.js.map +1 -1
- package/dist/intake/compilers/investigate.d.ts.map +1 -1
- package/dist/intake/compilers/investigate.js +3 -4
- package/dist/intake/compilers/investigate.js.map +1 -1
- package/dist/intake/resolve.d.ts.map +1 -1
- package/dist/intake/resolve.js +24 -10
- package/dist/intake/resolve.js.map +1 -1
- package/dist/intake/types.d.ts +1 -1
- package/dist/intake/types.d.ts.map +1 -1
- package/dist/observability/events.d.ts +84 -0
- package/dist/observability/events.d.ts.map +1 -1
- package/dist/observability/events.js +23 -1
- package/dist/observability/events.js.map +1 -1
- package/dist/review/aggregate-result.d.ts +1 -1
- package/dist/review/aggregate-result.d.ts.map +1 -1
- package/dist/review/aggregate-result.js.map +1 -1
- package/dist/review/quality-only-prompts.d.ts +26 -0
- package/dist/review/quality-only-prompts.d.ts.map +1 -0
- package/dist/review/quality-only-prompts.js +155 -0
- package/dist/review/quality-only-prompts.js.map +1 -0
- package/dist/review/quality-reviewer.d.ts +54 -10
- package/dist/review/quality-reviewer.d.ts.map +1 -1
- package/dist/review/quality-reviewer.js +158 -17
- package/dist/review/quality-reviewer.js.map +1 -1
- package/dist/run-tasks/index.d.ts +6 -0
- package/dist/run-tasks/index.d.ts.map +1 -1
- package/dist/run-tasks/index.js +1 -1
- package/dist/run-tasks/index.js.map +1 -1
- package/dist/run-tasks/reviewed-lifecycle.d.ts +5 -1
- package/dist/run-tasks/reviewed-lifecycle.d.ts.map +1 -1
- package/dist/run-tasks/reviewed-lifecycle.js +234 -162
- package/dist/run-tasks/reviewed-lifecycle.js.map +1 -1
- package/dist/tool-schemas/audit.d.ts +19 -0
- package/dist/tool-schemas/audit.d.ts.map +1 -1
- package/dist/tool-schemas/debug.d.ts +19 -0
- package/dist/tool-schemas/debug.d.ts.map +1 -1
- package/dist/tool-schemas/delegate.d.ts +19 -0
- package/dist/tool-schemas/delegate.d.ts.map +1 -1
- package/dist/tool-schemas/execute-plan.d.ts +19 -0
- package/dist/tool-schemas/execute-plan.d.ts.map +1 -1
- package/dist/tool-schemas/investigate.d.ts +19 -4
- package/dist/tool-schemas/investigate.d.ts.map +1 -1
- package/dist/tool-schemas/investigate.js +0 -1
- package/dist/tool-schemas/investigate.js.map +1 -1
- package/dist/tool-schemas/retry.d.ts +19 -0
- package/dist/tool-schemas/retry.d.ts.map +1 -1
- package/dist/tool-schemas/review.d.ts +19 -0
- package/dist/tool-schemas/review.d.ts.map +1 -1
- package/dist/tool-schemas/shared-output.d.ts +19 -0
- package/dist/tool-schemas/shared-output.d.ts.map +1 -1
- package/dist/tool-schemas/shared-output.js +6 -0
- package/dist/tool-schemas/shared-output.js.map +1 -1
- package/dist/tool-schemas/verify.d.ts +19 -0
- package/dist/tool-schemas/verify.d.ts.map +1 -1
- package/dist/types.d.ts +3 -3
- package/dist/types.d.ts.map +1 -1
- package/package.json +5 -1
package/dist/executors/review.js
CHANGED
|
@@ -1,9 +1,14 @@
|
|
|
1
1
|
// packages/core/src/executors/review.ts
|
|
2
2
|
import { randomUUID } from 'node:crypto';
|
|
3
|
-
import {
|
|
3
|
+
import { resolveAgent } from '../routing/resolve-agent.js';
|
|
4
|
+
import { executeReviewedLifecycle } from '../run-tasks/reviewed-lifecycle.js';
|
|
5
|
+
import { buildReviewQualityPrompt } from '../review/quality-only-prompts.js';
|
|
6
|
+
import { mapReviewVerdicts } from './_shared/review-verdict-mapping.js';
|
|
4
7
|
import { computeTimings, computeAggregateCost } from './shared-compute.js';
|
|
5
8
|
import { notApplicable } from '../reporting/not-applicable.js';
|
|
6
9
|
import { composeTerminalHeadline } from '../reporting/compose-terminal-headline.js';
|
|
10
|
+
import { expandContextBlocks } from '../context/expand-context-blocks.js';
|
|
11
|
+
import { resolveReadOnlyReviewFlag } from '../config/read-only-review-flag.js';
|
|
7
12
|
// --- Ported from packages/mcp/src/tools/review-code.ts ---
|
|
8
13
|
const REVIEW_DONE_CONDITIONS = {
|
|
9
14
|
security: 'Identify security vulnerabilities with severity, location, and remediation.',
|
|
@@ -58,15 +63,9 @@ function resolveDispatchMode(inlineContent, filePaths) {
|
|
|
58
63
|
return 'fan_out';
|
|
59
64
|
return 'single';
|
|
60
65
|
}
|
|
61
|
-
function
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
const usable = results.filter(r => !r.outputIsDiagnostic && r.output.trim().length > 0);
|
|
65
|
-
if (usable.length === 0)
|
|
66
|
-
return undefined;
|
|
67
|
-
const combined = usable.map(r => r.output).join('\n\n---\n\n');
|
|
68
|
-
const { id } = store.register(combined);
|
|
69
|
-
return id;
|
|
66
|
+
async function runSingleReview(task, agentType, config, ctx, taskIndex) {
|
|
67
|
+
const resolved = resolveAgent(agentType, [], config);
|
|
68
|
+
return executeReviewedLifecycle(task, resolved, config, taskIndex, undefined, { batchId: ctx.batchId, recordHeartbeat: ctx.recordHeartbeat }, { logger: ctx.logger }, ctx.recorder, ctx.route ?? 'review', ctx.client, ctx.triggeringSkill, ctx.bus, buildReviewQualityPrompt);
|
|
70
69
|
}
|
|
71
70
|
export async function executeReview(ctx, input) {
|
|
72
71
|
const { config, contextBlockStore } = ctx;
|
|
@@ -74,7 +73,7 @@ export async function executeReview(ctx, input) {
|
|
|
74
73
|
const parentModel = ctx.parentModel ?? config.defaults?.parentModel ?? undefined;
|
|
75
74
|
const baseTaskSpec = {
|
|
76
75
|
agentType: 'complex',
|
|
77
|
-
reviewPolicy: '
|
|
76
|
+
reviewPolicy: 'quality_only',
|
|
78
77
|
briefQualityPolicy: 'off',
|
|
79
78
|
done: resolveReviewDoneCondition(input.focus, hasContextBlocks),
|
|
80
79
|
tools: config.defaults?.tools ?? 'full',
|
|
@@ -85,56 +84,55 @@ export async function executeReview(ctx, input) {
|
|
|
85
84
|
contextBlockIds: input.contextBlockIds,
|
|
86
85
|
parentModel,
|
|
87
86
|
};
|
|
88
|
-
const runtime = contextBlockStore ? { contextBlockStore } : undefined;
|
|
89
87
|
const mode = resolveDispatchMode(input.code, input.filePaths);
|
|
88
|
+
// Build the list of tasks (fan_out creates one per file path, single creates one)
|
|
89
|
+
let taskSpecs;
|
|
90
90
|
if (mode === 'fan_out') {
|
|
91
91
|
const validPaths = input.filePaths.filter(p => p.trim().length > 0);
|
|
92
92
|
const promptTemplate = buildReviewPrompt(undefined, undefined, input.focus, hasContextBlocks);
|
|
93
|
-
|
|
93
|
+
taskSpecs = validPaths.map(fp => ({
|
|
94
94
|
...baseTaskSpec,
|
|
95
95
|
prompt: buildPerFilePrompt(fp, promptTemplate),
|
|
96
96
|
}));
|
|
97
|
-
|
|
98
|
-
|
|
97
|
+
}
|
|
98
|
+
else {
|
|
99
|
+
const prompt = buildReviewPrompt(input.code, input.filePaths, input.focus, hasContextBlocks);
|
|
100
|
+
taskSpecs = [{ ...baseTaskSpec, prompt }];
|
|
101
|
+
}
|
|
102
|
+
// Expand context blocks for each task
|
|
103
|
+
const expandedTasks = taskSpecs.map(task => {
|
|
99
104
|
try {
|
|
100
|
-
|
|
105
|
+
return expandContextBlocks(task, contextBlockStore);
|
|
101
106
|
}
|
|
102
107
|
catch (e) {
|
|
103
|
-
|
|
104
|
-
|
|
108
|
+
ctx.logger.error('expandContextBlocks_failed_review', e);
|
|
109
|
+
return task;
|
|
105
110
|
}
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
const
|
|
111
|
+
});
|
|
112
|
+
const startMs = Date.now();
|
|
113
|
+
const results = await Promise.all(expandedTasks.map((task, i) => runSingleReview(task, task.agentType ?? 'complex', config, ctx, i).catch((e) => {
|
|
114
|
+
const msg = e instanceof Error ? e.message : String(e);
|
|
110
115
|
return {
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
wallClockMs,
|
|
120
|
-
parentModel,
|
|
121
|
-
...(ctxId !== undefined && { contextBlockId: ctxId }),
|
|
116
|
+
output: '', status: 'error',
|
|
117
|
+
usage: { inputTokens: 0, outputTokens: 0, totalTokens: 0, costUSD: null },
|
|
118
|
+
turns: 0, filesRead: [], filesWritten: [], toolCalls: [],
|
|
119
|
+
outputIsDiagnostic: false, escalationLog: [],
|
|
120
|
+
error: msg, errorCode: 'executor_error', retryable: false,
|
|
121
|
+
durationMs: 0,
|
|
122
|
+
structuredError: { code: 'executor_error', message: msg, where: 'executor:review' },
|
|
123
|
+
workerStatus: 'failed',
|
|
122
124
|
};
|
|
123
|
-
}
|
|
124
|
-
const
|
|
125
|
-
|
|
126
|
-
try {
|
|
127
|
-
results = await runTasks([{ ...baseTaskSpec, prompt }], config, { runtime, ...(ctx.batchId !== undefined && { batchId: ctx.batchId }), ...(ctx.recordHeartbeat !== undefined && { recordHeartbeat: ctx.recordHeartbeat }), logger: ctx.logger, ...(ctx.recorder !== undefined && { recorder: ctx.recorder }), ...(ctx.route !== undefined && { route: ctx.route }), ...(ctx.client !== undefined && { client: ctx.client }), ...(ctx.triggeringSkill !== undefined && { triggeringSkill: ctx.triggeringSkill }) });
|
|
128
|
-
}
|
|
129
|
-
catch (e) {
|
|
130
|
-
const msg = e instanceof Error ? e.message : String(e);
|
|
131
|
-
results = [{ output: '', status: 'error', usage: { inputTokens: 0, outputTokens: 0, totalTokens: 0, costUSD: null }, turns: 0, filesRead: [], filesWritten: [], toolCalls: [], outputIsDiagnostic: false, escalationLog: [], error: msg, errorCode: 'executor_error', retryable: false, durationMs: 0, structuredError: { code: 'executor_error', message: msg, where: 'executor:review' }, workerStatus: 'failed' }];
|
|
132
|
-
}
|
|
133
|
-
const ctxId = autoRegisterContextBlock(results, contextBlockStore);
|
|
134
|
-
const batchTimings = computeTimings(0, results);
|
|
125
|
+
})));
|
|
126
|
+
const wallClockMs = Date.now() - startMs;
|
|
127
|
+
const batchTimings = computeTimings(wallClockMs, results);
|
|
135
128
|
const costSummary = computeAggregateCost(results);
|
|
129
|
+
// Surface review verdicts from the lifecycle
|
|
130
|
+
const primaryResult = results[0];
|
|
131
|
+
const flag = resolveReadOnlyReviewFlag();
|
|
132
|
+
const useQualityReview = flag.isEnabledFor('review_code');
|
|
133
|
+
const verdicts = mapReviewVerdicts(primaryResult ?? {}, !useQualityReview);
|
|
136
134
|
return {
|
|
137
|
-
headline: composeTerminalHeadline({ tool: 'review', awaitingClarification: false, tasksTotal:
|
|
135
|
+
headline: composeTerminalHeadline({ tool: 'review', awaitingClarification: false, tasksTotal: taskSpecs.length, tasksCompleted: results.length }),
|
|
138
136
|
results,
|
|
139
137
|
batchTimings,
|
|
140
138
|
costSummary,
|
|
@@ -142,9 +140,11 @@ export async function executeReview(ctx, input) {
|
|
|
142
140
|
error: notApplicable('batch succeeded'),
|
|
143
141
|
proposedInterpretation: notApplicable('batch not awaiting clarification'),
|
|
144
142
|
batchId: randomUUID(),
|
|
145
|
-
wallClockMs
|
|
143
|
+
wallClockMs,
|
|
146
144
|
parentModel,
|
|
147
|
-
|
|
145
|
+
specReviewVerdict: verdicts.specReviewVerdict,
|
|
146
|
+
qualityReviewVerdict: verdicts.qualityReviewVerdict,
|
|
147
|
+
roundsUsed: verdicts.roundsUsed,
|
|
148
148
|
};
|
|
149
149
|
}
|
|
150
150
|
//# sourceMappingURL=review.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"review.js","sourceRoot":"","sources":["../../src/executors/review.ts"],"names":[],"mappings":"AAAA,wCAAwC;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAIzC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"review.js","sourceRoot":"","sources":["../../src/executors/review.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { ProjectContext } from '../project-context.js';
|
|
2
|
-
import type { RunResult, MultiModelConfig } from '../types.js';
|
|
2
|
+
import type { RunResult, MultiModelConfig, ReviewVerdict } from '../types.js';
|
|
3
3
|
import type { HttpServerLog } from '../diagnostics/http-server-log.js';
|
|
4
4
|
import type { ContextBlockStore } from '../context/context-block-store.js';
|
|
5
5
|
import type { NotApplicable } from '../reporting/not-applicable.js';
|
|
@@ -118,5 +118,8 @@ export interface ExecutorOutput {
|
|
|
118
118
|
clarificationId?: string;
|
|
119
119
|
wallClockMs?: number;
|
|
120
120
|
parentModel?: string;
|
|
121
|
+
specReviewVerdict?: ReviewVerdict;
|
|
122
|
+
qualityReviewVerdict?: ReviewVerdict;
|
|
123
|
+
roundsUsed?: number;
|
|
121
124
|
}
|
|
122
125
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/executors/types.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,KAAK,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/executors/types.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,KAAK,EAAE,SAAS,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC9E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAC;AACvE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AAC3E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAExD,6DAA6D;AAC7D,MAAM,WAAW,YAAY;IAC3B,WAAW,EAAE,MAAM,CAAA;IACnB,WAAW,EAAE,MAAM,CAAA;IACnB,0BAA0B,EAAE,MAAM,CAAA;CACnC;AAED,gEAAgE;AAChE,MAAM,WAAW,aAAa;IAC5B,UAAU,EAAE,MAAM,CAAA;IAClB,cAAc,EAAE,MAAM,CAAA;IACtB,eAAe,EAAE,MAAM,CAAA;IACvB,WAAW,EAAE,MAAM,CAAA;IACnB,cAAc,EAAE,MAAM,CAAC;CACxB;AAED,2DAA2D;AAC3D,MAAM,WAAW,kBAAkB;IACjC,kBAAkB,EAAE,MAAM,CAAA;IAC1B,iBAAiB,EAAE,MAAM,CAAA;CAC1B;AAED,MAAM,WAAW,gBAAgB;IAC/B,cAAc,EAAE,cAAc,CAAC;IAC/B,MAAM,EAAE,gBAAgB,CAAC;IACzB;;;;;;;OAOG;IACH,MAAM,EAAE,aAAa,CAAC;IACtB,+FAA+F;IAC/F,GAAG,CAAC,EAAE,QAAQ,CAAC;IACf,iBAAiB,EAAE,iBAAiB,CAAC;IACrC,sEAAsE;IACtE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,4FAA4F;IAC5F,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,iGAAiG;IACjG,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE,iBAAiB,KAAK,IAAI,CAAC;IACpD,2EAA2E;IAC3E,QAAQ,CAAC,EAAE;QACT,mBAAmB,EAAE,CAAC,GAAG,EAAE;YACzB,KAAK,EAAE,MAAM,CAAC;YACd,QAAQ,EAAE;gBAAE,SAAS,CAAC,EAAE,MAAM,EAAE,CAAA;aAAE,CAAC;YACnC,SAAS,EAAE,SAAS,CAAC;YACrB,MAAM,EAAE,MAAM,CAAC;YACf,eAAe,EAAE,MAAM,CAAC;YACxB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;SAC5B,KAAK,IAAI,CAAC;KACZ,CAAC;IACF,2DAA2D;IAC3D,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,sEAAsE;IACtE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,sEAAsE;IACtE,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,qBAAqB;IACpC,cAAc,EAAE,cAAc,CAAC;IAC/B,MAAM,EAAE,gBAAgB,CAAC;IACzB,MAAM,EAAE,aAAa,CAAC;IACtB,GAAG,CAAC,EAAE,QAAQ,CAAC;IACf,iBAAiB,EAAE,iBAAiB,CAAC;IACrC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE,iBAAiB,KAAK,IAAI,CAAC;IACpD,2EAA2E;IAC3E,QAAQ,CAAC,EAAE;QACT,mBAAmB,EAAE,CAAC,GAAG,EAAE;YACzB,KAAK,EAAE,MAAM,CAAC;YACd,QAAQ,EAAE;gBAAE,SAAS,CAAC,EAAE,MAAM,EAAE,CAAA;aAAE,CAAC;YACnC,SAAS,EAAE,SAAS,CAAC;YACrB,MAAM,EAAE,MAAM,CAAC;YACf,eAAe,EAAE,MAAM,CAAC;YACxB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;SAC5B,KAAK,IAAI,CAAC;KACZ,CAAC;IACF,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED;;;;;;;;;GASG;AACH,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,SAAS,EAAE,GAAG,aAAa,CAAC;IACrC,YAAY,EAAE,YAAY,GAAG,aAAa,CAAC;IAC3C,WAAW,EAAE,kBAAkB,GAAG,aAAa,CAAC;IAChD,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,aAAa,CAAC;IAC1D,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,aAAa,CAAC;IAC5E,sBAAsB,EAAE,MAAM,GAAG,aAAa,CAAC;IAC/C,OAAO,EAAE,MAAM,CAAC;IAChB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iBAAiB,CAAC,EAAE,aAAa,CAAC;IAClC,oBAAoB,CAAC,EAAE,aAAa,CAAC;IACrC,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"verify.d.ts","sourceRoot":"","sources":["../../src/executors/verify.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AACnE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"verify.d.ts","sourceRoot":"","sources":["../../src/executors/verify.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AACnE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAC;AAgEvD,MAAM,WAAW,YAAa,SAAQ,cAAc;IAClD,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,wBAAsB,aAAa,CACjC,GAAG,EAAE,gBAAgB,EACrB,KAAK,EAAE,KAAK,GACX,OAAO,CAAC,YAAY,CAAC,CAoJvB"}
|
package/dist/executors/verify.js
CHANGED
|
@@ -1,9 +1,14 @@
|
|
|
1
1
|
// packages/core/src/executors/verify.ts
|
|
2
2
|
import { randomUUID } from 'node:crypto';
|
|
3
|
-
import {
|
|
3
|
+
import { executeReviewedLifecycle } from '../run-tasks/reviewed-lifecycle.js';
|
|
4
|
+
import { resolveAgent } from '../routing/resolve-agent.js';
|
|
5
|
+
import { expandContextBlocks } from '../context/expand-context-blocks.js';
|
|
6
|
+
import { buildVerifyQualityPrompt } from '../review/quality-only-prompts.js';
|
|
7
|
+
import { mapReviewVerdicts } from './_shared/review-verdict-mapping.js';
|
|
4
8
|
import { computeTimings, computeAggregateCost } from './shared-compute.js';
|
|
5
9
|
import { notApplicable } from '../reporting/not-applicable.js';
|
|
6
10
|
import { composeTerminalHeadline } from '../reporting/compose-terminal-headline.js';
|
|
11
|
+
import { resolveReadOnlyReviewFlag } from '../config/read-only-review-flag.js';
|
|
7
12
|
// --- Ported from packages/mcp/src/tools/verify-work.ts ---
|
|
8
13
|
function buildFilePathsPrompt(filePaths) {
|
|
9
14
|
if (!filePaths || filePaths.length === 0)
|
|
@@ -50,8 +55,8 @@ export async function executeVerify(ctx, input) {
|
|
|
50
55
|
const { config, contextBlockStore } = ctx;
|
|
51
56
|
const parentModel = ctx.parentModel ?? config.defaults?.parentModel ?? undefined;
|
|
52
57
|
const baseTaskSpec = {
|
|
53
|
-
agentType: '
|
|
54
|
-
reviewPolicy: '
|
|
58
|
+
agentType: 'complex',
|
|
59
|
+
reviewPolicy: 'quality_only',
|
|
55
60
|
briefQualityPolicy: 'off',
|
|
56
61
|
done: `Every checklist item (${input.checklist.length} total) has a pass/fail verdict with supporting evidence from the code.`,
|
|
57
62
|
tools: config.defaults?.tools ?? 'full',
|
|
@@ -62,7 +67,19 @@ export async function executeVerify(ctx, input) {
|
|
|
62
67
|
contextBlockIds: input.contextBlockIds,
|
|
63
68
|
parentModel,
|
|
64
69
|
};
|
|
65
|
-
|
|
70
|
+
function resolved() {
|
|
71
|
+
return resolveAgent('complex', [], config);
|
|
72
|
+
}
|
|
73
|
+
function expand(task) {
|
|
74
|
+
return expandContextBlocks(task, contextBlockStore);
|
|
75
|
+
}
|
|
76
|
+
const lifecycleOptions = {
|
|
77
|
+
batchId: ctx.batchId,
|
|
78
|
+
recordHeartbeat: ctx.recordHeartbeat,
|
|
79
|
+
};
|
|
80
|
+
const diagnostics = {
|
|
81
|
+
logger: ctx.logger,
|
|
82
|
+
};
|
|
66
83
|
const mode = resolveDispatchMode(input.work, input.filePaths);
|
|
67
84
|
if (mode === 'fan_out') {
|
|
68
85
|
const validPaths = input.filePaths.filter(p => p.trim().length > 0);
|
|
@@ -74,7 +91,7 @@ export async function executeVerify(ctx, input) {
|
|
|
74
91
|
const startMs = Date.now();
|
|
75
92
|
let results;
|
|
76
93
|
try {
|
|
77
|
-
results = await
|
|
94
|
+
results = await Promise.all(tasks.map((task, idx) => executeReviewedLifecycle(expand(task), resolved(), config, idx, undefined, lifecycleOptions, diagnostics, ctx.recorder, ctx.route ?? 'verify', ctx.client, ctx.triggeringSkill, ctx.bus, buildVerifyQualityPrompt)));
|
|
78
95
|
}
|
|
79
96
|
catch (e) {
|
|
80
97
|
const msg = e instanceof Error ? e.message : String(e);
|
|
@@ -84,6 +101,10 @@ export async function executeVerify(ctx, input) {
|
|
|
84
101
|
const ctxId = autoRegisterContextBlock(results, contextBlockStore);
|
|
85
102
|
const batchTimings = computeTimings(wallClockMs, results);
|
|
86
103
|
const costSummary = computeAggregateCost(results);
|
|
104
|
+
const first = results[0];
|
|
105
|
+
const flag = resolveReadOnlyReviewFlag();
|
|
106
|
+
const useQualityReview = flag.isEnabledFor('verify_work');
|
|
107
|
+
const verdicts = mapReviewVerdicts(first, !useQualityReview);
|
|
87
108
|
return {
|
|
88
109
|
headline: composeTerminalHeadline({ tool: 'verify', awaitingClarification: false, tasksTotal: tasks.length, tasksCompleted: results.length }),
|
|
89
110
|
results,
|
|
@@ -95,21 +116,32 @@ export async function executeVerify(ctx, input) {
|
|
|
95
116
|
batchId: randomUUID(),
|
|
96
117
|
wallClockMs,
|
|
97
118
|
parentModel,
|
|
119
|
+
specReviewVerdict: verdicts.specReviewVerdict,
|
|
120
|
+
qualityReviewVerdict: verdicts.qualityReviewVerdict,
|
|
121
|
+
roundsUsed: verdicts.roundsUsed,
|
|
98
122
|
...(ctxId !== undefined && { contextBlockId: ctxId }),
|
|
99
123
|
};
|
|
100
124
|
}
|
|
101
125
|
const prompt = buildVerifyPrompt(input.work, input.filePaths, input.checklist);
|
|
126
|
+
const taskSpec = { ...baseTaskSpec, prompt };
|
|
102
127
|
let results;
|
|
128
|
+
const startMs = Date.now();
|
|
103
129
|
try {
|
|
104
|
-
|
|
130
|
+
const result = await executeReviewedLifecycle(expand(taskSpec), resolved(), config, 0, undefined, lifecycleOptions, diagnostics, ctx.recorder, ctx.route ?? 'verify', ctx.client, ctx.triggeringSkill, ctx.bus, buildVerifyQualityPrompt);
|
|
131
|
+
results = [result];
|
|
105
132
|
}
|
|
106
133
|
catch (e) {
|
|
107
134
|
const msg = e instanceof Error ? e.message : String(e);
|
|
108
135
|
results = [{ output: '', status: 'error', usage: { inputTokens: 0, outputTokens: 0, totalTokens: 0, costUSD: null }, turns: 0, filesRead: [], filesWritten: [], toolCalls: [], outputIsDiagnostic: false, escalationLog: [], error: msg, errorCode: 'executor_error', retryable: false, durationMs: 0, structuredError: { code: 'executor_error', message: msg, where: 'executor:verify' }, workerStatus: 'failed' }];
|
|
109
136
|
}
|
|
137
|
+
const wallClockMs = Date.now() - startMs;
|
|
110
138
|
const ctxId = autoRegisterContextBlock(results, contextBlockStore);
|
|
111
|
-
const batchTimings = computeTimings(
|
|
139
|
+
const batchTimings = computeTimings(wallClockMs, results);
|
|
112
140
|
const costSummary = computeAggregateCost(results);
|
|
141
|
+
const first = results[0];
|
|
142
|
+
const flag2 = resolveReadOnlyReviewFlag();
|
|
143
|
+
const useQualityReview2 = flag2.isEnabledFor('verify_work');
|
|
144
|
+
const verdicts = mapReviewVerdicts(first, !useQualityReview2);
|
|
113
145
|
return {
|
|
114
146
|
headline: composeTerminalHeadline({ tool: 'verify', awaitingClarification: false, tasksTotal: 1, tasksCompleted: results.length }),
|
|
115
147
|
results,
|
|
@@ -119,8 +151,11 @@ export async function executeVerify(ctx, input) {
|
|
|
119
151
|
error: notApplicable('batch succeeded'),
|
|
120
152
|
proposedInterpretation: notApplicable('batch not awaiting clarification'),
|
|
121
153
|
batchId: randomUUID(),
|
|
122
|
-
wallClockMs
|
|
154
|
+
wallClockMs,
|
|
123
155
|
parentModel,
|
|
156
|
+
specReviewVerdict: verdicts.specReviewVerdict,
|
|
157
|
+
qualityReviewVerdict: verdicts.qualityReviewVerdict,
|
|
158
|
+
roundsUsed: verdicts.roundsUsed,
|
|
124
159
|
...(ctxId !== undefined && { contextBlockId: ctxId }),
|
|
125
160
|
};
|
|
126
161
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"verify.js","sourceRoot":"","sources":["../../src/executors/verify.ts"],"names":[],"mappings":"AAAA,wCAAwC;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAIzC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"verify.js","sourceRoot":"","sources":["../../src/executors/verify.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"investigate.d.ts","sourceRoot":"","sources":["../../../src/intake/compilers/investigate.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mCAAmC,CAAC;AAG/D,MAAM,WAAW,oBAAoB;IACnC,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;CACjB;
|
|
1
|
+
{"version":3,"file":"investigate.d.ts","sourceRoot":"","sources":["../../../src/intake/compilers/investigate.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mCAAmC,CAAC;AAG/D,MAAM,WAAW,oBAAoB;IACnC,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;CACjB;AAGD,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,KAAK,EACZ,qBAAqB,EAAE,oBAAoB,EAAE,EAC7C,sBAAsB,EAAE,MAAM,EAAE,EAChC,0BAA0B,EAAE,MAAM,EAAE,EACpC,GAAG,EAAE,MAAM,GACV,QAAQ,GAAG;IAAE,KAAK,EAAE,sBAAsB,CAAC;IAAC,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAsCxG"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
import { OUTPUT_CONTRACT_CLAUSES
|
|
2
|
-
const DEFAULTS = ROUTE_DEFAULTS['investigate_codebase'];
|
|
1
|
+
import { OUTPUT_CONTRACT_CLAUSES } from '../resolve.js';
|
|
3
2
|
export function compileInvestigate(input, resolvedContextBlocks, canonicalizedFilePaths, relativeFilePathsForPrompt, cwd) {
|
|
4
3
|
if (canonicalizedFilePaths.length !== relativeFilePathsForPrompt.length) {
|
|
5
4
|
throw new Error('compileInvestigate: canonicalizedFilePaths and relativeFilePathsForPrompt must be the same length');
|
|
@@ -25,8 +24,8 @@ export function compileInvestigate(input, resolvedContextBlocks, canonicalizedFi
|
|
|
25
24
|
filePaths: canonicalizedFilePaths,
|
|
26
25
|
},
|
|
27
26
|
question: input.question,
|
|
28
|
-
agentType:
|
|
29
|
-
reviewPolicy: '
|
|
27
|
+
agentType: 'complex',
|
|
28
|
+
reviewPolicy: 'quality_only',
|
|
30
29
|
tools: input.tools ?? 'readonly',
|
|
31
30
|
filePaths: canonicalizedFilePaths,
|
|
32
31
|
sandboxPolicy: 'cwd-only',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"investigate.js","sourceRoot":"","sources":["../../../src/intake/compilers/investigate.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,uBAAuB,EAAE,
|
|
1
|
+
{"version":3,"file":"investigate.js","sourceRoot":"","sources":["../../../src/intake/compilers/investigate.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AAQxD,MAAM,UAAU,kBAAkB,CAChC,KAAY,EACZ,qBAA6C,EAC7C,sBAAgC,EAChC,0BAAoC,EACpC,GAAW;IAEX,IAAI,sBAAsB,CAAC,MAAM,KAAK,0BAA0B,CAAC,MAAM,EAAE,CAAC;QACxE,MAAM,IAAI,KAAK,CAAC,mGAAmG,CAAC,CAAC;IACvH,CAAC;IAED,MAAM,WAAW,GAAa,EAAE,CAAC;IACjC,WAAW,CAAC,IAAI,CAAC,uBAAuB,CAAC,sBAAsB,CAAE,CAAC,CAAC;IACnE,KAAK,MAAM,KAAK,IAAI,qBAAqB,EAAE,CAAC;QAC1C,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAClC,CAAC;IACD,IAAI,0BAA0B,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1C,WAAW,CAAC,IAAI,CACd,gEAAgE;YAChE,0BAA0B,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CACzD,CAAC;IACJ,CAAC;IACD,WAAW,CAAC,IAAI,CAAC,aAAa,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;IAChD,IAAI,qBAAqB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACrC,WAAW,CAAC,IAAI,CACd,sMAAsM,CACvM,CAAC;IACJ,CAAC;IAED,OAAO;QACL,KAAK,EAAE,sBAAsB;QAC7B,MAAM,EAAE,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC;QAChC,aAAa,EAAE;YACb,GAAG,KAAK;YACR,SAAS,EAAE,sBAAsB;SACI;QACvC,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,SAAS,EAAE,SAAkB;QAC7B,YAAY,EAAE,cAAc;QAC5B,KAAK,EAAE,KAAK,CAAC,KAAK,IAAI,UAAU;QAChC,SAAS,EAAE,sBAAsB;QACjC,aAAa,EAAE,UAAU;QACzB,GAAG;KACiH,CAAC;AACzH,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolve.d.ts","sourceRoot":"","sources":["../../src/intake/resolve.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"resolve.d.ts","sourceRoot":"","sources":["../../src/intake/resolve.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAiBzD,eAAO,MAAM,uBAAuB,EAAE,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,CAOxE,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,WAAW,EAAE,OAAO,CAAC,QAAQ,CAAC,CAQjE,CAAC;AAEF,wBAAgB,YAAY,CAC1B,KAAK,EAAE,SAAS,EAChB,MAAM,EAAE,gBAAgB,GACvB,QAAQ,CAwBV"}
|
package/dist/intake/resolve.js
CHANGED
|
@@ -1,19 +1,33 @@
|
|
|
1
|
+
// 3.8.1 worker contract: each finding object has fields {id, severity, claim, evidence, suggestion?}.
|
|
2
|
+
// `evidence` is REQUIRED and must be ≥20 chars — embed file:line as prose plus a
|
|
3
|
+
// one-sentence explanation of what the cited code shows. Reviewer-emitted fields
|
|
4
|
+
// (reviewerConfidence, reviewerSeverity) are added in the annotation pass; the
|
|
5
|
+
// worker MUST NOT include them.
|
|
6
|
+
const FINDINGS_BASE = [
|
|
7
|
+
'Your output MUST include a single ```json fenced code block containing a `findings[]` array.',
|
|
8
|
+
'Each finding object has these fields:',
|
|
9
|
+
'- `id` (string, unique within the array)',
|
|
10
|
+
'- `severity` (\'high\' | \'medium\' | \'low\')',
|
|
11
|
+
'- `claim` (string, what is wrong / what is true)',
|
|
12
|
+
'- `evidence` (string, REQUIRED, at least 20 characters): embed `file:line` as prose plus a one-sentence explanation of what the cited code or text actually shows. For project-level findings, describe what was searched/checked instead.',
|
|
13
|
+
'- `suggestion?` (string, optional): a fix, follow-up step, or recommendation',
|
|
14
|
+
].join('\n');
|
|
1
15
|
export const OUTPUT_CONTRACT_CLAUSES = {
|
|
2
|
-
review_code:
|
|
3
|
-
debug_task:
|
|
4
|
-
verify_work:
|
|
5
|
-
audit_document:
|
|
16
|
+
review_code: `${FINDINGS_BASE}\nEach finding should describe a code-level concern (correctness, security, performance, style as applicable to the focus). Embed the file:line in evidence; the reader will jump to the source from your prose.`,
|
|
17
|
+
debug_task: `${FINDINGS_BASE}\nUse hypothesis-driven debugging: each finding should identify a root cause and propose a fix in \`suggestion\`. Evidence should quote the relevant trace, log line, or code path.`,
|
|
18
|
+
verify_work: `${FINDINGS_BASE}\nMap each checklist item from the brief to a finding: pass (low severity, evidence shows the criterion was met) or fail (high/medium severity, evidence shows what is missing). One finding per checklist item.`,
|
|
19
|
+
audit_document: `${FINDINGS_BASE}\nEach finding should describe an issue discovered in the audited document. Severity reflects impact if the issue stands.`,
|
|
6
20
|
execute_plan: 'Implement the task fully. Report: which task heading you matched, what files were created or modified, and any issues encountered. If no unique matching task was found, report that explicitly and do not implement anything.',
|
|
7
|
-
investigate_codebase:
|
|
21
|
+
investigate_codebase: `${FINDINGS_BASE}\nFor an investigation, \`suggestion\` is optional and may be a follow-up question or angle to explore rather than a code fix. Evidence may be a file:line citation or a description of what was searched (e.g., "Searched src/middleware/, src/auth/ — no auth middleware found").`,
|
|
8
22
|
};
|
|
9
23
|
export const ROUTE_DEFAULTS = {
|
|
10
24
|
delegate_tasks: {},
|
|
11
|
-
review_code: { agentType: 'complex', reviewPolicy: '
|
|
12
|
-
debug_task: { agentType: 'complex', reviewPolicy: '
|
|
13
|
-
verify_work: { agentType: '
|
|
14
|
-
audit_document: { agentType: 'complex', reviewPolicy: '
|
|
25
|
+
review_code: { agentType: 'complex', reviewPolicy: 'quality_only' },
|
|
26
|
+
debug_task: { agentType: 'complex', reviewPolicy: 'quality_only' },
|
|
27
|
+
verify_work: { agentType: 'complex', reviewPolicy: 'quality_only' },
|
|
28
|
+
audit_document: { agentType: 'complex', reviewPolicy: 'quality_only' },
|
|
15
29
|
execute_plan: { agentType: 'standard', reviewPolicy: 'full' },
|
|
16
|
-
investigate_codebase: { agentType: 'complex', reviewPolicy: '
|
|
30
|
+
investigate_codebase: { agentType: 'complex', reviewPolicy: 'quality_only' },
|
|
17
31
|
};
|
|
18
32
|
export function resolveDraft(draft, config) {
|
|
19
33
|
const routeDefaults = ROUTE_DEFAULTS[draft.source.route];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolve.js","sourceRoot":"","sources":["../../src/intake/resolve.ts"],"names":[],"mappings":"AAIA,MAAM,CAAC,MAAM,uBAAuB,GAAyC;IAC3E,WAAW,EAAE,
|
|
1
|
+
{"version":3,"file":"resolve.js","sourceRoot":"","sources":["../../src/intake/resolve.ts"],"names":[],"mappings":"AAIA,sGAAsG;AACtG,iFAAiF;AACjF,iFAAiF;AACjF,+EAA+E;AAC/E,gCAAgC;AAChC,MAAM,aAAa,GAAG;IACpB,8FAA8F;IAC9F,uCAAuC;IACvC,0CAA0C;IAC1C,gDAAgD;IAChD,kDAAkD;IAClD,4OAA4O;IAC5O,8EAA8E;CAC/E,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAEb,MAAM,CAAC,MAAM,uBAAuB,GAAyC;IAC3E,WAAW,EAAE,GAAG,aAAa,kNAAkN;IAC/O,UAAU,EAAE,GAAG,aAAa,qLAAqL;IACjN,WAAW,EAAE,GAAG,aAAa,kNAAkN;IAC/O,cAAc,EAAE,GAAG,aAAa,2HAA2H;IAC3J,YAAY,EAAE,gOAAgO;IAC9O,oBAAoB,EAAE,GAAG,aAAa,qRAAqR;CAC5T,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAA2C;IACpE,cAAc,EAAE,EAAE;IAClB,WAAW,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,YAAY,EAAE,cAAc,EAAE;IACnE,UAAU,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,YAAY,EAAE,cAAc,EAAE;IAClE,WAAW,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,YAAY,EAAE,cAAc,EAAE;IACnE,cAAc,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,YAAY,EAAE,cAAc,EAAE;IACtE,YAAY,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,EAAE;IAC7D,oBAAoB,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,YAAY,EAAE,cAAc,EAAE;CAC7E,CAAC;AAEF,MAAM,UAAU,YAAY,CAC1B,KAAgB,EAChB,MAAwB;IAExB,MAAM,aAAa,GAAG,cAAc,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAEzD,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,IAAI,aAAa,CAAC,SAAS,IAAI,UAAU,CAAC;IAE3E,MAAM,cAAc,GAAG,uBAAuB,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACnE,MAAM,MAAM,GAAG,cAAc,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAC;QACrE,CAAC,CAAC,GAAG,KAAK,CAAC,MAAM,OAAO,cAAc,EAAE;QACxC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC;IAEjB,OAAO;QACL,MAAM;QACN,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,SAAS,EAAE,SAAmC;QAC9C,YAAY,EAAE,KAAK,CAAC,YAAY,IAAI,aAAa,CAAC,YAAY;QAC9D,KAAK,EAAE,MAAM,CAAC,QAAQ,EAAE,KAAK,IAAI,MAAM;QACvC,SAAS,EAAE,MAAM,CAAC,QAAQ,EAAE,SAAS,IAAI,SAAS;QAClD,UAAU,EAAE,MAAM,CAAC,QAAQ,EAAE,UAAU,IAAI,EAAE;QAC7C,aAAa,EAAE,MAAM,CAAC,QAAQ,EAAE,aAAa,IAAI,UAAU;QAC3D,kBAAkB,EAAE,KAAK;QACzB,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE;QAClB,uBAAuB,EAAE,KAAK,CAAC,uBAAuB;KACvD,CAAC;AACJ,CAAC"}
|
package/dist/intake/types.d.ts
CHANGED
|
@@ -63,7 +63,7 @@ export interface DraftTask {
|
|
|
63
63
|
questions?: string[];
|
|
64
64
|
confirmed?: boolean;
|
|
65
65
|
contextBlockIds?: string[];
|
|
66
|
-
reviewPolicy?: 'full' | 'spec_only' | 'diff_only' | 'off';
|
|
66
|
+
reviewPolicy?: 'full' | 'spec_only' | 'diff_only' | 'off' | 'quality_only';
|
|
67
67
|
skipCompletionHeuristic?: boolean;
|
|
68
68
|
}
|
|
69
69
|
export interface StoredDraft {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/intake/types.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/intake/types.ts"],"names":[],"mappings":"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"}
|