@principles/core 1.274.2 → 1.274.4
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/runtime-v2/__tests__/pain-signal-runtime-factory-edge-cases.test.js +4 -1
- package/dist/runtime-v2/__tests__/pain-signal-runtime-factory-edge-cases.test.js.map +1 -1
- package/dist/runtime-v2/__tests__/pri638-diagnostician-capability-characterization.test.d.ts +27 -0
- package/dist/runtime-v2/__tests__/pri638-diagnostician-capability-characterization.test.d.ts.map +1 -0
- package/dist/runtime-v2/__tests__/pri638-diagnostician-capability-characterization.test.js +449 -0
- package/dist/runtime-v2/__tests__/pri638-diagnostician-capability-characterization.test.js.map +1 -0
- package/dist/runtime-v2/__tests__/pri638-p1d-error-classification.test.d.ts +2 -0
- package/dist/runtime-v2/__tests__/pri638-p1d-error-classification.test.d.ts.map +1 -0
- package/dist/runtime-v2/__tests__/pri638-p1d-error-classification.test.js +116 -0
- package/dist/runtime-v2/__tests__/pri638-p1d-error-classification.test.js.map +1 -0
- package/dist/runtime-v2/config/__tests__/pd-config-pri638-cutover.test.d.ts +2 -0
- package/dist/runtime-v2/config/__tests__/pd-config-pri638-cutover.test.d.ts.map +1 -0
- package/dist/runtime-v2/config/__tests__/pd-config-pri638-cutover.test.js +99 -0
- package/dist/runtime-v2/config/__tests__/pd-config-pri638-cutover.test.js.map +1 -0
- package/dist/runtime-v2/config/pd-config-effective.d.ts.map +1 -1
- package/dist/runtime-v2/config/pd-config-effective.js +34 -0
- package/dist/runtime-v2/config/pd-config-effective.js.map +1 -1
- package/dist/runtime-v2/diagnostician-capability.d.ts +47 -0
- package/dist/runtime-v2/diagnostician-capability.d.ts.map +1 -0
- package/dist/runtime-v2/diagnostician-capability.js +53 -0
- package/dist/runtime-v2/diagnostician-capability.js.map +1 -0
- package/dist/runtime-v2/index.d.ts +1 -0
- package/dist/runtime-v2/index.d.ts.map +1 -1
- package/dist/runtime-v2/index.js +2 -0
- package/dist/runtime-v2/index.js.map +1 -1
- package/dist/runtime-v2/internalization/__tests__/diag-chain-e2e.test.js +18 -5
- package/dist/runtime-v2/internalization/__tests__/diag-chain-e2e.test.js.map +1 -1
- package/dist/runtime-v2/internalization/evaluator-runner.js.map +1 -1
- package/dist/runtime-v2/pain-signal-bridge.d.ts +25 -0
- package/dist/runtime-v2/pain-signal-bridge.d.ts.map +1 -1
- package/dist/runtime-v2/pain-signal-bridge.js +67 -0
- package/dist/runtime-v2/pain-signal-bridge.js.map +1 -1
- package/dist/runtime-v2/pain-signal-runtime-factory.d.ts +32 -12
- package/dist/runtime-v2/pain-signal-runtime-factory.d.ts.map +1 -1
- package/dist/runtime-v2/pain-signal-runtime-factory.js +113 -46
- package/dist/runtime-v2/pain-signal-runtime-factory.js.map +1 -1
- package/dist/runtime-v2/pain-to-principle-service.d.ts +7 -1
- package/dist/runtime-v2/pain-to-principle-service.d.ts.map +1 -1
- package/dist/runtime-v2/pain-to-principle-service.js +25 -0
- package/dist/runtime-v2/pain-to-principle-service.js.map +1 -1
- package/dist/runtime-v2/runner/runner-result.d.ts +6 -0
- package/dist/runtime-v2/runner/runner-result.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -67,6 +67,12 @@ export interface PainSignalBridgeResult {
|
|
|
67
67
|
notInternalizable?: NotInternalizableCandidate[];
|
|
68
68
|
errorCategory?: PDErrorCategory;
|
|
69
69
|
message?: string;
|
|
70
|
+
/**
|
|
71
|
+
* PRI-638: recovery action surfaced by the runner. Only set when the failure
|
|
72
|
+
* is an Owner capability decision (Diagnostician disabled), never for runtime
|
|
73
|
+
* or provider faults — the two must remain distinguishable.
|
|
74
|
+
*/
|
|
75
|
+
nextAction?: string;
|
|
70
76
|
}
|
|
71
77
|
export interface PainSignalBridgeOptions {
|
|
72
78
|
stateManager: RuntimeStateManager;
|
|
@@ -101,6 +107,18 @@ export interface PainSignalBridgeOptions {
|
|
|
101
107
|
ownedResources?: readonly {
|
|
102
108
|
close: () => void | Promise<void>;
|
|
103
109
|
}[];
|
|
110
|
+
/**
|
|
111
|
+
* PRI-638 P1-A: set ONLY by the factory's capability-disabled bridge.
|
|
112
|
+
* While the Owner has switched the Diagnostician off, `onPainDetected` /
|
|
113
|
+
* `executePendingDiagnosis` must ENSURE a durable task exists for new Pain
|
|
114
|
+
* but must NEVER reset/re-trigger an existing task (that would erase
|
|
115
|
+
* retry_wait/failed history and the retry budget). The runner is not
|
|
116
|
+
* invoked, so provider calls stay 0.
|
|
117
|
+
*/
|
|
118
|
+
capabilityDisabled?: {
|
|
119
|
+
readonly reason: string;
|
|
120
|
+
readonly nextAction: string;
|
|
121
|
+
};
|
|
104
122
|
}
|
|
105
123
|
export declare function createDiagnosticianTaskId(painId: string): string;
|
|
106
124
|
export declare class PainSignalBridge {
|
|
@@ -114,7 +132,14 @@ export declare class PainSignalBridge {
|
|
|
114
132
|
private readonly workspaceDir;
|
|
115
133
|
private readonly eventEmitter?;
|
|
116
134
|
private readonly ownedResources;
|
|
135
|
+
private readonly capabilityDisabled;
|
|
117
136
|
constructor(opts: PainSignalBridgeOptions);
|
|
137
|
+
/**
|
|
138
|
+
* PRI-638 P1-A: the unified disabled outcome. `status: 'failed'` is kept
|
|
139
|
+
* (existing RunnerResult vocabulary) but carries `capability_missing` +
|
|
140
|
+
* `nextAction`, so no caller can mistake it for a provider/runtime fault.
|
|
141
|
+
*/
|
|
142
|
+
private disabledResult;
|
|
118
143
|
/**
|
|
119
144
|
* PRI-624: release every handle this bridge holds (state manager + the
|
|
120
145
|
* factory-owned connection). Callers that keep the cached bridge (plugin
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pain-signal-bridge.d.ts","sourceRoot":"","sources":["../../src/runtime-v2/pain-signal-bridge.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAmB,MAAM,kCAAkC,CAAC;AAC7F,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,KAAK,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAClF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,KAAK,EAAE,wBAAwB,EAAqB,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACvG,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAQvE,YAAY,EAAE,cAAc,EAAE,CAAC;AAE/B;;;GAGG;AACH,MAAM,WAAW,uBAAuB;IACtC,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;CAC5C;AAED,+EAA+E;AAC/E,eAAO,MAAM,oBAAoB,IAAI,CAAC;AACtC,eAAO,MAAM,uBAAuB,MAAM,CAAC;AAE3C,MAAM,WAAW,iBAAiB;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;;;;GAKG;AACH,MAAM,MAAM,kBAAkB,GAAG,UAAU,GAAG,OAAO,CAAC;AAEtD,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,cAAc,GAAG,gBAAgB,GAAG,kBAAkB,CAAC;IACjE,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,cAAc,CAAC;IAC5B,yFAAyF;IACzF,QAAQ,CAAC,EAAE,kBAAkB,CAAC;IAC9B,QAAQ,CAAC,EAAE,iBAAiB,EAAE,CAAC;CAChC;AAED,MAAM,MAAM,sBAAsB,GAAG,WAAW,GAAG,SAAS,GAAG,QAAQ,GAAG,SAAS,GAAG,UAAU,CAAC;AAEjG;;;;;GAKG;AACH,MAAM,WAAW,0BAA0B;IACzC,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,sBAAsB,CAAC;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,kBAAkB,CAAC;IAClC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,gBAAgB,CAAC,EAAE,wBAAwB,EAAE,CAAC;IAC9C,2FAA2F;IAC3F,iBAAiB,CAAC,EAAE,0BAA0B,EAAE,CAAC;IACjD,aAAa,CAAC,EAAE,eAAe,CAAC;IAChC,OAAO,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"pain-signal-bridge.d.ts","sourceRoot":"","sources":["../../src/runtime-v2/pain-signal-bridge.ts"],"names":[],"mappings":"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"}
|
|
@@ -80,6 +80,7 @@ export class PainSignalBridge {
|
|
|
80
80
|
workspaceDir;
|
|
81
81
|
eventEmitter;
|
|
82
82
|
ownedResources;
|
|
83
|
+
capabilityDisabled;
|
|
83
84
|
constructor(opts) {
|
|
84
85
|
this.stateManager = opts.stateManager;
|
|
85
86
|
this.runner = opts.runner;
|
|
@@ -91,6 +92,24 @@ export class PainSignalBridge {
|
|
|
91
92
|
this.workspaceDir = opts.workspaceDir;
|
|
92
93
|
this.eventEmitter = opts.eventEmitter;
|
|
93
94
|
this.ownedResources = opts.ownedResources ?? [];
|
|
95
|
+
this.capabilityDisabled = opts.capabilityDisabled;
|
|
96
|
+
}
|
|
97
|
+
/**
|
|
98
|
+
* PRI-638 P1-A: the unified disabled outcome. `status: 'failed'` is kept
|
|
99
|
+
* (existing RunnerResult vocabulary) but carries `capability_missing` +
|
|
100
|
+
* `nextAction`, so no caller can mistake it for a provider/runtime fault.
|
|
101
|
+
*/
|
|
102
|
+
disabledResult(input) {
|
|
103
|
+
return {
|
|
104
|
+
status: 'failed',
|
|
105
|
+
painId: input.painId,
|
|
106
|
+
taskId: input.taskId,
|
|
107
|
+
candidateIds: [],
|
|
108
|
+
ledgerEntryIds: [],
|
|
109
|
+
errorCategory: 'capability_missing',
|
|
110
|
+
message: this.capabilityDisabled?.reason ?? 'Diagnostician capability is disabled by Owner configuration',
|
|
111
|
+
nextAction: this.capabilityDisabled?.nextAction,
|
|
112
|
+
};
|
|
94
113
|
}
|
|
95
114
|
/**
|
|
96
115
|
* PRI-624: release every handle this bridge holds (state manager + the
|
|
@@ -141,6 +160,30 @@ export class PainSignalBridge {
|
|
|
141
160
|
const { painId } = data;
|
|
142
161
|
const taskId = data.taskId ?? createDiagnosticianTaskId(painId);
|
|
143
162
|
const provenance = data.provenance ?? inferProvenance(data);
|
|
163
|
+
// PRI-638 P1-A: while the Owner has disabled the Diagnostician, this call
|
|
164
|
+
// only ENSURES a durable diagnosis task exists for new Pain. It must NOT
|
|
165
|
+
// reuse the re-trigger semantics below — an existing retry_wait / failed /
|
|
166
|
+
// needs_human_review task keeps its status, attemptCount, lastError and
|
|
167
|
+
// lease untouched (durable history preserved, retry budget preserved), and
|
|
168
|
+
// the disabled runner is never invoked (provider calls stay 0).
|
|
169
|
+
if (this.capabilityDisabled !== undefined) {
|
|
170
|
+
const existing = await this.stateManager.getTask(taskId);
|
|
171
|
+
if (existing === null) {
|
|
172
|
+
await this.stateManager.createTask({
|
|
173
|
+
taskId,
|
|
174
|
+
taskKind: 'diagnostician',
|
|
175
|
+
inputRef: painId,
|
|
176
|
+
status: 'pending',
|
|
177
|
+
attemptCount: 0,
|
|
178
|
+
maxAttempts: 3,
|
|
179
|
+
diagnosticJson: buildDiagnosticJson(data, this.workspaceDir),
|
|
180
|
+
});
|
|
181
|
+
}
|
|
182
|
+
else if (existing.status === 'succeeded') {
|
|
183
|
+
return this.buildExistingResult({ painId, taskId });
|
|
184
|
+
}
|
|
185
|
+
return this.disabledResult({ painId, taskId });
|
|
186
|
+
}
|
|
144
187
|
// Check for existing task FIRST — idempotency takes priority over short-circuit
|
|
145
188
|
const existingTask = await this.stateManager.getTask(taskId);
|
|
146
189
|
// PRI-345: short-circuit before any I/O when input evidence is empty
|
|
@@ -200,6 +243,9 @@ export class PainSignalBridge {
|
|
|
200
243
|
}
|
|
201
244
|
const result = await this.runner.run(taskId);
|
|
202
245
|
if (result.status !== 'succeeded') {
|
|
246
|
+
// PRI-638: the task is deliberately left in its prior state (pending /
|
|
247
|
+
// retry_wait) with its attemptCount untouched. A capability-disabled run
|
|
248
|
+
// is not a failed attempt, so it must never consume LLM retry budget.
|
|
203
249
|
return {
|
|
204
250
|
status: result.status === 'retried' ? 'retried' : 'failed',
|
|
205
251
|
painId,
|
|
@@ -209,6 +255,7 @@ export class PainSignalBridge {
|
|
|
209
255
|
ledgerEntryIds: [],
|
|
210
256
|
errorCategory: result.errorCategory,
|
|
211
257
|
message: result.failureReason,
|
|
258
|
+
...(result.nextAction !== undefined ? { nextAction: result.nextAction } : {}),
|
|
212
259
|
};
|
|
213
260
|
}
|
|
214
261
|
return this.onDiagnosisComplete({
|
|
@@ -240,6 +287,22 @@ export class PainSignalBridge {
|
|
|
240
287
|
*/
|
|
241
288
|
async executePendingDiagnosis(input) {
|
|
242
289
|
const { taskId } = input;
|
|
290
|
+
// PRI-638 P1-A: on a capability-disabled bridge execution is paused, never
|
|
291
|
+
// failed. The task keeps its exact durable state (including retry budget);
|
|
292
|
+
// no runner invocation, so provider calls stay 0. Callers should normally
|
|
293
|
+
// gate on the canonical capability before reaching here (Codex worker
|
|
294
|
+
// does), this is the defensive seam.
|
|
295
|
+
if (this.capabilityDisabled !== undefined) {
|
|
296
|
+
const task = await this.stateManager.getTask(taskId);
|
|
297
|
+
if (task === null) {
|
|
298
|
+
return { status: 'failed', painId: '', taskId, candidateIds: [], ledgerEntryIds: [], errorCategory: 'input_invalid', message: 'task_not_found' };
|
|
299
|
+
}
|
|
300
|
+
const painId = typeof task.inputRef === 'string' && task.inputRef.length > 0 ? task.inputRef : taskId;
|
|
301
|
+
if (task.status === 'succeeded') {
|
|
302
|
+
return this.buildExistingResult({ painId, taskId });
|
|
303
|
+
}
|
|
304
|
+
return this.disabledResult({ painId, taskId });
|
|
305
|
+
}
|
|
243
306
|
const task = await this.stateManager.getTask(taskId);
|
|
244
307
|
if (task === null) {
|
|
245
308
|
return { status: 'failed', painId: '', taskId, candidateIds: [], ledgerEntryIds: [], errorCategory: 'input_invalid', message: 'task_not_found' };
|
|
@@ -259,6 +322,9 @@ export class PainSignalBridge {
|
|
|
259
322
|
}
|
|
260
323
|
const result = await this.runner.run(taskId);
|
|
261
324
|
if (result.status !== 'succeeded') {
|
|
325
|
+
// PRI-638: the task is deliberately left in its prior state (pending /
|
|
326
|
+
// retry_wait) with its attemptCount untouched. A capability-disabled run
|
|
327
|
+
// is not a failed attempt, so it must never consume LLM retry budget.
|
|
262
328
|
return {
|
|
263
329
|
status: result.status === 'retried' ? 'retried' : 'failed',
|
|
264
330
|
painId,
|
|
@@ -268,6 +334,7 @@ export class PainSignalBridge {
|
|
|
268
334
|
ledgerEntryIds: [],
|
|
269
335
|
errorCategory: result.errorCategory,
|
|
270
336
|
message: result.failureReason,
|
|
337
|
+
...(result.nextAction !== undefined ? { nextAction: result.nextAction } : {}),
|
|
271
338
|
};
|
|
272
339
|
}
|
|
273
340
|
return this.onDiagnosisComplete({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pain-signal-bridge.js","sourceRoot":"","sources":["../../src/runtime-v2/pain-signal-bridge.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"pain-signal-bridge.js","sourceRoot":"","sources":["../../src/runtime-v2/pain-signal-bridge.ts"],"names":[],"mappings":"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"}
|
|
@@ -112,11 +112,35 @@ export declare function validateRuntimeConfig(config: RuntimeConfig): void;
|
|
|
112
112
|
* When effectiveConfig is provided, this path takes precedence.
|
|
113
113
|
*/
|
|
114
114
|
export declare function resolveRuntimeConfigFromPdConfig(effectiveConfig: EffectivePdConfig, getEnvVar: (name: string) => string | undefined): RuntimeConfigResult;
|
|
115
|
+
export interface DisabledDiagnosticianRunnerOptions {
|
|
116
|
+
/** Human-readable reason. Defaults to the canonical Owner-disable message. */
|
|
117
|
+
readonly failureReason?: string;
|
|
118
|
+
/** Recovery action surfaced to the Owner / CLI operator. */
|
|
119
|
+
readonly nextAction?: string;
|
|
120
|
+
}
|
|
121
|
+
export declare const DIAGNOSTICIAN_DISABLED_FAILURE_REASON = "Diagnostician capability is disabled by Owner configuration (internalAgents.agents.diagnostician.enabled=false)";
|
|
122
|
+
export declare const DIAGNOSTICIAN_DISABLED_NEXT_ACTION = "Enable internalAgents.agents.diagnostician.enabled in .pd/config.yaml (or Console \u2192 Control Center), then retry.";
|
|
115
123
|
/**
|
|
116
|
-
* DisabledDiagnosticianRunner —
|
|
117
|
-
*
|
|
124
|
+
* DisabledDiagnosticianRunner — the single representation of "Diagnostician is
|
|
125
|
+
* not available" (PRI-638).
|
|
126
|
+
*
|
|
127
|
+
* Before PRI-638 this class was selected by the `diagnostician_split_pipeline`
|
|
128
|
+
* feature flag, which made a rollout flag act as a second kill switch. The
|
|
129
|
+
* Owner capability authority (`internalAgents.agents.diagnostician.enabled`) is
|
|
130
|
+
* now the only thing that produces this runner.
|
|
131
|
+
*
|
|
132
|
+
* Contract (identical for every entrypoint):
|
|
133
|
+
* - status: 'failed'
|
|
134
|
+
* - errorCategory: 'capability_missing' (existing PDErrorCategory — reuse, do
|
|
135
|
+
* not invent a new enum)
|
|
136
|
+
* - zero provider/LLM calls: the runner never touches an adapter
|
|
137
|
+
* - attemptCount stays informational; the task is not marked failed by this
|
|
138
|
+
* runner, so no LLM retry budget is consumed (see PainSignalBridge)
|
|
118
139
|
*/
|
|
119
140
|
export declare class DisabledDiagnosticianRunner implements DiagnosticianRunnerLike {
|
|
141
|
+
private readonly failureReason;
|
|
142
|
+
private readonly nextAction;
|
|
143
|
+
constructor(opts?: DisabledDiagnosticianRunnerOptions);
|
|
120
144
|
run(taskId: string): Promise<RunnerResult>;
|
|
121
145
|
}
|
|
122
146
|
/**
|
|
@@ -136,18 +160,14 @@ export declare function mapBridgeTelemetryToStoreEvent(event: {
|
|
|
136
160
|
* this after execution; long-lived hosts that reuse the cached bridge do not.
|
|
137
161
|
*/
|
|
138
162
|
export declare function disposePainSignalBridgesForWorkspace(workspaceDir: string): Promise<void>;
|
|
163
|
+
export declare function createPainSignalBridge(opts: PainSignalRuntimeFactoryOptions): Promise<PainSignalBridge>;
|
|
139
164
|
/**
|
|
140
|
-
*
|
|
141
|
-
* Covers both split and disabled pipeline variants.
|
|
142
|
-
*/
|
|
143
|
-
/**
|
|
144
|
-
* Create (or return cached) PainSignalBridge for a workspace.
|
|
165
|
+
* PRI-638: bridge for the "Owner disabled the Diagnostician" state.
|
|
145
166
|
*
|
|
146
|
-
*
|
|
147
|
-
*
|
|
148
|
-
*
|
|
149
|
-
*
|
|
167
|
+
* Deliberately built WITHOUT a runtime adapter — there is nothing to call, and
|
|
168
|
+
* constructing one is what previously forced a hard throw. Everything the
|
|
169
|
+
* durable Pain path needs (state manager + intake) is still wired, so pains
|
|
170
|
+
* keep landing and can be diagnosed after the Owner re-enables the agent.
|
|
150
171
|
*/
|
|
151
|
-
export declare function createPainSignalBridge(opts: PainSignalRuntimeFactoryOptions): Promise<PainSignalBridge>;
|
|
152
172
|
export declare function invalidatePainSignalBridge(workspaceDir: string, runtimeKind?: string): void;
|
|
153
173
|
//# sourceMappingURL=pain-signal-runtime-factory.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pain-signal-runtime-factory.d.ts","sourceRoot":"","sources":["../../src/runtime-v2/pain-signal-runtime-factory.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,gBAAgB,EAAE,KAAK,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AACzF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"pain-signal-runtime-factory.d.ts","sourceRoot":"","sources":["../../src/runtime-v2/pain-signal-runtime-factory.ts"],"names":[],"mappings":"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"}
|
|
@@ -20,7 +20,6 @@ import { DefaultDiagRootCauseValidator } from './diagnostician/diag-rootcause-ou
|
|
|
20
20
|
import { DefaultDiagDistillerValidator } from './diagnostician/diag-distiller-output.js';
|
|
21
21
|
import { resolveOutputLanguage } from './language-directive.js';
|
|
22
22
|
import { computeFeatureFlagsFromConfig, isFeatureEnabled } from './config/pd-config-feature-flags.js';
|
|
23
|
-
import { PDRuntimeError } from './error-categories.js';
|
|
24
23
|
import { CandidateIntakeService } from './candidate-intake-service.js';
|
|
25
24
|
import { SqliteDiagnosticianCommitter } from './store/commit/diagnostician-committer.js';
|
|
26
25
|
import { SqliteContextAssembler } from './store/context/sqlite-context-assembler.js';
|
|
@@ -34,6 +33,9 @@ import { isBuiltinPiAiProvider } from './adapter/pi-ai-catalog.js';
|
|
|
34
33
|
import { storeEmitter } from './store/event-emitter.js';
|
|
35
34
|
import { WorkflowFunnelLoader } from '../workflow-funnel-loader.js';
|
|
36
35
|
import { resolveAgentRuntimeBinding, checkAgentRuntimeReadiness, createAdapterConfigFromProfile, } from './config/pd-config-agent-binding.js';
|
|
36
|
+
import { resolveDiagnosticianCapability, } from './diagnostician-capability.js';
|
|
37
|
+
/** PRI-638: cache slot for the Owner-disabled bridge (no runtime kind applies). */
|
|
38
|
+
const DISABLED_BRIDGE_CACHE_SLOT = 'capability-disabled';
|
|
37
39
|
/** Funnel name for the Runtime v2 diagnosis path. */
|
|
38
40
|
const DIAGNOSTIC_FUNNEL_ID = 'pd-runtime-v2-diagnosis';
|
|
39
41
|
/** Default per-stage timeout (5 min). Same for monolith and split-per-stage. */
|
|
@@ -279,18 +281,39 @@ export function resolveRuntimeConfigFromPdConfig(effectiveConfig, getEnvVar) {
|
|
|
279
281
|
// Per-workspace+runtime+mode bridge cache — same lifetime as process
|
|
280
282
|
// Key format: `${workspaceDir}:${runtimeKind}:${openclawMode ?? ''}` (D-03)
|
|
281
283
|
const bridgeCache = new Map();
|
|
284
|
+
export const DIAGNOSTICIAN_DISABLED_FAILURE_REASON = 'Diagnostician capability is disabled by Owner configuration (internalAgents.agents.diagnostician.enabled=false)';
|
|
285
|
+
export const DIAGNOSTICIAN_DISABLED_NEXT_ACTION = 'Enable internalAgents.agents.diagnostician.enabled in .pd/config.yaml (or Console → Control Center), then retry.';
|
|
282
286
|
/**
|
|
283
|
-
* DisabledDiagnosticianRunner —
|
|
284
|
-
*
|
|
287
|
+
* DisabledDiagnosticianRunner — the single representation of "Diagnostician is
|
|
288
|
+
* not available" (PRI-638).
|
|
289
|
+
*
|
|
290
|
+
* Before PRI-638 this class was selected by the `diagnostician_split_pipeline`
|
|
291
|
+
* feature flag, which made a rollout flag act as a second kill switch. The
|
|
292
|
+
* Owner capability authority (`internalAgents.agents.diagnostician.enabled`) is
|
|
293
|
+
* now the only thing that produces this runner.
|
|
294
|
+
*
|
|
295
|
+
* Contract (identical for every entrypoint):
|
|
296
|
+
* - status: 'failed'
|
|
297
|
+
* - errorCategory: 'capability_missing' (existing PDErrorCategory — reuse, do
|
|
298
|
+
* not invent a new enum)
|
|
299
|
+
* - zero provider/LLM calls: the runner never touches an adapter
|
|
300
|
+
* - attemptCount stays informational; the task is not marked failed by this
|
|
301
|
+
* runner, so no LLM retry budget is consumed (see PainSignalBridge)
|
|
285
302
|
*/
|
|
286
303
|
export class DisabledDiagnosticianRunner {
|
|
287
|
-
|
|
304
|
+
failureReason;
|
|
305
|
+
nextAction;
|
|
306
|
+
constructor(opts = {}) {
|
|
307
|
+
this.failureReason = opts.failureReason ?? DIAGNOSTICIAN_DISABLED_FAILURE_REASON;
|
|
308
|
+
this.nextAction = opts.nextAction ?? DIAGNOSTICIAN_DISABLED_NEXT_ACTION;
|
|
309
|
+
}
|
|
288
310
|
async run(taskId) {
|
|
289
311
|
return {
|
|
290
312
|
status: 'failed',
|
|
291
313
|
taskId,
|
|
292
314
|
errorCategory: 'capability_missing',
|
|
293
|
-
failureReason:
|
|
315
|
+
failureReason: this.failureReason,
|
|
316
|
+
nextAction: this.nextAction,
|
|
294
317
|
attemptCount: 1,
|
|
295
318
|
};
|
|
296
319
|
}
|
|
@@ -368,25 +391,25 @@ async function constructBridge(opts, runtimeConfig, pipeline) {
|
|
|
368
391
|
},
|
|
369
392
|
});
|
|
370
393
|
}
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
}
|
|
394
|
+
// PRI-638: implementation selection is no longer a decision this factory
|
|
395
|
+
// makes. `diagnostician_split_pipeline` used to gate this on a second,
|
|
396
|
+
// non-canonical kill switch; the split pipeline is the only implementation
|
|
397
|
+
// left in the tree (no monolithic DiagnosticianRunner exists any more), so
|
|
398
|
+
// the flag retains no implementation-selection or disable responsibility.
|
|
399
|
+
//
|
|
400
|
+
// P0-1 fix: onDiagnosisComplete is no longer wired into the router.
|
|
401
|
+
// The bridge (PainSignalBridge.onPainDetected) is the sole invocation point.
|
|
402
|
+
const rootCauseRunner = new DiagRootCauseRunner({ stateManager, runtimeAdapter, eventEmitter: storeEmitter, artifactStore: stateManager.piArtifactStore, validator: new DefaultDiagRootCauseValidator(), contextAssembler, intentDocReader: opts.intentDocReader }, { owner: opts.owner ?? 'pain-signal-bridge', runtimeKind: runtimeConfig.runtimeKind, outputLanguage, effectiveConfig: opts.effectiveConfig });
|
|
403
|
+
const distillerRunner = new DiagDistillerRunner({ stateManager, runtimeAdapter, eventEmitter: storeEmitter, artifactStore: stateManager.piArtifactStore, validator: new DefaultDiagDistillerValidator() }, { owner: opts.owner ?? 'pain-signal-bridge', runtimeKind: runtimeConfig.runtimeKind, outputLanguage, effectiveConfig: opts.effectiveConfig });
|
|
404
|
+
const routerRunner = new DiagRouterRunner({ stateManager, runtimeAdapter, eventEmitter: storeEmitter, artifactStore: stateManager.piArtifactStore, committer }, { owner: opts.owner ?? 'pain-signal-bridge', runtimeKind: runtimeConfig.runtimeKind, outputLanguage });
|
|
405
|
+
const runner = new SplitDiagnosticianRunner({
|
|
406
|
+
rootCauseRunner,
|
|
407
|
+
distillerRunner,
|
|
408
|
+
routerRunner,
|
|
409
|
+
stateManager,
|
|
410
|
+
committer,
|
|
411
|
+
perStageTimeoutMs: runtimeConfig.timeoutMs ?? DEFAULT_TIMEOUT_MS,
|
|
412
|
+
});
|
|
390
413
|
const intakeService = new CandidateIntakeService({
|
|
391
414
|
stateManager,
|
|
392
415
|
ledgerAdapter: opts.ledgerAdapter,
|
|
@@ -448,7 +471,58 @@ export async function disposePainSignalBridgesForWorkspace(workspaceDir) {
|
|
|
448
471
|
*
|
|
449
472
|
* Cache key is workspaceDir — one bridge per workspace per process.
|
|
450
473
|
*/
|
|
474
|
+
async function createDisabledBridge(opts, capability) {
|
|
475
|
+
const disabledCacheKey = `${opts.workspaceDir}:${DISABLED_BRIDGE_CACHE_SLOT}`;
|
|
476
|
+
const cached = bridgeCache.get(disabledCacheKey);
|
|
477
|
+
if (cached)
|
|
478
|
+
return cached;
|
|
479
|
+
const stateManager = new RuntimeStateManager({ workspaceDir: opts.workspaceDir });
|
|
480
|
+
await stateManager.initialize();
|
|
481
|
+
const intakeService = new CandidateIntakeService({
|
|
482
|
+
stateManager,
|
|
483
|
+
ledgerAdapter: opts.ledgerAdapter,
|
|
484
|
+
});
|
|
485
|
+
const bridge = new PainSignalBridge({
|
|
486
|
+
stateManager,
|
|
487
|
+
runner: new DisabledDiagnosticianRunner({
|
|
488
|
+
failureReason: `${capability.message} (${DIAGNOSTICIAN_DISABLED_FAILURE_REASON})`,
|
|
489
|
+
nextAction: capability.nextAction,
|
|
490
|
+
}),
|
|
491
|
+
intakeService,
|
|
492
|
+
ledgerAdapter: opts.ledgerAdapter,
|
|
493
|
+
autoIntakeEnabled: opts.autoIntakeEnabled ?? true,
|
|
494
|
+
workspaceDir: opts.workspaceDir,
|
|
495
|
+
// No diagnosis runs, so nothing can be persisted by the persistence path.
|
|
496
|
+
diagnosisPersistenceEnabled: false,
|
|
497
|
+
// PRI-638 P1-A: mark this bridge so onPainDetected / executePendingDiagnosis
|
|
498
|
+
// only ENSURE a durable task exists and never reset existing task state.
|
|
499
|
+
capabilityDisabled: { reason: capability.message, nextAction: capability.nextAction },
|
|
500
|
+
ownedResources: [],
|
|
501
|
+
});
|
|
502
|
+
const winner = bridgeCache.get(disabledCacheKey);
|
|
503
|
+
if (winner !== undefined && winner !== bridge) {
|
|
504
|
+
await bridge.dispose().catch(() => undefined);
|
|
505
|
+
return winner;
|
|
506
|
+
}
|
|
507
|
+
bridgeCache.set(disabledCacheKey, bridge);
|
|
508
|
+
return bridge;
|
|
509
|
+
}
|
|
451
510
|
export async function createPainSignalBridge(opts) {
|
|
511
|
+
// PRI-638: the capability decision comes FIRST and from ONE authority.
|
|
512
|
+
//
|
|
513
|
+
// Previously an Owner-disabled Diagnostician made this function throw, which
|
|
514
|
+
// (a) was interpreted by every caller as an unexpected runtime failure and
|
|
515
|
+
// (b) destroyed the Pain: `PainToPrincipleService.recordPain` calls this
|
|
516
|
+
// before `onPainDetected`/`submitPainSignal`, and those are the only writers
|
|
517
|
+
// of the durable diagnosis task. Owner-disabling the agent therefore meant
|
|
518
|
+
// the Pain never reached the task store and could never be recovered.
|
|
519
|
+
//
|
|
520
|
+
// The disabled bridge keeps the durable path alive while guaranteeing zero
|
|
521
|
+
// provider calls, so re-enabling the agent is enough to resume.
|
|
522
|
+
const capability = resolveDiagnosticianCapability(opts.effectiveConfig);
|
|
523
|
+
if (!capability.available) {
|
|
524
|
+
return createDisabledBridge(opts, capability);
|
|
525
|
+
}
|
|
452
526
|
// PRI-306: Prefer config-driven binding when effectiveConfig is provided
|
|
453
527
|
let runtimeConfig;
|
|
454
528
|
if (opts.effectiveConfig) {
|
|
@@ -463,32 +537,18 @@ export async function createPainSignalBridge(opts) {
|
|
|
463
537
|
`${runtimeConfig.message}. nextAction: ${runtimeConfig.nextAction}`);
|
|
464
538
|
}
|
|
465
539
|
validateRuntimeConfig(runtimeConfig);
|
|
466
|
-
//
|
|
467
|
-
//
|
|
468
|
-
// is called with different effectiveConfig (e.g., split on vs off).
|
|
469
|
-
let useSplitPipeline = true;
|
|
470
|
-
// Pain Diagnosis Persistence: resolve the flag before the cache key for the
|
|
471
|
-
// same collision reason (same workspace, flag toggled between calls).
|
|
540
|
+
// Pain Diagnosis Persistence: resolve the flag before the cache key so a
|
|
541
|
+
// later call with the flag toggled cannot collide with a cached bridge.
|
|
472
542
|
let diagnosisPersistenceEnabled = false;
|
|
473
543
|
if (opts.effectiveConfig) {
|
|
474
544
|
const featureFlags = computeFeatureFlagsFromConfig(opts.effectiveConfig);
|
|
475
|
-
const splitPipeline = isFeatureEnabled(featureFlags, 'diagnostician_split_pipeline');
|
|
476
|
-
const asyncCli = isFeatureEnabled(featureFlags, 'diagnostician_async_cli');
|
|
477
545
|
diagnosisPersistenceEnabled = isFeatureEnabled(featureFlags, 'pain_diagnosis_persistence');
|
|
478
|
-
if (splitPipeline && !asyncCli) {
|
|
479
|
-
const isExplicitSplit = opts.effectiveConfig.featuresChangedFromDefault?.includes('diagnostician_split_pipeline') ?? false;
|
|
480
|
-
const isExplicitAsync = opts.effectiveConfig.featuresChangedFromDefault?.includes('diagnostician_async_cli') ?? false;
|
|
481
|
-
if (isExplicitSplit || isExplicitAsync) {
|
|
482
|
-
throw new PDRuntimeError('input_invalid', 'diagnostician_split_pipeline requires diagnostician_async_cli=on (3 serial LLM calls would block the sync CLI 540s+)');
|
|
483
|
-
}
|
|
484
|
-
}
|
|
485
|
-
useSplitPipeline = splitPipeline;
|
|
486
546
|
}
|
|
487
|
-
const cacheKey = `${opts.workspaceDir}:${runtimeConfig.runtimeKind}:${runtimeConfig.openclawMode ?? ''}:${
|
|
547
|
+
const cacheKey = `${opts.workspaceDir}:${runtimeConfig.runtimeKind}:${runtimeConfig.openclawMode ?? ''}:${diagnosisPersistenceEnabled ? 'pdp' : 'nopdp'}`;
|
|
488
548
|
const cached = bridgeCache.get(cacheKey);
|
|
489
549
|
if (cached)
|
|
490
550
|
return cached;
|
|
491
|
-
const bridge = await constructBridge(opts, runtimeConfig, {
|
|
551
|
+
const bridge = await constructBridge(opts, runtimeConfig, { diagnosisPersistenceEnabled });
|
|
492
552
|
// PRI-624: a concurrent constructor may have won the cache slot while we
|
|
493
553
|
// were building — the loser self-disposes so its handles never leak.
|
|
494
554
|
const winner = bridgeCache.get(cacheKey);
|
|
@@ -499,13 +559,20 @@ export async function createPainSignalBridge(opts) {
|
|
|
499
559
|
bridgeCache.set(cacheKey, bridge);
|
|
500
560
|
return bridge;
|
|
501
561
|
}
|
|
562
|
+
/**
|
|
563
|
+
* PRI-638: bridge for the "Owner disabled the Diagnostician" state.
|
|
564
|
+
*
|
|
565
|
+
* Deliberately built WITHOUT a runtime adapter — there is nothing to call, and
|
|
566
|
+
* constructing one is what previously forced a hard throw. Everything the
|
|
567
|
+
* durable Pain path needs (state manager + intake) is still wired, so pains
|
|
568
|
+
* keep landing and can be diagnosed after the Owner re-enables the agent.
|
|
569
|
+
*/
|
|
502
570
|
export function invalidatePainSignalBridge(workspaceDir, runtimeKind) {
|
|
503
571
|
const effectiveKind = runtimeKind ?? 'pi-ai';
|
|
572
|
+
bridgeCache.delete(`${workspaceDir}:${DISABLED_BRIDGE_CACHE_SLOT}`);
|
|
504
573
|
for (const mode of ['local', 'gateway', '']) {
|
|
505
|
-
for (const
|
|
506
|
-
|
|
507
|
-
bridgeCache.delete(`${workspaceDir}:${effectiveKind}:${mode}:${pipeline}:${pdp}`);
|
|
508
|
-
}
|
|
574
|
+
for (const pdp of ['pdp', 'nopdp']) {
|
|
575
|
+
bridgeCache.delete(`${workspaceDir}:${effectiveKind}:${mode}:${pdp}`);
|
|
509
576
|
}
|
|
510
577
|
}
|
|
511
578
|
}
|