@agents-ensemble/core 0.20.0 → 0.22.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 (270) hide show
  1. package/assets/pi/pi-cli-env-wrapper.cmd +28 -0
  2. package/assets/pi/pi-cli-env-wrapper.sh +19 -0
  3. package/assets/pi/settings.json +4 -0
  4. package/dist/acp/acp-preset-bins.d.ts +3 -3
  5. package/dist/acp/acp-preset-bins.d.ts.map +1 -1
  6. package/dist/acp/acp-preset-bins.js +3 -3
  7. package/dist/acp/acp-preset-bins.js.map +1 -1
  8. package/dist/acp/index.d.ts +3 -1
  9. package/dist/acp/index.d.ts.map +1 -1
  10. package/dist/acp/index.js +2 -1
  11. package/dist/acp/index.js.map +1 -1
  12. package/dist/acp/pi-acp-wrapper.d.ts +3 -0
  13. package/dist/acp/pi-acp-wrapper.d.ts.map +1 -0
  14. package/dist/acp/pi-acp-wrapper.js +41 -0
  15. package/dist/acp/pi-acp-wrapper.js.map +1 -0
  16. package/dist/acp/pi-builtin-config.d.ts +10 -0
  17. package/dist/acp/pi-builtin-config.d.ts.map +1 -0
  18. package/dist/acp/pi-builtin-config.js +36 -0
  19. package/dist/acp/pi-builtin-config.js.map +1 -0
  20. package/dist/acp/pi-runtime.d.ts +23 -0
  21. package/dist/acp/pi-runtime.d.ts.map +1 -0
  22. package/dist/acp/pi-runtime.js +160 -0
  23. package/dist/acp/pi-runtime.js.map +1 -0
  24. package/dist/acp/pi-session-map.d.ts +36 -0
  25. package/dist/acp/pi-session-map.d.ts.map +1 -0
  26. package/dist/acp/pi-session-map.js +266 -0
  27. package/dist/acp/pi-session-map.js.map +1 -0
  28. package/dist/acp/resolve-acp-spawn.d.ts +9 -3
  29. package/dist/acp/resolve-acp-spawn.d.ts.map +1 -1
  30. package/dist/acp/resolve-acp-spawn.js +41 -9
  31. package/dist/acp/resolve-acp-spawn.js.map +1 -1
  32. package/dist/acp/resolve-bundled-acp-bin.d.ts +2 -2
  33. package/dist/acp/resolve-bundled-acp-bin.d.ts.map +1 -1
  34. package/dist/acp/resolve-bundled-acp-bin.js +4 -4
  35. package/dist/acp/resolve-bundled-acp-bin.js.map +1 -1
  36. package/dist/acp/validate-acp-preset-prerequisites.d.ts +1 -1
  37. package/dist/acp/validate-acp-preset-prerequisites.d.ts.map +1 -1
  38. package/dist/acp/validate-acp-preset-prerequisites.js +30 -10
  39. package/dist/acp/validate-acp-preset-prerequisites.js.map +1 -1
  40. package/dist/conductor/conductor-agent.d.ts +15 -3
  41. package/dist/conductor/conductor-agent.d.ts.map +1 -1
  42. package/dist/conductor/conductor-auth.d.ts +4 -3
  43. package/dist/conductor/conductor-auth.d.ts.map +1 -1
  44. package/dist/conductor/conductor-auth.js +20 -4
  45. package/dist/conductor/conductor-auth.js.map +1 -1
  46. package/dist/conductor/conductor-dispatch-lifecycle.d.ts +85 -0
  47. package/dist/conductor/conductor-dispatch-lifecycle.d.ts.map +1 -0
  48. package/dist/conductor/conductor-dispatch-lifecycle.js +190 -0
  49. package/dist/conductor/conductor-dispatch-lifecycle.js.map +1 -0
  50. package/dist/conductor/conductor-history.d.ts +15 -0
  51. package/dist/conductor/conductor-history.d.ts.map +1 -1
  52. package/dist/conductor/conductor-history.js +38 -7
  53. package/dist/conductor/conductor-history.js.map +1 -1
  54. package/dist/conductor/conductor-path-safety.d.ts +23 -0
  55. package/dist/conductor/conductor-path-safety.d.ts.map +1 -0
  56. package/dist/conductor/conductor-path-safety.js +319 -0
  57. package/dist/conductor/conductor-path-safety.js.map +1 -0
  58. package/dist/conductor/conductor-pi-auth.d.ts +57 -2
  59. package/dist/conductor/conductor-pi-auth.d.ts.map +1 -1
  60. package/dist/conductor/conductor-pi-auth.js +718 -40
  61. package/dist/conductor/conductor-pi-auth.js.map +1 -1
  62. package/dist/conductor/conductor-recovery-inbox.d.ts +73 -0
  63. package/dist/conductor/conductor-recovery-inbox.d.ts.map +1 -0
  64. package/dist/conductor/conductor-recovery-inbox.js +181 -0
  65. package/dist/conductor/conductor-recovery-inbox.js.map +1 -0
  66. package/dist/conductor/conductor-send-reconnect.d.ts +33 -4
  67. package/dist/conductor/conductor-send-reconnect.d.ts.map +1 -1
  68. package/dist/conductor/conductor-send-reconnect.js +89 -24
  69. package/dist/conductor/conductor-send-reconnect.js.map +1 -1
  70. package/dist/conductor/conductor-session-driver.d.ts +34 -1
  71. package/dist/conductor/conductor-session-driver.d.ts.map +1 -1
  72. package/dist/conductor/conductor-session-driver.js +529 -75
  73. package/dist/conductor/conductor-session-driver.js.map +1 -1
  74. package/dist/conductor/conductor-session.d.ts +4 -0
  75. package/dist/conductor/conductor-session.d.ts.map +1 -1
  76. package/dist/conductor/conductor-session.js +416 -145
  77. package/dist/conductor/conductor-session.js.map +1 -1
  78. package/dist/conductor/conductor-setup.d.ts +30 -0
  79. package/dist/conductor/conductor-setup.d.ts.map +1 -0
  80. package/dist/conductor/conductor-setup.js +243 -0
  81. package/dist/conductor/conductor-setup.js.map +1 -0
  82. package/dist/conductor/cursor-bootstrap-state.d.ts +9 -0
  83. package/dist/conductor/cursor-bootstrap-state.d.ts.map +1 -0
  84. package/dist/conductor/cursor-bootstrap-state.js +11 -0
  85. package/dist/conductor/cursor-bootstrap-state.js.map +1 -0
  86. package/dist/conductor/cursor-run-snapshots.d.ts +30 -0
  87. package/dist/conductor/cursor-run-snapshots.d.ts.map +1 -0
  88. package/dist/conductor/cursor-run-snapshots.js +120 -0
  89. package/dist/conductor/cursor-run-snapshots.js.map +1 -0
  90. package/dist/conductor/index.d.ts +18 -7
  91. package/dist/conductor/index.d.ts.map +1 -1
  92. package/dist/conductor/index.js +9 -4
  93. package/dist/conductor/index.js.map +1 -1
  94. package/dist/conductor/operator-command.d.ts +5 -0
  95. package/dist/conductor/operator-command.d.ts.map +1 -1
  96. package/dist/conductor/operator-command.js +6 -0
  97. package/dist/conductor/operator-command.js.map +1 -1
  98. package/dist/conductor/operator-input-binding.d.ts +17 -0
  99. package/dist/conductor/operator-input-binding.d.ts.map +1 -1
  100. package/dist/conductor/pi-auth-recovery-snapshot-store.d.ts +45 -0
  101. package/dist/conductor/pi-auth-recovery-snapshot-store.d.ts.map +1 -0
  102. package/dist/conductor/pi-auth-recovery-snapshot-store.js +116 -0
  103. package/dist/conductor/pi-auth-recovery-snapshot-store.js.map +1 -0
  104. package/dist/conductor/pi-conductor-agent.d.ts +6 -3
  105. package/dist/conductor/pi-conductor-agent.d.ts.map +1 -1
  106. package/dist/conductor/pi-conductor-agent.js +276 -53
  107. package/dist/conductor/pi-conductor-agent.js.map +1 -1
  108. package/dist/conductor/pi-conductor-session-file.d.ts +13 -0
  109. package/dist/conductor/pi-conductor-session-file.d.ts.map +1 -0
  110. package/dist/conductor/pi-conductor-session-file.js +21 -0
  111. package/dist/conductor/pi-conductor-session-file.js.map +1 -0
  112. package/dist/conductor/pi-resource-loader.d.ts +6 -0
  113. package/dist/conductor/pi-resource-loader.d.ts.map +1 -1
  114. package/dist/conductor/pi-resource-loader.js +26 -12
  115. package/dist/conductor/pi-resource-loader.js.map +1 -1
  116. package/dist/conductor/pi-user-root-lock.d.ts +8 -0
  117. package/dist/conductor/pi-user-root-lock.d.ts.map +1 -0
  118. package/dist/conductor/pi-user-root-lock.js +53 -0
  119. package/dist/conductor/pi-user-root-lock.js.map +1 -0
  120. package/dist/conductor/recovery-inbox-command.d.ts +29 -0
  121. package/dist/conductor/recovery-inbox-command.d.ts.map +1 -0
  122. package/dist/conductor/recovery-inbox-command.js +248 -0
  123. package/dist/conductor/recovery-inbox-command.js.map +1 -0
  124. package/dist/conductor/session/events/index.d.ts +1 -1
  125. package/dist/conductor/session/events/index.d.ts.map +1 -1
  126. package/dist/conductor/session/events/index.js.map +1 -1
  127. package/dist/conductor/session/events/session-event.d.ts +43 -1
  128. package/dist/conductor/session/events/session-event.d.ts.map +1 -1
  129. package/dist/conductor/session/events/session-log-event-groups.d.ts +1 -1
  130. package/dist/conductor/session/events/session-log-event-groups.d.ts.map +1 -1
  131. package/dist/conductor/session/events/session-log-event-groups.js +2 -0
  132. package/dist/conductor/session/events/session-log-event-groups.js.map +1 -1
  133. package/dist/conductor/session/events/session-log-event.d.ts +4 -0
  134. package/dist/conductor/session/events/session-log-event.d.ts.map +1 -1
  135. package/dist/conductor/session/format-session-event.js +57 -5
  136. package/dist/conductor/session/format-session-event.js.map +1 -1
  137. package/dist/conductor/session/select-dispatch-batch.d.ts +2 -0
  138. package/dist/conductor/session/select-dispatch-batch.d.ts.map +1 -1
  139. package/dist/conductor/session/select-dispatch-batch.js +36 -2
  140. package/dist/conductor/session/select-dispatch-batch.js.map +1 -1
  141. package/dist/conductor/session/session-event-queue.d.ts +14 -0
  142. package/dist/conductor/session/session-event-queue.d.ts.map +1 -1
  143. package/dist/conductor/session/session-event-queue.js +82 -10
  144. package/dist/conductor/session/session-event-queue.js.map +1 -1
  145. package/dist/conductor/session/session-event.d.ts +1 -1
  146. package/dist/conductor/session/session-event.d.ts.map +1 -1
  147. package/dist/conductor/session-policy.d.ts.map +1 -1
  148. package/dist/conductor/session-policy.js +8 -4
  149. package/dist/conductor/session-policy.js.map +1 -1
  150. package/dist/conductor/submit-operator-input.d.ts +3 -0
  151. package/dist/conductor/submit-operator-input.d.ts.map +1 -1
  152. package/dist/conductor/submit-operator-input.js +21 -0
  153. package/dist/conductor/submit-operator-input.js.map +1 -1
  154. package/dist/config/deep-merge.d.ts.map +1 -1
  155. package/dist/config/deep-merge.js +13 -3
  156. package/dist/config/deep-merge.js.map +1 -1
  157. package/dist/config/defaults.d.ts.map +1 -1
  158. package/dist/config/defaults.js +1 -1
  159. package/dist/config/defaults.js.map +1 -1
  160. package/dist/config/doctor-settings.d.ts +59 -0
  161. package/dist/config/doctor-settings.d.ts.map +1 -0
  162. package/dist/config/doctor-settings.js +343 -0
  163. package/dist/config/doctor-settings.js.map +1 -0
  164. package/dist/config/ensemble-config-digest.d.ts +2 -4
  165. package/dist/config/ensemble-config-digest.d.ts.map +1 -1
  166. package/dist/config/ensemble-config-digest.js +2 -4
  167. package/dist/config/ensemble-config-digest.js.map +1 -1
  168. package/dist/config/index.d.ts +3 -1
  169. package/dist/config/index.d.ts.map +1 -1
  170. package/dist/config/index.js +1 -0
  171. package/dist/config/index.js.map +1 -1
  172. package/dist/config/load-ensemble-config.d.ts.map +1 -1
  173. package/dist/config/load-ensemble-config.js +8 -1
  174. package/dist/config/load-ensemble-config.js.map +1 -1
  175. package/dist/config/parse-config.d.ts.map +1 -1
  176. package/dist/config/parse-config.js +34 -14
  177. package/dist/config/parse-config.js.map +1 -1
  178. package/dist/config/resolve-settings.d.ts +3 -1
  179. package/dist/config/resolve-settings.d.ts.map +1 -1
  180. package/dist/config/resolve-settings.js +7 -4
  181. package/dist/config/resolve-settings.js.map +1 -1
  182. package/dist/config/types.d.ts +14 -5
  183. package/dist/config/types.d.ts.map +1 -1
  184. package/dist/dispatch/attach-worker.js +1 -1
  185. package/dist/dispatch/attach-worker.js.map +1 -1
  186. package/dist/dispatch/worker-acp-session.d.ts +21 -3
  187. package/dist/dispatch/worker-acp-session.d.ts.map +1 -1
  188. package/dist/dispatch/worker-acp-session.js +50 -13
  189. package/dist/dispatch/worker-acp-session.js.map +1 -1
  190. package/dist/ensemble-paths.d.ts +19 -19
  191. package/dist/ensemble-paths.d.ts.map +1 -1
  192. package/dist/ensemble-paths.js +40 -22
  193. package/dist/ensemble-paths.js.map +1 -1
  194. package/dist/issue/resolve-issue-url.d.ts +4 -0
  195. package/dist/issue/resolve-issue-url.d.ts.map +1 -1
  196. package/dist/issue/resolve-issue-url.js +2 -2
  197. package/dist/issue/resolve-issue-url.js.map +1 -1
  198. package/dist/operator-runtime.d.ts +19 -4
  199. package/dist/operator-runtime.d.ts.map +1 -1
  200. package/dist/operator-runtime.js +13 -2
  201. package/dist/operator-runtime.js.map +1 -1
  202. package/dist/profile/types.d.ts +4 -0
  203. package/dist/profile/types.d.ts.map +1 -1
  204. package/dist/profile/types.js +29 -12
  205. package/dist/profile/types.js.map +1 -1
  206. package/dist/representation/escape-terminal-control-characters.d.ts +9 -0
  207. package/dist/representation/escape-terminal-control-characters.d.ts.map +1 -0
  208. package/dist/representation/escape-terminal-control-characters.js +34 -0
  209. package/dist/representation/escape-terminal-control-characters.js.map +1 -0
  210. package/dist/representation/index.d.ts +1 -0
  211. package/dist/representation/index.d.ts.map +1 -1
  212. package/dist/representation/index.js +1 -0
  213. package/dist/representation/index.js.map +1 -1
  214. package/dist/runtime/types.d.ts +9 -0
  215. package/dist/runtime/types.d.ts.map +1 -1
  216. package/dist/runtime/worker-runtime.d.ts +14 -1
  217. package/dist/runtime/worker-runtime.d.ts.map +1 -1
  218. package/dist/runtime/worker-runtime.js +197 -50
  219. package/dist/runtime/worker-runtime.js.map +1 -1
  220. package/dist/runtime/worker-session.d.ts +2 -1
  221. package/dist/runtime/worker-session.d.ts.map +1 -1
  222. package/dist/runtime/worker-session.js +1 -0
  223. package/dist/runtime/worker-session.js.map +1 -1
  224. package/dist/session/export-session-bundle.d.ts +77 -0
  225. package/dist/session/export-session-bundle.d.ts.map +1 -0
  226. package/dist/session/export-session-bundle.js +640 -0
  227. package/dist/session/export-session-bundle.js.map +1 -0
  228. package/dist/session/index.d.ts +6 -3
  229. package/dist/session/index.d.ts.map +1 -1
  230. package/dist/session/index.js +4 -1
  231. package/dist/session/index.js.map +1 -1
  232. package/dist/session/open-question-control.d.ts +9 -0
  233. package/dist/session/open-question-control.d.ts.map +1 -1
  234. package/dist/session/open-question-control.js +26 -1
  235. package/dist/session/open-question-control.js.map +1 -1
  236. package/dist/session/open-questions-store.d.ts +1 -1
  237. package/dist/session/open-questions-store.d.ts.map +1 -1
  238. package/dist/session/open-questions-store.js +3 -6
  239. package/dist/session/open-questions-store.js.map +1 -1
  240. package/dist/session/persisted-file.d.ts +5 -0
  241. package/dist/session/persisted-file.d.ts.map +1 -0
  242. package/dist/session/persisted-file.js +56 -0
  243. package/dist/session/persisted-file.js.map +1 -0
  244. package/dist/session/session-resume-store.d.ts +79 -10
  245. package/dist/session/session-resume-store.d.ts.map +1 -1
  246. package/dist/session/session-resume-store.js +353 -83
  247. package/dist/session/session-resume-store.js.map +1 -1
  248. package/dist/session/session-snapshot-paths.d.ts +11 -0
  249. package/dist/session/session-snapshot-paths.d.ts.map +1 -0
  250. package/dist/session/session-snapshot-paths.js +41 -0
  251. package/dist/session/session-snapshot-paths.js.map +1 -0
  252. package/dist/session/session-state-store.d.ts +2 -2
  253. package/dist/session/session-state-store.d.ts.map +1 -1
  254. package/dist/session/session-state-store.js +5 -16
  255. package/dist/session/session-state-store.js.map +1 -1
  256. package/dist/session/tool-call-snapshot-history.d.ts +12 -1
  257. package/dist/session/tool-call-snapshot-history.d.ts.map +1 -1
  258. package/dist/session/tool-call-snapshot-history.js +75 -70
  259. package/dist/session/tool-call-snapshot-history.js.map +1 -1
  260. package/dist/session/worker-session-history.d.ts +51 -0
  261. package/dist/session/worker-session-history.d.ts.map +1 -0
  262. package/dist/session/worker-session-history.js +654 -0
  263. package/dist/session/worker-session-history.js.map +1 -0
  264. package/dist/workspace/index.d.ts +1 -1
  265. package/dist/workspace/index.d.ts.map +1 -1
  266. package/dist/worktree/worktree.d.ts +6 -1
  267. package/dist/worktree/worktree.d.ts.map +1 -1
  268. package/dist/worktree/worktree.js +123 -2
  269. package/dist/worktree/worktree.js.map +1 -1
  270. package/package.json +9 -4
@@ -0,0 +1,9 @@
1
+ export type CursorBootstrapStatus = 'unknown' | 'saving' | 'complete' | 'incomplete';
2
+ export type CursorBootstrapAssumption = 'assume-complete' | 'assume-incomplete';
3
+ /** Mutable only while an operator resolves a legacy Cursor session. */
4
+ export interface CursorBootstrapState {
5
+ status: CursorBootstrapStatus;
6
+ pendingAssumption?: CursorBootstrapAssumption;
7
+ }
8
+ export declare function cursorBootstrapCompleteForStore(state: CursorBootstrapState): boolean | undefined;
9
+ //# sourceMappingURL=cursor-bootstrap-state.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cursor-bootstrap-state.d.ts","sourceRoot":"","sources":["../../src/conductor/cursor-bootstrap-state.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,qBAAqB,GAC7B,SAAS,GACT,QAAQ,GACR,UAAU,GACV,YAAY,CAAC;AAEjB,MAAM,MAAM,yBAAyB,GACjC,iBAAiB,GACjB,mBAAmB,CAAC;AAExB,uEAAuE;AACvE,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,qBAAqB,CAAC;IAC9B,iBAAiB,CAAC,EAAE,yBAAyB,CAAC;CAC/C;AAED,wBAAgB,+BAA+B,CAC7C,KAAK,EAAE,oBAAoB,GAC1B,OAAO,GAAG,SAAS,CAOrB"}
@@ -0,0 +1,11 @@
1
+ export function cursorBootstrapCompleteForStore(state) {
2
+ if (state.status === 'unknown')
3
+ return undefined;
4
+ if (state.status === 'saving') {
5
+ if (state.pendingAssumption === undefined)
6
+ return undefined;
7
+ return state.pendingAssumption === 'assume-complete';
8
+ }
9
+ return state.status === 'complete';
10
+ }
11
+ //# sourceMappingURL=cursor-bootstrap-state.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cursor-bootstrap-state.js","sourceRoot":"","sources":["../../src/conductor/cursor-bootstrap-state.ts"],"names":[],"mappings":"AAgBA,MAAM,UAAU,+BAA+B,CAC7C,KAA2B;IAE3B,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IACjD,IAAI,KAAK,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC9B,IAAI,KAAK,CAAC,iBAAiB,KAAK,SAAS;YAAE,OAAO,SAAS,CAAC;QAC5D,OAAO,KAAK,CAAC,iBAAiB,KAAK,iBAAiB,CAAC;IACvD,CAAC;IACD,OAAO,KAAK,CAAC,MAAM,KAAK,UAAU,CAAC;AACrC,CAAC"}
@@ -0,0 +1,30 @@
1
+ export interface CursorConductorRunSnapshot {
2
+ metadata: {
3
+ agentId: string;
4
+ id: string;
5
+ status: string;
6
+ requestId?: string;
7
+ createdAt?: number;
8
+ result?: string;
9
+ };
10
+ conversation?: unknown;
11
+ conversationStatus: 'available' | 'unavailable';
12
+ }
13
+ export interface CursorConductorRunSnapshots {
14
+ status: 'available' | 'partial' | 'unavailable';
15
+ runs: CursorConductorRunSnapshot[];
16
+ warnings: string[];
17
+ }
18
+ /**
19
+ * Read every Cursor run exposed by the local SDK for a conductor session.
20
+ *
21
+ * Unlike the paged provider-history API, this export path has no run-count
22
+ * limit. A failed page or run is reported while preserving snapshots already
23
+ * read. A completed listing with no saved runs is unavailable, matching the
24
+ * provider-history contract.
25
+ */
26
+ export declare function readCursorConductorRunSnapshots(input: {
27
+ conductorAgentId: string;
28
+ cwd: string;
29
+ }): Promise<CursorConductorRunSnapshots>;
30
+ //# sourceMappingURL=cursor-run-snapshots.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cursor-run-snapshots.d.ts","sourceRoot":"","sources":["../../src/conductor/cursor-run-snapshots.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,0BAA0B;IACzC,QAAQ,EAAE;QACR,OAAO,EAAE,MAAM,CAAC;QAChB,EAAE,EAAE,MAAM,CAAC;QACX,MAAM,EAAE,MAAM,CAAC;QACf,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;IACF,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,kBAAkB,EAAE,WAAW,GAAG,aAAa,CAAC;CACjD;AAED,MAAM,WAAW,2BAA2B;IAC1C,MAAM,EAAE,WAAW,GAAG,SAAS,GAAG,aAAa,CAAC;IAChD,IAAI,EAAE,0BAA0B,EAAE,CAAC;IACnC,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAED;;;;;;;GAOG;AACH,wBAAsB,+BAA+B,CAAC,KAAK,EAAE;IAC3D,gBAAgB,EAAE,MAAM,CAAC;IACzB,GAAG,EAAE,MAAM,CAAC;CACb,GAAG,OAAO,CAAC,2BAA2B,CAAC,CAqGvC"}
@@ -0,0 +1,120 @@
1
+ import { Agent } from '@cursor/sdk';
2
+ /**
3
+ * Read every Cursor run exposed by the local SDK for a conductor session.
4
+ *
5
+ * Unlike the paged provider-history API, this export path has no run-count
6
+ * limit. A failed page or run is reported while preserving snapshots already
7
+ * read. A completed listing with no saved runs is unavailable, matching the
8
+ * provider-history contract.
9
+ */
10
+ export async function readCursorConductorRunSnapshots(input) {
11
+ const runs = [];
12
+ const warnings = [];
13
+ const seenCursors = new Set();
14
+ const seenRunIds = new Set();
15
+ let cursor;
16
+ let listingComplete = false;
17
+ let partial = false;
18
+ try {
19
+ do {
20
+ const page = await Agent.listRuns(input.conductorAgentId, {
21
+ runtime: 'local',
22
+ cwd: input.cwd,
23
+ limit: 100,
24
+ ...(cursor ? { cursor } : {}),
25
+ });
26
+ for (const listedRun of page.items) {
27
+ if (seenRunIds.has(listedRun.id))
28
+ continue;
29
+ seenRunIds.add(listedRun.id);
30
+ const listedMetadata = cursorRunMetadata(listedRun);
31
+ try {
32
+ const run = await Agent.getRun(listedRun.id, {
33
+ runtime: 'local',
34
+ cwd: input.cwd,
35
+ });
36
+ if (run.agentId !== input.conductorAgentId) {
37
+ partial = true;
38
+ warnings.push(`Cursor run ${listedRun.id} belongs to a different agent; its body was omitted.`);
39
+ runs.push({
40
+ metadata: listedMetadata,
41
+ conversationStatus: 'unavailable',
42
+ });
43
+ continue;
44
+ }
45
+ try {
46
+ const conversation = toJsonValue(await run.conversation());
47
+ runs.push({
48
+ metadata: cursorRunMetadata(run),
49
+ conversation,
50
+ conversationStatus: 'available',
51
+ });
52
+ }
53
+ catch {
54
+ partial = true;
55
+ warnings.push(`Cursor run ${listedRun.id} metadata was read, but its conversation snapshot was unavailable.`);
56
+ runs.push({
57
+ metadata: cursorRunMetadata(run),
58
+ conversationStatus: 'unavailable',
59
+ });
60
+ }
61
+ }
62
+ catch {
63
+ partial = true;
64
+ warnings.push(`Cursor run ${listedRun.id} was listed, but its saved data could not be read.`);
65
+ runs.push({
66
+ metadata: listedMetadata,
67
+ conversationStatus: 'unavailable',
68
+ });
69
+ }
70
+ }
71
+ const nextCursor = page.nextCursor || undefined;
72
+ if (nextCursor && seenCursors.has(nextCursor)) {
73
+ partial = true;
74
+ warnings.push('Cursor run listing returned a repeated pagination cursor; remaining pages were not read.');
75
+ break;
76
+ }
77
+ if (nextCursor)
78
+ seenCursors.add(nextCursor);
79
+ cursor = nextCursor;
80
+ if (!cursor)
81
+ listingComplete = true;
82
+ } while (cursor);
83
+ }
84
+ catch {
85
+ partial = true;
86
+ warnings.push('Cursor local run listing stopped before all pages could be read.');
87
+ }
88
+ if (listingComplete && runs.length === 0) {
89
+ warnings.push('The Cursor provider session has no saved runs.');
90
+ }
91
+ return {
92
+ status: runs.length === 0
93
+ ? 'unavailable'
94
+ : partial || !listingComplete
95
+ ? 'partial'
96
+ : 'available',
97
+ runs,
98
+ warnings,
99
+ };
100
+ }
101
+ function cursorRunMetadata(run) {
102
+ return {
103
+ agentId: run.agentId,
104
+ id: run.id,
105
+ status: run.status,
106
+ ...(run.requestId ? { requestId: run.requestId } : {}),
107
+ ...(typeof run.createdAt === 'number' && Number.isFinite(run.createdAt)
108
+ ? { createdAt: run.createdAt }
109
+ : {}),
110
+ ...(typeof run.result === 'string' ? { result: run.result } : {}),
111
+ };
112
+ }
113
+ function toJsonValue(value) {
114
+ const serialized = JSON.stringify(value);
115
+ if (serialized === undefined) {
116
+ throw new Error('Cursor conversation is not JSON serializable.');
117
+ }
118
+ return JSON.parse(serialized);
119
+ }
120
+ //# sourceMappingURL=cursor-run-snapshots.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cursor-run-snapshots.js","sourceRoot":"","sources":["../../src/conductor/cursor-run-snapshots.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAY,MAAM,aAAa,CAAC;AAqB9C;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,+BAA+B,CAAC,KAGrD;IACC,MAAM,IAAI,GAAiC,EAAE,CAAC;IAC9C,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,MAAM,WAAW,GAAG,IAAI,GAAG,EAAU,CAAC;IACtC,MAAM,UAAU,GAAG,IAAI,GAAG,EAAU,CAAC;IACrC,IAAI,MAA0B,CAAC;IAC/B,IAAI,eAAe,GAAG,KAAK,CAAC;IAC5B,IAAI,OAAO,GAAG,KAAK,CAAC;IAEpB,IAAI,CAAC;QACH,GAAG,CAAC;YACF,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,gBAAgB,EAAE;gBACxD,OAAO,EAAE,OAAO;gBAChB,GAAG,EAAE,KAAK,CAAC,GAAG;gBACd,KAAK,EAAE,GAAG;gBACV,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC9B,CAAC,CAAC;YAEH,KAAK,MAAM,SAAS,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;gBACnC,IAAI,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;oBAAE,SAAS;gBAC3C,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;gBAC7B,MAAM,cAAc,GAAG,iBAAiB,CAAC,SAAS,CAAC,CAAC;gBACpD,IAAI,CAAC;oBACH,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,EAAE;wBAC3C,OAAO,EAAE,OAAO;wBAChB,GAAG,EAAE,KAAK,CAAC,GAAG;qBACf,CAAC,CAAC;oBACH,IAAI,GAAG,CAAC,OAAO,KAAK,KAAK,CAAC,gBAAgB,EAAE,CAAC;wBAC3C,OAAO,GAAG,IAAI,CAAC;wBACf,QAAQ,CAAC,IAAI,CACX,cAAc,SAAS,CAAC,EAAE,sDAAsD,CACjF,CAAC;wBACF,IAAI,CAAC,IAAI,CAAC;4BACR,QAAQ,EAAE,cAAc;4BACxB,kBAAkB,EAAE,aAAa;yBAClC,CAAC,CAAC;wBACH,SAAS;oBACX,CAAC;oBAED,IAAI,CAAC;wBACH,MAAM,YAAY,GAAG,WAAW,CAAC,MAAM,GAAG,CAAC,YAAY,EAAE,CAAC,CAAC;wBAC3D,IAAI,CAAC,IAAI,CAAC;4BACR,QAAQ,EAAE,iBAAiB,CAAC,GAAG,CAAC;4BAChC,YAAY;4BACZ,kBAAkB,EAAE,WAAW;yBAChC,CAAC,CAAC;oBACL,CAAC;oBAAC,MAAM,CAAC;wBACP,OAAO,GAAG,IAAI,CAAC;wBACf,QAAQ,CAAC,IAAI,CACX,cAAc,SAAS,CAAC,EAAE,oEAAoE,CAC/F,CAAC;wBACF,IAAI,CAAC,IAAI,CAAC;4BACR,QAAQ,EAAE,iBAAiB,CAAC,GAAG,CAAC;4BAChC,kBAAkB,EAAE,aAAa;yBAClC,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC;gBAAC,MAAM,CAAC;oBACP,OAAO,GAAG,IAAI,CAAC;oBACf,QAAQ,CAAC,IAAI,CACX,cAAc,SAAS,CAAC,EAAE,oDAAoD,CAC/E,CAAC;oBACF,IAAI,CAAC,IAAI,CAAC;wBACR,QAAQ,EAAE,cAAc;wBACxB,kBAAkB,EAAE,aAAa;qBAClC,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;YAED,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,IAAI,SAAS,CAAC;YAChD,IAAI,UAAU,IAAI,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC9C,OAAO,GAAG,IAAI,CAAC;gBACf,QAAQ,CAAC,IAAI,CACX,0FAA0F,CAC3F,CAAC;gBACF,MAAM;YACR,CAAC;YACD,IAAI,UAAU;gBAAE,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YAC5C,MAAM,GAAG,UAAU,CAAC;YACpB,IAAI,CAAC,MAAM;gBAAE,eAAe,GAAG,IAAI,CAAC;QACtC,CAAC,QAAQ,MAAM,EAAE;IACnB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,GAAG,IAAI,CAAC;QACf,QAAQ,CAAC,IAAI,CACX,kEAAkE,CACnE,CAAC;IACJ,CAAC;IAED,IAAI,eAAe,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzC,QAAQ,CAAC,IAAI,CAAC,gDAAgD,CAAC,CAAC;IAClE,CAAC;IAED,OAAO;QACL,MAAM,EACJ,IAAI,CAAC,MAAM,KAAK,CAAC;YACf,CAAC,CAAC,aAAa;YACf,CAAC,CAAC,OAAO,IAAI,CAAC,eAAe;gBAC3B,CAAC,CAAC,SAAS;gBACX,CAAC,CAAC,WAAW;QACnB,IAAI;QACJ,QAAQ;KACT,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB,CAAC,GAAQ;IACjC,OAAO;QACL,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,EAAE,EAAE,GAAG,CAAC,EAAE;QACV,MAAM,EAAE,GAAG,CAAC,MAAM;QAClB,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACtD,GAAG,CAAC,OAAO,GAAG,CAAC,SAAS,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC;YACrE,CAAC,CAAC,EAAE,SAAS,EAAE,GAAG,CAAC,SAAS,EAAE;YAC9B,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,OAAO,GAAG,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAClE,CAAC;AACJ,CAAC;AAED,SAAS,WAAW,CAAC,KAAc;IACjC,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IACzC,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QAC7B,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;IACnE,CAAC;IACD,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU,CAAY,CAAC;AAC3C,CAAC"}
@@ -2,10 +2,12 @@ export type { ConductorAgent, ConductorAgentCreateOptions, ConductorPiResourceOp
2
2
  export { CursorSdkConductorAgent, createCursorSdkConductorAgentFactory, } from './cursor-sdk-conductor-agent.js';
3
3
  export { PiConductorAgent, createPiConductorAgentFactory, resolvePiModelConfig, } from './pi-conductor-agent.js';
4
4
  export type { PiResolvedModel } from './pi-conductor-agent.js';
5
- export { loadPiResources, resolvePiResourceRoots, } from './pi-resource-loader.js';
5
+ export { writeConductorSetupFiles } from './conductor-setup.js';
6
+ export type { ConductorSetupFiles, WriteConductorSetupOptions, } from './conductor-setup.js';
7
+ export { loadPiResources, readPiSettingsFile, resolvePiResourceRoots, } from './pi-resource-loader.js';
6
8
  export type { PiAuthFile, PiModelCost, PiModelCostTier, PiModelDefinition, PiModelOverride, PiModelsFile, PiPromptResource, PiProviderConfig, PiResourceLoaderOptions, PiResourceRoots, PiResources, PiSkillResource, PiSettingsFile, PiThemeResource, } from './pi-resource-loader.js';
7
- export { createPiConductorAuthContext, getPiConductorAuthStatus, hasPiConductorAuth, hasPiProviderAuth, isPiConductorOAuthProvider, listPiConductorModels, loginPiConductor, logoutPiConductor, resolvePiConductorApiKey, resolvePiConductorProvider, } from './conductor-pi-auth.js';
8
- export type { PiConductorAuthContext, PiConductorAuthOptions, PiConductorAuthStatus, PiConductorLoginResult, PiConductorLogoutResult, PiConductorModelListEntry, PiProviderAuthStatus, } from './conductor-pi-auth.js';
9
+ export { createPiConductorAuthContext, clearPiConductorCommandAuth, getPiConductorAuthStatus, hasPiConductorAuth, hasPiProviderAuth, isPiConductorOAuthProvider, listPiConductorModels, loginPiConductor, logoutPiConductor, resolvePiConductorApiKey, resolvePiConductorProvider, setPiConductorCommandAuth, } from './conductor-pi-auth.js';
10
+ export type { PiConductorAuthTarget, PiConductorAuthContext, PiConductorAuthOptions, PiConductorCommandAuthResult, PiConductorAuthStatus, PiConductorLoginResult, PiConductorLogoutResult, PiConductorModelListEntry, PiConductorOAuthLoginCallbacks, PiProviderAuthStatus, } from './conductor-pi-auth.js';
9
11
  export { ConductorToolRegistry, } from './conductor-tool.js';
10
12
  export type { ConductorJsonValue, ConductorTool, ConductorToolExecute, ConductorToolInputSchema, ConductorToolResult, ConductorToolSet, ConductorToolTextContent, } from './conductor-tool.js';
11
13
  export { toSdkCustomTools, } from './conductor-tool-sdk-adapter.js';
@@ -17,8 +19,17 @@ export { ensureCursorSdkProxy, ensureCursorSdkRipgrepPath, readCursorSettings, r
17
19
  export { runIssueSession } from './issue-session.js';
18
20
  export type { ConductorSessionResult, RunConductorSessionOptions, } from './conductor-session.js';
19
21
  export type { OperatorInputBinding, OperatorInputBindingApi, OperatorInputContext, OperatorInputSubmitOptions, } from './operator-input-binding.js';
20
- export { submitOperatorInput } from './submit-operator-input.js';
21
- export type { SubmitOperatorInputInput } from './submit-operator-input.js';
22
+ export type { CursorBootstrapAssumption, CursorBootstrapState, CursorBootstrapStatus, } from './cursor-bootstrap-state.js';
23
+ export { ConductorDispatchLifecycle } from './conductor-dispatch-lifecycle.js';
24
+ export type { ConductorDispatchLease, ConductorDispatchState, ConductorReconnectLease, } from './conductor-dispatch-lifecycle.js';
25
+ export { CONDUCTOR_RECOVERY_INPUT_BYTE_LIMIT, CONDUCTOR_RECOVERY_SNAPSHOT_LIMIT, CONDUCTOR_RECOVERY_SNAPSHOT_TTL_MS, CONDUCTOR_RECOVERY_TOTAL_BYTE_LIMIT, ConductorRecoveryInbox, } from './conductor-recovery-inbox.js';
26
+ export type { ConductorRecoveryAttemptMetadata, ConductorRecoveryBackend, ConductorRecoveryFailureClass, ConductorRecoveryReconnect, ConductorRecoveryReservation, ConductorRecoveryReservationResult, ConductorRecoverySnapshot, ConductorRecoverySnapshotSummary, ConductorRecoveryWorkflow, } from './conductor-recovery-inbox.js';
27
+ export { executeRecoveryInboxCommand } from './recovery-inbox-command.js';
28
+ export type { ExecuteRecoveryInboxCommandOptions, OperatorRecoveryInspection, RecoveryInboxCommandApi, RecoveryInboxCommandResult, } from './recovery-inbox-command.js';
29
+ export { PiAuthRecoverySnapshotStore, PI_AUTH_RECOVERY_SNAPSHOT_LIMIT, PI_AUTH_RECOVERY_SNAPSHOT_TTL_MS, } from './pi-auth-recovery-snapshot-store.js';
30
+ export type { PiAuthRecoverySnapshot, PiAuthRecoverySnapshotCandidate, PiAuthRecoverySnapshotStoreAddResult, PiAuthRecoverySnapshotSummary, } from './pi-auth-recovery-snapshot-store.js';
31
+ export { enqueueOperatorMessage, isOperatorInputWithinRecoveryLimit, submitOperatorInput, } from './submit-operator-input.js';
32
+ export type { EnqueueOperatorMessageInput, SubmitOperatorInputInput, } from './submit-operator-input.js';
22
33
  export { isOperatorExitCommand } from './operator-exit.js';
23
34
  export { isOperatorCloseCommand } from './operator-close.js';
24
35
  export { isOperatorReconnectCommand } from './operator-reconnect.js';
@@ -26,7 +37,7 @@ export { isOperatorCommand, OPERATOR_COMMANDS, } from './operator-command.js';
26
37
  export type { OperatorCommandId } from './operator-command.js';
27
38
  export { parseOperatorMessageDelivery, } from './operator-command.js';
28
39
  export type { ParsedOperatorMessageDelivery } from './operator-command.js';
29
- export { reconnectConductorAgent, sendConductorWithReconnect, isConductorSendTransportError, } from './conductor-send-reconnect.js';
40
+ export { closeConductorAgentOnce, reconnectConductorAgent, sendConductorWithReconnect, isConductorSendTransportError, } from './conductor-send-reconnect.js';
30
41
  export type { ConductorAgentHandle, ConductorReconnectCompleteInfo, ConductorReconnectOptions, ConductorSendReconnectOptions, } from './conductor-send-reconnect.js';
31
42
  export { createOperatorPostLoopGate, } from './operator-post-loop-gate.js';
32
43
  export type { OperatorPostLoopAction, OperatorPostLoopGate, } from './operator-post-loop-gate.js';
@@ -47,7 +58,7 @@ export { canTriggerConductorDispatch, isTriggerSessionEvent, sessionEventDispatc
47
58
  export type { DispatchMode } from './session/dispatch-mode.js';
48
59
  export { SessionLogger, } from './session/session-logger.js';
49
60
  export type { SessionSummary, SessionLogEvent, SessionLogSink, SessionLoggerOptions, } from './session/session-logger.js';
50
- export type { SessionEvent, OperatorMessageEvent, OperatorMessageDelivery, OperatorReconnectEvent, WorkerCompletedEvent, WorkerFailedEvent, PermissionPendingEvent, PermissionStallEvent, HarnessConnectivityRecoveredEvent, GitHubUpdateEvent, SessionEventDispatchFields, } from './session/session-event.js';
61
+ export type { SessionEvent, OperatorMessageEvent, OperatorMessageDelivery, OperatorReconnectEvent, WorkerCompletedEvent, WorkerFailedEvent, PermissionPendingEvent, PermissionStallEvent, HarnessConnectivityRecoveredEvent, ConductorRecoveryReportEvent, GitHubUpdateEvent, SessionEventDispatchFields, } from './session/session-event.js';
51
62
  export { ALL_SESSION_LOG_EVENT_TYPES, HARNESS_TELEMETRY_EVENT_TYPES, SESSION_AUXILIARY_EVENT_TYPES, SESSION_EVENT_TYPES, SESSION_OBSERVATION_EVENT_TYPES, } from './session/events/index.js';
52
63
  export type { SessionEventType, SessionLogEventType, WorkerRoundOutcome, WorkerFailureOutcome, PermissionPendingConductorPayload, PermissionPendingHarnessPayload, PermissionCleanupEvent, WorkerPromptLifecycleSource, } from './session/events/index.js';
53
64
  export { CONDUCTOR_AUTH_HINT, resolveConductorAuthBackend, formatConductorAuthRecoveryHint, type ConductorAuthOptions, type ConductorAuthRecoveryOptions, type ConductorAuthStatus, type ConductorLoginResult, type ConductorLogoutResult, getConductorAuthStatus, hasConductorAuth, isBareConductorSendAuthError, isConductorAuthError, isConductorSendAuthError, loginConductor, logoutConductor, resolveConductorApiKey, } from './conductor-auth.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/conductor/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/conductor/index.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,8 @@
1
1
  export { CursorSdkConductorAgent, createCursorSdkConductorAgentFactory, } from './cursor-sdk-conductor-agent.js';
2
2
  export { PiConductorAgent, createPiConductorAgentFactory, resolvePiModelConfig, } from './pi-conductor-agent.js';
3
- export { loadPiResources, resolvePiResourceRoots, } from './pi-resource-loader.js';
4
- export { createPiConductorAuthContext, getPiConductorAuthStatus, hasPiConductorAuth, hasPiProviderAuth, isPiConductorOAuthProvider, listPiConductorModels, loginPiConductor, logoutPiConductor, resolvePiConductorApiKey, resolvePiConductorProvider, } from './conductor-pi-auth.js';
3
+ export { writeConductorSetupFiles } from './conductor-setup.js';
4
+ export { loadPiResources, readPiSettingsFile, resolvePiResourceRoots, } from './pi-resource-loader.js';
5
+ export { createPiConductorAuthContext, clearPiConductorCommandAuth, getPiConductorAuthStatus, hasPiConductorAuth, hasPiProviderAuth, isPiConductorOAuthProvider, listPiConductorModels, loginPiConductor, logoutPiConductor, resolvePiConductorApiKey, resolvePiConductorProvider, setPiConductorCommandAuth, } from './conductor-pi-auth.js';
5
6
  export { ConductorToolRegistry, } from './conductor-tool.js';
6
7
  export { toSdkCustomTools, } from './conductor-tool-sdk-adapter.js';
7
8
  export { toPiCodingAgentTools, } from './conductor-tool-pi-adapter.js';
@@ -9,13 +10,17 @@ export { runConductorSession, } from './conductor-session.js';
9
10
  export { createConductorAgentFactory } from './conductor-agent-factory.js';
10
11
  export { ensureCursorSdkProxy, ensureCursorSdkRipgrepPath, readCursorSettings, resolveBundledSdkRipgrepPath, resolveCursorSettingsPath, } from './configure-cursor-sdk-env.js';
11
12
  export { runIssueSession } from './issue-session.js';
12
- export { submitOperatorInput } from './submit-operator-input.js';
13
+ export { ConductorDispatchLifecycle } from './conductor-dispatch-lifecycle.js';
14
+ export { CONDUCTOR_RECOVERY_INPUT_BYTE_LIMIT, CONDUCTOR_RECOVERY_SNAPSHOT_LIMIT, CONDUCTOR_RECOVERY_SNAPSHOT_TTL_MS, CONDUCTOR_RECOVERY_TOTAL_BYTE_LIMIT, ConductorRecoveryInbox, } from './conductor-recovery-inbox.js';
15
+ export { executeRecoveryInboxCommand } from './recovery-inbox-command.js';
16
+ export { PiAuthRecoverySnapshotStore, PI_AUTH_RECOVERY_SNAPSHOT_LIMIT, PI_AUTH_RECOVERY_SNAPSHOT_TTL_MS, } from './pi-auth-recovery-snapshot-store.js';
17
+ export { enqueueOperatorMessage, isOperatorInputWithinRecoveryLimit, submitOperatorInput, } from './submit-operator-input.js';
13
18
  export { isOperatorExitCommand } from './operator-exit.js';
14
19
  export { isOperatorCloseCommand } from './operator-close.js';
15
20
  export { isOperatorReconnectCommand } from './operator-reconnect.js';
16
21
  export { isOperatorCommand, OPERATOR_COMMANDS, } from './operator-command.js';
17
22
  export { parseOperatorMessageDelivery, } from './operator-command.js';
18
- export { reconnectConductorAgent, sendConductorWithReconnect, isConductorSendTransportError, } from './conductor-send-reconnect.js';
23
+ export { closeConductorAgentOnce, reconnectConductorAgent, sendConductorWithReconnect, isConductorSendTransportError, } from './conductor-send-reconnect.js';
19
24
  export { createOperatorPostLoopGate, } from './operator-post-loop-gate.js';
20
25
  export { canDispatchConductorSend, autonomousTurnsAfterConductorSend, autonomousTurnsAfterConductorBatch, shouldStopIssueLoop, resolveIssueLoopStopReason, resolveMaxTurns, isMaxTurnsLimited, operatorInputMaxTurns, DEFAULT_MAX_ISSUE_TURNS, } from './session-policy.js';
21
26
  export { runConductorSessionDriver } from './conductor-session-driver.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/conductor/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/conductor/index.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,11 @@ export declare const OPERATOR_COMMANDS: readonly [{
4
4
  readonly name: "/reconnect";
5
5
  readonly aliases: readonly ["reconnect"];
6
6
  readonly description: "conductor を再接続";
7
+ }, {
8
+ readonly id: "recovery";
9
+ readonly name: "/recovery";
10
+ readonly aliases: readonly [];
11
+ readonly description: "失敗 dispatch と Cursor bootstrap を確認";
7
12
  }, {
8
13
  readonly id: "exit";
9
14
  readonly name: "/exit";
@@ -1 +1 @@
1
- {"version":3,"file":"operator-command.d.ts","sourceRoot":"","sources":["../../src/conductor/operator-command.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AAE1E,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAqCpB,CAAC;AAEX,MAAM,MAAM,iBAAiB,GAAG,CAAC,OAAO,iBAAiB,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC;AAEzE,MAAM,WAAW,6BAA6B;IAC5C,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,uBAAuB,CAAC;CACnC;AAED,qDAAqD;AACrD,wBAAgB,4BAA4B,CAC1C,KAAK,EAAE,MAAM,GACZ,6BAA6B,CAW/B;AAED,mCAAmC;AACnC,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,iBAAiB,GAAG,OAAO,CAQjF"}
1
+ {"version":3,"file":"operator-command.d.ts","sourceRoot":"","sources":["../../src/conductor/operator-command.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AAE1E,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA2CpB,CAAC;AAEX,MAAM,MAAM,iBAAiB,GAAG,CAAC,OAAO,iBAAiB,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC;AAEzE,MAAM,WAAW,6BAA6B;IAC5C,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,uBAAuB,CAAC;CACnC;AAED,qDAAqD;AACrD,wBAAgB,4BAA4B,CAC1C,KAAK,EAAE,MAAM,GACZ,6BAA6B,CAW/B;AAED,mCAAmC;AACnC,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,iBAAiB,GAAG,OAAO,CAQjF"}
@@ -5,6 +5,12 @@ export const OPERATOR_COMMANDS = [
5
5
  aliases: ['reconnect'],
6
6
  description: 'conductor を再接続',
7
7
  },
8
+ {
9
+ id: 'recovery',
10
+ name: '/recovery',
11
+ aliases: [],
12
+ description: '失敗 dispatch と Cursor bootstrap を確認',
13
+ },
8
14
  {
9
15
  id: 'exit',
10
16
  name: '/exit',
@@ -1 +1 @@
1
- {"version":3,"file":"operator-command.js","sourceRoot":"","sources":["../../src/conductor/operator-command.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B;QACE,EAAE,EAAE,WAAW;QACf,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,CAAC,WAAW,CAAC;QACtB,WAAW,EAAE,gBAAgB;KAC9B;IACD;QACE,EAAE,EAAE,MAAM;QACV,IAAI,EAAE,OAAO;QACb,OAAO,EAAE,CAAC,MAAM,CAAC;QACjB,WAAW,EAAE,UAAU;KACxB;IACD;QACE,EAAE,EAAE,OAAO;QACX,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,CAAC,OAAO,CAAC;QAClB,WAAW,EAAE,wBAAwB;KACtC;IACD;QACE,EAAE,EAAE,eAAe;QACnB,IAAI,EAAE,OAAO;QACb,OAAO,EAAE,EAAE;QACX,WAAW,EAAE,iBAAiB;KAC/B;IACD;QACE,EAAE,EAAE,eAAe;QACnB,IAAI,EAAE,OAAO;QACb,OAAO,EAAE,EAAE;QACX,WAAW,EAAE,kBAAkB;KAChC;IACD;QACE,EAAE,EAAE,oBAAoB;QACxB,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,EAAE;QACX,WAAW,EAAE,yBAAyB;KACvC;CACO,CAAC;AASX,qDAAqD;AACrD,MAAM,UAAU,4BAA4B,CAC1C,KAAa;IAEb,MAAM,KAAK,GAAG,uDAAuD,CAAC,IAAI,CACxE,KAAK,CACN,CAAC;IACF,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;IAC9C,CAAC;IACD,OAAO;QACL,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE;QACvB,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAE,CAAC,WAAW,EAA6B;KAC7D,CAAC;AACJ,CAAC;AAED,mCAAmC;AACnC,MAAM,UAAU,iBAAiB,CAAC,OAAe,EAAE,EAAqB;IACtE,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAChD,MAAM,OAAO,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;IAC3E,OAAO,CACL,OAAO,KAAK,SAAS;QACrB,CAAC,UAAU,KAAK,OAAO,CAAC,IAAI;YAC1B,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,UAAU,KAAK,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC,CACvE,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"operator-command.js","sourceRoot":"","sources":["../../src/conductor/operator-command.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B;QACE,EAAE,EAAE,WAAW;QACf,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,CAAC,WAAW,CAAC;QACtB,WAAW,EAAE,gBAAgB;KAC9B;IACD;QACE,EAAE,EAAE,UAAU;QACd,IAAI,EAAE,WAAW;QACjB,OAAO,EAAE,EAAE;QACX,WAAW,EAAE,oCAAoC;KAClD;IACD;QACE,EAAE,EAAE,MAAM;QACV,IAAI,EAAE,OAAO;QACb,OAAO,EAAE,CAAC,MAAM,CAAC;QACjB,WAAW,EAAE,UAAU;KACxB;IACD;QACE,EAAE,EAAE,OAAO;QACX,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,CAAC,OAAO,CAAC;QAClB,WAAW,EAAE,wBAAwB;KACtC;IACD;QACE,EAAE,EAAE,eAAe;QACnB,IAAI,EAAE,OAAO;QACb,OAAO,EAAE,EAAE;QACX,WAAW,EAAE,iBAAiB;KAC/B;IACD;QACE,EAAE,EAAE,eAAe;QACnB,IAAI,EAAE,OAAO;QACb,OAAO,EAAE,EAAE;QACX,WAAW,EAAE,kBAAkB;KAChC;IACD;QACE,EAAE,EAAE,oBAAoB;QACxB,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,EAAE;QACX,WAAW,EAAE,yBAAyB;KACvC;CACO,CAAC;AASX,qDAAqD;AACrD,MAAM,UAAU,4BAA4B,CAC1C,KAAa;IAEb,MAAM,KAAK,GAAG,uDAAuD,CAAC,IAAI,CACxE,KAAK,CACN,CAAC;IACF,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;IAC9C,CAAC;IACD,OAAO;QACL,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE;QACvB,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAE,CAAC,WAAW,EAA6B;KAC7D,CAAC;AACJ,CAAC;AAED,mCAAmC;AACnC,MAAM,UAAU,iBAAiB,CAAC,OAAe,EAAE,EAAqB;IACtE,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAChD,MAAM,OAAO,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;IAC3E,OAAO,CACL,OAAO,KAAK,SAAS;QACrB,CAAC,UAAU,KAAK,OAAO,CAAC,IAAI;YAC1B,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,UAAU,KAAK,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC,CACvE,CAAC;AACJ,CAAC"}
@@ -1,5 +1,8 @@
1
1
  import type { OpenQuestion } from '../escalation/open-question.js';
2
2
  import type { OperatorMessageDelivery } from './session/session-event.js';
3
+ import type { ConductorRecoverySnapshot, ConductorRecoverySnapshotSummary } from './conductor-recovery-inbox.js';
4
+ import type { PiAuthRecoverySnapshot, PiAuthRecoverySnapshotSummary } from './pi-auth-recovery-snapshot-store.js';
5
+ import type { CursorBootstrapAssumption, CursorBootstrapStatus } from './cursor-bootstrap-state.js';
3
6
  export interface OperatorInputContext {
4
7
  /** これから実行する conductor send 番号(1 始まり)。 */
5
8
  conductorTurn: number;
@@ -24,6 +27,20 @@ export interface OperatorInputSubmitOptions {
24
27
  export interface OperatorInputBindingApi {
25
28
  submit: (message: string, options?: OperatorInputSubmitOptions) => boolean;
26
29
  getContext: () => OperatorInputContext;
30
+ /** Process-local recovery payloads; available only to the bound operator UI. */
31
+ listRecoverySnapshots?: () => ConductorRecoverySnapshotSummary[];
32
+ getRecoverySnapshot?: (recoveryId: string) => ConductorRecoverySnapshot | undefined;
33
+ clearRecoverySnapshot?: (recoveryId: string) => boolean;
34
+ continueAfterRecovery?: () => boolean;
35
+ recoveryAttentionAttemptId?: () => string | undefined;
36
+ getCursorBootstrapStatus?: () => CursorBootstrapStatus;
37
+ resolveCursorBootstrapUnknown?: (assumption: CursorBootstrapAssumption) => boolean;
38
+ /** @deprecated Use the generic recovery inbox methods above. */
39
+ listPiAuthRecoverySnapshots?: () => PiAuthRecoverySnapshotSummary[];
40
+ /** @deprecated Use the generic recovery inbox methods above. */
41
+ getPiAuthRecoverySnapshot?: (recoveryId: string) => PiAuthRecoverySnapshot | undefined;
42
+ /** @deprecated Use the generic recovery inbox methods above. */
43
+ clearPiAuthRecoverySnapshot?: (recoveryId: string) => boolean;
27
44
  }
28
45
  /** 非ブロッキングのオペレータ入力源。戻り値で購読を解除する。 */
29
46
  export type OperatorInputBinding = (api: OperatorInputBindingApi) => void | (() => void);
@@ -1 +1 @@
1
- {"version":3,"file":"operator-input-binding.d.ts","sourceRoot":"","sources":["../../src/conductor/operator-input-binding.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AAE1E,MAAM,WAAW,oBAAoB;IACnC,yCAAyC;IACzC,aAAa,EAAE,MAAM,CAAC;IACtB,eAAe,EAAE,MAAM,CAAC;IACxB,oBAAoB;IACpB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,aAAa,EAAE,YAAY,EAAE,CAAC;IAC9B,sDAAsD;IACtD,cAAc,CAAC,EAAE,KAAK,CAAC;QACrB,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,EAAE,uBAAuB,CAAC;QAClC,kBAAkB,EAAE,OAAO,CAAC;QAC5B,aAAa,CAAC,EAAE,MAAM,CAAC;KACxB,CAAC,CAAC;CACJ;AAED,MAAM,WAAW,0BAA0B;IACzC,qDAAqD;IACrD,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,gDAAgD;IAChD,QAAQ,CAAC,EAAE,uBAAuB,CAAC;CACpC;AAED,MAAM,WAAW,uBAAuB;IACtC,MAAM,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,0BAA0B,KAAK,OAAO,CAAC;IAC3E,UAAU,EAAE,MAAM,oBAAoB,CAAC;CACxC;AAED,oCAAoC;AACpC,MAAM,MAAM,oBAAoB,GAAG,CACjC,GAAG,EAAE,uBAAuB,KACzB,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,CAAC"}
1
+ {"version":3,"file":"operator-input-binding.d.ts","sourceRoot":"","sources":["../../src/conductor/operator-input-binding.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AAC1E,OAAO,KAAK,EACV,yBAAyB,EACzB,gCAAgC,EACjC,MAAM,+BAA+B,CAAC;AACvC,OAAO,KAAK,EACV,sBAAsB,EACtB,6BAA6B,EAC9B,MAAM,sCAAsC,CAAC;AAC9C,OAAO,KAAK,EACV,yBAAyB,EACzB,qBAAqB,EACtB,MAAM,6BAA6B,CAAC;AAErC,MAAM,WAAW,oBAAoB;IACnC,yCAAyC;IACzC,aAAa,EAAE,MAAM,CAAC;IACtB,eAAe,EAAE,MAAM,CAAC;IACxB,oBAAoB;IACpB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,aAAa,EAAE,YAAY,EAAE,CAAC;IAC9B,sDAAsD;IACtD,cAAc,CAAC,EAAE,KAAK,CAAC;QACrB,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,EAAE,uBAAuB,CAAC;QAClC,kBAAkB,EAAE,OAAO,CAAC;QAC5B,aAAa,CAAC,EAAE,MAAM,CAAC;KACxB,CAAC,CAAC;CACJ;AAED,MAAM,WAAW,0BAA0B;IACzC,qDAAqD;IACrD,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,gDAAgD;IAChD,QAAQ,CAAC,EAAE,uBAAuB,CAAC;CACpC;AAED,MAAM,WAAW,uBAAuB;IACtC,MAAM,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,0BAA0B,KAAK,OAAO,CAAC;IAC3E,UAAU,EAAE,MAAM,oBAAoB,CAAC;IACvC,gFAAgF;IAChF,qBAAqB,CAAC,EAAE,MAAM,gCAAgC,EAAE,CAAC;IACjE,mBAAmB,CAAC,EAAE,CACpB,UAAU,EAAE,MAAM,KACf,yBAAyB,GAAG,SAAS,CAAC;IAC3C,qBAAqB,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,OAAO,CAAC;IACxD,qBAAqB,CAAC,EAAE,MAAM,OAAO,CAAC;IACtC,0BAA0B,CAAC,EAAE,MAAM,MAAM,GAAG,SAAS,CAAC;IACtD,wBAAwB,CAAC,EAAE,MAAM,qBAAqB,CAAC;IACvD,6BAA6B,CAAC,EAAE,CAC9B,UAAU,EAAE,yBAAyB,KAClC,OAAO,CAAC;IACb,gEAAgE;IAChE,2BAA2B,CAAC,EAAE,MAAM,6BAA6B,EAAE,CAAC;IACpE,gEAAgE;IAChE,yBAAyB,CAAC,EAAE,CAC1B,UAAU,EAAE,MAAM,KACf,sBAAsB,GAAG,SAAS,CAAC;IACxC,gEAAgE;IAChE,2BAA2B,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,OAAO,CAAC;CAC/D;AAED,oCAAoC;AACpC,MAAM,MAAM,oBAAoB,GAAG,CACjC,GAAG,EAAE,uBAAuB,KACzB,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,CAAC"}
@@ -0,0 +1,45 @@
1
+ import type { ConductorRecoveryReportEvent } from './session/session-event.js';
2
+ export declare const PI_AUTH_RECOVERY_SNAPSHOT_LIMIT = 4;
3
+ export declare const PI_AUTH_RECOVERY_SNAPSHOT_TTL_MS: number;
4
+ export type PiAuthRecoverySnapshotCandidate = Pick<ConductorRecoveryReportEvent, 'recoveryId' | 'failedDispatch' | 'failure'>;
5
+ export interface PiAuthRecoverySnapshot {
6
+ recoveryId: string;
7
+ createdAt: number;
8
+ expiresAt: number;
9
+ failedDispatch: ConductorRecoveryReportEvent['failedDispatch'];
10
+ failure: ConductorRecoveryReportEvent['failure'];
11
+ content: string;
12
+ contentBytes: number;
13
+ }
14
+ export interface PiAuthRecoverySnapshotSummary {
15
+ recoveryId: string;
16
+ createdAt: number;
17
+ expiresAt: number;
18
+ sendCount: number;
19
+ sourceKey: string;
20
+ eventTypes: string[];
21
+ eventCount: number;
22
+ contentBytes: number;
23
+ automaticRetryAttempts: 0 | 1;
24
+ toolCallStarted: boolean;
25
+ }
26
+ export interface PiAuthRecoverySnapshotStoreAddResult {
27
+ snapshot: PiAuthRecoverySnapshotSummary;
28
+ evictedRecoveryIds: string[];
29
+ }
30
+ /**
31
+ * @deprecated Retained for source compatibility. Built-in workflows use
32
+ * ConductorRecoveryInbox and no longer instantiate this legacy store.
33
+ */
34
+ export declare class PiAuthRecoverySnapshotStore {
35
+ private readonly snapshots;
36
+ private disposed;
37
+ add(candidate: PiAuthRecoverySnapshotCandidate, content: string, now?: number): PiAuthRecoverySnapshotStoreAddResult | undefined;
38
+ list(now?: number): PiAuthRecoverySnapshotSummary[];
39
+ get(recoveryId: string, now?: number): PiAuthRecoverySnapshot | undefined;
40
+ remove(recoveryId: string): boolean;
41
+ dispose(): void;
42
+ private pruneExpired;
43
+ private removeIfCurrent;
44
+ }
45
+ //# sourceMappingURL=pi-auth-recovery-snapshot-store.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pi-auth-recovery-snapshot-store.d.ts","sourceRoot":"","sources":["../../src/conductor/pi-auth-recovery-snapshot-store.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,4BAA4B,CAAC;AAE/E,eAAO,MAAM,+BAA+B,IAAI,CAAC;AACjD,eAAO,MAAM,gCAAgC,QAAkB,CAAC;AAEhE,MAAM,MAAM,+BAA+B,GAAG,IAAI,CAChD,4BAA4B,EAC5B,YAAY,GAAG,gBAAgB,GAAG,SAAS,CAC5C,CAAC;AAEF,MAAM,WAAW,sBAAsB;IACrC,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,4BAA4B,CAAC,gBAAgB,CAAC,CAAC;IAC/D,OAAO,EAAE,4BAA4B,CAAC,SAAS,CAAC,CAAC;IACjD,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,6BAA6B;IAC5C,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,sBAAsB,EAAE,CAAC,GAAG,CAAC,CAAC;IAC9B,eAAe,EAAE,OAAO,CAAC;CAC1B;AAED,MAAM,WAAW,oCAAoC;IACnD,QAAQ,EAAE,6BAA6B,CAAC;IACxC,kBAAkB,EAAE,MAAM,EAAE,CAAC;CAC9B;AAOD;;;GAGG;AACH,qBAAa,2BAA2B;IACtC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAqC;IAC/D,OAAO,CAAC,QAAQ,CAAS;IAEzB,GAAG,CACD,SAAS,EAAE,+BAA+B,EAC1C,OAAO,EAAE,MAAM,EACf,GAAG,SAAa,GACf,oCAAoC,GAAG,SAAS;IAyCnD,IAAI,CAAC,GAAG,SAAa,GAAG,6BAA6B,EAAE;IAOvD,GAAG,CACD,UAAU,EAAE,MAAM,EAClB,GAAG,SAAa,GACf,sBAAsB,GAAG,SAAS;IAMrC,MAAM,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO;IAUnC,OAAO,IAAI,IAAI;IAWf,OAAO,CAAC,YAAY;IAQpB,OAAO,CAAC,eAAe;CAMxB"}
@@ -0,0 +1,116 @@
1
+ export const PI_AUTH_RECOVERY_SNAPSHOT_LIMIT = 4;
2
+ export const PI_AUTH_RECOVERY_SNAPSHOT_TTL_MS = 30 * 60 * 1_000;
3
+ /**
4
+ * @deprecated Retained for source compatibility. Built-in workflows use
5
+ * ConductorRecoveryInbox and no longer instantiate this legacy store.
6
+ */
7
+ export class PiAuthRecoverySnapshotStore {
8
+ snapshots = new Map();
9
+ disposed = false;
10
+ add(candidate, content, now = Date.now()) {
11
+ if (this.disposed) {
12
+ return undefined;
13
+ }
14
+ this.pruneExpired(now);
15
+ this.remove(candidate.recoveryId);
16
+ const evictedRecoveryIds = [];
17
+ while (this.snapshots.size >= PI_AUTH_RECOVERY_SNAPSHOT_LIMIT) {
18
+ const oldestRecoveryId = this.snapshots.keys().next().value;
19
+ if (oldestRecoveryId === undefined) {
20
+ break;
21
+ }
22
+ this.remove(oldestRecoveryId);
23
+ evictedRecoveryIds.push(oldestRecoveryId);
24
+ }
25
+ const snapshot = {
26
+ recoveryId: candidate.recoveryId,
27
+ createdAt: now,
28
+ expiresAt: now + PI_AUTH_RECOVERY_SNAPSHOT_TTL_MS,
29
+ failedDispatch: cloneFailedDispatch(candidate.failedDispatch),
30
+ failure: { ...candidate.failure },
31
+ content,
32
+ contentBytes: Buffer.byteLength(content, 'utf8'),
33
+ };
34
+ const expiryTimer = setTimeout(() => {
35
+ this.removeIfCurrent(snapshot.recoveryId, snapshot.expiresAt);
36
+ }, PI_AUTH_RECOVERY_SNAPSHOT_TTL_MS);
37
+ expiryTimer.unref?.();
38
+ this.snapshots.set(snapshot.recoveryId, { snapshot, expiryTimer });
39
+ return {
40
+ snapshot: summarizePiAuthRecoverySnapshot(snapshot),
41
+ evictedRecoveryIds,
42
+ };
43
+ }
44
+ list(now = Date.now()) {
45
+ this.pruneExpired(now);
46
+ return [...this.snapshots.values()].map(({ snapshot }) => summarizePiAuthRecoverySnapshot(snapshot));
47
+ }
48
+ get(recoveryId, now = Date.now()) {
49
+ this.pruneExpired(now);
50
+ const snapshot = this.snapshots.get(recoveryId)?.snapshot;
51
+ return snapshot ? cloneSnapshot(snapshot) : undefined;
52
+ }
53
+ remove(recoveryId) {
54
+ const entry = this.snapshots.get(recoveryId);
55
+ if (!entry) {
56
+ return false;
57
+ }
58
+ clearTimeout(entry.expiryTimer);
59
+ this.snapshots.delete(recoveryId);
60
+ return true;
61
+ }
62
+ dispose() {
63
+ if (this.disposed) {
64
+ return;
65
+ }
66
+ this.disposed = true;
67
+ for (const entry of this.snapshots.values()) {
68
+ clearTimeout(entry.expiryTimer);
69
+ }
70
+ this.snapshots.clear();
71
+ }
72
+ pruneExpired(now) {
73
+ for (const [recoveryId, entry] of this.snapshots) {
74
+ if (entry.snapshot.expiresAt <= now) {
75
+ this.remove(recoveryId);
76
+ }
77
+ }
78
+ }
79
+ removeIfCurrent(recoveryId, expiresAt) {
80
+ const entry = this.snapshots.get(recoveryId);
81
+ if (entry?.snapshot.expiresAt === expiresAt) {
82
+ this.remove(recoveryId);
83
+ }
84
+ }
85
+ }
86
+ function summarizePiAuthRecoverySnapshot(snapshot) {
87
+ return {
88
+ recoveryId: snapshot.recoveryId,
89
+ createdAt: snapshot.createdAt,
90
+ expiresAt: snapshot.expiresAt,
91
+ sendCount: snapshot.failedDispatch.sendCount,
92
+ sourceKey: snapshot.failedDispatch.sourceKey,
93
+ eventTypes: [...snapshot.failedDispatch.eventTypes],
94
+ eventCount: snapshot.failedDispatch.eventCount,
95
+ contentBytes: snapshot.contentBytes,
96
+ automaticRetryAttempts: snapshot.failure.automaticRetryAttempts,
97
+ toolCallStarted: snapshot.failure.toolCallStarted,
98
+ };
99
+ }
100
+ function cloneSnapshot(snapshot) {
101
+ return {
102
+ ...snapshot,
103
+ failedDispatch: cloneFailedDispatch(snapshot.failedDispatch),
104
+ failure: { ...snapshot.failure },
105
+ };
106
+ }
107
+ function cloneFailedDispatch(failedDispatch) {
108
+ return {
109
+ ...failedDispatch,
110
+ eventTypes: [...failedDispatch.eventTypes],
111
+ eventReferences: failedDispatch.eventReferences.map((reference) => ({
112
+ ...reference,
113
+ })),
114
+ };
115
+ }
116
+ //# sourceMappingURL=pi-auth-recovery-snapshot-store.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pi-auth-recovery-snapshot-store.js","sourceRoot":"","sources":["../../src/conductor/pi-auth-recovery-snapshot-store.ts"],"names":[],"mappings":"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"}