create-principles-disciple 1.121.8 → 1.121.10

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 (462) hide show
  1. package/README.md +13 -1
  2. package/console/dist/server/config/pd-config-store.d.ts +1 -3
  3. package/console/dist/server/config/pd-config-store.js +4 -4
  4. package/console/dist/server/feedback/channels.d.ts +2 -8
  5. package/console/dist/server/feedback/channels.js +0 -11
  6. package/console/dist/server/index.js +34 -5
  7. package/console/dist/server/models/ActivationsConsoleModel.d.ts +28 -1
  8. package/console/dist/server/models/ActivationsConsoleModel.js +72 -30
  9. package/console/dist/server/models/GovernanceExperienceCollector.d.ts +28 -0
  10. package/console/dist/server/models/GovernanceExperienceCollector.js +305 -0
  11. package/console/dist/server/models/GovernanceProjectionCollector.d.ts +60 -2
  12. package/console/dist/server/models/GovernanceProjectionCollector.js +323 -285
  13. package/console/dist/server/models/PrincipleClassifier.d.ts +1 -1
  14. package/console/dist/server/models/PrincipleClassifier.js +7 -4
  15. package/console/dist/server/models/PrinciplesConsoleModel.d.ts +2 -1
  16. package/console/dist/server/models/ReceiptsConsoleModel.d.ts +5 -0
  17. package/console/dist/server/models/ReceiptsConsoleModel.js +140 -13
  18. package/console/dist/server/routes/activations.js +1 -1
  19. package/console/dist/server/routes/failed-tasks.js +28 -11
  20. package/console/dist/server/routes/governance.d.ts +26 -0
  21. package/console/dist/server/routes/governance.js +51 -0
  22. package/console/dist/server/routes/owner-identity.d.ts +31 -0
  23. package/console/dist/server/routes/owner-identity.js +76 -0
  24. package/console/dist/server/routes/update-history.d.ts +5 -0
  25. package/console/dist/server/routes/update-history.js +50 -4
  26. package/console/dist/server/routes/update.js +263 -41
  27. package/console/dist/server/utils/update-links.d.ts +38 -0
  28. package/console/dist/server/utils/update-links.js +71 -0
  29. package/console/dist/shared/feedback-channel-ids.d.ts +13 -0
  30. package/console/dist/shared/feedback-channel-ids.js +12 -0
  31. package/console/dist/shared/feedback-contract.d.ts +46 -0
  32. package/console/dist/shared/feedback-contract.js +45 -0
  33. package/console/dist/ui/App.js +1 -1
  34. package/console/dist/ui/api.d.ts +22 -3
  35. package/console/dist/ui/api.js +63 -3
  36. package/console/dist/ui/components/receipts/ReceiptCoverageDisclosure.d.ts +6 -0
  37. package/console/dist/ui/components/receipts/ReceiptCoverageDisclosure.js +66 -0
  38. package/console/dist/ui/i18n/en.json +198 -2
  39. package/console/dist/ui/i18n/zh-CN.json +196 -0
  40. package/console/dist/ui/pages/activation/ActivationPage.js +14 -2
  41. package/console/dist/ui/pages/failed-tasks/FailedTasksPage.js +25 -5
  42. package/console/dist/ui/pages/focus/FocusPage.d.ts +28 -1
  43. package/console/dist/ui/pages/focus/FocusPage.js +128 -15
  44. package/console/dist/ui/pages/principles/PrincipleDetailPage.d.ts +30 -0
  45. package/console/dist/ui/pages/principles/PrincipleDetailPage.js +49 -6
  46. package/console/dist/ui/pages/settings/SettingsPage.js +67 -2
  47. package/console/dist/ui/pages/settings/UpdatePage.js +7 -7
  48. package/console/dist/ui/utils/enum-labels.js +0 -1
  49. package/console/dist/ui/utils/validators.d.ts +53 -21
  50. package/console/dist/ui/utils/validators.js +248 -21
  51. package/console/dist/web/assets/app.css +6 -0
  52. package/console/dist/web/assets/app.js +2721 -1664
  53. package/console/package.json +3 -1
  54. package/core/dist/host/host-adapter.d.ts +1 -1
  55. package/core/dist/host/host-adapter.d.ts.map +1 -1
  56. package/core/dist/host/host-adapter.js +1 -0
  57. package/core/dist/host/host-adapter.js.map +1 -1
  58. package/core/dist/runtime-v2/__tests__/architecture-regression.test.js +12 -2
  59. package/core/dist/runtime-v2/__tests__/architecture-regression.test.js.map +1 -1
  60. package/core/dist/runtime-v2/__tests__/attack-e2e-pipeline-smoke.test.js +1 -1
  61. package/core/dist/runtime-v2/__tests__/attack-e2e-pipeline-smoke.test.js.map +1 -1
  62. package/core/dist/runtime-v2/__tests__/governance-experience.test.d.ts +2 -0
  63. package/core/dist/runtime-v2/__tests__/governance-experience.test.d.ts.map +1 -0
  64. package/core/dist/runtime-v2/__tests__/governance-experience.test.js +300 -0
  65. package/core/dist/runtime-v2/__tests__/governance-experience.test.js.map +1 -0
  66. package/core/dist/runtime-v2/__tests__/owner-identity.test.d.ts +2 -0
  67. package/core/dist/runtime-v2/__tests__/owner-identity.test.d.ts.map +1 -0
  68. package/core/dist/runtime-v2/__tests__/owner-identity.test.js +147 -0
  69. package/core/dist/runtime-v2/__tests__/owner-identity.test.js.map +1 -0
  70. package/core/dist/runtime-v2/__tests__/product-telemetry-contract.test.d.ts +18 -0
  71. package/core/dist/runtime-v2/__tests__/product-telemetry-contract.test.d.ts.map +1 -0
  72. package/core/dist/runtime-v2/__tests__/product-telemetry-contract.test.js +303 -0
  73. package/core/dist/runtime-v2/__tests__/product-telemetry-contract.test.js.map +1 -0
  74. package/core/dist/runtime-v2/__tests__/recovery-actions-log.test.js +40 -0
  75. package/core/dist/runtime-v2/__tests__/recovery-actions-log.test.js.map +1 -1
  76. package/core/dist/runtime-v2/__tests__/status-contract.test.d.ts +2 -0
  77. package/core/dist/runtime-v2/__tests__/status-contract.test.d.ts.map +1 -0
  78. package/core/dist/runtime-v2/__tests__/status-contract.test.js +107 -0
  79. package/core/dist/runtime-v2/__tests__/status-contract.test.js.map +1 -0
  80. package/core/dist/runtime-v2/activation/__tests__/promotion-evidence-snapshot.test.d.ts +2 -0
  81. package/core/dist/runtime-v2/activation/__tests__/promotion-evidence-snapshot.test.d.ts.map +1 -0
  82. package/core/dist/runtime-v2/activation/__tests__/promotion-evidence-snapshot.test.js +104 -0
  83. package/core/dist/runtime-v2/activation/__tests__/promotion-evidence-snapshot.test.js.map +1 -0
  84. package/core/dist/runtime-v2/activation/__tests__/promotion-readiness-evaluator.test.js +19 -0
  85. package/core/dist/runtime-v2/activation/__tests__/promotion-readiness-evaluator.test.js.map +1 -1
  86. package/core/dist/runtime-v2/activation/__tests__/rulecode-owner-decision-service.test.js +20 -0
  87. package/core/dist/runtime-v2/activation/__tests__/rulecode-owner-decision-service.test.js.map +1 -1
  88. package/core/dist/runtime-v2/activation/__tests__/sqlite-activation-safety-store.test.js +40 -0
  89. package/core/dist/runtime-v2/activation/__tests__/sqlite-activation-safety-store.test.js.map +1 -1
  90. package/core/dist/runtime-v2/activation/index.d.ts +2 -0
  91. package/core/dist/runtime-v2/activation/index.d.ts.map +1 -1
  92. package/core/dist/runtime-v2/activation/index.js +1 -0
  93. package/core/dist/runtime-v2/activation/index.js.map +1 -1
  94. package/core/dist/runtime-v2/activation/promotion-evidence-snapshot.d.ts +30 -0
  95. package/core/dist/runtime-v2/activation/promotion-evidence-snapshot.d.ts.map +1 -0
  96. package/core/dist/runtime-v2/activation/promotion-evidence-snapshot.js +87 -0
  97. package/core/dist/runtime-v2/activation/promotion-evidence-snapshot.js.map +1 -0
  98. package/core/dist/runtime-v2/activation/promotion-readiness-evaluator.d.ts.map +1 -1
  99. package/core/dist/runtime-v2/activation/promotion-readiness-evaluator.js +3 -0
  100. package/core/dist/runtime-v2/activation/promotion-readiness-evaluator.js.map +1 -1
  101. package/core/dist/runtime-v2/activation/promotion-readiness-reader.d.ts +1 -1
  102. package/core/dist/runtime-v2/activation/promotion-readiness-reader.d.ts.map +1 -1
  103. package/core/dist/runtime-v2/activation/promotion-readiness-reader.js +2 -2
  104. package/core/dist/runtime-v2/activation/promotion-readiness-reader.js.map +1 -1
  105. package/core/dist/runtime-v2/activation/rulecode-owner-decision-service.d.ts.map +1 -1
  106. package/core/dist/runtime-v2/activation/rulecode-owner-decision-service.js +18 -9
  107. package/core/dist/runtime-v2/activation/rulecode-owner-decision-service.js.map +1 -1
  108. package/core/dist/runtime-v2/adapter/__tests__/chaos-json-repair.test.js +1 -1
  109. package/core/dist/runtime-v2/adapter/__tests__/chaos-json-repair.test.js.map +1 -1
  110. package/core/dist/runtime-v2/adapter/__tests__/json-extractor.test.js +91 -1
  111. package/core/dist/runtime-v2/adapter/__tests__/json-extractor.test.js.map +1 -1
  112. package/core/dist/runtime-v2/adapter/__tests__/pi-ai-runtime-adapter.test.js +59 -12
  113. package/core/dist/runtime-v2/adapter/__tests__/pi-ai-runtime-adapter.test.js.map +1 -1
  114. package/core/dist/runtime-v2/adapter/__tests__/runtime-config-contract.test.js +10 -9
  115. package/core/dist/runtime-v2/adapter/__tests__/runtime-config-contract.test.js.map +1 -1
  116. package/core/dist/runtime-v2/adapter/__tests__/structured-output-repair.test.js +42 -1
  117. package/core/dist/runtime-v2/adapter/__tests__/structured-output-repair.test.js.map +1 -1
  118. package/core/dist/runtime-v2/adapter/json-extractor.d.ts +25 -0
  119. package/core/dist/runtime-v2/adapter/json-extractor.d.ts.map +1 -1
  120. package/core/dist/runtime-v2/adapter/json-extractor.js +126 -0
  121. package/core/dist/runtime-v2/adapter/json-extractor.js.map +1 -1
  122. package/core/dist/runtime-v2/adapter/l2-agent-loop-adapter.d.ts +9 -4
  123. package/core/dist/runtime-v2/adapter/l2-agent-loop-adapter.d.ts.map +1 -1
  124. package/core/dist/runtime-v2/adapter/l2-agent-loop-adapter.js +9 -4
  125. package/core/dist/runtime-v2/adapter/l2-agent-loop-adapter.js.map +1 -1
  126. package/core/dist/runtime-v2/adapter/output-repair-contract.d.ts +5 -1
  127. package/core/dist/runtime-v2/adapter/output-repair-contract.d.ts.map +1 -1
  128. package/core/dist/runtime-v2/adapter/output-repair-contract.js +4 -1
  129. package/core/dist/runtime-v2/adapter/output-repair-contract.js.map +1 -1
  130. package/core/dist/runtime-v2/adapter/pi-ai-catalog.d.ts +7 -0
  131. package/core/dist/runtime-v2/adapter/pi-ai-catalog.d.ts.map +1 -0
  132. package/core/dist/runtime-v2/adapter/pi-ai-catalog.js +19 -0
  133. package/core/dist/runtime-v2/adapter/pi-ai-catalog.js.map +1 -0
  134. package/core/dist/runtime-v2/adapter/pi-ai-runtime-adapter.d.ts +13 -15
  135. package/core/dist/runtime-v2/adapter/pi-ai-runtime-adapter.d.ts.map +1 -1
  136. package/core/dist/runtime-v2/adapter/pi-ai-runtime-adapter.js +104 -37
  137. package/core/dist/runtime-v2/adapter/pi-ai-runtime-adapter.js.map +1 -1
  138. package/core/dist/runtime-v2/adapter/structured-output-repair.d.ts +16 -1
  139. package/core/dist/runtime-v2/adapter/structured-output-repair.d.ts.map +1 -1
  140. package/core/dist/runtime-v2/adapter/structured-output-repair.js +38 -6
  141. package/core/dist/runtime-v2/adapter/structured-output-repair.js.map +1 -1
  142. package/core/dist/runtime-v2/adapter/tools/diagnostician-tool.d.ts +1 -1
  143. package/core/dist/runtime-v2/adapter/tools/diagnostician-tool.d.ts.map +1 -1
  144. package/core/dist/runtime-v2/config/__tests__/pd-config-agent-binding.test.js +8 -9
  145. package/core/dist/runtime-v2/config/__tests__/pd-config-agent-binding.test.js.map +1 -1
  146. package/core/dist/runtime-v2/config/__tests__/pd-config-contract.test.js +27 -3
  147. package/core/dist/runtime-v2/config/__tests__/pd-config-contract.test.js.map +1 -1
  148. package/core/dist/runtime-v2/config/__tests__/pd-config-principles.test.d.ts +11 -0
  149. package/core/dist/runtime-v2/config/__tests__/pd-config-principles.test.d.ts.map +1 -0
  150. package/core/dist/runtime-v2/config/__tests__/pd-config-principles.test.js +93 -0
  151. package/core/dist/runtime-v2/config/__tests__/pd-config-principles.test.js.map +1 -0
  152. package/core/dist/runtime-v2/config/__tests__/pd-config-workspace.test.js +41 -0
  153. package/core/dist/runtime-v2/config/__tests__/pd-config-workspace.test.js.map +1 -1
  154. package/core/dist/runtime-v2/config/index.d.ts +2 -2
  155. package/core/dist/runtime-v2/config/index.d.ts.map +1 -1
  156. package/core/dist/runtime-v2/config/index.js +2 -0
  157. package/core/dist/runtime-v2/config/index.js.map +1 -1
  158. package/core/dist/runtime-v2/config/pd-config-agent-binding.d.ts.map +1 -1
  159. package/core/dist/runtime-v2/config/pd-config-agent-binding.js +4 -13
  160. package/core/dist/runtime-v2/config/pd-config-agent-binding.js.map +1 -1
  161. package/core/dist/runtime-v2/config/pd-config-effective.d.ts.map +1 -1
  162. package/core/dist/runtime-v2/config/pd-config-effective.js +14 -7
  163. package/core/dist/runtime-v2/config/pd-config-effective.js.map +1 -1
  164. package/core/dist/runtime-v2/config/pd-config-feature-flags.d.ts.map +1 -1
  165. package/core/dist/runtime-v2/config/pd-config-feature-flags.js +5 -12
  166. package/core/dist/runtime-v2/config/pd-config-feature-flags.js.map +1 -1
  167. package/core/dist/runtime-v2/config/pd-config-types.d.ts +8 -0
  168. package/core/dist/runtime-v2/config/pd-config-types.d.ts.map +1 -1
  169. package/core/dist/runtime-v2/config/pd-config-types.js +2 -0
  170. package/core/dist/runtime-v2/config/pd-config-types.js.map +1 -1
  171. package/core/dist/runtime-v2/config/pd-config-validate.d.ts.map +1 -1
  172. package/core/dist/runtime-v2/config/pd-config-validate.js +48 -3
  173. package/core/dist/runtime-v2/config/pd-config-validate.js.map +1 -1
  174. package/core/dist/runtime-v2/core-principles/__tests__/core-axiom-block.test.js +36 -8
  175. package/core/dist/runtime-v2/core-principles/__tests__/core-axiom-block.test.js.map +1 -1
  176. package/core/dist/runtime-v2/core-principles/__tests__/core-principle-registry.test.js +36 -12
  177. package/core/dist/runtime-v2/core-principles/__tests__/core-principle-registry.test.js.map +1 -1
  178. package/core/dist/runtime-v2/core-principles/core-axiom-block.d.ts +22 -8
  179. package/core/dist/runtime-v2/core-principles/core-axiom-block.d.ts.map +1 -1
  180. package/core/dist/runtime-v2/core-principles/core-axiom-block.js +28 -13
  181. package/core/dist/runtime-v2/core-principles/core-axiom-block.js.map +1 -1
  182. package/core/dist/runtime-v2/core-principles/core-principle-registry.d.ts +29 -4
  183. package/core/dist/runtime-v2/core-principles/core-principle-registry.d.ts.map +1 -1
  184. package/core/dist/runtime-v2/core-principles/core-principle-registry.js +68 -33
  185. package/core/dist/runtime-v2/core-principles/core-principle-registry.js.map +1 -1
  186. package/core/dist/runtime-v2/core-principles/index.d.ts +3 -3
  187. package/core/dist/runtime-v2/core-principles/index.d.ts.map +1 -1
  188. package/core/dist/runtime-v2/core-principles/index.js +1 -1
  189. package/core/dist/runtime-v2/core-principles/index.js.map +1 -1
  190. package/core/dist/runtime-v2/evolution/evolution-types.d.ts +2 -1
  191. package/core/dist/runtime-v2/evolution/evolution-types.d.ts.map +1 -1
  192. package/core/dist/runtime-v2/evolution/evolution-types.js.map +1 -1
  193. package/core/dist/runtime-v2/feature-flags/__tests__/anonymous-product-telemetry-flag.test.d.ts +2 -0
  194. package/core/dist/runtime-v2/feature-flags/__tests__/anonymous-product-telemetry-flag.test.d.ts.map +1 -0
  195. package/core/dist/runtime-v2/feature-flags/__tests__/anonymous-product-telemetry-flag.test.js +48 -0
  196. package/core/dist/runtime-v2/feature-flags/__tests__/anonymous-product-telemetry-flag.test.js.map +1 -0
  197. package/core/dist/runtime-v2/feature-flags/__tests__/codex-conversation-ingestion-flag.test.d.ts +2 -0
  198. package/core/dist/runtime-v2/feature-flags/__tests__/codex-conversation-ingestion-flag.test.d.ts.map +1 -0
  199. package/core/dist/runtime-v2/feature-flags/__tests__/codex-conversation-ingestion-flag.test.js +46 -0
  200. package/core/dist/runtime-v2/feature-flags/__tests__/codex-conversation-ingestion-flag.test.js.map +1 -0
  201. package/core/dist/runtime-v2/feature-flags/__tests__/feature-flag-contract.test.js +86 -31
  202. package/core/dist/runtime-v2/feature-flags/__tests__/feature-flag-contract.test.js.map +1 -1
  203. package/core/dist/runtime-v2/feature-flags/__tests__/feature-flag-lifecycle.test.d.ts +2 -0
  204. package/core/dist/runtime-v2/feature-flags/__tests__/feature-flag-lifecycle.test.d.ts.map +1 -0
  205. package/core/dist/runtime-v2/feature-flags/__tests__/feature-flag-lifecycle.test.js +83 -0
  206. package/core/dist/runtime-v2/feature-flags/__tests__/feature-flag-lifecycle.test.js.map +1 -0
  207. package/core/dist/runtime-v2/feature-flags/feature-flag-contract.d.ts +19 -1
  208. package/core/dist/runtime-v2/feature-flags/feature-flag-contract.d.ts.map +1 -1
  209. package/core/dist/runtime-v2/feature-flags/feature-flag-contract.js +128 -10
  210. package/core/dist/runtime-v2/feature-flags/feature-flag-contract.js.map +1 -1
  211. package/core/dist/runtime-v2/feature-flags/feature-flag-lifecycle.d.ts +37 -0
  212. package/core/dist/runtime-v2/feature-flags/feature-flag-lifecycle.d.ts.map +1 -0
  213. package/core/dist/runtime-v2/feature-flags/feature-flag-lifecycle.js +304 -0
  214. package/core/dist/runtime-v2/feature-flags/feature-flag-lifecycle.js.map +1 -0
  215. package/core/dist/runtime-v2/feature-flags/index.d.ts +4 -2
  216. package/core/dist/runtime-v2/feature-flags/index.d.ts.map +1 -1
  217. package/core/dist/runtime-v2/feature-flags/index.js +3 -1
  218. package/core/dist/runtime-v2/feature-flags/index.js.map +1 -1
  219. package/core/dist/runtime-v2/governance-experience-contract.d.ts +468 -0
  220. package/core/dist/runtime-v2/governance-experience-contract.d.ts.map +1 -0
  221. package/core/dist/runtime-v2/governance-experience-contract.js +208 -0
  222. package/core/dist/runtime-v2/governance-experience-contract.js.map +1 -0
  223. package/core/dist/runtime-v2/governance-experience.d.ts +11 -0
  224. package/core/dist/runtime-v2/governance-experience.d.ts.map +1 -0
  225. package/core/dist/runtime-v2/governance-experience.js +276 -0
  226. package/core/dist/runtime-v2/governance-experience.js.map +1 -0
  227. package/core/dist/runtime-v2/index.d.ts +20 -8
  228. package/core/dist/runtime-v2/index.d.ts.map +1 -1
  229. package/core/dist/runtime-v2/index.js +20 -6
  230. package/core/dist/runtime-v2/index.js.map +1 -1
  231. package/core/dist/runtime-v2/internalization/__tests__/artificer-output-retry-flag.test.js +29 -10
  232. package/core/dist/runtime-v2/internalization/__tests__/artificer-output-retry-flag.test.js.map +1 -1
  233. package/core/dist/runtime-v2/owner-identity.d.ts +69 -0
  234. package/core/dist/runtime-v2/owner-identity.d.ts.map +1 -0
  235. package/core/dist/runtime-v2/owner-identity.js +179 -0
  236. package/core/dist/runtime-v2/owner-identity.js.map +1 -0
  237. package/core/dist/runtime-v2/pain-signal-runtime-factory.d.ts.map +1 -1
  238. package/core/dist/runtime-v2/pain-signal-runtime-factory.js +2 -3
  239. package/core/dist/runtime-v2/pain-signal-runtime-factory.js.map +1 -1
  240. package/core/dist/runtime-v2/product-telemetry/daily-identity.d.ts +70 -0
  241. package/core/dist/runtime-v2/product-telemetry/daily-identity.d.ts.map +1 -0
  242. package/core/dist/runtime-v2/product-telemetry/daily-identity.js +89 -0
  243. package/core/dist/runtime-v2/product-telemetry/daily-identity.js.map +1 -0
  244. package/core/dist/runtime-v2/product-telemetry/snapshot-contract.d.ts +110 -0
  245. package/core/dist/runtime-v2/product-telemetry/snapshot-contract.d.ts.map +1 -0
  246. package/core/dist/runtime-v2/product-telemetry/snapshot-contract.js +250 -0
  247. package/core/dist/runtime-v2/product-telemetry/snapshot-contract.js.map +1 -0
  248. package/core/dist/runtime-v2/pruning-read-model.d.ts +2 -1
  249. package/core/dist/runtime-v2/pruning-read-model.d.ts.map +1 -1
  250. package/core/dist/runtime-v2/pruning-read-model.js.map +1 -1
  251. package/core/dist/runtime-v2/receipt-coverage.d.ts +63 -0
  252. package/core/dist/runtime-v2/receipt-coverage.d.ts.map +1 -0
  253. package/core/dist/runtime-v2/receipt-coverage.js +19 -0
  254. package/core/dist/runtime-v2/receipt-coverage.js.map +1 -0
  255. package/core/dist/runtime-v2/recovery-actions-log.d.ts +7 -0
  256. package/core/dist/runtime-v2/recovery-actions-log.d.ts.map +1 -1
  257. package/core/dist/runtime-v2/recovery-actions-log.js +6 -0
  258. package/core/dist/runtime-v2/recovery-actions-log.js.map +1 -1
  259. package/core/dist/runtime-v2/runtime-protocol.js +1 -1
  260. package/core/dist/runtime-v2/runtime-protocol.js.map +1 -1
  261. package/core/dist/runtime-v2/store/task/__tests__/sqlite-task-store.failed-tasks.test.js +17 -1
  262. package/core/dist/runtime-v2/store/task/__tests__/sqlite-task-store.failed-tasks.test.js.map +1 -1
  263. package/core/dist/runtime-v2/store/task/sqlite-task-store.d.ts.map +1 -1
  264. package/core/dist/runtime-v2/store/task/sqlite-task-store.js +10 -0
  265. package/core/dist/runtime-v2/store/task/sqlite-task-store.js.map +1 -1
  266. package/core/dist/runtime-v2/store/task/task-types.d.ts +2 -0
  267. package/core/dist/runtime-v2/store/task/task-types.d.ts.map +1 -1
  268. package/core/dist/runtime-v2/task-status.d.ts +9 -5
  269. package/core/dist/runtime-v2/task-status.d.ts.map +1 -1
  270. package/core/dist/runtime-v2/task-status.js +15 -7
  271. package/core/dist/runtime-v2/task-status.js.map +1 -1
  272. package/core/dist/runtime-v2/types/event-types.d.ts +4 -0
  273. package/core/dist/runtime-v2/types/event-types.d.ts.map +1 -1
  274. package/core/dist/runtime-v2/types/event-types.js.map +1 -1
  275. package/core/dist/runtime-v2/types/index.d.ts +1 -1
  276. package/core/dist/runtime-v2/types/index.d.ts.map +1 -1
  277. package/core/dist/runtime-v2/types/index.js +1 -1
  278. package/core/dist/runtime-v2/types/index.js.map +1 -1
  279. package/core/dist/runtime-v2/types/principle-enums.d.ts +3 -2
  280. package/core/dist/runtime-v2/types/principle-enums.d.ts.map +1 -1
  281. package/core/dist/runtime-v2/types/principle-enums.js +11 -5
  282. package/core/dist/runtime-v2/types/principle-enums.js.map +1 -1
  283. package/core/dist/runtime-v2/types/principle-schema.d.ts +1 -1
  284. package/core/dist/runtime-v2/types/principle-tree-store.d.ts +1 -1
  285. package/core/dist/runtime-v2/utils/cli-process-runner.d.ts.map +1 -1
  286. package/core/dist/runtime-v2/utils/cli-process-runner.js +3 -2
  287. package/core/dist/runtime-v2/utils/cli-process-runner.js.map +1 -1
  288. package/core/package.json +1 -2
  289. package/dist/i18n.d.ts.map +1 -1
  290. package/dist/i18n.js +4 -2
  291. package/dist/i18n.js.map +1 -1
  292. package/dist/index.d.ts +2 -0
  293. package/dist/index.d.ts.map +1 -1
  294. package/dist/index.js +47 -11
  295. package/dist/index.js.map +1 -1
  296. package/dist/installer.d.ts +31 -5
  297. package/dist/installer.d.ts.map +1 -1
  298. package/dist/installer.js +472 -161
  299. package/dist/installer.js.map +1 -1
  300. package/dist/installers/codex-host-installer.d.ts.map +1 -1
  301. package/dist/installers/codex-host-installer.js +4 -0
  302. package/dist/installers/codex-host-installer.js.map +1 -1
  303. package/dist/mvp-config.d.ts +10 -0
  304. package/dist/mvp-config.d.ts.map +1 -1
  305. package/dist/mvp-config.js +30 -3
  306. package/dist/mvp-config.js.map +1 -1
  307. package/dist/uninstaller.d.ts +9 -1
  308. package/dist/uninstaller.d.ts.map +1 -1
  309. package/dist/uninstaller.js +103 -23
  310. package/dist/uninstaller.js.map +1 -1
  311. package/dist/update/atomic-file.d.ts +35 -0
  312. package/dist/update/atomic-file.d.ts.map +1 -0
  313. package/dist/update/atomic-file.js +120 -0
  314. package/dist/update/atomic-file.js.map +1 -0
  315. package/dist/update/bootstrap-protocol.d.ts +55 -0
  316. package/dist/update/bootstrap-protocol.d.ts.map +1 -0
  317. package/dist/update/bootstrap-protocol.js +132 -0
  318. package/dist/update/bootstrap-protocol.js.map +1 -0
  319. package/dist/update/channel-metadata.d.ts +28 -0
  320. package/dist/update/channel-metadata.d.ts.map +1 -0
  321. package/dist/update/channel-metadata.js +90 -0
  322. package/dist/update/channel-metadata.js.map +1 -0
  323. package/dist/update/channel-promotion.d.ts +39 -0
  324. package/dist/update/channel-promotion.d.ts.map +1 -0
  325. package/dist/update/channel-promotion.js +55 -0
  326. package/dist/update/channel-promotion.js.map +1 -0
  327. package/dist/update/data-compatibility.d.ts +35 -0
  328. package/dist/update/data-compatibility.d.ts.map +1 -0
  329. package/dist/update/data-compatibility.js +45 -0
  330. package/dist/update/data-compatibility.js.map +1 -0
  331. package/dist/update/install-layout.d.ts +59 -0
  332. package/dist/update/install-layout.d.ts.map +1 -0
  333. package/dist/update/install-layout.js +127 -0
  334. package/dist/update/install-layout.js.map +1 -0
  335. package/dist/update/legacy-migration.d.ts +56 -0
  336. package/dist/update/legacy-migration.d.ts.map +1 -0
  337. package/dist/update/legacy-migration.js +254 -0
  338. package/dist/update/legacy-migration.js.map +1 -0
  339. package/dist/update/product-identity.d.ts +50 -0
  340. package/dist/update/product-identity.d.ts.map +1 -0
  341. package/dist/update/product-identity.js +63 -0
  342. package/dist/update/product-identity.js.map +1 -0
  343. package/dist/update/release-asset-manifest.d.ts +31 -0
  344. package/dist/update/release-asset-manifest.d.ts.map +1 -0
  345. package/dist/update/release-asset-manifest.js +161 -0
  346. package/dist/update/release-asset-manifest.js.map +1 -0
  347. package/dist/update/release-identity.d.ts +33 -0
  348. package/dist/update/release-identity.d.ts.map +1 -0
  349. package/dist/update/release-identity.js +108 -0
  350. package/dist/update/release-identity.js.map +1 -0
  351. package/dist/update/release-manager.d.ts +96 -0
  352. package/dist/update/release-manager.d.ts.map +1 -0
  353. package/dist/update/release-manager.js +253 -0
  354. package/dist/update/release-manager.js.map +1 -0
  355. package/dist/update/release-metadata.d.ts +57 -0
  356. package/dist/update/release-metadata.d.ts.map +1 -0
  357. package/dist/update/release-metadata.js +200 -0
  358. package/dist/update/release-metadata.js.map +1 -0
  359. package/dist/update/release-policy.d.ts +51 -0
  360. package/dist/update/release-policy.d.ts.map +1 -0
  361. package/dist/update/release-policy.js +103 -0
  362. package/dist/update/release-policy.js.map +1 -0
  363. package/dist/update/rollback-policy.d.ts +56 -0
  364. package/dist/update/rollback-policy.d.ts.map +1 -0
  365. package/dist/update/rollback-policy.js +61 -0
  366. package/dist/update/rollback-policy.js.map +1 -0
  367. package/dist/update/transaction-journal.d.ts +121 -0
  368. package/dist/update/transaction-journal.d.ts.map +1 -0
  369. package/dist/update/transaction-journal.js +333 -0
  370. package/dist/update/transaction-journal.js.map +1 -0
  371. package/dist/update/trust-metadata.d.ts +55 -0
  372. package/dist/update/trust-metadata.d.ts.map +1 -0
  373. package/dist/update/trust-metadata.js +170 -0
  374. package/dist/update/trust-metadata.js.map +1 -0
  375. package/dist/update/update-history.d.ts +46 -0
  376. package/dist/update/update-history.d.ts.map +1 -0
  377. package/dist/update/update-history.js +123 -0
  378. package/dist/update/update-history.js.map +1 -0
  379. package/dist/utils/env.d.ts +7 -0
  380. package/dist/utils/env.d.ts.map +1 -1
  381. package/dist/utils/env.js +134 -44
  382. package/dist/utils/env.js.map +1 -1
  383. package/host-runtime/dist/governance-observation-store.d.ts +172 -0
  384. package/host-runtime/dist/governance-observation-store.js +649 -0
  385. package/host-runtime/dist/index.d.ts +6 -0
  386. package/host-runtime/dist/index.js +8 -0
  387. package/host-runtime/dist/product-telemetry/consent-store.d.ts +107 -0
  388. package/host-runtime/dist/product-telemetry/consent-store.js +329 -0
  389. package/host-runtime/dist/product-telemetry/eligibility.d.ts +53 -0
  390. package/host-runtime/dist/product-telemetry/eligibility.js +69 -0
  391. package/host-runtime/dist/product-telemetry/exporter.d.ts +46 -0
  392. package/host-runtime/dist/product-telemetry/exporter.js +71 -0
  393. package/host-runtime/dist/product-telemetry/milestone-readers.d.ts +61 -0
  394. package/host-runtime/dist/product-telemetry/milestone-readers.js +234 -0
  395. package/host-runtime/dist/product-telemetry/service.d.ts +142 -0
  396. package/host-runtime/dist/product-telemetry/service.js +532 -0
  397. package/host-runtime/dist/product-telemetry/workspace-scope.d.ts +38 -0
  398. package/host-runtime/dist/product-telemetry/workspace-scope.js +64 -0
  399. package/host-runtime/package.json +5 -0
  400. package/install-layout/dist/index.d.ts +48 -0
  401. package/install-layout/dist/index.js +81 -0
  402. package/install-layout/dist/index.test.d.ts +1 -0
  403. package/install-layout/dist/index.test.js +34 -0
  404. package/install-layout/package.json +29 -0
  405. package/package.json +16 -6
  406. package/pd-cli/dist/commands/__tests__/telemetry-flag-wiring.test.d.ts +9 -0
  407. package/pd-cli/dist/commands/__tests__/telemetry-flag-wiring.test.d.ts.map +1 -0
  408. package/pd-cli/dist/commands/__tests__/telemetry-flag-wiring.test.js +76 -0
  409. package/pd-cli/dist/commands/__tests__/telemetry-flag-wiring.test.js.map +1 -0
  410. package/pd-cli/dist/commands/__tests__/version.test.d.ts +2 -0
  411. package/pd-cli/dist/commands/__tests__/version.test.d.ts.map +1 -0
  412. package/pd-cli/dist/commands/__tests__/version.test.js +134 -0
  413. package/pd-cli/dist/commands/__tests__/version.test.js.map +1 -0
  414. package/pd-cli/dist/commands/console.d.ts.map +1 -1
  415. package/pd-cli/dist/commands/console.js +29 -10
  416. package/pd-cli/dist/commands/console.js.map +1 -1
  417. package/pd-cli/dist/commands/pain-record.d.ts.map +1 -1
  418. package/pd-cli/dist/commands/pain-record.js +6 -15
  419. package/pd-cli/dist/commands/pain-record.js.map +1 -1
  420. package/pd-cli/dist/commands/runtime-activation.d.ts +29 -0
  421. package/pd-cli/dist/commands/runtime-activation.d.ts.map +1 -1
  422. package/pd-cli/dist/commands/runtime-activation.js +70 -31
  423. package/pd-cli/dist/commands/runtime-activation.js.map +1 -1
  424. package/pd-cli/dist/commands/runtime-internalization-enqueue-successors.d.ts.map +1 -1
  425. package/pd-cli/dist/commands/runtime-internalization-enqueue-successors.js +2 -2
  426. package/pd-cli/dist/commands/runtime-internalization-enqueue-successors.js.map +1 -1
  427. package/pd-cli/dist/commands/telemetry.d.ts +82 -0
  428. package/pd-cli/dist/commands/telemetry.d.ts.map +1 -0
  429. package/pd-cli/dist/commands/telemetry.js +268 -0
  430. package/pd-cli/dist/commands/telemetry.js.map +1 -0
  431. package/pd-cli/dist/commands/version.d.ts +11 -0
  432. package/pd-cli/dist/commands/version.d.ts.map +1 -0
  433. package/pd-cli/dist/commands/version.js +48 -0
  434. package/pd-cli/dist/commands/version.js.map +1 -0
  435. package/pd-cli/dist/index.js +35 -2
  436. package/pd-cli/dist/index.js.map +1 -1
  437. package/pd-cli/dist/services/version-report.d.ts +44 -0
  438. package/pd-cli/dist/services/version-report.d.ts.map +1 -0
  439. package/pd-cli/dist/services/version-report.js +152 -0
  440. package/pd-cli/dist/services/version-report.js.map +1 -0
  441. package/pd-cli/package.json +1 -0
  442. package/plugin/dist/bundle.js +868 -936
  443. package/plugin/dist/core/init.d.ts +2 -1
  444. package/plugin/dist/core/principle-application-ledger.d.ts +10 -0
  445. package/plugin/dist/core/product-telemetry-trigger.d.ts +14 -0
  446. package/plugin/dist/core/thinking-os-parser.d.ts +5 -2
  447. package/plugin/dist/governance-audit.js +386 -0
  448. package/plugin/dist/hooks/gate-block-helper.d.ts +25 -1
  449. package/plugin/dist/hooks/gate.d.ts +22 -0
  450. package/plugin/dist/rulehost-evidence.js +832 -0
  451. package/plugin/dist/templates/langs/en/principles/THINKING_OS.md +53 -45
  452. package/plugin/dist/templates/langs/en/skills/pd-mentor/SKILL.md +1 -1
  453. package/plugin/dist/templates/langs/zh/principles/THINKING_OS.md +62 -46
  454. package/plugin/dist/templates/langs/zh/skills/pd-mentor/SKILL.md +1 -1
  455. package/plugin/dist/templates/workspace/.principles/THINKING_OS.md +66 -38
  456. package/plugin/openclaw.plugin.json +1 -1
  457. package/plugin/package.json +1 -1
  458. package/plugin/templates/langs/en/principles/THINKING_OS.md +53 -45
  459. package/plugin/templates/langs/en/skills/pd-mentor/SKILL.md +1 -1
  460. package/plugin/templates/langs/zh/principles/THINKING_OS.md +62 -46
  461. package/plugin/templates/langs/zh/skills/pd-mentor/SKILL.md +1 -1
  462. package/plugin/templates/workspace/.principles/THINKING_OS.md +66 -38
@@ -0,0 +1,104 @@
1
+ import { describe, expect, it } from 'vitest';
2
+ import { buildPromotionEvidenceSnapshot, computeArtifactDigest, normalizeOwnerIdentity, } from '../promotion-evidence-snapshot.js';
3
+ const sampleArtifact = {
4
+ artifactId: 'artifact-1',
5
+ artifactKind: 'rule',
6
+ sourceTaskId: 'task-100',
7
+ lineageArtifactIds: ['parent-1', 'parent-2'],
8
+ validationStatus: 'validated',
9
+ contentJson: '{"code":"console.log()"}',
10
+ createdAt: '2026-08-21T00:00:00.000Z',
11
+ updatedAt: '2026-08-21T00:00:00.000Z',
12
+ };
13
+ describe('promotion-evidence-snapshot factory', () => {
14
+ it('computes deterministic digest given identical inputs and fixed clock', () => {
15
+ const input = {
16
+ activationId: 'act-123',
17
+ evaluationId: 'eval-456',
18
+ checks: [{ checkId: 'bounded_scope', status: 'passed' }],
19
+ artifact: sampleArtifact,
20
+ ownerIdentity: {
21
+ principal: { kind: 'configured_owner', ownerId: 'wesley' },
22
+ authentication: { method: 'cli_owner_credential', credentialId: 'cred-1' },
23
+ },
24
+ hostRuntimeVersion: 'openclaw-legacy@1',
25
+ now: () => '2026-08-21T12:00:00.000Z',
26
+ newSnapshotId: () => 'snapshot-fixed',
27
+ };
28
+ const snap1 = buildPromotionEvidenceSnapshot(input);
29
+ const snap2 = buildPromotionEvidenceSnapshot(input);
30
+ expect(snap1.snapshotId).toBe('snapshot-fixed');
31
+ expect(snap1.snapshotDigest).toBe(snap2.snapshotDigest);
32
+ expect(snap1.artifactDigest).toBe(computeArtifactDigest(sampleArtifact));
33
+ expect(snap1.lineageRefs).toEqual(['task-100', 'parent-1', 'parent-2']);
34
+ expect(snap1.redaction).toEqual({ version: 'v1', rawParametersStored: false });
35
+ });
36
+ it('changes digest when activationId or evaluationId changes', () => {
37
+ const base = {
38
+ activationId: 'act-1',
39
+ evaluationId: 'eval-1',
40
+ checks: [{ checkId: 'bounded_scope', status: 'passed' }],
41
+ now: () => '2026-08-21T12:00:00.000Z',
42
+ };
43
+ const snapBase = buildPromotionEvidenceSnapshot(base);
44
+ const snapDiffAct = buildPromotionEvidenceSnapshot({ ...base, activationId: 'act-2' });
45
+ const snapDiffEval = buildPromotionEvidenceSnapshot({ ...base, evaluationId: 'eval-2' });
46
+ expect(snapBase.snapshotDigest).not.toBe(snapDiffAct.snapshotDigest);
47
+ expect(snapBase.snapshotDigest).not.toBe(snapDiffEval.snapshotDigest);
48
+ });
49
+ it('changes digest when lineageRefs change (lineage is digest-bound)', () => {
50
+ const base = {
51
+ activationId: 'act-1',
52
+ evaluationId: 'eval-1',
53
+ checks: [{ checkId: 'bounded_scope', status: 'passed' }],
54
+ artifact: sampleArtifact,
55
+ now: () => '2026-08-21T12:00:00.000Z',
56
+ };
57
+ const snapBase = buildPromotionEvidenceSnapshot(base);
58
+ const snapDiffLineage = buildPromotionEvidenceSnapshot({
59
+ ...base,
60
+ artifact: { ...sampleArtifact, lineageArtifactIds: ['parent-1'] },
61
+ // explicit override must win over the derived list, so both differ
62
+ lineageRefs: ['task-100', 'parent-9'],
63
+ });
64
+ const snapExplicit = buildPromotionEvidenceSnapshot({ ...base, lineageRefs: ['task-100', 'parent-1', 'parent-2'] });
65
+ expect(snapBase.lineageRefs).toEqual(['task-100', 'parent-1', 'parent-2']);
66
+ expect(snapBase.snapshotDigest).not.toBe(snapDiffLineage.snapshotDigest);
67
+ expect(snapBase.snapshotDigest).toBe(snapExplicit.snapshotDigest);
68
+ });
69
+ it('changes digest when owner identity or runtime version changes', () => {
70
+ const base = {
71
+ activationId: 'act-1',
72
+ evaluationId: 'eval-1',
73
+ checks: [{ checkId: 'bounded_scope', status: 'passed' }],
74
+ ownerIdentity: { principalKind: 'configured_owner', actorId: 'wesley', authenticationMethod: 'cli_owner_credential' },
75
+ hostRuntimeVersion: 'openclaw-legacy@1',
76
+ now: () => '2026-08-21T12:00:00.000Z',
77
+ };
78
+ const snapBase = buildPromotionEvidenceSnapshot(base);
79
+ const snapDiffOwner = buildPromotionEvidenceSnapshot({
80
+ ...base,
81
+ ownerIdentity: { principalKind: 'configured_owner', actorId: 'other_user', authenticationMethod: 'cli_owner_credential' },
82
+ });
83
+ const snapDiffRuntime = buildPromotionEvidenceSnapshot({
84
+ ...base,
85
+ hostRuntimeVersion: 'openclaw-v2',
86
+ });
87
+ expect(snapBase.snapshotDigest).not.toBe(snapDiffOwner.snapshotDigest);
88
+ expect(snapBase.snapshotDigest).not.toBe(snapDiffRuntime.snapshotDigest);
89
+ });
90
+ it('normalizes owner identity from OwnerPromotionActor', () => {
91
+ const actor = {
92
+ principal: { kind: 'configured_owner', ownerId: 'wesley' },
93
+ authentication: { method: 'console_token', credentialId: 'tok-abc' },
94
+ };
95
+ const normalized = normalizeOwnerIdentity(actor);
96
+ expect(normalized).toEqual({
97
+ principalKind: 'configured_owner',
98
+ actorId: 'wesley',
99
+ authenticationMethod: 'console_token',
100
+ credentialId: 'tok-abc',
101
+ });
102
+ });
103
+ });
104
+ //# sourceMappingURL=promotion-evidence-snapshot.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"promotion-evidence-snapshot.test.js","sourceRoot":"","sources":["../../../../src/runtime-v2/activation/__tests__/promotion-evidence-snapshot.test.ts"],"names":[],"mappings":"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"}
@@ -53,6 +53,25 @@ describe('evaluateRuleCodePromotionReadiness', () => {
53
53
  expect(result.status).toBe('unavailable');
54
54
  expect(result.failedChecks).toContainEqual({ checkId: 'evidence_binding', reasonCode: 'artifact_digest_mismatch' });
55
55
  });
56
+ it('reports an observable reason when the shadow telemetry source is unavailable', () => {
57
+ const result = evaluateRuleCodePromotionReadiness({
58
+ evaluationId: 'eval-no-telemetry', artifactId: 'artifact-1', artifactDigest: 'sha256:artifact',
59
+ evidenceSnapshot: {
60
+ ...snapshot,
61
+ shadowSummary: {
62
+ observed: null, matched: null, wouldBlock: null, wouldAllow: null,
63
+ requireApproval: null, autoCorrect: null, errors: null, neutralControl: null,
64
+ firstObservedAt: null, lastObservedAt: null,
65
+ },
66
+ },
67
+ checks: passingChecks(),
68
+ });
69
+ expect(result.status).toBe('unavailable');
70
+ expect(result.failedChecks).toContainEqual({
71
+ checkId: 'runtime_shadow_evidence',
72
+ reasonCode: 'shadow_telemetry_source_unavailable',
73
+ });
74
+ });
56
75
  it.each([
57
76
  ['less than 24 hours', { firstObservedAt: '2026-08-20T00:00:00.001Z' }],
58
77
  ['fewer than 20 eligible evaluations', { observed: 19 }],
@@ -1 +1 @@
1
- {"version":3,"file":"promotion-readiness-evaluator.test.js","sourceRoot":"","sources":["../../../../src/runtime-v2/activation/__tests__/promotion-readiness-evaluator.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"promotion-readiness-evaluator.test.js","sourceRoot":"","sources":["../../../../src/runtime-v2/activation/__tests__/promotion-readiness-evaluator.test.ts"],"names":[],"mappings":"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"}
@@ -137,5 +137,25 @@ describe('RuleCodeOwnerDecisionService promotion authority', () => {
137
137
  }, actor)).resolves.toMatchObject({ ok: true, decision: 'promoted' });
138
138
  expect(commitPromotion).toHaveBeenCalledOnce();
139
139
  });
140
+ it('returns structured refusal with promotion_commit_failed when commitPromotion throws (P0-3)', async () => {
141
+ const failingCommit = vi.fn().mockRejectedValue(new Error('SQLite write failed'));
142
+ const instance = new RuleCodeOwnerDecisionService({
143
+ ownerLiveDecisionEnabled: () => true,
144
+ safetyControlsEnabled: () => true,
145
+ evaluateReadiness: async () => ready,
146
+ commitPromotion: failingCommit,
147
+ newDecisionId: () => 'decision-fail',
148
+ now: () => '2026-08-21T02:01:00.000Z',
149
+ });
150
+ const result = await instance.promote(request, actor);
151
+ expect(result).toMatchObject({
152
+ ok: false,
153
+ reasonCode: 'promotion_commit_failed',
154
+ summary: expect.stringContaining('durable safety store'),
155
+ nextAction: expect.stringContaining('retry'),
156
+ });
157
+ expect(result.ok === false && result.summary.includes('SQLite write failed')).toBe(true);
158
+ expect(failingCommit).toHaveBeenCalledOnce();
159
+ });
140
160
  });
141
161
  //# sourceMappingURL=rulecode-owner-decision-service.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"rulecode-owner-decision-service.test.js","sourceRoot":"","sources":["../../../../src/runtime-v2/activation/__tests__/rulecode-owner-decision-service.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rulecode-owner-decision-service.test.js","sourceRoot":"","sources":["../../../../src/runtime-v2/activation/__tests__/rulecode-owner-decision-service.test.ts"],"names":[],"mappings":"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"}
@@ -307,5 +307,45 @@ describe('SqliteActivationSafetyStore', () => {
307
307
  await expect(store.getControlState('activation-recovery-1')).resolves.toMatchObject({ enforcement: 'eligible' });
308
308
  connection.close();
309
309
  });
310
+ it('commitPromotion rolls back all changes when the activation_decisions INSERT fails (P0-3 rollback)', async () => {
311
+ const connection = new SqliteConnection(makeWorkspace());
312
+ seedArtifact(connection);
313
+ // Insert a shadow activation directly (no promotedAt)
314
+ const db = connection.getDb();
315
+ db.prepare(`
316
+ INSERT INTO activations (activation_id, idempotency_key, artifact_id, channel, action, target_ref, activated_at, promoted_at, deactivated_at)
317
+ VALUES ('activation-1', 'activation-1-key', 'artifact-1', 'code_tool_hook', 'code_tool_hook_shadow_activate', 'impl://rule-1', '2026-08-21T00:01:00.000Z', NULL, NULL)
318
+ `).run();
319
+ // Insert matching control row
320
+ db.prepare(`
321
+ INSERT INTO activation_control_states (activation_id, enforcement, isolation_decision_id, version, updated_at)
322
+ VALUES ('activation-1', 'eligible', NULL, 1, '2026-08-21T00:01:00.000Z')
323
+ `).run();
324
+ // Force every INSERT into activation_decisions to abort the transaction
325
+ db.prepare(`
326
+ CREATE TRIGGER force_decision_fail
327
+ BEFORE INSERT ON activation_decisions
328
+ BEGIN
329
+ SELECT RAISE(ABORT, 'forced failure for rollback test');
330
+ END
331
+ `).run();
332
+ const store = new SqliteActivationSafetyStore(connection);
333
+ await expect(store.commitPromotion(promotionCommit())).rejects.toThrow();
334
+ // activation row must not have been promoted
335
+ const row = db.prepare("SELECT action, promoted_at FROM activations WHERE activation_id = 'activation-1'").get();
336
+ expect(row.action).toBe('code_tool_hook_shadow_activate');
337
+ expect(row.promoted_at).toBeNull();
338
+ // no orphan decision row
339
+ const decisionCount = db.prepare("SELECT COUNT(*) AS n FROM activation_decisions WHERE decision_id = 'decision-promote-1'").get().n;
340
+ expect(decisionCount).toBe(0);
341
+ // no orphan evidence snapshot (inserted before the failing decision INSERT)
342
+ const snapshotCount = db.prepare('SELECT COUNT(*) AS n FROM activation_evidence_snapshots').get().n;
343
+ expect(snapshotCount).toBe(0);
344
+ // control state untouched by the aborted transaction
345
+ const control = db.prepare("SELECT enforcement, version FROM activation_control_states WHERE activation_id = 'activation-1'").get();
346
+ expect(control.enforcement).toBe('eligible');
347
+ expect(control.version).toBe(1);
348
+ connection.close();
349
+ });
310
350
  });
311
351
  //# sourceMappingURL=sqlite-activation-safety-store.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sqlite-activation-safety-store.test.js","sourceRoot":"","sources":["../../../../src/runtime-v2/activation/__tests__/sqlite-activation-safety-store.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sqlite-activation-safety-store.test.js","sourceRoot":"","sources":["../../../../src/runtime-v2/activation/__tests__/sqlite-activation-safety-store.test.ts"],"names":[],"mappings":"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"}
@@ -19,6 +19,8 @@ export { collectOpenClawPromotionChecks } from './openclaw-promotion-checks.js';
19
19
  export type { HostLivenessContract } from './openclaw-promotion-checks.js';
20
20
  export { summarizeRuleCodeShadowEvents } from './rulecode-shadow-summary.js';
21
21
  export type { RuleCodeShadowSummary } from './rulecode-shadow-summary.js';
22
+ export { buildPromotionEvidenceSnapshot, computeArtifactDigest, normalizeOwnerIdentity } from './promotion-evidence-snapshot.js';
23
+ export type { BuildPromotionEvidenceSnapshotInput, PromotionEvidenceOwnerIdentity } from './promotion-evidence-snapshot.js';
22
24
  export { ApprovalQueue, decideAutoPromotion } from './approval-queue.js';
23
25
  export { MemoryApprovalQueueStore } from './memory-approval-store.js';
24
26
  export { SqliteApprovalQueueStore } from './sqlite-approval-store.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/runtime-v2/activation/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/runtime-v2/activation/index.ts"],"names":[],"mappings":"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"}
@@ -10,6 +10,7 @@ export { PromotionReadinessReader } from './promotion-readiness-reader.js';
10
10
  export { evaluateRuleCodeSafetyCircuit, initialRuleCodeSafetyCircuitState } from './rulecode-safety-circuit-breaker.js';
11
11
  export { collectOpenClawPromotionChecks } from './openclaw-promotion-checks.js';
12
12
  export { summarizeRuleCodeShadowEvents } from './rulecode-shadow-summary.js';
13
+ export { buildPromotionEvidenceSnapshot, computeArtifactDigest, normalizeOwnerIdentity } from './promotion-evidence-snapshot.js';
13
14
  export { ApprovalQueue, decideAutoPromotion } from './approval-queue.js';
14
15
  export { MemoryApprovalQueueStore } from './memory-approval-store.js';
15
16
  export { SqliteApprovalQueueStore } from './sqlite-approval-store.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/runtime-v2/activation/index.ts"],"names":[],"mappings":"AA+BA,OAAO,EACL,oBAAoB,EACpB,iBAAiB,EACjB,qBAAqB,EACrB,kBAAkB,EAClB,gBAAgB,EAChB,mBAAmB,EACnB,mCAAmC,EACnC,wBAAwB,EACxB,oBAAoB,GACrB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAGlE,OAAO,EACL,YAAY,EACZ,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EACL,0BAA0B,EAC1B,uBAAuB,GACxB,MAAM,oCAAoC,CAAC;AAE5C,OAAO,EAAE,0BAA0B,EAAE,MAAM,oCAAoC,CAAC;AAChF,OAAO,EAAE,2BAA2B,EAAE,MAAM,qCAAqC,CAAC;AAElF,OAAO,EAAE,4BAA4B,EAAE,MAAM,sCAAsC,CAAC;AAMpF,OAAO,EAAE,4BAA4B,EAAE,kCAAkC,EAAE,MAAM,oCAAoC,CAAC;AAEtH,OAAO,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAE3E,OAAO,EAAE,6BAA6B,EAAE,iCAAiC,EAAE,MAAM,sCAAsC,CAAC;AAExH,OAAO,EAAE,8BAA8B,EAAE,MAAM,gCAAgC,CAAC;AAEhF,OAAO,EAAE,6BAA6B,EAAE,MAAM,8BAA8B,CAAC;AAG7E,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAEzE,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AAEtE,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AAEtE,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAGpF,4EAA4E;AAC5E,0EAA0E;AAC1E,2DAA2D;AAC3D,OAAO,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AAErE,oEAAoE;AACpE,4EAA4E;AAC5E,OAAO,EAAE,yBAAyB,EAAE,MAAM,kCAAkC,CAAC;AAG7E,OAAO,EACL,2BAA2B,EAC3B,QAAQ,IAAI,gBAAgB,EAC5B,uBAAuB,EACvB,4BAA4B,EAC5B,YAAY,EACZ,4BAA4B,GAC7B,MAAM,wCAAwC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/runtime-v2/activation/index.ts"],"names":[],"mappings":"AA+BA,OAAO,EACL,oBAAoB,EACpB,iBAAiB,EACjB,qBAAqB,EACrB,kBAAkB,EAClB,gBAAgB,EAChB,mBAAmB,EACnB,mCAAmC,EACnC,wBAAwB,EACxB,oBAAoB,GACrB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAGlE,OAAO,EACL,YAAY,EACZ,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EACL,0BAA0B,EAC1B,uBAAuB,GACxB,MAAM,oCAAoC,CAAC;AAE5C,OAAO,EAAE,0BAA0B,EAAE,MAAM,oCAAoC,CAAC;AAChF,OAAO,EAAE,2BAA2B,EAAE,MAAM,qCAAqC,CAAC;AAElF,OAAO,EAAE,4BAA4B,EAAE,MAAM,sCAAsC,CAAC;AAMpF,OAAO,EAAE,4BAA4B,EAAE,kCAAkC,EAAE,MAAM,oCAAoC,CAAC;AAEtH,OAAO,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAE3E,OAAO,EAAE,6BAA6B,EAAE,iCAAiC,EAAE,MAAM,sCAAsC,CAAC;AAExH,OAAO,EAAE,8BAA8B,EAAE,MAAM,gCAAgC,CAAC;AAEhF,OAAO,EAAE,6BAA6B,EAAE,MAAM,8BAA8B,CAAC;AAE7E,OAAO,EAAE,8BAA8B,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAGjI,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAEzE,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AAEtE,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AAEtE,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAGpF,4EAA4E;AAC5E,0EAA0E;AAC1E,2DAA2D;AAC3D,OAAO,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AAErE,oEAAoE;AACpE,4EAA4E;AAC5E,OAAO,EAAE,yBAAyB,EAAE,MAAM,kCAAkC,CAAC;AAG7E,OAAO,EACL,2BAA2B,EAC3B,QAAQ,IAAI,gBAAgB,EAC5B,uBAAuB,EACvB,4BAA4B,EAC5B,YAAY,EACZ,4BAA4B,GAC7B,MAAM,wCAAwC,CAAC"}
@@ -0,0 +1,30 @@
1
+ import type { PIArtifactSnapshot } from './activation-types.js';
2
+ import type { PromotionEvidenceSnapshot, OwnerPromotionActor } from './rulecode-owner-decision-service.js';
3
+ export interface PromotionEvidenceOwnerIdentity {
4
+ principalKind: string;
5
+ actorId: string;
6
+ authenticationMethod: string;
7
+ credentialId?: string | null;
8
+ }
9
+ export interface BuildPromotionEvidenceSnapshotInput {
10
+ activationId?: string;
11
+ evaluationId?: string;
12
+ checks: {
13
+ checkId: string;
14
+ status: 'passed' | 'failed';
15
+ reasonCode?: string;
16
+ }[];
17
+ artifact?: PIArtifactSnapshot;
18
+ expectedArtifactDigest?: string;
19
+ ownerIdentity?: PromotionEvidenceOwnerIdentity | OwnerPromotionActor | null;
20
+ hostRuntimeVersion?: string;
21
+ shadowSummary?: PromotionEvidenceSnapshot['shadowSummary'];
22
+ lineageRefs?: string[];
23
+ configurationVersion?: string;
24
+ now?: () => string;
25
+ newSnapshotId?: () => string;
26
+ }
27
+ export declare function computeArtifactDigest(artifact: PIArtifactSnapshot): string;
28
+ export declare function normalizeOwnerIdentity(actor?: PromotionEvidenceOwnerIdentity | OwnerPromotionActor | null): PromotionEvidenceOwnerIdentity | null;
29
+ export declare function buildPromotionEvidenceSnapshot(input: BuildPromotionEvidenceSnapshotInput): PromotionEvidenceSnapshot;
30
+ //# sourceMappingURL=promotion-evidence-snapshot.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"promotion-evidence-snapshot.d.ts","sourceRoot":"","sources":["../../../src/runtime-v2/activation/promotion-evidence-snapshot.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAChE,OAAO,KAAK,EAAE,yBAAyB,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAC;AAG3G,MAAM,WAAW,8BAA8B;IAC7C,aAAa,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC9B;AAED,MAAM,WAAW,mCAAmC;IAClD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,QAAQ,GAAG,QAAQ,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IAChF,QAAQ,CAAC,EAAE,kBAAkB,CAAC;IAC9B,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,aAAa,CAAC,EAAE,8BAA8B,GAAG,mBAAmB,GAAG,IAAI,CAAC;IAC5E,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,aAAa,CAAC,EAAE,yBAAyB,CAAC,eAAe,CAAC,CAAC;IAC3D,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,MAAM,CAAC;CAC9B;AAED,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,kBAAkB,GAAG,MAAM,CAE1E;AAED,wBAAgB,sBAAsB,CACpC,KAAK,CAAC,EAAE,8BAA8B,GAAG,mBAAmB,GAAG,IAAI,GAClE,8BAA8B,GAAG,IAAI,CAyBvC;AAED,wBAAgB,8BAA8B,CAC5C,KAAK,EAAE,mCAAmC,GACzC,yBAAyB,CA4D3B"}
@@ -0,0 +1,87 @@
1
+ import { createHash, randomUUID } from 'node:crypto';
2
+ export function computeArtifactDigest(artifact) {
3
+ return `sha256:${createHash('sha256').update(JSON.stringify(artifact), 'utf8').digest('hex')}`;
4
+ }
5
+ export function normalizeOwnerIdentity(actor) {
6
+ if (!actor)
7
+ return null;
8
+ if (Object.hasOwn(actor, 'principal') && Object.hasOwn(actor, 'authentication')) {
9
+ const typed = actor;
10
+ const principalKind = typed.principal.kind;
11
+ const actorId = typed.principal.kind === 'configured_owner'
12
+ ? typed.principal.ownerId
13
+ : typed.principal.kind === 'system_safety'
14
+ ? typed.principal.policyVersion
15
+ : typed.principal.reason;
16
+ const authenticationMethod = typed.authentication.method;
17
+ const credentialId = Object.hasOwn(typed.authentication, 'credentialId')
18
+ ? typed.authentication.credentialId ?? null
19
+ : null;
20
+ return { principalKind, actorId, authenticationMethod, credentialId };
21
+ }
22
+ const flat = actor;
23
+ return {
24
+ principalKind: flat.principalKind,
25
+ actorId: flat.actorId,
26
+ authenticationMethod: flat.authenticationMethod,
27
+ credentialId: flat.credentialId ?? null,
28
+ };
29
+ }
30
+ export function buildPromotionEvidenceSnapshot(input) {
31
+ const createdAt = input.now ? input.now() : new Date().toISOString();
32
+ const artifactDigest = input.artifact
33
+ ? computeArtifactDigest(input.artifact)
34
+ : (input.expectedArtifactDigest ?? '');
35
+ const hostRuntimeVersion = input.hostRuntimeVersion ?? 'openclaw-legacy@1';
36
+ const lineageRefs = input.lineageRefs ??
37
+ (input.artifact ? [input.artifact.sourceTaskId, ...input.artifact.lineageArtifactIds] : []);
38
+ const shadowSummary = input.shadowSummary ?? {
39
+ observed: null,
40
+ matched: null,
41
+ wouldBlock: null,
42
+ wouldAllow: null,
43
+ requireApproval: null,
44
+ autoCorrect: null,
45
+ errors: null,
46
+ neutralControl: null,
47
+ firstObservedAt: null,
48
+ lastObservedAt: null,
49
+ };
50
+ const configurationVersion = input.configurationVersion ?? 'pd-config-current';
51
+ const redaction = { version: 'v1', rawParametersStored: false };
52
+ const ownerIdentity = normalizeOwnerIdentity(input.ownerIdentity);
53
+ // snapshotDigest is a JOINT attestation, not standalone-recomputable from one
54
+ // row: every field below must stay recoverable from persisted data —
55
+ // activationId / evaluationId / ownerIdentity via the activation_decisions
56
+ // row that references this snapshot, all remaining fields via
57
+ // activation_evidence_snapshots columns. Adding a field here requires a
58
+ // matching persisted column or decision-row source.
59
+ const digestBody = JSON.stringify({
60
+ activationId: input.activationId ?? null,
61
+ evaluationId: input.evaluationId ?? null,
62
+ artifactDigest,
63
+ lineageRefs,
64
+ checks: input.checks,
65
+ ownerIdentity,
66
+ hostRuntimeVersion,
67
+ shadowSummary,
68
+ configurationVersion,
69
+ redaction,
70
+ createdAt,
71
+ });
72
+ const snapshotDigest = `sha256:${createHash('sha256').update(digestBody, 'utf8').digest('hex')}`;
73
+ const snapshotId = input.newSnapshotId ? input.newSnapshotId() : `snapshot-${randomUUID()}`;
74
+ return {
75
+ snapshotId,
76
+ snapshotDigest,
77
+ artifactDigest,
78
+ lineageRefs,
79
+ hostRuntimeVersion,
80
+ safetyGateResults: input.checks,
81
+ shadowSummary,
82
+ configurationVersion,
83
+ redaction,
84
+ createdAt,
85
+ };
86
+ }
87
+ //# sourceMappingURL=promotion-evidence-snapshot.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"promotion-evidence-snapshot.js","sourceRoot":"","sources":["../../../src/runtime-v2/activation/promotion-evidence-snapshot.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"promotion-readiness-evaluator.d.ts","sourceRoot":"","sources":["../../../src/runtime-v2/activation/promotion-readiness-evaluator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAwB,wBAAwB,EAAE,MAAM,sCAAsC,CAAC;AAEtI,eAAO,MAAM,4BAA4B,YACvC,wBAAwB,EAAE,iBAAiB,EAAE,eAAe,EAAE,yBAAyB,EACvF,cAAc,EAAE,uBAAuB,EAAE,2BAA2B,EAAE,oBAAoB,EAC1F,yBAAyB,EAAE,8BAA8B,CACjD,CAAC;AAEX,MAAM,MAAM,gBAAgB,GAAG,OAAO,4BAA4B,CAAC,MAAM,CAAC,CAAC;AAC3E,MAAM,WAAW,uBAAuB;IACtC,OAAO,EAAE,gBAAgB,CAAC;IAC1B,MAAM,EAAE,QAAQ,GAAG,QAAQ,CAAC;IAC5B,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AACD,MAAM,WAAW,iCAAiC;IAChD,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,gBAAgB,EAAE,yBAAyB,CAAC;IAC5C,MAAM,EAAE,SAAS,uBAAuB,EAAE,CAAC;CAC5C;AAED,wBAAgB,kCAAkC,CAAC,KAAK,EAAE,iCAAiC,GAAG,wBAAwB,CA+CrH"}
1
+ {"version":3,"file":"promotion-readiness-evaluator.d.ts","sourceRoot":"","sources":["../../../src/runtime-v2/activation/promotion-readiness-evaluator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAwB,wBAAwB,EAAE,MAAM,sCAAsC,CAAC;AAEtI,eAAO,MAAM,4BAA4B,YACvC,wBAAwB,EAAE,iBAAiB,EAAE,eAAe,EAAE,yBAAyB,EACvF,cAAc,EAAE,uBAAuB,EAAE,2BAA2B,EAAE,oBAAoB,EAC1F,yBAAyB,EAAE,8BAA8B,CACjD,CAAC;AAEX,MAAM,MAAM,gBAAgB,GAAG,OAAO,4BAA4B,CAAC,MAAM,CAAC,CAAC;AAC3E,MAAM,WAAW,uBAAuB;IACtC,OAAO,EAAE,gBAAgB,CAAC;IAC1B,MAAM,EAAE,QAAQ,GAAG,QAAQ,CAAC;IAC5B,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AACD,MAAM,WAAW,iCAAiC;IAChD,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,gBAAgB,EAAE,yBAAyB,CAAC;IAC5C,MAAM,EAAE,SAAS,uBAAuB,EAAE,CAAC;CAC5C;AAED,wBAAgB,kCAAkC,CAAC,KAAK,EAAE,iCAAiC,GAAG,wBAAwB,CAkDrH"}
@@ -22,6 +22,9 @@ export function evaluateRuleCodePromotionReadiness(input) {
22
22
  unavailable.push({ checkId: 'evidence_binding', reasonCode: 'artifact_digest_mismatch' });
23
23
  }
24
24
  const { shadowSummary } = input.evidenceSnapshot;
25
+ if (shadowSummary.observed === null) {
26
+ unavailable.push({ checkId: 'runtime_shadow_evidence', reasonCode: 'shadow_telemetry_source_unavailable' });
27
+ }
25
28
  const safetyGateResults = REQUIRED_PROMOTION_CHECK_IDS.flatMap(checkId => {
26
29
  const check = byId.get(checkId);
27
30
  if (!check)
@@ -1 +1 @@
1
- {"version":3,"file":"promotion-readiness-evaluator.js","sourceRoot":"","sources":["../../../src/runtime-v2/activation/promotion-readiness-evaluator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"promotion-readiness-evaluator.js","sourceRoot":"","sources":["../../../src/runtime-v2/activation/promotion-readiness-evaluator.ts"],"names":[],"mappings":"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"}
@@ -7,7 +7,7 @@ export interface PromotionReadinessReaderDeps {
7
7
  computeArtifactDigest(artifact: PIArtifactSnapshot): string;
8
8
  validateProductionArtifact(artifact: PIArtifactSnapshot): Promise<CanActivateResult>;
9
9
  collectHostChecks(artifact: PIArtifactSnapshot): Promise<PromotionReadinessCheck[]>;
10
- buildEvidenceSnapshot(checks: PromotionReadinessCheck[], artifact?: PIArtifactSnapshot): PromotionEvidenceSnapshot;
10
+ buildEvidenceSnapshot(checks: PromotionReadinessCheck[], artifact?: PIArtifactSnapshot, evaluationId?: string): PromotionEvidenceSnapshot;
11
11
  newEvaluationId(): string;
12
12
  }
13
13
  type ReadinessRequest = Pick<OwnerPromotionRequest, 'activationId' | 'expectedArtifactId' | 'expectedArtifactDigest'>;
@@ -1 +1 @@
1
- {"version":3,"file":"promotion-readiness-reader.d.ts","sourceRoot":"","sources":["../../../src/runtime-v2/activation/promotion-readiness-reader.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3G,OAAO,KAAK,EAAE,qBAAqB,EAAE,yBAAyB,EAAE,wBAAwB,EAAE,MAAM,sCAAsC,CAAC;AACvI,OAAO,EAAsC,KAAK,uBAAuB,EAAE,MAAM,oCAAoC,CAAC;AAEtH,MAAM,WAAW,4BAA4B;IAC3C,2BAA2B,IAAI,OAAO,CAAC,sBAAsB,EAAE,CAAC,CAAC;IACjE,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC,CAAC;IACxE,qBAAqB,CAAC,QAAQ,EAAE,kBAAkB,GAAG,MAAM,CAAC;IAC5D,0BAA0B,CAAC,QAAQ,EAAE,kBAAkB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;IACrF,iBAAiB,CAAC,QAAQ,EAAE,kBAAkB,GAAG,OAAO,CAAC,uBAAuB,EAAE,CAAC,CAAC;IACpF,qBAAqB,CAAC,MAAM,EAAE,uBAAuB,EAAE,EAAE,QAAQ,CAAC,EAAE,kBAAkB,GAAG,yBAAyB,CAAC;IACnH,eAAe,IAAI,MAAM,CAAC;CAC3B;AAED,KAAK,gBAAgB,GAAG,IAAI,CAAC,qBAAqB,EAAE,cAAc,GAAG,oBAAoB,GAAG,wBAAwB,CAAC,CAAC;AAEtH,qBAAa,wBAAwB;IACvB,OAAO,CAAC,QAAQ,CAAC,IAAI;IAAjC,YAA6B,IAAI,EAAE,4BAA4B,EAAI;IAE7D,QAAQ,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,wBAAwB,CAAC,CAgC3E;IAED,OAAO,CAAC,OAAO;CAQhB"}
1
+ {"version":3,"file":"promotion-readiness-reader.d.ts","sourceRoot":"","sources":["../../../src/runtime-v2/activation/promotion-readiness-reader.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3G,OAAO,KAAK,EAAE,qBAAqB,EAAE,yBAAyB,EAAE,wBAAwB,EAAE,MAAM,sCAAsC,CAAC;AACvI,OAAO,EAAsC,KAAK,uBAAuB,EAAE,MAAM,oCAAoC,CAAC;AAEtH,MAAM,WAAW,4BAA4B;IAC3C,2BAA2B,IAAI,OAAO,CAAC,sBAAsB,EAAE,CAAC,CAAC;IACjE,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC,CAAC;IACxE,qBAAqB,CAAC,QAAQ,EAAE,kBAAkB,GAAG,MAAM,CAAC;IAC5D,0BAA0B,CAAC,QAAQ,EAAE,kBAAkB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;IACrF,iBAAiB,CAAC,QAAQ,EAAE,kBAAkB,GAAG,OAAO,CAAC,uBAAuB,EAAE,CAAC,CAAC;IACpF,qBAAqB,CAAC,MAAM,EAAE,uBAAuB,EAAE,EAAE,QAAQ,CAAC,EAAE,kBAAkB,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,yBAAyB,CAAC;IAC1I,eAAe,IAAI,MAAM,CAAC;CAC3B;AAED,KAAK,gBAAgB,GAAG,IAAI,CAAC,qBAAqB,EAAE,cAAc,GAAG,oBAAoB,GAAG,wBAAwB,CAAC,CAAC;AAEtH,qBAAa,wBAAwB;IACvB,OAAO,CAAC,QAAQ,CAAC,IAAI;IAAjC,YAA6B,IAAI,EAAE,4BAA4B,EAAI;IAE7D,QAAQ,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,wBAAwB,CAAC,CAgC3E;IAED,OAAO,CAAC,OAAO;CAQhB"}
@@ -29,11 +29,11 @@ export class PromotionReadinessReader {
29
29
  ];
30
30
  const gate = await this.deps.validateProductionArtifact(artifact);
31
31
  checks.push({ checkId: 'production_compile_load', status: gate.ok ? 'passed' : 'failed', ...(!gate.ok ? { reasonCode: gate.reason } : {}) }, { checkId: 'golden_trace', status: gate.ok ? 'passed' : 'failed', ...(!gate.ok ? { reasonCode: gate.reason } : {}) }, ...await this.deps.collectHostChecks(artifact));
32
- const evidenceSnapshot = this.deps.buildEvidenceSnapshot(checks, artifact);
32
+ const evidenceSnapshot = this.deps.buildEvidenceSnapshot(checks, artifact, evaluationId);
33
33
  return evaluateRuleCodePromotionReadiness({ evaluationId, artifactId: artifact.artifactId, artifactDigest, evidenceSnapshot, checks });
34
34
  }
35
35
  blocked(evaluationId, request, checks) {
36
- const evidenceSnapshot = this.deps.buildEvidenceSnapshot(checks);
36
+ const evidenceSnapshot = this.deps.buildEvidenceSnapshot(checks, undefined, evaluationId);
37
37
  return {
38
38
  status: 'blocked', evaluationId, artifactId: request.expectedArtifactId,
39
39
  artifactDigest: request.expectedArtifactDigest, evidenceSnapshot,