@principles/core 1.168.0 → 1.169.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__/activation-types-helpers.test.js +6 -14
- package/dist/runtime-v2/__tests__/activation-types-helpers.test.js.map +1 -1
- package/dist/runtime-v2/__tests__/architecture-regression.test.js +2 -66
- package/dist/runtime-v2/__tests__/architecture-regression.test.js.map +1 -1
- package/dist/runtime-v2/__tests__/intake-to-internalization-bridge.test.js +1 -2
- package/dist/runtime-v2/__tests__/intake-to-internalization-bridge.test.js.map +1 -1
- package/dist/runtime-v2/__tests__/internalization-orchestrator.test.js +8 -8
- package/dist/runtime-v2/__tests__/internalization-orchestrator.test.js.map +1 -1
- package/dist/runtime-v2/__tests__/internalization-peer-runner-contracts.test.js +45 -80
- package/dist/runtime-v2/__tests__/internalization-peer-runner-contracts.test.js.map +1 -1
- package/dist/runtime-v2/__tests__/internalization-state-machine.test.js +31 -130
- package/dist/runtime-v2/__tests__/internalization-state-machine.test.js.map +1 -1
- package/dist/runtime-v2/__tests__/pain-to-principle-service.test.js +0 -1
- package/dist/runtime-v2/__tests__/pain-to-principle-service.test.js.map +1 -1
- package/dist/runtime-v2/__tests__/pitask-metadata.test.js +4 -4
- package/dist/runtime-v2/__tests__/pitask-metadata.test.js.map +1 -1
- package/dist/runtime-v2/__tests__/proven-channel-baseline.test.js +2 -5
- package/dist/runtime-v2/__tests__/proven-channel-baseline.test.js.map +1 -1
- package/dist/runtime-v2/__tests__/story-a-demo.test.js +2 -2
- package/dist/runtime-v2/__tests__/story-a-demo.test.js.map +1 -1
- package/dist/runtime-v2/activation/__tests__/activation-dispatcher.test.js +7 -10
- package/dist/runtime-v2/activation/__tests__/activation-dispatcher.test.js.map +1 -1
- package/dist/runtime-v2/activation/__tests__/approval-queue.test.js +1 -3
- package/dist/runtime-v2/activation/__tests__/approval-queue.test.js.map +1 -1
- package/dist/runtime-v2/activation/__tests__/approval-store-extended.test.js +4 -4
- package/dist/runtime-v2/activation/__tests__/sqlite-approval-store.test.js +6 -6
- package/dist/runtime-v2/activation/__tests__/sqlite-approval-store.test.js.map +1 -1
- package/dist/runtime-v2/activation/activation-dispatcher.d.ts.map +1 -1
- package/dist/runtime-v2/activation/activation-dispatcher.js +0 -1
- package/dist/runtime-v2/activation/activation-dispatcher.js.map +1 -1
- package/dist/runtime-v2/activation/activation-types.d.ts.map +1 -1
- package/dist/runtime-v2/activation/activation-types.js +0 -1
- package/dist/runtime-v2/activation/activation-types.js.map +1 -1
- package/dist/runtime-v2/adapter/pi-ai-runtime-adapter.d.ts.map +1 -1
- package/dist/runtime-v2/adapter/pi-ai-runtime-adapter.js +0 -2
- package/dist/runtime-v2/adapter/pi-ai-runtime-adapter.js.map +1 -1
- package/dist/runtime-v2/config/__tests__/pd-config-agent-binding.test.js +0 -7
- package/dist/runtime-v2/config/__tests__/pd-config-agent-binding.test.js.map +1 -1
- package/dist/runtime-v2/config/__tests__/pd-config-contract.test.js +5 -6
- package/dist/runtime-v2/config/__tests__/pd-config-contract.test.js.map +1 -1
- package/dist/runtime-v2/config/__tests__/pd-config-redaction-deep.test.js +0 -1
- package/dist/runtime-v2/config/__tests__/pd-config-redaction-deep.test.js.map +1 -1
- package/dist/runtime-v2/config/__tests__/pd-config-validation-edge-cases.test.js +0 -1
- package/dist/runtime-v2/config/__tests__/pd-config-validation-edge-cases.test.js.map +1 -1
- package/dist/runtime-v2/config/pd-config-defaults.d.ts.map +1 -1
- package/dist/runtime-v2/config/pd-config-defaults.js +0 -1
- package/dist/runtime-v2/config/pd-config-defaults.js.map +1 -1
- package/dist/runtime-v2/config/pd-config-types.d.ts +1 -1
- package/dist/runtime-v2/config/pd-config-types.d.ts.map +1 -1
- package/dist/runtime-v2/config/pd-config-types.js +0 -1
- package/dist/runtime-v2/config/pd-config-types.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 +0 -2
- package/dist/runtime-v2/feature-flags/feature-flag-contract.js.map +1 -1
- package/dist/runtime-v2/index.d.ts +1 -7
- package/dist/runtime-v2/index.d.ts.map +1 -1
- package/dist/runtime-v2/index.js +1 -4
- package/dist/runtime-v2/index.js.map +1 -1
- package/dist/runtime-v2/internalization/__tests__/diag-chain-e2e.test.js +0 -3
- package/dist/runtime-v2/internalization/__tests__/diag-chain-e2e.test.js.map +1 -1
- package/dist/runtime-v2/internalization/__tests__/internalization-job-graph.test.js +4 -36
- package/dist/runtime-v2/internalization/__tests__/internalization-job-graph.test.js.map +1 -1
- package/dist/runtime-v2/internalization/__tests__/peer-runner-lineage-injection.test.js +0 -1
- package/dist/runtime-v2/internalization/__tests__/peer-runner-lineage-injection.test.js.map +1 -1
- package/dist/runtime-v2/internalization/__tests__/queue-actionability.test.js +0 -15
- package/dist/runtime-v2/internalization/__tests__/queue-actionability.test.js.map +1 -1
- package/dist/runtime-v2/internalization/index.d.ts +1 -7
- package/dist/runtime-v2/internalization/index.d.ts.map +1 -1
- package/dist/runtime-v2/internalization/index.js +1 -4
- package/dist/runtime-v2/internalization/index.js.map +1 -1
- package/dist/runtime-v2/internalization/internalization-job-graph.d.ts +7 -18
- package/dist/runtime-v2/internalization/internalization-job-graph.d.ts.map +1 -1
- package/dist/runtime-v2/internalization/internalization-job-graph.js +7 -24
- package/dist/runtime-v2/internalization/internalization-job-graph.js.map +1 -1
- package/dist/runtime-v2/internalization/internalization-state-machine.d.ts +3 -2
- package/dist/runtime-v2/internalization/internalization-state-machine.d.ts.map +1 -1
- package/dist/runtime-v2/internalization/internalization-state-machine.js +4 -3
- package/dist/runtime-v2/internalization/internalization-state-machine.js.map +1 -1
- package/dist/runtime-v2/internalization/peer-runner-contracts.d.ts +6 -6
- package/dist/runtime-v2/internalization/peer-runner-contracts.d.ts.map +1 -1
- package/dist/runtime-v2/internalization/peer-runner-contracts.js +0 -3
- package/dist/runtime-v2/internalization/peer-runner-contracts.js.map +1 -1
- package/dist/runtime-v2/recovery-sweep-service.d.ts.map +1 -1
- package/dist/runtime-v2/recovery-sweep-service.js +2 -2
- package/dist/runtime-v2/recovery-sweep-service.js.map +1 -1
- package/dist/runtime-v2/store/candidate/__tests__/recommendation-kind-resolver.test.js +1 -1
- package/dist/runtime-v2/store/candidate/__tests__/recommendation-kind-resolver.test.js.map +1 -1
- package/package.json +1 -1
- package/dist/runtime-v2/__tests__/trainer-output-validator.test.d.ts +0 -2
- package/dist/runtime-v2/__tests__/trainer-output-validator.test.d.ts.map +0 -1
- package/dist/runtime-v2/__tests__/trainer-output-validator.test.js +0 -257
- package/dist/runtime-v2/__tests__/trainer-output-validator.test.js.map +0 -1
- package/dist/runtime-v2/__tests__/trainer-runner-vslice.test.d.ts +0 -2
- package/dist/runtime-v2/__tests__/trainer-runner-vslice.test.d.ts.map +0 -1
- package/dist/runtime-v2/__tests__/trainer-runner-vslice.test.js +0 -514
- package/dist/runtime-v2/__tests__/trainer-runner-vslice.test.js.map +0 -1
- package/dist/runtime-v2/internalization/__tests__/trainer-prompt-builder.test.d.ts +0 -2
- package/dist/runtime-v2/internalization/__tests__/trainer-prompt-builder.test.d.ts.map +0 -1
- package/dist/runtime-v2/internalization/__tests__/trainer-prompt-builder.test.js +0 -141
- package/dist/runtime-v2/internalization/__tests__/trainer-prompt-builder.test.js.map +0 -1
- package/dist/runtime-v2/internalization/trainer-output.d.ts +0 -122
- package/dist/runtime-v2/internalization/trainer-output.d.ts.map +0 -1
- package/dist/runtime-v2/internalization/trainer-output.js +0 -223
- package/dist/runtime-v2/internalization/trainer-output.js.map +0 -1
- package/dist/runtime-v2/internalization/trainer-prompt-builder.d.ts +0 -24
- package/dist/runtime-v2/internalization/trainer-prompt-builder.d.ts.map +0 -1
- package/dist/runtime-v2/internalization/trainer-prompt-builder.js +0 -57
- package/dist/runtime-v2/internalization/trainer-prompt-builder.js.map +0 -1
- package/dist/runtime-v2/internalization/trainer-runner.d.ts +0 -76
- package/dist/runtime-v2/internalization/trainer-runner.d.ts.map +0 -1
- package/dist/runtime-v2/internalization/trainer-runner.js +0 -540
- package/dist/runtime-v2/internalization/trainer-runner.js.map +0 -1
|
@@ -1,257 +0,0 @@
|
|
|
1
|
-
import { describe, it, expect } from 'vitest';
|
|
2
|
-
import { DefaultTrainerValidator } from '../internalization/trainer-output.js';
|
|
3
|
-
const TRAINER_TASK_ID = 'trainer-001';
|
|
4
|
-
const ROLLOUT_REVIEWER_ARTIFACT_ID = 'pi-art-rollout-reviewer-001';
|
|
5
|
-
function makeTrainerOutput(overrides = {}) {
|
|
6
|
-
return {
|
|
7
|
-
taskId: TRAINER_TASK_ID,
|
|
8
|
-
sourceRolloutReviewerArtifactId: ROLLOUT_REVIEWER_ARTIFACT_ID,
|
|
9
|
-
ruleCandidate: {
|
|
10
|
-
toolScope: 'tool_call',
|
|
11
|
-
triggerCondition: 'When a tool is called',
|
|
12
|
-
proposedDecision: 'allow',
|
|
13
|
-
rationale: 'Standard safe operation pattern',
|
|
14
|
-
confidence: 0.85,
|
|
15
|
-
},
|
|
16
|
-
safety: {
|
|
17
|
-
limitations: ['Requires feature flag'],
|
|
18
|
-
falsePositiveRisks: ['May block legitimate edge cases'],
|
|
19
|
-
requiredReplayCases: ['tool_call with empty params', 'tool_call with null toolName'],
|
|
20
|
-
},
|
|
21
|
-
sourceTrace: {
|
|
22
|
-
rolloutReviewerArtifactId: ROLLOUT_REVIEWER_ARTIFACT_ID,
|
|
23
|
-
},
|
|
24
|
-
generatedAt: new Date().toISOString(),
|
|
25
|
-
...overrides,
|
|
26
|
-
};
|
|
27
|
-
}
|
|
28
|
-
describe('DefaultTrainerValidator (vertical slice)', () => {
|
|
29
|
-
const validator = new DefaultTrainerValidator();
|
|
30
|
-
it('accepts valid Trainer output', async () => {
|
|
31
|
-
const result = await validator.validate(makeTrainerOutput(), TRAINER_TASK_ID);
|
|
32
|
-
expect(result.valid).toBe(true);
|
|
33
|
-
});
|
|
34
|
-
it('rejects taskId mismatch', async () => {
|
|
35
|
-
const output = makeTrainerOutput();
|
|
36
|
-
output.taskId = 'wrong';
|
|
37
|
-
const result = await validator.validate(output, TRAINER_TASK_ID);
|
|
38
|
-
expect(result.valid).toBe(false);
|
|
39
|
-
expect(result.errors.some(e => e.includes('taskId mismatch'))).toBe(true);
|
|
40
|
-
});
|
|
41
|
-
it('rejects missing sourceRolloutReviewerArtifactId', async () => {
|
|
42
|
-
const output = makeTrainerOutput();
|
|
43
|
-
output.sourceRolloutReviewerArtifactId = '';
|
|
44
|
-
const result = await validator.validate(output, TRAINER_TASK_ID);
|
|
45
|
-
expect(result.valid).toBe(false);
|
|
46
|
-
expect(result.errors.some(e => e.includes('sourceRolloutReviewerArtifactId'))).toBe(true);
|
|
47
|
-
});
|
|
48
|
-
it('rejects mismatched sourceRolloutReviewerArtifactId when expected is provided', async () => {
|
|
49
|
-
const output = makeTrainerOutput();
|
|
50
|
-
output.sourceRolloutReviewerArtifactId = 'wrong-artifact-id';
|
|
51
|
-
const result = await validator.validate(output, TRAINER_TASK_ID, ROLLOUT_REVIEWER_ARTIFACT_ID);
|
|
52
|
-
expect(result.valid).toBe(false);
|
|
53
|
-
expect(result.errors.some(e => e.includes('sourceRolloutReviewerArtifactId mismatch'))).toBe(true);
|
|
54
|
-
});
|
|
55
|
-
it('rejects mismatched sourceTrace.rolloutReviewerArtifactId vs sourceRolloutReviewerArtifactId', async () => {
|
|
56
|
-
const output = makeTrainerOutput();
|
|
57
|
-
output.sourceTrace.rolloutReviewerArtifactId = 'wrong-trace-id';
|
|
58
|
-
const result = await validator.validate(output, TRAINER_TASK_ID);
|
|
59
|
-
expect(result.valid).toBe(false);
|
|
60
|
-
expect(result.errors.some(e => e.includes('must match'))).toBe(true);
|
|
61
|
-
});
|
|
62
|
-
it('rejects invalid proposedDecision value', async () => {
|
|
63
|
-
const output = makeTrainerOutput();
|
|
64
|
-
output.ruleCandidate.proposedDecision = 'invalid';
|
|
65
|
-
const result = await validator.validate(output, TRAINER_TASK_ID);
|
|
66
|
-
expect(result.valid).toBe(false);
|
|
67
|
-
expect(result.errors.some(e => e.includes('proposedDecision'))).toBe(true);
|
|
68
|
-
});
|
|
69
|
-
it('rejects confidence as string', async () => {
|
|
70
|
-
const output = makeTrainerOutput();
|
|
71
|
-
output.ruleCandidate.confidence = '0.85';
|
|
72
|
-
const result = await validator.validate(output, TRAINER_TASK_ID);
|
|
73
|
-
expect(result.valid).toBe(false);
|
|
74
|
-
expect(result.errors.some(e => e.includes('confidence must be number'))).toBe(true);
|
|
75
|
-
});
|
|
76
|
-
it('rejects confidence > 1', async () => {
|
|
77
|
-
const output = makeTrainerOutput();
|
|
78
|
-
output.ruleCandidate.confidence = 1.5;
|
|
79
|
-
const result = await validator.validate(output, TRAINER_TASK_ID);
|
|
80
|
-
expect(result.valid).toBe(false);
|
|
81
|
-
expect(result.errors.some(e => e.includes('confidence must be in [0, 1]'))).toBe(true);
|
|
82
|
-
});
|
|
83
|
-
it('rejects NaN confidence', async () => {
|
|
84
|
-
const output = makeTrainerOutput();
|
|
85
|
-
output.ruleCandidate.confidence = NaN;
|
|
86
|
-
const result = await validator.validate(output, TRAINER_TASK_ID);
|
|
87
|
-
expect(result.valid).toBe(false);
|
|
88
|
-
expect(result.errors.some(e => e.includes('confidence must be number'))).toBe(true);
|
|
89
|
-
});
|
|
90
|
-
it('rejects Infinity confidence', async () => {
|
|
91
|
-
const output = makeTrainerOutput();
|
|
92
|
-
output.ruleCandidate.confidence = Infinity;
|
|
93
|
-
const result = await validator.validate(output, TRAINER_TASK_ID);
|
|
94
|
-
expect(result.valid).toBe(false);
|
|
95
|
-
expect(result.errors.some(e => e.includes('confidence must be number'))).toBe(true);
|
|
96
|
-
});
|
|
97
|
-
it('rejects null output', async () => {
|
|
98
|
-
const result = await validator.validate(null, TRAINER_TASK_ID);
|
|
99
|
-
expect(result.valid).toBe(false);
|
|
100
|
-
});
|
|
101
|
-
it('rejects missing toolScope', async () => {
|
|
102
|
-
const output = makeTrainerOutput();
|
|
103
|
-
output.ruleCandidate.toolScope = '';
|
|
104
|
-
const result = await validator.validate(output, TRAINER_TASK_ID);
|
|
105
|
-
expect(result.valid).toBe(false);
|
|
106
|
-
expect(result.errors.some(e => e.includes('toolScope'))).toBe(true);
|
|
107
|
-
});
|
|
108
|
-
it('rejects missing triggerCondition', async () => {
|
|
109
|
-
const output = makeTrainerOutput();
|
|
110
|
-
output.ruleCandidate.triggerCondition = '';
|
|
111
|
-
const result = await validator.validate(output, TRAINER_TASK_ID);
|
|
112
|
-
expect(result.valid).toBe(false);
|
|
113
|
-
expect(result.errors.some(e => e.includes('triggerCondition'))).toBe(true);
|
|
114
|
-
});
|
|
115
|
-
it('rejects missing rationale', async () => {
|
|
116
|
-
const output = makeTrainerOutput();
|
|
117
|
-
output.ruleCandidate.rationale = '';
|
|
118
|
-
const result = await validator.validate(output, TRAINER_TASK_ID);
|
|
119
|
-
expect(result.valid).toBe(false);
|
|
120
|
-
expect(result.errors.some(e => e.includes('rationale'))).toBe(true);
|
|
121
|
-
});
|
|
122
|
-
it('accepts auto_correct with proposedCorrection', async () => {
|
|
123
|
-
const output = makeTrainerOutput({
|
|
124
|
-
ruleCandidate: {
|
|
125
|
-
toolScope: 'tool_call',
|
|
126
|
-
triggerCondition: 'When a tool is called with invalid params',
|
|
127
|
-
proposedDecision: 'auto_correct',
|
|
128
|
-
proposedCorrection: {
|
|
129
|
-
description: 'Use default params instead',
|
|
130
|
-
proposedParams: { defaultTimeout: 5000 },
|
|
131
|
-
},
|
|
132
|
-
rationale: 'Safe to auto-correct with defaults',
|
|
133
|
-
confidence: 0.9,
|
|
134
|
-
},
|
|
135
|
-
});
|
|
136
|
-
const result = await validator.validate(output, TRAINER_TASK_ID);
|
|
137
|
-
expect(result.valid).toBe(true);
|
|
138
|
-
});
|
|
139
|
-
it('rejects auto_correct without proposedCorrection', async () => {
|
|
140
|
-
const output = makeTrainerOutput({
|
|
141
|
-
ruleCandidate: {
|
|
142
|
-
toolScope: 'tool_call',
|
|
143
|
-
triggerCondition: 'When a tool is called',
|
|
144
|
-
proposedDecision: 'auto_correct',
|
|
145
|
-
rationale: 'Safe to auto-correct',
|
|
146
|
-
confidence: 0.9,
|
|
147
|
-
},
|
|
148
|
-
});
|
|
149
|
-
// TypeScript allows this structurally, but validator should reject
|
|
150
|
-
const result = await validator.validate(output, TRAINER_TASK_ID);
|
|
151
|
-
expect(result.valid).toBe(false);
|
|
152
|
-
expect(result.errors.some(e => e.includes('proposedCorrection'))).toBe(true);
|
|
153
|
-
});
|
|
154
|
-
it('rejects non-auto_correct decision with proposedCorrection', async () => {
|
|
155
|
-
const output = makeTrainerOutput({
|
|
156
|
-
ruleCandidate: {
|
|
157
|
-
toolScope: 'tool_call',
|
|
158
|
-
triggerCondition: 'When a tool is called',
|
|
159
|
-
proposedDecision: 'allow',
|
|
160
|
-
proposedCorrection: {
|
|
161
|
-
description: 'Should not exist for allow decision',
|
|
162
|
-
proposedParams: {},
|
|
163
|
-
},
|
|
164
|
-
rationale: 'This should be invalid',
|
|
165
|
-
confidence: 0.85,
|
|
166
|
-
},
|
|
167
|
-
});
|
|
168
|
-
const result = await validator.validate(output, TRAINER_TASK_ID);
|
|
169
|
-
expect(result.valid).toBe(false);
|
|
170
|
-
expect(result.errors.some(e => e.includes('proposedCorrection'))).toBe(true);
|
|
171
|
-
});
|
|
172
|
-
it('rejects safety.limitations with non-string elements', async () => {
|
|
173
|
-
const output = makeTrainerOutput();
|
|
174
|
-
output.safety.limitations = [42];
|
|
175
|
-
const result = await validator.validate(output, TRAINER_TASK_ID);
|
|
176
|
-
expect(result.valid).toBe(false);
|
|
177
|
-
expect(result.errors.some(e => e.includes('limitations must be an array of strings'))).toBe(true);
|
|
178
|
-
});
|
|
179
|
-
it('rejects safety.falsePositiveRisks with non-string elements', async () => {
|
|
180
|
-
const output = makeTrainerOutput();
|
|
181
|
-
output.safety.falsePositiveRisks = [true];
|
|
182
|
-
const result = await validator.validate(output, TRAINER_TASK_ID);
|
|
183
|
-
expect(result.valid).toBe(false);
|
|
184
|
-
expect(result.errors.some(e => e.includes('falsePositiveRisks must be an array of strings'))).toBe(true);
|
|
185
|
-
});
|
|
186
|
-
it('rejects safety.requiredReplayCases with non-string elements', async () => {
|
|
187
|
-
const output = makeTrainerOutput();
|
|
188
|
-
output.safety.requiredReplayCases = [{}];
|
|
189
|
-
const result = await validator.validate(output, TRAINER_TASK_ID);
|
|
190
|
-
expect(result.valid).toBe(false);
|
|
191
|
-
expect(result.errors.some(e => e.includes('requiredReplayCases must be an array of strings'))).toBe(true);
|
|
192
|
-
});
|
|
193
|
-
it('accepts output with optional goldenTraceRefs', async () => {
|
|
194
|
-
const output = makeTrainerOutput({
|
|
195
|
-
goldenTraceRefs: ['gt-case-001', 'gt-case-002'],
|
|
196
|
-
});
|
|
197
|
-
const result = await validator.validate(output, TRAINER_TASK_ID);
|
|
198
|
-
expect(result.valid).toBe(true);
|
|
199
|
-
});
|
|
200
|
-
it('rejects goldenTraceRefs with non-string elements', async () => {
|
|
201
|
-
const output = makeTrainerOutput();
|
|
202
|
-
output.goldenTraceRefs = [42];
|
|
203
|
-
const result = await validator.validate(output, TRAINER_TASK_ID);
|
|
204
|
-
expect(result.valid).toBe(false);
|
|
205
|
-
expect(result.errors.some(e => e.includes('goldenTraceRefs must be an array of strings'))).toBe(true);
|
|
206
|
-
});
|
|
207
|
-
it('rejects missing generatedAt', async () => {
|
|
208
|
-
const output = makeTrainerOutput();
|
|
209
|
-
output.generatedAt = '';
|
|
210
|
-
const result = await validator.validate(output, TRAINER_TASK_ID);
|
|
211
|
-
expect(result.valid).toBe(false);
|
|
212
|
-
expect(result.errors.some(e => e.includes('generatedAt'))).toBe(true);
|
|
213
|
-
});
|
|
214
|
-
it('rejects unparseable generatedAt', async () => {
|
|
215
|
-
const output = makeTrainerOutput();
|
|
216
|
-
output.generatedAt = 'not-a-date';
|
|
217
|
-
const result = await validator.validate(output, TRAINER_TASK_ID);
|
|
218
|
-
expect(result.valid).toBe(false);
|
|
219
|
-
expect(result.errors.some(e => e.includes('generatedAt'))).toBe(true);
|
|
220
|
-
});
|
|
221
|
-
it('rejects mismatched sourceRolloutReviewerArtifactId vs sourceTrace.rolloutReviewerArtifactId', async () => {
|
|
222
|
-
const output = makeTrainerOutput();
|
|
223
|
-
output.sourceTrace.rolloutReviewerArtifactId = 'different-id';
|
|
224
|
-
const result = await validator.validate(output, TRAINER_TASK_ID);
|
|
225
|
-
expect(result.valid).toBe(false);
|
|
226
|
-
expect(result.errors.some(e => e.includes('must match'))).toBe(true);
|
|
227
|
-
});
|
|
228
|
-
it('accepts valid output with all optional fields', async () => {
|
|
229
|
-
const output = makeTrainerOutput({
|
|
230
|
-
goldenTraceRefs: ['gt-001'],
|
|
231
|
-
inlineGoldenTraceCases: [
|
|
232
|
-
{
|
|
233
|
-
caseId: 'case-001',
|
|
234
|
-
kind: 'positive',
|
|
235
|
-
toolName: 'tool_call',
|
|
236
|
-
params: { name: 'test' },
|
|
237
|
-
expectedDecision: 'allow',
|
|
238
|
-
sourceRefs: [],
|
|
239
|
-
},
|
|
240
|
-
],
|
|
241
|
-
sourceTrace: {
|
|
242
|
-
rolloutReviewerArtifactId: ROLLOUT_REVIEWER_ARTIFACT_ID,
|
|
243
|
-
evaluatorArtifactId: 'pi-art-evaluator-001',
|
|
244
|
-
},
|
|
245
|
-
});
|
|
246
|
-
const result = await validator.validate(output, TRAINER_TASK_ID);
|
|
247
|
-
expect(result.valid).toBe(true);
|
|
248
|
-
});
|
|
249
|
-
it('rejects non-string rolloutReviewerArtifactId in sourceTrace', async () => {
|
|
250
|
-
const output = makeTrainerOutput();
|
|
251
|
-
output.sourceTrace.rolloutReviewerArtifactId = 42;
|
|
252
|
-
const result = await validator.validate(output, TRAINER_TASK_ID);
|
|
253
|
-
expect(result.valid).toBe(false);
|
|
254
|
-
expect(result.errors.some(e => e.includes('rolloutReviewerArtifactId'))).toBe(true);
|
|
255
|
-
});
|
|
256
|
-
});
|
|
257
|
-
//# sourceMappingURL=trainer-output-validator.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"trainer-output-validator.test.js","sourceRoot":"","sources":["../../../src/runtime-v2/__tests__/trainer-output-validator.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"trainer-runner-vslice.test.d.ts","sourceRoot":"","sources":["../../../src/runtime-v2/__tests__/trainer-runner-vslice.test.ts"],"names":[],"mappings":""}
|