@stigmer/sdk 3.35.0 → 3.36.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 (342) hide show
  1. package/activity.d.ts.map +1 -1
  2. package/activity.js.map +1 -1
  3. package/artifact-routing.d.ts.map +1 -1
  4. package/artifact-routing.js.map +1 -1
  5. package/authorization-config.d.ts.map +1 -1
  6. package/authorization-config.js.map +1 -1
  7. package/billing.d.ts.map +1 -1
  8. package/billing.js.map +1 -1
  9. package/config.d.ts.map +1 -1
  10. package/config.js.map +1 -1
  11. package/cursor-accounts.d.ts.map +1 -1
  12. package/cursor-accounts.js.map +1 -1
  13. package/ensure-identity-account.d.ts.map +1 -1
  14. package/ensure-identity-account.js.map +1 -1
  15. package/errors.d.ts.map +1 -1
  16. package/errors.js.map +1 -1
  17. package/execution/approval-provenance.d.ts.map +1 -1
  18. package/execution/approval-provenance.js.map +1 -1
  19. package/execution/conversation-rules.d.ts.map +1 -1
  20. package/execution/conversation-rules.js.map +1 -1
  21. package/execution/execution-phases.d.ts.map +1 -1
  22. package/execution/execution-phases.js.map +1 -1
  23. package/execution/file-review-fold.d.ts.map +1 -1
  24. package/execution/file-review-fold.js.map +1 -1
  25. package/execution/to-display-file-change.d.ts.map +1 -1
  26. package/execution/to-display-file-change.js.map +1 -1
  27. package/execution/tool-view.d.ts.map +1 -1
  28. package/execution/tool-view.js.map +1 -1
  29. package/execution/transcript.d.ts.map +1 -1
  30. package/execution/transcript.js.map +1 -1
  31. package/gen/agent.d.ts.map +1 -1
  32. package/gen/agent.js.map +1 -1
  33. package/gen/agentchannel.d.ts.map +1 -1
  34. package/gen/agentchannel.js.map +1 -1
  35. package/gen/agentexecution.d.ts.map +1 -1
  36. package/gen/agentexecution.js.map +1 -1
  37. package/gen/agentinstance.d.ts.map +1 -1
  38. package/gen/agentinstance.js.map +1 -1
  39. package/gen/agentshare.d.ts.map +1 -1
  40. package/gen/agentshare.js.map +1 -1
  41. package/gen/apikey.d.ts.map +1 -1
  42. package/gen/apikey.js.map +1 -1
  43. package/gen/artifact.d.ts.map +1 -1
  44. package/gen/artifact.js.map +1 -1
  45. package/gen/authorization-config.d.ts.map +1 -1
  46. package/gen/authorization-config.js +2 -2
  47. package/gen/authorization-config.js.map +1 -1
  48. package/gen/bidi-stream.d.ts.map +1 -1
  49. package/gen/bidi-stream.js.map +1 -1
  50. package/gen/channelapp.d.ts.map +1 -1
  51. package/gen/channelapp.js.map +1 -1
  52. package/gen/client.d.ts.map +1 -1
  53. package/gen/client.js.map +1 -1
  54. package/gen/environment.d.ts.map +1 -1
  55. package/gen/environment.js.map +1 -1
  56. package/gen/errors.d.ts.map +1 -1
  57. package/gen/errors.js.map +1 -1
  58. package/gen/executioncontext.d.ts.map +1 -1
  59. package/gen/executioncontext.js.map +1 -1
  60. package/gen/iampolicy.d.ts.map +1 -1
  61. package/gen/iampolicy.js.map +1 -1
  62. package/gen/identityaccount.d.ts.map +1 -1
  63. package/gen/identityaccount.js.map +1 -1
  64. package/gen/identityprovider.d.ts.map +1 -1
  65. package/gen/identityprovider.js.map +1 -1
  66. package/gen/invitation.d.ts.map +1 -1
  67. package/gen/invitation.js.map +1 -1
  68. package/gen/license.d.ts.map +1 -1
  69. package/gen/license.js.map +1 -1
  70. package/gen/mcpserver.d.ts.map +1 -1
  71. package/gen/mcpserver.js.map +1 -1
  72. package/gen/memory.d.ts.map +1 -1
  73. package/gen/memory.js.map +1 -1
  74. package/gen/oauthapp.d.ts.map +1 -1
  75. package/gen/oauthapp.js.map +1 -1
  76. package/gen/organization.d.ts.map +1 -1
  77. package/gen/organization.js.map +1 -1
  78. package/gen/plan.d.ts.map +1 -1
  79. package/gen/plan.js.map +1 -1
  80. package/gen/platformclient.d.ts.map +1 -1
  81. package/gen/platformclient.js.map +1 -1
  82. package/gen/plugin.d.ts.map +1 -1
  83. package/gen/plugin.js.map +1 -1
  84. package/gen/proto-utils.d.ts.map +1 -1
  85. package/gen/proto-utils.js.map +1 -1
  86. package/gen/resource-availability.d.ts.map +1 -1
  87. package/gen/resource-availability.js.map +1 -1
  88. package/gen/schedule.d.ts.map +1 -1
  89. package/gen/schedule.js.map +1 -1
  90. package/gen/session.d.ts.map +1 -1
  91. package/gen/session.js.map +1 -1
  92. package/gen/skill.d.ts.map +1 -1
  93. package/gen/skill.js.map +1 -1
  94. package/gen/subscription.d.ts.map +1 -1
  95. package/gen/subscription.js.map +1 -1
  96. package/gen/team.d.ts.map +1 -1
  97. package/gen/team.js.map +1 -1
  98. package/gen/types.d.ts.map +1 -1
  99. package/gen/types.js.map +1 -1
  100. package/gen/workflow.d.ts.map +1 -1
  101. package/gen/workflow.js.map +1 -1
  102. package/gen/workflowexecution.d.ts.map +1 -1
  103. package/gen/workflowexecution.js.map +1 -1
  104. package/gen/workflowinstance.d.ts.map +1 -1
  105. package/gen/workflowinstance.js.map +1 -1
  106. package/github.d.ts.map +1 -1
  107. package/github.js.map +1 -1
  108. package/guest-auth.d.ts.map +1 -1
  109. package/guest-auth.js.map +1 -1
  110. package/iam-principal.d.ts.map +1 -1
  111. package/iam-principal.js.map +1 -1
  112. package/iam-role.d.ts.map +1 -1
  113. package/iam-role.js.map +1 -1
  114. package/index.d.ts.map +1 -1
  115. package/index.js.map +1 -1
  116. package/internal/interceptors.d.ts.map +1 -1
  117. package/internal/interceptors.js.map +1 -1
  118. package/manifest/client.d.ts.map +1 -1
  119. package/manifest/client.js.map +1 -1
  120. package/manifest/document.d.ts.map +1 -1
  121. package/manifest/document.js.map +1 -1
  122. package/manifest/index.d.ts.map +1 -1
  123. package/manifest/index.js.map +1 -1
  124. package/manifest/parse.d.ts.map +1 -1
  125. package/manifest/parse.js.map +1 -1
  126. package/manifest/redaction.d.ts.map +1 -1
  127. package/manifest/redaction.js.map +1 -1
  128. package/manifest/registry.d.ts.map +1 -1
  129. package/manifest/registry.js.map +1 -1
  130. package/manifest/serialize.d.ts.map +1 -1
  131. package/manifest/serialize.js.map +1 -1
  132. package/mcpserver-connect.d.ts.map +1 -1
  133. package/mcpserver-connect.js.map +1 -1
  134. package/node.d.ts.map +1 -1
  135. package/node.js.map +1 -1
  136. package/package.json +2 -2
  137. package/platform-client-auth.d.ts.map +1 -1
  138. package/platform-client-auth.js.map +1 -1
  139. package/platform.d.ts.map +1 -1
  140. package/platform.js.map +1 -1
  141. package/plugin.d.ts.map +1 -1
  142. package/plugin.js.map +1 -1
  143. package/provider-standing.d.ts.map +1 -1
  144. package/provider-standing.js.map +1 -1
  145. package/resource-availability.d.ts.map +1 -1
  146. package/resource-availability.js.map +1 -1
  147. package/runner-adapter.d.ts.map +1 -1
  148. package/runner-adapter.js.map +1 -1
  149. package/search.d.ts.map +1 -1
  150. package/search.js.map +1 -1
  151. package/session.d.ts.map +1 -1
  152. package/session.js.map +1 -1
  153. package/sharing.d.ts.map +1 -1
  154. package/sharing.js.map +1 -1
  155. package/skill.d.ts.map +1 -1
  156. package/skill.js.map +1 -1
  157. package/src/gen/authorization-config.ts +2 -2
  158. package/stigmer.d.ts.map +1 -1
  159. package/stigmer.js.map +1 -1
  160. package/transport.d.ts.map +1 -1
  161. package/transport.js.map +1 -1
  162. package/__tests__/billing.test.d.ts +0 -2
  163. package/__tests__/billing.test.d.ts.map +0 -1
  164. package/__tests__/billing.test.js +0 -120
  165. package/__tests__/billing.test.js.map +0 -1
  166. package/__tests__/config.test.d.ts +0 -2
  167. package/__tests__/config.test.d.ts.map +0 -1
  168. package/__tests__/config.test.js +0 -35
  169. package/__tests__/config.test.js.map +0 -1
  170. package/__tests__/ensure-identity-account.test.d.ts +0 -2
  171. package/__tests__/ensure-identity-account.test.d.ts.map +0 -1
  172. package/__tests__/ensure-identity-account.test.js +0 -108
  173. package/__tests__/ensure-identity-account.test.js.map +0 -1
  174. package/__tests__/errors.test.d.ts +0 -2
  175. package/__tests__/errors.test.d.ts.map +0 -1
  176. package/__tests__/errors.test.js +0 -228
  177. package/__tests__/errors.test.js.map +0 -1
  178. package/__tests__/gen/errors.test.d.ts +0 -2
  179. package/__tests__/gen/errors.test.d.ts.map +0 -1
  180. package/__tests__/gen/errors.test.js +0 -97
  181. package/__tests__/gen/errors.test.js.map +0 -1
  182. package/__tests__/gen/invitation-client.test.d.ts +0 -2
  183. package/__tests__/gen/invitation-client.test.d.ts.map +0 -1
  184. package/__tests__/gen/invitation-client.test.js +0 -106
  185. package/__tests__/gen/invitation-client.test.js.map +0 -1
  186. package/__tests__/gen/proto-utils.test.d.ts +0 -2
  187. package/__tests__/gen/proto-utils.test.d.ts.map +0 -1
  188. package/__tests__/gen/proto-utils.test.js +0 -85
  189. package/__tests__/gen/proto-utils.test.js.map +0 -1
  190. package/__tests__/gen/session-client.test.d.ts +0 -2
  191. package/__tests__/gen/session-client.test.d.ts.map +0 -1
  192. package/__tests__/gen/session-client.test.js +0 -152
  193. package/__tests__/gen/session-client.test.js.map +0 -1
  194. package/__tests__/guest-auth.test.d.ts +0 -2
  195. package/__tests__/guest-auth.test.d.ts.map +0 -1
  196. package/__tests__/guest-auth.test.js +0 -223
  197. package/__tests__/guest-auth.test.js.map +0 -1
  198. package/__tests__/iam-principal.test.d.ts +0 -2
  199. package/__tests__/iam-principal.test.d.ts.map +0 -1
  200. package/__tests__/iam-principal.test.js +0 -65
  201. package/__tests__/iam-principal.test.js.map +0 -1
  202. package/__tests__/manifest.test.d.ts +0 -2
  203. package/__tests__/manifest.test.d.ts.map +0 -1
  204. package/__tests__/manifest.test.js +0 -306
  205. package/__tests__/manifest.test.js.map +0 -1
  206. package/__tests__/mcpserver-connect.test.d.ts +0 -2
  207. package/__tests__/mcpserver-connect.test.d.ts.map +0 -1
  208. package/__tests__/mcpserver-connect.test.js +0 -146
  209. package/__tests__/mcpserver-connect.test.js.map +0 -1
  210. package/__tests__/node.test.d.ts +0 -2
  211. package/__tests__/node.test.d.ts.map +0 -1
  212. package/__tests__/node.test.js +0 -67
  213. package/__tests__/node.test.js.map +0 -1
  214. package/__tests__/platform-client-auth.test.d.ts +0 -2
  215. package/__tests__/platform-client-auth.test.d.ts.map +0 -1
  216. package/__tests__/platform-client-auth.test.js +0 -59
  217. package/__tests__/platform-client-auth.test.js.map +0 -1
  218. package/__tests__/platform.test.d.ts +0 -2
  219. package/__tests__/platform.test.d.ts.map +0 -1
  220. package/__tests__/platform.test.js +0 -52
  221. package/__tests__/platform.test.js.map +0 -1
  222. package/__tests__/plugin.test.d.ts +0 -2
  223. package/__tests__/plugin.test.d.ts.map +0 -1
  224. package/__tests__/plugin.test.js +0 -74
  225. package/__tests__/plugin.test.js.map +0 -1
  226. package/__tests__/resource-availability.test.d.ts +0 -2
  227. package/__tests__/resource-availability.test.d.ts.map +0 -1
  228. package/__tests__/resource-availability.test.js +0 -80
  229. package/__tests__/resource-availability.test.js.map +0 -1
  230. package/__tests__/runner-adapter.test.d.ts +0 -2
  231. package/__tests__/runner-adapter.test.d.ts.map +0 -1
  232. package/__tests__/runner-adapter.test.js +0 -88
  233. package/__tests__/runner-adapter.test.js.map +0 -1
  234. package/__tests__/session.test.d.ts +0 -6
  235. package/__tests__/session.test.d.ts.map +0 -1
  236. package/__tests__/session.test.js +0 -50
  237. package/__tests__/session.test.js.map +0 -1
  238. package/__tests__/sharing.test.d.ts +0 -2
  239. package/__tests__/sharing.test.d.ts.map +0 -1
  240. package/__tests__/sharing.test.js +0 -106
  241. package/__tests__/sharing.test.js.map +0 -1
  242. package/__tests__/skill.test.d.ts +0 -2
  243. package/__tests__/skill.test.d.ts.map +0 -1
  244. package/__tests__/skill.test.js +0 -117
  245. package/__tests__/skill.test.js.map +0 -1
  246. package/__tests__/stigmer.test.d.ts +0 -2
  247. package/__tests__/stigmer.test.d.ts.map +0 -1
  248. package/__tests__/stigmer.test.js +0 -127
  249. package/__tests__/stigmer.test.js.map +0 -1
  250. package/__tests__/update-input-roundtrip.test.d.ts +0 -2
  251. package/__tests__/update-input-roundtrip.test.d.ts.map +0 -1
  252. package/__tests__/update-input-roundtrip.test.js +0 -775
  253. package/__tests__/update-input-roundtrip.test.js.map +0 -1
  254. package/__tests__/update-input.test.d.ts +0 -2
  255. package/__tests__/update-input.test.d.ts.map +0 -1
  256. package/__tests__/update-input.test.js +0 -188
  257. package/__tests__/update-input.test.js.map +0 -1
  258. package/execution/__tests__/approval-provenance.test.d.ts +0 -2
  259. package/execution/__tests__/approval-provenance.test.d.ts.map +0 -1
  260. package/execution/__tests__/approval-provenance.test.js +0 -42
  261. package/execution/__tests__/approval-provenance.test.js.map +0 -1
  262. package/execution/__tests__/file-review-fold.corpus.test.d.ts +0 -2
  263. package/execution/__tests__/file-review-fold.corpus.test.d.ts.map +0 -1
  264. package/execution/__tests__/file-review-fold.corpus.test.js +0 -82
  265. package/execution/__tests__/file-review-fold.corpus.test.js.map +0 -1
  266. package/execution/__tests__/file-review-fold.test.d.ts +0 -2
  267. package/execution/__tests__/file-review-fold.test.d.ts.map +0 -1
  268. package/execution/__tests__/file-review-fold.test.js +0 -184
  269. package/execution/__tests__/file-review-fold.test.js.map +0 -1
  270. package/execution/__tests__/to-display-file-change.test.d.ts +0 -2
  271. package/execution/__tests__/to-display-file-change.test.d.ts.map +0 -1
  272. package/execution/__tests__/to-display-file-change.test.js +0 -81
  273. package/execution/__tests__/to-display-file-change.test.js.map +0 -1
  274. package/execution/__tests__/tool-view.file-changes.test.d.ts +0 -2
  275. package/execution/__tests__/tool-view.file-changes.test.d.ts.map +0 -1
  276. package/execution/__tests__/tool-view.file-changes.test.js +0 -86
  277. package/execution/__tests__/tool-view.file-changes.test.js.map +0 -1
  278. package/execution/__tests__/tool-view.fixtures.test.d.ts +0 -2
  279. package/execution/__tests__/tool-view.fixtures.test.d.ts.map +0 -1
  280. package/execution/__tests__/tool-view.fixtures.test.js +0 -152
  281. package/execution/__tests__/tool-view.fixtures.test.js.map +0 -1
  282. package/execution/__tests__/tool-view.output-ref.test.d.ts +0 -2
  283. package/execution/__tests__/tool-view.output-ref.test.d.ts.map +0 -1
  284. package/execution/__tests__/tool-view.output-ref.test.js +0 -64
  285. package/execution/__tests__/tool-view.output-ref.test.js.map +0 -1
  286. package/execution/__tests__/tool-view.read.test.d.ts +0 -2
  287. package/execution/__tests__/tool-view.read.test.d.ts.map +0 -1
  288. package/execution/__tests__/tool-view.read.test.js +0 -56
  289. package/execution/__tests__/tool-view.read.test.js.map +0 -1
  290. package/execution/__tests__/tool-view.search.test.d.ts +0 -2
  291. package/execution/__tests__/tool-view.search.test.d.ts.map +0 -1
  292. package/execution/__tests__/tool-view.search.test.js +0 -200
  293. package/execution/__tests__/tool-view.search.test.js.map +0 -1
  294. package/execution/__tests__/tool-view.shell.test.d.ts +0 -2
  295. package/execution/__tests__/tool-view.shell.test.d.ts.map +0 -1
  296. package/execution/__tests__/tool-view.shell.test.js +0 -104
  297. package/execution/__tests__/tool-view.shell.test.js.map +0 -1
  298. package/execution/__tests__/transcript.test.d.ts +0 -2
  299. package/execution/__tests__/transcript.test.d.ts.map +0 -1
  300. package/execution/__tests__/transcript.test.js +0 -591
  301. package/execution/__tests__/transcript.test.js.map +0 -1
  302. package/node.test.d.ts +0 -2
  303. package/node.test.d.ts.map +0 -1
  304. package/node.test.js +0 -35
  305. package/node.test.js.map +0 -1
  306. package/src/__tests__/billing.test.ts +0 -146
  307. package/src/__tests__/config.test.ts +0 -52
  308. package/src/__tests__/ensure-identity-account.test.ts +0 -146
  309. package/src/__tests__/errors.test.ts +0 -349
  310. package/src/__tests__/gen/errors.test.ts +0 -138
  311. package/src/__tests__/gen/invitation-client.test.ts +0 -132
  312. package/src/__tests__/gen/proto-utils.test.ts +0 -99
  313. package/src/__tests__/gen/session-client.test.ts +0 -208
  314. package/src/__tests__/guest-auth.test.ts +0 -287
  315. package/src/__tests__/iam-principal.test.ts +0 -82
  316. package/src/__tests__/manifest.test.ts +0 -362
  317. package/src/__tests__/mcpserver-connect.test.ts +0 -181
  318. package/src/__tests__/node.test.ts +0 -74
  319. package/src/__tests__/platform-client-auth.test.ts +0 -76
  320. package/src/__tests__/platform.test.ts +0 -74
  321. package/src/__tests__/plugin.test.ts +0 -92
  322. package/src/__tests__/resource-availability.test.ts +0 -118
  323. package/src/__tests__/runner-adapter.test.ts +0 -122
  324. package/src/__tests__/session.test.ts +0 -66
  325. package/src/__tests__/sharing.test.ts +0 -159
  326. package/src/__tests__/skill.test.ts +0 -150
  327. package/src/__tests__/stigmer.test.ts +0 -170
  328. package/src/__tests__/update-input-roundtrip.test.ts +0 -1007
  329. package/src/__tests__/update-input.test.ts +0 -250
  330. package/src/execution/__tests__/approval-provenance.test.ts +0 -60
  331. package/src/execution/__tests__/file-review-fold.corpus.test.ts +0 -127
  332. package/src/execution/__tests__/file-review-fold.test.ts +0 -281
  333. package/src/execution/__tests__/to-display-file-change.test.ts +0 -106
  334. package/src/execution/__tests__/tool-view.file-changes.test.ts +0 -100
  335. package/src/execution/__tests__/tool-view.fixtures.test.ts +0 -225
  336. package/src/execution/__tests__/tool-view.output-ref.test.ts +0 -76
  337. package/src/execution/__tests__/tool-view.read.test.ts +0 -71
  338. package/src/execution/__tests__/tool-view.search.test.ts +0 -264
  339. package/src/execution/__tests__/tool-view.shell.test.ts +0 -127
  340. package/src/execution/__tests__/transcript.golden.md +0 -100
  341. package/src/execution/__tests__/transcript.test.ts +0 -697
  342. package/src/node.test.ts +0 -38
@@ -1,591 +0,0 @@
1
- // The canonical session transcript (stigmer/stigmer#814): assembly rules,
2
- // offload resolution, and the two serializations.
3
- //
4
- // The Markdown format is a pinned contract: transcript.golden.md freezes the
5
- // exact rendering of a transcript exercising every construct (thinking,
6
- // system, tool calls with args/results, offloaded outputs resolved and
7
- // noted, sub-agent nesting, build-from-plan and in-progress markers). A
8
- // deliberate format change regenerates the golden with
9
- // UPDATE_TRANSCRIPT_GOLDEN=1 npx vitest run src/execution/__tests__/transcript.test.ts
10
- // and reviews the diff; an accidental one fails here.
11
- import { readFileSync, writeFileSync } from "node:fs";
12
- import { fileURLToPath } from "node:url";
13
- import { dirname, resolve } from "node:path";
14
- import { describe, it, expect } from "vitest";
15
- import { create } from "@bufbuild/protobuf";
16
- import { AgentExecutionSchema, } from "@stigmer/protos/ai/stigmer/agentic/agentexecution/v1/api_pb";
17
- import { ExecutionPhase, MessageType, ToolCallStatus, } from "@stigmer/protos/ai/stigmer/agentic/agentexecution/v1/enum_pb";
18
- import { AgentExecutionListSchema, GetArtifactContentResponseSchema, } from "@stigmer/protos/ai/stigmer/agentic/agentexecution/v1/io_pb";
19
- import { SessionSchema } from "@stigmer/protos/ai/stigmer/agentic/session/v1/api_pb";
20
- import { assembleSessionTranscript, fetchSessionTranscript, resolveOffloadedOutputs, transcriptToJson, transcriptToMarkdown, } from "../transcript";
21
- const here = dirname(fileURLToPath(import.meta.url));
22
- // ---------------------------------------------------------------------------
23
- // Fixture builders
24
- // ---------------------------------------------------------------------------
25
- function session() {
26
- return create(SessionSchema, {
27
- metadata: { id: "ses_01" },
28
- spec: { subject: "Fix the flaky test", agentInstanceId: "agi_01" },
29
- });
30
- }
31
- /** Turn 1: prompt echo dedupe, thinking, tool call with args + inline
32
- * result + duration, offloaded text output, image output, raw system. */
33
- function exec1() {
34
- return create(AgentExecutionSchema, {
35
- metadata: { id: "aex_01a" },
36
- spec: { sessionId: "ses_01", message: "Why is CI red?" },
37
- status: {
38
- phase: ExecutionPhase.EXECUTION_COMPLETED,
39
- startedAt: "2026-08-20T10:00:00Z",
40
- completedAt: "2026-08-20T10:01:00Z",
41
- messages: [
42
- {
43
- type: MessageType.MESSAGE_HUMAN,
44
- content: "Why is CI red?",
45
- timestamp: "2026-08-20T10:00:01Z",
46
- },
47
- {
48
- type: MessageType.MESSAGE_THINKING,
49
- content: "The failure is in the retry loop.\nLet me check.",
50
- timestamp: "2026-08-20T10:00:02Z",
51
- },
52
- {
53
- type: MessageType.MESSAGE_AI,
54
- content: "Let me look.",
55
- timestamp: "2026-08-20T10:00:04Z",
56
- toolCalls: [
57
- {
58
- id: "tc_1",
59
- name: "shell_command",
60
- args: { command: "go test ./..." },
61
- result: "FAIL: TestRetry",
62
- status: ToolCallStatus.TOOL_CALL_COMPLETED,
63
- startedAt: "2026-08-20T10:00:05Z",
64
- completedAt: "2026-08-20T10:00:07Z",
65
- },
66
- ],
67
- },
68
- {
69
- type: MessageType.MESSAGE_AI,
70
- content: "",
71
- timestamp: "2026-08-20T10:00:10Z",
72
- toolCalls: [
73
- {
74
- id: "tc_2",
75
- name: "read_file",
76
- args: { path: "retry.go" },
77
- status: ToolCallStatus.TOOL_CALL_COMPLETED,
78
- outputRef: {
79
- storageKey: "artifacts/aex_01a/toolcalls/tc_2.txt",
80
- sizeBytes: 2048n,
81
- mimeType: "text/plain",
82
- truncatedPreview: "package retry…",
83
- },
84
- },
85
- {
86
- id: "tc_3",
87
- name: "screenshot",
88
- status: ToolCallStatus.TOOL_CALL_COMPLETED,
89
- outputRef: {
90
- storageKey: "artifacts/aex_01a/toolcalls/tc_3.png",
91
- sizeBytes: 4096n,
92
- mimeType: "image/png",
93
- isImage: true,
94
- },
95
- },
96
- ],
97
- },
98
- {
99
- type: MessageType.MESSAGE_SYSTEM,
100
- content: "Approval received",
101
- timestamp: "2026-08-20T10:00:20Z",
102
- },
103
- ],
104
- },
105
- });
106
- }
107
- /** Superseded by exec3's edit-and-resubmit — excluded by default. */
108
- function exec2() {
109
- return create(AgentExecutionSchema, {
110
- metadata: { id: "aex_01b" },
111
- spec: { sessionId: "ses_01", message: "old prompt" },
112
- status: { phase: ExecutionPhase.EXECUTION_COMPLETED },
113
- });
114
- }
115
- /** Turn 2: edit-and-resubmit successor with a sub-agent delegation. */
116
- function exec3() {
117
- return create(AgentExecutionSchema, {
118
- metadata: { id: "aex_01c" },
119
- spec: {
120
- sessionId: "ses_01",
121
- message: "edited prompt",
122
- supersedesExecutionId: "aex_01b",
123
- },
124
- status: {
125
- phase: ExecutionPhase.EXECUTION_COMPLETED,
126
- startedAt: "2026-08-20T11:00:00Z",
127
- messages: [
128
- {
129
- type: MessageType.MESSAGE_AI,
130
- content: "Delegating.",
131
- toolCalls: [
132
- {
133
- id: "tc_sa",
134
- name: "task",
135
- status: ToolCallStatus.TOOL_CALL_COMPLETED,
136
- },
137
- ],
138
- },
139
- ],
140
- subAgentExecutions: [
141
- {
142
- id: "tc_sa",
143
- name: "explore",
144
- subject: "Explore the repo",
145
- input: "find tests",
146
- output: "found 3",
147
- startedAt: "2026-08-20T11:00:01Z",
148
- completedAt: "2026-08-20T11:00:06Z",
149
- messages: [
150
- {
151
- type: MessageType.MESSAGE_AI,
152
- content: "Scanning.",
153
- toolCalls: [
154
- {
155
- id: "tc_sa_1",
156
- name: "grep",
157
- result: "3 matches",
158
- status: ToolCallStatus.TOOL_CALL_COMPLETED,
159
- outputRef: {
160
- // Sub-agent outputs are stored under the PARENT
161
- // execution's id — the storage key is the record of it.
162
- storageKey: "artifacts/aex_01c/toolcalls/tc_sa_1.txt",
163
- sizeBytes: 64n,
164
- mimeType: "text/plain",
165
- truncatedPreview: "3 matches…",
166
- },
167
- },
168
- ],
169
- },
170
- ],
171
- },
172
- ],
173
- },
174
- });
175
- }
176
- /** Turn 3: an in-flight Build-from-plan turn. */
177
- function exec4() {
178
- return create(AgentExecutionSchema, {
179
- metadata: { id: "aex_01d" },
180
- spec: {
181
- sessionId: "ses_01",
182
- message: "Build from plan",
183
- executionConfig: { buildFromPlan: true },
184
- },
185
- status: {
186
- phase: ExecutionPhase.EXECUTION_IN_PROGRESS,
187
- startedAt: "2026-08-20T12:00:00Z",
188
- messages: [{ type: MessageType.MESSAGE_AI, content: "Working on it." }],
189
- },
190
- });
191
- }
192
- function allExecutions() {
193
- // Deliberately scrambled: assembly must restore ULID order.
194
- return [exec3(), exec1(), exec4(), exec2()];
195
- }
196
- const RESOLVED = {
197
- "artifacts/aex_01a/toolcalls/tc_2.txt": {
198
- storageKey: "artifacts/aex_01a/toolcalls/tc_2.txt",
199
- content: "package retry\n\nfunc Do() {}",
200
- truncated: false,
201
- totalSizeBytes: 2048,
202
- mimeType: "text/plain",
203
- isImage: false,
204
- },
205
- "artifacts/aex_01a/toolcalls/tc_3.png": {
206
- storageKey: "artifacts/aex_01a/toolcalls/tc_3.png",
207
- truncated: false,
208
- totalSizeBytes: 4096,
209
- mimeType: "image/png",
210
- isImage: true,
211
- },
212
- "artifacts/aex_01c/toolcalls/tc_sa_1.txt": {
213
- storageKey: "artifacts/aex_01c/toolcalls/tc_sa_1.txt",
214
- content: "3 matches in test/",
215
- truncated: false,
216
- totalSizeBytes: 64,
217
- mimeType: "text/plain",
218
- isImage: false,
219
- },
220
- };
221
- // ---------------------------------------------------------------------------
222
- // Assembly
223
- // ---------------------------------------------------------------------------
224
- describe("assembleSessionTranscript", () => {
225
- it("orders turns chronologically by ULID regardless of input order", () => {
226
- const t = assembleSessionTranscript(session(), allExecutions());
227
- expect(t.turns.map((x) => x.execution.metadata?.id)).toEqual([
228
- "aex_01a",
229
- "aex_01c",
230
- "aex_01d",
231
- ]);
232
- });
233
- it("excludes superseded turns by default, matching the conversation view", () => {
234
- const t = assembleSessionTranscript(session(), allExecutions());
235
- expect(t.turns.some((x) => x.execution.metadata?.id === "aex_01b")).toBe(false);
236
- expect(t.includesSuperseded).toBe(false);
237
- });
238
- it("keeps superseded turns, marked, when includeSuperseded is set", () => {
239
- const t = assembleSessionTranscript(session(), allExecutions(), {
240
- includeSuperseded: true,
241
- });
242
- const ids = t.turns.map((x) => x.execution.metadata?.id);
243
- expect(ids).toEqual(["aex_01a", "aex_01b", "aex_01c", "aex_01d"]);
244
- expect(t.turns.map((x) => x.superseded)).toEqual([
245
- false,
246
- true,
247
- false,
248
- false,
249
- ]);
250
- });
251
- it("synthesizes user prompts by the shared rule", () => {
252
- const t = assembleSessionTranscript(session(), allExecutions());
253
- expect(t.turns[0].userPrompt).toBe("Why is CI red?");
254
- // Build-from-plan: machine label, no user prose.
255
- expect(t.turns[2].userPrompt).toBeNull();
256
- expect(t.turns[2].isBuildFromPlan).toBe(true);
257
- });
258
- it("suppresses the 'execute' placeholder prompt", () => {
259
- const exec = create(AgentExecutionSchema, {
260
- metadata: { id: "aex_x" },
261
- spec: { sessionId: "ses_01", message: "execute" },
262
- status: { phase: ExecutionPhase.EXECUTION_COMPLETED },
263
- });
264
- const t = assembleSessionTranscript(session(), [exec]);
265
- expect(t.turns[0].userPrompt).toBeNull();
266
- expect(t.turns[0].isBuildFromPlan).toBe(false);
267
- });
268
- it("marks non-terminal executions in progress", () => {
269
- const t = assembleSessionTranscript(session(), allExecutions());
270
- expect(t.turns.map((x) => x.inProgress)).toEqual([false, false, true]);
271
- });
272
- });
273
- function fakeArtifactClient(contentByKey) {
274
- const requests = [];
275
- return {
276
- requests,
277
- client: {
278
- agentExecution: {
279
- listBySession: () => Promise.reject(new Error("not under test")),
280
- getArtifactContent: (input) => {
281
- requests.push(input);
282
- const entry = contentByKey[input.storageKey];
283
- if (entry === undefined) {
284
- return Promise.reject(new Error(`no such key: ${input.storageKey}`));
285
- }
286
- if (entry instanceof Error)
287
- return Promise.reject(entry);
288
- return Promise.resolve(create(GetArtifactContentResponseSchema, {
289
- content: new TextEncoder().encode(entry.content),
290
- truncated: entry.truncated ?? false,
291
- totalSizeBytes: BigInt(entry.totalSizeBytes ?? entry.content.length),
292
- }));
293
- },
294
- },
295
- },
296
- };
297
- }
298
- describe("resolveOffloadedOutputs", () => {
299
- it("resolves parent and sub-agent refs, deriving each execution id from the storage key", async () => {
300
- const { client, requests } = fakeArtifactClient({
301
- "artifacts/aex_01a/toolcalls/tc_2.txt": { content: "full file" },
302
- "artifacts/aex_01c/toolcalls/tc_sa_1.txt": { content: "3 matches in test/" },
303
- });
304
- const resolved = await resolveOffloadedOutputs(client, allExecutions());
305
- expect(resolved["artifacts/aex_01a/toolcalls/tc_2.txt"].content).toBe("full file");
306
- // The sub-agent's ref (nested in exec3's sub_agent_executions) resolved
307
- // under the PARENT execution's id, taken from the key itself.
308
- const subAgentRequest = requests.find((r) => r.storageKey === "artifacts/aex_01c/toolcalls/tc_sa_1.txt");
309
- expect(subAgentRequest?.executionId).toBe("aex_01c");
310
- });
311
- it("never fetches image refs, but records them for the serializers", async () => {
312
- const { client, requests } = fakeArtifactClient({
313
- "artifacts/aex_01a/toolcalls/tc_2.txt": { content: "full file" },
314
- "artifacts/aex_01c/toolcalls/tc_sa_1.txt": { content: "x" },
315
- });
316
- const resolved = await resolveOffloadedOutputs(client, allExecutions());
317
- const imageKey = "artifacts/aex_01a/toolcalls/tc_3.png";
318
- expect(requests.some((r) => r.storageKey === imageKey)).toBe(false);
319
- expect(resolved[imageKey]).toMatchObject({
320
- isImage: true,
321
- mimeType: "image/png",
322
- totalSizeBytes: 4096,
323
- });
324
- });
325
- it("tolerates individual fetch failures — the rest still resolve", async () => {
326
- const { client } = fakeArtifactClient({
327
- "artifacts/aex_01a/toolcalls/tc_2.txt": new Error("storage unavailable"),
328
- "artifacts/aex_01c/toolcalls/tc_sa_1.txt": { content: "3 matches in test/" },
329
- });
330
- const resolved = await resolveOffloadedOutputs(client, allExecutions());
331
- expect(resolved["artifacts/aex_01a/toolcalls/tc_2.txt"].error).toBe("storage unavailable");
332
- expect(resolved["artifacts/aex_01a/toolcalls/tc_2.txt"].content).toBeUndefined();
333
- expect(resolved["artifacts/aex_01c/toolcalls/tc_sa_1.txt"].content).toBe("3 matches in test/");
334
- });
335
- it("carries the server's truncation flag and true size", async () => {
336
- const { client } = fakeArtifactClient({
337
- "artifacts/aex_01a/toolcalls/tc_2.txt": {
338
- content: "first half…",
339
- truncated: true,
340
- totalSizeBytes: 1048576,
341
- },
342
- "artifacts/aex_01c/toolcalls/tc_sa_1.txt": { content: "x" },
343
- });
344
- const resolved = await resolveOffloadedOutputs(client, allExecutions());
345
- expect(resolved["artifacts/aex_01a/toolcalls/tc_2.txt"]).toMatchObject({
346
- truncated: true,
347
- totalSizeBytes: 1048576,
348
- });
349
- });
350
- it("holds at most `concurrency` fetches in flight and still resolves every ref", async () => {
351
- // Six text refs on one execution, a pool of two. The fake parks every
352
- // fetch on a deferred so the in-flight count is observable, then releases
353
- // them one at a time; the pool must never exceed two and must drain all six.
354
- const keys = Array.from({ length: 6 }, (_, i) => `artifacts/aex_pool/toolcalls/tc_${i}.txt`);
355
- const execution = create(AgentExecutionSchema, {
356
- metadata: { id: "aex_pool" },
357
- status: {
358
- messages: [
359
- {
360
- type: MessageType.MESSAGE_AI,
361
- toolCalls: keys.map((storageKey, i) => ({
362
- id: `tc_${i}`,
363
- name: "read_file",
364
- status: ToolCallStatus.TOOL_CALL_COMPLETED,
365
- outputRef: { storageKey, mimeType: "text/plain" },
366
- })),
367
- },
368
- ],
369
- },
370
- });
371
- const releases = [];
372
- let inFlight = 0;
373
- let maxInFlight = 0;
374
- const client = {
375
- agentExecution: {
376
- listBySession: () => Promise.reject(new Error("not under test")),
377
- getArtifactContent: (input) => {
378
- inFlight++;
379
- maxInFlight = Math.max(maxInFlight, inFlight);
380
- return new Promise((resolveFetch) => {
381
- releases.push(() => {
382
- inFlight--;
383
- resolveFetch(create(GetArtifactContentResponseSchema, {
384
- content: new TextEncoder().encode(input.storageKey),
385
- }));
386
- });
387
- });
388
- },
389
- },
390
- };
391
- const resolving = resolveOffloadedOutputs(client, [execution], { concurrency: 2 });
392
- // Release the six fetches one at a time. A macrotask boundary between
393
- // releases lets the pool's microtask chain run to its next fetch, so the
394
- // observation is deterministic: no timers, no races.
395
- let released = 0;
396
- while (released < keys.length) {
397
- const release = releases.shift();
398
- if (release) {
399
- release();
400
- released++;
401
- }
402
- else {
403
- await new Promise((tick) => setTimeout(tick, 0));
404
- }
405
- }
406
- const resolved = await resolving;
407
- // Exactly two: never more (the bound holds) and never fewer (the pool is
408
- // genuinely parallel, not a serial loop wearing a `concurrency` option).
409
- expect(maxInFlight).toBe(2);
410
- for (const key of keys) {
411
- expect(resolved[key].content).toBe(key);
412
- }
413
- });
414
- });
415
- // ---------------------------------------------------------------------------
416
- // Fetch
417
- // ---------------------------------------------------------------------------
418
- describe("fetchSessionTranscript", () => {
419
- function fakeClient(overrides) {
420
- const artifacts = fakeArtifactClient({
421
- "artifacts/aex_01a/toolcalls/tc_2.txt": { content: "full file" },
422
- "artifacts/aex_01c/toolcalls/tc_sa_1.txt": { content: "3 matches" },
423
- });
424
- return {
425
- session: { get: (id) => Promise.resolve(session()) },
426
- agentExecution: {
427
- ...artifacts.client.agentExecution,
428
- listBySession: () => Promise.resolve(create(AgentExecutionListSchema, {
429
- totalPages: overrides?.totalPages ?? 1,
430
- entries: allExecutions(),
431
- })),
432
- },
433
- };
434
- }
435
- it("assembles the full transcript with outputs resolved", async () => {
436
- const t = await fetchSessionTranscript(fakeClient(), "ses_01");
437
- expect(t.turns).toHaveLength(3);
438
- expect(t.resolvedOutputs["artifacts/aex_01a/toolcalls/tc_2.txt"].content).toBe("full file");
439
- });
440
- it("skips output resolution when disabled", async () => {
441
- const t = await fetchSessionTranscript(fakeClient(), "ses_01", {
442
- resolveOutputs: false,
443
- });
444
- expect(Object.keys(t.resolvedOutputs)).toHaveLength(0);
445
- });
446
- it("refuses to export a silently truncated conversation if the server ever paginates", async () => {
447
- await expect(fetchSessionTranscript(fakeClient({ totalPages: 2 }), "ses_01")).rejects.toThrow(/2 pages .* single page/s);
448
- });
449
- });
450
- // ---------------------------------------------------------------------------
451
- // Markdown
452
- // ---------------------------------------------------------------------------
453
- describe("transcriptToMarkdown", () => {
454
- it("matches the pinned format contract (transcript.golden.md)", () => {
455
- const t = assembleSessionTranscript(session(), allExecutions(), {
456
- resolvedOutputs: RESOLVED,
457
- });
458
- const goldenPath = resolve(here, "transcript.golden.md");
459
- const actual = transcriptToMarkdown(t);
460
- if (process.env.UPDATE_TRANSCRIPT_GOLDEN) {
461
- writeFileSync(goldenPath, actual);
462
- }
463
- expect(actual).toBe(readFileSync(goldenPath, "utf8"));
464
- });
465
- it("stamps the export time only when provided", () => {
466
- const t = assembleSessionTranscript(session(), [exec1()]);
467
- expect(transcriptToMarkdown(t)).not.toContain("Exported:");
468
- expect(transcriptToMarkdown(t, { generatedAt: "2026-08-22T06:00:00Z" })).toContain("- Exported: 2026-08-22T06:00:00Z");
469
- });
470
- it("falls back to the ref's preview, with an honest note, when an output is unresolved", () => {
471
- const t = assembleSessionTranscript(session(), [exec1()]);
472
- const md = transcriptToMarkdown(t);
473
- expect(md).toContain("_Offloaded output not resolved — showing preview._");
474
- expect(md).toContain("package retry…");
475
- });
476
- it("notes the fetch failure when resolution was attempted and failed", () => {
477
- const t = assembleSessionTranscript(session(), [exec1()], {
478
- resolvedOutputs: {
479
- "artifacts/aex_01a/toolcalls/tc_2.txt": {
480
- storageKey: "artifacts/aex_01a/toolcalls/tc_2.txt",
481
- truncated: false,
482
- mimeType: "text/plain",
483
- isImage: false,
484
- error: "storage unavailable",
485
- },
486
- },
487
- });
488
- expect(transcriptToMarkdown(t)).toContain("_Offloaded output unavailable (storage unavailable) — showing preview._");
489
- });
490
- it("marks server-truncated outputs with the byte counts", () => {
491
- const t = assembleSessionTranscript(session(), [exec1()], {
492
- resolvedOutputs: {
493
- "artifacts/aex_01a/toolcalls/tc_2.txt": {
494
- storageKey: "artifacts/aex_01a/toolcalls/tc_2.txt",
495
- content: "0123456789",
496
- truncated: true,
497
- totalSizeBytes: 1048576,
498
- mimeType: "text/plain",
499
- isImage: false,
500
- },
501
- },
502
- });
503
- expect(transcriptToMarkdown(t)).toContain("_Output truncated at 10 of 1048576 bytes (server content cap)._");
504
- });
505
- it("sizes fences past backtick runs in the content", () => {
506
- const exec = create(AgentExecutionSchema, {
507
- metadata: { id: "aex_x" },
508
- spec: { sessionId: "ses_01", message: "prompt" },
509
- status: {
510
- phase: ExecutionPhase.EXECUTION_COMPLETED,
511
- messages: [
512
- {
513
- type: MessageType.MESSAGE_AI,
514
- content: "",
515
- toolCalls: [
516
- {
517
- id: "tc",
518
- name: "shell_command",
519
- result: "a fence: ```md\ninside\n```",
520
- status: ToolCallStatus.TOOL_CALL_COMPLETED,
521
- },
522
- ],
523
- },
524
- ],
525
- },
526
- });
527
- const md = transcriptToMarkdown(assembleSessionTranscript(session(), [exec]));
528
- expect(md).toContain("````\na fence: ```md\ninside\n```\n````");
529
- });
530
- it("marks kept superseded turns", () => {
531
- const t = assembleSessionTranscript(session(), allExecutions(), {
532
- includeSuperseded: true,
533
- });
534
- const md = transcriptToMarkdown(t);
535
- expect(md).toContain("- Includes superseded (edited-and-resubmitted) turns");
536
- expect(md).toContain("_Superseded by an edited resubmission._");
537
- expect(md).toContain("old prompt");
538
- });
539
- });
540
- // ---------------------------------------------------------------------------
541
- // JSON
542
- // ---------------------------------------------------------------------------
543
- describe("transcriptToJson", () => {
544
- it("is JSON.stringify-safe despite bigint proto fields (protojson contract)", () => {
545
- const t = assembleSessionTranscript(session(), allExecutions(), {
546
- resolvedOutputs: RESOLVED,
547
- });
548
- // sizeBytes is int64 → bigint on the proto; a raw stringify of the
549
- // transcript would throw. The projection must not.
550
- const text = JSON.stringify(transcriptToJson(t), null, 2);
551
- const parsed = JSON.parse(text);
552
- expect(parsed.format).toBe("stigmer.ai/session-transcript/v1");
553
- expect(parsed.session.metadata.id).toBe("ses_01");
554
- expect(parsed.turns).toHaveLength(3);
555
- // protojson: snake_case field names, int64 as string.
556
- expect(parsed.turns[0].execution.status.messages[3].tool_calls[0].output_ref
557
- .size_bytes).toBe("2048");
558
- });
559
- it("carries the canonical-rule verdicts per turn", () => {
560
- const t = assembleSessionTranscript(session(), allExecutions(), {
561
- includeSuperseded: true,
562
- });
563
- const parsed = JSON.parse(JSON.stringify(transcriptToJson(t)));
564
- expect(parsed.includes_superseded).toBe(true);
565
- expect(parsed.turns[0].user_prompt).toBe("Why is CI red?");
566
- expect(parsed.turns[1].superseded).toBe(true);
567
- expect(parsed.turns[3].build_from_plan).toBe(true);
568
- expect(parsed.turns[3].in_progress).toBe(true);
569
- });
570
- it("strips the internal Temporal callback token from execution status", () => {
571
- const exec = exec1();
572
- exec.status.callbackToken = new TextEncoder().encode("task-token");
573
- const t = assembleSessionTranscript(session(), [exec]);
574
- const parsed = JSON.parse(JSON.stringify(transcriptToJson(t)));
575
- expect(parsed.turns[0].execution.status.callback_token).toBeUndefined();
576
- // The strip is surgical — the rest of status is intact.
577
- expect(parsed.turns[0].execution.status.messages).toHaveLength(5);
578
- });
579
- it("keys resolved outputs by storage key with plain-JSON fields", () => {
580
- const t = assembleSessionTranscript(session(), allExecutions(), {
581
- resolvedOutputs: RESOLVED,
582
- });
583
- const parsed = JSON.parse(JSON.stringify(transcriptToJson(t)));
584
- expect(parsed.resolved_outputs["artifacts/aex_01a/toolcalls/tc_2.txt"]).toMatchObject({
585
- content: "package retry\n\nfunc Do() {}",
586
- mime_type: "text/plain",
587
- total_size_bytes: 2048,
588
- });
589
- });
590
- });
591
- //# sourceMappingURL=transcript.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"transcript.test.js","sourceRoot":"","sources":["../../../src/execution/__tests__/transcript.test.ts"],"names":[],"mappings":"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"}
package/node.test.d.ts DELETED
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=node.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"node.test.d.ts","sourceRoot":"","sources":["../src/node.test.ts"],"names":[],"mappings":""}