create-principles-disciple 1.91.0 → 1.93.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 (263) hide show
  1. package/README.md +1 -1
  2. package/console/dist/server/config/AuthConfig.js +6 -0
  3. package/console/dist/server/index.js +31 -16
  4. package/console/dist/server/models/ApprovalsGroupedConsoleModel.js +6 -3
  5. package/console/dist/server/models/ConsoleLifecycleDatasource.js +1 -1
  6. package/console/dist/server/routes/activations.js +4 -0
  7. package/console/dist/server/routes/approvals.js +24 -4
  8. package/console/dist/server/routes/feedback-reports.js +7 -5
  9. package/console/dist/server/routes/lifecycle.js +6 -1
  10. package/console/dist/server/routes/principles.js +10 -2
  11. package/console/dist/server/routes/workspaces.js +4 -0
  12. package/console/dist/ui/components/ui/charts.js +4 -1
  13. package/console/dist/ui/components/ui/markdown.js +9 -5
  14. package/console/dist/ui/i18n/en.json +1 -2
  15. package/console/dist/ui/i18n/zh-CN.json +1 -2
  16. package/console/dist/ui/utils/enum-labels.js +4 -2
  17. package/console/dist/web/assets/app.js +8 -8
  18. package/core/dist/index.d.ts +0 -1
  19. package/core/dist/index.d.ts.map +1 -1
  20. package/core/dist/index.js +0 -2
  21. package/core/dist/index.js.map +1 -1
  22. package/core/dist/pain-signal.d.ts +11 -71
  23. package/core/dist/pain-signal.d.ts.map +1 -1
  24. package/core/dist/pain-signal.js +10 -120
  25. package/core/dist/pain-signal.js.map +1 -1
  26. package/core/dist/principle-tree-ledger.d.ts +4 -87
  27. package/core/dist/principle-tree-ledger.d.ts.map +1 -1
  28. package/core/dist/principle-tree-ledger.js +51 -148
  29. package/core/dist/principle-tree-ledger.js.map +1 -1
  30. package/core/dist/runtime-v2/__tests__/activation-types-helpers.test.js +6 -14
  31. package/core/dist/runtime-v2/__tests__/activation-types-helpers.test.js.map +1 -1
  32. package/core/dist/runtime-v2/__tests__/architecture-regression.test.js +180 -70
  33. package/core/dist/runtime-v2/__tests__/architecture-regression.test.js.map +1 -1
  34. package/core/dist/runtime-v2/__tests__/barrel-io-cleanup.test.d.ts +12 -0
  35. package/core/dist/runtime-v2/__tests__/barrel-io-cleanup.test.d.ts.map +1 -0
  36. package/core/dist/runtime-v2/__tests__/barrel-io-cleanup.test.js +46 -0
  37. package/core/dist/runtime-v2/__tests__/barrel-io-cleanup.test.js.map +1 -0
  38. package/core/dist/runtime-v2/__tests__/intake-to-internalization-bridge.test.js +1 -2
  39. package/core/dist/runtime-v2/__tests__/intake-to-internalization-bridge.test.js.map +1 -1
  40. package/core/dist/runtime-v2/__tests__/internalization-orchestrator.test.js +8 -8
  41. package/core/dist/runtime-v2/__tests__/internalization-orchestrator.test.js.map +1 -1
  42. package/core/dist/runtime-v2/__tests__/internalization-peer-runner-contracts.test.js +45 -80
  43. package/core/dist/runtime-v2/__tests__/internalization-peer-runner-contracts.test.js.map +1 -1
  44. package/core/dist/runtime-v2/__tests__/internalization-state-machine.test.js +31 -130
  45. package/core/dist/runtime-v2/__tests__/internalization-state-machine.test.js.map +1 -1
  46. package/core/dist/runtime-v2/__tests__/io-deletion.test.d.ts +12 -0
  47. package/core/dist/runtime-v2/__tests__/io-deletion.test.d.ts.map +1 -0
  48. package/core/dist/runtime-v2/__tests__/io-deletion.test.js +92 -0
  49. package/core/dist/runtime-v2/__tests__/io-deletion.test.js.map +1 -0
  50. package/core/dist/runtime-v2/__tests__/ledger-codec.test.d.ts +2 -0
  51. package/core/dist/runtime-v2/__tests__/ledger-codec.test.d.ts.map +1 -0
  52. package/core/dist/runtime-v2/__tests__/ledger-codec.test.js +429 -0
  53. package/core/dist/runtime-v2/__tests__/ledger-codec.test.js.map +1 -0
  54. package/core/dist/runtime-v2/__tests__/ledger-store.test.d.ts +2 -0
  55. package/core/dist/runtime-v2/__tests__/ledger-store.test.d.ts.map +1 -0
  56. package/core/dist/runtime-v2/__tests__/ledger-store.test.js +65 -0
  57. package/core/dist/runtime-v2/__tests__/ledger-store.test.js.map +1 -0
  58. package/core/dist/runtime-v2/__tests__/pain-signal-observability.test.js +146 -0
  59. package/core/dist/runtime-v2/__tests__/pain-signal-observability.test.js.map +1 -1
  60. package/core/dist/runtime-v2/__tests__/pain-signal-unification.test.d.ts +2 -0
  61. package/core/dist/runtime-v2/__tests__/pain-signal-unification.test.d.ts.map +1 -0
  62. package/core/dist/runtime-v2/__tests__/pain-signal-unification.test.js +150 -0
  63. package/core/dist/runtime-v2/__tests__/pain-signal-unification.test.js.map +1 -0
  64. package/core/dist/runtime-v2/__tests__/pain-to-principle-service.test.js +0 -1
  65. package/core/dist/runtime-v2/__tests__/pain-to-principle-service.test.js.map +1 -1
  66. package/core/dist/runtime-v2/__tests__/pitask-metadata.test.js +4 -4
  67. package/core/dist/runtime-v2/__tests__/pitask-metadata.test.js.map +1 -1
  68. package/core/dist/runtime-v2/__tests__/proven-channel-baseline.test.js +2 -5
  69. package/core/dist/runtime-v2/__tests__/proven-channel-baseline.test.js.map +1 -1
  70. package/core/dist/runtime-v2/__tests__/story-a-demo.test.js +2 -2
  71. package/core/dist/runtime-v2/__tests__/story-a-demo.test.js.map +1 -1
  72. package/core/dist/runtime-v2/activation/__tests__/activation-dispatcher.test.js +7 -10
  73. package/core/dist/runtime-v2/activation/__tests__/activation-dispatcher.test.js.map +1 -1
  74. package/core/dist/runtime-v2/activation/__tests__/approval-queue.test.js +1 -3
  75. package/core/dist/runtime-v2/activation/__tests__/approval-queue.test.js.map +1 -1
  76. package/core/dist/runtime-v2/activation/__tests__/approval-store-extended.test.js +4 -4
  77. package/core/dist/runtime-v2/activation/__tests__/sqlite-approval-store.test.js +6 -6
  78. package/core/dist/runtime-v2/activation/__tests__/sqlite-approval-store.test.js.map +1 -1
  79. package/core/dist/runtime-v2/activation/activation-dispatcher.d.ts.map +1 -1
  80. package/core/dist/runtime-v2/activation/activation-dispatcher.js +0 -1
  81. package/core/dist/runtime-v2/activation/activation-dispatcher.js.map +1 -1
  82. package/core/dist/runtime-v2/activation/activation-types.d.ts.map +1 -1
  83. package/core/dist/runtime-v2/activation/activation-types.js +0 -1
  84. package/core/dist/runtime-v2/activation/activation-types.js.map +1 -1
  85. package/core/dist/runtime-v2/adapter/__tests__/test-double-runtime-adapter.test.js +199 -0
  86. package/core/dist/runtime-v2/adapter/__tests__/test-double-runtime-adapter.test.js.map +1 -1
  87. package/core/dist/runtime-v2/adapter/pi-ai-runtime-adapter.d.ts.map +1 -1
  88. package/core/dist/runtime-v2/adapter/pi-ai-runtime-adapter.js +0 -2
  89. package/core/dist/runtime-v2/adapter/pi-ai-runtime-adapter.js.map +1 -1
  90. package/core/dist/runtime-v2/config/__tests__/pd-config-agent-binding.test.js +0 -7
  91. package/core/dist/runtime-v2/config/__tests__/pd-config-agent-binding.test.js.map +1 -1
  92. package/core/dist/runtime-v2/config/__tests__/pd-config-contract.test.js +5 -6
  93. package/core/dist/runtime-v2/config/__tests__/pd-config-contract.test.js.map +1 -1
  94. package/core/dist/runtime-v2/config/__tests__/pd-config-redaction-deep.test.js +0 -1
  95. package/core/dist/runtime-v2/config/__tests__/pd-config-redaction-deep.test.js.map +1 -1
  96. package/core/dist/runtime-v2/config/__tests__/pd-config-validation-edge-cases.test.js +0 -1
  97. package/core/dist/runtime-v2/config/__tests__/pd-config-validation-edge-cases.test.js.map +1 -1
  98. package/core/dist/runtime-v2/config/pd-config-defaults.d.ts.map +1 -1
  99. package/core/dist/runtime-v2/config/pd-config-defaults.js +0 -1
  100. package/core/dist/runtime-v2/config/pd-config-defaults.js.map +1 -1
  101. package/core/dist/runtime-v2/config/pd-config-types.d.ts +1 -1
  102. package/core/dist/runtime-v2/config/pd-config-types.d.ts.map +1 -1
  103. package/core/dist/runtime-v2/config/pd-config-types.js +0 -1
  104. package/core/dist/runtime-v2/config/pd-config-types.js.map +1 -1
  105. package/core/dist/runtime-v2/diagnostician/__tests__/diag-rootcause-output.test.js +156 -0
  106. package/core/dist/runtime-v2/diagnostician/__tests__/diag-rootcause-output.test.js.map +1 -1
  107. package/core/dist/runtime-v2/feature-flags/feature-flag-contract.d.ts.map +1 -1
  108. package/core/dist/runtime-v2/feature-flags/feature-flag-contract.js +0 -2
  109. package/core/dist/runtime-v2/feature-flags/feature-flag-contract.js.map +1 -1
  110. package/core/dist/runtime-v2/index.d.ts +2 -9
  111. package/core/dist/runtime-v2/index.d.ts.map +1 -1
  112. package/core/dist/runtime-v2/index.js +5 -6
  113. package/core/dist/runtime-v2/index.js.map +1 -1
  114. package/core/dist/runtime-v2/internalization/__tests__/diag-chain-e2e.test.js +0 -3
  115. package/core/dist/runtime-v2/internalization/__tests__/diag-chain-e2e.test.js.map +1 -1
  116. package/core/dist/runtime-v2/internalization/__tests__/internalization-job-graph.test.js +4 -36
  117. package/core/dist/runtime-v2/internalization/__tests__/internalization-job-graph.test.js.map +1 -1
  118. package/core/dist/runtime-v2/internalization/__tests__/peer-runner-lineage-injection.test.js +0 -1
  119. package/core/dist/runtime-v2/internalization/__tests__/peer-runner-lineage-injection.test.js.map +1 -1
  120. package/core/dist/runtime-v2/internalization/__tests__/queue-actionability.test.js +0 -15
  121. package/core/dist/runtime-v2/internalization/__tests__/queue-actionability.test.js.map +1 -1
  122. package/core/dist/runtime-v2/internalization/index.d.ts +1 -7
  123. package/core/dist/runtime-v2/internalization/index.d.ts.map +1 -1
  124. package/core/dist/runtime-v2/internalization/index.js +1 -4
  125. package/core/dist/runtime-v2/internalization/index.js.map +1 -1
  126. package/core/dist/runtime-v2/internalization/internalization-job-graph.d.ts +7 -18
  127. package/core/dist/runtime-v2/internalization/internalization-job-graph.d.ts.map +1 -1
  128. package/core/dist/runtime-v2/internalization/internalization-job-graph.js +7 -24
  129. package/core/dist/runtime-v2/internalization/internalization-job-graph.js.map +1 -1
  130. package/core/dist/runtime-v2/internalization/internalization-state-machine.d.ts +3 -2
  131. package/core/dist/runtime-v2/internalization/internalization-state-machine.d.ts.map +1 -1
  132. package/core/dist/runtime-v2/internalization/internalization-state-machine.js +4 -3
  133. package/core/dist/runtime-v2/internalization/internalization-state-machine.js.map +1 -1
  134. package/core/dist/runtime-v2/internalization/peer-runner-contracts.d.ts +6 -6
  135. package/core/dist/runtime-v2/internalization/peer-runner-contracts.d.ts.map +1 -1
  136. package/core/dist/runtime-v2/internalization/peer-runner-contracts.js +0 -3
  137. package/core/dist/runtime-v2/internalization/peer-runner-contracts.js.map +1 -1
  138. package/core/dist/runtime-v2/principle-tree/ledger-codec.d.ts +30 -0
  139. package/core/dist/runtime-v2/principle-tree/ledger-codec.d.ts.map +1 -0
  140. package/core/dist/runtime-v2/principle-tree/ledger-codec.js +154 -0
  141. package/core/dist/runtime-v2/principle-tree/ledger-codec.js.map +1 -0
  142. package/core/dist/runtime-v2/recovery-sweep-service.d.ts.map +1 -1
  143. package/core/dist/runtime-v2/recovery-sweep-service.js +2 -2
  144. package/core/dist/runtime-v2/recovery-sweep-service.js.map +1 -1
  145. package/core/dist/runtime-v2/store/candidate/__tests__/recommendation-kind-resolver.test.js +1 -1
  146. package/core/dist/runtime-v2/store/candidate/__tests__/recommendation-kind-resolver.test.js.map +1 -1
  147. package/core/dist/runtime-v2/types/index.d.ts +2 -0
  148. package/core/dist/runtime-v2/types/index.d.ts.map +1 -1
  149. package/core/dist/runtime-v2/types/index.js +1 -0
  150. package/core/dist/runtime-v2/types/index.js.map +1 -1
  151. package/core/dist/runtime-v2/types/ledger-store.d.ts +101 -0
  152. package/core/dist/runtime-v2/types/ledger-store.d.ts.map +1 -0
  153. package/core/dist/runtime-v2/types/ledger-store.js +15 -0
  154. package/core/dist/runtime-v2/types/ledger-store.js.map +1 -0
  155. package/core/dist/runtime-v2/types/pain-signal.d.ts +5 -3
  156. package/core/dist/runtime-v2/types/pain-signal.d.ts.map +1 -1
  157. package/core/dist/runtime-v2/types/pain-signal.js +23 -3
  158. package/core/dist/runtime-v2/types/pain-signal.js.map +1 -1
  159. package/core/package.json +3 -3
  160. package/dist/installer.d.ts.map +1 -1
  161. package/dist/installer.js +42 -5
  162. package/dist/installer.js.map +1 -1
  163. package/dist/mvp-config.d.ts +1 -1
  164. package/dist/mvp-config.d.ts.map +1 -1
  165. package/dist/mvp-config.js +4 -8
  166. package/dist/mvp-config.js.map +1 -1
  167. package/dist/utils/env.d.ts.map +1 -1
  168. package/dist/utils/env.js +10 -4
  169. package/dist/utils/env.js.map +1 -1
  170. package/package.json +1 -1
  171. package/pd-cli/dist/commands/__tests__/legacy-cleanup.test.js +11 -3
  172. package/pd-cli/dist/commands/__tests__/legacy-cleanup.test.js.map +1 -1
  173. package/pd-cli/dist/commands/build-trajectory-evidence.d.ts.map +1 -1
  174. package/pd-cli/dist/commands/build-trajectory-evidence.js +11 -5
  175. package/pd-cli/dist/commands/build-trajectory-evidence.js.map +1 -1
  176. package/pd-cli/dist/commands/candidate.d.ts.map +1 -1
  177. package/pd-cli/dist/commands/candidate.js +2 -1
  178. package/pd-cli/dist/commands/candidate.js.map +1 -1
  179. package/pd-cli/dist/commands/health.d.ts.map +1 -1
  180. package/pd-cli/dist/commands/health.js +2 -1
  181. package/pd-cli/dist/commands/health.js.map +1 -1
  182. package/pd-cli/dist/commands/runtime-activation.js.map +1 -1
  183. package/pd-cli/dist/commands/runtime-internalization-integrity.d.ts.map +1 -1
  184. package/pd-cli/dist/commands/runtime-internalization-integrity.js +3 -1
  185. package/pd-cli/dist/commands/runtime-internalization-integrity.js.map +1 -1
  186. package/pd-cli/dist/commands/runtime-internalization-run-once.d.ts.map +1 -1
  187. package/pd-cli/dist/commands/runtime-internalization-run-once.js +3 -61
  188. package/pd-cli/dist/commands/runtime-internalization-run-once.js.map +1 -1
  189. package/pd-cli/dist/commands/runtime-uat.d.ts.map +1 -1
  190. package/pd-cli/dist/commands/runtime-uat.js +4 -1
  191. package/pd-cli/dist/commands/runtime-uat.js.map +1 -1
  192. package/pd-cli/dist/legacy/session-history-import.js +7 -5
  193. package/pd-cli/dist/legacy/session-history-import.js.map +1 -1
  194. package/pd-cli/dist/services/__tests__/runtime-adapter-resolver.test.js +13 -2
  195. package/pd-cli/dist/services/__tests__/runtime-adapter-resolver.test.js.map +1 -1
  196. package/pd-cli/dist/services/pain-flood-simulation-runner.d.ts.map +1 -1
  197. package/pd-cli/dist/services/pain-flood-simulation-runner.js +6 -2
  198. package/pd-cli/dist/services/pain-flood-simulation-runner.js.map +1 -1
  199. package/pd-cli/dist/services/runtime-adapter-resolver.d.ts.map +1 -1
  200. package/pd-cli/dist/services/runtime-adapter-resolver.js +6 -4
  201. package/pd-cli/dist/services/runtime-adapter-resolver.js.map +1 -1
  202. package/plugin/dist/commands/capabilities.js +3 -2
  203. package/plugin/dist/commands/disable-impl.js +1 -1
  204. package/plugin/dist/commands/focus.js +10 -2
  205. package/plugin/dist/commands/rollback-impl.js +1 -1
  206. package/plugin/dist/commands/thinking-os.js +5 -1
  207. package/plugin/dist/core/correction-cue-learner.js +2 -0
  208. package/plugin/dist/core/event-log.js +17 -10
  209. package/plugin/dist/core/focus-history.js +1 -1
  210. package/plugin/dist/core/hygiene/tracker.js +3 -3
  211. package/plugin/dist/core/principle-compiler/compiler.js +2 -0
  212. package/plugin/dist/core/replay-engine.js +1 -1
  213. package/plugin/dist/core/rule-host.js +3 -1
  214. package/plugin/dist/core/schema/schema-definitions.js +3 -0
  215. package/plugin/dist/core/thinking-os-parser.js +13 -4
  216. package/plugin/dist/core/trajectory-types.d.ts +5 -0
  217. package/plugin/dist/core/trajectory.d.ts +1 -0
  218. package/plugin/dist/core/trajectory.js +29 -8
  219. package/plugin/dist/hooks/after-tool-call-helpers.d.ts +5 -0
  220. package/plugin/dist/hooks/after-tool-call-helpers.js +64 -0
  221. package/plugin/dist/hooks/llm.d.ts +8 -0
  222. package/plugin/dist/hooks/llm.js +30 -0
  223. package/plugin/dist/hooks/trajectory-collector.d.ts +20 -4
  224. package/plugin/dist/hooks/trajectory-collector.js +95 -156
  225. package/plugin/dist/hooks/trajectory-evidence.js +6 -2
  226. package/plugin/dist/index.js +7 -2
  227. package/plugin/dist/openclaw-sdk.d.ts +5 -1
  228. package/plugin/dist/service/evolution-worker.js +7 -3
  229. package/plugin/dist/service/internalization-auto-consumer-service.js +2 -1
  230. package/plugin/dist/service/runtime-summary-service.js +8 -1
  231. package/plugin/dist/service/workflow-watchdog.js +2 -1
  232. package/plugin/dist/utils/retry.js +7 -2
  233. package/plugin/dist/utils/session-key.js +4 -1
  234. package/core/dist/io.d.ts +0 -35
  235. package/core/dist/io.d.ts.map +0 -1
  236. package/core/dist/io.js +0 -95
  237. package/core/dist/io.js.map +0 -1
  238. package/core/dist/runtime-v2/__tests__/trainer-output-validator.test.d.ts +0 -2
  239. package/core/dist/runtime-v2/__tests__/trainer-output-validator.test.d.ts.map +0 -1
  240. package/core/dist/runtime-v2/__tests__/trainer-output-validator.test.js +0 -257
  241. package/core/dist/runtime-v2/__tests__/trainer-output-validator.test.js.map +0 -1
  242. package/core/dist/runtime-v2/__tests__/trainer-runner-vslice.test.d.ts +0 -2
  243. package/core/dist/runtime-v2/__tests__/trainer-runner-vslice.test.d.ts.map +0 -1
  244. package/core/dist/runtime-v2/__tests__/trainer-runner-vslice.test.js +0 -514
  245. package/core/dist/runtime-v2/__tests__/trainer-runner-vslice.test.js.map +0 -1
  246. package/core/dist/runtime-v2/internalization/__tests__/trainer-prompt-builder.test.d.ts +0 -2
  247. package/core/dist/runtime-v2/internalization/__tests__/trainer-prompt-builder.test.d.ts.map +0 -1
  248. package/core/dist/runtime-v2/internalization/__tests__/trainer-prompt-builder.test.js +0 -141
  249. package/core/dist/runtime-v2/internalization/__tests__/trainer-prompt-builder.test.js.map +0 -1
  250. package/core/dist/runtime-v2/internalization/trainer-output.d.ts +0 -122
  251. package/core/dist/runtime-v2/internalization/trainer-output.d.ts.map +0 -1
  252. package/core/dist/runtime-v2/internalization/trainer-output.js +0 -223
  253. package/core/dist/runtime-v2/internalization/trainer-output.js.map +0 -1
  254. package/core/dist/runtime-v2/internalization/trainer-prompt-builder.d.ts +0 -24
  255. package/core/dist/runtime-v2/internalization/trainer-prompt-builder.d.ts.map +0 -1
  256. package/core/dist/runtime-v2/internalization/trainer-prompt-builder.js +0 -57
  257. package/core/dist/runtime-v2/internalization/trainer-prompt-builder.js.map +0 -1
  258. package/core/dist/runtime-v2/internalization/trainer-runner.d.ts +0 -76
  259. package/core/dist/runtime-v2/internalization/trainer-runner.d.ts.map +0 -1
  260. package/core/dist/runtime-v2/internalization/trainer-runner.js +0 -540
  261. package/core/dist/runtime-v2/internalization/trainer-runner.js.map +0 -1
  262. package/plugin/dist/core/external-training-contract.d.ts +0 -276
  263. package/plugin/dist/core/external-training-contract.js +0 -269
@@ -10,7 +10,7 @@ import { describe, it, expect } from 'vitest';
10
10
  describe('Peer Runner Contracts', () => {
11
11
  // ── Type Guards ────────────────────────────────────────────────────────────
12
12
  describe('isPeerRunnerKind', () => {
13
- it('returns true for all 7 valid peer runner kinds', async () => {
13
+ it('returns true for all 6 valid peer runner kinds', async () => {
14
14
  const { isPeerRunnerKind } = await import('../internalization/peer-runner-contracts.js');
15
15
  const validKinds = [
16
16
  'dreamer',
@@ -18,7 +18,6 @@ describe('Peer Runner Contracts', () => {
18
18
  'scribe',
19
19
  'artificer',
20
20
  'evaluator',
21
- 'trainer',
22
21
  'rollout_reviewer',
23
22
  ];
24
23
  for (const kind of validKinds) {
@@ -33,13 +32,12 @@ describe('Peer Runner Contracts', () => {
33
32
  });
34
33
  });
35
34
  describe('isInternalizationChannel', () => {
36
- it('returns true for all 5 valid channels', async () => {
35
+ it('returns true for all 4 valid channels', async () => {
37
36
  const { isInternalizationChannel } = await import('../internalization/peer-runner-contracts.js');
38
37
  const validChannels = [
39
38
  'prompt',
40
39
  'skill',
41
40
  'code_tool_hook',
42
- 'model_training',
43
41
  'defer_archive',
44
42
  ];
45
43
  for (const channel of validChannels) {
@@ -54,9 +52,9 @@ describe('Peer Runner Contracts', () => {
54
52
  });
55
53
  });
56
54
  describe('isPIArtifactKind', () => {
57
- it('returns true for all 5 valid artifact kinds', async () => {
55
+ it('returns true for all 4 valid artifact kinds', async () => {
58
56
  const { isPIArtifactKind } = await import('../internalization/peer-runner-contracts.js');
59
- const validKinds = ['principle', 'rule', 'training_data', 'skill', 'patch'];
57
+ const validKinds = ['principle', 'rule', 'skill', 'patch'];
60
58
  for (const kind of validKinds) {
61
59
  expect(isPIArtifactKind(kind)).toBe(true);
62
60
  }
@@ -65,6 +63,7 @@ describe('Peer Runner Contracts', () => {
65
63
  const { isPIArtifactKind } = await import('../internalization/peer-runner-contracts.js');
66
64
  expect(isPIArtifactKind('invalid')).toBe(false);
67
65
  expect(isPIArtifactKind('artifact')).toBe(false);
66
+ expect(isPIArtifactKind('training_data')).toBe(false);
68
67
  });
69
68
  });
70
69
  describe('isTerminalTaskStatus', () => {
@@ -147,7 +146,7 @@ describe('Peer Runner Contracts', () => {
147
146
  // Verify it passes type guard
148
147
  expect(isValidPITaskRecord(record)).toBe(true);
149
148
  });
150
- it('creates record for all 7 peer runner kinds', async () => {
149
+ it('creates record for all 6 peer runner kinds', async () => {
151
150
  const { createMinimalPITaskRecord, isPeerRunnerKind } = await import('../internalization/peer-runner-contracts.js');
152
151
  const kinds = [
153
152
  'dreamer',
@@ -155,7 +154,6 @@ describe('Peer Runner Contracts', () => {
155
154
  'scribe',
156
155
  'artificer',
157
156
  'evaluator',
158
- 'trainer',
159
157
  'rollout_reviewer',
160
158
  ];
161
159
  for (const kind of kinds) {
@@ -167,34 +165,33 @@ describe('Peer Runner Contracts', () => {
167
165
  });
168
166
  // ── Constants ────────────────────────────────────────────────────────────
169
167
  describe('constants', () => {
170
- it('PEER_RUNNER_KINDS has 7 elements', async () => {
168
+ it('PEER_RUNNER_KINDS has 6 elements', async () => {
171
169
  const { PEER_RUNNER_KINDS } = await import('../internalization/peer-runner-contracts.js');
172
- expect(PEER_RUNNER_KINDS).toHaveLength(7);
170
+ expect(PEER_RUNNER_KINDS).toHaveLength(6);
173
171
  });
174
- it('INTERNALIZATION_CHANNELS has 5 elements', async () => {
172
+ it('INTERNALIZATION_CHANNELS has 4 elements', async () => {
175
173
  const { INTERNALIZATION_CHANNELS } = await import('../internalization/peer-runner-contracts.js');
176
- expect(INTERNALIZATION_CHANNELS).toHaveLength(5);
174
+ expect(INTERNALIZATION_CHANNELS).toHaveLength(4);
177
175
  });
178
- it('PI_ARTIFACT_KINDS has 5 elements', async () => {
176
+ it('PI_ARTIFACT_KINDS has 4 elements', async () => {
179
177
  const { PI_ARTIFACT_KINDS } = await import('../internalization/peer-runner-contracts.js');
180
- expect(PI_ARTIFACT_KINDS).toHaveLength(5);
178
+ expect(PI_ARTIFACT_KINDS).toHaveLength(4);
181
179
  });
182
180
  });
183
181
  });
184
182
  describe('Job Graph', () => {
185
183
  // ── validateEdge ──────────────────────────────────────────────────────────
186
184
  describe('validateEdge', () => {
187
- it('returns true for all non-trainer ALLOWED_EDGES (channel-free edges)', async () => {
185
+ it('returns true for all ALLOWED_EDGES (channel-free edges)', async () => {
188
186
  const { validateEdge } = await import('../internalization/internalization-job-graph.js');
189
- const nonTrainerEdges = [
187
+ const edges = [
190
188
  ['dreamer', 'philosopher'],
191
189
  ['philosopher', 'scribe'],
192
190
  ['scribe', 'artificer'],
193
191
  ['artificer', 'evaluator'],
194
192
  ['evaluator', 'rollout_reviewer'],
195
- // Note: rollout_reviewer→trainer requires model_training channel (tested separately)
196
193
  ];
197
- for (const [from, to] of nonTrainerEdges) {
194
+ for (const [from, to] of edges) {
198
195
  expect(validateEdge(from, to)).toBe(true);
199
196
  }
200
197
  });
@@ -215,26 +212,14 @@ describe('Job Graph', () => {
215
212
  expect(validateEdge('dreamer', 'artificer')).toBe(false);
216
213
  expect(validateEdge('philosopher', 'evaluator')).toBe(false);
217
214
  });
218
- it('requires model_training channel for rollout_reviewer → trainer transition', async () => {
219
- const { validateEdge, MODEL_TRAINING_CHANNEL } = await import('../internalization/internalization-job-graph.js');
220
- // Without channel, trainer is not reachable from any runner
221
- expect(validateEdge('rollout_reviewer', 'trainer')).toBe(false);
222
- // Only rollout_reviewer + model_training channel reaches trainer
223
- expect(validateEdge('rollout_reviewer', 'trainer', MODEL_TRAINING_CHANNEL)).toBe(true);
224
- // Other runners with model_training channel CANNOT reach trainer in v1
225
- expect(validateEdge('dreamer', 'trainer', MODEL_TRAINING_CHANNEL)).toBe(false);
226
- expect(validateEdge('philosopher', 'trainer', MODEL_TRAINING_CHANNEL)).toBe(false);
227
- expect(validateEdge('scribe', 'trainer', MODEL_TRAINING_CHANNEL)).toBe(false);
228
- expect(validateEdge('artificer', 'trainer', MODEL_TRAINING_CHANNEL)).toBe(false);
229
- expect(validateEdge('evaluator', 'trainer', MODEL_TRAINING_CHANNEL)).toBe(false);
230
- });
231
- it('rejects trainer with non-model_training channel', async () => {
215
+ it('returns false for rollout_reviewer → any peer runner (terminal)', async () => {
232
216
  const { validateEdge } = await import('../internalization/internalization-job-graph.js');
233
- // rollout_reviewer + non-model_training channels cannot reach trainer
234
- expect(validateEdge('rollout_reviewer', 'trainer', 'prompt')).toBe(false);
235
- expect(validateEdge('rollout_reviewer', 'trainer', 'skill')).toBe(false);
236
- expect(validateEdge('rollout_reviewer', 'trainer', 'defer_archive')).toBe(false);
237
- expect(validateEdge('rollout_reviewer', 'trainer', 'code_tool_hook')).toBe(false);
217
+ expect(validateEdge('rollout_reviewer', 'dreamer')).toBe(false);
218
+ expect(validateEdge('rollout_reviewer', 'philosopher')).toBe(false);
219
+ expect(validateEdge('rollout_reviewer', 'scribe')).toBe(false);
220
+ expect(validateEdge('rollout_reviewer', 'artificer')).toBe(false);
221
+ expect(validateEdge('rollout_reviewer', 'evaluator')).toBe(false);
222
+ expect(validateEdge('rollout_reviewer', 'rollout_reviewer')).toBe(false);
238
223
  });
239
224
  });
240
225
  // ── isAcyclic ────────────────────────────────────────────────────────────
@@ -252,15 +237,14 @@ describe('Job Graph', () => {
252
237
  ];
253
238
  expect(isAcyclic(edges)).toBe(true);
254
239
  });
255
- it('returns true for valid DAG (with fan-out to trainer)', async () => {
240
+ it('returns true for valid DAG (linear internalization chain)', async () => {
256
241
  const { isAcyclic } = await import('../internalization/internalization-job-graph.js');
257
242
  const edges = [
258
243
  ['dreamer', 'philosopher'],
259
244
  ['philosopher', 'scribe'],
260
245
  ['scribe', 'artificer'],
261
246
  ['artificer', 'evaluator'],
262
- ['dreamer', 'trainer'],
263
- ['scribe', 'trainer'],
247
+ ['evaluator', 'rollout_reviewer'],
264
248
  ];
265
249
  expect(isAcyclic(edges)).toBe(true);
266
250
  });
@@ -301,45 +285,27 @@ describe('Job Graph', () => {
301
285
  it('returns correct successors for dreamer', async () => {
302
286
  const { getAllowedSuccessors } = await import('../internalization/internalization-job-graph.js');
303
287
  const successors = getAllowedSuccessors('dreamer');
304
- expect(successors).toContain('philosopher');
305
- // trainer is only reached after rollout_reviewer in v1 (Policy B)
306
- expect(successors).not.toContain('trainer');
307
- expect(successors).not.toContain('scribe');
308
- expect(successors).not.toContain('artificer');
309
- });
310
- it('returns only trainer for trainer (no self-loop)', async () => {
311
- const { getAllowedSuccessors } = await import('../internalization/internalization-job-graph.js');
312
- const successors = getAllowedSuccessors('trainer');
313
- expect(successors).not.toContain('trainer');
288
+ expect(successors).toEqual(['philosopher']);
314
289
  });
315
290
  it('returns correct successors for scribe (linear chain only)', async () => {
316
291
  const { getAllowedSuccessors } = await import('../internalization/internalization-job-graph.js');
317
292
  const successors = getAllowedSuccessors('scribe');
318
- expect(successors).toContain('artificer');
319
- // trainer only via rollout_reviewer in v1
320
- expect(successors).not.toContain('trainer');
321
- expect(successors).not.toContain('philosopher');
322
- expect(successors).not.toContain('dreamer');
323
- });
324
- it('returns correct successors for evaluator (rollout_reviewer only, no trainer shortcut)', async () => {
325
- const { getAllowedSuccessors, TRAINER_KIND } = await import('../internalization/internalization-job-graph.js');
293
+ expect(successors).toEqual(['artificer']);
294
+ });
295
+ it('returns correct successors for evaluator', async () => {
296
+ const { getAllowedSuccessors } = await import('../internalization/internalization-job-graph.js');
326
297
  const successors = getAllowedSuccessors('evaluator');
327
- expect(successors).toContain('rollout_reviewer');
328
- // v1 policy B: trainer only via rollout_reviewer, not as shortcut from evaluator
329
- expect(successors).not.toContain(TRAINER_KIND);
298
+ expect(successors).toEqual(['rollout_reviewer']);
330
299
  });
331
- it('returns correct successors for artificer (evaluator only, no trainer shortcut)', async () => {
332
- const { getAllowedSuccessors, TRAINER_KIND } = await import('../internalization/internalization-job-graph.js');
300
+ it('returns correct successors for artificer', async () => {
301
+ const { getAllowedSuccessors } = await import('../internalization/internalization-job-graph.js');
333
302
  const successors = getAllowedSuccessors('artificer');
334
- expect(successors).toContain('evaluator');
335
- expect(successors).not.toContain(TRAINER_KIND);
336
- expect(successors).not.toContain('scribe');
303
+ expect(successors).toEqual(['evaluator']);
337
304
  });
338
- it('returns [trainer] for rollout_reviewer (terminal v1 successor via model_training)', async () => {
339
- const { getAllowedSuccessors, TRAINER_KIND } = await import('../internalization/internalization-job-graph.js');
305
+ it('returns empty array for rollout_reviewer (terminal peer runner)', async () => {
306
+ const { getAllowedSuccessors } = await import('../internalization/internalization-job-graph.js');
340
307
  const successors = getAllowedSuccessors('rollout_reviewer');
341
- expect(successors).toContain(TRAINER_KIND);
342
- expect(successors).not.toContain('rollout_reviewer');
308
+ expect(successors).toEqual([]);
343
309
  });
344
310
  });
345
311
  // ── getAllowedPredecessors ───────────────────────────────────────────────
@@ -369,20 +335,20 @@ describe('Job Graph', () => {
369
335
  const preds = getAllowedPredecessors('rollout_reviewer');
370
336
  expect(preds).toEqual(['evaluator']);
371
337
  });
372
- it('returns [rollout_reviewer] for trainer (v1 terminal predecessor)', async () => {
338
+ it('returns [dreamer] for philosopher and excludes scribe', async () => {
373
339
  const { getAllowedPredecessors } = await import('../internalization/internalization-job-graph.js');
374
- const preds = getAllowedPredecessors('trainer');
375
- // v1 policy B: trainer is terminal successor of rollout_reviewer only
376
- expect(preds).toEqual(['rollout_reviewer']);
340
+ const preds = getAllowedPredecessors('philosopher');
341
+ expect(preds).toEqual(['dreamer']);
342
+ expect(preds).not.toContain('scribe');
377
343
  });
378
344
  });
379
345
  // ── ALLOWED_EDGES constant ───────────────────────────────────────────────
380
346
  describe('ALLOWED_EDGES', () => {
381
- it('has exactly 6 edges (v1 linear chain + rollout_reviewer→trainer)', async () => {
347
+ it('has exactly 5 edges (v1 linear chain)', async () => {
382
348
  const { ALLOWED_EDGES } = await import('../internalization/internalization-job-graph.js');
383
- expect(ALLOWED_EDGES).toHaveLength(6);
349
+ expect(ALLOWED_EDGES).toHaveLength(5);
384
350
  });
385
- it('covers dreamer→philosopher→scribe→artificer→evaluator→rollout_reviewer→trainer chain', async () => {
351
+ it('covers dreamer→philosopher→scribe→artificer→evaluator→rollout_reviewer chain', async () => {
386
352
  const { ALLOWED_EDGES } = await import('../internalization/internalization-job-graph.js');
387
353
  const edgeSet = new Set(ALLOWED_EDGES.map(([f, t]) => `${f}→${t}`));
388
354
  expect(edgeSet.has('dreamer→philosopher')).toBe(true);
@@ -390,13 +356,12 @@ describe('Job Graph', () => {
390
356
  expect(edgeSet.has('scribe→artificer')).toBe(true);
391
357
  expect(edgeSet.has('artificer→evaluator')).toBe(true);
392
358
  expect(edgeSet.has('evaluator→rollout_reviewer')).toBe(true);
393
- expect(edgeSet.has('rollout_reviewer→trainer')).toBe(true);
394
359
  });
395
360
  it('is readonly (cannot be modified)', async () => {
396
361
  const { ALLOWED_EDGES } = await import('../internalization/internalization-job-graph.js');
397
362
  // ReadonlyArray<...> means the outer array reference is immutable at TypeScript level
398
363
  expect(Array.isArray(ALLOWED_EDGES)).toBe(true);
399
- expect(ALLOWED_EDGES).toHaveLength(6);
364
+ expect(ALLOWED_EDGES).toHaveLength(5);
400
365
  // Verify each edge is a readonly tuple
401
366
  for (const edge of ALLOWED_EDGES) {
402
367
  expect(Array.isArray(edge)).toBe(true);
@@ -405,7 +370,7 @@ describe('Job Graph', () => {
405
370
  // Verify edges are in expected order
406
371
  const edgeStrings = ALLOWED_EDGES.map(([f, t]) => `${f}→${t}`);
407
372
  expect(edgeStrings[0]).toBe('dreamer→philosopher');
408
- expect(edgeStrings[5]).toBe('rollout_reviewer→trainer');
373
+ expect(edgeStrings[4]).toBe('evaluator→rollout_reviewer');
409
374
  });
410
375
  });
411
376
  });
@@ -1 +1 @@
1
- {"version":3,"file":"internalization-peer-runner-contracts.test.js","sourceRoot":"","sources":["../../../src/runtime-v2/__tests__/internalization-peer-runner-contracts.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"internalization-peer-runner-contracts.test.js","sourceRoot":"","sources":["../../../src/runtime-v2/__tests__/internalization-peer-runner-contracts.test.ts"],"names":[],"mappings":"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"}
@@ -331,23 +331,7 @@ describe('createNextTaskProposal', () => {
331
331
  // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
332
332
  expect(result.taskKind).toBe('rollout_reviewer');
333
333
  });
334
- it('rollout_reviewer succeeded + model_training channel trainer', async () => {
335
- const { createNextTaskProposal } = await import('../internalization/internalization-state-machine.js');
336
- const task = makePITask({
337
- taskId: 'rr-1',
338
- taskKind: 'rollout_reviewer',
339
- status: 'succeeded',
340
- channel: 'model_training',
341
- outputArtifactRefs: [],
342
- });
343
- const result = createNextTaskProposal(task, []);
344
- // rollout_reviewer has no direct ALLOWED_EDGES successors.
345
- // With model_training channel it can reach trainer (via getAllowedSuccessors filter).
346
- expect(result).not.toBeNull();
347
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
348
- expect(result.taskKind).toBe('trainer');
349
- });
350
- it('rollout_reviewer succeeded + prompt channel → null (channel constraint blocks trainer)', async () => {
334
+ it('rollout_reviewer succeeded null (terminal peer runner)', async () => {
351
335
  const { createNextTaskProposal } = await import('../internalization/internalization-state-machine.js');
352
336
  const task = makePITask({
353
337
  taskId: 'rr-1',
@@ -357,26 +341,23 @@ describe('createNextTaskProposal', () => {
357
341
  outputArtifactRefs: [],
358
342
  });
359
343
  const result = createNextTaskProposal(task, []);
360
- // rollout_reviewer → trainer requires model_training channel.
361
- // With prompt channel, no valid successor exists → null.
362
344
  expect(result).toBeNull();
363
345
  });
364
- it('dreamer succeeded → philosopher (first in ALLOWED_EDGES, channel passed through)', async () => {
346
+ it('dreamer succeeded → philosopher (channel passed through)', async () => {
365
347
  const { createNextTaskProposal } = await import('../internalization/internalization-state-machine.js');
366
348
  const task = makePITask({
367
349
  taskId: 'dreamer-1',
368
350
  taskKind: 'dreamer',
369
351
  status: 'succeeded',
370
- channel: 'model_training',
371
- outputArtifactRefs: [{ artifactType: 'training_data', ref: 'td-1' }],
352
+ channel: 'code_tool_hook',
353
+ outputArtifactRefs: [{ artifactType: 'principle', ref: 'art-1' }],
372
354
  });
373
355
  const result = createNextTaskProposal(task, []);
374
356
  expect(result).not.toBeNull();
375
357
  // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
376
358
  const r = result;
377
- // getAllowedSuccessors returns ['philosopher'] for dreamer (v1 Policy B: trainer only via rollout_reviewer)
378
359
  expect(r.taskKind).toBe('philosopher');
379
- expect(r.channel).toBe('model_training');
360
+ expect(r.channel).toBe('code_tool_hook');
380
361
  });
381
362
  it('pending task → null (non-succeeded status must not generate proposal)', async () => {
382
363
  const { createNextTaskProposal } = await import('../internalization/internalization-state-machine.js');
@@ -400,134 +381,67 @@ describe('createNextTaskProposal', () => {
400
381
  const result = createNextTaskProposal(task, []);
401
382
  expect(result).toBeNull();
402
383
  });
403
- // ── Policy B: model_training still follows full chain — trainer only after rollout_reviewer ─
404
- it('philosopher + model_training → scribe (not trainer)', async () => {
384
+ it('channel does not alter allowed successors', async () => {
405
385
  const { createNextTaskProposal } = await import('../internalization/internalization-state-machine.js');
406
- const task = makePITask({
407
- taskId: 'phil-1',
408
- taskKind: 'philosopher',
409
- status: 'succeeded',
410
- channel: 'model_training',
411
- outputArtifactRefs: [{ artifactType: 'rule', ref: 'art-2' }],
412
- });
413
- const result = createNextTaskProposal(task, []);
414
- expect(result).not.toBeNull();
415
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
416
- const r = result;
417
- expect(r.taskKind).toBe('scribe');
418
- expect(r.taskKind).not.toBe('trainer');
419
- });
420
- it('scribe + model_training → artificer (not trainer)', async () => {
421
- const { createNextTaskProposal } = await import('../internalization/internalization-state-machine.js');
422
- const task = makePITask({
423
- taskId: 'scribe-1',
424
- taskKind: 'scribe',
425
- status: 'succeeded',
426
- channel: 'model_training',
427
- outputArtifactRefs: [],
428
- });
429
- const result = createNextTaskProposal(task, []);
430
- expect(result).not.toBeNull();
431
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
432
- const r = result;
433
- expect(r.taskKind).toBe('artificer');
434
- expect(r.taskKind).not.toBe('trainer');
435
- });
436
- it('artificer + model_training → evaluator (not trainer)', async () => {
437
- const { createNextTaskProposal } = await import('../internalization/internalization-state-machine.js');
438
- const task = makePITask({
439
- taskId: 'art-1',
440
- taskKind: 'artificer',
441
- status: 'succeeded',
442
- channel: 'model_training',
443
- outputArtifactRefs: [],
444
- });
445
- const result = createNextTaskProposal(task, []);
446
- expect(result).not.toBeNull();
447
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
448
- const r = result;
449
- expect(r.taskKind).toBe('evaluator');
450
- expect(r.taskKind).not.toBe('trainer');
451
- });
452
- it('evaluator + model_training → rollout_reviewer (not trainer)', async () => {
453
- const { createNextTaskProposal } = await import('../internalization/internalization-state-machine.js');
454
- const task = makePITask({
455
- taskId: 'eval-1',
456
- taskKind: 'evaluator',
457
- status: 'succeeded',
458
- channel: 'model_training',
459
- outputArtifactRefs: [],
460
- });
461
- const result = createNextTaskProposal(task, []);
462
- expect(result).not.toBeNull();
463
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
464
- const r = result;
465
- expect(r.taskKind).toBe('rollout_reviewer');
466
- expect(r.taskKind).not.toBe('trainer');
467
- });
468
- it('dreamer + model_training → philosopher (not trainer)', async () => {
469
- const { createNextTaskProposal } = await import('../internalization/internalization-state-machine.js');
470
- const task = makePITask({
471
- taskId: 'dreamer-1',
472
- taskKind: 'dreamer',
473
- status: 'succeeded',
474
- channel: 'model_training',
475
- outputArtifactRefs: [{ artifactType: 'training_data', ref: 'td-1' }],
476
- });
477
- const result = createNextTaskProposal(task, []);
478
- expect(result).not.toBeNull();
479
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
480
- const r = result;
481
- expect(r.taskKind).toBe('philosopher');
482
- expect(r.taskKind).not.toBe('trainer');
483
- expect(r.channel).toBe('model_training');
484
- });
485
- it('rollout_reviewer + model_training → trainer (terminal v1 successor)', async () => {
386
+ for (const channel of ['prompt', 'skill', 'code_tool_hook', 'defer_archive']) {
387
+ const task = makePITask({
388
+ taskId: 'dreamer-1',
389
+ taskKind: 'dreamer',
390
+ status: 'succeeded',
391
+ channel,
392
+ outputArtifactRefs: [{ artifactType: 'principle', ref: 'art-1' }],
393
+ });
394
+ const result = createNextTaskProposal(task, []);
395
+ expect(result).not.toBeNull();
396
+ if (!result)
397
+ throw new Error('expected non-null result');
398
+ expect(result.taskKind).toBe('philosopher');
399
+ expect(result.channel).toBe(channel);
400
+ }
401
+ });
402
+ it('rollout_reviewer + skill → null (terminal peer runner)', async () => {
486
403
  const { createNextTaskProposal } = await import('../internalization/internalization-state-machine.js');
487
404
  const task = makePITask({
488
405
  taskId: 'rr-1',
489
406
  taskKind: 'rollout_reviewer',
490
407
  status: 'succeeded',
491
- channel: 'model_training',
408
+ channel: 'skill',
492
409
  outputArtifactRefs: [],
493
410
  });
494
411
  const result = createNextTaskProposal(task, []);
495
- expect(result).not.toBeNull();
496
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
497
- expect(result.taskKind).toBe('trainer');
412
+ expect(result).toBeNull();
498
413
  });
499
- it('rollout_reviewer + skill → null (non-model_training channel, no valid successor)', async () => {
414
+ it('rollout_reviewer + code_tool_hook → null (terminal peer runner)', async () => {
500
415
  const { createNextTaskProposal } = await import('../internalization/internalization-state-machine.js');
501
416
  const task = makePITask({
502
417
  taskId: 'rr-1',
503
418
  taskKind: 'rollout_reviewer',
504
419
  status: 'succeeded',
505
- channel: 'skill',
420
+ channel: 'code_tool_hook',
506
421
  outputArtifactRefs: [],
507
422
  });
508
423
  const result = createNextTaskProposal(task, []);
509
- // rollout_reviewer has no non-model_training successors; skill channel blocks trainer
510
424
  expect(result).toBeNull();
511
425
  });
512
- it('rollout_reviewer + code_tool_hook → null (non-model_training channel, no valid successor)', async () => {
426
+ it('rollout_reviewer + prompt → null (terminal peer runner)', async () => {
513
427
  const { createNextTaskProposal } = await import('../internalization/internalization-state-machine.js');
514
428
  const task = makePITask({
515
429
  taskId: 'rr-1',
516
430
  taskKind: 'rollout_reviewer',
517
431
  status: 'succeeded',
518
- channel: 'code_tool_hook',
432
+ channel: 'prompt',
519
433
  outputArtifactRefs: [],
520
434
  });
521
435
  const result = createNextTaskProposal(task, []);
522
436
  expect(result).toBeNull();
523
437
  });
524
- it('rollout_reviewer + prompt → null (explicit)', async () => {
438
+ it('rollout_reviewer + defer_archive → null (terminal peer runner)', async () => {
525
439
  const { createNextTaskProposal } = await import('../internalization/internalization-state-machine.js');
526
440
  const task = makePITask({
527
441
  taskId: 'rr-1',
528
442
  taskKind: 'rollout_reviewer',
529
443
  status: 'succeeded',
530
- channel: 'prompt',
444
+ channel: 'defer_archive',
531
445
  outputArtifactRefs: [],
532
446
  });
533
447
  const result = createNextTaskProposal(task, []);
@@ -642,19 +556,6 @@ describe('isArtifactRejected', () => {
642
556
  };
643
557
  expect(isArtifactRejected(artifact)).toBe(false);
644
558
  });
645
- // ── Policy B: model_training still follows full chain — trainer only after rollout_reviewer ─
646
- it('rollout_reviewer + defer_archive → null (non-model_training channel)', async () => {
647
- const { createNextTaskProposal } = await import('../internalization/internalization-state-machine.js');
648
- const task = makePITask({
649
- taskId: 'rr-1',
650
- taskKind: 'rollout_reviewer',
651
- status: 'succeeded',
652
- channel: 'defer_archive',
653
- outputArtifactRefs: [],
654
- });
655
- const result = createNextTaskProposal(task, []);
656
- expect(result).toBeNull();
657
- });
658
559
  });
659
560
  // ── Architecture Guards ───────────────────────────────────────────────────────
660
561
  describe('Architecture Guards: no infrastructure imports', () => {