@principles/core 1.187.0 → 1.188.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/runtime-v2/__tests__/architecture-regression.test.js +2 -0
- package/dist/runtime-v2/__tests__/architecture-regression.test.js.map +1 -1
- package/dist/runtime-v2/__tests__/evidence-chain-intent-tension.test.d.ts +2 -0
- package/dist/runtime-v2/__tests__/evidence-chain-intent-tension.test.d.ts.map +1 -0
- package/dist/runtime-v2/__tests__/evidence-chain-intent-tension.test.js +284 -0
- package/dist/runtime-v2/__tests__/evidence-chain-intent-tension.test.js.map +1 -0
- package/dist/runtime-v2/evidence-triage/source-descriptors.d.ts +1 -1
- package/dist/runtime-v2/evidence-triage/source-descriptors.js +1 -1
- package/dist/runtime-v2/index.d.ts +1 -1
- package/dist/runtime-v2/index.d.ts.map +1 -1
- package/dist/runtime-v2/index.js +3 -1
- package/dist/runtime-v2/index.js.map +1 -1
- package/dist/runtime-v2/types/evidence-chain-contract.d.ts +63 -0
- package/dist/runtime-v2/types/evidence-chain-contract.d.ts.map +1 -1
- package/dist/runtime-v2/types/evidence-chain-contract.js +234 -9
- package/dist/runtime-v2/types/evidence-chain-contract.js.map +1 -1
- package/dist/runtime-v2/types/index.d.ts +2 -2
- package/dist/runtime-v2/types/index.d.ts.map +1 -1
- package/dist/runtime-v2/types/index.js +3 -1
- package/dist/runtime-v2/types/index.js.map +1 -1
- package/package.json +1 -1
|
@@ -6,6 +6,8 @@
|
|
|
6
6
|
* lives inside principles-core to be shared by Console read models,
|
|
7
7
|
* CLI commands, and test fixtures.
|
|
8
8
|
*/
|
|
9
|
+
import { type IntentTension } from '../diagnostician/diag-rootcause-output.js';
|
|
10
|
+
export type { IntentTension };
|
|
9
11
|
export type EvidenceChainState = 'recorded-only' | 'evidence-only' | 'diagnosis-queued' | 'diagnosis-running' | 'diagnosis-succeeded' | 'diagnosis-failed' | 'diagnosis-retry-wait' | 'candidate-generated' | 'internalization-missing' | 'internalization-pending' | 'internalization-running' | 'internalization-failed' | 'internalization-succeeded' | 'owner-reviewable' | 'malformed' | 'degraded';
|
|
10
12
|
export declare const EvidenceChainStateSchema: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"recorded-only">, import("@sinclair/typebox").TLiteral<"evidence-only">, import("@sinclair/typebox").TLiteral<"diagnosis-queued">, import("@sinclair/typebox").TLiteral<"diagnosis-running">, import("@sinclair/typebox").TLiteral<"diagnosis-succeeded">, import("@sinclair/typebox").TLiteral<"diagnosis-failed">, import("@sinclair/typebox").TLiteral<"diagnosis-retry-wait">, import("@sinclair/typebox").TLiteral<"candidate-generated">, import("@sinclair/typebox").TLiteral<"internalization-missing">, import("@sinclair/typebox").TLiteral<"internalization-pending">, import("@sinclair/typebox").TLiteral<"internalization-running">, import("@sinclair/typebox").TLiteral<"internalization-failed">, import("@sinclair/typebox").TLiteral<"internalization-succeeded">, import("@sinclair/typebox").TLiteral<"owner-reviewable">, import("@sinclair/typebox").TLiteral<"malformed">, import("@sinclair/typebox").TLiteral<"degraded">]>;
|
|
11
13
|
export interface EvidenceChainRecord {
|
|
@@ -36,6 +38,18 @@ export interface EvidenceChainRecord {
|
|
|
36
38
|
runtimeTaskId?: string;
|
|
37
39
|
/** PRI-406: How this record was linked — 'canonical' (precise via canonical_pain_id) or 'legacy' (timestamp/content heuristic). */
|
|
38
40
|
linkMode?: 'canonical' | 'legacy';
|
|
41
|
+
/**
|
|
42
|
+
* PRI-469: Optional intent tension surfaced from the diagnostician artifact
|
|
43
|
+
* (Stage A output, SPEC §16). Present only when:
|
|
44
|
+
* 1. The `intent_engineering` flag was on at diagnosis time, AND
|
|
45
|
+
* 2. The Stage A LLM chose to emit an intentTension, AND
|
|
46
|
+
* 3. The artifact content_json validated successfully.
|
|
47
|
+
*
|
|
48
|
+
* This field is for Owner-facing display only (SPEC §22.1.2). It MUST NOT
|
|
49
|
+
* directly create rules or modify ledger principle status (SPEC §22).
|
|
50
|
+
* `confidence` is forbidden on this object (SPEC §16.3).
|
|
51
|
+
*/
|
|
52
|
+
intentTension?: IntentTension;
|
|
39
53
|
}
|
|
40
54
|
export declare const EvidenceChainRecordSchema: import("@sinclair/typebox").TObject<{
|
|
41
55
|
id: import("@sinclair/typebox").TString;
|
|
@@ -62,6 +76,15 @@ export declare const EvidenceChainRecordSchema: import("@sinclair/typebox").TObj
|
|
|
62
76
|
canonicalPainId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
63
77
|
runtimeTaskId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
64
78
|
linkMode: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"canonical">, import("@sinclair/typebox").TLiteral<"legacy">]>>;
|
|
79
|
+
intentTension: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
|
|
80
|
+
source: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"none">, import("@sinclair/typebox").TLiteral<"action_drift">, import("@sinclair/typebox").TLiteral<"intent_suspect">, import("@sinclair/typebox").TLiteral<"healthy_tension">]>;
|
|
81
|
+
evidenceStrength: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"weak">, import("@sinclair/typebox").TLiteral<"moderate">, import("@sinclair/typebox").TLiteral<"strong">]>;
|
|
82
|
+
relatedIntentFields: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"why">, import("@sinclair/typebox").TLiteral<"desired_outcome">, import("@sinclair/typebox").TLiteral<"non_negotiables">, import("@sinclair/typebox").TLiteral<"stop_escalation">, import("@sinclair/typebox").TLiteral<"current_strategic_focus">]>>;
|
|
83
|
+
evidence: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
|
|
84
|
+
explanation: import("@sinclair/typebox").TString;
|
|
85
|
+
suggestedOwnerAction: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"confirm_drift">, import("@sinclair/typebox").TLiteral<"revise_intent">, import("@sinclair/typebox").TLiteral<"observe">, import("@sinclair/typebox").TLiteral<"dismiss">, import("@sinclair/typebox").TLiteral<"promote_to_principle">, import("@sinclair/typebox").TLiteral<"promote_to_rulehost">]>;
|
|
86
|
+
intentDocHash: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
87
|
+
}>>;
|
|
65
88
|
}>;
|
|
66
89
|
export interface EvidenceChainResponse {
|
|
67
90
|
records: EvidenceChainRecord[];
|
|
@@ -96,12 +119,35 @@ export declare const EvidenceChainResponseSchema: import("@sinclair/typebox").TO
|
|
|
96
119
|
canonicalPainId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
97
120
|
runtimeTaskId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
98
121
|
linkMode: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"canonical">, import("@sinclair/typebox").TLiteral<"legacy">]>>;
|
|
122
|
+
intentTension: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
|
|
123
|
+
source: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"none">, import("@sinclair/typebox").TLiteral<"action_drift">, import("@sinclair/typebox").TLiteral<"intent_suspect">, import("@sinclair/typebox").TLiteral<"healthy_tension">]>;
|
|
124
|
+
evidenceStrength: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"weak">, import("@sinclair/typebox").TLiteral<"moderate">, import("@sinclair/typebox").TLiteral<"strong">]>;
|
|
125
|
+
relatedIntentFields: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"why">, import("@sinclair/typebox").TLiteral<"desired_outcome">, import("@sinclair/typebox").TLiteral<"non_negotiables">, import("@sinclair/typebox").TLiteral<"stop_escalation">, import("@sinclair/typebox").TLiteral<"current_strategic_focus">]>>;
|
|
126
|
+
evidence: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
|
|
127
|
+
explanation: import("@sinclair/typebox").TString;
|
|
128
|
+
suggestedOwnerAction: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"confirm_drift">, import("@sinclair/typebox").TLiteral<"revise_intent">, import("@sinclair/typebox").TLiteral<"observe">, import("@sinclair/typebox").TLiteral<"dismiss">, import("@sinclair/typebox").TLiteral<"promote_to_principle">, import("@sinclair/typebox").TLiteral<"promote_to_rulehost">]>;
|
|
129
|
+
intentDocHash: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
130
|
+
}>>;
|
|
99
131
|
}>>;
|
|
100
132
|
generatedAt: import("@sinclair/typebox").TString;
|
|
101
133
|
degradedReason: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
102
134
|
nextAction: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
103
135
|
note: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
104
136
|
}>;
|
|
137
|
+
/**
|
|
138
|
+
* Validate an untrusted `intentTension` value from a diagnostician artifact.
|
|
139
|
+
*
|
|
140
|
+
* @returns The validated IntentTension (evidence truncated to max 3), or
|
|
141
|
+
* `undefined` when the value is malformed. Never throws.
|
|
142
|
+
*
|
|
143
|
+
* Runtime Contract rules applied:
|
|
144
|
+
* - Rule 1: input is `unknown`, validated before use (ERR-001)
|
|
145
|
+
* - Rule 2: no `as` bypass — all fields checked with typeof / Set.has (ERR-001/005)
|
|
146
|
+
* - Rule 4: array element types validated element-wise (ERR-005/007)
|
|
147
|
+
* - Rule 5: Object.hasOwn used for key checks (ERR-013)
|
|
148
|
+
* - Rule 9: callers must set a degradedReason when this returns undefined (ERR-002)
|
|
149
|
+
*/
|
|
150
|
+
export declare function validateIntentTension(value: unknown): IntentTension | undefined;
|
|
105
151
|
export declare function mapSourceKind(source: string): string;
|
|
106
152
|
export declare function inferAdmissionDecision(sourceKind: string): string;
|
|
107
153
|
export interface ChainStateParams {
|
|
@@ -146,6 +192,10 @@ export interface TaskMapEntry {
|
|
|
146
192
|
rootCauseSummary?: string;
|
|
147
193
|
diagnosticJsonDegraded?: boolean;
|
|
148
194
|
inputRef?: string;
|
|
195
|
+
/** PRI-469: intent tension extracted from the diagnostician artifact (Stage A output). */
|
|
196
|
+
intentTension?: IntentTension;
|
|
197
|
+
/** PRI-469: set when the artifact content_json could not be parsed or intentTension was malformed. */
|
|
198
|
+
artifactDegraded?: boolean;
|
|
149
199
|
}
|
|
150
200
|
export declare function crossReferenceByTimestamp(painEvents: {
|
|
151
201
|
painId: string;
|
|
@@ -209,5 +259,18 @@ export declare function assembleEvidenceChain(params: {
|
|
|
209
259
|
stateDbAvailable: boolean;
|
|
210
260
|
degradedReasons?: string[];
|
|
211
261
|
degradedNextActions?: string[];
|
|
262
|
+
/**
|
|
263
|
+
* PRI-469: Diagnostician artifacts (rows from the `artifacts` table where
|
|
264
|
+
* artifact_kind = 'diagnostician_output'). Each row is treated as untrusted
|
|
265
|
+
* `unknown` and must have `task_id` (string) and `content_json` (string of
|
|
266
|
+
* JSON containing the DiagnosticianOutputV1 with optional `rootCause` and
|
|
267
|
+
* `intentTension`).
|
|
268
|
+
*
|
|
269
|
+
* Production architecture: DiagnosticianCommitter writes the full Stage C
|
|
270
|
+
* output to the artifacts table, NOT to tasks.diagnostic_json. The artifact
|
|
271
|
+
* is the canonical source for both rootCause and intentTension.
|
|
272
|
+
* tasks.diagnostic_json remains as a test-fixture fallback only.
|
|
273
|
+
*/
|
|
274
|
+
diagnosticArtifacts?: unknown[];
|
|
212
275
|
}): EvidenceChainResponse;
|
|
213
276
|
//# sourceMappingURL=evidence-chain-contract.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"evidence-chain-contract.d.ts","sourceRoot":"","sources":["../../../src/runtime-v2/types/evidence-chain-contract.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;
|
|
1
|
+
{"version":3,"file":"evidence-chain-contract.d.ts","sourceRoot":"","sources":["../../../src/runtime-v2/types/evidence-chain-contract.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,6 +7,7 @@
|
|
|
7
7
|
* CLI commands, and test fixtures.
|
|
8
8
|
*/
|
|
9
9
|
import { Type } from '@sinclair/typebox';
|
|
10
|
+
import { IntentTensionSchema, } from '../diagnostician/diag-rootcause-output.js';
|
|
10
11
|
export const EvidenceChainStateSchema = Type.Union([
|
|
11
12
|
Type.Literal('recorded-only'),
|
|
12
13
|
Type.Literal('evidence-only'),
|
|
@@ -50,6 +51,10 @@ export const EvidenceChainRecordSchema = Type.Object({
|
|
|
50
51
|
canonicalPainId: Type.Optional(Type.String()),
|
|
51
52
|
runtimeTaskId: Type.Optional(Type.String()),
|
|
52
53
|
linkMode: Type.Optional(Type.Union([Type.Literal('canonical'), Type.Literal('legacy')])),
|
|
54
|
+
// PRI-469: optional intent tension from diagnostician artifact (SPEC §16).
|
|
55
|
+
// `confidence` is forbidden on this object (SPEC §16.3); enforced by
|
|
56
|
+
// IntentTensionSchema's additionalProperties:false and by validateIntentTension.
|
|
57
|
+
intentTension: Type.Optional(IntentTensionSchema),
|
|
53
58
|
});
|
|
54
59
|
export const EvidenceChainResponseSchema = Type.Object({
|
|
55
60
|
records: Type.Array(EvidenceChainRecordSchema),
|
|
@@ -85,6 +90,121 @@ function coerceToString(value) {
|
|
|
85
90
|
return String(value);
|
|
86
91
|
return '';
|
|
87
92
|
}
|
|
93
|
+
// ── PRI-469: Intent Tension validation (SPEC §16) ────────────────────────────
|
|
94
|
+
//
|
|
95
|
+
// Pure helper that validates an untrusted `intentTension` object read from the
|
|
96
|
+
// diagnostician artifact's content_json. Returns the validated IntentTension
|
|
97
|
+
// (with evidence truncated to max 3 per SPEC §16.4) or `undefined` when the
|
|
98
|
+
// data is malformed. The caller is responsible for setting a degradedReason
|
|
99
|
+
// when validation fails (ERR-002: graceful degradation must include a reason).
|
|
100
|
+
//
|
|
101
|
+
// SPEC §16.3: `confidence` is FORBIDDEN on intentTension. The Stage A
|
|
102
|
+
// rootCause-level confidence is the only diagnostician confidence. This helper
|
|
103
|
+
// explicitly rejects any object carrying a `confidence` field, in addition to
|
|
104
|
+
// the TypeBox schema's additionalProperties:false guard — defense in depth
|
|
105
|
+
// (ERR-001: untrusted data from DB artifacts).
|
|
106
|
+
const VALID_INTENT_TENSION_SOURCES = new Set([
|
|
107
|
+
'none',
|
|
108
|
+
'action_drift',
|
|
109
|
+
'intent_suspect',
|
|
110
|
+
'healthy_tension',
|
|
111
|
+
]);
|
|
112
|
+
const VALID_EVIDENCE_STRENGTHS = new Set(['weak', 'moderate', 'strong']);
|
|
113
|
+
const VALID_INTENT_RELATED_FIELDS = new Set([
|
|
114
|
+
'why',
|
|
115
|
+
'desired_outcome',
|
|
116
|
+
'non_negotiables',
|
|
117
|
+
'stop_escalation',
|
|
118
|
+
'current_strategic_focus',
|
|
119
|
+
]);
|
|
120
|
+
const VALID_SUGGESTED_OWNER_ACTIONS = new Set([
|
|
121
|
+
'confirm_drift',
|
|
122
|
+
'revise_intent',
|
|
123
|
+
'observe',
|
|
124
|
+
'dismiss',
|
|
125
|
+
'promote_to_principle',
|
|
126
|
+
'promote_to_rulehost',
|
|
127
|
+
]);
|
|
128
|
+
/** SPEC §16.4: evidence array is capped at 3 items to limit Owner review burden. */
|
|
129
|
+
const INTENT_TENSION_EVIDENCE_MAX = 3;
|
|
130
|
+
/**
|
|
131
|
+
* Validate an untrusted `intentTension` value from a diagnostician artifact.
|
|
132
|
+
*
|
|
133
|
+
* @returns The validated IntentTension (evidence truncated to max 3), or
|
|
134
|
+
* `undefined` when the value is malformed. Never throws.
|
|
135
|
+
*
|
|
136
|
+
* Runtime Contract rules applied:
|
|
137
|
+
* - Rule 1: input is `unknown`, validated before use (ERR-001)
|
|
138
|
+
* - Rule 2: no `as` bypass — all fields checked with typeof / Set.has (ERR-001/005)
|
|
139
|
+
* - Rule 4: array element types validated element-wise (ERR-005/007)
|
|
140
|
+
* - Rule 5: Object.hasOwn used for key checks (ERR-013)
|
|
141
|
+
* - Rule 9: callers must set a degradedReason when this returns undefined (ERR-002)
|
|
142
|
+
*/
|
|
143
|
+
export function validateIntentTension(value) {
|
|
144
|
+
if (!isRecord(value))
|
|
145
|
+
return undefined;
|
|
146
|
+
// SPEC §16.3: confidence is forbidden on intentTension.
|
|
147
|
+
if (Object.hasOwn(value, 'confidence'))
|
|
148
|
+
return undefined;
|
|
149
|
+
const source = getOwnValue(value, 'source');
|
|
150
|
+
if (typeof source !== 'string' || !VALID_INTENT_TENSION_SOURCES.has(source)) {
|
|
151
|
+
return undefined;
|
|
152
|
+
}
|
|
153
|
+
const evidenceStrength = getOwnValue(value, 'evidenceStrength');
|
|
154
|
+
if (typeof evidenceStrength !== 'string' || !VALID_EVIDENCE_STRENGTHS.has(evidenceStrength)) {
|
|
155
|
+
return undefined;
|
|
156
|
+
}
|
|
157
|
+
// relatedIntentFields: must be an array of valid enum strings (ERR-005/007).
|
|
158
|
+
const relatedIntentFieldsRaw = getOwnValue(value, 'relatedIntentFields');
|
|
159
|
+
if (!Array.isArray(relatedIntentFieldsRaw))
|
|
160
|
+
return undefined;
|
|
161
|
+
const relatedIntentFields = [];
|
|
162
|
+
for (const f of relatedIntentFieldsRaw) {
|
|
163
|
+
// Runtime-validated against the enum Set; the `as` cast below is AFTER
|
|
164
|
+
// validation, which is the correct pattern (Rule 2 forbids using `as`
|
|
165
|
+
// INSTEAD of validation, not after it).
|
|
166
|
+
if (typeof f !== 'string' || !VALID_INTENT_RELATED_FIELDS.has(f))
|
|
167
|
+
return undefined;
|
|
168
|
+
relatedIntentFields.push(f);
|
|
169
|
+
}
|
|
170
|
+
// evidence: must be an array of strings. Truncate to max 3 (SPEC §16.4,
|
|
171
|
+
// graceful degradation — keep the first 3 rather than dropping the whole
|
|
172
|
+
// tension, so the Owner still sees the signal).
|
|
173
|
+
const evidenceRaw = getOwnValue(value, 'evidence');
|
|
174
|
+
if (!Array.isArray(evidenceRaw))
|
|
175
|
+
return undefined;
|
|
176
|
+
const evidence = [];
|
|
177
|
+
for (const e of evidenceRaw) {
|
|
178
|
+
if (typeof e !== 'string')
|
|
179
|
+
return undefined;
|
|
180
|
+
evidence.push(e);
|
|
181
|
+
}
|
|
182
|
+
const truncatedEvidence = evidence.slice(0, INTENT_TENSION_EVIDENCE_MAX);
|
|
183
|
+
const explanation = getOwnValue(value, 'explanation');
|
|
184
|
+
if (typeof explanation !== 'string' || explanation.length === 0)
|
|
185
|
+
return undefined;
|
|
186
|
+
const suggestedOwnerAction = getOwnValue(value, 'suggestedOwnerAction');
|
|
187
|
+
if (typeof suggestedOwnerAction !== 'string' ||
|
|
188
|
+
!VALID_SUGGESTED_OWNER_ACTIONS.has(suggestedOwnerAction)) {
|
|
189
|
+
return undefined;
|
|
190
|
+
}
|
|
191
|
+
// intentDocHash: optional string.
|
|
192
|
+
const intentDocHash = getOwnValue(value, 'intentDocHash');
|
|
193
|
+
if (intentDocHash !== undefined && typeof intentDocHash !== 'string')
|
|
194
|
+
return undefined;
|
|
195
|
+
const result = {
|
|
196
|
+
source: source,
|
|
197
|
+
evidenceStrength: evidenceStrength,
|
|
198
|
+
relatedIntentFields,
|
|
199
|
+
evidence: truncatedEvidence,
|
|
200
|
+
explanation,
|
|
201
|
+
suggestedOwnerAction: suggestedOwnerAction,
|
|
202
|
+
};
|
|
203
|
+
if (typeof intentDocHash === 'string') {
|
|
204
|
+
result.intentDocHash = intentDocHash;
|
|
205
|
+
}
|
|
206
|
+
return result;
|
|
207
|
+
}
|
|
88
208
|
// ── Mapping & State Resolution ────────────────────────────────────────────────
|
|
89
209
|
export function mapSourceKind(source) {
|
|
90
210
|
switch (source) {
|
|
@@ -523,7 +643,7 @@ function dedupeRecords(records) {
|
|
|
523
643
|
return records.filter(record => !idsToRemove.has(record.id));
|
|
524
644
|
}
|
|
525
645
|
export function assembleEvidenceChain(params) {
|
|
526
|
-
const { workspaceDir, painEvents: rawPainEvents, tasks: rawTasks, candidates: rawCandidates, dreamerTasks: rawDreamerTasks, ledgerPrinciples, trajectoryDbAvailable, stateDbAvailable, } = params;
|
|
646
|
+
const { workspaceDir, painEvents: rawPainEvents, tasks: rawTasks, candidates: rawCandidates, dreamerTasks: rawDreamerTasks, ledgerPrinciples, trajectoryDbAvailable, stateDbAvailable, diagnosticArtifacts: rawDiagnosticArtifacts, } = params;
|
|
527
647
|
const generatedAt = new Date().toISOString();
|
|
528
648
|
const records = [];
|
|
529
649
|
const degradedReasons = params.degradedReasons ? [...params.degradedReasons] : [];
|
|
@@ -533,6 +653,22 @@ export function assembleEvidenceChain(params) {
|
|
|
533
653
|
const tasks = rawTasks.filter(isRecord);
|
|
534
654
|
const candidates = rawCandidates.filter(isRecord);
|
|
535
655
|
const dreamerTasks = rawDreamerTasks.filter(isRecord);
|
|
656
|
+
const diagnosticArtifacts = (rawDiagnosticArtifacts ?? []).filter(isRecord);
|
|
657
|
+
// PRI-469: Build artifact lookup by task_id. Each artifact row has
|
|
658
|
+
// { task_id: string, content_json: string }. content_json holds the
|
|
659
|
+
// DiagnosticianOutputV1 JSON (including rootCause and optional intentTension).
|
|
660
|
+
// Artifact is the CANONICAL source; tasks.diagnostic_json is a fallback.
|
|
661
|
+
const artifactByTaskId = new Map();
|
|
662
|
+
for (const artifact of diagnosticArtifacts) {
|
|
663
|
+
const taskId = readOwnString(artifact, 'task_id');
|
|
664
|
+
if (!taskId)
|
|
665
|
+
continue;
|
|
666
|
+
// First artifact wins — duplicate task_ids should not happen, but if they
|
|
667
|
+
// do we keep the first to avoid silent data swapping (ERR-015).
|
|
668
|
+
if (!artifactByTaskId.has(taskId)) {
|
|
669
|
+
artifactByTaskId.set(taskId, artifact);
|
|
670
|
+
}
|
|
671
|
+
}
|
|
536
672
|
// 1. Process tasks into a map
|
|
537
673
|
const taskMap = new Map();
|
|
538
674
|
for (const task of tasks) {
|
|
@@ -546,18 +682,79 @@ export function assembleEvidenceChain(params) {
|
|
|
546
682
|
else {
|
|
547
683
|
painId = taskId.startsWith('diagnosis_') ? taskId.slice('diagnosis_'.length) : taskId;
|
|
548
684
|
}
|
|
685
|
+
// PRI-469: Extract rootCause and intentTension from the diagnostician
|
|
686
|
+
// artifact (canonical source). Artifact takes precedence over
|
|
687
|
+
// tasks.diagnostic_json, which is kept only as a test-fixture fallback.
|
|
549
688
|
let rootCauseSummary;
|
|
689
|
+
let intentTension;
|
|
690
|
+
let artifactDegraded = false;
|
|
550
691
|
let diagnosticJsonDegraded = false;
|
|
551
|
-
const
|
|
552
|
-
if (
|
|
553
|
-
|
|
554
|
-
|
|
555
|
-
|
|
556
|
-
|
|
692
|
+
const artifact = taskId ? artifactByTaskId.get(taskId) : undefined;
|
|
693
|
+
if (artifact) {
|
|
694
|
+
const contentJson = readOwnString(artifact, 'content_json');
|
|
695
|
+
if (typeof contentJson === 'string') {
|
|
696
|
+
try {
|
|
697
|
+
const parsed = JSON.parse(contentJson);
|
|
698
|
+
if (isRecord(parsed)) {
|
|
699
|
+
// rootCause from artifact (canonical, takes precedence).
|
|
700
|
+
// The artifact stores DiagnosticianOutputV1 where rootCause is an
|
|
701
|
+
// object: { summary: string, confidence: number, ... }. Legacy
|
|
702
|
+
// test fixtures may store rootCause as a plain string. Handle both.
|
|
703
|
+
const artifactRootCause = getOwnValue(parsed, 'rootCause');
|
|
704
|
+
if (typeof artifactRootCause === 'string') {
|
|
705
|
+
rootCauseSummary = artifactRootCause;
|
|
706
|
+
}
|
|
707
|
+
else if (isRecord(artifactRootCause)) {
|
|
708
|
+
const rootCauseSummaryValue = getOwnValue(artifactRootCause, 'summary');
|
|
709
|
+
if (typeof rootCauseSummaryValue === 'string') {
|
|
710
|
+
rootCauseSummary = rootCauseSummaryValue;
|
|
711
|
+
}
|
|
712
|
+
}
|
|
713
|
+
// intentTension from artifact — validated with runtime guards.
|
|
714
|
+
// Only extract when the key is present (optional field).
|
|
715
|
+
if (Object.hasOwn(parsed, 'intentTension')) {
|
|
716
|
+
const validated = validateIntentTension(getOwnValue(parsed, 'intentTension'));
|
|
717
|
+
if (validated) {
|
|
718
|
+
intentTension = validated;
|
|
719
|
+
}
|
|
720
|
+
else {
|
|
721
|
+
// intentTension was present but malformed — degrade visibly
|
|
722
|
+
// (ERR-002). rootCause may still be valid, so we do NOT clobber
|
|
723
|
+
// it; we only flag the artifact as partially degraded.
|
|
724
|
+
artifactDegraded = true;
|
|
725
|
+
}
|
|
726
|
+
}
|
|
727
|
+
}
|
|
728
|
+
else {
|
|
729
|
+
// content_json parsed but not an object — degrade.
|
|
730
|
+
artifactDegraded = true;
|
|
731
|
+
}
|
|
557
732
|
}
|
|
733
|
+
catch {
|
|
734
|
+
// content_json is not valid JSON — degrade. rootCause and
|
|
735
|
+
// intentTension both unavailable from the artifact.
|
|
736
|
+
artifactDegraded = true;
|
|
737
|
+
}
|
|
738
|
+
}
|
|
739
|
+
else {
|
|
740
|
+
// content_json missing or not a string — degrade.
|
|
741
|
+
artifactDegraded = true;
|
|
558
742
|
}
|
|
559
|
-
|
|
560
|
-
|
|
743
|
+
}
|
|
744
|
+
// Fallback: tasks.diagnostic_json (test-fixture compat). Only used when
|
|
745
|
+
// the artifact did not provide a rootCause.
|
|
746
|
+
if (rootCauseSummary === undefined) {
|
|
747
|
+
const dj = getOwnValue(task, 'diagnostic_json');
|
|
748
|
+
if (isString(dj)) {
|
|
749
|
+
try {
|
|
750
|
+
const parsed = JSON.parse(dj);
|
|
751
|
+
if (isRecord(parsed) && Object.hasOwn(parsed, 'rootCause') && isString(parsed.rootCause)) {
|
|
752
|
+
rootCauseSummary = parsed.rootCause;
|
|
753
|
+
}
|
|
754
|
+
}
|
|
755
|
+
catch {
|
|
756
|
+
diagnosticJsonDegraded = true;
|
|
757
|
+
}
|
|
561
758
|
}
|
|
562
759
|
}
|
|
563
760
|
taskMap.set(painId, {
|
|
@@ -568,6 +765,8 @@ export function assembleEvidenceChain(params) {
|
|
|
568
765
|
rootCauseSummary,
|
|
569
766
|
diagnosticJsonDegraded,
|
|
570
767
|
inputRef,
|
|
768
|
+
intentTension,
|
|
769
|
+
artifactDegraded,
|
|
571
770
|
});
|
|
572
771
|
}
|
|
573
772
|
// 2. Build dreamer map
|
|
@@ -753,6 +952,16 @@ export function assembleEvidenceChain(params) {
|
|
|
753
952
|
if (linkedTask.diagnosticJsonDegraded) {
|
|
754
953
|
record.degradedReason = 'Diagnostic data for this record could not be parsed';
|
|
755
954
|
}
|
|
955
|
+
// PRI-469: surface intentTension from the diagnostician artifact.
|
|
956
|
+
if (linkedTask.intentTension) {
|
|
957
|
+
record.intentTension = linkedTask.intentTension;
|
|
958
|
+
}
|
|
959
|
+
// PRI-469: artifact degraded (content_json unparseable or intentTension
|
|
960
|
+
// malformed) — degrade visibly (ERR-002). Do not clobber an existing
|
|
961
|
+
// degradedReason from diagnosticJsonDegraded; append instead.
|
|
962
|
+
if (linkedTask.artifactDegraded && !record.degradedReason) {
|
|
963
|
+
record.degradedReason = 'Diagnostician artifact for this record could not be fully parsed; intentTension may be unavailable.';
|
|
964
|
+
}
|
|
756
965
|
}
|
|
757
966
|
if (dreamerInfo) {
|
|
758
967
|
record.internalizationTaskId = dreamerInfo.taskId;
|
|
@@ -917,6 +1126,10 @@ export function assembleEvidenceChain(params) {
|
|
|
917
1126
|
if (crossRefTask.rootCauseSummary) {
|
|
918
1127
|
record.rootCauseSummary = crossRefTask.rootCauseSummary;
|
|
919
1128
|
}
|
|
1129
|
+
// PRI-469: surface intentTension from the cross-referenced task's artifact.
|
|
1130
|
+
if (crossRefTask.intentTension) {
|
|
1131
|
+
record.intentTension = crossRefTask.intentTension;
|
|
1132
|
+
}
|
|
920
1133
|
if (crossRefTask.lastError && (state === 'diagnosis-failed' || state === 'diagnosis-retry-wait')) {
|
|
921
1134
|
record.failureReason = crossRefTask.lastError;
|
|
922
1135
|
}
|
|
@@ -931,6 +1144,10 @@ export function assembleEvidenceChain(params) {
|
|
|
931
1144
|
if (crossRefTask.diagnosticJsonDegraded) {
|
|
932
1145
|
record.degradedReason = 'Diagnostic data for this record could not be parsed';
|
|
933
1146
|
}
|
|
1147
|
+
// PRI-469: artifact degraded — degrade visibly (ERR-002).
|
|
1148
|
+
if (crossRefTask.artifactDegraded && !record.degradedReason) {
|
|
1149
|
+
record.degradedReason = 'Diagnostician artifact for this record could not be fully parsed; intentTension may be unavailable.';
|
|
1150
|
+
}
|
|
934
1151
|
records.push(record);
|
|
935
1152
|
}
|
|
936
1153
|
// 6. Include tasks that have no matching pain_event (e.g. CLI direct records)
|
|
@@ -1000,6 +1217,10 @@ export function assembleEvidenceChain(params) {
|
|
|
1000
1217
|
if (task.rootCauseSummary) {
|
|
1001
1218
|
record.rootCauseSummary = task.rootCauseSummary;
|
|
1002
1219
|
}
|
|
1220
|
+
// PRI-469: surface intentTension from the task's diagnostician artifact.
|
|
1221
|
+
if (task.intentTension) {
|
|
1222
|
+
record.intentTension = task.intentTension;
|
|
1223
|
+
}
|
|
1003
1224
|
if (task.lastError && (state === 'diagnosis-failed' || state === 'diagnosis-retry-wait')) {
|
|
1004
1225
|
record.failureReason = task.lastError;
|
|
1005
1226
|
}
|
|
@@ -1014,6 +1235,10 @@ export function assembleEvidenceChain(params) {
|
|
|
1014
1235
|
if (task.diagnosticJsonDegraded) {
|
|
1015
1236
|
record.degradedReason = 'Diagnostic data for this record could not be parsed';
|
|
1016
1237
|
}
|
|
1238
|
+
// PRI-469: artifact degraded — degrade visibly (ERR-002).
|
|
1239
|
+
if (task.artifactDegraded && !record.degradedReason) {
|
|
1240
|
+
record.degradedReason = 'Diagnostician artifact for this record could not be fully parsed; intentTension may be unavailable.';
|
|
1241
|
+
}
|
|
1017
1242
|
records.push(record);
|
|
1018
1243
|
}
|
|
1019
1244
|
// Sort by observedAt descending
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"evidence-chain-contract.js","sourceRoot":"","sources":["../../../src/runtime-v2/types/evidence-chain-contract.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"evidence-chain-contract.js","sourceRoot":"","sources":["../../../src/runtime-v2/types/evidence-chain-contract.ts"],"names":[],"mappings":"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"}
|