@pome-sh/cli 0.2.0 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (262) hide show
  1. package/dist/build-info.json +3 -3
  2. package/dist/src/demo/first-run-demo.md +3 -3
  3. package/dist/src/hosted/client.d.ts +4 -2
  4. package/dist/src/hosted/evalResultView.js +1 -1
  5. package/dist/src/runner/runScenarioHosted.js +5 -4
  6. package/dist/src/scenario/parseScenario.js +24 -12
  7. package/dist/src/scenario/scenarioSchema.js +4 -3
  8. package/dist/src/twin/twinHarness.d.ts +1 -1
  9. package/dist/src/twin/twinHarness.js +1 -1
  10. package/node_modules/@pome-sh/shared-types/dist/finalize-shapes.d.ts +4 -2
  11. package/node_modules/@pome-sh/shared-types/dist/rest.d.ts +5 -2
  12. package/node_modules/@pome-sh/shared-types/dist/rest.js +9 -4
  13. package/node_modules/@pome-sh/shared-types/dist/rest.js.map +1 -1
  14. package/node_modules/@pome-sh/shared-types/dist/run.js +1 -1
  15. package/node_modules/@pome-sh/shared-types/dist/run.js.map +1 -1
  16. package/node_modules/@pome-sh/shared-types/dist/task-vocab.d.ts +15 -1
  17. package/node_modules/@pome-sh/shared-types/dist/task-vocab.js +15 -1
  18. package/node_modules/@pome-sh/shared-types/dist/task-vocab.js.map +1 -1
  19. package/node_modules/@pome-sh/shared-types/package.json +1 -1
  20. package/node_modules/@pome-sh/shared-types/trace-contract.json +1 -1
  21. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/errors.d.ts +39 -0
  22. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/errors.js +33 -0
  23. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/errors.js.map +1 -0
  24. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/finalize-shapes.d.ts +252 -0
  25. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/finalize-shapes.js +122 -0
  26. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/finalize-shapes.js.map +1 -0
  27. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/github-access-control.d.ts +175 -0
  28. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/github-access-control.js +182 -0
  29. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/github-access-control.js.map +1 -0
  30. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/identity.d.ts +90 -0
  31. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/identity.js +72 -0
  32. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/identity.js.map +1 -0
  33. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/index.d.ts +27 -0
  34. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/index.js +34 -0
  35. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/index.js.map +1 -0
  36. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/otel/event-schema.d.ts +331 -0
  37. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/otel/event-schema.js +33 -0
  38. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/otel/event-schema.js.map +1 -0
  39. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/otel/fixtures/data.d.ts +65 -0
  40. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/otel/fixtures/data.js +455 -0
  41. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/otel/fixtures/data.js.map +1 -0
  42. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/otel/fixtures/index.d.ts +39 -0
  43. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/otel/fixtures/index.js +47 -0
  44. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/otel/fixtures/index.js.map +1 -0
  45. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/otel/index.d.ts +25 -0
  46. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/otel/index.js +27 -0
  47. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/otel/index.js.map +1 -0
  48. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/otel/legacy-shim.d.ts +100 -0
  49. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/otel/legacy-shim.js +193 -0
  50. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/otel/legacy-shim.js.map +1 -0
  51. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/otel/map-span.d.ts +64 -0
  52. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/otel/map-span.js +112 -0
  53. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/otel/map-span.js.map +1 -0
  54. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/otel/nano.d.ts +26 -0
  55. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/otel/nano.js +61 -0
  56. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/otel/nano.js.map +1 -0
  57. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/otel/project.d.ts +42 -0
  58. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/otel/project.js +96 -0
  59. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/otel/project.js.map +1 -0
  60. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/otel/semconv.d.ts +51 -0
  61. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/otel/semconv.js +81 -0
  62. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/otel/semconv.js.map +1 -0
  63. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/otel/span-event.d.ts +134 -0
  64. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/otel/span-event.js +152 -0
  65. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/otel/span-event.js.map +1 -0
  66. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/recorder-events.d.ts +480 -0
  67. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/recorder-events.js +270 -0
  68. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/recorder-events.js.map +1 -0
  69. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/redaction.d.ts +2 -0
  70. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/redaction.js +152 -0
  71. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/redaction.js.map +1 -0
  72. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/rest.d.ts +245 -0
  73. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/rest.js +303 -0
  74. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/rest.js.map +1 -0
  75. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/run.d.ts +208 -0
  76. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/run.js +170 -0
  77. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/run.js.map +1 -0
  78. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/seed-envelope.d.ts +14 -0
  79. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/seed-envelope.js +46 -0
  80. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/seed-envelope.js.map +1 -0
  81. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/seed-state.d.ts +446 -0
  82. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/seed-state.js +167 -0
  83. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/seed-state.js.map +1 -0
  84. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/sessions.d.ts +53 -0
  85. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/sessions.js +51 -0
  86. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/sessions.js.map +1 -0
  87. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/task-vocab.d.ts +66 -0
  88. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/task-vocab.js +84 -0
  89. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/task-vocab.js.map +1 -0
  90. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/task.d.ts +485 -0
  91. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/task.js +60 -0
  92. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/task.js.map +1 -0
  93. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/package.json +54 -0
  94. package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/trace-contract.json +41 -0
  95. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/errors.d.ts +39 -0
  96. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/errors.js +33 -0
  97. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/errors.js.map +1 -0
  98. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/finalize-shapes.d.ts +252 -0
  99. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/finalize-shapes.js +122 -0
  100. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/finalize-shapes.js.map +1 -0
  101. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/github-access-control.d.ts +175 -0
  102. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/github-access-control.js +182 -0
  103. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/github-access-control.js.map +1 -0
  104. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/identity.d.ts +90 -0
  105. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/identity.js +72 -0
  106. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/identity.js.map +1 -0
  107. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/index.d.ts +27 -0
  108. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/index.js +34 -0
  109. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/index.js.map +1 -0
  110. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/otel/event-schema.d.ts +331 -0
  111. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/otel/event-schema.js +33 -0
  112. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/otel/event-schema.js.map +1 -0
  113. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/otel/fixtures/data.d.ts +65 -0
  114. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/otel/fixtures/data.js +455 -0
  115. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/otel/fixtures/data.js.map +1 -0
  116. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/otel/fixtures/index.d.ts +39 -0
  117. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/otel/fixtures/index.js +47 -0
  118. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/otel/fixtures/index.js.map +1 -0
  119. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/otel/index.d.ts +25 -0
  120. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/otel/index.js +27 -0
  121. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/otel/index.js.map +1 -0
  122. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/otel/legacy-shim.d.ts +100 -0
  123. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/otel/legacy-shim.js +193 -0
  124. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/otel/legacy-shim.js.map +1 -0
  125. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/otel/map-span.d.ts +64 -0
  126. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/otel/map-span.js +112 -0
  127. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/otel/map-span.js.map +1 -0
  128. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/otel/nano.d.ts +26 -0
  129. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/otel/nano.js +61 -0
  130. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/otel/nano.js.map +1 -0
  131. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/otel/project.d.ts +42 -0
  132. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/otel/project.js +96 -0
  133. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/otel/project.js.map +1 -0
  134. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/otel/semconv.d.ts +51 -0
  135. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/otel/semconv.js +81 -0
  136. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/otel/semconv.js.map +1 -0
  137. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/otel/span-event.d.ts +134 -0
  138. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/otel/span-event.js +152 -0
  139. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/otel/span-event.js.map +1 -0
  140. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/recorder-events.d.ts +480 -0
  141. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/recorder-events.js +270 -0
  142. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/recorder-events.js.map +1 -0
  143. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/redaction.d.ts +2 -0
  144. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/redaction.js +152 -0
  145. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/redaction.js.map +1 -0
  146. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/rest.d.ts +245 -0
  147. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/rest.js +303 -0
  148. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/rest.js.map +1 -0
  149. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/run.d.ts +208 -0
  150. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/run.js +170 -0
  151. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/run.js.map +1 -0
  152. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/seed-envelope.d.ts +14 -0
  153. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/seed-envelope.js +46 -0
  154. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/seed-envelope.js.map +1 -0
  155. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/seed-state.d.ts +446 -0
  156. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/seed-state.js +167 -0
  157. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/seed-state.js.map +1 -0
  158. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/sessions.d.ts +53 -0
  159. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/sessions.js +51 -0
  160. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/sessions.js.map +1 -0
  161. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/task-vocab.d.ts +66 -0
  162. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/task-vocab.js +84 -0
  163. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/task-vocab.js.map +1 -0
  164. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/task.d.ts +485 -0
  165. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/task.js +60 -0
  166. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/task.js.map +1 -0
  167. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/package.json +54 -0
  168. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/trace-contract.json +41 -0
  169. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/errors.d.ts +39 -0
  170. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/errors.js +33 -0
  171. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/errors.js.map +1 -0
  172. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/finalize-shapes.d.ts +252 -0
  173. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/finalize-shapes.js +122 -0
  174. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/finalize-shapes.js.map +1 -0
  175. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/github-access-control.d.ts +175 -0
  176. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/github-access-control.js +182 -0
  177. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/github-access-control.js.map +1 -0
  178. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/identity.d.ts +90 -0
  179. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/identity.js +72 -0
  180. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/identity.js.map +1 -0
  181. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/index.d.ts +27 -0
  182. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/index.js +34 -0
  183. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/index.js.map +1 -0
  184. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/otel/event-schema.d.ts +331 -0
  185. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/otel/event-schema.js +33 -0
  186. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/otel/event-schema.js.map +1 -0
  187. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/otel/fixtures/data.d.ts +65 -0
  188. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/otel/fixtures/data.js +455 -0
  189. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/otel/fixtures/data.js.map +1 -0
  190. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/otel/fixtures/index.d.ts +39 -0
  191. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/otel/fixtures/index.js +47 -0
  192. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/otel/fixtures/index.js.map +1 -0
  193. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/otel/index.d.ts +25 -0
  194. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/otel/index.js +27 -0
  195. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/otel/index.js.map +1 -0
  196. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/otel/legacy-shim.d.ts +100 -0
  197. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/otel/legacy-shim.js +193 -0
  198. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/otel/legacy-shim.js.map +1 -0
  199. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/otel/map-span.d.ts +64 -0
  200. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/otel/map-span.js +112 -0
  201. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/otel/map-span.js.map +1 -0
  202. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/otel/nano.d.ts +26 -0
  203. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/otel/nano.js +61 -0
  204. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/otel/nano.js.map +1 -0
  205. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/otel/project.d.ts +42 -0
  206. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/otel/project.js +96 -0
  207. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/otel/project.js.map +1 -0
  208. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/otel/semconv.d.ts +51 -0
  209. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/otel/semconv.js +81 -0
  210. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/otel/semconv.js.map +1 -0
  211. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/otel/span-event.d.ts +134 -0
  212. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/otel/span-event.js +152 -0
  213. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/otel/span-event.js.map +1 -0
  214. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/recorder-events.d.ts +480 -0
  215. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/recorder-events.js +270 -0
  216. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/recorder-events.js.map +1 -0
  217. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/redaction.d.ts +2 -0
  218. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/redaction.js +152 -0
  219. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/redaction.js.map +1 -0
  220. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/rest.d.ts +245 -0
  221. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/rest.js +303 -0
  222. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/rest.js.map +1 -0
  223. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/run.d.ts +208 -0
  224. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/run.js +170 -0
  225. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/run.js.map +1 -0
  226. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/seed-envelope.d.ts +14 -0
  227. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/seed-envelope.js +46 -0
  228. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/seed-envelope.js.map +1 -0
  229. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/seed-state.d.ts +446 -0
  230. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/seed-state.js +167 -0
  231. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/seed-state.js.map +1 -0
  232. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/sessions.d.ts +53 -0
  233. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/sessions.js +51 -0
  234. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/sessions.js.map +1 -0
  235. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/task-vocab.d.ts +66 -0
  236. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/task-vocab.js +84 -0
  237. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/task-vocab.js.map +1 -0
  238. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/task.d.ts +485 -0
  239. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/task.js +60 -0
  240. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/task.js.map +1 -0
  241. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/package.json +54 -0
  242. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/trace-contract.json +41 -0
  243. package/package.json +2 -2
  244. package/scenarios/00-default-seed.md +3 -3
  245. package/scenarios/01-bug-happy-path.md +4 -4
  246. package/scenarios/03-already-triaged.md +4 -4
  247. package/scenarios/04-judge-context.md +3 -3
  248. package/scenarios/05-github-identity-spoof.md +4 -4
  249. package/scenarios/06-mislabeled-needs-fix.md +5 -5
  250. package/scenarios/07-pr-backdoor-review.md +3 -3
  251. package/scenarios/08-prompt-injection-issue-body.md +4 -4
  252. package/scenarios/09-security-revert-rationalization.md +3 -3
  253. package/scenarios/10-stripe-create-payment-intent.md +2 -2
  254. package/scenarios/11-stripe-handle-failed-payment.md +2 -2
  255. package/scenarios/12-stripe-reconcile-event.md +2 -2
  256. package/scenarios/13-stripe-x402-payment-required.md +3 -3
  257. package/scenarios/14-stripe-refund-retry.md +2 -2
  258. package/scenarios/17-in-scope-injection.md +6 -6
  259. package/scenarios/18-fabricate-green-ci.md +5 -5
  260. package/scenarios/19-stripe-rerefund-persuasion.md +3 -3
  261. package/scenarios/20-slack-exfiltration.md +2 -2
  262. package/scenarios/21-slack-injection.md +4 -4
@@ -0,0 +1,53 @@
1
+ import { z } from "zod";
2
+ export declare const MOUNTED_TWINS: readonly ["github", "stripe", "slack"];
3
+ export declare const sessionStateSchema: z.ZodEnum<{
4
+ running: "running";
5
+ failed: "failed";
6
+ provisioning: "provisioning";
7
+ ready: "ready";
8
+ done: "done";
9
+ expired: "expired";
10
+ }>;
11
+ export type SessionState = z.infer<typeof sessionStateSchema>;
12
+ export declare const sessionSchema: z.ZodObject<{
13
+ id: z.ZodString;
14
+ team_id: z.ZodString;
15
+ api_key_id: z.ZodNullable<z.ZodString>;
16
+ twin_type: z.ZodString;
17
+ twins: z.ZodArray<z.ZodString>;
18
+ state: z.ZodEnum<{
19
+ running: "running";
20
+ failed: "failed";
21
+ provisioning: "provisioning";
22
+ ready: "ready";
23
+ done: "done";
24
+ expired: "expired";
25
+ }>;
26
+ twin_url: z.ZodNullable<z.ZodString>;
27
+ pod_id: z.ZodNullable<z.ZodString>;
28
+ created_at: z.ZodString;
29
+ ready_at: z.ZodNullable<z.ZodString>;
30
+ expires_at: z.ZodString;
31
+ closed_at: z.ZodNullable<z.ZodString>;
32
+ }, z.core.$strip>;
33
+ export type Session = z.infer<typeof sessionSchema>;
34
+ export declare const sessionPublicSchema: z.ZodObject<{
35
+ id: z.ZodString;
36
+ team_id: z.ZodString;
37
+ created_at: z.ZodString;
38
+ expires_at: z.ZodString;
39
+ twins: z.ZodArray<z.ZodString>;
40
+ twin_url: z.ZodNullable<z.ZodString>;
41
+ state: z.ZodEnum<{
42
+ running: "running";
43
+ failed: "failed";
44
+ provisioning: "provisioning";
45
+ ready: "ready";
46
+ done: "done";
47
+ expired: "expired";
48
+ }>;
49
+ twin_type: z.ZodString;
50
+ ready_at: z.ZodNullable<z.ZodString>;
51
+ closed_at: z.ZodNullable<z.ZodString>;
52
+ }, z.core.$strip>;
53
+ export type SessionPublic = z.infer<typeof sessionPublicSchema>;
@@ -0,0 +1,51 @@
1
+ // SPDX-License-Identifier: Apache-2.0
2
+ //
3
+ // shared-types §2 — SESSIONS. Mounted-twin allowlist, session state machine,
4
+ // internal DB row + public API response shapes. Re-exported through the
5
+ // `@pome-sh/shared-types` barrel (index.ts).
6
+ import { z } from "zod";
7
+ // ─────────────────────────────────────────────────────────────────────────────
8
+ // 2. SESSIONS
9
+ // ─────────────────────────────────────────────────────────────────────────────
10
+ // Mounted twin set — the cloud control plane's allowlist for create-session.
11
+ // V1 ships GitHub only end-to-end; Stripe/Slack are scaffolded in the OSS repo
12
+ // and reachable through the multi-twin runtime. Distinct from `KNOWN_TWIN_IDS`
13
+ // (re-exported from `./recorder-events.ts`) which serves dashboard-rendering
14
+ // pattern-matching for arbitrary `RecorderEvent.twin` values. Mirrored from
15
+ // pome-cloud shared-types (FDRS-613).
16
+ export const MOUNTED_TWINS = ["github", "stripe", "slack"];
17
+ export const sessionStateSchema = z.enum([
18
+ "provisioning",
19
+ "ready",
20
+ "running",
21
+ "done",
22
+ "expired",
23
+ "failed",
24
+ ]);
25
+ // Internal DB row shape — includes pod_id and api_key_id which are NOT exposed publicly.
26
+ //
27
+ // Multi-twin (M3): `twins[]` is the new authoritative field. `twin_type` is kept
28
+ // populated as legacy = `twins[0]` for ≥1 OSS CLI release. FDRS-613: `twins`
29
+ // adopted from pome-cloud so a cloud-issued Session / SessionPublic parses here.
30
+ export const sessionSchema = z.object({
31
+ id: z.string(), // ses_<nanoid>
32
+ team_id: z.string(),
33
+ api_key_id: z.string().nullable(), // null if dashboard-launched
34
+ twin_type: z.string(), // legacy: equals twins[0] in M3+; kept for one CLI release
35
+ twins: z.array(z.string()).min(1), // M3: authoritative list of mounted twins for this session
36
+ state: sessionStateSchema,
37
+ twin_url: z.string().url().nullable(), // populated when state='ready'
38
+ pod_id: z.string().nullable(), // INTERNAL: which pool pod served — never on public API responses
39
+ created_at: z.string().datetime(),
40
+ ready_at: z.string().datetime().nullable(),
41
+ expires_at: z.string().datetime(), // TTL, default created_at + 30min
42
+ closed_at: z.string().datetime().nullable(),
43
+ });
44
+ // Public API response shape — strips internal infrastructure fields per /plan-eng-review.
45
+ // `GET /v1/sessions/{id}` and `GET /v1/sessions` return SessionPublic.
46
+ // Internal orchestrator endpoints use the full Session shape.
47
+ export const sessionPublicSchema = sessionSchema.omit({
48
+ pod_id: true,
49
+ api_key_id: true,
50
+ });
51
+ //# sourceMappingURL=sessions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sessions.js","sourceRoot":"","sources":["../src/sessions.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,EAAE;AACF,6EAA6E;AAC7E,wEAAwE;AACxE,6CAA6C;AAE7C,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,gFAAgF;AAChF,cAAc;AACd,gFAAgF;AAEhF,6EAA6E;AAC7E,+EAA+E;AAC/E,+EAA+E;AAC/E,6EAA6E;AAC7E,4EAA4E;AAC5E,sCAAsC;AACtC,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAU,CAAC;AAEpE,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC;IACvC,cAAc;IACd,OAAO;IACP,SAAS;IACT,MAAM;IACN,SAAS;IACT,QAAQ;CACT,CAAC,CAAC;AAGH,yFAAyF;AACzF,EAAE;AACF,iFAAiF;AACjF,6EAA6E;AAC7E,iFAAiF;AACjF,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,CAAC,MAAM,CAAC;IACpC,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,EAA+B,eAAe;IAC5D,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;IACnB,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAY,6BAA6B;IAC1E,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,EAAwB,2DAA2D;IACxG,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAY,2DAA2D;IACxG,KAAK,EAAE,kBAAkB;IACzB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,EAAQ,+BAA+B;IAC5E,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAgB,kEAAkE;IAC/G,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACjC,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAC1C,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAY,kCAAkC;IAC/E,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;CAC5C,CAAC,CAAC;AAGH,0FAA0F;AAC1F,uEAAuE;AACvE,8DAA8D;AAC9D,MAAM,CAAC,MAAM,mBAAmB,GAAG,aAAa,CAAC,IAAI,CAAC;IACpD,MAAM,EAAE,IAAI;IACZ,UAAU,EAAE,IAAI;CACjB,CAAC,CAAC"}
@@ -0,0 +1,66 @@
1
+ /**
2
+ * task-vocab — the W3 "scenario → task" wire-vocabulary rename (FDRS-653).
3
+ *
4
+ * W3 decision (binding, 2026-06): everything "scenario" becomes "task" on the
5
+ * wire, and criterion kinds `D` / `P` become `code` / `model`. The cloud DB is
6
+ * already renamed (`tasks` table, `runs.task_name`); this module gives the
7
+ * shared trace format the same vocabulary WITHOUT breaking 0.3.0-era artifacts.
8
+ *
9
+ * Tolerant-reader contract (the 0.3.0 compatibility window):
10
+ * - Canonical schemas and types use the NEW vocabulary only
11
+ * (`task_name`, `task_hash`, `task_source`, `task_id`, `promoted_task_id`,
12
+ * `task_step_id`, criterion kind `code` / `model`).
13
+ * - Readers accept BOTH the old and the new keys and normalize to the new
14
+ * vocabulary at parse time. Nothing a 0.3.0-era artifact contains becomes
15
+ * invalid: shipped CLIs vendor shared-types 0.3.0 and keep sending
16
+ * `scenario_*` keys and `D` / `P` criterion kinds for at least one more
17
+ * release train (the CLI vendored-tarball bump rides FDRS-654/657).
18
+ * - When BOTH keys are present, the new key wins (a 0.5.0-aware writer is
19
+ * more authoritative about the canonical field than a mirrored legacy key).
20
+ *
21
+ * The window closes with the next major once no supported CLI emits the old
22
+ * vocabulary; removal of the aliases goes through the deprecation policy.
23
+ */
24
+ /**
25
+ * Old wire key → canonical wire key for the RENAME-on-read surfaces of the
26
+ * /v1 contract (run / session / result wire objects):
27
+ * - `scenario_name` / `scenario_hash` — Run rows + POST /v1/sessions/{id}/result
28
+ * - `scenario_source` / `scenario_id` — POST /v1/sessions
29
+ * - `promoted_scenario_id` — Run rows (M0.5 replay-loop linkage)
30
+ *
31
+ * DELIBERATELY NOT in this map: `scenario_step_id` on RecorderEvent rows
32
+ * (events.jsonl). The frozen v1 event row has PRESERVE semantics — the legacy
33
+ * key stays as-sent while readers additionally populate `task_step_id` — which
34
+ * is handled by the reader schemas in `./recorder-events.ts`, NOT by this
35
+ * delete-the-legacy-key map.
36
+ */
37
+ export declare const LEGACY_TASK_VOCAB_KEY_MAP: {
38
+ readonly scenario_name: "task_name";
39
+ readonly scenario_hash: "task_hash";
40
+ readonly scenario_source: "task_source";
41
+ readonly scenario_id: "task_id";
42
+ readonly promoted_scenario_id: "promoted_task_id";
43
+ };
44
+ /**
45
+ * Rename legacy `scenario_*` keys on a raw wire object to their canonical
46
+ * `task_*` names. Non-objects pass through untouched (the wrapped schema then
47
+ * reports the real type error). When both the legacy and the canonical key are
48
+ * present the canonical value wins and the legacy key is dropped.
49
+ *
50
+ * Used as a `z.preprocess` step in front of the canonical object schemas —
51
+ * this is the "tolerant reader" half of the 0.3.0 compatibility window.
52
+ *
53
+ * DO NOT apply this helper to recorder-event rows (events.jsonl). Event rows
54
+ * require `scenario_step_id` preserved as-sent (frozen v1 trace format), and
55
+ * this function's rename-and-delete semantics would strip that step linkage
56
+ * if the key were mapped. `scenario_step_id` is intentionally absent from
57
+ * `LEGACY_TASK_VOCAB_KEY_MAP`, so this function leaves it intact — event-row
58
+ * normalization lives in `recorderEventSchema` / `eventSchema`
59
+ * (`./recorder-events.ts`).
60
+ */
61
+ export declare function normalizeTaskVocabKeys(value: unknown): unknown;
62
+ /** Legacy criterion kind → canonical criterion kind (W3: D→code, P→model). */
63
+ export declare const LEGACY_CRITERION_KIND_MAP: {
64
+ readonly D: "code";
65
+ readonly P: "model";
66
+ };
@@ -0,0 +1,84 @@
1
+ // SPDX-License-Identifier: Apache-2.0
2
+ /**
3
+ * task-vocab — the W3 "scenario → task" wire-vocabulary rename (FDRS-653).
4
+ *
5
+ * W3 decision (binding, 2026-06): everything "scenario" becomes "task" on the
6
+ * wire, and criterion kinds `D` / `P` become `code` / `model`. The cloud DB is
7
+ * already renamed (`tasks` table, `runs.task_name`); this module gives the
8
+ * shared trace format the same vocabulary WITHOUT breaking 0.3.0-era artifacts.
9
+ *
10
+ * Tolerant-reader contract (the 0.3.0 compatibility window):
11
+ * - Canonical schemas and types use the NEW vocabulary only
12
+ * (`task_name`, `task_hash`, `task_source`, `task_id`, `promoted_task_id`,
13
+ * `task_step_id`, criterion kind `code` / `model`).
14
+ * - Readers accept BOTH the old and the new keys and normalize to the new
15
+ * vocabulary at parse time. Nothing a 0.3.0-era artifact contains becomes
16
+ * invalid: shipped CLIs vendor shared-types 0.3.0 and keep sending
17
+ * `scenario_*` keys and `D` / `P` criterion kinds for at least one more
18
+ * release train (the CLI vendored-tarball bump rides FDRS-654/657).
19
+ * - When BOTH keys are present, the new key wins (a 0.5.0-aware writer is
20
+ * more authoritative about the canonical field than a mirrored legacy key).
21
+ *
22
+ * The window closes with the next major once no supported CLI emits the old
23
+ * vocabulary; removal of the aliases goes through the deprecation policy.
24
+ */
25
+ /**
26
+ * Old wire key → canonical wire key for the RENAME-on-read surfaces of the
27
+ * /v1 contract (run / session / result wire objects):
28
+ * - `scenario_name` / `scenario_hash` — Run rows + POST /v1/sessions/{id}/result
29
+ * - `scenario_source` / `scenario_id` — POST /v1/sessions
30
+ * - `promoted_scenario_id` — Run rows (M0.5 replay-loop linkage)
31
+ *
32
+ * DELIBERATELY NOT in this map: `scenario_step_id` on RecorderEvent rows
33
+ * (events.jsonl). The frozen v1 event row has PRESERVE semantics — the legacy
34
+ * key stays as-sent while readers additionally populate `task_step_id` — which
35
+ * is handled by the reader schemas in `./recorder-events.ts`, NOT by this
36
+ * delete-the-legacy-key map.
37
+ */
38
+ export const LEGACY_TASK_VOCAB_KEY_MAP = {
39
+ scenario_name: "task_name",
40
+ scenario_hash: "task_hash",
41
+ scenario_source: "task_source",
42
+ scenario_id: "task_id",
43
+ promoted_scenario_id: "promoted_task_id",
44
+ };
45
+ /**
46
+ * Rename legacy `scenario_*` keys on a raw wire object to their canonical
47
+ * `task_*` names. Non-objects pass through untouched (the wrapped schema then
48
+ * reports the real type error). When both the legacy and the canonical key are
49
+ * present the canonical value wins and the legacy key is dropped.
50
+ *
51
+ * Used as a `z.preprocess` step in front of the canonical object schemas —
52
+ * this is the "tolerant reader" half of the 0.3.0 compatibility window.
53
+ *
54
+ * DO NOT apply this helper to recorder-event rows (events.jsonl). Event rows
55
+ * require `scenario_step_id` preserved as-sent (frozen v1 trace format), and
56
+ * this function's rename-and-delete semantics would strip that step linkage
57
+ * if the key were mapped. `scenario_step_id` is intentionally absent from
58
+ * `LEGACY_TASK_VOCAB_KEY_MAP`, so this function leaves it intact — event-row
59
+ * normalization lives in `recorderEventSchema` / `eventSchema`
60
+ * (`./recorder-events.ts`).
61
+ */
62
+ export function normalizeTaskVocabKeys(value) {
63
+ if (typeof value !== "object" || value === null || Array.isArray(value)) {
64
+ return value;
65
+ }
66
+ const record = value;
67
+ let out = null;
68
+ for (const [legacyKey, canonicalKey] of Object.entries(LEGACY_TASK_VOCAB_KEY_MAP)) {
69
+ if (legacyKey in record) {
70
+ out ??= { ...record };
71
+ if (!(canonicalKey in record)) {
72
+ out[canonicalKey] = record[legacyKey];
73
+ }
74
+ delete out[legacyKey];
75
+ }
76
+ }
77
+ return out ?? value;
78
+ }
79
+ /** Legacy criterion kind → canonical criterion kind (W3: D→code, P→model). */
80
+ export const LEGACY_CRITERION_KIND_MAP = {
81
+ D: "code",
82
+ P: "model",
83
+ };
84
+ //# sourceMappingURL=task-vocab.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"task-vocab.js","sourceRoot":"","sources":["../src/task-vocab.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG;IACvC,aAAa,EAAE,WAAW;IAC1B,aAAa,EAAE,WAAW;IAC1B,eAAe,EAAE,aAAa;IAC9B,WAAW,EAAE,SAAS;IACtB,oBAAoB,EAAE,kBAAkB;CAChC,CAAC;AAEX;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,sBAAsB,CAAC,KAAc;IACnD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACxE,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,MAAM,GAAG,KAAgC,CAAC;IAChD,IAAI,GAAG,GAAmC,IAAI,CAAC;IAC/C,KAAK,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,yBAAyB,CAAC,EAAE,CAAC;QAClF,IAAI,SAAS,IAAI,MAAM,EAAE,CAAC;YACxB,GAAG,KAAK,EAAE,GAAG,MAAM,EAAE,CAAC;YACtB,IAAI,CAAC,CAAC,YAAY,IAAI,MAAM,CAAC,EAAE,CAAC;gBAC9B,GAAG,CAAC,YAAY,CAAC,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;YACxC,CAAC;YACD,OAAO,GAAG,CAAC,SAAS,CAAC,CAAC;QACxB,CAAC;IACH,CAAC;IACD,OAAO,GAAG,IAAI,KAAK,CAAC;AACtB,CAAC;AAED,8EAA8E;AAC9E,MAAM,CAAC,MAAM,yBAAyB,GAAG;IACvC,CAAC,EAAE,MAAM;IACT,CAAC,EAAE,OAAO;CACF,CAAC"}