@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,455 @@
1
+ // SPDX-License-Identifier: Apache-2.0
2
+ /**
3
+ * otel/fixtures/data — frozen golden-fixture corpus (M1.3 / FDRS-482).
4
+ *
5
+ * The single source of truth for trace fixtures across M1.2 and M2–M6. Static
6
+ * data, deterministic by construction, and DEEP-FROZEN on export (review
7
+ * finding #6 — exported fixtures were runtime-mutable shared state). Four
8
+ * families:
9
+ *
10
+ * - LEGACY_FIXTURES — (legacy record → expected OtelSpanEvent) pairs.
11
+ * `expected` is the FROZEN output of the M1.2 shim;
12
+ * M1.2's golden test asserts the shim reproduces it.
13
+ * - EMITTER_FIXTURES — real-emitter spans (Traceloop / Vercel AI SDK /
14
+ * Pydantic Logfire), normalized to `OtelSpanInput`
15
+ * with provenance + version metadata. M1.1 parses them.
16
+ * - TRACE_FIXTURES — multi-span sub-agent traces (parent_span_id trees).
17
+ * - EXTERNAL_API_FIXTURES — twin-relevant external-API (HTTP) spans (M4 drift).
18
+ *
19
+ * PROVENANCE NOTE (honest sourcing — `derivedFrom: "documentation-derived"`):
20
+ * the emitter fixtures are NORMALIZED `OtelSpanInput` records whose ATTRIBUTE
21
+ * KEYS are taken verbatim from each emitter's published span output (URLs +
22
+ * `sourceVersion` below); attribute VALUES are representative. They are derived
23
+ * from the emitters' documented conventions, NOT captured from a live export —
24
+ * raw OTLP-envelope capture + the AnyValue decoder are M2's scope. Each fixture
25
+ * records its source so M2 can swap in a live capture without changing keys.
26
+ */
27
+ // Recursively freeze a fixture tree so a consumer can never mutate the shared
28
+ // corpus (review #6). Returns the same reference, now immutable.
29
+ function deepFreeze(value) {
30
+ if (value !== null && typeof value === "object" && !Object.isFrozen(value)) {
31
+ Object.freeze(value);
32
+ for (const key of Object.keys(value)) {
33
+ deepFreeze(value[key]);
34
+ }
35
+ }
36
+ return value;
37
+ }
38
+ // ─── Legacy → span pairs (frozen expected outputs of the M1.2 shim) ──────────
39
+ export const LEGACY_FIXTURES = deepFreeze([
40
+ {
41
+ name: "twin-http/github-create-issue",
42
+ provenance: "Pome TwinHttpEvent (packages/shared-types/src/recorder-events.ts). Frozen output of shimLegacyEventToSpan (M1.2).",
43
+ derivedFrom: "pome-internal",
44
+ legacy: {
45
+ ts: "2026-06-02T12:00:00.000Z",
46
+ run_id: "run_otel_demo",
47
+ twin: "github",
48
+ request_id: "req_001",
49
+ step_id: null,
50
+ tool_call_id: null,
51
+ method: "POST",
52
+ path: "/repos/acme/app/issues",
53
+ request_body: { title: "Bug", body: "broken" },
54
+ status: 201,
55
+ response_body: { number: 7 },
56
+ latency_ms: 134,
57
+ fidelity: "semantic",
58
+ state_mutation: true,
59
+ state_delta: { before: null, after: { number: 7 } },
60
+ error: null,
61
+ kind: "TwinHttpEvent",
62
+ event_id: "evt_http_1",
63
+ parent_id: null,
64
+ },
65
+ options: {},
66
+ expected: {
67
+ ts: "2026-06-02T12:00:00.000Z",
68
+ event_id: "legacy:evt_http_1",
69
+ parent_id: null,
70
+ kind: "OtelSpanEvent",
71
+ trace_id: "legacy:run_otel_demo",
72
+ span_id: "legacy:evt_http_1",
73
+ parent_span_id: null,
74
+ name: "POST",
75
+ span_kind: "CLIENT",
76
+ start_time_unix_nano: "1780401600000000000",
77
+ end_time_unix_nano: "1780401600134000000",
78
+ status_code: "UNSET",
79
+ status_message: null,
80
+ gen_ai_provider_name: null,
81
+ gen_ai_operation_name: null,
82
+ gen_ai_request_model: null,
83
+ gen_ai_agent_name: null,
84
+ gen_ai_agent_id: null,
85
+ gen_ai_tool_name: null,
86
+ gen_ai_usage_input_tokens: null,
87
+ gen_ai_usage_output_tokens: null,
88
+ http_request_method: "POST",
89
+ http_response_status_code: 201,
90
+ url_full: null,
91
+ url_path: "/repos/acme/app/issues",
92
+ server_address: null,
93
+ server_port: null,
94
+ error_type: null,
95
+ attributes: {
96
+ "http.request.method": "POST",
97
+ "http.response.status_code": 201,
98
+ "url.path": "/repos/acme/app/issues",
99
+ "pome.legacy.kind": "TwinHttpEvent",
100
+ "pome.legacy.record_json": '{"ts":"2026-06-02T12:00:00.000Z","run_id":"run_otel_demo","twin":"github","request_id":"req_001","step_id":null,"tool_call_id":null,"method":"POST","path":"/repos/acme/app/issues","request_body":{"title":"Bug","body":"broken"},"status":201,"response_body":{"number":7},"latency_ms":134,"fidelity":"semantic","state_mutation":true,"state_delta":{"before":null,"after":{"number":7}},"error":null,"kind":"TwinHttpEvent","event_id":"evt_http_1","parent_id":null}',
101
+ },
102
+ },
103
+ },
104
+ {
105
+ name: "llm-call/anthropic-messages",
106
+ provenance: "Pome LlmCallEvent (recorder-events.ts). Frozen output of shimLegacyEventToSpan with run_id option.",
107
+ derivedFrom: "pome-internal",
108
+ legacy: {
109
+ ts: "2026-06-02T12:00:01.000Z",
110
+ event_id: "evt_llm_1",
111
+ parent_id: "evt_http_1",
112
+ kind: "LlmCallEvent",
113
+ host: "api.anthropic.com",
114
+ port: 443,
115
+ latency_ms: 820,
116
+ bytes_in: 512,
117
+ bytes_out: 2048,
118
+ url: "https://api.anthropic.com/v1/messages",
119
+ method: "POST",
120
+ status: 200,
121
+ model: "claude-haiku-4-5",
122
+ prompt_tokens: 320,
123
+ completion_tokens: 96,
124
+ cost_usd: 0.0012,
125
+ },
126
+ options: { run_id: "run_otel_demo" },
127
+ expected: {
128
+ ts: "2026-06-02T12:00:01.000Z",
129
+ event_id: "legacy:evt_llm_1",
130
+ parent_id: "legacy:evt_http_1",
131
+ kind: "OtelSpanEvent",
132
+ trace_id: "legacy:run_otel_demo",
133
+ span_id: "legacy:evt_llm_1",
134
+ parent_span_id: "legacy:evt_http_1",
135
+ name: "chat claude-haiku-4-5",
136
+ span_kind: "CLIENT",
137
+ start_time_unix_nano: "1780401601000000000",
138
+ end_time_unix_nano: "1780401601820000000",
139
+ status_code: "UNSET",
140
+ status_message: null,
141
+ gen_ai_provider_name: null,
142
+ gen_ai_operation_name: "chat",
143
+ gen_ai_request_model: "claude-haiku-4-5",
144
+ gen_ai_agent_name: null,
145
+ gen_ai_agent_id: null,
146
+ gen_ai_tool_name: null,
147
+ gen_ai_usage_input_tokens: 320,
148
+ gen_ai_usage_output_tokens: 96,
149
+ http_request_method: "POST",
150
+ http_response_status_code: 200,
151
+ url_full: "https://api.anthropic.com/v1/messages",
152
+ url_path: null,
153
+ server_address: "api.anthropic.com",
154
+ server_port: 443,
155
+ error_type: null,
156
+ attributes: {
157
+ "gen_ai.operation.name": "chat",
158
+ "gen_ai.request.model": "claude-haiku-4-5",
159
+ "gen_ai.usage.input_tokens": 320,
160
+ "gen_ai.usage.output_tokens": 96,
161
+ "http.request.method": "POST",
162
+ "http.response.status_code": 200,
163
+ "url.full": "https://api.anthropic.com/v1/messages",
164
+ "server.address": "api.anthropic.com",
165
+ "server.port": 443,
166
+ "pome.legacy.kind": "LlmCallEvent",
167
+ "pome.legacy.record_json": '{"ts":"2026-06-02T12:00:01.000Z","event_id":"evt_llm_1","parent_id":"evt_http_1","kind":"LlmCallEvent","host":"api.anthropic.com","port":443,"latency_ms":820,"bytes_in":512,"bytes_out":2048,"url":"https://api.anthropic.com/v1/messages","method":"POST","status":200,"model":"claude-haiku-4-5","prompt_tokens":320,"completion_tokens":96,"cost_usd":0.0012}',
168
+ },
169
+ },
170
+ },
171
+ {
172
+ name: "tool-use/create-issue",
173
+ provenance: "Pome ToolUseEvent (recorder-events.ts). Frozen output of shimLegacyEventToSpan with run_id option.",
174
+ derivedFrom: "pome-internal",
175
+ legacy: {
176
+ ts: "2026-06-02T12:00:02.000Z",
177
+ event_id: "evt_tool_1",
178
+ parent_id: "evt_llm_1",
179
+ kind: "ToolUseEvent",
180
+ tool_use_id: "toolu_abc",
181
+ tool_name: "create_issue",
182
+ input: { title: "Bug" },
183
+ },
184
+ options: { run_id: "run_otel_demo" },
185
+ expected: {
186
+ ts: "2026-06-02T12:00:02.000Z",
187
+ event_id: "legacy:evt_tool_1",
188
+ parent_id: "legacy:evt_llm_1",
189
+ kind: "OtelSpanEvent",
190
+ trace_id: "legacy:run_otel_demo",
191
+ span_id: "legacy:evt_tool_1",
192
+ parent_span_id: "legacy:evt_llm_1",
193
+ name: "execute_tool create_issue",
194
+ span_kind: "INTERNAL",
195
+ start_time_unix_nano: "1780401602000000000",
196
+ end_time_unix_nano: null,
197
+ status_code: "UNSET",
198
+ status_message: null,
199
+ gen_ai_provider_name: null,
200
+ gen_ai_operation_name: "execute_tool",
201
+ gen_ai_request_model: null,
202
+ gen_ai_agent_name: null,
203
+ gen_ai_agent_id: null,
204
+ gen_ai_tool_name: "create_issue",
205
+ gen_ai_usage_input_tokens: null,
206
+ gen_ai_usage_output_tokens: null,
207
+ http_request_method: null,
208
+ http_response_status_code: null,
209
+ url_full: null,
210
+ url_path: null,
211
+ server_address: null,
212
+ server_port: null,
213
+ error_type: null,
214
+ attributes: {
215
+ "gen_ai.operation.name": "execute_tool",
216
+ "gen_ai.tool.name": "create_issue",
217
+ "pome.legacy.kind": "ToolUseEvent",
218
+ "pome.legacy.record_json": '{"ts":"2026-06-02T12:00:02.000Z","event_id":"evt_tool_1","parent_id":"evt_llm_1","kind":"ToolUseEvent","tool_use_id":"toolu_abc","tool_name":"create_issue","input":{"title":"Bug"}}',
219
+ },
220
+ },
221
+ },
222
+ ]);
223
+ // ─── Real-emitter spans (normalized OtelSpanInput; keys from each emitter) ────
224
+ // Successful spans are left status-UNSET (the OTel convention — `OK` is not set
225
+ // merely because a span succeeded). `derivedFrom` flags the documented sourcing.
226
+ export const EMITTER_FIXTURES = deepFreeze([
227
+ {
228
+ name: "traceloop/openai-chat",
229
+ emitter: "traceloop",
230
+ // Traceloop / OpenLLMetry emits the deprecated gen_ai.system + pre-1.27
231
+ // prompt_tokens/completion_tokens — exercises both ingestion aliases.
232
+ provenance: "https://github.com/traceloop/openllmetry semconv_ai constants + https://www.traceloop.com/docs/openllmetry/contributing/semantic-conventions",
233
+ sourceVersion: "OpenLLMetry semconv_ai (documentation-derived; not a live capture)",
234
+ derivedFrom: "documentation-derived",
235
+ span: {
236
+ trace_id: "11111111111111111111111111111111",
237
+ span_id: "1111111111111111",
238
+ name: "openai.chat",
239
+ kind: "CLIENT",
240
+ start_time_unix_nano: "1780401600000000000",
241
+ end_time_unix_nano: "1780401600500000000",
242
+ attributes: {
243
+ "gen_ai.system": "openai",
244
+ "llm.request.type": "chat",
245
+ "gen_ai.request.model": "gpt-4",
246
+ "gen_ai.response.model": "gpt-4-0613",
247
+ "gen_ai.usage.prompt_tokens": 100,
248
+ "gen_ai.usage.completion_tokens": 180,
249
+ "llm.usage.total_tokens": 280,
250
+ "traceloop.span.kind": "workflow",
251
+ "traceloop.entity.name": "openai.chat",
252
+ },
253
+ },
254
+ },
255
+ {
256
+ name: "vercel-ai-sdk/do-generate",
257
+ emitter: "vercel-ai-sdk",
258
+ // The provider (doGenerate) span carries gen_ai.* with the new
259
+ // input_tokens/output_tokens names; older builds still set gen_ai.system.
260
+ provenance: "https://ai-sdk.dev/docs/ai-sdk-core/telemetry",
261
+ sourceVersion: "Vercel AI SDK telemetry docs (documentation-derived; not a live capture)",
262
+ derivedFrom: "documentation-derived",
263
+ span: {
264
+ trace_id: "22222222222222222222222222222222",
265
+ span_id: "2222222222222222",
266
+ parent_span_id: "2222222222222200",
267
+ name: "ai.generateText.doGenerate",
268
+ kind: "CLIENT",
269
+ start_time_unix_nano: "1780401601000000000",
270
+ end_time_unix_nano: "1780401601900000000",
271
+ attributes: {
272
+ "operation.name": "ai.generateText.doGenerate",
273
+ "ai.operationId": "ai.generateText.doGenerate",
274
+ "ai.response.model": "gpt-4-0613",
275
+ "gen_ai.system": "openai",
276
+ "gen_ai.request.model": "gpt-4",
277
+ "gen_ai.request.temperature": 0.7,
278
+ "gen_ai.response.finish_reasons": ["stop"],
279
+ "gen_ai.usage.input_tokens": 100,
280
+ "gen_ai.usage.output_tokens": 180,
281
+ },
282
+ },
283
+ },
284
+ {
285
+ name: "pydantic-logfire/chat",
286
+ emitter: "pydantic-logfire",
287
+ // Pydantic Logfire / Pydantic AI is on the canonical gen_ai.provider.name
288
+ // + input/output names and sets gen_ai.operation.name; span name "chat {model}".
289
+ provenance: "https://pydantic.dev/docs/ai/integrations/logfire/ + https://pydantic.dev/docs/ai/api/models/instrumented/",
290
+ sourceVersion: "Pydantic AI / Logfire instrumentation docs (documentation-derived; not a live capture)",
291
+ derivedFrom: "documentation-derived",
292
+ span: {
293
+ trace_id: "33333333333333333333333333333333",
294
+ span_id: "3333333333333333",
295
+ name: "chat gpt-4",
296
+ kind: "CLIENT",
297
+ start_time_unix_nano: "1780401602000000000",
298
+ end_time_unix_nano: "1780401602750000000",
299
+ attributes: {
300
+ "gen_ai.provider.name": "openai",
301
+ "gen_ai.operation.name": "chat",
302
+ "gen_ai.request.model": "gpt-4",
303
+ "gen_ai.response.model": "gpt-4",
304
+ "gen_ai.usage.input_tokens": 150,
305
+ "gen_ai.usage.output_tokens": 75,
306
+ },
307
+ },
308
+ },
309
+ ]);
310
+ // ─── Multi-span sub-agent traces ─────────────────────────────────────────────
311
+ export const TRACE_FIXTURES = deepFreeze([
312
+ {
313
+ name: "subagent-fanout/two-children",
314
+ provenance: "Pydantic AI invoke_agent + child model spans (https://pydantic.dev/docs/ai/integrations/logfire/). Root agent span fans out to two sub-agent spans, each with one LLM child.",
315
+ derivedFrom: "documentation-derived",
316
+ spans: [
317
+ {
318
+ trace_id: "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
319
+ span_id: "a000000000000000",
320
+ name: "invoke_agent orchestrator",
321
+ kind: "INTERNAL",
322
+ start_time_unix_nano: "1780401600000000000",
323
+ end_time_unix_nano: "1780401603000000000",
324
+ attributes: {
325
+ "gen_ai.provider.name": "openai",
326
+ "gen_ai.operation.name": "invoke_agent",
327
+ "gen_ai.agent.name": "orchestrator",
328
+ "gen_ai.agent.id": "agent_root",
329
+ },
330
+ },
331
+ {
332
+ trace_id: "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
333
+ span_id: "a000000000000001",
334
+ parent_span_id: "a000000000000000",
335
+ name: "invoke_agent researcher",
336
+ kind: "INTERNAL",
337
+ start_time_unix_nano: "1780401600100000000",
338
+ end_time_unix_nano: "1780401601500000000",
339
+ attributes: {
340
+ "gen_ai.operation.name": "invoke_agent",
341
+ "gen_ai.agent.name": "researcher",
342
+ "gen_ai.agent.id": "agent_research",
343
+ },
344
+ },
345
+ {
346
+ trace_id: "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
347
+ span_id: "a000000000000002",
348
+ parent_span_id: "a000000000000001",
349
+ name: "chat gpt-4",
350
+ kind: "CLIENT",
351
+ start_time_unix_nano: "1780401600200000000",
352
+ end_time_unix_nano: "1780401601400000000",
353
+ attributes: {
354
+ "gen_ai.provider.name": "openai",
355
+ "gen_ai.operation.name": "chat",
356
+ "gen_ai.request.model": "gpt-4",
357
+ "gen_ai.usage.input_tokens": 200,
358
+ "gen_ai.usage.output_tokens": 90,
359
+ },
360
+ },
361
+ {
362
+ trace_id: "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
363
+ span_id: "a000000000000003",
364
+ parent_span_id: "a000000000000000",
365
+ name: "invoke_agent writer",
366
+ kind: "INTERNAL",
367
+ start_time_unix_nano: "1780401601600000000",
368
+ end_time_unix_nano: "1780401602900000000",
369
+ attributes: {
370
+ "gen_ai.operation.name": "invoke_agent",
371
+ "gen_ai.agent.name": "writer",
372
+ "gen_ai.agent.id": "agent_writer",
373
+ },
374
+ },
375
+ {
376
+ trace_id: "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
377
+ span_id: "a000000000000004",
378
+ parent_span_id: "a000000000000003",
379
+ name: "chat gpt-4",
380
+ kind: "CLIENT",
381
+ start_time_unix_nano: "1780401601700000000",
382
+ end_time_unix_nano: "1780401602800000000",
383
+ attributes: {
384
+ "gen_ai.provider.name": "openai",
385
+ "gen_ai.operation.name": "chat",
386
+ "gen_ai.request.model": "gpt-4",
387
+ "gen_ai.usage.input_tokens": 140,
388
+ "gen_ai.usage.output_tokens": 60,
389
+ },
390
+ },
391
+ ],
392
+ },
393
+ {
394
+ name: "tool-chain/llm-then-tool",
395
+ provenance: "OTel GenAI tool spans (https://opentelemetry.io/docs/specs/semconv/gen-ai/gen-ai-spans/). One LLM span followed by an execute_tool child.",
396
+ derivedFrom: "otel-spec",
397
+ spans: [
398
+ {
399
+ trace_id: "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
400
+ span_id: "b000000000000000",
401
+ name: "chat gpt-4",
402
+ kind: "CLIENT",
403
+ start_time_unix_nano: "1780401600000000000",
404
+ end_time_unix_nano: "1780401601000000000",
405
+ attributes: {
406
+ "gen_ai.provider.name": "openai",
407
+ "gen_ai.operation.name": "chat",
408
+ "gen_ai.request.model": "gpt-4",
409
+ "gen_ai.usage.input_tokens": 80,
410
+ "gen_ai.usage.output_tokens": 40,
411
+ },
412
+ },
413
+ {
414
+ trace_id: "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
415
+ span_id: "b000000000000001",
416
+ parent_span_id: "b000000000000000",
417
+ name: "execute_tool create_issue",
418
+ kind: "INTERNAL",
419
+ start_time_unix_nano: "1780401601000000000",
420
+ end_time_unix_nano: "1780401601200000000",
421
+ attributes: {
422
+ "gen_ai.operation.name": "execute_tool",
423
+ "gen_ai.tool.name": "create_issue",
424
+ },
425
+ },
426
+ ],
427
+ },
428
+ ]);
429
+ // ─── External-API (twin-relevant) spans ──────────────────────────────────────
430
+ export const EXTERNAL_API_FIXTURES = deepFreeze([
431
+ {
432
+ name: "github/get-issue-404",
433
+ provenance: "OTel HTTP client semconv (https://opentelemetry.io/docs/specs/semconv/http/http-spans/). A twin-relevant external-API span for M4 drift detection — a 404 from the real GitHub API. Low-cardinality span name (method only).",
434
+ derivedFrom: "otel-spec",
435
+ span: {
436
+ trace_id: "cccccccccccccccccccccccccccccccc",
437
+ span_id: "c000000000000000",
438
+ name: "GET",
439
+ kind: "CLIENT",
440
+ start_time_unix_nano: "1780401600000000000",
441
+ end_time_unix_nano: "1780401600090000000",
442
+ status: { code: "ERROR", message: "Not Found" },
443
+ attributes: {
444
+ "http.request.method": "GET",
445
+ "http.response.status_code": 404,
446
+ "url.full": "https://api.github.com/repos/acme/app/issues/999",
447
+ "url.path": "/repos/acme/app/issues/999",
448
+ "server.address": "api.github.com",
449
+ "server.port": 443,
450
+ "error.type": "404",
451
+ },
452
+ },
453
+ },
454
+ ]);
455
+ //# sourceMappingURL=data.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"data.js","sourceRoot":"","sources":["../../../src/otel/fixtures/data.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,39 @@
1
+ /**
2
+ * otel/fixtures — typed accessor for the golden-fixture conformance corpus
3
+ * (M1.3 / FDRS-482).
4
+ *
5
+ * Stable import path for every consuming milestone (M1.2, M2–M6):
6
+ *
7
+ * import { getLegacyFixtures, getEmitterFixtures } from "@pome-sh/shared-types/otel/fixtures";
8
+ *
9
+ * The corpus itself is static data in `./data`; this module is the documented,
10
+ * typed entry point. Keep all access going through these accessors so a future
11
+ * corpus reorganization is a one-file change.
12
+ */
13
+ import { type EmitterFixture, type ExternalApiFixture, type LegacyFixture, type TraceFixture } from "./data.js";
14
+ export type { EmitterFixture, ExternalApiFixture, LegacyFixture, TraceFixture, } from "./data.js";
15
+ /** (legacy record → expected OtelSpanEvent) pairs — consumed by the M1.2 shim. */
16
+ export declare function getLegacyFixtures(): readonly LegacyFixture[];
17
+ /** Real-emitter spans (Traceloop / Vercel AI SDK / Pydantic Logfire). */
18
+ export declare function getEmitterFixtures(): readonly EmitterFixture[];
19
+ /** Multi-span sub-agent traces (parent_span_id trees). */
20
+ export declare function getTraceFixtures(): readonly TraceFixture[];
21
+ /** Twin-relevant external-API (HTTP) spans. */
22
+ export declare function getExternalApiFixtures(): readonly ExternalApiFixture[];
23
+ /** Every normalized span across the emitter, trace, and external-API families. */
24
+ export declare function getAllSpanInputs(): {
25
+ trace_id: string;
26
+ span_id: string;
27
+ name: string;
28
+ start_time_unix_nano: string;
29
+ attributes: Record<string, string | number | boolean | (string | number | boolean)[]>;
30
+ parent_span_id?: string | null | undefined;
31
+ kind?: number | "UNSPECIFIED" | "INTERNAL" | "SERVER" | "CLIENT" | "PRODUCER" | "CONSUMER" | undefined;
32
+ end_time_unix_nano?: string | null | undefined;
33
+ status?: {
34
+ code?: number | "UNSET" | "OK" | "ERROR" | undefined;
35
+ message?: string | null | undefined;
36
+ } | undefined;
37
+ }[];
38
+ /** Look up a legacy fixture by its stable `name`; throws if absent. */
39
+ export declare function getLegacyFixtureByName(name: string): LegacyFixture;
@@ -0,0 +1,47 @@
1
+ // SPDX-License-Identifier: Apache-2.0
2
+ /**
3
+ * otel/fixtures — typed accessor for the golden-fixture conformance corpus
4
+ * (M1.3 / FDRS-482).
5
+ *
6
+ * Stable import path for every consuming milestone (M1.2, M2–M6):
7
+ *
8
+ * import { getLegacyFixtures, getEmitterFixtures } from "@pome-sh/shared-types/otel/fixtures";
9
+ *
10
+ * The corpus itself is static data in `./data`; this module is the documented,
11
+ * typed entry point. Keep all access going through these accessors so a future
12
+ * corpus reorganization is a one-file change.
13
+ */
14
+ import { EMITTER_FIXTURES, EXTERNAL_API_FIXTURES, LEGACY_FIXTURES, TRACE_FIXTURES, } from "./data.js";
15
+ /** (legacy record → expected OtelSpanEvent) pairs — consumed by the M1.2 shim. */
16
+ export function getLegacyFixtures() {
17
+ return LEGACY_FIXTURES;
18
+ }
19
+ /** Real-emitter spans (Traceloop / Vercel AI SDK / Pydantic Logfire). */
20
+ export function getEmitterFixtures() {
21
+ return EMITTER_FIXTURES;
22
+ }
23
+ /** Multi-span sub-agent traces (parent_span_id trees). */
24
+ export function getTraceFixtures() {
25
+ return TRACE_FIXTURES;
26
+ }
27
+ /** Twin-relevant external-API (HTTP) spans. */
28
+ export function getExternalApiFixtures() {
29
+ return EXTERNAL_API_FIXTURES;
30
+ }
31
+ /** Every normalized span across the emitter, trace, and external-API families. */
32
+ export function getAllSpanInputs() {
33
+ return [
34
+ ...EMITTER_FIXTURES.map((fixture) => fixture.span),
35
+ ...TRACE_FIXTURES.flatMap((fixture) => fixture.spans),
36
+ ...EXTERNAL_API_FIXTURES.map((fixture) => fixture.span),
37
+ ];
38
+ }
39
+ /** Look up a legacy fixture by its stable `name`; throws if absent. */
40
+ export function getLegacyFixtureByName(name) {
41
+ const fixture = LEGACY_FIXTURES.find((candidate) => candidate.name === name);
42
+ if (fixture === undefined) {
43
+ throw new Error(`unknown legacy fixture: ${name}`);
44
+ }
45
+ return fixture;
46
+ }
47
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/otel/fixtures/index.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC;;;;;;;;;;;GAWG;AAEH,OAAO,EACL,gBAAgB,EAChB,qBAAqB,EACrB,eAAe,EACf,cAAc,GAKf,MAAM,WAAW,CAAC;AASnB,kFAAkF;AAClF,MAAM,UAAU,iBAAiB;IAC/B,OAAO,eAAe,CAAC;AACzB,CAAC;AAED,yEAAyE;AACzE,MAAM,UAAU,kBAAkB;IAChC,OAAO,gBAAgB,CAAC;AAC1B,CAAC;AAED,0DAA0D;AAC1D,MAAM,UAAU,gBAAgB;IAC9B,OAAO,cAAc,CAAC;AACxB,CAAC;AAED,+CAA+C;AAC/C,MAAM,UAAU,sBAAsB;IACpC,OAAO,qBAAqB,CAAC;AAC/B,CAAC;AAED,kFAAkF;AAClF,MAAM,UAAU,gBAAgB;IAC9B,OAAO;QACL,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;QAClD,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;QACrD,GAAG,qBAAqB,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;KACxD,CAAC;AACJ,CAAC;AAED,uEAAuE;AACvE,MAAM,UAAU,sBAAsB,CAAC,IAAY;IACjD,MAAM,OAAO,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;IAC7E,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CAAC,2BAA2B,IAAI,EAAE,CAAC,CAAC;IACrD,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC"}
@@ -0,0 +1,25 @@
1
+ /**
2
+ * otel — OpenTelemetry-native trace surface (Open Telemetry Integration, M1).
3
+ *
4
+ * Barrel re-export. The golden-fixture corpus under `./fixtures/` is a
5
+ * test/dev artifact and is intentionally NOT re-exported from the public barrel.
6
+ *
7
+ * OWNERSHIP BOUNDARY (settled at FDRS-653; supersedes the earlier
8
+ * "pome-cloud mirrors this directory verbatim" claim, which no longer held):
9
+ * - FORMAT schemas are canonical HERE, in `pome-sh/pome-twins`
10
+ * `@pome-sh/shared-types` v0.5.0+: `span-event`, `event-schema`,
11
+ * `semconv`, `nano`, `project`, `map-span`, `legacy-shim`, and the
12
+ * `fixtures/` corpus. pome-cloud CONSUMES this surface (FDRS-654 swaps it
13
+ * onto the published package); it does not fork it.
14
+ * - INGEST-side utilities are cloud-owned consumers and intentionally do NOT
15
+ * live here: OTLP wire decoding (`decode-otlp.ts`), redaction/allowlist
16
+ * processors, storage helpers, and the raw OTLP envelope capture tooling +
17
+ * captured envelope fixtures that feed the decoder.
18
+ */
19
+ export * from "./semconv.js";
20
+ export * from "./nano.js";
21
+ export * from "./project.js";
22
+ export * from "./span-event.js";
23
+ export * from "./map-span.js";
24
+ export * from "./legacy-shim.js";
25
+ export * from "./event-schema.js";
@@ -0,0 +1,27 @@
1
+ // SPDX-License-Identifier: Apache-2.0
2
+ /**
3
+ * otel — OpenTelemetry-native trace surface (Open Telemetry Integration, M1).
4
+ *
5
+ * Barrel re-export. The golden-fixture corpus under `./fixtures/` is a
6
+ * test/dev artifact and is intentionally NOT re-exported from the public barrel.
7
+ *
8
+ * OWNERSHIP BOUNDARY (settled at FDRS-653; supersedes the earlier
9
+ * "pome-cloud mirrors this directory verbatim" claim, which no longer held):
10
+ * - FORMAT schemas are canonical HERE, in `pome-sh/pome-twins`
11
+ * `@pome-sh/shared-types` v0.5.0+: `span-event`, `event-schema`,
12
+ * `semconv`, `nano`, `project`, `map-span`, `legacy-shim`, and the
13
+ * `fixtures/` corpus. pome-cloud CONSUMES this surface (FDRS-654 swaps it
14
+ * onto the published package); it does not fork it.
15
+ * - INGEST-side utilities are cloud-owned consumers and intentionally do NOT
16
+ * live here: OTLP wire decoding (`decode-otlp.ts`), redaction/allowlist
17
+ * processors, storage helpers, and the raw OTLP envelope capture tooling +
18
+ * captured envelope fixtures that feed the decoder.
19
+ */
20
+ export * from "./semconv.js";
21
+ export * from "./nano.js";
22
+ export * from "./project.js";
23
+ export * from "./span-event.js";
24
+ export * from "./map-span.js";
25
+ export * from "./legacy-shim.js";
26
+ export * from "./event-schema.js";
27
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/otel/index.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC;;;;;;;;;;;;;;;;;GAiBG;AACH,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,cAAc,CAAC;AAC7B,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC"}