@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
|
@@ -39,7 +39,7 @@ describe('makeIdempotencyKey', () => {
|
|
|
39
39
|
});
|
|
40
40
|
it('handles all valid channels', () => {
|
|
41
41
|
const channels = [
|
|
42
|
-
'prompt', 'defer_archive', 'skill', 'code_tool_hook',
|
|
42
|
+
'prompt', 'defer_archive', 'skill', 'code_tool_hook',
|
|
43
43
|
];
|
|
44
44
|
for (const channel of channels) {
|
|
45
45
|
const key = makeIdempotencyKey('art-001', channel);
|
|
@@ -73,9 +73,6 @@ describe('isLowRiskChannel', () => {
|
|
|
73
73
|
it('returns false for code_tool_hook channel', () => {
|
|
74
74
|
expect(isLowRiskChannel('code_tool_hook')).toBe(false);
|
|
75
75
|
});
|
|
76
|
-
it('returns false for model_training channel', () => {
|
|
77
|
-
expect(isLowRiskChannel('model_training')).toBe(false);
|
|
78
|
-
});
|
|
79
76
|
it('LOW_RISK_CHANNELS contains exactly prompt and defer_archive', () => {
|
|
80
77
|
expect(LOW_RISK_CHANNELS).toHaveLength(2);
|
|
81
78
|
expect(LOW_RISK_CHANNELS).toContain('prompt');
|
|
@@ -83,7 +80,7 @@ describe('isLowRiskChannel', () => {
|
|
|
83
80
|
});
|
|
84
81
|
it('isLowRiskChannel matches LOW_RISK_CHANNELS membership', () => {
|
|
85
82
|
const allChannels = [
|
|
86
|
-
'prompt', 'defer_archive', 'skill', 'code_tool_hook',
|
|
83
|
+
'prompt', 'defer_archive', 'skill', 'code_tool_hook',
|
|
87
84
|
];
|
|
88
85
|
for (const channel of allChannels) {
|
|
89
86
|
expect(isLowRiskChannel(channel)).toBe(LOW_RISK_CHANNELS.includes(channel));
|
|
@@ -107,16 +104,12 @@ describe('getChannelRiskLevel', () => {
|
|
|
107
104
|
it('returns high for code_tool_hook channel', () => {
|
|
108
105
|
expect(getChannelRiskLevel('code_tool_hook')).toBe('high');
|
|
109
106
|
});
|
|
110
|
-
it('returns critical for model_training channel', () => {
|
|
111
|
-
expect(getChannelRiskLevel('model_training')).toBe('critical');
|
|
112
|
-
});
|
|
113
107
|
it('returns high for unknown channel (safe default)', () => {
|
|
114
108
|
expect(getChannelRiskLevel('unknown')).toBe('high');
|
|
115
109
|
});
|
|
116
110
|
it('HIGH_RISK_CHANNEL_MAP has correct entries', () => {
|
|
117
111
|
expect(HIGH_RISK_CHANNEL_MAP.skill).toBe('medium');
|
|
118
112
|
expect(HIGH_RISK_CHANNEL_MAP.code_tool_hook).toBe('high');
|
|
119
|
-
expect(HIGH_RISK_CHANNEL_MAP.model_training).toBe('critical');
|
|
120
113
|
});
|
|
121
114
|
it('getChannelRiskLevel returns low for LOW_RISK_CHANNELS', () => {
|
|
122
115
|
for (const channel of LOW_RISK_CHANNELS) {
|
|
@@ -128,13 +121,12 @@ describe('getChannelRiskLevel', () => {
|
|
|
128
121
|
expect(getChannelRiskLevel(channel)).toBe(riskLevel);
|
|
129
122
|
}
|
|
130
123
|
});
|
|
131
|
-
it('risk levels are ordered: low < medium < high
|
|
124
|
+
it('risk levels are ordered: low < medium < high', () => {
|
|
132
125
|
// This is a semantic ordering test, not a numeric comparison
|
|
133
|
-
const levels = ['low', 'medium', 'high'
|
|
126
|
+
const levels = ['low', 'medium', 'high'];
|
|
134
127
|
expect(getChannelRiskLevel('prompt')).toBe(levels[0]);
|
|
135
128
|
expect(getChannelRiskLevel('skill')).toBe(levels[1]);
|
|
136
129
|
expect(getChannelRiskLevel('code_tool_hook')).toBe(levels[2]);
|
|
137
|
-
expect(getChannelRiskLevel('model_training')).toBe(levels[3]);
|
|
138
130
|
});
|
|
139
131
|
});
|
|
140
132
|
// ── mapConfidenceToLabel Tests ───────────────────────────────────────────────
|
|
@@ -211,12 +203,12 @@ describe('constants', () => {
|
|
|
211
203
|
});
|
|
212
204
|
it('all InternalizationChannel values are covered', () => {
|
|
213
205
|
const allChannels = [
|
|
214
|
-
'prompt', 'defer_archive', 'skill', 'code_tool_hook',
|
|
206
|
+
'prompt', 'defer_archive', 'skill', 'code_tool_hook',
|
|
215
207
|
];
|
|
216
208
|
// Every channel should have a defined risk level
|
|
217
209
|
for (const channel of allChannels) {
|
|
218
210
|
const riskLevel = getChannelRiskLevel(channel);
|
|
219
|
-
expect(['low', 'medium', 'high'
|
|
211
|
+
expect(['low', 'medium', 'high']).toContain(riskLevel);
|
|
220
212
|
}
|
|
221
213
|
});
|
|
222
214
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"activation-types-helpers.test.js","sourceRoot":"","sources":["../../../src/runtime-v2/__tests__/activation-types-helpers.test.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EACL,kBAAkB,EAClB,gBAAgB,EAChB,mBAAmB,EACnB,oBAAoB,EACpB,iBAAiB,EACjB,qBAAqB,EACrB,mCAAmC,EACnC,wBAAwB,GACzB,MAAM,gCAAgC,CAAC;AAIxC,iFAAiF;AAEjF,QAAQ,CAAC,oBAAoB,EAAE,GAAG,EAAE;IAClC,EAAE,CAAC,+CAA+C,EAAE,GAAG,EAAE;QACvD,MAAM,CAAC,kBAAkB,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QACxE,MAAM,CAAC,kBAAkB,CAAC,SAAS,EAAE,gBAAgB,CAAC,CAAC,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;QACxF,MAAM,CAAC,kBAAkB,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;IACxF,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0BAA0B,EAAE,GAAG,EAAE;QAClC,MAAM,CAAC,kBAAkB,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC5D,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4CAA4C,EAAE,GAAG,EAAE;QACpD,MAAM,CAAC,kBAAkB,CAAC,iBAAiB,EAAE,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;QACxF,MAAM,CAAC,kBAAkB,CAAC,sBAAsB,EAAE,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC;QAClG,MAAM,CAAC,kBAAkB,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;IACtF,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4CAA4C,EAAE,GAAG,EAAE;QACpD,0EAA0E;QAC1E,MAAM,CAAC,kBAAkB,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;IAC1E,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4BAA4B,EAAE,GAAG,EAAE;QACpC,MAAM,QAAQ,GAA6B;YACzC,QAAQ,EAAE,eAAe,EAAE,OAAO,EAAE,gBAAgB
|
|
1
|
+
{"version":3,"file":"activation-types-helpers.test.js","sourceRoot":"","sources":["../../../src/runtime-v2/__tests__/activation-types-helpers.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -271,7 +271,6 @@ const KNOWN_PLUGIN_CORE_FILES = new Set([
|
|
|
271
271
|
'focus-history.ts',
|
|
272
272
|
'training-program.ts',
|
|
273
273
|
'replay-engine.ts',
|
|
274
|
-
'external-training-contract.ts',
|
|
275
274
|
'merge-gate-audit.ts',
|
|
276
275
|
'control-ui-db.ts',
|
|
277
276
|
'thinking-models.ts',
|
|
@@ -359,7 +358,8 @@ describe('PRI-212 plugin core anti-growth guard', () => {
|
|
|
359
358
|
// PRI-448: Removed local-worker-routing.ts, promotion-gate.ts,
|
|
360
359
|
// model-training-registry.ts, model-deployment-registry.ts,
|
|
361
360
|
// shadow-observation-registry.ts (98 → 93)
|
|
362
|
-
|
|
361
|
+
// PRI-449: Removed external-training-contract.ts (93 → 92)
|
|
362
|
+
expect(KNOWN_PLUGIN_CORE_FILES.size).toBe(92);
|
|
363
363
|
});
|
|
364
364
|
});
|
|
365
365
|
const REQUIRED_TEST_FILES = [
|
|
@@ -1865,70 +1865,6 @@ describe('PRI-RR RolloutReviewerRunner boundary', () => {
|
|
|
1865
1865
|
expect(src).toContain('RolloutReviewerOutputV1Schema');
|
|
1866
1866
|
});
|
|
1867
1867
|
});
|
|
1868
|
-
// ── PRI-116: TrainerRunner boundary guards ──────────────────────────────────
|
|
1869
|
-
describe('PRI-116 TrainerRunner boundary', () => {
|
|
1870
|
-
it('trainer source files exist in internalization directory', async () => {
|
|
1871
|
-
const { existsSync } = await import('node:fs');
|
|
1872
|
-
const { resolve } = await import('node:path');
|
|
1873
|
-
expect(existsSync(resolve(__dirname, '..', 'internalization', 'trainer-runner.ts'))).toBe(true);
|
|
1874
|
-
expect(existsSync(resolve(__dirname, '..', 'internalization', 'trainer-output.ts'))).toBe(true);
|
|
1875
|
-
expect(existsSync(resolve(__dirname, '..', 'internalization', 'trainer-prompt-builder.ts'))).toBe(true);
|
|
1876
|
-
});
|
|
1877
|
-
it('trainer test file exists', async () => {
|
|
1878
|
-
const { existsSync } = await import('node:fs');
|
|
1879
|
-
const { resolve } = await import('node:path');
|
|
1880
|
-
expect(existsSync(resolve(__dirname, 'trainer-runner-vslice.test.ts'))).toBe(true);
|
|
1881
|
-
});
|
|
1882
|
-
it('CORE_NO_FORBIDDEN_IMPORTS: trainer-output.ts has no openclaw-plugin, fs, path imports', async () => {
|
|
1883
|
-
const { readFileSync } = await import('node:fs');
|
|
1884
|
-
const { resolve } = await import('node:path');
|
|
1885
|
-
const src = readFileSync(resolve(__dirname, '..', 'internalization', 'trainer-output.ts'), 'utf-8');
|
|
1886
|
-
expect(src).not.toContain('openclaw-plugin');
|
|
1887
|
-
expect(src).not.toContain('node:fs');
|
|
1888
|
-
expect(src).not.toContain('node:path');
|
|
1889
|
-
});
|
|
1890
|
-
it('CORE_NO_FORBIDDEN_IMPORTS: trainer-runner.ts has no openclaw-plugin, RolloutReviewerRunner, nocturnal-trinity imports', async () => {
|
|
1891
|
-
const { readFileSync } = await import('node:fs');
|
|
1892
|
-
const { resolve } = await import('node:path');
|
|
1893
|
-
const src = readFileSync(resolve(__dirname, '..', 'internalization', 'trainer-runner.ts'), 'utf-8');
|
|
1894
|
-
expect(src).not.toContain('openclaw-plugin');
|
|
1895
|
-
expect(src).not.toContain('RolloutReviewerRunner');
|
|
1896
|
-
expect(src).not.toContain('nocturnal-trinity');
|
|
1897
|
-
expect(src).not.toContain('InternalizationOrchestrator');
|
|
1898
|
-
expect(src).not.toContain('createTask');
|
|
1899
|
-
expect(src).not.toContain('enqueueTask');
|
|
1900
|
-
});
|
|
1901
|
-
it('CORE_NO_SCHEDULING: trainer-runner.ts has no node:fs, node:cron imports', async () => {
|
|
1902
|
-
const { readFileSync } = await import('node:fs');
|
|
1903
|
-
const { resolve } = await import('node:path');
|
|
1904
|
-
const src = readFileSync(resolve(__dirname, '..', 'internalization', 'trainer-runner.ts'), 'utf-8');
|
|
1905
|
-
expect(src).not.toContain('node:fs');
|
|
1906
|
-
expect(src).not.toContain('node:cron');
|
|
1907
|
-
});
|
|
1908
|
-
it('BARREL_EXPORTS: internalization/index.ts exports TrainerRunner and TrainerOutput', async () => {
|
|
1909
|
-
const { readFileSync } = await import('node:fs');
|
|
1910
|
-
const { resolve } = await import('node:path');
|
|
1911
|
-
const src = readFileSync(resolve(__dirname, '..', 'internalization', 'index.ts'), 'utf-8');
|
|
1912
|
-
expect(src).toContain('TrainerRunner');
|
|
1913
|
-
expect(src).toContain('TrainerOutput');
|
|
1914
|
-
expect(src).toContain('DefaultTrainerValidator');
|
|
1915
|
-
});
|
|
1916
|
-
it('BARREL_EXPORTS: runtime-v2/index.ts exports TrainerRunner and TrainerOutput', async () => {
|
|
1917
|
-
const { readFileSync } = await import('node:fs');
|
|
1918
|
-
const { resolve } = await import('node:path');
|
|
1919
|
-
const src = readFileSync(resolve(__dirname, '..', 'index.ts'), 'utf-8');
|
|
1920
|
-
expect(src).toContain('TrainerRunner');
|
|
1921
|
-
expect(src).toContain('TrainerOutput');
|
|
1922
|
-
expect(src).toContain('DefaultTrainerValidator');
|
|
1923
|
-
});
|
|
1924
|
-
it('SCHEMA_REGISTRY: pi-ai-runtime-adapter.ts registers trainer-output-v1 schema', async () => {
|
|
1925
|
-
const { readFileSync } = await import('node:fs');
|
|
1926
|
-
const { resolve } = await import('node:path');
|
|
1927
|
-
const src = readFileSync(resolve(__dirname, '..', 'adapter', 'pi-ai-runtime-adapter.ts'), 'utf-8');
|
|
1928
|
-
expect(src).toContain('trainer-output-v1');
|
|
1929
|
-
expect(src).toContain('TrainerOutputV1Schema');
|
|
1930
|
-
});
|
|
1931
|
-
});
|
|
1932
1868
|
describe('PRI-114: correction-proposal boundary', () => {
|
|
1933
1869
|
it('CORE_PURE: correction-proposal.ts has zero infrastructure imports', async () => {
|
|
1934
1870
|
const { readFileSync } = await import('node:fs');
|