@principles/core 1.284.16 → 1.284.18

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 (315) hide show
  1. package/dist/runtime-v2/__tests__/adversarial-loop.test.js +8 -1
  2. package/dist/runtime-v2/__tests__/adversarial-loop.test.js.map +1 -1
  3. package/dist/runtime-v2/__tests__/artificer-runner-vslice.test.js +101 -14
  4. package/dist/runtime-v2/__tests__/artificer-runner-vslice.test.js.map +1 -1
  5. package/dist/runtime-v2/__tests__/evidence-sanitizer.test.js +113 -1
  6. package/dist/runtime-v2/__tests__/evidence-sanitizer.test.js.map +1 -1
  7. package/dist/runtime-v2/__tests__/pain-to-principle-service.test.js +0 -1
  8. package/dist/runtime-v2/__tests__/pain-to-principle-service.test.js.map +1 -1
  9. package/dist/runtime-v2/__tests__/scribe-runner-vslice.test.js +211 -0
  10. package/dist/runtime-v2/__tests__/scribe-runner-vslice.test.js.map +1 -1
  11. package/dist/runtime-v2/activation/writers/rule-host-writer.d.ts.map +1 -1
  12. package/dist/runtime-v2/activation/writers/rule-host-writer.js +15 -1
  13. package/dist/runtime-v2/activation/writers/rule-host-writer.js.map +1 -1
  14. package/dist/runtime-v2/adapter/__tests__/openclaw-cli-runtime-adapter-message-file.test.js +23 -1
  15. package/dist/runtime-v2/adapter/__tests__/openclaw-cli-runtime-adapter-message-file.test.js.map +1 -1
  16. package/dist/runtime-v2/adapter/__tests__/principle-tree-ledger-adapter.test.js +25 -0
  17. package/dist/runtime-v2/adapter/__tests__/principle-tree-ledger-adapter.test.js.map +1 -1
  18. package/dist/runtime-v2/adapter/__tests__/schema-prompt-adapter-semantic.test.js +18 -4
  19. package/dist/runtime-v2/adapter/__tests__/schema-prompt-adapter-semantic.test.js.map +1 -1
  20. package/dist/runtime-v2/adapter/openclaw-cli-runtime-adapter.d.ts.map +1 -1
  21. package/dist/runtime-v2/adapter/openclaw-cli-runtime-adapter.js +38 -7
  22. package/dist/runtime-v2/adapter/openclaw-cli-runtime-adapter.js.map +1 -1
  23. package/dist/runtime-v2/adapter/output-schema-registry.d.ts.map +1 -1
  24. package/dist/runtime-v2/adapter/output-schema-registry.js +0 -2
  25. package/dist/runtime-v2/adapter/output-schema-registry.js.map +1 -1
  26. package/dist/runtime-v2/adapter/principle-tree-ledger-adapter.d.ts +16 -0
  27. package/dist/runtime-v2/adapter/principle-tree-ledger-adapter.d.ts.map +1 -1
  28. package/dist/runtime-v2/adapter/principle-tree-ledger-adapter.js +22 -0
  29. package/dist/runtime-v2/adapter/principle-tree-ledger-adapter.js.map +1 -1
  30. package/dist/runtime-v2/adversarial-loop.d.ts.map +1 -1
  31. package/dist/runtime-v2/adversarial-loop.js +14 -1
  32. package/dist/runtime-v2/adversarial-loop.js.map +1 -1
  33. package/dist/runtime-v2/agent-spec.d.ts +0 -1
  34. package/dist/runtime-v2/agent-spec.d.ts.map +1 -1
  35. package/dist/runtime-v2/agent-spec.js +3 -1
  36. package/dist/runtime-v2/agent-spec.js.map +1 -1
  37. package/dist/runtime-v2/config/__tests__/internal-agent-names.test.js +3 -1
  38. package/dist/runtime-v2/config/__tests__/internal-agent-names.test.js.map +1 -1
  39. package/dist/runtime-v2/config/__tests__/pd-config-agent-binding.test.js +0 -7
  40. package/dist/runtime-v2/config/__tests__/pd-config-agent-binding.test.js.map +1 -1
  41. package/dist/runtime-v2/config/__tests__/pd-config-context-injection.test.js +0 -1
  42. package/dist/runtime-v2/config/__tests__/pd-config-context-injection.test.js.map +1 -1
  43. package/dist/runtime-v2/config/__tests__/pd-config-contract.test.js +0 -1
  44. package/dist/runtime-v2/config/__tests__/pd-config-contract.test.js.map +1 -1
  45. package/dist/runtime-v2/config/__tests__/pd-config-principles.test.js +0 -1
  46. package/dist/runtime-v2/config/__tests__/pd-config-principles.test.js.map +1 -1
  47. package/dist/runtime-v2/config/__tests__/pd-config-reasoning.test.js +0 -1
  48. package/dist/runtime-v2/config/__tests__/pd-config-reasoning.test.js.map +1 -1
  49. package/dist/runtime-v2/config/__tests__/pd-config-redaction-deep.test.js +0 -1
  50. package/dist/runtime-v2/config/__tests__/pd-config-redaction-deep.test.js.map +1 -1
  51. package/dist/runtime-v2/config/__tests__/pd-config-validation-edge-cases.test.js +61 -1
  52. package/dist/runtime-v2/config/__tests__/pd-config-validation-edge-cases.test.js.map +1 -1
  53. package/dist/runtime-v2/config/pd-config-defaults.d.ts.map +1 -1
  54. package/dist/runtime-v2/config/pd-config-defaults.js +0 -1
  55. package/dist/runtime-v2/config/pd-config-defaults.js.map +1 -1
  56. package/dist/runtime-v2/config/pd-config-types.d.ts +1 -1
  57. package/dist/runtime-v2/config/pd-config-types.d.ts.map +1 -1
  58. package/dist/runtime-v2/config/pd-config-types.js +0 -1
  59. package/dist/runtime-v2/config/pd-config-types.js.map +1 -1
  60. package/dist/runtime-v2/config/pd-config-validate.d.ts.map +1 -1
  61. package/dist/runtime-v2/config/pd-config-validate.js +20 -1
  62. package/dist/runtime-v2/config/pd-config-validate.js.map +1 -1
  63. package/dist/runtime-v2/evidence-sanitizer.d.ts +17 -2
  64. package/dist/runtime-v2/evidence-sanitizer.d.ts.map +1 -1
  65. package/dist/runtime-v2/evidence-sanitizer.js +80 -11
  66. package/dist/runtime-v2/evidence-sanitizer.js.map +1 -1
  67. package/dist/runtime-v2/feature-flags/__tests__/feature-flag-contract.test.js +3 -3
  68. package/dist/runtime-v2/feature-flags/__tests__/feature-flag-contract.test.js.map +1 -1
  69. package/dist/runtime-v2/feature-flags/feature-flag-contract.d.ts.map +1 -1
  70. package/dist/runtime-v2/feature-flags/feature-flag-contract.js +11 -40
  71. package/dist/runtime-v2/feature-flags/feature-flag-contract.js.map +1 -1
  72. package/dist/runtime-v2/feature-flags/feature-flag-lifecycle.d.ts.map +1 -1
  73. package/dist/runtime-v2/feature-flags/feature-flag-lifecycle.js +6 -40
  74. package/dist/runtime-v2/feature-flags/feature-flag-lifecycle.js.map +1 -1
  75. package/dist/runtime-v2/index.d.ts +9 -6
  76. package/dist/runtime-v2/index.d.ts.map +1 -1
  77. package/dist/runtime-v2/index.js +12 -5
  78. package/dist/runtime-v2/index.js.map +1 -1
  79. package/dist/runtime-v2/internalization/__tests__/artificer-prompt-builder-v2.test.js +49 -0
  80. package/dist/runtime-v2/internalization/__tests__/artificer-prompt-builder-v2.test.js.map +1 -1
  81. package/dist/runtime-v2/internalization/__tests__/artificer-prompt-builder.test.js +64 -29
  82. package/dist/runtime-v2/internalization/__tests__/artificer-prompt-builder.test.js.map +1 -1
  83. package/dist/runtime-v2/internalization/__tests__/diag-chain-e2e.test.js +0 -1
  84. package/dist/runtime-v2/internalization/__tests__/diag-chain-e2e.test.js.map +1 -1
  85. package/dist/runtime-v2/internalization/__tests__/diag-router-runner.test.js +2 -2
  86. package/dist/runtime-v2/internalization/__tests__/diag-router-runner.test.js.map +1 -1
  87. package/dist/runtime-v2/internalization/__tests__/evaluator-artificer-repair-replay.test.js +2 -13
  88. package/dist/runtime-v2/internalization/__tests__/evaluator-artificer-repair-replay.test.js.map +1 -1
  89. package/dist/runtime-v2/internalization/__tests__/evaluator-chinese-feedback-contract.test.js +1 -5
  90. package/dist/runtime-v2/internalization/__tests__/evaluator-chinese-feedback-contract.test.js.map +1 -1
  91. package/dist/runtime-v2/internalization/__tests__/evaluator-gate-authority.test.js +5 -13
  92. package/dist/runtime-v2/internalization/__tests__/evaluator-gate-authority.test.js.map +1 -1
  93. package/dist/runtime-v2/internalization/__tests__/evaluator-out-of-scope-governance.test.js +1 -5
  94. package/dist/runtime-v2/internalization/__tests__/evaluator-out-of-scope-governance.test.js.map +1 -1
  95. package/dist/runtime-v2/internalization/__tests__/external-review-p0-regressions.test.js +1 -1
  96. package/dist/runtime-v2/internalization/__tests__/external-review-p0-regressions.test.js.map +1 -1
  97. package/dist/runtime-v2/internalization/__tests__/formation-context.test.d.ts +2 -0
  98. package/dist/runtime-v2/internalization/__tests__/formation-context.test.d.ts.map +1 -0
  99. package/dist/runtime-v2/internalization/__tests__/formation-context.test.js +428 -0
  100. package/dist/runtime-v2/internalization/__tests__/formation-context.test.js.map +1 -0
  101. package/dist/runtime-v2/internalization/__tests__/scribe-prompt-builder.test.js +97 -0
  102. package/dist/runtime-v2/internalization/__tests__/scribe-prompt-builder.test.js.map +1 -1
  103. package/dist/runtime-v2/internalization/__tests__/split-diagnostician-runner-retry.test.js +61 -0
  104. package/dist/runtime-v2/internalization/__tests__/split-diagnostician-runner-retry.test.js.map +1 -1
  105. package/dist/runtime-v2/internalization/artifact-summary.d.ts +11 -0
  106. package/dist/runtime-v2/internalization/artifact-summary.d.ts.map +1 -1
  107. package/dist/runtime-v2/internalization/artifact-summary.js.map +1 -1
  108. package/dist/runtime-v2/internalization/artificer-prompt-builder.d.ts +67 -15
  109. package/dist/runtime-v2/internalization/artificer-prompt-builder.d.ts.map +1 -1
  110. package/dist/runtime-v2/internalization/artificer-prompt-builder.js +119 -4
  111. package/dist/runtime-v2/internalization/artificer-prompt-builder.js.map +1 -1
  112. package/dist/runtime-v2/internalization/artificer-runner.d.ts +12 -0
  113. package/dist/runtime-v2/internalization/artificer-runner.d.ts.map +1 -1
  114. package/dist/runtime-v2/internalization/artificer-runner.js +102 -158
  115. package/dist/runtime-v2/internalization/artificer-runner.js.map +1 -1
  116. package/dist/runtime-v2/internalization/diag-distiller-runner.d.ts +1 -1
  117. package/dist/runtime-v2/internalization/diag-distiller-runner.d.ts.map +1 -1
  118. package/dist/runtime-v2/internalization/diag-distiller-runner.js +2 -19
  119. package/dist/runtime-v2/internalization/diag-distiller-runner.js.map +1 -1
  120. package/dist/runtime-v2/internalization/diag-rootcause-runner.d.ts.map +1 -1
  121. package/dist/runtime-v2/internalization/diag-rootcause-runner.js +1 -5
  122. package/dist/runtime-v2/internalization/diag-rootcause-runner.js.map +1 -1
  123. package/dist/runtime-v2/internalization/diag-router-runner.d.ts +1 -1
  124. package/dist/runtime-v2/internalization/diag-router-runner.d.ts.map +1 -1
  125. package/dist/runtime-v2/internalization/diag-router-runner.js +9 -32
  126. package/dist/runtime-v2/internalization/diag-router-runner.js.map +1 -1
  127. package/dist/runtime-v2/internalization/dreamer-runner.d.ts +1 -9
  128. package/dist/runtime-v2/internalization/dreamer-runner.d.ts.map +1 -1
  129. package/dist/runtime-v2/internalization/dreamer-runner.js +4 -35
  130. package/dist/runtime-v2/internalization/dreamer-runner.js.map +1 -1
  131. package/dist/runtime-v2/internalization/evaluator-runner.d.ts +3 -54
  132. package/dist/runtime-v2/internalization/evaluator-runner.d.ts.map +1 -1
  133. package/dist/runtime-v2/internalization/evaluator-runner.js +37 -230
  134. package/dist/runtime-v2/internalization/evaluator-runner.js.map +1 -1
  135. package/dist/runtime-v2/internalization/formation-context.d.ts +208 -0
  136. package/dist/runtime-v2/internalization/formation-context.d.ts.map +1 -0
  137. package/dist/runtime-v2/internalization/formation-context.js +621 -0
  138. package/dist/runtime-v2/internalization/formation-context.js.map +1 -0
  139. package/dist/runtime-v2/internalization/index.d.ts +0 -2
  140. package/dist/runtime-v2/internalization/index.d.ts.map +1 -1
  141. package/dist/runtime-v2/internalization/index.js +0 -2
  142. package/dist/runtime-v2/internalization/index.js.map +1 -1
  143. package/dist/runtime-v2/internalization/philosopher-runner.d.ts.map +1 -1
  144. package/dist/runtime-v2/internalization/philosopher-runner.js +1 -25
  145. package/dist/runtime-v2/internalization/philosopher-runner.js.map +1 -1
  146. package/dist/runtime-v2/internalization/refiner-sandbox-wrapper.d.ts.map +1 -1
  147. package/dist/runtime-v2/internalization/refiner-sandbox-wrapper.js +25 -1
  148. package/dist/runtime-v2/internalization/refiner-sandbox-wrapper.js.map +1 -1
  149. package/dist/runtime-v2/internalization/scribe-prompt-builder.d.ts +53 -1
  150. package/dist/runtime-v2/internalization/scribe-prompt-builder.d.ts.map +1 -1
  151. package/dist/runtime-v2/internalization/scribe-prompt-builder.js +65 -3
  152. package/dist/runtime-v2/internalization/scribe-prompt-builder.js.map +1 -1
  153. package/dist/runtime-v2/internalization/scribe-runner.d.ts +17 -0
  154. package/dist/runtime-v2/internalization/scribe-runner.d.ts.map +1 -1
  155. package/dist/runtime-v2/internalization/scribe-runner.js +58 -40
  156. package/dist/runtime-v2/internalization/scribe-runner.js.map +1 -1
  157. package/dist/runtime-v2/internalization/split-diagnostician-runner.d.ts.map +1 -1
  158. package/dist/runtime-v2/internalization/split-diagnostician-runner.js +13 -2
  159. package/dist/runtime-v2/internalization/split-diagnostician-runner.js.map +1 -1
  160. package/dist/runtime-v2/internalization/v2-adversarial-cases.d.ts.map +1 -1
  161. package/dist/runtime-v2/internalization/v2-adversarial-cases.js +25 -2
  162. package/dist/runtime-v2/internalization/v2-adversarial-cases.js.map +1 -1
  163. package/dist/runtime-v2/observer/__tests__/agent-scheduler.test.js +31 -21
  164. package/dist/runtime-v2/observer/__tests__/agent-scheduler.test.js.map +1 -1
  165. package/dist/runtime-v2/observer/agent-scheduler.d.ts +0 -5
  166. package/dist/runtime-v2/observer/agent-scheduler.d.ts.map +1 -1
  167. package/dist/runtime-v2/owner-decision/__tests__/owner-decision-view.test.d.ts +2 -0
  168. package/dist/runtime-v2/owner-decision/__tests__/owner-decision-view.test.d.ts.map +1 -0
  169. package/dist/runtime-v2/owner-decision/__tests__/owner-decision-view.test.js +559 -0
  170. package/dist/runtime-v2/owner-decision/__tests__/owner-decision-view.test.js.map +1 -0
  171. package/dist/runtime-v2/owner-decision/owner-decision-view-contract.d.ts +7868 -0
  172. package/dist/runtime-v2/owner-decision/owner-decision-view-contract.d.ts.map +1 -0
  173. package/dist/runtime-v2/owner-decision/owner-decision-view-contract.js +367 -0
  174. package/dist/runtime-v2/owner-decision/owner-decision-view-contract.js.map +1 -0
  175. package/dist/runtime-v2/owner-decision/owner-decision-view.d.ts +415 -0
  176. package/dist/runtime-v2/owner-decision/owner-decision-view.d.ts.map +1 -0
  177. package/dist/runtime-v2/owner-decision/owner-decision-view.js +856 -0
  178. package/dist/runtime-v2/owner-decision/owner-decision-view.js.map +1 -0
  179. package/dist/runtime-v2/owner-decision/semantic-selector.d.ts +72 -0
  180. package/dist/runtime-v2/owner-decision/semantic-selector.d.ts.map +1 -0
  181. package/dist/runtime-v2/owner-decision/semantic-selector.js +176 -0
  182. package/dist/runtime-v2/owner-decision/semantic-selector.js.map +1 -0
  183. package/dist/runtime-v2/runner/base-peer-runner.d.ts +0 -125
  184. package/dist/runtime-v2/runner/base-peer-runner.d.ts.map +1 -1
  185. package/dist/runtime-v2/runner/base-peer-runner.js +0 -323
  186. package/dist/runtime-v2/runner/base-peer-runner.js.map +1 -1
  187. package/dist/runtime-v2/runner/peer-runner-types.d.ts +0 -12
  188. package/dist/runtime-v2/runner/peer-runner-types.d.ts.map +1 -1
  189. package/dist/runtime-v2/signal-collector/types.d.ts +0 -12
  190. package/dist/runtime-v2/signal-collector/types.d.ts.map +1 -1
  191. package/dist/runtime-v2/signal-collector/types.js.map +1 -1
  192. package/dist/runtime-v2/tools/artificer-l2-tool-contract.d.ts.map +1 -1
  193. package/dist/runtime-v2/tools/artificer-l2-tool-contract.js +10 -0
  194. package/dist/runtime-v2/tools/artificer-l2-tool-contract.js.map +1 -1
  195. package/dist/runtime-v2/types/event-types.d.ts +9 -0
  196. package/dist/runtime-v2/types/event-types.d.ts.map +1 -1
  197. package/dist/runtime-v2/types/event-types.js +12 -0
  198. package/dist/runtime-v2/types/event-types.js.map +1 -1
  199. package/dist/telemetry-event.d.ts +2 -2
  200. package/dist/telemetry-event.d.ts.map +1 -1
  201. package/dist/telemetry-event.js +7 -84
  202. package/dist/telemetry-event.js.map +1 -1
  203. package/package.json +1 -1
  204. package/dist/runtime-v2/feature-flags/__tests__/artifact-summary-redundancy-flag.test.d.ts +0 -15
  205. package/dist/runtime-v2/feature-flags/__tests__/artifact-summary-redundancy-flag.test.d.ts.map +0 -1
  206. package/dist/runtime-v2/feature-flags/__tests__/artifact-summary-redundancy-flag.test.js +0 -90
  207. package/dist/runtime-v2/feature-flags/__tests__/artifact-summary-redundancy-flag.test.js.map +0 -1
  208. package/dist/runtime-v2/feature-flags/__tests__/context-manifest-budget-flag.test.d.ts +0 -12
  209. package/dist/runtime-v2/feature-flags/__tests__/context-manifest-budget-flag.test.d.ts.map +0 -1
  210. package/dist/runtime-v2/feature-flags/__tests__/context-manifest-budget-flag.test.js +0 -117
  211. package/dist/runtime-v2/feature-flags/__tests__/context-manifest-budget-flag.test.js.map +0 -1
  212. package/dist/runtime-v2/feature-flags/__tests__/progressive-evaluator-flag.test.d.ts +0 -8
  213. package/dist/runtime-v2/feature-flags/__tests__/progressive-evaluator-flag.test.d.ts.map +0 -1
  214. package/dist/runtime-v2/feature-flags/__tests__/progressive-evaluator-flag.test.js +0 -56
  215. package/dist/runtime-v2/feature-flags/__tests__/progressive-evaluator-flag.test.js.map +0 -1
  216. package/dist/runtime-v2/internalization/__tests__/candidate-lineage.pri717.test.d.ts +0 -26
  217. package/dist/runtime-v2/internalization/__tests__/candidate-lineage.pri717.test.d.ts.map +0 -1
  218. package/dist/runtime-v2/internalization/__tests__/candidate-lineage.pri717.test.js +0 -420
  219. package/dist/runtime-v2/internalization/__tests__/candidate-lineage.pri717.test.js.map +0 -1
  220. package/dist/runtime-v2/internalization/__tests__/candidate-lineage.property.test.d.ts +0 -15
  221. package/dist/runtime-v2/internalization/__tests__/candidate-lineage.property.test.d.ts.map +0 -1
  222. package/dist/runtime-v2/internalization/__tests__/candidate-lineage.property.test.js +0 -306
  223. package/dist/runtime-v2/internalization/__tests__/candidate-lineage.property.test.js.map +0 -1
  224. package/dist/runtime-v2/internalization/__tests__/context-manifest.property.test.d.ts +0 -12
  225. package/dist/runtime-v2/internalization/__tests__/context-manifest.property.test.d.ts.map +0 -1
  226. package/dist/runtime-v2/internalization/__tests__/context-manifest.property.test.js +0 -176
  227. package/dist/runtime-v2/internalization/__tests__/context-manifest.property.test.js.map +0 -1
  228. package/dist/runtime-v2/internalization/__tests__/context-resolution.test.d.ts +0 -2
  229. package/dist/runtime-v2/internalization/__tests__/context-resolution.test.d.ts.map +0 -1
  230. package/dist/runtime-v2/internalization/__tests__/context-resolution.test.js +0 -377
  231. package/dist/runtime-v2/internalization/__tests__/context-resolution.test.js.map +0 -1
  232. package/dist/runtime-v2/internalization/__tests__/progressive-disclosure-scope-regression.test.d.ts +0 -22
  233. package/dist/runtime-v2/internalization/__tests__/progressive-disclosure-scope-regression.test.d.ts.map +0 -1
  234. package/dist/runtime-v2/internalization/__tests__/progressive-disclosure-scope-regression.test.js +0 -92
  235. package/dist/runtime-v2/internalization/__tests__/progressive-disclosure-scope-regression.test.js.map +0 -1
  236. package/dist/runtime-v2/internalization/__tests__/progressive-disclosure-spike.test.d.ts +0 -2
  237. package/dist/runtime-v2/internalization/__tests__/progressive-disclosure-spike.test.d.ts.map +0 -1
  238. package/dist/runtime-v2/internalization/__tests__/progressive-disclosure-spike.test.js +0 -1039
  239. package/dist/runtime-v2/internalization/__tests__/progressive-disclosure-spike.test.js.map +0 -1
  240. package/dist/runtime-v2/internalization/__tests__/progressive-evaluator-stage-isolation.property.test.d.ts +0 -13
  241. package/dist/runtime-v2/internalization/__tests__/progressive-evaluator-stage-isolation.property.test.d.ts.map +0 -1
  242. package/dist/runtime-v2/internalization/__tests__/progressive-evaluator-stage-isolation.property.test.js +0 -257
  243. package/dist/runtime-v2/internalization/__tests__/progressive-evaluator-stage-isolation.property.test.js.map +0 -1
  244. package/dist/runtime-v2/internalization/__tests__/progressive-evaluator.property.test.d.ts +0 -11
  245. package/dist/runtime-v2/internalization/__tests__/progressive-evaluator.property.test.d.ts.map +0 -1
  246. package/dist/runtime-v2/internalization/__tests__/progressive-evaluator.property.test.js +0 -154
  247. package/dist/runtime-v2/internalization/__tests__/progressive-evaluator.property.test.js.map +0 -1
  248. package/dist/runtime-v2/internalization/__tests__/prompt-budget-manager.property.test.d.ts +0 -12
  249. package/dist/runtime-v2/internalization/__tests__/prompt-budget-manager.property.test.d.ts.map +0 -1
  250. package/dist/runtime-v2/internalization/__tests__/prompt-budget-manager.property.test.js +0 -254
  251. package/dist/runtime-v2/internalization/__tests__/prompt-budget-manager.property.test.js.map +0 -1
  252. package/dist/runtime-v2/internalization/__tests__/resolve-injection.property.test.d.ts +0 -15
  253. package/dist/runtime-v2/internalization/__tests__/resolve-injection.property.test.d.ts.map +0 -1
  254. package/dist/runtime-v2/internalization/__tests__/resolve-injection.property.test.js +0 -150
  255. package/dist/runtime-v2/internalization/__tests__/resolve-injection.property.test.js.map +0 -1
  256. package/dist/runtime-v2/internalization/__tests__/shared-information-plane-runner.test.d.ts +0 -2
  257. package/dist/runtime-v2/internalization/__tests__/shared-information-plane-runner.test.d.ts.map +0 -1
  258. package/dist/runtime-v2/internalization/__tests__/shared-information-plane-runner.test.js +0 -773
  259. package/dist/runtime-v2/internalization/__tests__/shared-information-plane-runner.test.js.map +0 -1
  260. package/dist/runtime-v2/internalization/__tests__/summary-chain-flow.property.test.d.ts +0 -22
  261. package/dist/runtime-v2/internalization/__tests__/summary-chain-flow.property.test.d.ts.map +0 -1
  262. package/dist/runtime-v2/internalization/__tests__/summary-chain-flow.property.test.js +0 -280
  263. package/dist/runtime-v2/internalization/__tests__/summary-chain-flow.property.test.js.map +0 -1
  264. package/dist/runtime-v2/internalization/__tests__/summary-envelope-writer.property.test.d.ts +0 -25
  265. package/dist/runtime-v2/internalization/__tests__/summary-envelope-writer.property.test.d.ts.map +0 -1
  266. package/dist/runtime-v2/internalization/__tests__/summary-envelope-writer.property.test.js +0 -413
  267. package/dist/runtime-v2/internalization/__tests__/summary-envelope-writer.property.test.js.map +0 -1
  268. package/dist/runtime-v2/internalization/attach-summary-envelope.d.ts +0 -60
  269. package/dist/runtime-v2/internalization/attach-summary-envelope.d.ts.map +0 -1
  270. package/dist/runtime-v2/internalization/attach-summary-envelope.js +0 -126
  271. package/dist/runtime-v2/internalization/attach-summary-envelope.js.map +0 -1
  272. package/dist/runtime-v2/internalization/candidate-lineage.d.ts +0 -185
  273. package/dist/runtime-v2/internalization/candidate-lineage.d.ts.map +0 -1
  274. package/dist/runtime-v2/internalization/candidate-lineage.js +0 -357
  275. package/dist/runtime-v2/internalization/candidate-lineage.js.map +0 -1
  276. package/dist/runtime-v2/internalization/context-manifest.d.ts +0 -117
  277. package/dist/runtime-v2/internalization/context-manifest.d.ts.map +0 -1
  278. package/dist/runtime-v2/internalization/context-manifest.js +0 -156
  279. package/dist/runtime-v2/internalization/context-manifest.js.map +0 -1
  280. package/dist/runtime-v2/internalization/context-manifests.d.ts +0 -148
  281. package/dist/runtime-v2/internalization/context-manifests.d.ts.map +0 -1
  282. package/dist/runtime-v2/internalization/context-manifests.js +0 -323
  283. package/dist/runtime-v2/internalization/context-manifests.js.map +0 -1
  284. package/dist/runtime-v2/internalization/context-resolution.d.ts +0 -189
  285. package/dist/runtime-v2/internalization/context-resolution.d.ts.map +0 -1
  286. package/dist/runtime-v2/internalization/context-resolution.js +0 -317
  287. package/dist/runtime-v2/internalization/context-resolution.js.map +0 -1
  288. package/dist/runtime-v2/internalization/progressive-evaluator.d.ts +0 -115
  289. package/dist/runtime-v2/internalization/progressive-evaluator.d.ts.map +0 -1
  290. package/dist/runtime-v2/internalization/progressive-evaluator.js +0 -248
  291. package/dist/runtime-v2/internalization/progressive-evaluator.js.map +0 -1
  292. package/dist/runtime-v2/internalization/prompt-budget-manager.d.ts +0 -90
  293. package/dist/runtime-v2/internalization/prompt-budget-manager.d.ts.map +0 -1
  294. package/dist/runtime-v2/internalization/prompt-budget-manager.js +0 -149
  295. package/dist/runtime-v2/internalization/prompt-budget-manager.js.map +0 -1
  296. package/dist/runtime-v2/internalization/resolve-injection.d.ts +0 -62
  297. package/dist/runtime-v2/internalization/resolve-injection.d.ts.map +0 -1
  298. package/dist/runtime-v2/internalization/resolve-injection.js +0 -78
  299. package/dist/runtime-v2/internalization/resolve-injection.js.map +0 -1
  300. package/dist/runtime-v2/internalization/summary-field-reader.d.ts +0 -38
  301. package/dist/runtime-v2/internalization/summary-field-reader.d.ts.map +0 -1
  302. package/dist/runtime-v2/internalization/summary-field-reader.js +0 -108
  303. package/dist/runtime-v2/internalization/summary-field-reader.js.map +0 -1
  304. package/dist/runtime-v2/observer/__tests__/empathy-observer.real-e2e.test.d.ts +0 -2
  305. package/dist/runtime-v2/observer/__tests__/empathy-observer.real-e2e.test.d.ts.map +0 -1
  306. package/dist/runtime-v2/observer/__tests__/empathy-observer.real-e2e.test.js +0 -74
  307. package/dist/runtime-v2/observer/__tests__/empathy-observer.real-e2e.test.js.map +0 -1
  308. package/dist/runtime-v2/observer/__tests__/empathy-observer.test.d.ts +0 -2
  309. package/dist/runtime-v2/observer/__tests__/empathy-observer.test.d.ts.map +0 -1
  310. package/dist/runtime-v2/observer/__tests__/empathy-observer.test.js +0 -85
  311. package/dist/runtime-v2/observer/__tests__/empathy-observer.test.js.map +0 -1
  312. package/dist/runtime-v2/observer/empathy-observer.d.ts +0 -41
  313. package/dist/runtime-v2/observer/empathy-observer.d.ts.map +0 -1
  314. package/dist/runtime-v2/observer/empathy-observer.js +0 -104
  315. package/dist/runtime-v2/observer/empathy-observer.js.map +0 -1
@@ -1,317 +0,0 @@
1
- /**
2
- * Shared Information Plane — context resolution composition (design §6.4/§6.6).
3
- *
4
- * Pure logic only: no I/O, no fs, no DB, no network (Core vs Plugin boundary,
5
- * AGENTS.md `antipattern-core-io`).
6
- *
7
- * This module is the seam that turns three independent fact-acquisition
8
- * channels into ONE `available` map consumed by `resolveInjection`:
9
- *
10
- * 1. predecessor summary envelope → `summary-field-reader` (pure, Layer 1)
11
- * 2. ancestry content → `CandidateLineage` nodes (Layer 2; the
12
- * traversal/I/O is owned by the caller).
13
- * Serves BOTH `<stage>.raw.*` and
14
- * `<stage>.summary.*` for any ancestor.
15
- * 3. related references → explicit caller-provided sources
16
- * (e.g. the PR-A replay evidence), which
17
- * are causal references — NOT ancestry
18
- *
19
- * Why three channels stay separate at acquisition but merge at composition
20
- * (design §33 / INV-LINEAGE-SCOPE): `lineageArtifactIds` expresses *content
21
- * ancestry*; a repair's `sourceEvaluatorTaskId` expresses *causal reference*.
22
- * Collapsing them into one data structure would silently redefine what
23
- * "lineage" means. They are unified at read time, never at write time.
24
- *
25
- * rc-1/rc-5: every source `contentJson` stays `unknown`; all reads use
26
- * `Object.hasOwn` + typeof/Array.isArray guards — no `as` casts.
27
- */
28
- import { readSummaryField } from './summary-field-reader.js';
29
- import { deriveArtifactSummary, SUMMARY_RUNNER_KINDS, } from './artifact-summary.js';
30
- /**
31
- * Split a manifest field path into namespace / layer / rest.
32
- * Returns null for paths that do not follow the grammar (e.g. malformed,
33
- * too short) so callers can skip them instead of throwing.
34
- */
35
- export function parseContextPath(fieldPath) {
36
- const parts = fieldPath.split('.');
37
- if (parts.length < 3)
38
- return null;
39
- const [namespace, layer] = parts;
40
- const rest = parts.slice(2);
41
- if (namespace === undefined || namespace === '')
42
- return null;
43
- if (layer !== 'raw' && layer !== 'summary' && layer !== 'predecessorSummary')
44
- return null;
45
- if (rest.length === 0 || rest.some((segment) => segment === ''))
46
- return null;
47
- return { namespace, layer, rest };
48
- }
49
- // ── Pure raw field reader (design §16–§18) ──────────────────────────────────
50
- /**
51
- * Keys that must never be traversed: reading them is how prototype pollution
52
- * enters a context map. Rejected at every segment, not just the first.
53
- */
54
- const FORBIDDEN_SEGMENTS = new Set([
55
- '__proto__',
56
- 'constructor',
57
- 'prototype',
58
- ]);
59
- function isRecord(value) {
60
- return value !== null && typeof value === 'object' && !Array.isArray(value);
61
- }
62
- /** A dotted segment addressing an array element, e.g. `0` in `candidates.0`. */
63
- const ARRAY_INDEX = /^(0|[1-9][0-9]*)$/;
64
- /**
65
- * Read a dotted path out of an untrusted contentJson (rc-1/rc-5).
66
- *
67
- * Supports array element addressing via numeric segments
68
- * (`candidates.0.betterDecision`) because several durable artifacts nest their
69
- * semantic payload under an array (DreamerOutput.candidates). No I/O, no
70
- * lineage traversal, no manifest knowledge — it only walks a path.
71
- *
72
- * Returns undefined for: non-object intermediates, missing own properties,
73
- * out-of-range or non-numeric array access, and forbidden keys.
74
- */
75
- export function readRawField(rawPath, contentJson) {
76
- let current = contentJson;
77
- for (const segment of rawPath) {
78
- if (FORBIDDEN_SEGMENTS.has(segment))
79
- return undefined;
80
- if (Array.isArray(current)) {
81
- if (!ARRAY_INDEX.test(segment))
82
- return undefined;
83
- if (!Object.hasOwn(current, segment))
84
- return undefined;
85
- current = current[Number(segment)];
86
- continue;
87
- }
88
- if (!isRecord(current))
89
- return undefined;
90
- if (!Object.hasOwn(current, segment))
91
- return undefined;
92
- current = current[segment];
93
- }
94
- return current;
95
- }
96
- // ── Channel 2: ancestry raw resolution (CandidateLineage) ───────────────────
97
- /**
98
- * A manifest NAMESPACE is a *semantic* stage; a lineage node's stage is the
99
- * *producer taskKind* (two-hop F1). Explicit fixed mapping — never fuzzy:
100
- *
101
- * diagnostician → the manifest addresses the final diagnosis artifact
102
- * (DiagnosticianOutputV1). Its canonical producer on the DEFAULT split
103
- * pipeline is taskKind `diag_router` (SplitDiagnosticianRunner stage C);
104
- * the legacy monolithic runner committed the identical output contract
105
- * under taskKind `diagnostician`. Both must resolve the same namespace.
106
- *
107
- * Adding an alias here is a contract change — the resolver's nearest-match
108
- * then accepts the listed producer kinds for that namespace.
109
- */
110
- export const SEMANTIC_STAGE_ALIASES = {
111
- diagnostician: ['diagnostician', 'diag_router'],
112
- };
113
- /**
114
- * Producer taskKind used for the read-time summary projection (below).
115
- * `diagnostician` is NOT a SummaryRunnerKind, but its output is byte-for-byte
116
- * the diag_router contract, so the derivation reuses the diag_router resolver.
117
- */
118
- const SUMMARY_DERIVATION_STAGE = {
119
- diagnostician: 'diag_router',
120
- };
121
- /**
122
- * Read `<stage>.summary.<key>` from an ancestry node, with a bounded
123
- * read-time projection fallback.
124
- *
125
- * Why the fallback exists (review round): the writer-side envelope for diag
126
- * outputs is SKIPPED (`output_summary_key_collision`, base-peer-runner) —
127
- * DiagnosticianOutputV1 owns a top-level `summary` STRING that the Layer 0
128
- * envelope must not overwrite. So `diagnostician.summary.rootSymptom` /
129
- * `category` would be structurally absent forever. The fields are derivable
130
- * from the unchanged durable output via the SAME derivation the writer would
131
- * have used (`deriveArtifactSummary`, pure, no I/O), so the read side applies
132
- * it as a bounded projection. Deterministic: same output → same fields. Only
133
- * fires when the direct envelope read misses; still-absent → `absent` floor.
134
- */
135
- function readSummaryWithProjection(fieldPath, stage, contentJson) {
136
- const direct = readSummaryField(fieldPath, contentJson);
137
- if (direct !== undefined)
138
- return direct;
139
- if (!isRecord(contentJson))
140
- return undefined;
141
- const derivationStage = SUMMARY_DERIVATION_STAGE[stage]
142
- ?? (SUMMARY_RUNNER_KINDS.includes(stage) ? stage : undefined);
143
- if (derivationStage === undefined)
144
- return undefined;
145
- const derived = deriveArtifactSummary(derivationStage, contentJson);
146
- if (!derived.ok)
147
- return undefined;
148
- const parsed = parseContextPath(fieldPath);
149
- if (parsed === null)
150
- return undefined;
151
- const [key] = parsed.rest;
152
- if (key === undefined || FORBIDDEN_SEGMENTS.has(key))
153
- return undefined;
154
- if (key === 'headline')
155
- return derived.value.headline;
156
- if (!Object.hasOwn(derived.value.fields, key))
157
- return undefined;
158
- return derived.value.fields[key];
159
- }
160
- /**
161
- * Convert CandidateLineage nodes into raw stage sources.
162
- *
163
- * Order is preserved, which is what makes stage selection deterministic:
164
- * `CandidateLineage.resolve` walks BFS from the start artifact, so the FIRST
165
- * node matching a stage is the NEAREST ancestor (design §20). Later duplicates
166
- * are ignored — never a positional/arbitrary pick.
167
- *
168
- * Nodes whose stage could not be determined (`taskKind === 'unknown'`) carry no
169
- * stage authority and are dropped.
170
- */
171
- export function toRawStageSources(nodes) {
172
- const sources = [];
173
- for (const node of nodes) {
174
- if (node.taskKind === 'unknown' || node.taskKind === '')
175
- continue;
176
- sources.push({ stage: node.taskKind, contentJson: node.contentJson });
177
- }
178
- return sources;
179
- }
180
- /**
181
- * Split a manifest's tier2 into (ancestry raw paths, related raw paths).
182
- *
183
- * Related namespaces are excluded from the ancestry walk explicitly: a related
184
- * reference is a causal pointer supplied by the caller, so it must never be
185
- * mistaken for an ancestor stage — even if a taskKind happened to share the
186
- * name. This is the executable form of INV-LINEAGE-SCOPE (design §33).
187
- */
188
- export function partitionTier2Paths(tier2Paths, relatedNamespaces) {
189
- const related = new Set(relatedNamespaces);
190
- const ancestry = [];
191
- const relatedPaths = [];
192
- for (const fieldPath of tier2Paths) {
193
- const parsed = parseContextPath(fieldPath);
194
- if (parsed !== null && parsed.layer === 'raw' && related.has(parsed.namespace)) {
195
- relatedPaths.push(fieldPath);
196
- continue;
197
- }
198
- ancestry.push(fieldPath);
199
- }
200
- return { ancestry, related: relatedPaths };
201
- }
202
- /**
203
- * Resolve ancestor-declared paths against ancestry sources — BOTH layers:
204
- *
205
- * `<stage>.raw.<dotted.path>` — full contentJson walk (`readRawField`)
206
- * `<stage>.summary.<key>` — the ancestor's own Layer 0 envelope
207
- * (`readSummaryField`)
208
- *
209
- * Why the summary layer needs the ancestry channel too (PR B, evidence-backed):
210
- * `readSummaryField` deliberately STRIPS the leading `<stage>.` namespace and
211
- * reads only its single `predecessorContentJson`. That convention is correct
212
- * for manifests whose stage namespace is the runner's direct predecessor
213
- * (dreamer/scribe/artificer), but a manifest that names an ancestor further up
214
- * the chain (the Evaluator's `scribe.*` / `dreamer.*` / `diagnostician.*`)
215
- * would otherwise have those paths structurally unreachable — they would land
216
- * in `absent` forever and force the information-floor fallback on every run.
217
- * The lineage walk already holds every ancestor's contentJson, so the same
218
- * traversal that serves `raw` also serves `summary`, with no extra store read.
219
- *
220
- * First (nearest) matching stage wins; unresolvable paths are omitted so the
221
- * caller's information-floor logic records them in `absent`.
222
- *
223
- * `predecessorSummary` is intentionally NOT answered here: it is the
224
- * direct-predecessor forwarding concept owned by Channel 1.
225
- *
226
- * Namespace → node matching honors `SEMANTIC_STAGE_ALIASES`: a manifest
227
- * namespace is the SEMANTIC stage, a node's stage is the producer taskKind.
228
- */
229
- export function resolveAncestryPaths(fieldPaths, sources) {
230
- const resolved = new Map();
231
- for (const fieldPath of fieldPaths) {
232
- const parsed = parseContextPath(fieldPath);
233
- if (parsed === null)
234
- continue;
235
- if (parsed.layer === 'predecessorSummary')
236
- continue;
237
- const producerStages = [
238
- parsed.namespace,
239
- ...(SEMANTIC_STAGE_ALIASES[parsed.namespace] ?? []),
240
- ];
241
- const source = sources.find((candidate) => producerStages.includes(candidate.stage));
242
- if (source === undefined)
243
- continue;
244
- const value = parsed.layer === 'raw'
245
- ? readRawField(parsed.rest, source.contentJson)
246
- : readSummaryWithProjection(fieldPath, source.stage, source.contentJson);
247
- if (value !== undefined)
248
- resolved.set(fieldPath, value);
249
- }
250
- return resolved;
251
- }
252
- /**
253
- * Resolve `<ns>.summary.<key>` / `<ns>.raw.<key>` against related sources.
254
- * Related refs expose flat keys only — a multi-segment rest path is not a
255
- * related reference and is skipped (it belongs to the ancestry reader).
256
- */
257
- export function resolveRelatedPaths(fieldPaths, sources) {
258
- const resolved = new Map();
259
- for (const fieldPath of fieldPaths) {
260
- const parsed = parseContextPath(fieldPath);
261
- if (parsed === null)
262
- continue;
263
- if (parsed.rest.length !== 1)
264
- continue;
265
- if (parsed.layer === 'predecessorSummary')
266
- continue;
267
- const source = sources.find((candidate) => candidate.namespace === parsed.namespace);
268
- if (source === undefined)
269
- continue;
270
- const table = parsed.layer === 'raw' ? source.raw : source.summary;
271
- if (table === undefined)
272
- continue;
273
- const [key] = parsed.rest;
274
- if (key === undefined || FORBIDDEN_SEGMENTS.has(key))
275
- continue;
276
- if (!Object.hasOwn(table, key))
277
- continue;
278
- const value = table[key];
279
- if (value !== undefined)
280
- resolved.set(fieldPath, value);
281
- }
282
- return resolved;
283
- }
284
- // ── Composition ─────────────────────────────────────────────────────────────
285
- /**
286
- * Merge the channel maps into one `available` map. FIRST WRITER WINS: the
287
- * predecessor summary envelope is the highest-authority local source, then
288
- * ancestry raw, then related. Channel namespaces are disjoint by construction
289
- * (a path is either a summary path, an ancestry raw path, or a related path),
290
- * so the rule only matters defensively — but it keeps the result deterministic.
291
- */
292
- export function mergeContextFields(base, extras) {
293
- const merged = new Map(base);
294
- for (const extra of extras) {
295
- for (const [fieldPath, value] of extra) {
296
- if (!merged.has(fieldPath))
297
- merged.set(fieldPath, value);
298
- }
299
- }
300
- return merged;
301
- }
302
- // ── Information floor: required-evidence gate (design §33–§37) ──────────────
303
- /**
304
- * Required paths that did NOT reach the prompt — either absent from the
305
- * available map or dropped/truncated by the budget.
306
- *
307
- * This is the regression guard for "Stage2 enabled + raw fields silently
308
- * absent": a required field that was truncated by `PromptBudgetManager` counts
309
- * as unresolved just like an absent one, because the runner's semantic
310
- * requirement was still not met.
311
- */
312
- export function findUnresolvedRequiredPaths(params) {
313
- const absentPaths = new Set(params.absent);
314
- const truncatedPaths = new Set(params.truncated.map((record) => record.fieldPath));
315
- return params.required.filter((path) => absentPaths.has(path) || truncatedPaths.has(path));
316
- }
317
- //# sourceMappingURL=context-resolution.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"context-resolution.js","sourceRoot":"","sources":["../../../src/runtime-v2/internalization/context-resolution.ts"],"names":[],"mappings":"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"}
@@ -1,115 +0,0 @@
1
- /**
2
- * Layer 2 — Progressive Evaluator: two-stage evaluation with flagged criteria
3
- * (design §6.5).
4
- *
5
- * Pure logic only (Core vs Plugin boundary, `antipattern-core-io`).
6
- *
7
- * The progressive evaluator runs Stage 1 (summary-level context) first; only
8
- * when flagged / undetermined / forced-sample does it trigger Stage 2 (tier2
9
- * full-contentJson re-evaluation). This keeps daily cost low while enabling
10
- * deep diagnosis on demand.
11
- *
12
- * Key invariants:
13
- * - Stage 2 output is INDEPENDENT — never merged with Stage 1 (rc-7 /
14
- * ERR-015 / ERR-018 / ERR-019). `stagesRun === 2` ⟹ `finalOutput` is
15
- * entirely the Stage 2 result.
16
- * - flagged criteria read DIMENSION_COVERAGE_POLICY (single source of truth),
17
- * never inline a dimension-name array. Untrusted LLM input is filtered by
18
- * the policy table before flagging (rc-1 / rc-4).
19
- * - Deterministic forced sampling via fnv1a32 (no Math.random, design §4.4).
20
- */
21
- export declare const IMPLEMENTATION_FIDELITY_THRESHOLD = 0.7;
22
- export declare const FORCED_STAGE2_SAMPLE_MODULUS = 20;
23
- export type FlaggedReasonCode = 'missing_dimensions' | 'pain_not_fully_covered' | 'implementation_fidelity_below_threshold';
24
- export interface FlaggedDecision {
25
- readonly flagged: boolean;
26
- readonly reasons: readonly FlaggedReasonCode[];
27
- /** Fields that could not be determined (missing/malformed) — rc-3 + rc-9. */
28
- readonly undetermined: readonly string[];
29
- }
30
- export interface ProgressiveEvaluationOutcome {
31
- /** Stage 2 ran → entirely Stage 2's result; never merged with Stage 1. */
32
- readonly finalOutput: unknown;
33
- readonly stagesRun: 1 | 2;
34
- readonly stage1Decision: FlaggedDecision;
35
- readonly forcedStage2: boolean;
36
- readonly stage1FalseNegative?: {
37
- readonly newConcernKeys: readonly string[];
38
- };
39
- readonly stage2Aborted?: {
40
- readonly reason: 'lineage_error';
41
- readonly detail: string;
42
- };
43
- }
44
- /**
45
- * FNV-1a 32-bit hash. Pure, deterministic, no crypto, no Math.random.
46
- * Supports the full Unicode range in the input string.
47
- */
48
- export declare function fnv1a32(input: string): number;
49
- /**
50
- * Deterministic ~5% forced Stage 2 sampling. `fnv1a32(taskId) % modulus === 0`.
51
- * Never uses Math.random or any non-deterministic source (design §4.4).
52
- */
53
- export declare function isForcedStage2(taskId: string, modulus?: number): boolean;
54
- /**
55
- * Evaluate the three flagged criteria against Stage 1 output (design §6.5.3).
56
- *
57
- * Preconditions: none — `stage1Output` is untrusted LLM output (rc-1), read
58
- * via `Object.hasOwn` (rc-5 / ERR-013).
59
- *
60
- * Postconditions:
61
- * - `flagged === true` iff `reasons` is non-empty.
62
- * - Three criteria: required-dimension missing, painCoverage.fullyCovered === false,
63
- * implementationFidelity.score < 0.7.
64
- * - Fields missing or wrong type → `undetermined` (rc-3: fail loud, never
65
- * silently pass).
66
- *
67
- * Dimension criterion (§6.5.3, measurement-driven tightening):
68
- * - Only **required** dimension names in `missingDimensions` count. The LLM
69
- * may stuff optional/excluded/unknown strings in — all filtered out by
70
- * `isRequiredDimension` before checking. `optionalUncovered` never enters
71
- * `reasons`.
72
- */
73
- export declare function evaluateFlaggedCriteria(stage1Output: unknown): FlaggedDecision;
74
- /**
75
- * LLM evaluator callback type. The caller injects the actual LLM invocation;
76
- * this module is pure logic and never calls an LLM directly.
77
- */
78
- export interface ProgressiveEvaluatorLLM {
79
- /** Evaluate using the provided context fields. Returns the raw LLM output (unknown). */
80
- evaluate(fields: Readonly<Record<string, string>>): Promise<unknown>;
81
- }
82
- /**
83
- * Lineage resolver type (CandidateLineage from Layer 2, injected by caller).
84
- */
85
- export interface ProgressiveEvaluatorLineage {
86
- resolve(startArtifactId: string): Promise<{
87
- readonly ok: true;
88
- readonly value: {
89
- readonly nodes: readonly unknown[];
90
- };
91
- } | {
92
- readonly ok: false;
93
- readonly error: {
94
- readonly kind: string;
95
- };
96
- }>;
97
- }
98
- export interface ProgressiveEvaluatorDeps {
99
- readonly taskId: string;
100
- readonly startArtifactId: string;
101
- readonly stage1Context: Readonly<Record<string, string>>;
102
- readonly stage2Context?: Readonly<Record<string, string>>;
103
- readonly llm: ProgressiveEvaluatorLLM;
104
- readonly lineage?: ProgressiveEvaluatorLineage;
105
- readonly emit?: (event: ProgressiveEvaluatorEvent) => void;
106
- }
107
- export type ProgressiveEvaluatorEvent = {
108
- readonly type: 'lineage_data_corrupt';
109
- readonly detail: string;
110
- } | {
111
- readonly type: 'stage1_false_negative';
112
- readonly newConcernKeys: readonly string[];
113
- };
114
- export declare function runProgressiveEvaluation(deps: ProgressiveEvaluatorDeps): Promise<ProgressiveEvaluationOutcome>;
115
- //# sourceMappingURL=progressive-evaluator.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"progressive-evaluator.d.ts","sourceRoot":"","sources":["../../../src/runtime-v2/internalization/progressive-evaluator.ts"],"names":[],"mappings":"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"}