@principles/pd-cli 1.93.0 → 1.95.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/commands/diagnose.d.ts.map +1 -1
- package/dist/commands/diagnose.js +18 -16
- package/dist/commands/diagnose.js.map +1 -1
- package/dist/commands/pain-record.d.ts.map +1 -1
- package/dist/commands/pain-record.js +14 -3
- package/dist/commands/pain-record.js.map +1 -1
- package/dist/commands/pain-retry.d.ts.map +1 -1
- package/dist/commands/pain-retry.js +24 -16
- package/dist/commands/pain-retry.js.map +1 -1
- package/dist/services/console-launcher.js +1 -1
- package/dist/services/console-launcher.js.map +1 -1
- package/dist/services/pain-flood-simulation-runner.d.ts.map +1 -1
- package/dist/services/pain-flood-simulation-runner.js +95 -10
- package/dist/services/pain-flood-simulation-runner.js.map +1 -1
- package/dist/services/synthetic-baseline-runner.d.ts.map +1 -1
- package/dist/services/synthetic-baseline-runner.js +97 -6
- package/dist/services/synthetic-baseline-runner.js.map +1 -1
- package/package.json +1 -1
- package/src/commands/diagnose.ts +32 -18
- package/src/commands/pain-record.ts +15 -3
- package/src/commands/pain-retry.ts +41 -18
- package/src/services/console-launcher.ts +1 -1
- package/src/services/pain-flood-simulation-runner.ts +109 -10
- package/src/services/synthetic-baseline-runner.ts +111 -9
- package/tests/commands/console-open.test.ts +9 -0
- package/tests/commands/diagnose.test.ts +14 -4
- package/tests/commands/pain-record-async.test.ts +76 -1
- package/tests/commands/pain-retry.test.ts +13 -2
- package/tests/e2e/candidate-intake-e2e.test.ts +25 -4
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"synthetic-baseline-runner.d.ts","sourceRoot":"","sources":["../../src/services/synthetic-baseline-runner.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"synthetic-baseline-runner.d.ts","sourceRoot":"","sources":["../../src/services/synthetic-baseline-runner.ts"],"names":[],"mappings":"AA8BA,OAAO,KAAK,EACV,wBAAwB,EAGxB,0BAA0B,EAC3B,MAAM,6BAA6B,CAAC;AAErC,MAAM,WAAW,8BAA8B;IAC7C,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,GAAG,oBAAoB,CAAC;IAC7C,cAAc,CAAC,EAAE,0BAA0B,CAAC;CAC7C;AAED,wBAAsB,oBAAoB,CAAC,IAAI,EAAE,8BAA8B,GAAG,OAAO,CAAC,wBAAwB,CAAC,CA6VlH"}
|
|
@@ -4,8 +4,7 @@ import { RuntimeStateManager } from '@principles/core/runtime-v2';
|
|
|
4
4
|
import { SqliteContextAssembler } from '@principles/core/runtime-v2';
|
|
5
5
|
import { SqliteHistoryQuery } from '@principles/core/runtime-v2';
|
|
6
6
|
import { StoreEventEmitter } from '@principles/core/runtime-v2';
|
|
7
|
-
import {
|
|
8
|
-
import { PassThroughValidator } from '@principles/core/runtime-v2';
|
|
7
|
+
import { SplitDiagnosticianRunner, DiagRootCauseRunner, DiagDistillerRunner, DiagRouterRunner, DefaultDiagRootCauseValidator, DefaultDiagDistillerValidator, } from '@principles/core/runtime-v2';
|
|
9
8
|
import { SqliteDiagnosticianCommitter } from '@principles/core/runtime-v2';
|
|
10
9
|
import { TestDoubleRuntimeAdapter } from '@principles/core/runtime-v2';
|
|
11
10
|
import { PainSignalBridge } from '@principles/core/runtime-v2';
|
|
@@ -47,14 +46,98 @@ export async function runSyntheticBaseline(opts) {
|
|
|
47
46
|
const contextAssembler = new SqliteContextAssembler(taskStore, historyQuery, runStore);
|
|
48
47
|
const eventEmitter = new StoreEventEmitter();
|
|
49
48
|
const committer = new SqliteDiagnosticianCommitter(sqliteConn);
|
|
50
|
-
const
|
|
51
|
-
|
|
52
|
-
|
|
49
|
+
const runIdToTaskId = new Map();
|
|
50
|
+
let runCounter = 0;
|
|
51
|
+
// Single test-double adapter handles all pains with stage-aware output
|
|
52
|
+
const runtimeAdapter = new TestDoubleRuntimeAdapter({
|
|
53
|
+
onStartRun: (input) => {
|
|
54
|
+
runCounter += 1;
|
|
55
|
+
const runId = `td-${runCounter}`;
|
|
56
|
+
const taskId = input.taskRef?.taskId ?? '';
|
|
57
|
+
runIdToTaskId.set(runId, taskId);
|
|
58
|
+
return {
|
|
59
|
+
runId,
|
|
60
|
+
runtimeKind: 'test-double',
|
|
61
|
+
startedAt: new Date().toISOString(),
|
|
62
|
+
};
|
|
63
|
+
},
|
|
64
|
+
onFetchOutput: async (runId) => {
|
|
65
|
+
const taskId = runIdToTaskId.get(runId) ?? '';
|
|
66
|
+
if (taskId.includes('diag_rootcause')) {
|
|
67
|
+
return {
|
|
68
|
+
runId,
|
|
69
|
+
payload: {
|
|
70
|
+
valid: true,
|
|
71
|
+
diagnosisId: `diag-${runId}`,
|
|
72
|
+
taskId,
|
|
73
|
+
summary: 'Mock rootcause summary for synthetic-baseline',
|
|
74
|
+
causalChain: [{ why: 1, statement: 'why', evidenceRefs: ['ref-1'] }],
|
|
75
|
+
rootCause: 'Design: Mock rootcause',
|
|
76
|
+
rootCauseCategory: 'Design',
|
|
77
|
+
evidence: [{ sourceRef: 'ref-1', note: 'note' }],
|
|
78
|
+
confidence: 0.9,
|
|
79
|
+
},
|
|
80
|
+
};
|
|
81
|
+
}
|
|
82
|
+
else if (taskId.includes('diag_distiller')) {
|
|
83
|
+
const parentTaskId = taskId.replace('diag_distiller-', '');
|
|
84
|
+
const stageATaskId = `diag_rootcause-${parentTaskId}`;
|
|
85
|
+
const artifacts = stateManager
|
|
86
|
+
? await stateManager.piArtifactStore.listBySourceTaskId(stageATaskId)
|
|
87
|
+
: [];
|
|
88
|
+
const sourceRootCauseArtifactId = artifacts[0]?.artifactId ?? 'art-rc';
|
|
89
|
+
return {
|
|
90
|
+
runId,
|
|
91
|
+
payload: {
|
|
92
|
+
valid: true,
|
|
93
|
+
taskId,
|
|
94
|
+
sourceRootCauseArtifactId,
|
|
95
|
+
abstractedPrinciple: 'Mock abstracted principle',
|
|
96
|
+
rationale: 'Mock rationale',
|
|
97
|
+
groundedOnCorePrincipleIds: ['T-01'],
|
|
98
|
+
scope: 'domain',
|
|
99
|
+
confidence: 0.9,
|
|
100
|
+
},
|
|
101
|
+
};
|
|
102
|
+
}
|
|
103
|
+
else {
|
|
104
|
+
return {
|
|
105
|
+
runId,
|
|
106
|
+
payload: diagnosticianOutput,
|
|
107
|
+
};
|
|
108
|
+
}
|
|
109
|
+
},
|
|
110
|
+
});
|
|
111
|
+
const rootCauseRunner = new DiagRootCauseRunner({
|
|
53
112
|
stateManager,
|
|
113
|
+
runtimeAdapter,
|
|
114
|
+
eventEmitter,
|
|
115
|
+
artifactStore: stateManager.piArtifactStore,
|
|
116
|
+
validator: new DefaultDiagRootCauseValidator(),
|
|
54
117
|
contextAssembler,
|
|
118
|
+
}, {
|
|
119
|
+
owner: 'synthetic-baseline',
|
|
120
|
+
runtimeKind: 'test-double',
|
|
121
|
+
pollIntervalMs: 50,
|
|
122
|
+
timeoutMs: 10000,
|
|
123
|
+
});
|
|
124
|
+
const distillerRunner = new DiagDistillerRunner({
|
|
125
|
+
stateManager,
|
|
126
|
+
runtimeAdapter,
|
|
127
|
+
eventEmitter,
|
|
128
|
+
artifactStore: stateManager.piArtifactStore,
|
|
129
|
+
validator: new DefaultDiagDistillerValidator(),
|
|
130
|
+
}, {
|
|
131
|
+
owner: 'synthetic-baseline',
|
|
132
|
+
runtimeKind: 'test-double',
|
|
133
|
+
pollIntervalMs: 50,
|
|
134
|
+
timeoutMs: 10000,
|
|
135
|
+
});
|
|
136
|
+
const routerRunner = new DiagRouterRunner({
|
|
137
|
+
stateManager,
|
|
55
138
|
runtimeAdapter,
|
|
56
139
|
eventEmitter,
|
|
57
|
-
|
|
140
|
+
artifactStore: stateManager.piArtifactStore,
|
|
58
141
|
committer,
|
|
59
142
|
}, {
|
|
60
143
|
owner: 'synthetic-baseline',
|
|
@@ -62,6 +145,14 @@ export async function runSyntheticBaseline(opts) {
|
|
|
62
145
|
pollIntervalMs: 50,
|
|
63
146
|
timeoutMs: 10000,
|
|
64
147
|
});
|
|
148
|
+
const runner = new SplitDiagnosticianRunner({
|
|
149
|
+
rootCauseRunner,
|
|
150
|
+
distillerRunner,
|
|
151
|
+
routerRunner,
|
|
152
|
+
stateManager,
|
|
153
|
+
committer,
|
|
154
|
+
perStageTimeoutMs: 10000,
|
|
155
|
+
});
|
|
65
156
|
const ledgerAdapter = new PrincipleTreeLedgerAdapter({ stateDir });
|
|
66
157
|
const intakeService = new CandidateIntakeService({ stateManager, ledgerAdapter });
|
|
67
158
|
const bridge = new PainSignalBridge({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"synthetic-baseline-runner.js","sourceRoot":"","sources":["../../src/services/synthetic-baseline-runner.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"synthetic-baseline-runner.js","sourceRoot":"","sources":["../../src/services/synthetic-baseline-runner.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/src/commands/diagnose.ts
CHANGED
|
@@ -14,8 +14,14 @@ import {
|
|
|
14
14
|
SqliteSourceTraceLocator,
|
|
15
15
|
StoreEventEmitter,
|
|
16
16
|
storeEmitter,
|
|
17
|
-
|
|
18
|
-
|
|
17
|
+
SplitDiagnosticianRunner,
|
|
18
|
+
DiagRootCauseRunner,
|
|
19
|
+
DiagDistillerRunner,
|
|
20
|
+
DiagRouterRunner,
|
|
21
|
+
DefaultDiagRootCauseValidator,
|
|
22
|
+
DefaultDiagDistillerValidator,
|
|
23
|
+
DisabledDiagnosticianRunner,
|
|
24
|
+
type DiagnosticianRunnerLike,
|
|
19
25
|
TestDoubleRuntimeAdapter,
|
|
20
26
|
OpenClawCliRuntimeAdapter,
|
|
21
27
|
PiAiRuntimeAdapter,
|
|
@@ -295,24 +301,32 @@ export async function handleDiagnoseRun(opts: DiagnoseRunOptions): Promise<void>
|
|
|
295
301
|
const isSplitPipeline = isFeatureEnabled(featureFlags, 'diagnostician_split_pipeline');
|
|
296
302
|
const pipelineTimeoutMs = isSplitPipeline ? SPLIT_PIPELINE_TOTAL_TIMEOUT_MS : 300_000;
|
|
297
303
|
|
|
298
|
-
|
|
299
|
-
|
|
304
|
+
let runner: DiagnosticianRunnerLike;
|
|
305
|
+
if (isSplitPipeline) {
|
|
306
|
+
const rootCauseRunner = new DiagRootCauseRunner(
|
|
307
|
+
{ stateManager, runtimeAdapter, eventEmitter, artifactStore: stateManager.piArtifactStore, validator: new DefaultDiagRootCauseValidator(), contextAssembler },
|
|
308
|
+
{ owner: 'pd-cli-diagnose', runtimeKind, outputLanguage },
|
|
309
|
+
);
|
|
310
|
+
const distillerRunner = new DiagDistillerRunner(
|
|
311
|
+
{ stateManager, runtimeAdapter, eventEmitter, artifactStore: stateManager.piArtifactStore, validator: new DefaultDiagDistillerValidator() },
|
|
312
|
+
{ owner: 'pd-cli-diagnose', runtimeKind, outputLanguage },
|
|
313
|
+
);
|
|
314
|
+
const routerRunner = new DiagRouterRunner(
|
|
315
|
+
{ stateManager, runtimeAdapter, eventEmitter, artifactStore: stateManager.piArtifactStore, committer },
|
|
316
|
+
{ owner: 'pd-cli-diagnose', runtimeKind, outputLanguage },
|
|
317
|
+
);
|
|
318
|
+
|
|
319
|
+
runner = new SplitDiagnosticianRunner({
|
|
320
|
+
rootCauseRunner,
|
|
321
|
+
distillerRunner,
|
|
322
|
+
routerRunner,
|
|
300
323
|
stateManager,
|
|
301
|
-
contextAssembler,
|
|
302
|
-
runtimeAdapter,
|
|
303
|
-
eventEmitter,
|
|
304
|
-
validator: new DefaultDiagnosticianValidator(),
|
|
305
324
|
committer,
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
timeoutMs: pipelineTimeoutMs,
|
|
312
|
-
agentId: opts.agent,
|
|
313
|
-
outputLanguage,
|
|
314
|
-
},
|
|
315
|
-
);
|
|
325
|
+
perStageTimeoutMs: pipelineTimeoutMs / 3,
|
|
326
|
+
});
|
|
327
|
+
} else {
|
|
328
|
+
runner = new DisabledDiagnosticianRunner();
|
|
329
|
+
}
|
|
316
330
|
|
|
317
331
|
if (!opts.json) {
|
|
318
332
|
console.log(`\nRunning diagnostician for task: ${opts.taskId}`);
|
|
@@ -163,12 +163,23 @@ export async function handlePainRecord(opts: RecordOptions): Promise<void> {
|
|
|
163
163
|
|
|
164
164
|
if (result.message) console.error(` Details: ${result.message}`);
|
|
165
165
|
process.exit(1);
|
|
166
|
+
return;
|
|
166
167
|
}
|
|
167
168
|
}
|
|
168
169
|
|
|
169
170
|
if (opts.json) {
|
|
170
|
-
|
|
171
|
-
|
|
171
|
+
const out = { ...result };
|
|
172
|
+
// Ensure nextAction is present for actionable states
|
|
173
|
+
if (out.status === 'submitted') {
|
|
174
|
+
if (!out.nextAction) {
|
|
175
|
+
out.nextAction = `pd diagnose run --task-id ${out.taskId} --workspace "${workspaceDir}"`;
|
|
176
|
+
}
|
|
177
|
+
}
|
|
178
|
+
console.log(JSON.stringify(out, null, 2));
|
|
179
|
+
if (result.status !== 'succeeded' && result.status !== 'skipped' && result.status !== 'retried' && result.status !== 'submitted') {
|
|
180
|
+
process.exit(1);
|
|
181
|
+
return;
|
|
182
|
+
}
|
|
172
183
|
} else {
|
|
173
184
|
if (result.status === 'succeeded') {
|
|
174
185
|
console.log('[OK] Pain signal recorded via PainToPrincipleService');
|
|
@@ -190,7 +201,7 @@ export async function handlePainRecord(opts: RecordOptions): Promise<void> {
|
|
|
190
201
|
console.log(` Pain ID: ${result.painId}`);
|
|
191
202
|
console.log(` Task ID: ${result.taskId}`);
|
|
192
203
|
console.log(` Status: submitted`);
|
|
193
|
-
console.log(` Next action: pd task
|
|
204
|
+
console.log(` Next action: pd diagnose run --task-id ${result.taskId} --workspace "${workspaceDir}"`);
|
|
194
205
|
if (result.latencyMs !== undefined) console.log(` Submit latency: ${result.latencyMs}ms`);
|
|
195
206
|
} else if (result.status === 'skipped') {
|
|
196
207
|
console.log(`[SKIP] Task already in progress: ${result.message ?? 'unknown'}`);
|
|
@@ -203,6 +214,7 @@ export async function handlePainRecord(opts: RecordOptions): Promise<void> {
|
|
|
203
214
|
} else {
|
|
204
215
|
console.error('[FAIL] Pain signal failed:', result.message);
|
|
205
216
|
process.exit(1);
|
|
217
|
+
return;
|
|
206
218
|
}
|
|
207
219
|
}
|
|
208
220
|
}
|
|
@@ -18,8 +18,14 @@ import {
|
|
|
18
18
|
SqliteTrajectoryLocator,
|
|
19
19
|
SqliteSourceTraceLocator,
|
|
20
20
|
StoreEventEmitter,
|
|
21
|
-
|
|
22
|
-
|
|
21
|
+
SplitDiagnosticianRunner,
|
|
22
|
+
DiagRootCauseRunner,
|
|
23
|
+
DiagDistillerRunner,
|
|
24
|
+
DiagRouterRunner,
|
|
25
|
+
DefaultDiagRootCauseValidator,
|
|
26
|
+
DefaultDiagDistillerValidator,
|
|
27
|
+
DisabledDiagnosticianRunner,
|
|
28
|
+
type DiagnosticianRunnerLike,
|
|
23
29
|
TestDoubleRuntimeAdapter,
|
|
24
30
|
OpenClawCliRuntimeAdapter,
|
|
25
31
|
PiAiRuntimeAdapter,
|
|
@@ -28,8 +34,11 @@ import {
|
|
|
28
34
|
isRuntimeConfigError,
|
|
29
35
|
CandidateIntakeService,
|
|
30
36
|
run as diagnoseRun,
|
|
37
|
+
isFeatureEnabled,
|
|
38
|
+
SPLIT_PIPELINE_TOTAL_TIMEOUT_MS,
|
|
31
39
|
} from '@principles/core/runtime-v2';
|
|
32
40
|
import type { PDRuntimeAdapter, RuntimeConfig, OutputLanguage } from '@principles/core/runtime-v2';
|
|
41
|
+
import { loadPdConfig, computeFlagsFromLoadResult } from '../services/pd-config-loader.js';
|
|
33
42
|
import type { PDTaskStatus } from '@principles/core/runtime-v2';
|
|
34
43
|
import { PrincipleTreeLedgerAdapter } from '../principle-tree-ledger-adapter.js';
|
|
35
44
|
import { readOutputLanguageFromWorkspace } from '../config-reader.js';
|
|
@@ -368,24 +377,38 @@ export async function handlePainRetry(opts: PainRetryOptions): Promise<void> {
|
|
|
368
377
|
const outputLangResult = readOutputLanguageFromWorkspace(workspaceDir);
|
|
369
378
|
const outputLanguage: OutputLanguage | undefined = outputLangResult.outputLanguage;
|
|
370
379
|
|
|
371
|
-
|
|
372
|
-
|
|
380
|
+
// Check if split pipeline is enabled — 3 serial LLM calls need more time
|
|
381
|
+
const configLoadResult = loadPdConfig(workspaceDir);
|
|
382
|
+
const featureFlags = computeFlagsFromLoadResult(configLoadResult);
|
|
383
|
+
const isSplitPipeline = isFeatureEnabled(featureFlags, 'diagnostician_split_pipeline');
|
|
384
|
+
const pipelineTimeoutMs = isSplitPipeline ? SPLIT_PIPELINE_TOTAL_TIMEOUT_MS : 300_000;
|
|
385
|
+
|
|
386
|
+
let runner: DiagnosticianRunnerLike;
|
|
387
|
+
if (isSplitPipeline) {
|
|
388
|
+
const rootCauseRunner = new DiagRootCauseRunner(
|
|
389
|
+
{ stateManager, runtimeAdapter, eventEmitter, artifactStore: stateManager.piArtifactStore, validator: new DefaultDiagRootCauseValidator(), contextAssembler },
|
|
390
|
+
{ owner: 'pd-cli-pain-retry', runtimeKind, outputLanguage },
|
|
391
|
+
);
|
|
392
|
+
const distillerRunner = new DiagDistillerRunner(
|
|
393
|
+
{ stateManager, runtimeAdapter, eventEmitter, artifactStore: stateManager.piArtifactStore, validator: new DefaultDiagDistillerValidator() },
|
|
394
|
+
{ owner: 'pd-cli-pain-retry', runtimeKind, outputLanguage },
|
|
395
|
+
);
|
|
396
|
+
const routerRunner = new DiagRouterRunner(
|
|
397
|
+
{ stateManager, runtimeAdapter, eventEmitter, artifactStore: stateManager.piArtifactStore, committer },
|
|
398
|
+
{ owner: 'pd-cli-pain-retry', runtimeKind, outputLanguage },
|
|
399
|
+
);
|
|
400
|
+
|
|
401
|
+
runner = new SplitDiagnosticianRunner({
|
|
402
|
+
rootCauseRunner,
|
|
403
|
+
distillerRunner,
|
|
404
|
+
routerRunner,
|
|
373
405
|
stateManager,
|
|
374
|
-
contextAssembler,
|
|
375
|
-
runtimeAdapter,
|
|
376
|
-
eventEmitter,
|
|
377
|
-
validator: new DefaultDiagnosticianValidator(),
|
|
378
406
|
committer,
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
timeoutMs: 300_000,
|
|
385
|
-
agentId: opts.agent,
|
|
386
|
-
outputLanguage,
|
|
387
|
-
},
|
|
388
|
-
);
|
|
407
|
+
perStageTimeoutMs: pipelineTimeoutMs / 3,
|
|
408
|
+
});
|
|
409
|
+
} else {
|
|
410
|
+
runner = new DisabledDiagnosticianRunner();
|
|
411
|
+
}
|
|
389
412
|
|
|
390
413
|
if (!opts.json) {
|
|
391
414
|
console.log(`\nRetrying diagnosis for pain: ${opts.painId}`);
|
|
@@ -56,7 +56,7 @@ const PORT_FALLBACK_LIMIT = 20; // try 3100..3119 before giving up
|
|
|
56
56
|
|
|
57
57
|
/** Returns true if the host resolves to a loopback address. */
|
|
58
58
|
export function isLoopbackHost(host: string): boolean {
|
|
59
|
-
if (host === 'localhost' || host === '127.0.0.1' || host === '::1' || host === '[::1]') return true;
|
|
59
|
+
if (host === 'localhost' || host === '127.0.0.1' || host === '::1' || host === '[::1]' || host === '0:0:0:0:0:0:0:1' || host === '[0:0:0:0:0:0:0:1]') return true;
|
|
60
60
|
// Reject any IPv4 host that doesn't start with 127.
|
|
61
61
|
if (/^127\./.test(host)) return true;
|
|
62
62
|
return false;
|
|
@@ -4,8 +4,14 @@ import { RuntimeStateManager } from '@principles/core/runtime-v2';
|
|
|
4
4
|
import { SqliteContextAssembler } from '@principles/core/runtime-v2';
|
|
5
5
|
import { SqliteHistoryQuery } from '@principles/core/runtime-v2';
|
|
6
6
|
import { StoreEventEmitter } from '@principles/core/runtime-v2';
|
|
7
|
-
import {
|
|
8
|
-
|
|
7
|
+
import {
|
|
8
|
+
SplitDiagnosticianRunner,
|
|
9
|
+
DiagRootCauseRunner,
|
|
10
|
+
DiagDistillerRunner,
|
|
11
|
+
DiagRouterRunner,
|
|
12
|
+
DefaultDiagRootCauseValidator,
|
|
13
|
+
DefaultDiagDistillerValidator,
|
|
14
|
+
} from '@principles/core/runtime-v2';
|
|
9
15
|
import { SqliteDiagnosticianCommitter } from '@principles/core/runtime-v2';
|
|
10
16
|
import { TestDoubleRuntimeAdapter } from '@principles/core/runtime-v2';
|
|
11
17
|
import { PainSignalBridge } from '@principles/core/runtime-v2';
|
|
@@ -170,23 +176,107 @@ export async function runPainFloodSimulation(opts: PainFloodSimulationRunnerOpti
|
|
|
170
176
|
const contextAssembler = new SqliteContextAssembler(taskStore, historyQuery, runStore);
|
|
171
177
|
const eventEmitter = new StoreEventEmitter();
|
|
172
178
|
const committer = new SqliteDiagnosticianCommitter(sqliteConn);
|
|
173
|
-
const
|
|
179
|
+
const runIdToTaskId = new Map<string, string>();
|
|
180
|
+
let runCounter = 0;
|
|
174
181
|
|
|
175
|
-
// Single test-double adapter handles all pains with
|
|
182
|
+
// Single test-double adapter handles all pains with stage-aware output
|
|
176
183
|
const runtimeAdapter = new TestDoubleRuntimeAdapter({
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
184
|
+
onStartRun: (input) => {
|
|
185
|
+
runCounter += 1;
|
|
186
|
+
const runId = `td-${runCounter}`;
|
|
187
|
+
const taskId = input.taskRef?.taskId ?? '';
|
|
188
|
+
runIdToTaskId.set(runId, taskId);
|
|
189
|
+
return {
|
|
190
|
+
runId,
|
|
191
|
+
runtimeKind: 'test-double',
|
|
192
|
+
startedAt: new Date().toISOString(),
|
|
193
|
+
};
|
|
194
|
+
},
|
|
195
|
+
onFetchOutput: async (runId: string) => {
|
|
196
|
+
const taskId = runIdToTaskId.get(runId) ?? '';
|
|
197
|
+
if (taskId.includes('diag_rootcause')) {
|
|
198
|
+
return {
|
|
199
|
+
runId,
|
|
200
|
+
payload: {
|
|
201
|
+
valid: true,
|
|
202
|
+
diagnosisId: `diag-${runId}`,
|
|
203
|
+
taskId,
|
|
204
|
+
summary: 'Mock rootcause summary for pain-flood-simulation',
|
|
205
|
+
causalChain: [{ why: 1, statement: 'why', evidenceRefs: ['ref-1'] }],
|
|
206
|
+
rootCause: 'Design: Mock rootcause',
|
|
207
|
+
rootCauseCategory: 'Design',
|
|
208
|
+
evidence: [{ sourceRef: 'ref-1', note: 'note' }],
|
|
209
|
+
confidence: 0.9,
|
|
210
|
+
},
|
|
211
|
+
};
|
|
212
|
+
} else if (taskId.includes('diag_distiller')) {
|
|
213
|
+
const parentTaskId = taskId.replace('diag_distiller-', '');
|
|
214
|
+
const stageATaskId = `diag_rootcause-${parentTaskId}`;
|
|
215
|
+
const artifacts = stateManager
|
|
216
|
+
? await stateManager.piArtifactStore.listBySourceTaskId(stageATaskId)
|
|
217
|
+
: [];
|
|
218
|
+
const sourceRootCauseArtifactId = artifacts[0]?.artifactId ?? 'art-rc';
|
|
219
|
+
return {
|
|
220
|
+
runId,
|
|
221
|
+
payload: {
|
|
222
|
+
valid: true,
|
|
223
|
+
taskId,
|
|
224
|
+
sourceRootCauseArtifactId,
|
|
225
|
+
abstractedPrinciple: 'Mock abstracted principle',
|
|
226
|
+
rationale: 'Mock rationale',
|
|
227
|
+
groundedOnCorePrincipleIds: ['T-01'],
|
|
228
|
+
scope: 'domain',
|
|
229
|
+
confidence: 0.9,
|
|
230
|
+
},
|
|
231
|
+
};
|
|
232
|
+
} else {
|
|
233
|
+
return {
|
|
234
|
+
runId,
|
|
235
|
+
payload: makeDeterministicDiagnosticianOutput(runId),
|
|
236
|
+
};
|
|
237
|
+
}
|
|
238
|
+
},
|
|
181
239
|
});
|
|
182
240
|
|
|
183
|
-
const
|
|
241
|
+
const rootCauseRunner = new DiagRootCauseRunner(
|
|
184
242
|
{
|
|
185
243
|
stateManager,
|
|
244
|
+
runtimeAdapter,
|
|
245
|
+
eventEmitter,
|
|
246
|
+
artifactStore: stateManager.piArtifactStore,
|
|
247
|
+
validator: new DefaultDiagRootCauseValidator(),
|
|
186
248
|
contextAssembler,
|
|
249
|
+
},
|
|
250
|
+
{
|
|
251
|
+
owner: 'pain-flood-simulation',
|
|
252
|
+
runtimeKind: 'test-double',
|
|
253
|
+
pollIntervalMs: 50,
|
|
254
|
+
timeoutMs: 10000,
|
|
255
|
+
},
|
|
256
|
+
);
|
|
257
|
+
|
|
258
|
+
const distillerRunner = new DiagDistillerRunner(
|
|
259
|
+
{
|
|
260
|
+
stateManager,
|
|
187
261
|
runtimeAdapter,
|
|
188
262
|
eventEmitter,
|
|
189
|
-
|
|
263
|
+
artifactStore: stateManager.piArtifactStore,
|
|
264
|
+
validator: new DefaultDiagDistillerValidator(),
|
|
265
|
+
},
|
|
266
|
+
{
|
|
267
|
+
owner: 'pain-flood-simulation',
|
|
268
|
+
runtimeKind: 'test-double',
|
|
269
|
+
pollIntervalMs: 50,
|
|
270
|
+
timeoutMs: 10000,
|
|
271
|
+
},
|
|
272
|
+
);
|
|
273
|
+
|
|
274
|
+
const routerRunner = new DiagRouterRunner(
|
|
275
|
+
{
|
|
276
|
+
stateManager,
|
|
277
|
+
runtimeAdapter,
|
|
278
|
+
eventEmitter,
|
|
279
|
+
artifactStore: stateManager.piArtifactStore,
|
|
190
280
|
committer,
|
|
191
281
|
},
|
|
192
282
|
{
|
|
@@ -197,6 +287,15 @@ export async function runPainFloodSimulation(opts: PainFloodSimulationRunnerOpti
|
|
|
197
287
|
},
|
|
198
288
|
);
|
|
199
289
|
|
|
290
|
+
const runner = new SplitDiagnosticianRunner({
|
|
291
|
+
rootCauseRunner,
|
|
292
|
+
distillerRunner,
|
|
293
|
+
routerRunner,
|
|
294
|
+
stateManager,
|
|
295
|
+
committer,
|
|
296
|
+
perStageTimeoutMs: 10000,
|
|
297
|
+
});
|
|
298
|
+
|
|
200
299
|
const ledgerAdapter = new PrincipleTreeLedgerAdapter({ stateDir });
|
|
201
300
|
const intakeService = new CandidateIntakeService({ stateManager, ledgerAdapter });
|
|
202
301
|
|