@ccdd/project 4.3.0 → 5.0.0
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/monitor-ui/assets/{GraphView-6yzqBOLv.js → GraphView-BDrRFY2b.js} +3 -3
- package/dist/monitor-ui/assets/ValidationView-CznEpoWz.js +1 -0
- package/dist/monitor-ui/assets/ValidationView-DBRoun_B.css +1 -0
- package/dist/monitor-ui/assets/{elk-api-BwZQovT5.js → elk-api-BJkhNJwW.js} +1 -1
- package/dist/monitor-ui/assets/{elk.bundled-CQowIhI8.js → elk.bundled-uROSxMms.js} +1 -1
- package/dist/monitor-ui/assets/{index-D0yfhUlt.css → index-CRKnM9pk.css} +1 -1
- package/dist/monitor-ui/assets/index-CTW1fvAj.js +6 -0
- package/dist/monitor-ui/index.html +2 -2
- package/dist/src/artifacts/tool-check.js +1 -3
- package/dist/src/artifacts/tool-check.js.map +1 -1
- package/dist/src/broker/config.js +5 -1
- package/dist/src/broker/config.js.map +1 -1
- package/dist/src/broker/index.d.ts +44 -84
- package/dist/src/broker/index.js +175 -50
- package/dist/src/broker/index.js.map +1 -1
- package/dist/src/broker/polling.d.ts +11 -0
- package/dist/src/broker/polling.js +27 -0
- package/dist/src/broker/polling.js.map +1 -0
- package/dist/src/contracts.d.ts +4 -4
- package/dist/src/definitions.d.ts +3 -1
- package/dist/src/executors/index.js +6 -21
- package/dist/src/executors/index.js.map +1 -1
- package/dist/src/executors/pi.d.ts +3 -1
- package/dist/src/executors/pi.js +2 -0
- package/dist/src/executors/pi.js.map +1 -1
- package/dist/src/executors/telemetry.d.ts +2 -0
- package/dist/src/executors/telemetry.js +12 -0
- package/dist/src/executors/telemetry.js.map +1 -1
- package/dist/src/monitor/actions.d.ts +1 -1
- package/dist/src/monitor/actions.js +3 -3
- package/dist/src/monitor/actions.js.map +1 -1
- package/dist/src/monitor/server.js +10 -5
- package/dist/src/monitor/server.js.map +1 -1
- package/dist/src/monitor/store.js +10 -6
- package/dist/src/monitor/store.js.map +1 -1
- package/dist/src/monitor/types.d.ts +5 -7
- package/dist/src/project/cli.js +47 -24
- package/dist/src/project/cli.js.map +1 -1
- package/dist/src/project/identity.d.ts +6 -1
- package/dist/src/project/identity.js +42 -13
- package/dist/src/project/identity.js.map +1 -1
- package/dist/src/project/index.d.ts +21 -6
- package/dist/src/project/index.js +19 -8
- package/dist/src/project/index.js.map +1 -1
- package/dist/src/project/owner-identity.d.ts +0 -4
- package/dist/src/project/owner-identity.js +5 -3
- package/dist/src/project/owner-identity.js.map +1 -1
- package/dist/src/project/prune.d.ts +12 -0
- package/dist/src/project/prune.js +132 -0
- package/dist/src/project/prune.js.map +1 -0
- package/dist/src/project/query.js +9 -9
- package/dist/src/project/query.js.map +1 -1
- package/dist/src/project/store.d.ts +4 -3
- package/dist/src/project/store.js +12 -7
- package/dist/src/project/store.js.map +1 -1
- package/dist/src/project/types.d.ts +8 -6
- package/dist/src/requester/index.js +1 -1
- package/dist/src/requester/index.js.map +1 -1
- package/dist/src/response-schema.d.ts +13 -0
- package/dist/src/response-schema.js +33 -0
- package/dist/src/response-schema.js.map +1 -0
- package/dist/src/result-view.d.ts +72 -0
- package/dist/src/result-view.js +44 -0
- package/dist/src/result-view.js.map +1 -0
- package/dist/src/review/local-claim.d.ts +1 -1
- package/dist/src/review/local-claim.js.map +1 -1
- package/dist/src/review-result.d.ts +2 -1
- package/dist/src/review-result.js +9 -8
- package/dist/src/review-result.js.map +1 -1
- package/dist/src/state-format.d.ts +8 -0
- package/dist/src/state-format.js +18 -0
- package/dist/src/state-format.js.map +1 -0
- package/dist/src/tools/runner.d.ts +2 -0
- package/dist/src/tools/runner.js +41 -11
- package/dist/src/tools/runner.js.map +1 -1
- package/dist/src/worker-client.d.ts +3 -2
- package/dist/src/worker-client.js +7 -4
- package/dist/src/worker-client.js.map +1 -1
- package/dist/src/worker.js +1 -1
- package/dist/src/worker.js.map +1 -1
- package/package.json +2 -2
- package/dist/monitor-ui/assets/ValidationView-BMqI2XQ5.css +0 -1
- package/dist/monitor-ui/assets/ValidationView-BwHWjMUI.js +0 -1
- package/dist/monitor-ui/assets/index-CoJ9_gC3.js +0 -7
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import type { ReviewRequest } from './contracts.js';
|
|
2
|
+
import type { RunView } from './broker/index.js';
|
|
3
|
+
import type { CriticValidation, ProjectPlan, ProjectQuery, ValidationEvidence } from './project/types.js';
|
|
4
|
+
export type ResultDetail = 'compact' | 'full';
|
|
5
|
+
export interface ResultOptions<D extends ResultDetail = 'compact'> {
|
|
6
|
+
detail?: D;
|
|
7
|
+
}
|
|
8
|
+
export type ResultView<D extends ResultDetail, Full, Compact> = D extends 'full' ? Full : Compact;
|
|
9
|
+
export interface ReviewReference {
|
|
10
|
+
runId: string;
|
|
11
|
+
requestId: string | null;
|
|
12
|
+
stateDir: string;
|
|
13
|
+
}
|
|
14
|
+
export interface RequesterResult {
|
|
15
|
+
verdict: 'GREEN' | 'RED';
|
|
16
|
+
reference: ReviewReference;
|
|
17
|
+
reusedFrom?: ReviewReference;
|
|
18
|
+
[field: string]: unknown;
|
|
19
|
+
}
|
|
20
|
+
export interface RequesterRequest {
|
|
21
|
+
id: string;
|
|
22
|
+
runId: string;
|
|
23
|
+
criticId: string;
|
|
24
|
+
target: string;
|
|
25
|
+
status: ReviewRequest['status'];
|
|
26
|
+
inputKey: string | null;
|
|
27
|
+
reference: ReviewReference;
|
|
28
|
+
result: RequesterResult | null;
|
|
29
|
+
error?: string | null;
|
|
30
|
+
errorCode?: string | null;
|
|
31
|
+
blockedReason?: string | null;
|
|
32
|
+
}
|
|
33
|
+
export interface ResultReference {
|
|
34
|
+
requestId: string;
|
|
35
|
+
}
|
|
36
|
+
export type RequesterCritic = Omit<CriticValidation, 'input' | 'result'> & {
|
|
37
|
+
inputKey: string;
|
|
38
|
+
result: ResultReference | null;
|
|
39
|
+
};
|
|
40
|
+
export type RequesterQuery = Omit<ProjectQuery, 'critics'> & {
|
|
41
|
+
critics: RequesterCritic[];
|
|
42
|
+
results: RequesterResult[];
|
|
43
|
+
};
|
|
44
|
+
export type RequesterPlan = Omit<ProjectPlan, 'critics' | 'items'> & {
|
|
45
|
+
critics: RequesterCritic[];
|
|
46
|
+
items: (RequesterCritic & {
|
|
47
|
+
action: ProjectPlan['items'][number]['action'];
|
|
48
|
+
})[];
|
|
49
|
+
results: RequesterResult[];
|
|
50
|
+
};
|
|
51
|
+
export interface RequesterRun {
|
|
52
|
+
id: string;
|
|
53
|
+
status: RunView['status'];
|
|
54
|
+
workspaceIntegrity: 'content' | 'metadata';
|
|
55
|
+
reference: ReviewReference;
|
|
56
|
+
results: RequesterResult[];
|
|
57
|
+
requests: (Omit<RequesterRequest, 'result'> & {
|
|
58
|
+
result: ResultReference | null;
|
|
59
|
+
})[];
|
|
60
|
+
validation?: Omit<RequesterPlan, 'results'>;
|
|
61
|
+
error?: string;
|
|
62
|
+
}
|
|
63
|
+
export declare const reviewReference: (stateDir: string, runId: string, requestId: string | null) => ReviewReference;
|
|
64
|
+
/** Whitelists deliberately keep new audit fields out of requester output. Never mutate stored evidence. */
|
|
65
|
+
export declare function requesterEvidence(evidence: ValidationEvidence, stateDir: string): RequesterResult;
|
|
66
|
+
export declare function requesterRequest(request: ReviewRequest, stateDir: string): RequesterRequest;
|
|
67
|
+
export declare function requesterQuery(query: ProjectQuery, stateDir: string): RequesterQuery;
|
|
68
|
+
export declare function requesterPlan(plan: ProjectPlan, stateDir: string): RequesterPlan;
|
|
69
|
+
export declare function requesterRun(run: Pick<RunView, 'id' | 'status' | 'workspace' | 'requests' | 'error'> & {
|
|
70
|
+
validation?: ProjectPlan;
|
|
71
|
+
}, stateDir: string): RequesterRun;
|
|
72
|
+
export declare function resultView<D extends ResultDetail, Full, Compact>(options: ResultOptions<D>, full: Full, compact: () => Compact): ResultView<D, Full, Compact>;
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { semanticResult } from './response-schema.js';
|
|
2
|
+
import { resolve } from 'node:path';
|
|
3
|
+
export const reviewReference = (stateDir, runId, requestId) => ({ runId, requestId, stateDir: resolve(stateDir) });
|
|
4
|
+
/** Whitelists deliberately keep new audit fields out of requester output. Never mutate stored evidence. */
|
|
5
|
+
export function requesterEvidence(evidence, stateDir) {
|
|
6
|
+
return { ...semanticResult(evidence.result), verdict: evidence.verdict,
|
|
7
|
+
reference: reviewReference(stateDir, evidence.runId, evidence.requestId) };
|
|
8
|
+
}
|
|
9
|
+
export function requesterRequest(request, stateDir) {
|
|
10
|
+
const reference = reviewReference(stateDir, request.runId, request.id), inputKey = request.validationInput?.key ?? null;
|
|
11
|
+
return { id: request.id, runId: request.runId, criticId: request.criticId, target: request.target, status: request.status,
|
|
12
|
+
inputKey, reference, error: request.error, errorCode: request.errorCode, blockedReason: request.blockedReason,
|
|
13
|
+
result: request.result ? { ...semanticResult(request.result), verdict: request.result.verdict, reference } : null };
|
|
14
|
+
}
|
|
15
|
+
function requesterCritic(critic) {
|
|
16
|
+
const { input, result, ...rest } = critic;
|
|
17
|
+
return { ...rest, inputKey: input.key, result: result ? { requestId: result.requestId } : null };
|
|
18
|
+
}
|
|
19
|
+
export function requesterQuery(query, stateDir) {
|
|
20
|
+
return { ...query, critics: query.critics.map(critic => requesterCritic(critic)),
|
|
21
|
+
results: uniqueResults(query.critics.flatMap(critic => critic.result ? [requesterEvidence(critic.result, stateDir)] : [])) };
|
|
22
|
+
}
|
|
23
|
+
export function requesterPlan(plan, stateDir) {
|
|
24
|
+
return { ...plan, ...requesterQuery(plan, stateDir), items: plan.items.map(critic => requesterCritic(critic)) };
|
|
25
|
+
}
|
|
26
|
+
export function requesterRun(run, stateDir) {
|
|
27
|
+
const requests = run.requests.map(request => requesterRequest(request, stateDir));
|
|
28
|
+
const plan = run.validation ? requesterPlan(run.validation, stateDir) : undefined;
|
|
29
|
+
const { results: validationResults = [], ...validation } = plan ?? {};
|
|
30
|
+
return { id: run.id, status: run.status, workspaceIntegrity: run.workspace?.integrity ?? 'content',
|
|
31
|
+
reference: reviewReference(stateDir, run.id, null), error: run.error,
|
|
32
|
+
results: uniqueResults([...requests.flatMap(request => request.result ? [request.result] : []), ...validationResults]).map(result => result.reference.runId === run.id ? result : { ...result, reusedFrom: result.reference }),
|
|
33
|
+
requests: requests.map(({ result, ...request }) => ({ ...request, result: result ? { requestId: request.id } : null })),
|
|
34
|
+
...(plan ? { validation: validation } : {}) };
|
|
35
|
+
}
|
|
36
|
+
function uniqueResults(results) {
|
|
37
|
+
return [...new Map(results.map(result => [result.reference.requestId, result])).values()];
|
|
38
|
+
}
|
|
39
|
+
export function resultView(options, full, compact) {
|
|
40
|
+
if (options.detail !== undefined && options.detail !== 'compact' && options.detail !== 'full')
|
|
41
|
+
throw new Error('detail must be compact or full.');
|
|
42
|
+
return (options.detail === 'full' ? full : compact());
|
|
43
|
+
}
|
|
44
|
+
//# sourceMappingURL=result-view.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"result-view.js","sourceRoot":"","sources":["../../src/result-view.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { Broker } from '../broker/index.js';
|
|
2
2
|
/** Keep the local CLI alive long enough to release Try Claim and stop its checks. */
|
|
3
|
-
export declare function claimHumanFromCli(broker: Broker
|
|
3
|
+
export declare function claimHumanFromCli(broker: Broker<'full'>, requestId: string, reviewerId: string, stderr: {
|
|
4
4
|
write(value: string): unknown;
|
|
5
5
|
}): Promise<import("../contracts.js").ReviewRequest>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"local-claim.js","sourceRoot":"","sources":["../../../src/review/local-claim.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAE7D,qFAAqF;AACrF,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,
|
|
1
|
+
{"version":3,"file":"local-claim.js","sourceRoot":"","sources":["../../../src/review/local-claim.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAE7D,qFAAqF;AACrF,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,MAAsB,EAAE,SAAiB,EAAE,UAAkB,EAAE,MAAyC;IAC9I,OAAO,mBAAmB,CAAC,oCAAoC,EAAE,KAAK,EAAC,MAAM,EAAC,EAAE;QAC9E,MAAM,CAAC,KAAK,CAAC,6EAA6E,CAAC,CAAC;QAC5F,OAAO,MAAM,CAAC,UAAU,CAAC,SAAS,EAAE,UAAU,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;IAC9D,CAAC,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
+
import { type ResponseSchemas } from './response-schema.js';
|
|
1
2
|
import type { ReviewResult, ReviewToolCall } from './contracts.js';
|
|
2
3
|
export declare function storedObservation(value: unknown, isError?: boolean): ReviewToolCall['observation'];
|
|
3
|
-
export declare function normalizeReviewResult(value: unknown): ReviewResult;
|
|
4
|
+
export declare function normalizeReviewResult(value: unknown, schemas?: ResponseSchemas): ReviewResult;
|
|
4
5
|
/** Cache immutable metadata normalization/serialization across final-response candidates. */
|
|
5
6
|
export declare function createReviewResultSizeCheck(metadata: Pick<ReviewResult, 'provider' | 'model' | 'toolCalls'>): (value: unknown) => ReviewResult;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { semanticResult, validateFinalResult } from './response-schema.js';
|
|
1
2
|
const object = (value) => value !== null && typeof value === 'object' && !Array.isArray(value);
|
|
2
3
|
const copy = (value) => JSON.parse(JSON.stringify(value));
|
|
3
4
|
export function storedObservation(value, isError = false) {
|
|
@@ -18,11 +19,9 @@ export function storedObservation(value, isError = false) {
|
|
|
18
19
|
return observation;
|
|
19
20
|
}
|
|
20
21
|
function measureReviewResult(value) {
|
|
21
|
-
if (!object(value) ||
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
}
|
|
25
|
-
const result = { verdict: value.verdict, summary: value.summary.slice(0, 12_000), evidence: value.evidence.slice(0, 100).map(item => item.slice(0, 4000)) };
|
|
22
|
+
if (!object(value) || !['GREEN', 'RED'].includes(String(value.verdict)))
|
|
23
|
+
throw new Error('Review result requires a GREEN/RED verdict.');
|
|
24
|
+
const result = copy(semanticResult(value));
|
|
26
25
|
for (const key of ['provider', 'model', 'stdout', 'stderr']) {
|
|
27
26
|
const field = value[key];
|
|
28
27
|
if (typeof field === 'string')
|
|
@@ -34,7 +33,7 @@ function measureReviewResult(value) {
|
|
|
34
33
|
result[key] = field;
|
|
35
34
|
}
|
|
36
35
|
if (Array.isArray(value.toolCalls))
|
|
37
|
-
result.toolCalls = value.toolCalls.
|
|
36
|
+
result.toolCalls = value.toolCalls.filter((item) => object(item) && typeof item.name === 'string').map(item => {
|
|
38
37
|
const call = { name: item.name, ...(item.arguments === undefined ? {} : { arguments: copy(item.arguments) }) };
|
|
39
38
|
const observation = storedObservation(item.observation, item.isError === true);
|
|
40
39
|
if (item.isError === true)
|
|
@@ -45,7 +44,9 @@ function measureReviewResult(value) {
|
|
|
45
44
|
});
|
|
46
45
|
return { result, length: JSON.stringify(result).length };
|
|
47
46
|
}
|
|
48
|
-
export function normalizeReviewResult(value) {
|
|
47
|
+
export function normalizeReviewResult(value, schemas) {
|
|
48
|
+
if (schemas)
|
|
49
|
+
validateFinalResult(object(value) ? semanticResult(value) : value, schemas);
|
|
49
50
|
const measured = measureReviewResult(value);
|
|
50
51
|
assertResultSize(measured.length);
|
|
51
52
|
return measured.result;
|
|
@@ -56,7 +57,7 @@ function assertResultSize(length) {
|
|
|
56
57
|
}
|
|
57
58
|
/** Cache immutable metadata normalization/serialization across final-response candidates. */
|
|
58
59
|
export function createReviewResultSizeCheck(metadata) {
|
|
59
|
-
const placeholder = { verdict: 'GREEN'
|
|
60
|
+
const placeholder = { verdict: 'GREEN' };
|
|
60
61
|
// Measure without rejecting here: even an over-limit size must stay cached.
|
|
61
62
|
const metadataSize = measureReviewResult({ ...placeholder, ...metadata }).length - JSON.stringify(placeholder).length;
|
|
62
63
|
return (value) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"review-result.js","sourceRoot":"","sources":["../../src/review-result.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"review-result.js","sourceRoot":"","sources":["../../src/review-result.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { DatabaseSync } from 'node:sqlite';
|
|
2
|
+
export declare class StateFormatError extends Error {
|
|
3
|
+
constructor();
|
|
4
|
+
}
|
|
5
|
+
/** No legacy reads or migrations: all entry points use the same format gate. */
|
|
6
|
+
export declare function assertStateFormat(database: DatabaseSync): void;
|
|
7
|
+
/** Called inside the initialization transaction, before creating any tables. */
|
|
8
|
+
export declare function initializeStateFormat(database: DatabaseSync): void;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
export class StateFormatError extends Error {
|
|
2
|
+
constructor() { super('This state directory was created by an earlier CCDD major or an unsupported format; use a new state directory.'); }
|
|
3
|
+
}
|
|
4
|
+
/** No legacy reads or migrations: all entry points use the same format gate. */
|
|
5
|
+
export function assertStateFormat(database) {
|
|
6
|
+
if (database.prepare('PRAGMA user_version').get()?.user_version !== 5)
|
|
7
|
+
throw new StateFormatError();
|
|
8
|
+
}
|
|
9
|
+
/** Called inside the initialization transaction, before creating any tables. */
|
|
10
|
+
export function initializeStateFormat(database) {
|
|
11
|
+
const version = database.prepare('PRAGMA user_version').get()?.user_version;
|
|
12
|
+
const existing = database.prepare("SELECT 1 FROM sqlite_master WHERE type='table' LIMIT 1").get();
|
|
13
|
+
if (version === 0 && !existing)
|
|
14
|
+
database.exec('PRAGMA user_version=5');
|
|
15
|
+
else
|
|
16
|
+
assertStateFormat(database);
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=state-format.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"state-format.js","sourceRoot":"","sources":["../../src/state-format.ts"],"names":[],"mappings":"AAEA,MAAM,OAAO,gBAAiB,SAAQ,KAAK;IACzC,gBAAgB,KAAK,CAAC,gHAAgH,CAAC,CAAC,CAAC,CAAC;CAC3I;AAED,gFAAgF;AAChF,MAAM,UAAU,iBAAiB,CAAC,QAAsB;IACtD,IAAI,QAAQ,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC,GAAG,EAAE,EAAE,YAAY,KAAK,CAAC;QAAE,MAAM,IAAI,gBAAgB,EAAE,CAAC;AACtG,CAAC;AAED,gFAAgF;AAChF,MAAM,UAAU,qBAAqB,CAAC,QAAsB;IAC1D,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC,GAAG,EAAE,EAAE,YAAY,CAAC;IAC5E,MAAM,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,wDAAwD,CAAC,CAAC,GAAG,EAAE,CAAC;IAClG,IAAI,OAAO,KAAK,CAAC,IAAI,CAAC,QAAQ;QAAE,QAAQ,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;;QAClE,iBAAiB,CAAC,QAAQ,CAAC,CAAC;AACnC,CAAC"}
|
|
@@ -35,6 +35,8 @@ export interface ToolExecutionDiagnostic {
|
|
|
35
35
|
startedAt: string;
|
|
36
36
|
durationMs: number;
|
|
37
37
|
outcome: 'success' | 'error';
|
|
38
|
+
contentBytes: number;
|
|
39
|
+
contentBytesByType: Record<'text' | 'json' | 'image' | 'launch', number>;
|
|
38
40
|
}
|
|
39
41
|
export interface ReviewToolsOptions {
|
|
40
42
|
worktreePath: string;
|
package/dist/src/tools/runner.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { constants } from 'node:fs';
|
|
2
|
-
import { access, lstat, mkdir, mkdtemp, readFile, realpath } from 'node:fs/promises';
|
|
2
|
+
import { access, lstat, mkdir, mkdtemp, readFile, realpath, rm } from 'node:fs/promises';
|
|
3
3
|
import { tmpdir } from 'node:os';
|
|
4
4
|
import { delimiter, dirname, isAbsolute, join, relative, resolve, sep } from 'node:path';
|
|
5
5
|
import { isDeepStrictEqual } from 'node:util';
|
|
@@ -11,6 +11,15 @@ import { metadata, object, jsonCopy, validateArguments } from './schema.js';
|
|
|
11
11
|
import { matchesToolManifest } from './manifest.js';
|
|
12
12
|
import { scopedPath, within } from './paths.js';
|
|
13
13
|
import { safeToolFailure, ToolResultError } from './diagnostics.js';
|
|
14
|
+
/** Payload bytes, not transport framing: UTF-8 text/JSON, decoded images and launch JSON. */
|
|
15
|
+
function responseBytes(result) {
|
|
16
|
+
const contentBytesByType = { text: 0, json: 0, image: 0, launch: 0 };
|
|
17
|
+
for (const block of result?.content ?? []) {
|
|
18
|
+
contentBytesByType[block.type] += block.type === 'image' ? Buffer.from('data' in block ? block.data : '', 'base64').length
|
|
19
|
+
: Buffer.byteLength(block.type === 'text' ? block.text : JSON.stringify(block.type === 'json' ? block.data : { kind: 'launch', launched: block.launched }));
|
|
20
|
+
}
|
|
21
|
+
return { contentBytes: Object.values(contentBytesByType).reduce((sum, bytes) => sum + bytes, 0), contentBytesByType };
|
|
22
|
+
}
|
|
14
23
|
export function describeReviewTools({ artifacts, configManifest, audience }) {
|
|
15
24
|
if (configManifest.version !== 2 || !/^[a-f0-9]{64}$/.test(configManifest.configHash))
|
|
16
25
|
throw new Error('Unsupported stored tool manifest.');
|
|
@@ -174,17 +183,38 @@ export async function createReviewTools(options) {
|
|
|
174
183
|
throw mismatch();
|
|
175
184
|
}
|
|
176
185
|
const tools = describeReviewTools({ artifacts, configManifest, audience }), recorded = [];
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
186
|
+
let ownedBase, outputDir;
|
|
187
|
+
let scope;
|
|
188
|
+
try {
|
|
189
|
+
if (options.runDir === undefined)
|
|
190
|
+
ownedBase = await mkdtemp(join(tmpdir(), 'ccdd-tools-'));
|
|
191
|
+
const base = await externalDirectory(root, options.runDir ?? ownedBase);
|
|
192
|
+
outputDir = await mkdtemp(join(base, 'tool-output-'));
|
|
193
|
+
scope = Object.fromEntries(await Promise.all(artifacts.map(async (artifact) => [artifact.id, {
|
|
194
|
+
path: await scopedPath(root, artifact.path), children: structuredClone(artifact.children), mounts: structuredClone(artifact.mounts),
|
|
195
|
+
}])));
|
|
196
|
+
signal?.throwIfAborted();
|
|
197
|
+
}
|
|
198
|
+
catch (error) {
|
|
199
|
+
if (ownedBase ?? outputDir)
|
|
200
|
+
await rm((ownedBase ?? outputDir), { recursive: true, force: true });
|
|
201
|
+
throw error;
|
|
202
|
+
}
|
|
182
203
|
const controller = new AbortController(), active = new Set();
|
|
183
|
-
|
|
204
|
+
let closed = false, closing;
|
|
205
|
+
const close = () => {
|
|
206
|
+
closed = true;
|
|
207
|
+
controller.abort(signal?.reason);
|
|
208
|
+
signal?.removeEventListener('abort', abort);
|
|
209
|
+
return closing ??= (async () => {
|
|
210
|
+
await Promise.allSettled([...active]);
|
|
211
|
+
await rm(ownedBase ?? outputDir, { recursive: true, force: true });
|
|
212
|
+
})();
|
|
213
|
+
};
|
|
214
|
+
const abort = () => { void close().catch(() => { }); };
|
|
184
215
|
signal?.addEventListener('abort', abort, { once: true });
|
|
185
216
|
if (signal?.aborted)
|
|
186
217
|
abort();
|
|
187
|
-
let closed = false;
|
|
188
218
|
const find = (name) => { const tool = tools.find(value => value.name === name); if (!tool)
|
|
189
219
|
throw new Error('Unknown registered Artifact tool.'); return tool; };
|
|
190
220
|
const args = (name, value) => validateArguments(find(name).inputSchema, value);
|
|
@@ -221,7 +251,7 @@ export async function createReviewTools(options) {
|
|
|
221
251
|
await onCall?.(structuredClone(call));
|
|
222
252
|
return { result, call };
|
|
223
253
|
};
|
|
224
|
-
return { tools, get toolCalls() { return structuredClone(recorded); }, outputDir, validateArguments: args,
|
|
254
|
+
return { tools, get toolCalls() { return structuredClone(recorded); }, outputDir: outputDir, validateArguments: args,
|
|
225
255
|
async call(name, value = {}) {
|
|
226
256
|
if (closed)
|
|
227
257
|
return Promise.reject(new Error('Artifact tool registry is closed.'));
|
|
@@ -229,7 +259,7 @@ export async function createReviewTools(options) {
|
|
|
229
259
|
const startedAt = new Date().toISOString(), started = performance.now();
|
|
230
260
|
const task = (async () => {
|
|
231
261
|
const attempt = await invoke(tool, actual).then(value => ({ ok: true, ...value }), error => ({ ok: false, error: error }));
|
|
232
|
-
const diagnostic = { name: tool.name, artifactId: tool.artifactId, operation: tool.operation, startedAt, durationMs: performance.now() - started, outcome: attempt.ok && !attempt.result.isError ? 'success' : 'error' };
|
|
262
|
+
const diagnostic = { name: tool.name, artifactId: tool.artifactId, operation: tool.operation, startedAt, durationMs: performance.now() - started, outcome: attempt.ok && !attempt.result.isError ? 'success' : 'error', ...responseBytes(attempt.ok ? attempt.result : undefined) };
|
|
233
263
|
if (options.onExecution)
|
|
234
264
|
await bestEffortDiagnostic(() => options.onExecution(diagnostic));
|
|
235
265
|
if (!attempt.ok)
|
|
@@ -257,6 +287,6 @@ export async function createReviewTools(options) {
|
|
|
257
287
|
}
|
|
258
288
|
}));
|
|
259
289
|
},
|
|
260
|
-
|
|
290
|
+
close, };
|
|
261
291
|
}
|
|
262
292
|
//# sourceMappingURL=runner.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runner.js","sourceRoot":"","sources":["../../../src/tools/runner.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"runner.js","sourceRoot":"","sources":["../../../src/tools/runner.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import type { PiOptions } from './executors/pi.js';
|
|
2
2
|
import type { createBroker } from './broker/index.js';
|
|
3
|
-
type Broker = ReturnType<typeof createBroker
|
|
3
|
+
type Broker = ReturnType<typeof createBroker<'full'>>;
|
|
4
4
|
type Run = NonNullable<ReturnType<Broker['getRun']>>;
|
|
5
5
|
export interface WorkerConfiguration {
|
|
6
6
|
piOptions?: PiOptions;
|
|
7
7
|
humanInbox: boolean;
|
|
8
|
+
maxConcurrentExecutors?: number;
|
|
8
9
|
}
|
|
9
10
|
export interface WorkerContext {
|
|
10
11
|
repoPath: string;
|
|
@@ -14,7 +15,7 @@ export interface WorkerContext {
|
|
|
14
15
|
export interface WorkerOptions extends WorkerContext, WorkerConfiguration {
|
|
15
16
|
runId: string;
|
|
16
17
|
}
|
|
17
|
-
export declare function launchWorker({ runId, repoPath, repoId, stateDir, piOptions, humanInbox }: WorkerOptions): Promise<number | undefined>;
|
|
18
|
+
export declare function launchWorker({ runId, repoPath, repoId, stateDir, piOptions, humanInbox, maxConcurrentExecutors }: WorkerOptions): Promise<number | undefined>;
|
|
18
19
|
/** The worker accepts only saved execution settings, never arbitrary spread-in identity fields. */
|
|
19
20
|
export declare function readWorkerConfiguration(stateDir: string, runId: string): Promise<WorkerConfiguration>;
|
|
20
21
|
/** CLI and explicit monitor completion share durable, detached successor startup. */
|
|
@@ -1,10 +1,11 @@
|
|
|
1
|
+
import { positiveConcurrency } from './project/identity.js';
|
|
1
2
|
import { fork } from 'node:child_process';
|
|
2
3
|
import { fileURLToPath } from 'node:url';
|
|
3
4
|
import { mkdir, readFile, writeFile } from 'node:fs/promises';
|
|
4
5
|
import { isAbsolute, join } from 'node:path';
|
|
5
6
|
import { errorCode } from './executors/errors.js';
|
|
6
|
-
export async function launchWorker({ runId, repoPath, repoId, stateDir, piOptions, humanInbox }) {
|
|
7
|
-
const worker = fork(fileURLToPath(new URL('./worker.js', import.meta.url)), [JSON.stringify({ runId, repoPath, repoId, stateDir, piOptions, humanInbox })], {
|
|
7
|
+
export async function launchWorker({ runId, repoPath, repoId, stateDir, piOptions, humanInbox, maxConcurrentExecutors }) {
|
|
8
|
+
const worker = fork(fileURLToPath(new URL('./worker.js', import.meta.url)), [JSON.stringify({ runId, repoPath, repoId, stateDir, piOptions, humanInbox, maxConcurrentExecutors })], {
|
|
8
9
|
detached: true, stdio: ['ignore', 'ignore', 'ignore', 'ipc'], execArgv: [],
|
|
9
10
|
env: Object.fromEntries(Object.entries(process.env).filter(([key]) => key !== 'NODE_TEST_CONTEXT')),
|
|
10
11
|
});
|
|
@@ -38,8 +39,10 @@ export async function readWorkerConfiguration(stateDir, runId) {
|
|
|
38
39
|
if (!input || typeof input !== 'object' || Array.isArray(input))
|
|
39
40
|
throw new Error('Invalid saved worker configuration.');
|
|
40
41
|
const value = input;
|
|
41
|
-
if (Object.keys(value).some(key => !['piOptions', 'humanInbox'].includes(key)) || typeof value.humanInbox !== 'boolean')
|
|
42
|
+
if (Object.keys(value).some(key => !['piOptions', 'humanInbox', 'maxConcurrentExecutors'].includes(key)) || typeof value.humanInbox !== 'boolean')
|
|
42
43
|
throw new Error('Invalid saved worker configuration.');
|
|
44
|
+
if (value.maxConcurrentExecutors !== undefined)
|
|
45
|
+
positiveConcurrency(value.maxConcurrentExecutors, 'maxConcurrentExecutors');
|
|
43
46
|
let piOptions;
|
|
44
47
|
if (value.piOptions !== undefined) {
|
|
45
48
|
if (!value.piOptions || typeof value.piOptions !== 'object' || Array.isArray(value.piOptions))
|
|
@@ -56,7 +59,7 @@ export async function readWorkerConfiguration(stateDir, runId) {
|
|
|
56
59
|
}
|
|
57
60
|
}
|
|
58
61
|
}
|
|
59
|
-
return { humanInbox: value.humanInbox, ...(piOptions ? { piOptions } : {}) };
|
|
62
|
+
return { humanInbox: value.humanInbox, ...(value.maxConcurrentExecutors !== undefined ? { maxConcurrentExecutors: value.maxConcurrentExecutors } : {}), ...(piOptions ? { piOptions } : {}) };
|
|
60
63
|
}
|
|
61
64
|
/** CLI and explicit monitor completion share durable, detached successor startup. */
|
|
62
65
|
export async function ensureRunWorker({ broker, context, run, initialConfig }) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"worker-client.js","sourceRoot":"","sources":["../../src/worker-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAG7C,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAQlD,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,EAAC,KAAK,EAAC,QAAQ,EAAC,MAAM,EAAC,QAAQ,EAAC,SAAS,EAAC,UAAU,EAAe;
|
|
1
|
+
{"version":3,"file":"worker-client.js","sourceRoot":"","sources":["../../src/worker-client.ts"],"names":[],"mappings":"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"}
|
package/dist/src/worker.js
CHANGED
|
@@ -27,7 +27,7 @@ const notify = (message) => {
|
|
|
27
27
|
};
|
|
28
28
|
let notified = false;
|
|
29
29
|
try {
|
|
30
|
-
broker = await createBroker({ ...context, executors });
|
|
30
|
+
broker = await createBroker({ detail: 'full', ...context, executors });
|
|
31
31
|
await broker.run(runId, { signal: controller.signal, onStarted: () => { notified = true; notify({ type: 'ready', runId }); } });
|
|
32
32
|
if (!notified)
|
|
33
33
|
notify({ type: 'ready', runId });
|
package/dist/src/worker.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"worker.js","sourceRoot":"","sources":["../../src/worker.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAC,sBAAsB,EAAC,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAAC,uBAAuB,EAAC,MAAM,YAAY,CAAC;AAEnD,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAEhE,sFAAsF;AACtF,MAAM,OAAO,GAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAkB,CAAC;AAC3D,MAAM,EAAC,KAAK,EAAC,SAAS,EAAC,UAAU,EAAC,GAAG,OAAO,EAAC,GAAC,OAAO,CAAC;AACtD,MAAM,SAAS,GAAC,sBAAsB,CAAC,EAAC,SAAS,EAAC,YAAY,EAAC,uBAAuB,CAAC,EAAC,GAAG,OAAO,EAAC,UAAU,EAAC,CAAC,EAAC,CAAC,CAAC;AAClH,MAAM,UAAU,GAAC,IAAI,eAAe,EAAE,CAAC;AACvC,MAAM,IAAI,GAAC,GAAE,EAAE,CAAA,UAAU,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC,CAAC;AACzE,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAC,IAAI,CAAC,CAAC;AAAA,OAAO,CAAC,EAAE,CAAC,SAAS,EAAC,IAAI,CAAC,CAAC;AACrD,IAAI,
|
|
1
|
+
{"version":3,"file":"worker.js","sourceRoot":"","sources":["../../src/worker.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAC,sBAAsB,EAAC,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAAC,uBAAuB,EAAC,MAAM,YAAY,CAAC;AAEnD,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAEhE,sFAAsF;AACtF,MAAM,OAAO,GAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAkB,CAAC;AAC3D,MAAM,EAAC,KAAK,EAAC,SAAS,EAAC,UAAU,EAAC,GAAG,OAAO,EAAC,GAAC,OAAO,CAAC;AACtD,MAAM,SAAS,GAAC,sBAAsB,CAAC,EAAC,SAAS,EAAC,YAAY,EAAC,uBAAuB,CAAC,EAAC,GAAG,OAAO,EAAC,UAAU,EAAC,CAAC,EAAC,CAAC,CAAC;AAClH,MAAM,UAAU,GAAC,IAAI,eAAe,EAAE,CAAC;AACvC,MAAM,IAAI,GAAC,GAAE,EAAE,CAAA,UAAU,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC,CAAC;AACzE,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAC,IAAI,CAAC,CAAC;AAAA,OAAO,CAAC,EAAE,CAAC,SAAS,EAAC,IAAI,CAAC,CAAC;AACrD,IAAI,MAAwD,CAAC;AAC7D,MAAM,MAAM,GAAC,CAAC,OAA8B,EAAC,EAAE;IAC7C,IAAG,CAAC,OAAO,CAAC,SAAS;QAAC,OAAO;IAC7B,6EAA6E;IAC7E,IAAG,CAAC;QAAA,OAAO,CAAC,IAAI,EAAE,CAAC,OAAO,EAAC,GAAE,EAAE,GAAC,IAAG,OAAO,CAAC,SAAS,EAAC,CAAC;YAAA,IAAG,CAAC;gBAAA,OAAO,CAAC,UAAU,EAAE,CAAC;YAAA,CAAC;YAAA,MAAK,CAAC,CAAA,CAAC;QAAA,CAAC,CAAA,CAAC,CAAC,CAAC;IAAA,CAAC;IAAA,MAAK,CAAC,CAAA,CAAC;AACrG,CAAC,CAAC;AACF,IAAI,QAAQ,GAAC,KAAK,CAAC;AACnB,IAAI,CAAC;IACH,MAAM,GAAC,MAAM,YAAY,CAAC,EAAE,MAAM,EAAE,MAAM,EAAC,GAAG,OAAO,EAAC,SAAS,EAAC,CAAC,CAAC;IAClE,MAAM,MAAM,CAAC,GAAG,CAAC,KAAK,EAAC,EAAC,MAAM,EAAC,UAAU,CAAC,MAAM,EAAC,SAAS,EAAC,GAAE,EAAE,GAAC,QAAQ,GAAC,IAAI,CAAC,CAAA,MAAM,CAAC,EAAC,IAAI,EAAC,OAAO,EAAC,KAAK,EAAC,CAAC,CAAC,CAAA,CAAC,EAAC,CAAC,CAAC;IAC/G,IAAG,CAAC,QAAQ;QAAC,MAAM,CAAC,EAAC,IAAI,EAAC,OAAO,EAAC,KAAK,EAAC,CAAC,CAAC;AAC5C,CAAC;AAAC,OAAM,KAAK,EAAE,CAAC;IACd,MAAM,CAAC,EAAC,IAAI,EAAC,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,KAAK,CAAC,EAAC,IAAI,EAAC,SAAS,CAAC,KAAK,CAAC,EAAC,CAAC,CAAC;IACzE,IAAG,SAAS,CAAC,KAAK,CAAC,KAAG,mBAAmB,EAAC,CAAC;QACzC,IAAG,CAAC;YAAA,MAAM,MAAM,EAAE,OAAO,EAAE,CAAC,KAAK,EAAC,KAAK,CAAC,CAAC;QAAA,CAAC;QAAA,MAAK,CAAC,CAAA,CAAC;QACjD,OAAO,CAAC,QAAQ,GAAC,CAAC,CAAC;IACrB,CAAC;AACH,CAAC;QAAS,CAAC;IACT,MAAM,MAAM,EAAE,KAAK,EAAE,CAAC;IACtB,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAC,IAAI,CAAC,CAAC;IAAA,OAAO,CAAC,GAAG,CAAC,SAAS,EAAC,IAAI,CAAC,CAAC;AACzD,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ccdd/project",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "5.0.0",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"access": "public",
|
|
@@ -37,7 +37,7 @@
|
|
|
37
37
|
"prepack": "npm run build"
|
|
38
38
|
},
|
|
39
39
|
"peerDependencies": {
|
|
40
|
-
"@ccdd/core": ">=
|
|
40
|
+
"@ccdd/core": ">=5.0.0 <6"
|
|
41
41
|
},
|
|
42
42
|
"dependencies": {
|
|
43
43
|
"@earendil-works/pi-agent-core": "0.85.1",
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
.validation-view[data-v-27261178]{background:#fff;border:1px solid #e4e7e6;border-radius:14px;padding:24px}.validation-heading[data-v-27261178]{justify-content:space-between;align-items:center;gap:20px;display:flex}h2[data-v-27261178]{margin:0 0 8px;font-size:19px}p[data-v-27261178]{line-height:1.65}.validation-heading p[data-v-27261178],.validation-empty[data-v-27261178]{color:#67716c}.inspect-button[data-v-27261178]{color:#fff;cursor:pointer;white-space:nowrap;background:#264d40;border:0;border-radius:8px;padding:11px 18px}.inspect-button[data-v-27261178]:disabled{opacity:.55;cursor:default}.validation-summary[data-v-27261178]{border-top:1px solid #e4e7e6;padding-top:16px}.validation-summary span[data-v-27261178]{color:#67716c;font-size:12px;display:block}.validation-counts[data-v-27261178]{font-size:13px}.validation-table-wrap[data-v-27261178]{overflow-x:auto}table[data-v-27261178]{border-collapse:collapse;text-align:left;width:100%;font-size:13px}.validation-artifacts[data-v-27261178]{color:#67716c;padding-left:18px;font-size:12px;line-height:1.8}th[data-v-27261178],td[data-v-27261178]{vertical-align:top;border-bottom:1px solid #e8ecea;padding:15px 12px}thead th[data-v-27261178]{color:#67716c;font-size:12px}td p[data-v-27261178]{margin:6px 0}small[data-v-27261178]{color:#67716c;margin-top:7px;font-weight:400;display:block}.validation-status[data-v-27261178]{background:#f3efe3;border-radius:5px;padding:4px 7px;font-size:11px;display:inline-block}.validation-status.passed[data-v-27261178]{color:#246740;background:#e6f1e9}@media (max-width:650px){.validation-view[data-v-27261178]{padding:16px}.validation-heading[data-v-27261178]{flex-direction:column;align-items:flex-start}}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{A as e,B as t,N as n,X as r,a as i,b as a,f as o,h as s,it as c,j as l,l as u,m as d,n as f,nt as p,o as m,r as h,s as g,tt as _,v}from"./index-CoJ9_gC3.js";var y=[`aria-busy`],b={class:`validation-heading`},x=[`disabled`],S={key:0},C={key:1,class:`validation-empty`},w={key:2,class:`inline-error`,role:`alert`},T={class:`validation-summary`,role:`status`},E={class:`validation-counts`},D={class:`validation-artifacts`,"aria-label":`Artifact validation requirements`},O={key:0},k={class:`validation-table-wrap`},A={scope:`row`},j={key:0},M=[`onClick`],N=f(a({__name:`ValidationView`,props:{projectId:{},session:{}},emits:[`open-request`,`session-expired`],setup(a,{emit:f}){let N=a,P=f,F=r(null),I=r(!1),L=r(``),R,z=0;t(()=>N.projectId,()=>{z++,R?.abort(),F.value=null,I.value=!1,L.value=``}),e(()=>{z++,R?.abort()});async function B(){if(!N.projectId||!N.session||I.value)return;R=new AbortController;let e=++z;I.value=!0,L.value=``;try{let t=await m(`/api/projects/${encodeURIComponent(N.projectId)}/validation`,{body:{},csrfToken:N.session.csrfToken,signal:R.signal});e===z&&(F.value=t)}catch(t){if(e!==z)return;L.value=g(t),t instanceof i&&t.status===403&&P(`session-expired`)}finally{e===z&&(I.value=!1)}}let V={REUSE:`Reuse verdict`,EXECUTE:`Ready to review`,WAIT:`Execution not ready`,ACTIVE:`In progress`,FAILED:`Execution needs attention`};return(e,t)=>(l(),s(`section`,{class:`validation-view`,"aria-label":`Current input validation status`,"aria-busy":I.value},[o(`div`,b,[t[0]||=o(`div`,null,[o(`h2`,null,`Current input`),o(`p`,null,`Read the project's current configuration and files to determine the reviews needed.`)],-1),o(`button`,{type:`button`,class:`inspect-button`,disabled:!a.projectId||!a.session||I.value,onClick:B},c(I.value?`Inspecting input…`:`Inspect current input`),9,x)]),a.projectId?!F.value&&!L.value?(l(),s(`p`,C,`Select Inspect current input to see reusable verdicts and required reviews.`)):d(``,!0):(l(),s(`p`,S,`Select a project to inspect.`)),L.value?(l(),s(`p`,w,c(L.value),1)):d(``,!0),F.value?(l(),s(u,{key:3},[o(`p`,T,[o(`strong`,null,c(F.value.plan.satisfied?`PASS · All required reviews are satisfied.`:`More reviews are needed.`),1),o(`span`,null,`Observed at `+c(_(h)(F.value.observedAt))+` · Inspect again after editing files or completing reviews.`,1)]),o(`p`,E,`Reuse `+c(F.value.plan.counts.reuse)+` · Ready to review `+c(F.value.plan.counts.execute)+` · Execution not ready `+c(F.value.plan.counts.wait),1),o(`ul`,D,[(l(!0),s(u,null,n(F.value.plan.artifacts,e=>(l(),s(`li`,{key:e.id},[o(`strong`,null,c(e.id),1),v(` · `+c(e.status)+` · `+c(e.passed)+`/`+c(e.total)+` Critics passed`,1),e.status===`UNREVIEWED`&&!e.total?(l(),s(`span`,O,` · No Critics or explicit basis`)):d(``,!0)]))),128))]),o(`div`,k,[o(`table`,null,[t[1]||=o(`thead`,null,[o(`tr`,null,[o(`th`,{scope:`col`},`Critic / Target`),o(`th`,{scope:`col`},`Status`),o(`th`,{scope:`col`},`Next action and reason`)])],-1),o(`tbody`,null,[(l(!0),s(u,null,n(F.value.plan.items,e=>(l(),s(`tr`,{key:e.id},[o(`th`,A,[v(c(e.title),1),o(`small`,null,c(e.id)+` → `+c(e.target),1)]),o(`td`,null,[o(`span`,{class:p([`validation-status`,{passed:e.status===`PASS`}])},c(e.status),3)]),o(`td`,null,[o(`strong`,null,c(V[e.action]),1),o(`p`,null,c(e.reason),1),e.blockedBy.length?(l(),s(`p`,j,`Final validation still needs: `+c(e.blockedBy.join(`, `))+`. This does not delay this Critic's execution.`,1)):d(``,!0),e.result?(l(),s(`button`,{key:1,type:`button`,class:`text-button`,onClick:t=>P(`open-request`,{projectId:a.projectId,id:e.result.requestId})},`View recorded verdict · `+c(_(h)(e.result.completedAt)),9,M)):d(``,!0)])]))),128))])])])],64)):d(``,!0)],8,y))}}),[[`__scopeId`,`data-v-27261178`]]);export{N as default};
|