@principles/core 1.238.0 → 1.240.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__/artificer-runner-vslice.test.js +253 -0
- package/dist/runtime-v2/__tests__/artificer-runner-vslice.test.js.map +1 -1
- package/dist/runtime-v2/__tests__/evaluator-repair-loop.test.d.ts +2 -0
- package/dist/runtime-v2/__tests__/evaluator-repair-loop.test.d.ts.map +1 -0
- package/dist/runtime-v2/__tests__/evaluator-repair-loop.test.js +562 -0
- package/dist/runtime-v2/__tests__/evaluator-repair-loop.test.js.map +1 -0
- package/dist/runtime-v2/__tests__/pitask-metadata.test.js +150 -0
- package/dist/runtime-v2/__tests__/pitask-metadata.test.js.map +1 -1
- package/dist/runtime-v2/feature-flags/__tests__/feature-flag-contract.test.js +32 -0
- package/dist/runtime-v2/feature-flags/__tests__/feature-flag-contract.test.js.map +1 -1
- package/dist/runtime-v2/feature-flags/feature-flag-contract.d.ts.map +1 -1
- package/dist/runtime-v2/feature-flags/feature-flag-contract.js +7 -0
- package/dist/runtime-v2/feature-flags/feature-flag-contract.js.map +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.map +1 -1
- package/dist/runtime-v2/internalization/__tests__/artificer-prompt-builder.test.js +59 -0
- package/dist/runtime-v2/internalization/__tests__/artificer-prompt-builder.test.js.map +1 -1
- package/dist/runtime-v2/internalization/artificer-prompt-builder.d.ts +13 -1
- package/dist/runtime-v2/internalization/artificer-prompt-builder.d.ts.map +1 -1
- package/dist/runtime-v2/internalization/artificer-prompt-builder.js +11 -0
- package/dist/runtime-v2/internalization/artificer-prompt-builder.js.map +1 -1
- package/dist/runtime-v2/internalization/artificer-runner.d.ts +13 -0
- package/dist/runtime-v2/internalization/artificer-runner.d.ts.map +1 -1
- package/dist/runtime-v2/internalization/artificer-runner.js +57 -2
- package/dist/runtime-v2/internalization/artificer-runner.js.map +1 -1
- package/dist/runtime-v2/internalization/evaluator-runner.d.ts +85 -0
- package/dist/runtime-v2/internalization/evaluator-runner.d.ts.map +1 -1
- package/dist/runtime-v2/internalization/evaluator-runner.js +223 -0
- package/dist/runtime-v2/internalization/evaluator-runner.js.map +1 -1
- package/dist/runtime-v2/internalization/peer-runner-contracts.d.ts +3 -0
- package/dist/runtime-v2/internalization/peer-runner-contracts.d.ts.map +1 -1
- package/dist/runtime-v2/internalization/peer-runner-contracts.js.map +1 -1
- package/dist/runtime-v2/internalization/pitask-metadata.d.ts +34 -0
- package/dist/runtime-v2/internalization/pitask-metadata.d.ts.map +1 -1
- package/dist/runtime-v2/internalization/pitask-metadata.js +64 -0
- package/dist/runtime-v2/internalization/pitask-metadata.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"peer-runner-contracts.d.ts","sourceRoot":"","sources":["../../../src/runtime-v2/internalization/peer-runner-contracts.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"peer-runner-contracts.d.ts","sourceRoot":"","sources":["../../../src/runtime-v2/internalization/peer-runner-contracts.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"peer-runner-contracts.js","sourceRoot":"","sources":["../../../src/runtime-v2/internalization/peer-runner-contracts.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;
|
|
1
|
+
{"version":3,"file":"peer-runner-contracts.js","sourceRoot":"","sources":["../../../src/runtime-v2/internalization/peer-runner-contracts.ts"],"names":[],"mappings":"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"}
|
|
@@ -28,6 +28,33 @@ import type { TaskRecord } from '../task-status.js';
|
|
|
28
28
|
import type { PITaskRecord, InternalizationChannel, ArtifactRef } from './peer-runner-contracts.js';
|
|
29
29
|
/** Namespace key used inside diagnosticJson to isolate PI metadata. */
|
|
30
30
|
export declare const PI_METADATA_KEY: "pi_metadata";
|
|
31
|
+
/**
|
|
32
|
+
* Evaluator repair payload (PRI-509).
|
|
33
|
+
*
|
|
34
|
+
* Carries the evaluator's structured feedback when decision === 'needs_revision'
|
|
35
|
+
* so the seeded artificer repair task can address each required change instead
|
|
36
|
+
* of regenerating blind. The metadata layer treats this as opaque; the
|
|
37
|
+
* ArtificerRunner.buildContext reads it and constructs a pre-formatted
|
|
38
|
+
* repairFeedback string for the prompt builder.
|
|
39
|
+
*
|
|
40
|
+
* Lineage (rc-6):
|
|
41
|
+
* - sourceArtificerArtifactId: the prior artificer artifact that was rejected
|
|
42
|
+
* - sourceEvaluatorTaskId: the evaluator task that returned needs_revision
|
|
43
|
+
*
|
|
44
|
+
* Loop state freshness (rc-7, EP-05, ERR-015/018/019):
|
|
45
|
+
* - repairIteration is written at task creation time, never inferred at read.
|
|
46
|
+
* - Round 1 = first repair (after initial evaluator needs_revision).
|
|
47
|
+
* - Round 2 = second repair (after first repair's evaluator needs_revision).
|
|
48
|
+
* - Max 2 rounds; a 3rd needs_revision fails loud via needs_human_review (EP-03).
|
|
49
|
+
*/
|
|
50
|
+
export interface RepairPayload {
|
|
51
|
+
readonly requiredChanges: readonly string[];
|
|
52
|
+
readonly concerns: readonly string[];
|
|
53
|
+
readonly previousScore: number;
|
|
54
|
+
readonly repairIteration: number;
|
|
55
|
+
readonly sourceArtificerArtifactId: string;
|
|
56
|
+
readonly sourceEvaluatorTaskId: string;
|
|
57
|
+
}
|
|
31
58
|
/**
|
|
32
59
|
* PI-specific metadata stored inside TaskRecord.diagnosticJson.
|
|
33
60
|
* All fields must be present except parentTaskId and correlationId (optional).
|
|
@@ -48,6 +75,13 @@ export interface PITaskMetadata {
|
|
|
48
75
|
* metadata layer; the ArtificerRunner forwards it to the prompt builder.
|
|
49
76
|
*/
|
|
50
77
|
adversarialFeedback?: string;
|
|
78
|
+
/**
|
|
79
|
+
* Evaluator repair payload (PRI-509). Present only on artificer tasks seeded
|
|
80
|
+
* by evaluator needs_revision. Carries the structured feedback
|
|
81
|
+
* (requiredChanges/concerns/previousScore/repairIteration) so the artificer
|
|
82
|
+
* can address each required change. Undefined on Round-1 artificer tasks.
|
|
83
|
+
*/
|
|
84
|
+
repairPayload?: RepairPayload;
|
|
51
85
|
}
|
|
52
86
|
/**
|
|
53
87
|
* Serialize PITaskMetadata into a JSON string suitable for TaskRecord.diagnosticJson.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pitask-metadata.d.ts","sourceRoot":"","sources":["../../../src/runtime-v2/internalization/pitask-metadata.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,KAAK,EACV,YAAY,EACZ,sBAAsB,EACtB,WAAW,EACZ,MAAM,4BAA4B,CAAC;AAGpC,uEAAuE;AACvE,eAAO,MAAM,eAAe,EAAG,aAAsB,CAAC;AAEtD;;;GAGG;AACH,MAAM,WAAW,cAAc;IAC7B,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B,OAAO,EAAE,sBAAsB,CAAC;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,iBAAiB,EAAE,WAAW,EAAE,CAAC;IACjC,kBAAkB,EAAE,WAAW,EAAE,CAAC;IAClC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;;;OAKG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"pitask-metadata.d.ts","sourceRoot":"","sources":["../../../src/runtime-v2/internalization/pitask-metadata.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,KAAK,EACV,YAAY,EACZ,sBAAsB,EACtB,WAAW,EACZ,MAAM,4BAA4B,CAAC;AAGpC,uEAAuE;AACvE,eAAO,MAAM,eAAe,EAAG,aAAsB,CAAC;AAEtD;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,eAAe,EAAE,SAAS,MAAM,EAAE,CAAC;IAC5C,QAAQ,CAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAC;IACrC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,yBAAyB,EAAE,MAAM,CAAC;IAC3C,QAAQ,CAAC,qBAAqB,EAAE,MAAM,CAAC;CACxC;AAED;;;GAGG;AACH,MAAM,WAAW,cAAc;IAC7B,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B,OAAO,EAAE,sBAAsB,CAAC;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,iBAAiB,EAAE,WAAW,EAAE,CAAC;IACjC,kBAAkB,EAAE,WAAW,EAAE,CAAC;IAClC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;;;OAKG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B;;;;;OAKG;IACH,aAAa,CAAC,EAAE,aAAa,CAAC;CAC/B;AAID;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,cAAc,GAAG,MAAM,CAexE;AAED,kFAAkF;AAClF,eAAO,MAAM,0BAA0B,gCAA0B,CAAC;AA6DlE;;;;;;;;;GASG;AACH,wBAAgB,mBAAmB,CAAC,cAAc,EAAE,MAAM,GAAG,cAAc,GAAG,IAAI,CAkFjF;AAID;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,UAAU,GAAG,YAAY,GAAG,IAAI,CA4BzE"}
|
|
@@ -44,6 +44,7 @@ export function serializePITaskMetadata(metadata) {
|
|
|
44
44
|
correlationId: metadata.correlationId,
|
|
45
45
|
rejectionCount: metadata.rejectionCount,
|
|
46
46
|
adversarialFeedback: metadata.adversarialFeedback,
|
|
47
|
+
repairPayload: metadata.repairPayload,
|
|
47
48
|
},
|
|
48
49
|
});
|
|
49
50
|
}
|
|
@@ -62,6 +63,57 @@ function isValidArtifactRef(value) {
|
|
|
62
63
|
return typeof r.artifactType === 'string' && r.artifactType.trim() !== '' &&
|
|
63
64
|
typeof r.ref === 'string' && r.ref.trim() !== '';
|
|
64
65
|
}
|
|
66
|
+
/**
|
|
67
|
+
* Validates a value is a valid RepairPayload (PRI-509).
|
|
68
|
+
*
|
|
69
|
+
* Trust boundary (rc-1, rc-2): repairPayload originates from evaluator LLM
|
|
70
|
+
* output persisted into diagnosticJson. Treat as unknown and validate every
|
|
71
|
+
* field before returning. No `as` casts that bypass validation.
|
|
72
|
+
*
|
|
73
|
+
* Validation rules:
|
|
74
|
+
* - requiredChanges: non-empty array of non-empty strings (rc-4)
|
|
75
|
+
* - concerns: array of non-empty strings (can be empty)
|
|
76
|
+
* - previousScore: finite number
|
|
77
|
+
* - repairIteration: positive integer, upper bound of 2 (rc-3 fail-closed
|
|
78
|
+
* at the trust boundary — the documented contract is "max 2 rounds"; a
|
|
79
|
+
* payload with repairIteration: 3 must be rejected here rather than
|
|
80
|
+
* relying on the runtime caller's priorRepairIteration >= 2 check)
|
|
81
|
+
* - sourceArtificerArtifactId: non-empty string
|
|
82
|
+
* - sourceEvaluatorTaskId: non-empty string
|
|
83
|
+
*/
|
|
84
|
+
function isValidRepairPayload(value) {
|
|
85
|
+
if (typeof value !== 'object' || value === null || Array.isArray(value))
|
|
86
|
+
return false;
|
|
87
|
+
const p = value;
|
|
88
|
+
// rc-4: validate array elements are non-empty strings.
|
|
89
|
+
if (!Array.isArray(p.requiredChanges) || p.requiredChanges.length === 0)
|
|
90
|
+
return false;
|
|
91
|
+
for (const c of p.requiredChanges) {
|
|
92
|
+
if (typeof c !== 'string' || c.trim() === '')
|
|
93
|
+
return false;
|
|
94
|
+
}
|
|
95
|
+
if (!Array.isArray(p.concerns))
|
|
96
|
+
return false;
|
|
97
|
+
for (const c of p.concerns) {
|
|
98
|
+
if (typeof c !== 'string' || c.trim() === '')
|
|
99
|
+
return false;
|
|
100
|
+
}
|
|
101
|
+
if (typeof p.previousScore !== 'number' || !Number.isFinite(p.previousScore))
|
|
102
|
+
return false;
|
|
103
|
+
// rc-3: enforce the documented max-2-rounds contract at the trust boundary.
|
|
104
|
+
// repairIteration must be a positive integer in [1, 2]; reject 3+ here so
|
|
105
|
+
// a malformed payload cannot bypass the runtime caller's max-iteration guard.
|
|
106
|
+
if (typeof p.repairIteration !== 'number'
|
|
107
|
+
|| !Number.isInteger(p.repairIteration)
|
|
108
|
+
|| p.repairIteration < 1
|
|
109
|
+
|| p.repairIteration > 2)
|
|
110
|
+
return false;
|
|
111
|
+
if (typeof p.sourceArtificerArtifactId !== 'string' || p.sourceArtificerArtifactId.trim() === '')
|
|
112
|
+
return false;
|
|
113
|
+
if (typeof p.sourceEvaluatorTaskId !== 'string' || p.sourceEvaluatorTaskId.trim() === '')
|
|
114
|
+
return false;
|
|
115
|
+
return true;
|
|
116
|
+
}
|
|
65
117
|
// ── Parsing ─────────────────────────────────────────────────────────────────────
|
|
66
118
|
/**
|
|
67
119
|
* Parse a diagnosticJson string into PITaskMetadata.
|
|
@@ -145,6 +197,16 @@ export function parsePITaskMetadata(diagnosticJson) {
|
|
|
145
197
|
if (m.adversarialFeedback.trim() === '')
|
|
146
198
|
return null;
|
|
147
199
|
}
|
|
200
|
+
// repairPayload (PRI-509): optional, must pass full validation if present.
|
|
201
|
+
// rc-3: if the key is present but the value is malformed, fail loud (return null)
|
|
202
|
+
// rather than silently dropping the field — the caller will see a null metadata
|
|
203
|
+
// and treat the task as non-PI, which surfaces the corruption.
|
|
204
|
+
let repairPayload;
|
|
205
|
+
if (Object.hasOwn(m, 'repairPayload') && m.repairPayload !== undefined) {
|
|
206
|
+
if (!isValidRepairPayload(m.repairPayload))
|
|
207
|
+
return null;
|
|
208
|
+
({ repairPayload } = m);
|
|
209
|
+
}
|
|
148
210
|
return {
|
|
149
211
|
dependencyTaskIds: m.dependencyTaskIds,
|
|
150
212
|
channel: m.channel,
|
|
@@ -155,6 +217,7 @@ export function parsePITaskMetadata(diagnosticJson) {
|
|
|
155
217
|
correlationId: typeof m.correlationId === 'string' ? m.correlationId : undefined,
|
|
156
218
|
rejectionCount,
|
|
157
219
|
adversarialFeedback: typeof m.adversarialFeedback === 'string' ? m.adversarialFeedback : undefined,
|
|
220
|
+
repairPayload,
|
|
158
221
|
};
|
|
159
222
|
}
|
|
160
223
|
// ── Hydration ───────────────────────────────────────────────────────────────────
|
|
@@ -200,6 +263,7 @@ export function hydratePITaskRecord(task) {
|
|
|
200
263
|
correlationId: meta.correlationId,
|
|
201
264
|
rejectionCount: meta.rejectionCount ?? 0,
|
|
202
265
|
adversarialFeedback: meta.adversarialFeedback,
|
|
266
|
+
repairPayload: meta.repairPayload,
|
|
203
267
|
};
|
|
204
268
|
}
|
|
205
269
|
//# sourceMappingURL=pitask-metadata.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pitask-metadata.js","sourceRoot":"","sources":["../../../src/runtime-v2/internalization/pitask-metadata.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAQH,OAAO,EAAE,wBAAwB,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAEpF,uEAAuE;AACvE,MAAM,CAAC,MAAM,eAAe,GAAG,aAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"pitask-metadata.js","sourceRoot":"","sources":["../../../src/runtime-v2/internalization/pitask-metadata.ts"],"names":[],"mappings":"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"}
|