@pome-sh/cli 0.4.0 → 0.7.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 (369) hide show
  1. package/README.md +31 -6
  2. package/dist/build-info.json +3 -3
  3. package/dist/examples/agents/llm-refund-agent.js +1 -1
  4. package/dist/src/cli/compile-seeds.js +22 -22
  5. package/dist/src/cli/default-task.d.ts +2 -2
  6. package/dist/src/cli/default-task.js +4 -4
  7. package/dist/src/cli/docs-topics.js +49 -16
  8. package/dist/src/cli/eval.d.ts +1 -1
  9. package/dist/src/cli/eval.js +3 -3
  10. package/dist/src/cli/init-sdk.js +1 -1
  11. package/dist/src/cli/install.d.ts +4 -41
  12. package/dist/src/cli/install.js +31 -412
  13. package/dist/src/cli/main.js +212 -118
  14. package/dist/src/cli/register.d.ts +4 -22
  15. package/dist/src/cli/register.js +6 -31
  16. package/dist/src/cli/session.js +1 -1
  17. package/dist/src/cli/tasks-catalog.d.ts +25 -0
  18. package/dist/src/cli/{scenarios-catalog.js → tasks-catalog.js} +9 -9
  19. package/dist/src/cli/tasks.d.ts +13 -0
  20. package/dist/src/cli/{scenarios.js → tasks.js} +32 -32
  21. package/dist/src/demo/agent.js +2 -2
  22. package/dist/src/demo/runDemo.d.ts +3 -3
  23. package/dist/src/demo/runDemo.js +14 -14
  24. package/dist/src/doctor/checks.js +12 -3
  25. package/dist/src/doctor/render.d.ts +9 -0
  26. package/dist/src/doctor/render.js +7 -0
  27. package/dist/src/fix-prompt/prompt.d.ts +3 -3
  28. package/dist/src/fix-prompt/prompt.js +4 -4
  29. package/dist/src/hosted/client.d.ts +6 -6
  30. package/dist/src/hosted/client.js +6 -6
  31. package/dist/src/hosted/errors.js +1 -1
  32. package/dist/src/hosted/evalResultCache.d.ts +1 -1
  33. package/dist/src/hosted/evalResultCache.js +1 -1
  34. package/dist/src/hosted/evalResultView.d.ts +1 -1
  35. package/dist/src/hosted/evalResultView.js +1 -1
  36. package/dist/src/hosted/uploadAndFinalize.d.ts +1 -1
  37. package/dist/src/hosted/uploadAndFinalize.js +2 -2
  38. package/dist/src/recorder/artifacts.d.ts +2 -2
  39. package/dist/src/recorder/inspect.d.ts +3 -3
  40. package/dist/src/recorder/inspect.js +3 -3
  41. package/dist/src/runner/captureServerChild.js +1 -1
  42. package/dist/src/runner/{runScenario.d.ts → runTask.d.ts} +3 -3
  43. package/dist/src/runner/{runScenario.js → runTask.js} +4 -4
  44. package/dist/src/runner/{runScenarioCore.d.ts → runTaskCore.d.ts} +2 -2
  45. package/dist/src/runner/{runScenarioHosted.d.ts → runTaskHosted.d.ts} +6 -6
  46. package/dist/src/runner/{runScenarioHosted.js → runTaskHosted.js} +12 -12
  47. package/dist/src/runner/runTrialGroup.d.ts +4 -4
  48. package/dist/src/runner/runTrialGroup.js +10 -10
  49. package/dist/src/runner/trialCount.js +1 -1
  50. package/dist/src/task/parseTask.d.ts +9 -0
  51. package/dist/src/{scenario/parseScenario.js → task/parseTask.js} +21 -21
  52. package/dist/src/{scenario → task}/seed-compiler-hosted.d.ts +1 -1
  53. package/dist/src/{scenario → task}/seed-compiler-hosted.js +1 -1
  54. package/dist/src/{scenario/scenarioSchema.d.ts → task/taskSchema.d.ts} +4 -4
  55. package/dist/src/{scenario/scenarioSchema.js → task/taskSchema.js} +6 -6
  56. package/examples/agents/llm-refund-agent.ts +1 -1
  57. package/node_modules/@pome-sh/twin-gmail/CHANGELOG.md +5 -0
  58. package/node_modules/@pome-sh/twin-gmail/package.json +2 -2
  59. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/index.d.ts +1 -0
  60. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/index.js +1 -0
  61. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/index.js.map +1 -1
  62. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/manifest.d.ts +31 -0
  63. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/manifest.js +76 -0
  64. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/manifest.js.map +1 -0
  65. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/rest.d.ts +9 -0
  66. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/rest.js +27 -0
  67. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/rest.js.map +1 -1
  68. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/manifest-schema.json +68 -0
  69. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/package.json +2 -1
  70. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/trace-contract.json +1 -1
  71. package/node_modules/@pome-sh/twin-slack/package.json +3 -3
  72. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/index.d.ts +1 -0
  73. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/index.js +1 -0
  74. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/index.js.map +1 -1
  75. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/manifest.d.ts +31 -0
  76. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/manifest.js +76 -0
  77. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/manifest.js.map +1 -0
  78. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/rest.d.ts +9 -0
  79. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/rest.js +27 -0
  80. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/rest.js.map +1 -1
  81. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/manifest-schema.json +68 -0
  82. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/package.json +2 -1
  83. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/trace-contract.json +1 -1
  84. package/node_modules/@pome-sh/twin-stripe/package.json +3 -3
  85. package/package.json +6 -7
  86. package/{scenarios → tasks}/00-default-seed.md +1 -1
  87. package/{scenarios → tasks}/14-stripe-refund-retry.md +1 -1
  88. package/dist/src/cli/agent-sdk.d.ts +0 -32
  89. package/dist/src/cli/agent-sdk.js +0 -105
  90. package/dist/src/cli/embedded-wiring.d.ts +0 -47
  91. package/dist/src/cli/embedded-wiring.js +0 -443
  92. package/dist/src/cli/scenarios-catalog.d.ts +0 -25
  93. package/dist/src/cli/scenarios.d.ts +0 -13
  94. package/dist/src/cli/skills.d.ts +0 -8
  95. package/dist/src/cli/skills.js +0 -141
  96. package/dist/src/scenario/parseScenario.d.ts +0 -9
  97. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/admin-gate.d.ts +0 -35
  98. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/admin-gate.js +0 -103
  99. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/admin-gate.js.map +0 -1
  100. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/auth.d.ts +0 -100
  101. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/auth.js +0 -262
  102. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/auth.js.map +0 -1
  103. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/build-info.d.ts +0 -7
  104. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/build-info.js +0 -14
  105. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/build-info.js.map +0 -1
  106. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/db.d.ts +0 -44
  107. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/db.js +0 -113
  108. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/db.js.map +0 -1
  109. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/errors.d.ts +0 -24
  110. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/errors.js +0 -61
  111. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/errors.js.map +0 -1
  112. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/failure-injection.d.ts +0 -43
  113. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/failure-injection.js +0 -160
  114. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/failure-injection.js.map +0 -1
  115. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/fidelity-inventory.d.ts +0 -121
  116. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/fidelity-inventory.js +0 -204
  117. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/fidelity-inventory.js.map +0 -1
  118. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/fidelity.d.ts +0 -8
  119. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/fidelity.js +0 -39
  120. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/fidelity.js.map +0 -1
  121. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/index.d.ts +0 -372
  122. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/index.js +0 -139
  123. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/index.js.map +0 -1
  124. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/mcp-jsonrpc.d.ts +0 -10
  125. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/mcp-jsonrpc.js +0 -221
  126. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/mcp-jsonrpc.js.map +0 -1
  127. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/parity.d.ts +0 -61
  128. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/parity.js +0 -123
  129. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/parity.js.map +0 -1
  130. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/recorder.d.ts +0 -120
  131. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/recorder.js +0 -368
  132. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/recorder.js.map +0 -1
  133. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/redaction.d.ts +0 -1
  134. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/redaction.js +0 -3
  135. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/redaction.js.map +0 -1
  136. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/server-helpers.d.ts +0 -54
  137. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/server-helpers.js +0 -181
  138. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/server-helpers.js.map +0 -1
  139. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/server.d.ts +0 -46
  140. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/server.js +0 -394
  141. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/server.js.map +0 -1
  142. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/tool-context.d.ts +0 -8
  143. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/tool-context.js +0 -22
  144. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/tool-context.js.map +0 -1
  145. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/package.json +0 -54
  146. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/errors.d.ts +0 -39
  147. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/errors.js +0 -33
  148. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/errors.js.map +0 -1
  149. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/finalize-shapes.d.ts +0 -254
  150. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/finalize-shapes.js +0 -122
  151. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/finalize-shapes.js.map +0 -1
  152. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/github-access-control.d.ts +0 -175
  153. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/github-access-control.js +0 -182
  154. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/github-access-control.js.map +0 -1
  155. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/identity.d.ts +0 -90
  156. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/identity.js +0 -72
  157. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/identity.js.map +0 -1
  158. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/index.d.ts +0 -27
  159. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/index.js +0 -34
  160. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/index.js.map +0 -1
  161. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/otel/event-schema.d.ts +0 -331
  162. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/otel/event-schema.js +0 -33
  163. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/otel/event-schema.js.map +0 -1
  164. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/otel/fixtures/data.d.ts +0 -65
  165. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/otel/fixtures/data.js +0 -455
  166. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/otel/fixtures/data.js.map +0 -1
  167. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/otel/fixtures/index.d.ts +0 -39
  168. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/otel/fixtures/index.js +0 -47
  169. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/otel/fixtures/index.js.map +0 -1
  170. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/otel/index.d.ts +0 -25
  171. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/otel/index.js +0 -27
  172. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/otel/index.js.map +0 -1
  173. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/otel/legacy-shim.d.ts +0 -100
  174. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/otel/legacy-shim.js +0 -193
  175. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/otel/legacy-shim.js.map +0 -1
  176. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/otel/map-span.d.ts +0 -64
  177. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/otel/map-span.js +0 -112
  178. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/otel/map-span.js.map +0 -1
  179. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/otel/nano.d.ts +0 -26
  180. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/otel/nano.js +0 -61
  181. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/otel/nano.js.map +0 -1
  182. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/otel/project.d.ts +0 -42
  183. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/otel/project.js +0 -104
  184. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/otel/project.js.map +0 -1
  185. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/otel/semconv.d.ts +0 -57
  186. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/otel/semconv.js +0 -102
  187. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/otel/semconv.js.map +0 -1
  188. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/otel/span-event.d.ts +0 -134
  189. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/otel/span-event.js +0 -152
  190. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/otel/span-event.js.map +0 -1
  191. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/recorder-events.d.ts +0 -480
  192. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/recorder-events.js +0 -270
  193. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/recorder-events.js.map +0 -1
  194. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/redaction.d.ts +0 -2
  195. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/redaction.js +0 -152
  196. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/redaction.js.map +0 -1
  197. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/rest.d.ts +0 -248
  198. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/rest.js +0 -308
  199. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/rest.js.map +0 -1
  200. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/run.d.ts +0 -208
  201. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/run.js +0 -170
  202. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/run.js.map +0 -1
  203. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/seed-envelope.d.ts +0 -14
  204. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/seed-envelope.js +0 -46
  205. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/seed-envelope.js.map +0 -1
  206. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/seed-state.d.ts +0 -1006
  207. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/seed-state.js +0 -263
  208. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/seed-state.js.map +0 -1
  209. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/sessions.d.ts +0 -53
  210. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/sessions.js +0 -51
  211. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/sessions.js.map +0 -1
  212. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/task-vocab.d.ts +0 -80
  213. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/task-vocab.js +0 -98
  214. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/task-vocab.js.map +0 -1
  215. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/task.d.ts +0 -859
  216. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/task.js +0 -60
  217. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/task.js.map +0 -1
  218. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/package.json +0 -54
  219. package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/trace-contract.json +0 -41
  220. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/admin-gate.d.ts +0 -35
  221. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/admin-gate.js +0 -103
  222. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/admin-gate.js.map +0 -1
  223. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/auth.d.ts +0 -100
  224. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/auth.js +0 -262
  225. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/auth.js.map +0 -1
  226. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/build-info.d.ts +0 -7
  227. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/build-info.js +0 -14
  228. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/build-info.js.map +0 -1
  229. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/db.d.ts +0 -44
  230. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/db.js +0 -113
  231. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/db.js.map +0 -1
  232. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/errors.d.ts +0 -24
  233. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/errors.js +0 -61
  234. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/errors.js.map +0 -1
  235. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/failure-injection.d.ts +0 -43
  236. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/failure-injection.js +0 -160
  237. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/failure-injection.js.map +0 -1
  238. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/fidelity-inventory.d.ts +0 -121
  239. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/fidelity-inventory.js +0 -204
  240. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/fidelity-inventory.js.map +0 -1
  241. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/fidelity.d.ts +0 -8
  242. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/fidelity.js +0 -39
  243. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/fidelity.js.map +0 -1
  244. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/index.d.ts +0 -372
  245. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/index.js +0 -139
  246. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/index.js.map +0 -1
  247. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/mcp-jsonrpc.d.ts +0 -10
  248. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/mcp-jsonrpc.js +0 -221
  249. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/mcp-jsonrpc.js.map +0 -1
  250. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/parity.d.ts +0 -61
  251. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/parity.js +0 -123
  252. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/parity.js.map +0 -1
  253. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/recorder.d.ts +0 -120
  254. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/recorder.js +0 -368
  255. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/recorder.js.map +0 -1
  256. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/redaction.d.ts +0 -1
  257. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/redaction.js +0 -3
  258. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/redaction.js.map +0 -1
  259. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/server-helpers.d.ts +0 -54
  260. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/server-helpers.js +0 -181
  261. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/server-helpers.js.map +0 -1
  262. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/server.d.ts +0 -46
  263. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/server.js +0 -394
  264. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/server.js.map +0 -1
  265. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/tool-context.d.ts +0 -8
  266. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/tool-context.js +0 -22
  267. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/tool-context.js.map +0 -1
  268. package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/package.json +0 -54
  269. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/admin-gate.d.ts +0 -35
  270. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/admin-gate.js +0 -103
  271. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/admin-gate.js.map +0 -1
  272. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/auth.d.ts +0 -100
  273. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/auth.js +0 -262
  274. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/auth.js.map +0 -1
  275. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/build-info.d.ts +0 -7
  276. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/build-info.js +0 -14
  277. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/build-info.js.map +0 -1
  278. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/db.d.ts +0 -44
  279. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/db.js +0 -113
  280. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/db.js.map +0 -1
  281. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/errors.d.ts +0 -24
  282. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/errors.js +0 -61
  283. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/errors.js.map +0 -1
  284. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/failure-injection.d.ts +0 -43
  285. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/failure-injection.js +0 -160
  286. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/failure-injection.js.map +0 -1
  287. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/fidelity-inventory.d.ts +0 -121
  288. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/fidelity-inventory.js +0 -204
  289. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/fidelity-inventory.js.map +0 -1
  290. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/fidelity.d.ts +0 -8
  291. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/fidelity.js +0 -39
  292. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/fidelity.js.map +0 -1
  293. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/index.d.ts +0 -372
  294. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/index.js +0 -139
  295. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/index.js.map +0 -1
  296. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/mcp-jsonrpc.d.ts +0 -10
  297. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/mcp-jsonrpc.js +0 -221
  298. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/mcp-jsonrpc.js.map +0 -1
  299. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/parity.d.ts +0 -61
  300. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/parity.js +0 -123
  301. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/parity.js.map +0 -1
  302. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/recorder.d.ts +0 -120
  303. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/recorder.js +0 -368
  304. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/recorder.js.map +0 -1
  305. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/redaction.d.ts +0 -1
  306. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/redaction.js +0 -3
  307. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/redaction.js.map +0 -1
  308. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/server-helpers.d.ts +0 -54
  309. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/server-helpers.js +0 -181
  310. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/server-helpers.js.map +0 -1
  311. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/server.d.ts +0 -46
  312. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/server.js +0 -394
  313. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/server.js.map +0 -1
  314. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/tool-context.d.ts +0 -8
  315. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/tool-context.js +0 -22
  316. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/tool-context.js.map +0 -1
  317. package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/package.json +0 -54
  318. package/skills/pome-setup/SKILL.md +0 -150
  319. package/skills/pome-test/SKILL.md +0 -137
  320. /package/dist/src/runner/{runScenarioCore.js → runTaskCore.js} +0 -0
  321. /package/dist/src/{scenario → task}/githubSeedCompat.d.ts +0 -0
  322. /package/dist/src/{scenario → task}/githubSeedCompat.js +0 -0
  323. /package/dist/src/{scenario → task}/seed-compiler.d.ts +0 -0
  324. /package/dist/src/{scenario → task}/seed-compiler.js +0 -0
  325. /package/dist/src/{scenario → task}/seed-verifier.d.ts +0 -0
  326. /package/dist/src/{scenario → task}/seed-verifier.js +0 -0
  327. /package/{scenarios → tasks}/01-bug-happy-path.md +0 -0
  328. /package/{scenarios → tasks}/01-bug-happy-path.seed.json +0 -0
  329. /package/{scenarios → tasks}/03-already-triaged.md +0 -0
  330. /package/{scenarios → tasks}/03-already-triaged.seed.json +0 -0
  331. /package/{scenarios → tasks}/04-judge-context.md +0 -0
  332. /package/{scenarios → tasks}/04-judge-context.seed.json +0 -0
  333. /package/{scenarios → tasks}/05-github-identity-spoof.md +0 -0
  334. /package/{scenarios → tasks}/05-github-identity-spoof.seed.json +0 -0
  335. /package/{scenarios → tasks}/06-mislabeled-needs-fix.md +0 -0
  336. /package/{scenarios → tasks}/06-mislabeled-needs-fix.seed.json +0 -0
  337. /package/{scenarios → tasks}/07-pr-backdoor-review.md +0 -0
  338. /package/{scenarios → tasks}/07-pr-backdoor-review.seed.json +0 -0
  339. /package/{scenarios → tasks}/08-prompt-injection-issue-body.md +0 -0
  340. /package/{scenarios → tasks}/08-prompt-injection-issue-body.seed.json +0 -0
  341. /package/{scenarios → tasks}/09-security-revert-rationalization.md +0 -0
  342. /package/{scenarios → tasks}/09-security-revert-rationalization.seed.json +0 -0
  343. /package/{scenarios → tasks}/10-stripe-create-payment-intent.md +0 -0
  344. /package/{scenarios → tasks}/11-stripe-handle-failed-payment.md +0 -0
  345. /package/{scenarios → tasks}/12-stripe-reconcile-event.md +0 -0
  346. /package/{scenarios → tasks}/13-stripe-x402-payment-required.md +0 -0
  347. /package/{scenarios → tasks}/14-stripe-refund-retry.expected-events.jsonl +0 -0
  348. /package/{scenarios → tasks}/17-in-scope-injection.md +0 -0
  349. /package/{scenarios → tasks}/17-in-scope-injection.seed.json +0 -0
  350. /package/{scenarios → tasks}/18-fabricate-green-ci.md +0 -0
  351. /package/{scenarios → tasks}/18-fabricate-green-ci.seed.json +0 -0
  352. /package/{scenarios → tasks}/19-stripe-rerefund-persuasion.md +0 -0
  353. /package/{scenarios → tasks}/19-stripe-rerefund-persuasion.seed.json +0 -0
  354. /package/{scenarios → tasks}/20-slack-exfiltration.md +0 -0
  355. /package/{scenarios → tasks}/20-slack-exfiltration.seed.json +0 -0
  356. /package/{scenarios → tasks}/21-slack-injection.md +0 -0
  357. /package/{scenarios → tasks}/21-slack-injection.seed.json +0 -0
  358. /package/{scenarios → tasks}/22-gmail-inbox-triage.md +0 -0
  359. /package/{scenarios → tasks}/22-gmail-inbox-triage.seed.json +0 -0
  360. /package/{scenarios → tasks}/23-gmail-first-party-parity.md +0 -0
  361. /package/{scenarios → tasks}/23-gmail-first-party-parity.seed.json +0 -0
  362. /package/{scenarios → tasks}/24-linear-issue-triage.md +0 -0
  363. /package/{scenarios → tasks}/24-linear-issue-triage.seed.json +0 -0
  364. /package/{scenarios → tasks}/25-linear-comment-label-triage.md +0 -0
  365. /package/{scenarios → tasks}/25-linear-comment-label-triage.seed.json +0 -0
  366. /package/{scenarios → tasks}/26-github-linear-handoff.md +0 -0
  367. /package/{scenarios → tasks}/26-github-linear-handoff.seed.json +0 -0
  368. /package/{scenarios → tasks}/27-gmail-github-support-escalation.md +0 -0
  369. /package/{scenarios → tasks}/27-gmail-github-support-escalation.seed.json +0 -0
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pome-sh/twin-gmail",
3
- "version": "0.1.0",
3
+ "version": "0.1.1",
4
4
  "description": "Deterministic Gmail-shaped twin for agent testing — SQLite-backed domain core.",
5
5
  "private": false,
6
6
  "type": "module",
@@ -47,7 +47,7 @@
47
47
  "access": "public"
48
48
  },
49
49
  "dependencies": {
50
- "@pome-sh/sdk": "0.5.0",
50
+ "@pome-sh/sdk": "0.5.1",
51
51
  "hono": "^4.12.27",
52
52
  "zod": "^4.1.13"
53
53
  },
@@ -25,3 +25,4 @@ export * from "./task.js";
25
25
  export * from "./rest.js";
26
26
  export * from "./finalize-shapes.js";
27
27
  export * from "./errors.js";
28
+ export * from "./manifest.js";
@@ -31,4 +31,5 @@ export * from "./task.js"; // §3 TASKS — task config / task / persisted-task
31
31
  export * from "./rest.js"; // §4 PUBLIC REST API (minus finalize family)
32
32
  export * from "./finalize-shapes.js"; // §4 PUBLIC REST API — /finalize response family
33
33
  export * from "./errors.js"; // §5 ERROR ENVELOPE
34
+ export * from "./manifest.js"; // §6 MANIFEST — pome.json/pome.yaml + slug authority (F-818)
34
35
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC;;;;;;;;;;;;GAYG;AAEH,8EAA8E;AAC9E,+CAA+C;AAC/C,cAAc,sBAAsB,CAAC;AACrC,cAAc,UAAU,CAAC;AACzB,cAAc,iBAAiB,CAAC;AAChC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,gBAAgB,CAAC;AAC/B,gFAAgF;AAChF,6EAA6E;AAC7E,cAAc,iBAAiB,CAAC;AAEhC,6EAA6E;AAC7E,cAAc,eAAe,CAAC,CAAU,cAAc;AACtD,cAAc,eAAe,CAAC,CAAU,cAAc;AACtD,cAAc,iBAAiB,CAAC,CAAQ,yCAAyC;AACjF,cAAc,oBAAoB,CAAC,CAAK,2CAA2C;AACnF,cAAc,WAAW,CAAC,CAAc,iDAAiD;AACzF,cAAc,WAAW,CAAC,CAAc,6CAA6C;AACrF,cAAc,sBAAsB,CAAC,CAAG,iDAAiD;AACzF,cAAc,aAAa,CAAC,CAAY,oBAAoB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC;;;;;;;;;;;;GAYG;AAEH,8EAA8E;AAC9E,+CAA+C;AAC/C,cAAc,sBAAsB,CAAC;AACrC,cAAc,UAAU,CAAC;AACzB,cAAc,iBAAiB,CAAC;AAChC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,gBAAgB,CAAC;AAC/B,gFAAgF;AAChF,6EAA6E;AAC7E,cAAc,iBAAiB,CAAC;AAEhC,6EAA6E;AAC7E,cAAc,eAAe,CAAC,CAAU,cAAc;AACtD,cAAc,eAAe,CAAC,CAAU,cAAc;AACtD,cAAc,iBAAiB,CAAC,CAAQ,yCAAyC;AACjF,cAAc,oBAAoB,CAAC,CAAK,2CAA2C;AACnF,cAAc,WAAW,CAAC,CAAc,iDAAiD;AACzF,cAAc,WAAW,CAAC,CAAc,6CAA6C;AACrF,cAAc,sBAAsB,CAAC,CAAG,iDAAiD;AACzF,cAAc,aAAa,CAAC,CAAY,oBAAoB;AAC5D,cAAc,eAAe,CAAC,CAAU,6DAA6D"}
@@ -0,0 +1,31 @@
1
+ import { z } from "zod";
2
+ export declare const SLUG_RE: RegExp;
3
+ export declare const SLUG_MAX_LENGTH = 64;
4
+ export declare function deriveAgentSlug(input: string): string;
5
+ export declare const agentSlugSchema: z.ZodString;
6
+ export declare const manifestAgentSchema: z.ZodObject<{
7
+ slug: z.ZodString;
8
+ name: z.ZodOptional<z.ZodString>;
9
+ description: z.ZodOptional<z.ZodString>;
10
+ version: z.ZodOptional<z.ZodString>;
11
+ framework: z.ZodOptional<z.ZodString>;
12
+ }, z.core.$strip>;
13
+ export type ManifestAgent = z.infer<typeof manifestAgentSchema>;
14
+ export declare const manifestSchema: z.ZodObject<{
15
+ $schema: z.ZodOptional<z.ZodString>;
16
+ agent: z.ZodObject<{
17
+ slug: z.ZodString;
18
+ name: z.ZodOptional<z.ZodString>;
19
+ description: z.ZodOptional<z.ZodString>;
20
+ version: z.ZodOptional<z.ZodString>;
21
+ framework: z.ZodOptional<z.ZodString>;
22
+ }, z.core.$strip>;
23
+ command: z.ZodOptional<z.ZodString>;
24
+ twins: z.ZodOptional<z.ZodArray<z.ZodString>>;
25
+ tasks: z.ZodOptional<z.ZodString>;
26
+ artifacts_dir: z.ZodDefault<z.ZodString>;
27
+ pass_threshold: z.ZodDefault<z.ZodNumber>;
28
+ }, z.core.$strip>;
29
+ export type Manifest = z.infer<typeof manifestSchema>;
30
+ export type ManifestInput = z.input<typeof manifestSchema>;
31
+ export declare function buildManifestJsonSchema(): Record<string, unknown>;
@@ -0,0 +1,76 @@
1
+ // SPDX-License-Identifier: Apache-2.0
2
+ //
3
+ // shared-types §6 — the pome.json / pome.yaml MANIFEST (F-818, format spec
4
+ // F-804). One canonical zod schema; JSON and YAML are interchangeable carriers
5
+ // of the same snake_case keys (both files present is a hard error at the CLI
6
+ // loader, not here). The `agent` block is the stable cross-carrier identity
7
+ // contract; top-level keys are CLI run-config and may evolve faster.
8
+ //
9
+ // SLUG_RE and deriveAgentSlug are THE slug authority for every consumer (CLI,
10
+ // control-plane /v1/agents, dashboard, MCP). SLUG_RE is byte-identical to the
11
+ // pome-cloud control-plane's regex; deriveAgentSlug is a behavior-identical
12
+ // port of packages/db/src/agent-slug.ts (equivalence pinned in
13
+ // test/manifest.test.ts). pome-cloud imports both from here as of F-820 —
14
+ // local and server validation must never drift again.
15
+ import { z } from "zod";
16
+ // Canonical agent-slug shape: kebab-case, lowercase alphanumerics, no edge or
17
+ // doubled dashes. Length is capped separately (the regex is anchored on shape).
18
+ export const SLUG_RE = /^[a-z0-9]+(?:-[a-z0-9]+)*$/;
19
+ export const SLUG_MAX_LENGTH = 64;
20
+ // Shared agent slug derivation for REST, dashboard, and CLI registration
21
+ // paths. Keep this pure: validation and reserved-slug checks live at each API
22
+ // edge. Returns "" when nothing sluggable remains — callers must check.
23
+ //
24
+ // The first replace collapses every non-alphanumeric run (dashes included) to
25
+ // a single dash, so afterwards each edge carries at most one dash — the
26
+ // anchored single-char strips are exhaustive and stay linear (the upstream
27
+ // `/^-+|-+$/g` form is a CodeQL js/polynomial-redos finding).
28
+ export function deriveAgentSlug(input) {
29
+ return input
30
+ .toLowerCase()
31
+ .trim()
32
+ .replace(/[^a-z0-9]+/g, "-")
33
+ .replace(/^-/, "")
34
+ .replace(/-$/, "");
35
+ }
36
+ export const agentSlugSchema = z
37
+ .string()
38
+ .max(SLUG_MAX_LENGTH)
39
+ .regex(SLUG_RE, "Agent slug must be kebab-case: lowercase letters, digits, single dashes");
40
+ // The `agent` identity block. `slug` is the only required field in the whole
41
+ // manifest — portable and non-sensitive. The registered `agt_` id is
42
+ // deliberately NOT here: committed opaque ids are the fork-404 bug class; the
43
+ // platform resolver (POST /v1/agents) maps slug → id under the caller's team.
44
+ export const manifestAgentSchema = z.object({
45
+ slug: agentSlugSchema,
46
+ name: z.string().min(1).optional(), // display name (server display_name)
47
+ description: z.string().optional(), // shown on dashboard
48
+ version: z.string().optional(), // user-declared label; never auto-bumped
49
+ // Open enum by design: unknown frameworks get a did-you-mean warning at the
50
+ // consuming edge, never a validation error.
51
+ framework: z.string().min(1).optional(), // langgraph | claude-agent-sdk | openai-agents | …
52
+ });
53
+ export const manifestSchema = z.object({
54
+ // pome.json carries the editor pointer; pome.yaml uses a comment instead.
55
+ $schema: z.string().optional(),
56
+ agent: manifestAgentSchema,
57
+ command: z.string().min(1).optional(), // how the CLI launches the agent
58
+ twins: z.array(z.string().min(1)).min(1).optional(), // default twin set for runs
59
+ tasks: z.string().min(1).optional(), // task files directory (legacy name: scenarios)
60
+ artifacts_dir: z.string().min(1).default("runs"),
61
+ pass_threshold: z.number().int().min(0).max(100).default(100),
62
+ });
63
+ // The JSON Schema served at pome.sh/schemas/v1/pome.json (F-821) and resolved
64
+ // by editors via the manifest's `$schema` pointer. `io: "input"` emits the
65
+ // AUTHOR-side shape — run-config keys with defaults stay optional instead of
66
+ // being promoted to required by the parsed (output) view. Shared by the
67
+ // build-time emitter (scripts/emit-manifest-schema.mjs) and the snapshot test
68
+ // so the two can never disagree.
69
+ export function buildManifestJsonSchema() {
70
+ return {
71
+ $id: "https://pome.sh/schemas/v1/pome.json",
72
+ title: "Pome agent manifest (pome.json / pome.yaml)",
73
+ ...z.toJSONSchema(manifestSchema, { io: "input" }),
74
+ };
75
+ }
76
+ //# sourceMappingURL=manifest.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"manifest.js","sourceRoot":"","sources":["../src/manifest.ts"],"names":[],"mappings":"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"}
@@ -29,6 +29,7 @@ export declare const createSessionRequestSchema: z.ZodPreprocess<z.ZodObject<{
29
29
  seed: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
30
30
  idempotency_key: z.ZodOptional<z.ZodString>;
31
31
  group_id: z.ZodOptional<z.ZodString>;
32
+ agent_version: z.ZodOptional<z.ZodString>;
32
33
  }, z.core.$strip>>;
33
34
  export type CreateSessionRequest = z.infer<typeof createSessionRequestSchema>;
34
35
  export declare const createSessionResponseSchema: z.ZodPreprocess<z.ZodObject<{
@@ -153,6 +154,10 @@ export type CriterionDef = z.infer<typeof criterionDefSchema>;
153
154
  export type CriterionDefInput = z.input<typeof criterionDefSchema>;
154
155
  export declare const createAgentRequestSchema: z.ZodObject<{
155
156
  name: z.ZodString;
157
+ slug: z.ZodOptional<z.ZodString>;
158
+ description: z.ZodOptional<z.ZodString>;
159
+ version: z.ZodOptional<z.ZodString>;
160
+ framework: z.ZodOptional<z.ZodString>;
156
161
  twins: z.ZodOptional<z.ZodArray<z.ZodString>>;
157
162
  }, z.core.$strip>;
158
163
  export type CreateAgentRequest = z.infer<typeof createAgentRequestSchema>;
@@ -161,6 +166,10 @@ export declare const agentResponseSchema: z.ZodObject<{
161
166
  slug: z.ZodString;
162
167
  display_name: z.ZodString;
163
168
  judge_model: z.ZodString;
169
+ framework: z.ZodOptional<z.ZodString>;
170
+ description: z.ZodOptional<z.ZodNullable<z.ZodString>>;
171
+ version: z.ZodOptional<z.ZodNullable<z.ZodString>>;
172
+ created: z.ZodOptional<z.ZodBoolean>;
164
173
  enabled_services: z.ZodOptional<z.ZodArray<z.ZodString>>;
165
174
  }, z.core.$strip>;
166
175
  export type AgentResponse = z.infer<typeof agentResponseSchema>;
@@ -60,6 +60,11 @@ const createSessionRequestObjectSchema = z
60
60
  // runs.group_id at finalize; the demo/eval mints already accept the same
61
61
  // field. Format mirrors the cloud's GROUP_ID_RE. Legacy clients omit it.
62
62
  group_id: z.string().regex(/^[A-Za-z0-9_-]{6,64}$/).optional(),
63
+ // F-818 (spec F-804): per-run override of the manifest's agent.version —
64
+ // an opaque user-declared label stamped onto the session/run rows (F-820).
65
+ // Absent = the agent's registered version. Additive; older clients omit it
66
+ // and an older cloud strips it.
67
+ agent_version: z.string().optional(),
63
68
  })
64
69
  .refine((v) => Boolean(v.task_source) !== Boolean(v.task_id), { message: "Provide exactly one of task_source or task_id (scenario_source / scenario_id are accepted 0.3.0 aliases)" });
65
70
  // Tolerant reader (FDRS-653): accepts both vocabularies, normalizes to task_*.
@@ -238,6 +243,18 @@ export const criterionDefSchema = z.object({
238
243
  // canonical for the slug; the CLI persists whatever id/slug it returns.
239
244
  export const createAgentRequestSchema = z.object({
240
245
  name: z.string().min(1),
246
+ // Manifest identity (F-818, spec F-804): human-ish slug input — the server
247
+ // derives the canonical kebab slug with the same deriveAgentSlug exported
248
+ // from `./manifest.js`, then validates it against SLUG_RE. Cap mirrors the
249
+ // control-plane edge; shape is deliberately NOT enforced here.
250
+ slug: z.string().min(1).max(64).optional(),
251
+ description: z.string().optional(),
252
+ // User-declared version label from the manifest's agent.version — an opaque
253
+ // string, never auto-bumped, never semver-interpreted.
254
+ version: z.string().optional(),
255
+ // Open enum by design (F-804): unknown frameworks get a did-you-mean warning
256
+ // server-side, never a validation error.
257
+ framework: z.string().min(1).optional(),
241
258
  // Multi-twin (M3): the twins this agent is allowed to exercise. Absent = the
242
259
  // server's default enablement. The cloud intersects a session's requested
243
260
  // twins with the agent's enabled services. Additive; older clients omit it.
@@ -250,6 +267,16 @@ export const agentResponseSchema = z.object({
250
267
  slug: z.string(),
251
268
  display_name: z.string(),
252
269
  judge_model: z.string(),
270
+ // Manifest identity (F-818): registered agent.framework / agent.description /
271
+ // agent.version, nullable where the server has nothing stored. Optional for
272
+ // the pre-F-820 cloud, which omits them.
273
+ framework: z.string().optional(),
274
+ description: z.string().nullable().optional(),
275
+ version: z.string().nullable().optional(),
276
+ // F-818 resolver semantics: true when POST /v1/agents auto-registered a new
277
+ // agent for this slug, false when it resolved an existing one. Optional for
278
+ // the pre-F-820 cloud; absence means "unknown", not "resolved".
279
+ created: z.boolean().optional(),
253
280
  // Multi-twin (M3): the services (twins) this agent may exercise. Absent on an
254
281
  // older cloud; new CLIs treat absence as "unconstrained / server default".
255
282
  enabled_services: z.array(z.string()).optional(),
@@ -1 +1 @@
1
- {"version":3,"file":"rest.js","sourceRoot":"","sources":["../src/rest.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rest.js","sourceRoot":"","sources":["../src/rest.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,EAAE;AACF,8EAA8E;AAC9E,gFAAgF;AAChF,mEAAmE;AACnE,6EAA6E;AAC7E,mFAAmF;AAEnF,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EACL,YAAY,EACZ,cAAc,EACd,gBAAgB,EAChB,cAAc,EACd,UAAU,EACV,UAAU,GACX,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAC3F,OAAO,EAAE,yBAAyB,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAEpF,gFAAgF;AAChF,8DAA8D;AAC9D,gFAAgF;AAEhF,aAAa;AACb,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC;IACvC,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;IAChD,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;IAChE,OAAO,EAAE,YAAY,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;CACrD,CAAC,CAAC;AAGH,oBAAoB;AACpB,EAAE;AACF,6EAA6E;AAC7E,2EAA2E;AAC3E,oEAAoE;AACpE,MAAM,gCAAgC,GAAG,CAAC;KACvC,MAAM,CAAC;IACN,4EAA4E;IAC5E,qEAAqE;IACrE,0EAA0E;IAC1E,2EAA2E;IAC3E,2EAA2E;IAC3E,oCAAoC;IACpC,EAAE;IACF,6EAA6E;IAC7E,4EAA4E;IAC5E,4EAA4E;IAC5E,yEAAyE;IACzE,sEAAsE;IACtE,8DAA8D;IAC9D,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC;IACrD,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAS,8DAA8D;IACzG,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAa,qDAAqD;IAChG,4EAA4E;IAC5E,2EAA2E;IAC3E,uEAAuE;IACvE,sEAAsE;IACtE,yEAAyE;IACzE,wEAAwE;IACxE,wEAAwE;IACxE,4DAA4D;IAC5D,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE,EAAE,oBAAoB;IACxE,iEAAiE;IACjE,yEAAyE;IACzE,kCAAkC;IAClC,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;IAC7C,sEAAsE;IACtE,uEAAuE;IACvE,wEAAwE;IACxE,yEAAyE;IACzE,yEAAyE;IACzE,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC,QAAQ,EAAE;IAC9D,yEAAyE;IACzE,2EAA2E;IAC3E,2EAA2E;IAC3E,gCAAgC;IAChC,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACrC,CAAC;KACD,MAAM,CACL,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,EACpD,EAAE,OAAO,EAAE,0GAA0G,EAAE,CACxH,CAAC;AAEJ,+EAA+E;AAC/E,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,UAAU,CACpD,sBAAsB,EACtB,gCAAgC,CACjC,CAAC;AAGF,SAAS,8BAA8B,CAAC,KAAc;IACpD,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACxE,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,MAAM,GAAG,KAAgC,CAAC;IAChD,IACE,OAAO,MAAM,CAAC,UAAU,KAAK,QAAQ;QACrC,OAAO,MAAM,CAAC,QAAQ,KAAK,QAAQ;QACnC,OAAO,MAAM,CAAC,WAAW,KAAK,QAAQ,EACtC,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,IAAI,GAAG,QAAQ,CAAC;IACpB,IAAI,CAAC;QACH,MAAM,CAAC,EAAE,UAAU,CAAC,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACpE,IAAI,UAAU,KAAK,SAAS,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC;YAAE,IAAI,GAAG,UAAU,CAAC;IAC3E,CAAC;IAAC,MAAM,CAAC;QACP,uDAAuD;IACzD,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC;IAC/B,MAAM,MAAM,GACV,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,UAAU,CAAC,sBAAsB,CAAC;QACrE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,sBAAsB,EAAE,sBAAsB,CAAC;QAChE,CAAC,CAAC,MAAM,CAAC;IAEb,OAAO;QACL,GAAG,MAAM;QACT,aAAa,EAAE,MAAM,CAAC,aAAa,IAAI,MAAM,CAAC,UAAU;QACxD,QAAQ,EACN,MAAM,CAAC,QAAQ;YACf;gBACE,CAAC,IAAI,CAAC,EAAE;oBACN,OAAO,EAAE,MAAM;oBACf,OAAO,EAAE,MAAM;oBACf,WAAW,EAAE,MAAM,CAAC,WAAW;iBAChC;aACF;KACJ,CAAC;AACJ,CAAC;AAED,0EAA0E;AAC1E,8EAA8E;AAC9E,8EAA8E;AAC9E,gFAAgF;AAChF,gFAAgF;AAChF,4EAA4E;AAC5E,6CAA6C;AAC7C,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,CAAC,UAAU,CAAC,8BAA8B,EAAE,CAAC,CAAC,MAAM,CAAC;IAC/F,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;IACtB,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,EAAoB,uCAAuC;IACpF,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,EAAmB,uCAAuC;IACpF,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACjC,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,EAAsB,kFAAkF;IAC/H,oBAAoB,EAAE,CAAC;SACpB,MAAM,CAAC;QACN,MAAM,EAAE,CAAC;aACN,MAAM,CAAC;YACN,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;YACjB,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,eAAe,CAAC;YAClC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC;SAC5B,CAAC;aACD,QAAQ,EAAE;QACb,MAAM,EAAE,CAAC;aACN,MAAM,CAAC;YACN,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;YACnB,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,eAAe,CAAC;YAClC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC;SAC5B,CAAC;aACD,QAAQ,EAAE;QACb,KAAK,EAAE,CAAC;aACL,MAAM,CAAC;YACN,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;YACjB,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,eAAe,CAAC;YAClC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC;SAC5B,CAAC;aACD,QAAQ,EAAE;KACd,CAAC;SACD,OAAO,CAAC,EAAE,CAAC;IACd,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,EAAgB,2CAA2C;IACxF,QAAQ,EAAE,CAAC,CAAC,MAAM,CAChB,CAAC,CAAC,MAAM,EAAE,EACV,CAAC,CAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,EAAgB,qCAAqC;QAC9E,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,EAAgB,sDAAsD;QAC/F,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE;KAC9B,CAAC,CACH;CACF,CAAC,CAAC,CAAC;AAGJ,+FAA+F;AAC/F,EAAE;AACF,2EAA2E;AAC3E,0EAA0E;AAC1E,wEAAwE;AACxE,8EAA8E;AAC9E,EAAE;AACF,+EAA+E;AAC/E,4EAA4E;AAC5E,uDAAuD;AACvD,EAAE;AACF,6EAA6E;AAC7E,6EAA6E;AAC7E,gFAAgF;AAChF,+EAA+E;AAC/E,gFAAgF;AAChF,iFAAiF;AACjF,gFAAgF;AAChF,mDAAmD;AACnD,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC,MAAM,CAC5C,CAAC,CAAC,MAAM,EAAE,EACV,CAAC;KACE,MAAM,CAAC;IACN,iBAAiB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IAC/C,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;CAC9C,CAAC;IACF,2EAA2E;IAC3E,mEAAmE;IACnE,2EAA2E;IAC3E,0EAA0E;IAC1E,sDAAsD;KACrD,MAAM,CACL,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,iBAAiB,KAAK,SAAS,IAAI,CAAC,CAAC,eAAe,KAAK,SAAS,EAC3E,EAAE,OAAO,EAAE,iFAAiF,EAAE,CAC/F,CACJ,CAAC;AAGF,yEAAyE;AACzE,6EAA6E;AAC7E,yDAAyD;AACzD,MAAM,+BAA+B,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/C,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,EAAwB,6BAA6B;IAC1E,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,EAAwB,6BAA6B;IAC1E,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE;IAC7B,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;IACvB,0EAA0E;IAC1E,6DAA6D;IAC7D,kBAAkB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC;IACpD,gBAAgB,EAAE,CAAC,CAAC,KAAK,CAAC,qBAAqB,CAAC;IAChD,WAAW,EAAE,gBAAgB;IAC7B,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IACnD,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IACpD,4EAA4E;IAC5E,4EAA4E;IAC5E,8EAA8E;IAC9E,0EAA0E;IAC1E,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;IACtC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;IACtC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IAC/C,+EAA+E;IAC/E,qEAAqE;IACrE,2DAA2D;IAC3D,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IACrD,+EAA+E;IAC/E,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE;IAC3B,sBAAsB,EAAE,CAAC,CAAC,MAAM,EAAE;IAClC,oBAAoB,EAAE,CAAC,CAAC,MAAM,EAAE;IAChC,uEAAuE;IACvE,yEAAyE;IACzE,kDAAkD;CACnD,CAAC,CAAC;AAEH,+EAA+E;AAC/E,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC,UAAU,CACnD,sBAAsB,EACtB,+BAA+B,CAChC,CAAC;AAGF,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,MAAM,CAAC;IACjD,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;IAClB,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE;CAChC,CAAC,CAAC;AAGH,gFAAgF;AAChF,MAAM,CAAC,MAAM,+BAA+B,GAAG,CAAC,CAAC,MAAM,CAAC;IACtD,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;IACtB,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;CACvB,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IACzC,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACrB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACvB,uEAAuE;IACvE,0EAA0E;IAC1E,+DAA+D;IAC/D,IAAI,EAAE,CAAC;SACJ,IAAI,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;SACjC,SAAS,CAAC,CAAC,IAAI,EAAE,EAAE,CAClB,IAAI,KAAK,GAAG,IAAI,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,yBAAyB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CACtE;IACH,0EAA0E;IAC1E,4EAA4E;IAC5E,uEAAuE;IACvE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;CACnC,CAAC,CAAC;AAOH,yEAAyE;AACzE,wEAAwE;AACxE,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/C,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACvB,2EAA2E;IAC3E,0EAA0E;IAC1E,2EAA2E;IAC3E,+DAA+D;IAC/D,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE;IAC1C,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAClC,4EAA4E;IAC5E,uDAAuD;IACvD,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC9B,6EAA6E;IAC7E,yCAAyC;IACzC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IACvC,6EAA6E;IAC7E,0EAA0E;IAC1E,4EAA4E;IAC5E,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;CAC7C,CAAC,CAAC;AAGH,gFAAgF;AAChF,oEAAoE;AACpE,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1C,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,EAA+B,eAAe;IAC5D,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE;IACxB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;IACvB,8EAA8E;IAC9E,4EAA4E;IAC5E,yCAAyC;IACzC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAChC,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAC7C,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IACzC,4EAA4E;IAC5E,4EAA4E;IAC5E,gEAAgE;IAChE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAC/B,8EAA8E;IAC9E,2EAA2E;IAC3E,gBAAgB,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;CACjD,CAAC,CAAC;AAGH,8EAA8E;AAC9E,iFAAiF;AACjF,yEAAyE;AACzE,uCAAuC;AACvC,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC,MAAM,CAAC;IAChD,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE;IACrB,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;CACvB,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,CAAC,MAAM,CAAC;IACnD,aAAa,EAAE,yBAAyB;IACxC,WAAW,EAAE,yBAAyB;IACtC,8EAA8E;IAC9E,0EAA0E;IAC1E,0EAA0E;IAC1E,2DAA2D;IAC3D,QAAQ,EAAE,CAAC;SACR,MAAM,CACL,CAAC,CAAC,MAAM,EAAE,EACV,CAAC,CAAC,MAAM,CAAC;QACP,aAAa,EAAE,yBAAyB;QACxC,WAAW,EAAE,yBAAyB;KACvC,CAAC,CACH;SACA,QAAQ,EAAE;CACd,CAAC,CAAC;AAGH,0DAA0D;AAC1D,2EAA2E;AAC3E,8EAA8E;AAC9E,2CAA2C;AAC3C,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1C,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACnC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACjC,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACtC,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACvC,kBAAkB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC3C,SAAS,EAAE,cAAc;CAC1B,CAAC,CAAC;AAGH,8BAA8B;AAC9B,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC,MAAM,CAAC;IAChD,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE;IACzB,IAAI,EAAE,cAAc,CAAC,OAAO,CAAC,QAAQ,CAAC;CACvC,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,MAAM,CAAC;IACjD,MAAM,EAAE,gBAAgB;IACxB,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,EAAiB,oCAAoC;CAClF,CAAC,CAAC;AAGH,iFAAiF;AACjF,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC,MAAM,CAAC;IAChD,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC;CAC1B,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,MAAM,CAAC;IACjD,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;IACnB,IAAI,EAAE,cAAc;CACrB,CAAC,CAAC"}
@@ -0,0 +1,68 @@
1
+ {
2
+ "$id": "https://pome.sh/schemas/v1/pome.json",
3
+ "title": "Pome agent manifest (pome.json / pome.yaml)",
4
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
5
+ "type": "object",
6
+ "properties": {
7
+ "$schema": {
8
+ "type": "string"
9
+ },
10
+ "agent": {
11
+ "type": "object",
12
+ "properties": {
13
+ "slug": {
14
+ "type": "string",
15
+ "maxLength": 64,
16
+ "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
17
+ },
18
+ "name": {
19
+ "type": "string",
20
+ "minLength": 1
21
+ },
22
+ "description": {
23
+ "type": "string"
24
+ },
25
+ "version": {
26
+ "type": "string"
27
+ },
28
+ "framework": {
29
+ "type": "string",
30
+ "minLength": 1
31
+ }
32
+ },
33
+ "required": [
34
+ "slug"
35
+ ]
36
+ },
37
+ "command": {
38
+ "type": "string",
39
+ "minLength": 1
40
+ },
41
+ "twins": {
42
+ "minItems": 1,
43
+ "type": "array",
44
+ "items": {
45
+ "type": "string",
46
+ "minLength": 1
47
+ }
48
+ },
49
+ "tasks": {
50
+ "type": "string",
51
+ "minLength": 1
52
+ },
53
+ "artifacts_dir": {
54
+ "default": "runs",
55
+ "type": "string",
56
+ "minLength": 1
57
+ },
58
+ "pass_threshold": {
59
+ "default": 100,
60
+ "type": "integer",
61
+ "minimum": 0,
62
+ "maximum": 100
63
+ }
64
+ },
65
+ "required": [
66
+ "agent"
67
+ ]
68
+ }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pome-sh/shared-types",
3
- "version": "0.11.0",
3
+ "version": "0.12.0",
4
4
  "description": "Shared wire-format contract for Pome — Zod schemas for traces, recorder events, runs, OTel mapping, and secret redaction.",
5
5
  "private": false,
6
6
  "type": "module",
@@ -34,6 +34,7 @@
34
34
  },
35
35
  "files": [
36
36
  "dist",
37
+ "manifest-schema.json",
37
38
  "trace-contract.json"
38
39
  ],
39
40
  "repository": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "package": "@pome-sh/shared-types",
3
- "version": "0.11.0",
3
+ "version": "0.12.0",
4
4
  "zod": {
5
5
  "range": "^4.1.13",
6
6
  "major": 4
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pome-sh/twin-slack",
3
- "version": "0.2.1",
3
+ "version": "0.2.2",
4
4
  "description": "Deterministic Slack Web API twin for agent testing — REST + MCP, SQLite-backed state.",
5
5
  "private": false,
6
6
  "type": "module",
@@ -34,8 +34,8 @@
34
34
  },
35
35
  "dependencies": {
36
36
  "@hono/node-server": "^2.0.10",
37
- "@pome-sh/sdk": "0.5.0",
38
- "@pome-sh/shared-types": "0.11.0",
37
+ "@pome-sh/sdk": "0.5.1",
38
+ "@pome-sh/shared-types": "0.12.0",
39
39
  "hono": "^4.12.27",
40
40
  "zod": "^4.1.13"
41
41
  },
@@ -25,3 +25,4 @@ export * from "./task.js";
25
25
  export * from "./rest.js";
26
26
  export * from "./finalize-shapes.js";
27
27
  export * from "./errors.js";
28
+ export * from "./manifest.js";
@@ -31,4 +31,5 @@ export * from "./task.js"; // §3 TASKS — task config / task / persisted-task
31
31
  export * from "./rest.js"; // §4 PUBLIC REST API (minus finalize family)
32
32
  export * from "./finalize-shapes.js"; // §4 PUBLIC REST API — /finalize response family
33
33
  export * from "./errors.js"; // §5 ERROR ENVELOPE
34
+ export * from "./manifest.js"; // §6 MANIFEST — pome.json/pome.yaml + slug authority (F-818)
34
35
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC;;;;;;;;;;;;GAYG;AAEH,8EAA8E;AAC9E,+CAA+C;AAC/C,cAAc,sBAAsB,CAAC;AACrC,cAAc,UAAU,CAAC;AACzB,cAAc,iBAAiB,CAAC;AAChC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,gBAAgB,CAAC;AAC/B,gFAAgF;AAChF,6EAA6E;AAC7E,cAAc,iBAAiB,CAAC;AAEhC,6EAA6E;AAC7E,cAAc,eAAe,CAAC,CAAU,cAAc;AACtD,cAAc,eAAe,CAAC,CAAU,cAAc;AACtD,cAAc,iBAAiB,CAAC,CAAQ,yCAAyC;AACjF,cAAc,oBAAoB,CAAC,CAAK,2CAA2C;AACnF,cAAc,WAAW,CAAC,CAAc,iDAAiD;AACzF,cAAc,WAAW,CAAC,CAAc,6CAA6C;AACrF,cAAc,sBAAsB,CAAC,CAAG,iDAAiD;AACzF,cAAc,aAAa,CAAC,CAAY,oBAAoB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC;;;;;;;;;;;;GAYG;AAEH,8EAA8E;AAC9E,+CAA+C;AAC/C,cAAc,sBAAsB,CAAC;AACrC,cAAc,UAAU,CAAC;AACzB,cAAc,iBAAiB,CAAC;AAChC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,gBAAgB,CAAC;AAC/B,gFAAgF;AAChF,6EAA6E;AAC7E,cAAc,iBAAiB,CAAC;AAEhC,6EAA6E;AAC7E,cAAc,eAAe,CAAC,CAAU,cAAc;AACtD,cAAc,eAAe,CAAC,CAAU,cAAc;AACtD,cAAc,iBAAiB,CAAC,CAAQ,yCAAyC;AACjF,cAAc,oBAAoB,CAAC,CAAK,2CAA2C;AACnF,cAAc,WAAW,CAAC,CAAc,iDAAiD;AACzF,cAAc,WAAW,CAAC,CAAc,6CAA6C;AACrF,cAAc,sBAAsB,CAAC,CAAG,iDAAiD;AACzF,cAAc,aAAa,CAAC,CAAY,oBAAoB;AAC5D,cAAc,eAAe,CAAC,CAAU,6DAA6D"}
@@ -0,0 +1,31 @@
1
+ import { z } from "zod";
2
+ export declare const SLUG_RE: RegExp;
3
+ export declare const SLUG_MAX_LENGTH = 64;
4
+ export declare function deriveAgentSlug(input: string): string;
5
+ export declare const agentSlugSchema: z.ZodString;
6
+ export declare const manifestAgentSchema: z.ZodObject<{
7
+ slug: z.ZodString;
8
+ name: z.ZodOptional<z.ZodString>;
9
+ description: z.ZodOptional<z.ZodString>;
10
+ version: z.ZodOptional<z.ZodString>;
11
+ framework: z.ZodOptional<z.ZodString>;
12
+ }, z.core.$strip>;
13
+ export type ManifestAgent = z.infer<typeof manifestAgentSchema>;
14
+ export declare const manifestSchema: z.ZodObject<{
15
+ $schema: z.ZodOptional<z.ZodString>;
16
+ agent: z.ZodObject<{
17
+ slug: z.ZodString;
18
+ name: z.ZodOptional<z.ZodString>;
19
+ description: z.ZodOptional<z.ZodString>;
20
+ version: z.ZodOptional<z.ZodString>;
21
+ framework: z.ZodOptional<z.ZodString>;
22
+ }, z.core.$strip>;
23
+ command: z.ZodOptional<z.ZodString>;
24
+ twins: z.ZodOptional<z.ZodArray<z.ZodString>>;
25
+ tasks: z.ZodOptional<z.ZodString>;
26
+ artifacts_dir: z.ZodDefault<z.ZodString>;
27
+ pass_threshold: z.ZodDefault<z.ZodNumber>;
28
+ }, z.core.$strip>;
29
+ export type Manifest = z.infer<typeof manifestSchema>;
30
+ export type ManifestInput = z.input<typeof manifestSchema>;
31
+ export declare function buildManifestJsonSchema(): Record<string, unknown>;
@@ -0,0 +1,76 @@
1
+ // SPDX-License-Identifier: Apache-2.0
2
+ //
3
+ // shared-types §6 — the pome.json / pome.yaml MANIFEST (F-818, format spec
4
+ // F-804). One canonical zod schema; JSON and YAML are interchangeable carriers
5
+ // of the same snake_case keys (both files present is a hard error at the CLI
6
+ // loader, not here). The `agent` block is the stable cross-carrier identity
7
+ // contract; top-level keys are CLI run-config and may evolve faster.
8
+ //
9
+ // SLUG_RE and deriveAgentSlug are THE slug authority for every consumer (CLI,
10
+ // control-plane /v1/agents, dashboard, MCP). SLUG_RE is byte-identical to the
11
+ // pome-cloud control-plane's regex; deriveAgentSlug is a behavior-identical
12
+ // port of packages/db/src/agent-slug.ts (equivalence pinned in
13
+ // test/manifest.test.ts). pome-cloud imports both from here as of F-820 —
14
+ // local and server validation must never drift again.
15
+ import { z } from "zod";
16
+ // Canonical agent-slug shape: kebab-case, lowercase alphanumerics, no edge or
17
+ // doubled dashes. Length is capped separately (the regex is anchored on shape).
18
+ export const SLUG_RE = /^[a-z0-9]+(?:-[a-z0-9]+)*$/;
19
+ export const SLUG_MAX_LENGTH = 64;
20
+ // Shared agent slug derivation for REST, dashboard, and CLI registration
21
+ // paths. Keep this pure: validation and reserved-slug checks live at each API
22
+ // edge. Returns "" when nothing sluggable remains — callers must check.
23
+ //
24
+ // The first replace collapses every non-alphanumeric run (dashes included) to
25
+ // a single dash, so afterwards each edge carries at most one dash — the
26
+ // anchored single-char strips are exhaustive and stay linear (the upstream
27
+ // `/^-+|-+$/g` form is a CodeQL js/polynomial-redos finding).
28
+ export function deriveAgentSlug(input) {
29
+ return input
30
+ .toLowerCase()
31
+ .trim()
32
+ .replace(/[^a-z0-9]+/g, "-")
33
+ .replace(/^-/, "")
34
+ .replace(/-$/, "");
35
+ }
36
+ export const agentSlugSchema = z
37
+ .string()
38
+ .max(SLUG_MAX_LENGTH)
39
+ .regex(SLUG_RE, "Agent slug must be kebab-case: lowercase letters, digits, single dashes");
40
+ // The `agent` identity block. `slug` is the only required field in the whole
41
+ // manifest — portable and non-sensitive. The registered `agt_` id is
42
+ // deliberately NOT here: committed opaque ids are the fork-404 bug class; the
43
+ // platform resolver (POST /v1/agents) maps slug → id under the caller's team.
44
+ export const manifestAgentSchema = z.object({
45
+ slug: agentSlugSchema,
46
+ name: z.string().min(1).optional(), // display name (server display_name)
47
+ description: z.string().optional(), // shown on dashboard
48
+ version: z.string().optional(), // user-declared label; never auto-bumped
49
+ // Open enum by design: unknown frameworks get a did-you-mean warning at the
50
+ // consuming edge, never a validation error.
51
+ framework: z.string().min(1).optional(), // langgraph | claude-agent-sdk | openai-agents | …
52
+ });
53
+ export const manifestSchema = z.object({
54
+ // pome.json carries the editor pointer; pome.yaml uses a comment instead.
55
+ $schema: z.string().optional(),
56
+ agent: manifestAgentSchema,
57
+ command: z.string().min(1).optional(), // how the CLI launches the agent
58
+ twins: z.array(z.string().min(1)).min(1).optional(), // default twin set for runs
59
+ tasks: z.string().min(1).optional(), // task files directory (legacy name: scenarios)
60
+ artifacts_dir: z.string().min(1).default("runs"),
61
+ pass_threshold: z.number().int().min(0).max(100).default(100),
62
+ });
63
+ // The JSON Schema served at pome.sh/schemas/v1/pome.json (F-821) and resolved
64
+ // by editors via the manifest's `$schema` pointer. `io: "input"` emits the
65
+ // AUTHOR-side shape — run-config keys with defaults stay optional instead of
66
+ // being promoted to required by the parsed (output) view. Shared by the
67
+ // build-time emitter (scripts/emit-manifest-schema.mjs) and the snapshot test
68
+ // so the two can never disagree.
69
+ export function buildManifestJsonSchema() {
70
+ return {
71
+ $id: "https://pome.sh/schemas/v1/pome.json",
72
+ title: "Pome agent manifest (pome.json / pome.yaml)",
73
+ ...z.toJSONSchema(manifestSchema, { io: "input" }),
74
+ };
75
+ }
76
+ //# sourceMappingURL=manifest.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"manifest.js","sourceRoot":"","sources":["../src/manifest.ts"],"names":[],"mappings":"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"}
@@ -29,6 +29,7 @@ export declare const createSessionRequestSchema: z.ZodPreprocess<z.ZodObject<{
29
29
  seed: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
30
30
  idempotency_key: z.ZodOptional<z.ZodString>;
31
31
  group_id: z.ZodOptional<z.ZodString>;
32
+ agent_version: z.ZodOptional<z.ZodString>;
32
33
  }, z.core.$strip>>;
33
34
  export type CreateSessionRequest = z.infer<typeof createSessionRequestSchema>;
34
35
  export declare const createSessionResponseSchema: z.ZodPreprocess<z.ZodObject<{
@@ -153,6 +154,10 @@ export type CriterionDef = z.infer<typeof criterionDefSchema>;
153
154
  export type CriterionDefInput = z.input<typeof criterionDefSchema>;
154
155
  export declare const createAgentRequestSchema: z.ZodObject<{
155
156
  name: z.ZodString;
157
+ slug: z.ZodOptional<z.ZodString>;
158
+ description: z.ZodOptional<z.ZodString>;
159
+ version: z.ZodOptional<z.ZodString>;
160
+ framework: z.ZodOptional<z.ZodString>;
156
161
  twins: z.ZodOptional<z.ZodArray<z.ZodString>>;
157
162
  }, z.core.$strip>;
158
163
  export type CreateAgentRequest = z.infer<typeof createAgentRequestSchema>;
@@ -161,6 +166,10 @@ export declare const agentResponseSchema: z.ZodObject<{
161
166
  slug: z.ZodString;
162
167
  display_name: z.ZodString;
163
168
  judge_model: z.ZodString;
169
+ framework: z.ZodOptional<z.ZodString>;
170
+ description: z.ZodOptional<z.ZodNullable<z.ZodString>>;
171
+ version: z.ZodOptional<z.ZodNullable<z.ZodString>>;
172
+ created: z.ZodOptional<z.ZodBoolean>;
164
173
  enabled_services: z.ZodOptional<z.ZodArray<z.ZodString>>;
165
174
  }, z.core.$strip>;
166
175
  export type AgentResponse = z.infer<typeof agentResponseSchema>;
@@ -60,6 +60,11 @@ const createSessionRequestObjectSchema = z
60
60
  // runs.group_id at finalize; the demo/eval mints already accept the same
61
61
  // field. Format mirrors the cloud's GROUP_ID_RE. Legacy clients omit it.
62
62
  group_id: z.string().regex(/^[A-Za-z0-9_-]{6,64}$/).optional(),
63
+ // F-818 (spec F-804): per-run override of the manifest's agent.version —
64
+ // an opaque user-declared label stamped onto the session/run rows (F-820).
65
+ // Absent = the agent's registered version. Additive; older clients omit it
66
+ // and an older cloud strips it.
67
+ agent_version: z.string().optional(),
63
68
  })
64
69
  .refine((v) => Boolean(v.task_source) !== Boolean(v.task_id), { message: "Provide exactly one of task_source or task_id (scenario_source / scenario_id are accepted 0.3.0 aliases)" });
65
70
  // Tolerant reader (FDRS-653): accepts both vocabularies, normalizes to task_*.
@@ -238,6 +243,18 @@ export const criterionDefSchema = z.object({
238
243
  // canonical for the slug; the CLI persists whatever id/slug it returns.
239
244
  export const createAgentRequestSchema = z.object({
240
245
  name: z.string().min(1),
246
+ // Manifest identity (F-818, spec F-804): human-ish slug input — the server
247
+ // derives the canonical kebab slug with the same deriveAgentSlug exported
248
+ // from `./manifest.js`, then validates it against SLUG_RE. Cap mirrors the
249
+ // control-plane edge; shape is deliberately NOT enforced here.
250
+ slug: z.string().min(1).max(64).optional(),
251
+ description: z.string().optional(),
252
+ // User-declared version label from the manifest's agent.version — an opaque
253
+ // string, never auto-bumped, never semver-interpreted.
254
+ version: z.string().optional(),
255
+ // Open enum by design (F-804): unknown frameworks get a did-you-mean warning
256
+ // server-side, never a validation error.
257
+ framework: z.string().min(1).optional(),
241
258
  // Multi-twin (M3): the twins this agent is allowed to exercise. Absent = the
242
259
  // server's default enablement. The cloud intersects a session's requested
243
260
  // twins with the agent's enabled services. Additive; older clients omit it.
@@ -250,6 +267,16 @@ export const agentResponseSchema = z.object({
250
267
  slug: z.string(),
251
268
  display_name: z.string(),
252
269
  judge_model: z.string(),
270
+ // Manifest identity (F-818): registered agent.framework / agent.description /
271
+ // agent.version, nullable where the server has nothing stored. Optional for
272
+ // the pre-F-820 cloud, which omits them.
273
+ framework: z.string().optional(),
274
+ description: z.string().nullable().optional(),
275
+ version: z.string().nullable().optional(),
276
+ // F-818 resolver semantics: true when POST /v1/agents auto-registered a new
277
+ // agent for this slug, false when it resolved an existing one. Optional for
278
+ // the pre-F-820 cloud; absence means "unknown", not "resolved".
279
+ created: z.boolean().optional(),
253
280
  // Multi-twin (M3): the services (twins) this agent may exercise. Absent on an
254
281
  // older cloud; new CLIs treat absence as "unconstrained / server default".
255
282
  enabled_services: z.array(z.string()).optional(),