@principles/core 1.150.0 → 1.152.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.
Files changed (203) hide show
  1. package/dist/prompt-builder/__tests__/prompt-builder-core.test.js.map +1 -1
  2. package/dist/quality-scorecard/__tests__/quality-scorecard.test.js.map +1 -1
  3. package/dist/runtime-v2/__tests__/adversarial-loop.test.d.ts +2 -0
  4. package/dist/runtime-v2/__tests__/adversarial-loop.test.d.ts.map +1 -0
  5. package/dist/runtime-v2/__tests__/adversarial-loop.test.js +435 -0
  6. package/dist/runtime-v2/__tests__/adversarial-loop.test.js.map +1 -0
  7. package/dist/runtime-v2/__tests__/architecture-regression.test.js +5 -0
  8. package/dist/runtime-v2/__tests__/architecture-regression.test.js.map +1 -1
  9. package/dist/runtime-v2/__tests__/artificer-runner-vslice.test.js.map +1 -1
  10. package/dist/runtime-v2/__tests__/build-golden-trace-from-artificer.test.d.ts +2 -0
  11. package/dist/runtime-v2/__tests__/build-golden-trace-from-artificer.test.d.ts.map +1 -0
  12. package/dist/runtime-v2/__tests__/build-golden-trace-from-artificer.test.js +169 -0
  13. package/dist/runtime-v2/__tests__/build-golden-trace-from-artificer.test.js.map +1 -0
  14. package/dist/runtime-v2/__tests__/dreamer-output-validator.test.js.map +1 -1
  15. package/dist/runtime-v2/__tests__/dreamer-runner-vslice.test.js.map +1 -1
  16. package/dist/runtime-v2/__tests__/evaluator-runner-vslice-v2.test.d.ts +2 -0
  17. package/dist/runtime-v2/__tests__/evaluator-runner-vslice-v2.test.d.ts.map +1 -0
  18. package/dist/runtime-v2/__tests__/evaluator-runner-vslice-v2.test.js +815 -0
  19. package/dist/runtime-v2/__tests__/evaluator-runner-vslice-v2.test.js.map +1 -0
  20. package/dist/runtime-v2/__tests__/evaluator-runner-vslice.test.js.map +1 -1
  21. package/dist/runtime-v2/__tests__/evidence-sanitizer.test.js +4 -3
  22. package/dist/runtime-v2/__tests__/evidence-sanitizer.test.js.map +1 -1
  23. package/dist/runtime-v2/__tests__/feedback/privacy-preview.test.js.map +1 -1
  24. package/dist/runtime-v2/__tests__/feedback/render-github-url.test.js.map +1 -1
  25. package/dist/runtime-v2/__tests__/feedback/render-markdown.test.js.map +1 -1
  26. package/dist/runtime-v2/__tests__/internalization-consumer-product-path.test.js.map +1 -1
  27. package/dist/runtime-v2/__tests__/internalization-orchestrator.test.js +1 -3
  28. package/dist/runtime-v2/__tests__/internalization-orchestrator.test.js.map +1 -1
  29. package/dist/runtime-v2/__tests__/internalization-peer-runner-contracts.test.js +6 -0
  30. package/dist/runtime-v2/__tests__/internalization-peer-runner-contracts.test.js.map +1 -1
  31. package/dist/runtime-v2/__tests__/internalization-queue-read-model.test.js +0 -1
  32. package/dist/runtime-v2/__tests__/internalization-queue-read-model.test.js.map +1 -1
  33. package/dist/runtime-v2/__tests__/internalization-state-machine.test.js.map +1 -1
  34. package/dist/runtime-v2/__tests__/mainline-product-path.test.js.map +1 -1
  35. package/dist/runtime-v2/__tests__/pain-chain-read-model.test.js +0 -1
  36. package/dist/runtime-v2/__tests__/pain-chain-read-model.test.js.map +1 -1
  37. package/dist/runtime-v2/__tests__/pain-evidence-contract.test.js.map +1 -1
  38. package/dist/runtime-v2/__tests__/pain-signal-observability.test.js +1 -1
  39. package/dist/runtime-v2/__tests__/pain-signal-observability.test.js.map +1 -1
  40. package/dist/runtime-v2/__tests__/philosopher-runner-vslice.test.js.map +1 -1
  41. package/dist/runtime-v2/__tests__/pitask-metadata.test.js +5 -1
  42. package/dist/runtime-v2/__tests__/pitask-metadata.test.js.map +1 -1
  43. package/dist/runtime-v2/__tests__/proven-channel-baseline.test.js +1 -1
  44. package/dist/runtime-v2/__tests__/proven-channel-baseline.test.js.map +1 -1
  45. package/dist/runtime-v2/__tests__/pruning-read-model.test.js.map +1 -1
  46. package/dist/runtime-v2/__tests__/rulehost-oob-defense-simulation.test.js.map +1 -1
  47. package/dist/runtime-v2/__tests__/scribe-runner-vslice.test.js.map +1 -1
  48. package/dist/runtime-v2/__tests__/task-three-strikes.test.js.map +1 -1
  49. package/dist/runtime-v2/__tests__/trace-refiner-agent.test.js.map +1 -1
  50. package/dist/runtime-v2/__tests__/trainer-output-validator.test.js.map +1 -1
  51. package/dist/runtime-v2/activation/__tests__/activation-dispatcher.test.js.map +1 -1
  52. package/dist/runtime-v2/activation/__tests__/approval-store-extended.test.js +0 -1
  53. package/dist/runtime-v2/activation/__tests__/approval-store-extended.test.js.map +1 -1
  54. package/dist/runtime-v2/activation/__tests__/sqlite-activation-state-store.test.js +33 -0
  55. package/dist/runtime-v2/activation/__tests__/sqlite-activation-state-store.test.js.map +1 -1
  56. package/dist/runtime-v2/activation/activation-types.d.ts +1 -0
  57. package/dist/runtime-v2/activation/activation-types.d.ts.map +1 -1
  58. package/dist/runtime-v2/activation/activation-types.js.map +1 -1
  59. package/dist/runtime-v2/activation/memory-activation-state-store.d.ts +1 -0
  60. package/dist/runtime-v2/activation/memory-activation-state-store.d.ts.map +1 -1
  61. package/dist/runtime-v2/activation/memory-activation-state-store.js +9 -0
  62. package/dist/runtime-v2/activation/memory-activation-state-store.js.map +1 -1
  63. package/dist/runtime-v2/activation/sqlite-activation-state-store.d.ts +1 -0
  64. package/dist/runtime-v2/activation/sqlite-activation-state-store.d.ts.map +1 -1
  65. package/dist/runtime-v2/activation/sqlite-activation-state-store.js +18 -0
  66. package/dist/runtime-v2/activation/sqlite-activation-state-store.js.map +1 -1
  67. package/dist/runtime-v2/adapter/__tests__/artificer-l2-adapter.test.d.ts +2 -0
  68. package/dist/runtime-v2/adapter/__tests__/artificer-l2-adapter.test.d.ts.map +1 -0
  69. package/dist/runtime-v2/adapter/__tests__/artificer-l2-adapter.test.js +510 -0
  70. package/dist/runtime-v2/adapter/__tests__/artificer-l2-adapter.test.js.map +1 -0
  71. package/dist/runtime-v2/adapter/__tests__/schema-prompt-adapter.test.js +4 -4
  72. package/dist/runtime-v2/adapter/__tests__/schema-prompt-adapter.test.js.map +1 -1
  73. package/dist/runtime-v2/adapter/__tests__/structured-output-repair.test.js.map +1 -1
  74. package/dist/runtime-v2/adapter/artificer-l2-adapter.d.ts +47 -0
  75. package/dist/runtime-v2/adapter/artificer-l2-adapter.d.ts.map +1 -0
  76. package/dist/runtime-v2/adapter/artificer-l2-adapter.js +307 -0
  77. package/dist/runtime-v2/adapter/artificer-l2-adapter.js.map +1 -0
  78. package/dist/runtime-v2/adversarial-loop.d.ts +65 -0
  79. package/dist/runtime-v2/adversarial-loop.d.ts.map +1 -0
  80. package/dist/runtime-v2/adversarial-loop.js +203 -0
  81. package/dist/runtime-v2/adversarial-loop.js.map +1 -0
  82. package/dist/runtime-v2/config/__tests__/pd-config-redaction-deep.test.js +2 -2
  83. package/dist/runtime-v2/config/__tests__/pd-config-redaction-deep.test.js.map +1 -1
  84. package/dist/runtime-v2/config/__tests__/pd-config-validation-edge-cases.test.js +1 -1
  85. package/dist/runtime-v2/config/__tests__/pd-config-validation-edge-cases.test.js.map +1 -1
  86. package/dist/runtime-v2/golden-trace.d.ts +30 -0
  87. package/dist/runtime-v2/golden-trace.d.ts.map +1 -1
  88. package/dist/runtime-v2/golden-trace.js +57 -0
  89. package/dist/runtime-v2/golden-trace.js.map +1 -1
  90. package/dist/runtime-v2/index.d.ts +10 -6
  91. package/dist/runtime-v2/index.d.ts.map +1 -1
  92. package/dist/runtime-v2/index.js +7 -3
  93. package/dist/runtime-v2/index.js.map +1 -1
  94. package/dist/runtime-v2/internalization/__tests__/adversarial-case.test.d.ts +2 -0
  95. package/dist/runtime-v2/internalization/__tests__/adversarial-case.test.d.ts.map +1 -0
  96. package/dist/runtime-v2/internalization/__tests__/adversarial-case.test.js +139 -0
  97. package/dist/runtime-v2/internalization/__tests__/adversarial-case.test.js.map +1 -0
  98. package/dist/runtime-v2/internalization/__tests__/adversarial-feedback.test.d.ts +2 -0
  99. package/dist/runtime-v2/internalization/__tests__/adversarial-feedback.test.d.ts.map +1 -0
  100. package/dist/runtime-v2/internalization/__tests__/adversarial-feedback.test.js +62 -0
  101. package/dist/runtime-v2/internalization/__tests__/adversarial-feedback.test.js.map +1 -0
  102. package/dist/runtime-v2/internalization/__tests__/artificer-output-v2.test.d.ts +2 -0
  103. package/dist/runtime-v2/internalization/__tests__/artificer-output-v2.test.d.ts.map +1 -0
  104. package/dist/runtime-v2/internalization/__tests__/artificer-output-v2.test.js +249 -0
  105. package/dist/runtime-v2/internalization/__tests__/artificer-output-v2.test.js.map +1 -0
  106. package/dist/runtime-v2/internalization/__tests__/artificer-prompt-builder-v2.test.d.ts +2 -0
  107. package/dist/runtime-v2/internalization/__tests__/artificer-prompt-builder-v2.test.d.ts.map +1 -0
  108. package/dist/runtime-v2/internalization/__tests__/artificer-prompt-builder-v2.test.js +24 -0
  109. package/dist/runtime-v2/internalization/__tests__/artificer-prompt-builder-v2.test.js.map +1 -0
  110. package/dist/runtime-v2/internalization/__tests__/artificer-prompt-builder.test.js +2 -2
  111. package/dist/runtime-v2/internalization/__tests__/artificer-prompt-builder.test.js.map +1 -1
  112. package/dist/runtime-v2/internalization/__tests__/diag-distiller-runner.test.js.map +1 -1
  113. package/dist/runtime-v2/internalization/__tests__/diag-rootcause-runner.test.js.map +1 -1
  114. package/dist/runtime-v2/internalization/__tests__/diag-router-runner.test.js.map +1 -1
  115. package/dist/runtime-v2/internalization/__tests__/evaluator-output-v2.test.d.ts +2 -0
  116. package/dist/runtime-v2/internalization/__tests__/evaluator-output-v2.test.d.ts.map +1 -0
  117. package/dist/runtime-v2/internalization/__tests__/evaluator-output-v2.test.js +209 -0
  118. package/dist/runtime-v2/internalization/__tests__/evaluator-output-v2.test.js.map +1 -0
  119. package/dist/runtime-v2/internalization/__tests__/evaluator-prompt-builder-v2.test.d.ts +2 -0
  120. package/dist/runtime-v2/internalization/__tests__/evaluator-prompt-builder-v2.test.d.ts.map +1 -0
  121. package/dist/runtime-v2/internalization/__tests__/evaluator-prompt-builder-v2.test.js +125 -0
  122. package/dist/runtime-v2/internalization/__tests__/evaluator-prompt-builder-v2.test.js.map +1 -0
  123. package/dist/runtime-v2/internalization/__tests__/refiner-sandbox-wrapper.test.js.map +1 -1
  124. package/dist/runtime-v2/internalization/adversarial-case.d.ts +32 -0
  125. package/dist/runtime-v2/internalization/adversarial-case.d.ts.map +1 -0
  126. package/dist/runtime-v2/internalization/adversarial-case.js +68 -0
  127. package/dist/runtime-v2/internalization/adversarial-case.js.map +1 -0
  128. package/dist/runtime-v2/internalization/adversarial-feedback.d.ts +23 -0
  129. package/dist/runtime-v2/internalization/adversarial-feedback.d.ts.map +1 -0
  130. package/dist/runtime-v2/internalization/adversarial-feedback.js +20 -0
  131. package/dist/runtime-v2/internalization/adversarial-feedback.js.map +1 -0
  132. package/dist/runtime-v2/internalization/artificer-output.d.ts +42 -0
  133. package/dist/runtime-v2/internalization/artificer-output.d.ts.map +1 -1
  134. package/dist/runtime-v2/internalization/artificer-output.js +147 -0
  135. package/dist/runtime-v2/internalization/artificer-output.js.map +1 -1
  136. package/dist/runtime-v2/internalization/artificer-prompt-builder.d.ts +10 -2
  137. package/dist/runtime-v2/internalization/artificer-prompt-builder.d.ts.map +1 -1
  138. package/dist/runtime-v2/internalization/artificer-prompt-builder.js +26 -3
  139. package/dist/runtime-v2/internalization/artificer-prompt-builder.js.map +1 -1
  140. package/dist/runtime-v2/internalization/artificer-runner.d.ts +7 -0
  141. package/dist/runtime-v2/internalization/artificer-runner.d.ts.map +1 -1
  142. package/dist/runtime-v2/internalization/artificer-runner.js +11 -2
  143. package/dist/runtime-v2/internalization/artificer-runner.js.map +1 -1
  144. package/dist/runtime-v2/internalization/evaluator-output.d.ts +63 -0
  145. package/dist/runtime-v2/internalization/evaluator-output.d.ts.map +1 -1
  146. package/dist/runtime-v2/internalization/evaluator-output.js +158 -0
  147. package/dist/runtime-v2/internalization/evaluator-output.js.map +1 -1
  148. package/dist/runtime-v2/internalization/evaluator-prompt-builder.d.ts +8 -1
  149. package/dist/runtime-v2/internalization/evaluator-prompt-builder.d.ts.map +1 -1
  150. package/dist/runtime-v2/internalization/evaluator-prompt-builder.js +16 -3
  151. package/dist/runtime-v2/internalization/evaluator-prompt-builder.js.map +1 -1
  152. package/dist/runtime-v2/internalization/evaluator-runner.d.ts +82 -2
  153. package/dist/runtime-v2/internalization/evaluator-runner.d.ts.map +1 -1
  154. package/dist/runtime-v2/internalization/evaluator-runner.js +496 -4
  155. package/dist/runtime-v2/internalization/evaluator-runner.js.map +1 -1
  156. package/dist/runtime-v2/internalization/index.d.ts +9 -4
  157. package/dist/runtime-v2/internalization/index.d.ts.map +1 -1
  158. package/dist/runtime-v2/internalization/index.js +6 -2
  159. package/dist/runtime-v2/internalization/index.js.map +1 -1
  160. package/dist/runtime-v2/internalization/peer-runner-contracts.d.ts +2 -0
  161. package/dist/runtime-v2/internalization/peer-runner-contracts.d.ts.map +1 -1
  162. package/dist/runtime-v2/internalization/peer-runner-contracts.js +19 -9
  163. package/dist/runtime-v2/internalization/peer-runner-contracts.js.map +1 -1
  164. package/dist/runtime-v2/internalization/pitask-metadata.d.ts +7 -0
  165. package/dist/runtime-v2/internalization/pitask-metadata.d.ts.map +1 -1
  166. package/dist/runtime-v2/internalization/pitask-metadata.js +15 -5
  167. package/dist/runtime-v2/internalization/pitask-metadata.js.map +1 -1
  168. package/dist/runtime-v2/internalization/prompt-serializer.d.ts +3 -0
  169. package/dist/runtime-v2/internalization/prompt-serializer.d.ts.map +1 -0
  170. package/dist/runtime-v2/internalization/prompt-serializer.js +22 -0
  171. package/dist/runtime-v2/internalization/prompt-serializer.js.map +1 -0
  172. package/dist/runtime-v2/proven-channel-baseline.d.ts.map +1 -1
  173. package/dist/runtime-v2/proven-channel-baseline.js +1 -0
  174. package/dist/runtime-v2/proven-channel-baseline.js.map +1 -1
  175. package/dist/runtime-v2/runner/__tests__/base-peer-runner-trust-boundary.test.js.map +1 -1
  176. package/dist/runtime-v2/runner/__tests__/pain-signal-bridge-admission.test.js.map +1 -1
  177. package/dist/runtime-v2/runner/__tests__/pain-signal-bridge.test.js.map +1 -1
  178. package/dist/runtime-v2/store/history/sqlite-history-query.test.js +1 -1
  179. package/dist/runtime-v2/store/history/sqlite-history-query.test.js.map +1 -1
  180. package/dist/runtime-v2/store/idempotent-transitions.test.js +0 -5
  181. package/dist/runtime-v2/store/idempotent-transitions.test.js.map +1 -1
  182. package/dist/runtime-v2/store/lifecycle/lease-manager.test.js +0 -2
  183. package/dist/runtime-v2/store/lifecycle/lease-manager.test.js.map +1 -1
  184. package/dist/runtime-v2/store/lifecycle/recovery-sweep.test.js +0 -2
  185. package/dist/runtime-v2/store/lifecycle/recovery-sweep.test.js.map +1 -1
  186. package/dist/runtime-v2/store/schema-conformance.test.js +0 -10
  187. package/dist/runtime-v2/store/schema-conformance.test.js.map +1 -1
  188. package/dist/runtime-v2/store/sqlite-connection-pragma.test.js +2 -2
  189. package/dist/runtime-v2/store/sqlite-connection-pragma.test.js.map +1 -1
  190. package/dist/runtime-v2/store/sqlite-run-store.test.js.map +1 -1
  191. package/dist/runtime-v2/store/sqlite-task-store.test.js +0 -2
  192. package/dist/runtime-v2/store/sqlite-task-store.test.js.map +1 -1
  193. package/dist/runtime-v2/store/trajectory/source-trace-locator.test.js +0 -1
  194. package/dist/runtime-v2/store/trajectory/source-trace-locator.test.js.map +1 -1
  195. package/dist/runtime-v2/store/trajectory/sqlite-trajectory-locator.test.js +1 -1
  196. package/dist/runtime-v2/store/trajectory/sqlite-trajectory-locator.test.js.map +1 -1
  197. package/dist/runtime-v2/store/workspace-isolation.test.js +0 -2
  198. package/dist/runtime-v2/store/workspace-isolation.test.js.map +1 -1
  199. package/dist/telemetry-event.d.ts +2 -2
  200. package/dist/telemetry-event.d.ts.map +1 -1
  201. package/dist/telemetry-event.js +21 -0
  202. package/dist/telemetry-event.js.map +1 -1
  203. package/package.json +1 -1
@@ -0,0 +1,510 @@
1
+ /**
2
+ * ArtificerL2Adapter tests (RuleHost MVP Activation, ADR-0014 Amendment 2026-06-17,
3
+ * PRD Decision 8, test module 7).
4
+ *
5
+ * TDD Phase 4.1 RED — asserts behavior not yet implemented in
6
+ * artificer-l2-adapter.ts.
7
+ *
8
+ * The adapter encapsulates a write-test-fix loop (generate code → sandbox replay →
9
+ * inject RefinerSandboxFailedCase[] feedback → regenerate, max 3 attempts) inside
10
+ * a PDRuntimeAdapter. BasePeerRunner sees a single startRun(); the loop is invisible
11
+ * to it. This follows the Dreamer L2 precedent (L2AgentLoopAdapter) of putting the
12
+ * multi-attempt logic in the adapter, not in succeedTask().
13
+ *
14
+ * Testability: LLM calls are mocked via an injected `generateCode` function.
15
+ * Sandbox replay uses real evaluateRefinerRuleHostGate with a controllable
16
+ * RefinerRuleHostGateDeps. No real LLM calls.
17
+ *
18
+ * Coverage (PRD test module 7):
19
+ * - happy path: 1st attempt passes replay → V2 output (1 LLM call)
20
+ * - fix path: 1st attempt fails → feedback injected → 2nd passes → V2 (2 LLM calls)
21
+ * - exhaustion: 3 attempts all fail → V1 degraded output (no code fields)
22
+ * - error types: forbidden_pattern / runtime_error / timeout / validation_failed
23
+ * - V1 backward compat: degraded V1 output is NOT detected as V2 by isArtificerOutputV2
24
+ *
25
+ * ERR checklist (EP-05 Loop State Freshness): each attempt reads fresh sandbox
26
+ * errors; the feedback injected into attempt N+1 is from attempt N's failure,
27
+ * never stale. (ERR-015/018/019)
28
+ */
29
+ import { describe, it, expect } from 'vitest';
30
+ import { ArtificerL2Adapter } from '../artificer-l2-adapter.js';
31
+ import { isArtificerOutputV2, DefaultArtificerValidator } from '../../internalization/artificer-output.js';
32
+ import { validateGoldenTrace } from '../../golden-trace.js';
33
+ import { Value } from '@sinclair/typebox/value';
34
+ import { RunHandleSchema, RuntimeKindSchema } from '../../runtime-protocol.js';
35
+ const TASK_ID = 'task-artificer-l2-001';
36
+ /** A valid V2 output the LLM might produce. */
37
+ function makeV2Output(overrides = {}) {
38
+ return {
39
+ taskId: TASK_ID,
40
+ sourceScribeArtifactId: 'pi-art-scribe-001-run-001',
41
+ implementationPlan: {
42
+ summary: 'Block writes to system dirs',
43
+ targetSurface: 'edit gate',
44
+ changes: ['path prefix check'],
45
+ tests: ['golden trace replay'],
46
+ rolloutNotes: ['shadow first'],
47
+ confidence: 0.8,
48
+ },
49
+ sourceTrace: { scribeArtifactId: 'pi-art-scribe-001-run-001' },
50
+ risks: [],
51
+ generatedAt: '2026-06-17T00:00:00.000Z',
52
+ implementationCode: 'function evaluate(input, helpers) { return { decision: "allow", matched: false, reason: "ok" }; }',
53
+ goldenTraceCases: [
54
+ { caseId: 'negative-1', kind: 'negative', toolName: 'edit', params: { path: '/etc/x' }, expectedDecision: 'block' },
55
+ { caseId: 'positive-1', kind: 'positive', toolName: 'read', params: { path: '/tmp/y' }, expectedDecision: 'allow' },
56
+ ],
57
+ affectedTools: ['edit'],
58
+ ...overrides,
59
+ };
60
+ }
61
+ /** Build a gateDeps whose sandbox always accepts (replay passes). */
62
+ function makeAlwaysPassGateDeps() {
63
+ const passingResult = {
64
+ success: true,
65
+ failedCases: [],
66
+ executionTimeMs: 1,
67
+ forbiddenPatternViolations: [],
68
+ };
69
+ return {
70
+ evaluateInSandbox: (_code, _trace, _opts) => passingResult,
71
+ };
72
+ }
73
+ /**
74
+ * Build a gateDeps whose sandbox fails N times then passes.
75
+ * Each failure carries a distinct RefinerSandboxFailedCase so tests can assert
76
+ * that the RIGHT feedback was injected into the next attempt (EP-05 freshness).
77
+ */
78
+ function makeFailNTimesGateDeps(failures) {
79
+ const calls = [];
80
+ let attempt = 0;
81
+ const deps = {
82
+ evaluateInSandbox: (code, _trace, _opts) => {
83
+ calls.push({ code });
84
+ const result = failures[attempt] ?? { success: true, failedCases: [], executionTimeMs: 1, forbiddenPatternViolations: [] };
85
+ attempt += 1;
86
+ return result;
87
+ },
88
+ };
89
+ return { deps, calls };
90
+ }
91
+ const FAILED_FORBIDDEN = {
92
+ success: false,
93
+ failedCases: [{ caseId: '__sandbox__', errorType: 'forbidden_pattern', message: 'require() detected' }],
94
+ executionTimeMs: 1,
95
+ forbiddenPatternViolations: ['require'],
96
+ };
97
+ const FAILED_RUNTIME = {
98
+ success: false,
99
+ failedCases: [{ caseId: 'negative-1', errorType: 'runtime_error', message: 'TypeError: x is undefined' }],
100
+ executionTimeMs: 1,
101
+ forbiddenPatternViolations: [],
102
+ };
103
+ const FAILED_TIMEOUT = {
104
+ success: false,
105
+ failedCases: [{ caseId: 'negative-1', errorType: 'timeout', message: 'exceeded 1000ms' }],
106
+ executionTimeMs: 1001,
107
+ forbiddenPatternViolations: [],
108
+ };
109
+ const FAILED_VALIDATION = {
110
+ success: false,
111
+ failedCases: [{ caseId: 'negative-1', errorType: 'validation_failed', message: 'expected block got allow' }],
112
+ executionTimeMs: 1,
113
+ forbiddenPatternViolations: [],
114
+ };
115
+ describe('ArtificerL2Adapter (RuleHost MVP Activation, PRI-424)', () => {
116
+ // ── happy path ─────────────────────────────────────────────────────────────
117
+ it('returns V2 output on 1st attempt when sandbox replay passes (1 LLM call)', async () => {
118
+ const generateCalls = [];
119
+ const generateCode = async (prompt) => {
120
+ generateCalls.push(prompt);
121
+ return makeV2Output();
122
+ };
123
+ const adapter = new ArtificerL2Adapter({
124
+ generateCode,
125
+ gateDeps: makeAlwaysPassGateDeps(),
126
+ validator: new DefaultArtificerValidator(),
127
+ });
128
+ const handle = await adapter.startRun({
129
+ agentSpec: { agentId: 'artificer', schemaVersion: 'v1' },
130
+ taskRef: { taskId: TASK_ID },
131
+ inputPayload: 'initial prompt',
132
+ contextItems: [],
133
+ outputSchemaRef: 'artificer-output-v2',
134
+ timeoutMs: 300_000,
135
+ });
136
+ expect(generateCalls).toHaveLength(1);
137
+ const output = await adapter.fetchOutput(handle.runId);
138
+ expect(output).not.toBeNull();
139
+ if (!output)
140
+ return;
141
+ expect(isArtificerOutputV2(output.payload)).toBe(true);
142
+ });
143
+ // ── fix path ───────────────────────────────────────────────────────────────
144
+ it('injects sandbox failure feedback into 2nd attempt and returns V2 when it passes (2 LLM calls)', async () => {
145
+ const generateCalls = [];
146
+ const generateCode = async (prompt) => {
147
+ generateCalls.push(prompt);
148
+ return makeV2Output();
149
+ };
150
+ const { deps } = makeFailNTimesGateDeps([FAILED_RUNTIME]);
151
+ const adapter = new ArtificerL2Adapter({
152
+ generateCode,
153
+ gateDeps: deps,
154
+ validator: new DefaultArtificerValidator(),
155
+ });
156
+ const handle = await adapter.startRun({
157
+ agentSpec: { agentId: 'artificer', schemaVersion: 'v1' },
158
+ taskRef: { taskId: TASK_ID },
159
+ inputPayload: 'initial prompt',
160
+ contextItems: [],
161
+ outputSchemaRef: 'artificer-output-v2',
162
+ timeoutMs: 300_000,
163
+ });
164
+ expect(generateCalls).toHaveLength(2);
165
+ // 2nd prompt MUST contain the failure feedback from attempt 1 (EP-05 freshness).
166
+ expect(generateCalls[1]).toContain('TypeError: x is undefined');
167
+ const output = await adapter.fetchOutput(handle.runId);
168
+ expect(output).not.toBeNull();
169
+ if (!output)
170
+ return;
171
+ expect(isArtificerOutputV2(output.payload)).toBe(true);
172
+ });
173
+ // ── exhaustion → V1 degradation ────────────────────────────────────────────
174
+ it('degrades to V1 output (no code fields) when all 3 attempts fail (3 LLM calls)', async () => {
175
+ const generateCalls = [];
176
+ const generateCode = async (prompt) => {
177
+ generateCalls.push(prompt);
178
+ return makeV2Output();
179
+ };
180
+ const { deps } = makeFailNTimesGateDeps([FAILED_RUNTIME, FAILED_RUNTIME, FAILED_RUNTIME]);
181
+ const adapter = new ArtificerL2Adapter({
182
+ generateCode,
183
+ gateDeps: deps,
184
+ validator: new DefaultArtificerValidator(),
185
+ });
186
+ const handle = await adapter.startRun({
187
+ agentSpec: { agentId: 'artificer', schemaVersion: 'v1' },
188
+ taskRef: { taskId: TASK_ID },
189
+ inputPayload: 'initial prompt',
190
+ contextItems: [],
191
+ outputSchemaRef: 'artificer-output-v2',
192
+ timeoutMs: 300_000,
193
+ });
194
+ expect(generateCalls).toHaveLength(3);
195
+ const output = await adapter.fetchOutput(handle.runId);
196
+ expect(output).not.toBeNull();
197
+ if (!output)
198
+ return;
199
+ // Degraded output must NOT be detected as V2 — downstream Evaluator skips code review.
200
+ expect(isArtificerOutputV2(output.payload)).toBe(false);
201
+ // V1 fields preserved (plan, lineage) so principle artifact path still works.
202
+ expect(output.payload).toHaveProperty('implementationPlan');
203
+ });
204
+ it('degraded V1 output still passes the V1 validator (principle artifact path intact)', async () => {
205
+ const generateCode = async () => makeV2Output();
206
+ const { deps } = makeFailNTimesGateDeps([FAILED_RUNTIME, FAILED_RUNTIME, FAILED_RUNTIME]);
207
+ const validator = new DefaultArtificerValidator();
208
+ const adapter = new ArtificerL2Adapter({
209
+ generateCode,
210
+ gateDeps: deps,
211
+ validator,
212
+ });
213
+ const handle = await adapter.startRun({
214
+ agentSpec: { agentId: 'artificer', schemaVersion: 'v1' },
215
+ taskRef: { taskId: TASK_ID },
216
+ inputPayload: 'initial prompt',
217
+ contextItems: [],
218
+ outputSchemaRef: 'artificer-output-v2',
219
+ timeoutMs: 300_000,
220
+ });
221
+ const output = await adapter.fetchOutput(handle.runId);
222
+ expect(output).not.toBeNull();
223
+ if (!output)
224
+ return;
225
+ const result = await validator.validate(output.payload, TASK_ID);
226
+ expect(result.valid).toBe(true);
227
+ });
228
+ // ── error type coverage ────────────────────────────────────────────────────
229
+ it('handles forbidden_pattern failure and injects it as feedback', async () => {
230
+ const generateCalls = [];
231
+ const generateCode = async (prompt) => {
232
+ generateCalls.push(prompt);
233
+ return makeV2Output();
234
+ };
235
+ const { deps } = makeFailNTimesGateDeps([FAILED_FORBIDDEN]);
236
+ const adapter = new ArtificerL2Adapter({
237
+ generateCode,
238
+ gateDeps: deps,
239
+ validator: new DefaultArtificerValidator(),
240
+ });
241
+ await adapter.startRun({
242
+ agentSpec: { agentId: 'artificer', schemaVersion: 'v1' },
243
+ taskRef: { taskId: TASK_ID },
244
+ inputPayload: 'initial prompt',
245
+ contextItems: [],
246
+ outputSchemaRef: 'artificer-output-v2',
247
+ timeoutMs: 300_000,
248
+ });
249
+ expect(generateCalls).toHaveLength(2);
250
+ expect(generateCalls[1]).toContain('require');
251
+ });
252
+ it('handles timeout failure and injects it as feedback', async () => {
253
+ const generateCalls = [];
254
+ const generateCode = async (prompt) => {
255
+ generateCalls.push(prompt);
256
+ return makeV2Output();
257
+ };
258
+ const { deps } = makeFailNTimesGateDeps([FAILED_TIMEOUT]);
259
+ const adapter = new ArtificerL2Adapter({
260
+ generateCode,
261
+ gateDeps: deps,
262
+ validator: new DefaultArtificerValidator(),
263
+ });
264
+ await adapter.startRun({
265
+ agentSpec: { agentId: 'artificer', schemaVersion: 'v1' },
266
+ taskRef: { taskId: TASK_ID },
267
+ inputPayload: 'initial prompt',
268
+ contextItems: [],
269
+ outputSchemaRef: 'artificer-output-v2',
270
+ timeoutMs: 300_000,
271
+ });
272
+ expect(generateCalls[1]).toContain('timeout');
273
+ });
274
+ it('handles validation_failed failure and injects it as feedback', async () => {
275
+ const generateCalls = [];
276
+ const generateCode = async (prompt) => {
277
+ generateCalls.push(prompt);
278
+ return makeV2Output();
279
+ };
280
+ const { deps } = makeFailNTimesGateDeps([FAILED_VALIDATION]);
281
+ const adapter = new ArtificerL2Adapter({
282
+ generateCode,
283
+ gateDeps: deps,
284
+ validator: new DefaultArtificerValidator(),
285
+ });
286
+ await adapter.startRun({
287
+ agentSpec: { agentId: 'artificer', schemaVersion: 'v1' },
288
+ taskRef: { taskId: TASK_ID },
289
+ inputPayload: 'initial prompt',
290
+ contextItems: [],
291
+ outputSchemaRef: 'artificer-output-v2',
292
+ timeoutMs: 300_000,
293
+ });
294
+ expect(generateCalls[1]).toContain('expected block got allow');
295
+ });
296
+ // ── EP-05 freshness: each attempt uses the immediately-prior failure ───────
297
+ it('injects attempt-N failure (not stale) into attempt N+1 prompt', async () => {
298
+ const generateCalls = [];
299
+ const generateCode = async (prompt) => {
300
+ generateCalls.push(prompt);
301
+ return makeV2Output();
302
+ };
303
+ // attempt 1 fails with runtime_error, attempt 2 fails with timeout, attempt 3 passes
304
+ const { deps } = makeFailNTimesGateDeps([FAILED_RUNTIME, FAILED_TIMEOUT]);
305
+ const adapter = new ArtificerL2Adapter({
306
+ generateCode,
307
+ gateDeps: deps,
308
+ validator: new DefaultArtificerValidator(),
309
+ });
310
+ await adapter.startRun({
311
+ agentSpec: { agentId: 'artificer', schemaVersion: 'v1' },
312
+ taskRef: { taskId: TASK_ID },
313
+ inputPayload: 'initial prompt',
314
+ contextItems: [],
315
+ outputSchemaRef: 'artificer-output-v2',
316
+ timeoutMs: 300_000,
317
+ });
318
+ // attempt 2 prompt must mention attempt 1's runtime_error, NOT attempt 2's timeout
319
+ expect(generateCalls[1]).toContain('TypeError: x is undefined');
320
+ expect(generateCalls[1]).not.toContain('exceeded 1000ms');
321
+ // attempt 3 prompt must mention attempt 2's timeout, NOT attempt 1's runtime_error
322
+ expect(generateCalls[2]).toContain('exceeded 1000ms');
323
+ });
324
+ // ── golden trace used for replay must be valid ──────────────────────────────
325
+ it('builds a valid golden trace from the V2 output for sandbox replay', async () => {
326
+ const generateCode = async () => makeV2Output();
327
+ let capturedTrace = null;
328
+ const deps = {
329
+ evaluateInSandbox: (_code, trace, _opts) => {
330
+ capturedTrace = trace;
331
+ return { success: true, failedCases: [], executionTimeMs: 1, forbiddenPatternViolations: [] };
332
+ },
333
+ };
334
+ const adapter = new ArtificerL2Adapter({
335
+ generateCode,
336
+ gateDeps: deps,
337
+ validator: new DefaultArtificerValidator(),
338
+ });
339
+ await adapter.startRun({
340
+ agentSpec: { agentId: 'artificer', schemaVersion: 'v1' },
341
+ taskRef: { taskId: TASK_ID },
342
+ inputPayload: 'initial prompt',
343
+ contextItems: [],
344
+ outputSchemaRef: 'artificer-output-v2',
345
+ timeoutMs: 300_000,
346
+ });
347
+ expect(capturedTrace).not.toBeNull();
348
+ expect(validateGoldenTrace(capturedTrace).valid).toBe(true);
349
+ });
350
+ // ── invalid LLM output (fails validator) is retried, not silently accepted ─
351
+ it('retries when LLM output fails the ArtificerValidator (malformed V2)', async () => {
352
+ let attempt = 0;
353
+ const generateCode = async () => {
354
+ attempt += 1;
355
+ if (attempt === 1) {
356
+ // Malformed: missing affectedTools
357
+ const bad = makeV2Output();
358
+ delete bad.affectedTools;
359
+ return bad;
360
+ }
361
+ return makeV2Output();
362
+ };
363
+ const adapter = new ArtificerL2Adapter({
364
+ generateCode,
365
+ gateDeps: makeAlwaysPassGateDeps(),
366
+ validator: new DefaultArtificerValidator(),
367
+ });
368
+ const handle = await adapter.startRun({
369
+ agentSpec: { agentId: 'artificer', schemaVersion: 'v1' },
370
+ taskRef: { taskId: TASK_ID },
371
+ inputPayload: 'initial prompt',
372
+ contextItems: [],
373
+ outputSchemaRef: 'artificer-output-v2',
374
+ timeoutMs: 300_000,
375
+ });
376
+ const output = await adapter.fetchOutput(handle.runId);
377
+ expect(output).not.toBeNull();
378
+ if (!output)
379
+ return;
380
+ // 2nd attempt produces valid V2 → replay passes → V2 output
381
+ expect(isArtificerOutputV2(output.payload)).toBe(true);
382
+ });
383
+ // ── P1+P2 fixes: validator-rejected candidates never degrade, total failure throws ─
384
+ it('throws (does NOT degrade) when all 3 attempts fail validation — no validated V2 to degrade from', async () => {
385
+ // P2 fix: validator rejection must NOT set lastValidV2. Without a validated
386
+ // candidate, degradation is impossible (Runtime Contract Rule 1/3 — never
387
+ // emit an unvalidated object). The adapter throws PDRuntimeError instead,
388
+ // which BasePeerRunner.handlePostLeaseError catches → task fails.
389
+ const generateCode = async () => {
390
+ // Every attempt returns malformed V2 (missing affectedTools).
391
+ const bad = makeV2Output();
392
+ delete bad.affectedTools;
393
+ return bad;
394
+ };
395
+ const adapter = new ArtificerL2Adapter({
396
+ generateCode,
397
+ gateDeps: makeAlwaysPassGateDeps(),
398
+ validator: new DefaultArtificerValidator(),
399
+ });
400
+ await expect(adapter.startRun({
401
+ agentSpec: { agentId: 'artificer', schemaVersion: 'v1' },
402
+ taskRef: { taskId: TASK_ID },
403
+ inputPayload: 'initial prompt',
404
+ contextItems: [],
405
+ outputSchemaRef: 'artificer-output-v2',
406
+ timeoutMs: 300_000,
407
+ })).rejects.toThrow(/without a validated candidate/);
408
+ });
409
+ it('degrades to V1 only when a VALIDATED V2 candidate existed (replay failed, not validation)', async () => {
410
+ // Confirms the positive side of the P2 fix: a validated V2 that fails replay
411
+ // CAN degrade. This is the legitimate degradation path (plan is valid, only
412
+ // the code was wrong).
413
+ const generateCode = async () => makeV2Output();
414
+ const { deps } = makeFailNTimesGateDeps([FAILED_RUNTIME, FAILED_RUNTIME, FAILED_RUNTIME]);
415
+ const adapter = new ArtificerL2Adapter({
416
+ generateCode,
417
+ gateDeps: deps,
418
+ validator: new DefaultArtificerValidator(),
419
+ });
420
+ const handle = await adapter.startRun({
421
+ agentSpec: { agentId: 'artificer', schemaVersion: 'v1' },
422
+ taskRef: { taskId: TASK_ID },
423
+ inputPayload: 'initial prompt',
424
+ contextItems: [],
425
+ outputSchemaRef: 'artificer-output-v2',
426
+ timeoutMs: 300_000,
427
+ });
428
+ const output = await adapter.fetchOutput(handle.runId);
429
+ expect(output).not.toBeNull();
430
+ if (!output)
431
+ return;
432
+ expect(isArtificerOutputV2(output.payload)).toBe(false);
433
+ });
434
+ // ── runtime metadata ─────────────────────────────────────────────────────────
435
+ it('pollRun returns terminal status after startRun completes', async () => {
436
+ const generateCode = async () => makeV2Output();
437
+ const adapter = new ArtificerL2Adapter({
438
+ generateCode,
439
+ gateDeps: makeAlwaysPassGateDeps(),
440
+ validator: new DefaultArtificerValidator(),
441
+ });
442
+ const handle = await adapter.startRun({
443
+ agentSpec: { agentId: 'artificer', schemaVersion: 'v1' },
444
+ taskRef: { taskId: TASK_ID },
445
+ inputPayload: 'initial prompt',
446
+ contextItems: [],
447
+ outputSchemaRef: 'artificer-output-v2',
448
+ timeoutMs: 300_000,
449
+ });
450
+ const status = await adapter.pollRun(handle.runId);
451
+ // RunStatus is an object { runId, status, ... }; status.status is the execution state.
452
+ expect(['succeeded', 'failed']).toContain(status.status);
453
+ });
454
+ it('kind() returns a stable runtime kind identifier', () => {
455
+ const adapter = new ArtificerL2Adapter({
456
+ generateCode: async () => makeV2Output(),
457
+ gateDeps: makeAlwaysPassGateDeps(),
458
+ validator: new DefaultArtificerValidator(),
459
+ });
460
+ expect(Value.Check(RuntimeKindSchema, adapter.kind())).toBe(true);
461
+ expect(adapter.kind()).toBe('pi-ai-l2');
462
+ });
463
+ it('returns a RunHandle that satisfies the runtime protocol schema', async () => {
464
+ const adapter = new ArtificerL2Adapter({
465
+ generateCode: async () => makeV2Output(),
466
+ gateDeps: makeAlwaysPassGateDeps(),
467
+ validator: new DefaultArtificerValidator(),
468
+ });
469
+ const handle = await adapter.startRun({
470
+ agentSpec: { agentId: 'artificer', schemaVersion: 'v1' },
471
+ taskRef: { taskId: TASK_ID },
472
+ inputPayload: '{}',
473
+ contextItems: [],
474
+ outputSchemaRef: 'artificer-output-v2',
475
+ timeoutMs: 30_000,
476
+ });
477
+ expect(Value.Check(RunHandleSchema, handle)).toBe(true);
478
+ });
479
+ it.each([0, -1, 1.5, Number.POSITIVE_INFINITY])('rejects invalid maxAttempts=%s', (maxAttempts) => {
480
+ expect(() => new ArtificerL2Adapter({
481
+ generateCode: async () => makeV2Output(),
482
+ gateDeps: makeAlwaysPassGateDeps(),
483
+ validator: new DefaultArtificerValidator(),
484
+ maxAttempts,
485
+ })).toThrow(/maxAttempts/);
486
+ });
487
+ it('bounds and safely serializes an unknown prompt payload', async () => {
488
+ const circular = { text: 'x'.repeat(60_000) };
489
+ circular.self = circular;
490
+ let receivedPrompt = '';
491
+ const adapter = new ArtificerL2Adapter({
492
+ generateCode: async (prompt) => {
493
+ receivedPrompt = prompt;
494
+ return makeV2Output();
495
+ },
496
+ gateDeps: makeAlwaysPassGateDeps(),
497
+ validator: new DefaultArtificerValidator(),
498
+ });
499
+ await adapter.startRun({
500
+ agentSpec: { agentId: 'artificer', schemaVersion: 'v1' },
501
+ taskRef: { taskId: TASK_ID },
502
+ inputPayload: circular,
503
+ contextItems: [],
504
+ outputSchemaRef: 'artificer-output-v2',
505
+ timeoutMs: 30_000,
506
+ });
507
+ expect(receivedPrompt.length).toBeLessThanOrEqual(50_003);
508
+ });
509
+ });
510
+ //# sourceMappingURL=artificer-l2-adapter.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"artificer-l2-adapter.test.js","sourceRoot":"","sources":["../../../../src/runtime-v2/adapter/__tests__/artificer-l2-adapter.test.ts"],"names":[],"mappings":"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"}
@@ -76,21 +76,21 @@ describe('DiagnosticianOutputV1Schema annotations', () => {
76
76
  const items = recSchema.items;
77
77
  const absPrinciple = items.properties.abstractedPrinciple;
78
78
  expect(absPrinciple).toBeDefined();
79
- expect(typeof absPrinciple.description).toBe('string');
79
+ expect(typeof absPrinciple?.description).toBe('string');
80
80
  });
81
81
  it('triggerPattern has description annotation', () => {
82
82
  const recSchema = DiagnosticianOutputV1Schema.properties.recommendations;
83
83
  const items = recSchema.items;
84
84
  const trigger = items.properties.triggerPattern;
85
85
  expect(trigger).toBeDefined();
86
- expect(typeof trigger.description).toBe('string');
86
+ expect(typeof trigger?.description).toBe('string');
87
87
  });
88
88
  it('action has description annotation', () => {
89
89
  const recSchema = DiagnosticianOutputV1Schema.properties.recommendations;
90
90
  const items = recSchema.items;
91
- const action = items.properties.action;
91
+ const { action } = items.properties;
92
92
  expect(action).toBeDefined();
93
- expect(typeof action.description).toBe('string');
93
+ expect(typeof action?.description).toBe('string');
94
94
  });
95
95
  });
96
96
  describe('generateConstraints()', () => {
@@ -1 +1 @@
1
- {"version":3,"file":"schema-prompt-adapter.test.js","sourceRoot":"","sources":["../../../../src/runtime-v2/adapter/__tests__/schema-prompt-adapter.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"schema-prompt-adapter.test.js","sourceRoot":"","sources":["../../../../src/runtime-v2/adapter/__tests__/schema-prompt-adapter.test.ts"],"names":[],"mappings":"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"}