pilotswarm-sdk 0.5.19 → 0.5.21

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 (201) hide show
  1. package/api/src/http-api-transport.js +4 -0
  2. package/api/src/protocol.js +2 -0
  3. package/dist/blob-store.d.ts +42 -11
  4. package/dist/blob-store.d.ts.map +1 -1
  5. package/dist/blob-store.js +163 -53
  6. package/dist/blob-store.js.map +1 -1
  7. package/dist/cms-migrations.d.ts.map +1 -1
  8. package/dist/cms-migrations.js +231 -0
  9. package/dist/cms-migrations.js.map +1 -1
  10. package/dist/cms.d.ts +62 -0
  11. package/dist/cms.d.ts.map +1 -1
  12. package/dist/cms.js +81 -4
  13. package/dist/cms.js.map +1 -1
  14. package/dist/distiller-tools.d.ts +9 -0
  15. package/dist/distiller-tools.d.ts.map +1 -0
  16. package/dist/distiller-tools.js +102 -0
  17. package/dist/distiller-tools.js.map +1 -0
  18. package/dist/footprint.d.ts +129 -0
  19. package/dist/footprint.d.ts.map +1 -0
  20. package/dist/footprint.js +254 -0
  21. package/dist/footprint.js.map +1 -0
  22. package/dist/inspect-tools.d.ts.map +1 -1
  23. package/dist/inspect-tools.js +63 -2
  24. package/dist/inspect-tools.js.map +1 -1
  25. package/dist/managed-session.d.ts.map +1 -1
  26. package/dist/managed-session.js +140 -14
  27. package/dist/managed-session.js.map +1 -1
  28. package/dist/management-client.d.ts +32 -0
  29. package/dist/management-client.d.ts.map +1 -1
  30. package/dist/management-client.js +93 -0
  31. package/dist/management-client.js.map +1 -1
  32. package/dist/orchestration/agents.d.ts +18 -0
  33. package/dist/orchestration/agents.d.ts.map +1 -1
  34. package/dist/orchestration/agents.js +63 -3
  35. package/dist/orchestration/agents.js.map +1 -1
  36. package/dist/orchestration/index.d.ts +2 -2
  37. package/dist/orchestration/index.js +1 -1
  38. package/dist/orchestration/lifecycle.d.ts +1 -0
  39. package/dist/orchestration/lifecycle.d.ts.map +1 -1
  40. package/dist/orchestration/lifecycle.js +349 -1
  41. package/dist/orchestration/lifecycle.js.map +1 -1
  42. package/dist/orchestration/queue.d.ts.map +1 -1
  43. package/dist/orchestration/queue.js +61 -2
  44. package/dist/orchestration/queue.js.map +1 -1
  45. package/dist/orchestration/runtime.d.ts +1 -1
  46. package/dist/orchestration/runtime.d.ts.map +1 -1
  47. package/dist/orchestration/runtime.js +31 -1
  48. package/dist/orchestration/runtime.js.map +1 -1
  49. package/dist/orchestration/state.d.ts +29 -0
  50. package/dist/orchestration/state.d.ts.map +1 -1
  51. package/dist/orchestration/state.js +11 -0
  52. package/dist/orchestration/state.js.map +1 -1
  53. package/dist/orchestration/turn.d.ts.map +1 -1
  54. package/dist/orchestration/turn.js +68 -1
  55. package/dist/orchestration/turn.js.map +1 -1
  56. package/dist/orchestration-registry.d.ts.map +1 -1
  57. package/dist/orchestration-registry.js +8 -2
  58. package/dist/orchestration-registry.js.map +1 -1
  59. package/dist/orchestration-version.d.ts +1 -1
  60. package/dist/orchestration-version.js +1 -1
  61. package/dist/orchestration.d.ts +2 -2
  62. package/dist/orchestration.js +1 -1
  63. package/dist/orchestration_1_0_46.d.ts +1 -1
  64. package/dist/orchestration_1_0_47.d.ts +1 -1
  65. package/dist/orchestration_1_0_48.d.ts +1 -1
  66. package/dist/orchestration_1_0_49.d.ts +1 -1
  67. package/dist/orchestration_1_0_50.d.ts +1 -1
  68. package/dist/orchestration_1_0_65/agents.d.ts +43 -0
  69. package/dist/orchestration_1_0_65/agents.d.ts.map +1 -0
  70. package/dist/orchestration_1_0_65/agents.js +780 -0
  71. package/dist/orchestration_1_0_65/agents.js.map +1 -0
  72. package/dist/orchestration_1_0_65/index.d.ts +24 -0
  73. package/dist/orchestration_1_0_65/index.d.ts.map +1 -0
  74. package/dist/orchestration_1_0_65/index.js +13 -0
  75. package/dist/orchestration_1_0_65/index.js.map +1 -0
  76. package/dist/orchestration_1_0_65/lifecycle.d.ts +48 -0
  77. package/dist/orchestration_1_0_65/lifecycle.d.ts.map +1 -0
  78. package/dist/orchestration_1_0_65/lifecycle.js +572 -0
  79. package/dist/orchestration_1_0_65/lifecycle.js.map +1 -0
  80. package/dist/orchestration_1_0_65/queue.d.ts +7 -0
  81. package/dist/orchestration_1_0_65/queue.d.ts.map +1 -0
  82. package/dist/orchestration_1_0_65/queue.js +745 -0
  83. package/dist/orchestration_1_0_65/queue.js.map +1 -0
  84. package/dist/orchestration_1_0_65/runtime.d.ts +29 -0
  85. package/dist/orchestration_1_0_65/runtime.d.ts.map +1 -0
  86. package/dist/orchestration_1_0_65/runtime.js +195 -0
  87. package/dist/orchestration_1_0_65/runtime.js.map +1 -0
  88. package/dist/orchestration_1_0_65/state.d.ts +147 -0
  89. package/dist/orchestration_1_0_65/state.d.ts.map +1 -0
  90. package/dist/orchestration_1_0_65/state.js +147 -0
  91. package/dist/orchestration_1_0_65/state.js.map +1 -0
  92. package/dist/orchestration_1_0_65/turn.d.ts +34 -0
  93. package/dist/orchestration_1_0_65/turn.d.ts.map +1 -0
  94. package/dist/orchestration_1_0_65/turn.js +1144 -0
  95. package/dist/orchestration_1_0_65/turn.js.map +1 -0
  96. package/dist/orchestration_1_0_65/utils.d.ts +39 -0
  97. package/dist/orchestration_1_0_65/utils.d.ts.map +1 -0
  98. package/dist/orchestration_1_0_65/utils.js +316 -0
  99. package/dist/orchestration_1_0_65/utils.js.map +1 -0
  100. package/dist/orchestration_1_0_66/agents.d.ts +52 -0
  101. package/dist/orchestration_1_0_66/agents.d.ts.map +1 -0
  102. package/dist/orchestration_1_0_66/agents.js +825 -0
  103. package/dist/orchestration_1_0_66/agents.js.map +1 -0
  104. package/dist/orchestration_1_0_66/index.d.ts +24 -0
  105. package/dist/orchestration_1_0_66/index.d.ts.map +1 -0
  106. package/dist/orchestration_1_0_66/index.js +13 -0
  107. package/dist/orchestration_1_0_66/index.js.map +1 -0
  108. package/dist/orchestration_1_0_66/lifecycle.d.ts +48 -0
  109. package/dist/orchestration_1_0_66/lifecycle.d.ts.map +1 -0
  110. package/dist/orchestration_1_0_66/lifecycle.js +573 -0
  111. package/dist/orchestration_1_0_66/lifecycle.js.map +1 -0
  112. package/dist/orchestration_1_0_66/queue.d.ts +7 -0
  113. package/dist/orchestration_1_0_66/queue.d.ts.map +1 -0
  114. package/dist/orchestration_1_0_66/queue.js +776 -0
  115. package/dist/orchestration_1_0_66/queue.js.map +1 -0
  116. package/dist/orchestration_1_0_66/runtime.d.ts +29 -0
  117. package/dist/orchestration_1_0_66/runtime.d.ts.map +1 -0
  118. package/dist/orchestration_1_0_66/runtime.js +198 -0
  119. package/dist/orchestration_1_0_66/runtime.js.map +1 -0
  120. package/dist/orchestration_1_0_66/state.d.ts +149 -0
  121. package/dist/orchestration_1_0_66/state.d.ts.map +1 -0
  122. package/dist/orchestration_1_0_66/state.js +148 -0
  123. package/dist/orchestration_1_0_66/state.js.map +1 -0
  124. package/dist/orchestration_1_0_66/turn.d.ts +34 -0
  125. package/dist/orchestration_1_0_66/turn.d.ts.map +1 -0
  126. package/dist/orchestration_1_0_66/turn.js +1169 -0
  127. package/dist/orchestration_1_0_66/turn.js.map +1 -0
  128. package/dist/orchestration_1_0_66/utils.d.ts +39 -0
  129. package/dist/orchestration_1_0_66/utils.d.ts.map +1 -0
  130. package/dist/orchestration_1_0_66/utils.js +316 -0
  131. package/dist/orchestration_1_0_66/utils.js.map +1 -0
  132. package/dist/orchestration_1_0_67/agents.d.ts +52 -0
  133. package/dist/orchestration_1_0_67/agents.d.ts.map +1 -0
  134. package/dist/orchestration_1_0_67/agents.js +825 -0
  135. package/dist/orchestration_1_0_67/agents.js.map +1 -0
  136. package/dist/orchestration_1_0_67/index.d.ts +28 -0
  137. package/dist/orchestration_1_0_67/index.d.ts.map +1 -0
  138. package/dist/orchestration_1_0_67/index.js +13 -0
  139. package/dist/orchestration_1_0_67/index.js.map +1 -0
  140. package/dist/orchestration_1_0_67/lifecycle.d.ts +49 -0
  141. package/dist/orchestration_1_0_67/lifecycle.d.ts.map +1 -0
  142. package/dist/orchestration_1_0_67/lifecycle.js +807 -0
  143. package/dist/orchestration_1_0_67/lifecycle.js.map +1 -0
  144. package/dist/orchestration_1_0_67/queue.d.ts +7 -0
  145. package/dist/orchestration_1_0_67/queue.d.ts.map +1 -0
  146. package/dist/orchestration_1_0_67/queue.js +804 -0
  147. package/dist/orchestration_1_0_67/queue.js.map +1 -0
  148. package/dist/orchestration_1_0_67/runtime.d.ts +29 -0
  149. package/dist/orchestration_1_0_67/runtime.d.ts.map +1 -0
  150. package/dist/orchestration_1_0_67/runtime.js +228 -0
  151. package/dist/orchestration_1_0_67/runtime.js.map +1 -0
  152. package/dist/orchestration_1_0_67/state.d.ts +176 -0
  153. package/dist/orchestration_1_0_67/state.d.ts.map +1 -0
  154. package/dist/orchestration_1_0_67/state.js +158 -0
  155. package/dist/orchestration_1_0_67/state.js.map +1 -0
  156. package/dist/orchestration_1_0_67/turn.d.ts +34 -0
  157. package/dist/orchestration_1_0_67/turn.d.ts.map +1 -0
  158. package/dist/orchestration_1_0_67/turn.js +1208 -0
  159. package/dist/orchestration_1_0_67/turn.js.map +1 -0
  160. package/dist/orchestration_1_0_67/utils.d.ts +39 -0
  161. package/dist/orchestration_1_0_67/utils.d.ts.map +1 -0
  162. package/dist/orchestration_1_0_67/utils.js +316 -0
  163. package/dist/orchestration_1_0_67/utils.js.map +1 -0
  164. package/dist/regen-worker.d.ts +167 -0
  165. package/dist/regen-worker.d.ts.map +1 -0
  166. package/dist/regen-worker.js +512 -0
  167. package/dist/regen-worker.js.map +1 -0
  168. package/dist/resourcemgr-tools.d.ts.map +1 -1
  169. package/dist/resourcemgr-tools.js +33 -2
  170. package/dist/resourcemgr-tools.js.map +1 -1
  171. package/dist/session-lifecycle.d.ts +8 -0
  172. package/dist/session-lifecycle.d.ts.map +1 -1
  173. package/dist/session-lifecycle.js +35 -17
  174. package/dist/session-lifecycle.js.map +1 -1
  175. package/dist/session-manager.d.ts +21 -0
  176. package/dist/session-manager.d.ts.map +1 -1
  177. package/dist/session-manager.js +104 -11
  178. package/dist/session-manager.js.map +1 -1
  179. package/dist/session-proxy.d.ts +34 -0
  180. package/dist/session-proxy.d.ts.map +1 -1
  181. package/dist/session-proxy.js +407 -5
  182. package/dist/session-proxy.js.map +1 -1
  183. package/dist/session-store.d.ts +50 -15
  184. package/dist/session-store.d.ts.map +1 -1
  185. package/dist/session-store.js +143 -30
  186. package/dist/session-store.js.map +1 -1
  187. package/dist/snapshot-protocol.d.ts +34 -3
  188. package/dist/snapshot-protocol.d.ts.map +1 -1
  189. package/dist/snapshot-protocol.js +25 -0
  190. package/dist/snapshot-protocol.js.map +1 -1
  191. package/dist/types.d.ts +101 -1
  192. package/dist/types.d.ts.map +1 -1
  193. package/dist/types.js.map +1 -1
  194. package/dist/web/web-management-client.d.ts +11 -0
  195. package/dist/web/web-management-client.d.ts.map +1 -1
  196. package/dist/web/web-management-client.js +8 -0
  197. package/dist/web/web-management-client.js.map +1 -1
  198. package/dist/worker.d.ts.map +1 -1
  199. package/dist/worker.js +7 -0
  200. package/dist/worker.js.map +1 -1
  201. package/package.json +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"turn.js","sourceRoot":"","sources":["../../src/orchestration_1_0_67/turn.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,39 @@
1
+ import type { SessionContextUsage } from "../types.js";
2
+ export declare function cloneContextUsage(contextUsage?: SessionContextUsage): SessionContextUsage | undefined;
3
+ import type { DurableSessionRuntime } from "./state.js";
4
+ import type { MessageSender } from "../message-sender.js";
5
+ /**
6
+ * The one-shot system preamble issued when a session becomes multi-writer.
7
+ * Establishes owner priority: behavioral prioritization, not access control
8
+ * (unauthorized messages never reach the queue in the first place).
9
+ */
10
+ export declare function buildSharedSessionPreamble(ownerDisplay?: string): string;
11
+ /**
12
+ * Update multi-writer tracking state from a sender-carrying message.
13
+ * Returns the normalized sender (or undefined for junk/absent senders).
14
+ */
15
+ export declare function noteMessageSender(runtime: DurableSessionRuntime, rawSender: unknown): MessageSender | undefined;
16
+ /** Prefix message text with its [FROM: …] attribution once the session is multi-writer. */
17
+ export declare function applySenderAttribution(runtime: DurableSessionRuntime, sender: MessageSender | undefined, text: string): string;
18
+ /** Queue the one-shot [SHARED SESSION] preamble for the next turn when multi-writer flips on. */
19
+ export declare function maybeQueueSharedPreamble(runtime: DurableSessionRuntime): void;
20
+ export declare function mergePrompt(existingPrompt?: string, nextPrompt?: string): string | undefined;
21
+ export declare function extractPromptSystemContext(rawPrompt?: string): {
22
+ prompt?: string;
23
+ systemPrompt?: string;
24
+ };
25
+ export declare function appendSystemContext(rawPrompt: string | undefined, extraSystemPrompt?: string): string | undefined;
26
+ export declare function validClientMessageIds(value: unknown): string[];
27
+ export declare function updateContextUsageFromEvents(previous: SessionContextUsage | undefined, events: Array<{
28
+ eventType?: string;
29
+ data?: any;
30
+ }> | undefined, observedAt: number): SessionContextUsage | undefined;
31
+ export declare const COPILOT_CONNECTION_CLOSED_MAX_RETRIES = 3;
32
+ export declare const COPILOT_CONNECTION_CLOSED_RETRY_DELAY_SECONDS = 15;
33
+ export declare function isCopilotConnectionClosedError(message?: string): boolean;
34
+ export declare function isAuthFailureError(message?: string): boolean;
35
+ export declare const AUTH_FAILURE_USER_HINT: string;
36
+ export declare function buildConnectionClosedRetryDetail(retryAttempt: number): string;
37
+ export declare function buildLossyHandoffSummary(errorMessage: string): string;
38
+ export declare function buildLossyHandoffRehydrationMessage(errorMessage: string): string;
39
+ //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/orchestration_1_0_67/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAIvD,wBAAgB,iBAAiB,CAAC,YAAY,CAAC,EAAE,mBAAmB,GAAG,mBAAmB,GAAG,SAAS,CAMrG;AAED,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAExD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAO1D;;;;GAIG;AACH,wBAAgB,0BAA0B,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM,CAWxE;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,qBAAqB,EAAE,SAAS,EAAE,OAAO,GAAG,aAAa,GAAG,SAAS,CAmB/G;AAwBD,2FAA2F;AAC3F,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,qBAAqB,EAAE,MAAM,EAAE,aAAa,GAAG,SAAS,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAQ9H;AAED,iGAAiG;AACjG,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,qBAAqB,GAAG,IAAI,CAK7E;AAED,wBAAgB,WAAW,CAAC,cAAc,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAI5F;AAED,wBAAgB,0BAA0B,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG;IAAE,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,YAAY,CAAC,EAAE,MAAM,CAAA;CAAE,CAqBzG;AAED,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,EAAE,iBAAiB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CASjH;AAED,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,EAAE,CAI9D;AAYD,wBAAgB,4BAA4B,CACxC,QAAQ,EAAE,mBAAmB,GAAG,SAAS,EACzC,MAAM,EAAE,KAAK,CAAC;IAAE,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,GAAG,CAAA;CAAE,CAAC,GAAG,SAAS,EAC7D,UAAU,EAAE,MAAM,GACnB,mBAAmB,GAAG,SAAS,CAsHjC;AAID,eAAO,MAAM,qCAAqC,IAAI,CAAC;AACvD,eAAO,MAAM,6CAA6C,KAAK,CAAC;AAEhE,wBAAgB,8BAA8B,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAExE;AAED,wBAAgB,kBAAkB,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAS5D;AAED,eAAO,MAAM,sBAAsB,QAGsC,CAAC;AAE1E,wBAAgB,gCAAgC,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAE7E;AAED,wBAAgB,wBAAwB,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAGrE;AAED,wBAAgB,mCAAmC,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAIhF"}
@@ -0,0 +1,316 @@
1
+ // ─── Prompt / system-context manipulation ───────────────────
2
+ export function cloneContextUsage(contextUsage) {
3
+ if (!contextUsage)
4
+ return undefined;
5
+ return {
6
+ ...contextUsage,
7
+ ...(contextUsage.compaction ? { compaction: { ...contextUsage.compaction } } : {}),
8
+ };
9
+ }
10
+ import { normalizeMessageSender, messageSenderKey, formatSenderAttribution } from "../message-sender.js";
11
+ // ─── Multi-writer attribution (security model) ──────────────────────
12
+ // docs/proposals/user-admin-security-model.md. All of this is inert until a
13
+ // message payload carries the optional `sender` field, so pre-sender
14
+ // histories replay identically.
15
+ /**
16
+ * The one-shot system preamble issued when a session becomes multi-writer.
17
+ * Establishes owner priority: behavioral prioritization, not access control
18
+ * (unauthorized messages never reach the queue in the first place).
19
+ */
20
+ export function buildSharedSessionPreamble(ownerDisplay) {
21
+ const ownerLine = ownerDisplay
22
+ ? `This session is owned by ${ownerDisplay}.`
23
+ : "This session is owned by the user whose messages are marked (owner).";
24
+ return `[SHARED SESSION]
25
+ ${ownerLine} Other users may read it or send messages; each message is attributed as [FROM: name (relation)].
26
+ The owner's directives are authoritative:
27
+ - Standing instructions from the owner govern the session's goals, constraints, and style.
28
+ - Help collaborators normally when their requests fit within those goals and constraints.
29
+ - If a collaborator's request conflicts with the owner's instructions or would change the session's direction, do not silently comply — say so, and either decline or ask the owner.
30
+ - Messages marked (admin) are fleet operators; treat them like collaborators for prioritization purposes.`;
31
+ }
32
+ /**
33
+ * Update multi-writer tracking state from a sender-carrying message.
34
+ * Returns the normalized sender (or undefined for junk/absent senders).
35
+ */
36
+ export function noteMessageSender(runtime, rawSender) {
37
+ const sender = normalizeMessageSender(rawSender);
38
+ if (!sender)
39
+ return undefined;
40
+ const { state } = runtime;
41
+ // The canonical state builder seeds this to []; guard anyway so attribution
42
+ // never crashes on a state that reached here another way.
43
+ if (!Array.isArray(state.observedSenderKeys))
44
+ state.observedSenderKeys = [];
45
+ const key = messageSenderKey(sender);
46
+ if (key && !state.observedSenderKeys.includes(key))
47
+ state.observedSenderKeys.push(key);
48
+ if (sender.relation === "owner" && sender.display && !state.ownerDisplay) {
49
+ state.ownerDisplay = sender.display;
50
+ }
51
+ if (!state.multiWriter) {
52
+ const distinctUsers = state.observedSenderKeys.filter((k) => k.startsWith("user:")).length;
53
+ if (distinctUsers >= 2 || (sender.kind === "user" && sender.relation && sender.relation !== "owner")) {
54
+ state.multiWriter = true;
55
+ }
56
+ }
57
+ return sender;
58
+ }
59
+ // The trusted attribution line is the ONLY authority on who sent a message.
60
+ // A collaborator in a shared_write session could otherwise embed markers in
61
+ // their message body to spoof identity or inject system guidance that defeats
62
+ // owner-priority. Two classes, matched at any Unicode line separator (the model
63
+ // may render \r, LS, PS, NEL, VT, FF as breaks), neutralized by inserting a
64
+ // zero-width space after the bracket so the exact token no longer matches:
65
+ //
66
+ // - Attribution spoofing ([FROM:]/[SHARED SESSION]): no legitimate use in a
67
+ // message body — neutralized for EVERY sender.
68
+ // - System injection ([SYSTEM:]): extractPromptSystemContext lifts a trailing
69
+ // [SYSTEM: …] out of the prompt into an unattributed system prompt. That is
70
+ // a legitimate power-user affordance for the OWNER, but a privilege
71
+ // escalation for a collaborator — neutralized for non-owner senders only.
72
+ // Review MEDIUM-3 / NEW-1.
73
+ const LINE_SEP = "\\n\\r\\u2028\\u2029\\u0085\\v\\f";
74
+ const FORGED_ATTRIBUTION = new RegExp(`(^|[${LINE_SEP}])(\\s*)\\[(FROM:|SHARED SESSION\\])`, "gi");
75
+ const FORGED_SYSTEM = new RegExp(`(^|[${LINE_SEP}])(\\s*)\\[(SYSTEM:)`, "gi");
76
+ function neutralize(re, text) {
77
+ return text.replace(re, (_m, lead, ws, marker) => `${lead}${ws}[​${marker}`);
78
+ }
79
+ /** Prefix message text with its [FROM: …] attribution once the session is multi-writer. */
80
+ export function applySenderAttribution(runtime, sender, text) {
81
+ if (!runtime.state.multiWriter || !text)
82
+ return text;
83
+ let safeText = neutralize(FORGED_ATTRIBUTION, text);
84
+ // The owner keeps the [SYSTEM:] affordance; collaborators and unknown
85
+ // senders do not — they must not be able to override owner-priority.
86
+ if (sender?.relation !== "owner")
87
+ safeText = neutralize(FORGED_SYSTEM, safeText);
88
+ if (!sender)
89
+ return safeText;
90
+ return `${formatSenderAttribution(sender)}\n${safeText}`;
91
+ }
92
+ /** Queue the one-shot [SHARED SESSION] preamble for the next turn when multi-writer flips on. */
93
+ export function maybeQueueSharedPreamble(runtime) {
94
+ const { state } = runtime;
95
+ if (!state.multiWriter || state.sharedPreambleSent)
96
+ return;
97
+ state.sharedPreambleSent = true;
98
+ state.pendingSystemPrompt = mergePrompt(state.pendingSystemPrompt, buildSharedSessionPreamble(state.ownerDisplay));
99
+ }
100
+ export function mergePrompt(existingPrompt, nextPrompt) {
101
+ if (!existingPrompt)
102
+ return nextPrompt;
103
+ if (!nextPrompt)
104
+ return existingPrompt;
105
+ return `${existingPrompt}\n\n${nextPrompt}`;
106
+ }
107
+ export function extractPromptSystemContext(rawPrompt) {
108
+ if (!rawPrompt)
109
+ return {};
110
+ const trimmed = rawPrompt.trim();
111
+ if (trimmed.startsWith("[SYSTEM:") && trimmed.endsWith("]")) {
112
+ return {
113
+ systemPrompt: trimmed.slice("[SYSTEM:".length, -1).trim(),
114
+ };
115
+ }
116
+ const marker = rawPrompt.lastIndexOf("\n\n[SYSTEM:");
117
+ if (marker >= 0 && rawPrompt.trimEnd().endsWith("]")) {
118
+ const prompt = rawPrompt.slice(0, marker).trim();
119
+ const systemPrompt = rawPrompt.slice(marker + 2).trim();
120
+ return {
121
+ ...(prompt ? { prompt } : {}),
122
+ systemPrompt: systemPrompt.slice("[SYSTEM:".length, -1).trim(),
123
+ };
124
+ }
125
+ return { prompt: rawPrompt };
126
+ }
127
+ export function appendSystemContext(rawPrompt, extraSystemPrompt) {
128
+ if (!extraSystemPrompt)
129
+ return rawPrompt;
130
+ const extracted = extractPromptSystemContext(rawPrompt);
131
+ const mergedSystemPrompt = mergePrompt(extracted.systemPrompt, extraSystemPrompt);
132
+ if (!mergedSystemPrompt)
133
+ return extracted.prompt ?? rawPrompt;
134
+ if (extracted.prompt) {
135
+ return `${extracted.prompt}\n\n[SYSTEM: ${mergedSystemPrompt}]`;
136
+ }
137
+ return `[SYSTEM: ${mergedSystemPrompt}]`;
138
+ }
139
+ export function validClientMessageIds(value) {
140
+ return Array.isArray(value)
141
+ ? value.filter((id) => typeof id === "string" && Boolean(id))
142
+ : [];
143
+ }
144
+ // ─── Context usage event reduction ──────────────────────────
145
+ function finiteNumber(value) {
146
+ return typeof value === "number" && Number.isFinite(value) ? value : undefined;
147
+ }
148
+ function optionalBoolean(value) {
149
+ return typeof value === "boolean" ? value : undefined;
150
+ }
151
+ export function updateContextUsageFromEvents(previous, events, observedAt) {
152
+ let next = cloneContextUsage(previous);
153
+ if (!Array.isArray(events) || events.length === 0)
154
+ return next;
155
+ for (const event of events) {
156
+ if (!event || typeof event !== "object")
157
+ continue;
158
+ const eventType = event.eventType;
159
+ const data = event.data;
160
+ if (!eventType || !data || typeof data !== "object")
161
+ continue;
162
+ if (eventType === "session.usage_info") {
163
+ const tokenLimit = finiteNumber(data.tokenLimit);
164
+ const currentTokens = finiteNumber(data.currentTokens);
165
+ const messagesLength = finiteNumber(data.messagesLength);
166
+ if (tokenLimit == null || currentTokens == null || messagesLength == null)
167
+ continue;
168
+ next = {
169
+ ...(next ?? {}),
170
+ tokenLimit,
171
+ currentTokens,
172
+ utilization: tokenLimit > 0 ? currentTokens / tokenLimit : 0,
173
+ messagesLength,
174
+ updatedAt: observedAt,
175
+ };
176
+ const systemTokens = finiteNumber(data.systemTokens);
177
+ if (systemTokens != null)
178
+ next.systemTokens = systemTokens;
179
+ const conversationTokens = finiteNumber(data.conversationTokens);
180
+ if (conversationTokens != null)
181
+ next.conversationTokens = conversationTokens;
182
+ const toolDefinitionsTokens = finiteNumber(data.toolDefinitionsTokens);
183
+ if (toolDefinitionsTokens != null)
184
+ next.toolDefinitionsTokens = toolDefinitionsTokens;
185
+ const isInitial = optionalBoolean(data.isInitial);
186
+ if (isInitial != null)
187
+ next.isInitial = isInitial;
188
+ continue;
189
+ }
190
+ if (!next)
191
+ continue;
192
+ if (eventType === "assistant.usage") {
193
+ const inputTokens = finiteNumber(data.inputTokens);
194
+ if (inputTokens != null)
195
+ next.lastInputTokens = inputTokens;
196
+ const outputTokens = finiteNumber(data.outputTokens);
197
+ if (outputTokens != null)
198
+ next.lastOutputTokens = outputTokens;
199
+ const cacheReadTokens = finiteNumber(data.cacheReadTokens);
200
+ if (cacheReadTokens != null)
201
+ next.lastCacheReadTokens = cacheReadTokens;
202
+ const cacheWriteTokens = finiteNumber(data.cacheWriteTokens);
203
+ if (cacheWriteTokens != null)
204
+ next.lastCacheWriteTokens = cacheWriteTokens;
205
+ next.updatedAt = observedAt;
206
+ continue;
207
+ }
208
+ if (eventType === "session.compaction_start") {
209
+ const compaction = {
210
+ ...(next.compaction ?? { state: "idle" }),
211
+ state: "running",
212
+ startedAt: observedAt,
213
+ completedAt: undefined,
214
+ error: undefined,
215
+ };
216
+ next.compaction = compaction;
217
+ next.updatedAt = observedAt;
218
+ continue;
219
+ }
220
+ if (eventType === "session.compaction_complete") {
221
+ const compaction = {
222
+ ...(next.compaction ?? { state: "idle" }),
223
+ state: data.success === false ? "failed" : "succeeded",
224
+ completedAt: observedAt,
225
+ };
226
+ if (typeof data.error === "string" && data.error)
227
+ compaction.error = data.error;
228
+ else
229
+ delete compaction.error;
230
+ const preCompactionTokens = finiteNumber(data.preCompactionTokens);
231
+ if (preCompactionTokens != null)
232
+ compaction.preCompactionTokens = preCompactionTokens;
233
+ const postCompactionTokens = finiteNumber(data.postCompactionTokens);
234
+ if (postCompactionTokens != null)
235
+ compaction.postCompactionTokens = postCompactionTokens;
236
+ const preCompactionMessagesLength = finiteNumber(data.preCompactionMessagesLength);
237
+ if (preCompactionMessagesLength != null)
238
+ compaction.preCompactionMessagesLength = preCompactionMessagesLength;
239
+ const messagesRemoved = finiteNumber(data.messagesRemoved);
240
+ if (messagesRemoved != null)
241
+ compaction.messagesRemoved = messagesRemoved;
242
+ const tokensRemoved = finiteNumber(data.tokensRemoved);
243
+ if (tokensRemoved != null)
244
+ compaction.tokensRemoved = tokensRemoved;
245
+ const systemTokens = finiteNumber(data.systemTokens);
246
+ if (systemTokens != null)
247
+ compaction.systemTokens = systemTokens;
248
+ const conversationTokens = finiteNumber(data.conversationTokens);
249
+ if (conversationTokens != null)
250
+ compaction.conversationTokens = conversationTokens;
251
+ const toolDefinitionsTokens = finiteNumber(data.toolDefinitionsTokens);
252
+ if (toolDefinitionsTokens != null)
253
+ compaction.toolDefinitionsTokens = toolDefinitionsTokens;
254
+ const compactionTokensUsed = data.compactionTokensUsed && typeof data.compactionTokensUsed === "object"
255
+ ? data.compactionTokensUsed
256
+ : null;
257
+ if (compactionTokensUsed) {
258
+ const compactionInputTokens = finiteNumber(compactionTokensUsed.input);
259
+ if (compactionInputTokens != null)
260
+ compaction.inputTokens = compactionInputTokens;
261
+ const compactionOutputTokens = finiteNumber(compactionTokensUsed.output);
262
+ if (compactionOutputTokens != null)
263
+ compaction.outputTokens = compactionOutputTokens;
264
+ const compactionCachedInputTokens = finiteNumber(compactionTokensUsed.cachedInput);
265
+ if (compactionCachedInputTokens != null)
266
+ compaction.cachedInputTokens = compactionCachedInputTokens;
267
+ }
268
+ if (postCompactionTokens != null) {
269
+ next.currentTokens = postCompactionTokens;
270
+ next.utilization = next.tokenLimit > 0 ? postCompactionTokens / next.tokenLimit : 0;
271
+ }
272
+ if (preCompactionMessagesLength != null && messagesRemoved != null) {
273
+ next.messagesLength = Math.max(0, preCompactionMessagesLength - messagesRemoved);
274
+ }
275
+ if (systemTokens != null)
276
+ next.systemTokens = systemTokens;
277
+ if (conversationTokens != null)
278
+ next.conversationTokens = conversationTokens;
279
+ if (toolDefinitionsTokens != null)
280
+ next.toolDefinitionsTokens = toolDefinitionsTokens;
281
+ next.compaction = compaction;
282
+ next.updatedAt = observedAt;
283
+ }
284
+ }
285
+ return next;
286
+ }
287
+ // ─── Error / retry classification ───────────────────────────
288
+ export const COPILOT_CONNECTION_CLOSED_MAX_RETRIES = 3;
289
+ export const COPILOT_CONNECTION_CLOSED_RETRY_DELAY_SECONDS = 15;
290
+ export function isCopilotConnectionClosedError(message) {
291
+ return /\bConnection is closed\b/i.test(String(message || ""));
292
+ }
293
+ export function isAuthFailureError(message) {
294
+ const text = String(message || "");
295
+ return (/\bNo authentication info available\b/i.test(text)
296
+ || /\bBad credentials\b/i.test(text)
297
+ || /\bAuthentication failed\b/i.test(text)
298
+ || /\bunauthorized\b/i.test(text)
299
+ || /\b401\b/.test(text));
300
+ }
301
+ export const AUTH_FAILURE_USER_HINT = "GitHub Copilot rejected the authentication token. " +
302
+ "Open the Admin Console (portal toolbar 'Admin' button or TUI Shift+A) " +
303
+ "to update your GitHub Copilot key, then resend the prompt to retry.";
304
+ export function buildConnectionClosedRetryDetail(retryAttempt) {
305
+ return `Live Copilot connection lost; retry ${retryAttempt}/${COPILOT_CONNECTION_CLOSED_MAX_RETRIES} in ${COPILOT_CONNECTION_CLOSED_RETRY_DELAY_SECONDS}s.`;
306
+ }
307
+ export function buildLossyHandoffSummary(errorMessage) {
308
+ return `Live Copilot connection stayed closed after ${COPILOT_CONNECTION_CLOSED_MAX_RETRIES} retries; ` +
309
+ `dehydrating for handoff to a new worker. Last error: ${errorMessage}`;
310
+ }
311
+ export function buildLossyHandoffRehydrationMessage(errorMessage) {
312
+ return `The previous worker lost the live Copilot connection and handed this session off after ` +
313
+ `${COPILOT_CONNECTION_CLOSED_MAX_RETRIES} retries. The LLM conversation history is preserved. ` +
314
+ `Review the latest durable context and continue carefully. Last transport error: ${errorMessage}`;
315
+ }
316
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/orchestration_1_0_67/utils.ts"],"names":[],"mappings":"AAEA,+DAA+D;AAE/D,MAAM,UAAU,iBAAiB,CAAC,YAAkC;IAChE,IAAI,CAAC,YAAY;QAAE,OAAO,SAAS,CAAC;IACpC,OAAO;QACH,GAAG,YAAY;QACf,GAAG,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,EAAE,GAAG,YAAY,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACrF,CAAC;AACN,CAAC;AAGD,OAAO,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAGzG,uEAAuE;AACvE,4EAA4E;AAC5E,qEAAqE;AACrE,gCAAgC;AAEhC;;;;GAIG;AACH,MAAM,UAAU,0BAA0B,CAAC,YAAqB;IAC5D,MAAM,SAAS,GAAG,YAAY;QAC1B,CAAC,CAAC,4BAA4B,YAAY,GAAG;QAC7C,CAAC,CAAC,sEAAsE,CAAC;IAC7E,OAAO;EACT,SAAS;;;;;0GAK+F,CAAC;AAC3G,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAA8B,EAAE,SAAkB;IAChF,MAAM,MAAM,GAAG,sBAAsB,CAAC,SAAS,CAAC,CAAC;IACjD,IAAI,CAAC,MAAM;QAAE,OAAO,SAAS,CAAC;IAC9B,MAAM,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC;IAC1B,4EAA4E;IAC5E,0DAA0D;IAC1D,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,kBAAkB,CAAC;QAAE,KAAK,CAAC,kBAAkB,GAAG,EAAE,CAAC;IAC5E,MAAM,GAAG,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;IACrC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,QAAQ,CAAC,GAAG,CAAC;QAAE,KAAK,CAAC,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACvF,IAAI,MAAM,CAAC,QAAQ,KAAK,OAAO,IAAI,MAAM,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC;QACvE,KAAK,CAAC,YAAY,GAAG,MAAM,CAAC,OAAO,CAAC;IACxC,CAAC;IACD,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;QACrB,MAAM,aAAa,GAAG,KAAK,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC;QAC3F,IAAI,aAAa,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,MAAM,IAAI,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,QAAQ,KAAK,OAAO,CAAC,EAAE,CAAC;YACnG,KAAK,CAAC,WAAW,GAAG,IAAI,CAAC;QAC7B,CAAC;IACL,CAAC;IACD,OAAO,MAAM,CAAC;AAClB,CAAC;AAED,4EAA4E;AAC5E,4EAA4E;AAC5E,8EAA8E;AAC9E,gFAAgF;AAChF,4EAA4E;AAC5E,2EAA2E;AAC3E,EAAE;AACF,6EAA6E;AAC7E,kDAAkD;AAClD,+EAA+E;AAC/E,+EAA+E;AAC/E,uEAAuE;AACvE,6EAA6E;AAC7E,2BAA2B;AAC3B,MAAM,QAAQ,GAAG,mCAAmC,CAAC;AACrD,MAAM,kBAAkB,GAAG,IAAI,MAAM,CAAC,OAAO,QAAQ,sCAAsC,EAAE,IAAI,CAAC,CAAC;AACnG,MAAM,aAAa,GAAG,IAAI,MAAM,CAAC,OAAO,QAAQ,sBAAsB,EAAE,IAAI,CAAC,CAAC;AAE9E,SAAS,UAAU,CAAC,EAAU,EAAE,IAAY;IACxC,OAAO,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,GAAG,IAAI,GAAG,EAAE,KAAK,MAAM,EAAE,CAAC,CAAC;AACjF,CAAC;AAED,2FAA2F;AAC3F,MAAM,UAAU,sBAAsB,CAAC,OAA8B,EAAE,MAAiC,EAAE,IAAY;IAClH,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAC;IACrD,IAAI,QAAQ,GAAG,UAAU,CAAC,kBAAkB,EAAE,IAAI,CAAC,CAAC;IACpD,sEAAsE;IACtE,qEAAqE;IACrE,IAAI,MAAM,EAAE,QAAQ,KAAK,OAAO;QAAE,QAAQ,GAAG,UAAU,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;IACjF,IAAI,CAAC,MAAM;QAAE,OAAO,QAAQ,CAAC;IAC7B,OAAO,GAAG,uBAAuB,CAAC,MAAM,CAAC,KAAK,QAAQ,EAAE,CAAC;AAC7D,CAAC;AAED,iGAAiG;AACjG,MAAM,UAAU,wBAAwB,CAAC,OAA8B;IACnE,MAAM,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC;IAC1B,IAAI,CAAC,KAAK,CAAC,WAAW,IAAI,KAAK,CAAC,kBAAkB;QAAE,OAAO;IAC3D,KAAK,CAAC,kBAAkB,GAAG,IAAI,CAAC;IAChC,KAAK,CAAC,mBAAmB,GAAG,WAAW,CAAC,KAAK,CAAC,mBAAmB,EAAE,0BAA0B,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC;AACvH,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,cAAuB,EAAE,UAAmB;IACpE,IAAI,CAAC,cAAc;QAAE,OAAO,UAAU,CAAC;IACvC,IAAI,CAAC,UAAU;QAAE,OAAO,cAAc,CAAC;IACvC,OAAO,GAAG,cAAc,OAAO,UAAU,EAAE,CAAC;AAChD,CAAC;AAED,MAAM,UAAU,0BAA0B,CAAC,SAAkB;IACzD,IAAI,CAAC,SAAS;QAAE,OAAO,EAAE,CAAC;IAE1B,MAAM,OAAO,GAAG,SAAS,CAAC,IAAI,EAAE,CAAC;IACjC,IAAI,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QAC1D,OAAO;YACH,YAAY,EAAE,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE;SAC5D,CAAC;IACN,CAAC;IAED,MAAM,MAAM,GAAG,SAAS,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;IACrD,IAAI,MAAM,IAAI,CAAC,IAAI,SAAS,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QACnD,MAAM,MAAM,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC;QACjD,MAAM,YAAY,GAAG,SAAS,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QACxD,OAAO;YACH,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7B,YAAY,EAAE,YAAY,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE;SACjE,CAAC;IACN,CAAC;IAED,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;AACjC,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,SAA6B,EAAE,iBAA0B;IACzF,IAAI,CAAC,iBAAiB;QAAE,OAAO,SAAS,CAAC;IACzC,MAAM,SAAS,GAAG,0BAA0B,CAAC,SAAS,CAAC,CAAC;IACxD,MAAM,kBAAkB,GAAG,WAAW,CAAC,SAAS,CAAC,YAAY,EAAE,iBAAiB,CAAC,CAAC;IAClF,IAAI,CAAC,kBAAkB;QAAE,OAAO,SAAS,CAAC,MAAM,IAAI,SAAS,CAAC;IAC9D,IAAI,SAAS,CAAC,MAAM,EAAE,CAAC;QACnB,OAAO,GAAG,SAAS,CAAC,MAAM,gBAAgB,kBAAkB,GAAG,CAAC;IACpE,CAAC;IACD,OAAO,YAAY,kBAAkB,GAAG,CAAC;AAC7C,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,KAAc;IAChD,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QACvB,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,EAAW,EAAgB,EAAE,CAAC,OAAO,EAAE,KAAK,QAAQ,IAAI,OAAO,CAAC,EAAE,CAAC,CAAC;QACpF,CAAC,CAAC,EAAE,CAAC;AACb,CAAC;AAED,+DAA+D;AAE/D,SAAS,YAAY,CAAC,KAAc;IAChC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;AACnF,CAAC;AAED,SAAS,eAAe,CAAC,KAAc;IACnC,OAAO,OAAO,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;AAC1D,CAAC;AAED,MAAM,UAAU,4BAA4B,CACxC,QAAyC,EACzC,MAA6D,EAC7D,UAAkB;IAElB,IAAI,IAAI,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;IACvC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAE/D,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QACzB,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ;YAAE,SAAS;QAClD,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;QAClC,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;QACxB,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ;YAAE,SAAS;QAE9D,IAAI,SAAS,KAAK,oBAAoB,EAAE,CAAC;YACrC,MAAM,UAAU,GAAG,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YACjD,MAAM,aAAa,GAAG,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YACvD,MAAM,cAAc,GAAG,YAAY,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YACzD,IAAI,UAAU,IAAI,IAAI,IAAI,aAAa,IAAI,IAAI,IAAI,cAAc,IAAI,IAAI;gBAAE,SAAS;YAEpF,IAAI,GAAG;gBACH,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC;gBACf,UAAU;gBACV,aAAa;gBACb,WAAW,EAAE,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC,aAAa,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;gBAC5D,cAAc;gBACd,SAAS,EAAE,UAAU;aACxB,CAAC;YAEF,MAAM,YAAY,GAAG,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YACrD,IAAI,YAAY,IAAI,IAAI;gBAAE,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;YAC3D,MAAM,kBAAkB,GAAG,YAAY,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;YACjE,IAAI,kBAAkB,IAAI,IAAI;gBAAE,IAAI,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;YAC7E,MAAM,qBAAqB,GAAG,YAAY,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;YACvE,IAAI,qBAAqB,IAAI,IAAI;gBAAE,IAAI,CAAC,qBAAqB,GAAG,qBAAqB,CAAC;YACtF,MAAM,SAAS,GAAG,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAClD,IAAI,SAAS,IAAI,IAAI;gBAAE,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;YAClD,SAAS;QACb,CAAC;QAED,IAAI,CAAC,IAAI;YAAE,SAAS;QAEpB,IAAI,SAAS,KAAK,iBAAiB,EAAE,CAAC;YAClC,MAAM,WAAW,GAAG,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YACnD,IAAI,WAAW,IAAI,IAAI;gBAAE,IAAI,CAAC,eAAe,GAAG,WAAW,CAAC;YAC5D,MAAM,YAAY,GAAG,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YACrD,IAAI,YAAY,IAAI,IAAI;gBAAE,IAAI,CAAC,gBAAgB,GAAG,YAAY,CAAC;YAC/D,MAAM,eAAe,GAAG,YAAY,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;YAC3D,IAAI,eAAe,IAAI,IAAI;gBAAE,IAAI,CAAC,mBAAmB,GAAG,eAAe,CAAC;YACxE,MAAM,gBAAgB,GAAG,YAAY,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;YAC7D,IAAI,gBAAgB,IAAI,IAAI;gBAAE,IAAI,CAAC,oBAAoB,GAAG,gBAAgB,CAAC;YAC3E,IAAI,CAAC,SAAS,GAAG,UAAU,CAAC;YAC5B,SAAS;QACb,CAAC;QAED,IAAI,SAAS,KAAK,0BAA0B,EAAE,CAAC;YAC3C,MAAM,UAAU,GAAG;gBACf,GAAG,CAAC,IAAI,CAAC,UAAU,IAAI,EAAE,KAAK,EAAE,MAAe,EAAE,CAAC;gBAClD,KAAK,EAAE,SAAkB;gBACzB,SAAS,EAAE,UAAU;gBACrB,WAAW,EAAE,SAAS;gBACtB,KAAK,EAAE,SAAS;aACnB,CAAC;YACF,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;YAC7B,IAAI,CAAC,SAAS,GAAG,UAAU,CAAC;YAC5B,SAAS;QACb,CAAC;QAED,IAAI,SAAS,KAAK,6BAA6B,EAAE,CAAC;YAC9C,MAAM,UAAU,GAAmD;gBAC/D,GAAG,CAAC,IAAI,CAAC,UAAU,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;gBACzC,KAAK,EAAE,IAAI,CAAC,OAAO,KAAK,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,WAAW;gBACtD,WAAW,EAAE,UAAU;aAC1B,CAAC;YACF,IAAI,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,IAAI,IAAI,CAAC,KAAK;gBAAE,UAAU,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;;gBAC3E,OAAO,UAAU,CAAC,KAAK,CAAC;YAE7B,MAAM,mBAAmB,GAAG,YAAY,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;YACnE,IAAI,mBAAmB,IAAI,IAAI;gBAAE,UAAU,CAAC,mBAAmB,GAAG,mBAAmB,CAAC;YACtF,MAAM,oBAAoB,GAAG,YAAY,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;YACrE,IAAI,oBAAoB,IAAI,IAAI;gBAAE,UAAU,CAAC,oBAAoB,GAAG,oBAAoB,CAAC;YACzF,MAAM,2BAA2B,GAAG,YAAY,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;YACnF,IAAI,2BAA2B,IAAI,IAAI;gBAAE,UAAU,CAAC,2BAA2B,GAAG,2BAA2B,CAAC;YAC9G,MAAM,eAAe,GAAG,YAAY,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;YAC3D,IAAI,eAAe,IAAI,IAAI;gBAAE,UAAU,CAAC,eAAe,GAAG,eAAe,CAAC;YAC1E,MAAM,aAAa,GAAG,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YACvD,IAAI,aAAa,IAAI,IAAI;gBAAE,UAAU,CAAC,aAAa,GAAG,aAAa,CAAC;YACpE,MAAM,YAAY,GAAG,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YACrD,IAAI,YAAY,IAAI,IAAI;gBAAE,UAAU,CAAC,YAAY,GAAG,YAAY,CAAC;YACjE,MAAM,kBAAkB,GAAG,YAAY,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;YACjE,IAAI,kBAAkB,IAAI,IAAI;gBAAE,UAAU,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;YACnF,MAAM,qBAAqB,GAAG,YAAY,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;YACvE,IAAI,qBAAqB,IAAI,IAAI;gBAAE,UAAU,CAAC,qBAAqB,GAAG,qBAAqB,CAAC;YAE5F,MAAM,oBAAoB,GAAG,IAAI,CAAC,oBAAoB,IAAI,OAAO,IAAI,CAAC,oBAAoB,KAAK,QAAQ;gBACnG,CAAC,CAAC,IAAI,CAAC,oBAAoB;gBAC3B,CAAC,CAAC,IAAI,CAAC;YACX,IAAI,oBAAoB,EAAE,CAAC;gBACvB,MAAM,qBAAqB,GAAG,YAAY,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC;gBACvE,IAAI,qBAAqB,IAAI,IAAI;oBAAE,UAAU,CAAC,WAAW,GAAG,qBAAqB,CAAC;gBAClF,MAAM,sBAAsB,GAAG,YAAY,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC;gBACzE,IAAI,sBAAsB,IAAI,IAAI;oBAAE,UAAU,CAAC,YAAY,GAAG,sBAAsB,CAAC;gBACrF,MAAM,2BAA2B,GAAG,YAAY,CAAC,oBAAoB,CAAC,WAAW,CAAC,CAAC;gBACnF,IAAI,2BAA2B,IAAI,IAAI;oBAAE,UAAU,CAAC,iBAAiB,GAAG,2BAA2B,CAAC;YACxG,CAAC;YAED,IAAI,oBAAoB,IAAI,IAAI,EAAE,CAAC;gBAC/B,IAAI,CAAC,aAAa,GAAG,oBAAoB,CAAC;gBAC1C,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC,oBAAoB,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;YACxF,CAAC;YACD,IAAI,2BAA2B,IAAI,IAAI,IAAI,eAAe,IAAI,IAAI,EAAE,CAAC;gBACjE,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,2BAA2B,GAAG,eAAe,CAAC,CAAC;YACrF,CAAC;YACD,IAAI,YAAY,IAAI,IAAI;gBAAE,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;YAC3D,IAAI,kBAAkB,IAAI,IAAI;gBAAE,IAAI,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;YAC7E,IAAI,qBAAqB,IAAI,IAAI;gBAAE,IAAI,CAAC,qBAAqB,GAAG,qBAAqB,CAAC;YACtF,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;YAC7B,IAAI,CAAC,SAAS,GAAG,UAAU,CAAC;QAChC,CAAC;IACL,CAAC;IAED,OAAO,IAAI,CAAC;AAChB,CAAC;AAED,+DAA+D;AAE/D,MAAM,CAAC,MAAM,qCAAqC,GAAG,CAAC,CAAC;AACvD,MAAM,CAAC,MAAM,6CAA6C,GAAG,EAAE,CAAC;AAEhE,MAAM,UAAU,8BAA8B,CAAC,OAAgB;IAC3D,OAAO,2BAA2B,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,CAAC;AACnE,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,OAAgB;IAC/C,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;IACnC,OAAO,CACH,uCAAuC,CAAC,IAAI,CAAC,IAAI,CAAC;WAC/C,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC;WACjC,4BAA4B,CAAC,IAAI,CAAC,IAAI,CAAC;WACvC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC;WAC9B,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAC1B,CAAC;AACN,CAAC;AAED,MAAM,CAAC,MAAM,sBAAsB,GAC/B,oDAAoD;IACpD,wEAAwE;IACxE,qEAAqE,CAAC;AAE1E,MAAM,UAAU,gCAAgC,CAAC,YAAoB;IACjE,OAAO,uCAAuC,YAAY,IAAI,qCAAqC,OAAO,6CAA6C,IAAI,CAAC;AAChK,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,YAAoB;IACzD,OAAO,+CAA+C,qCAAqC,YAAY;QACnG,wDAAwD,YAAY,EAAE,CAAC;AAC/E,CAAC;AAED,MAAM,UAAU,mCAAmC,CAAC,YAAoB;IACpE,OAAO,yFAAyF;QAC5F,GAAG,qCAAqC,uDAAuD;QAC/F,mFAAmF,YAAY,EAAE,CAAC;AAC1G,CAAC"}
@@ -0,0 +1,167 @@
1
+ /**
2
+ * Session regeneration worker activities: ARCHIVE and DISTILL
3
+ * (docs/proposals/session-regen-and-footprint.md §4, §9).
4
+ *
5
+ * Both are idempotent per ATTEMPT (never per epoch): every artifact name
6
+ * carries the attempt id, so a later attempt in the same epoch structurally
7
+ * cannot pick up a stale predecessor's output — correctness never depends on
8
+ * cleanup having run. Within one attempt, a retried activity short-circuits
9
+ * on its own already-uploaded artifact.
10
+ *
11
+ * The Distiller is an ephemeral, fresh-context SDK session — never the
12
+ * degraded session summarizing itself. Hygiene the title-summarizer pattern
13
+ * lacks: its own COPILOT_HOME under a temp dir, and deleteSession + rm in a
14
+ * finally, so nothing leaks per invocation.
15
+ *
16
+ * Injection posture: the transcript tail and the handoff are ATTACKER-
17
+ * INFLUENCEABLE text. They are rendered inside fenced quote blocks as data;
18
+ * the distiller is instructed that imperatives inside them carry no
19
+ * authority; and the bootstrap renders every LLM-generated field as quoted
20
+ * distiller output to verify — never as instructions.
21
+ */
22
+ import type { SessionCatalog } from "./cms.js";
23
+ import type { ArtifactStore } from "./session-store.js";
24
+ export interface RegenArchiveInput {
25
+ sessionId: string;
26
+ epoch: number;
27
+ attemptId: string;
28
+ }
29
+ export interface RegenArchiveResult {
30
+ archiveArtifactId: string;
31
+ turnsArchived: number;
32
+ compactionsArchived: number;
33
+ archiveMs: number;
34
+ }
35
+ export interface RegenDistillInput {
36
+ sessionId: string;
37
+ epoch: number;
38
+ attemptId: string;
39
+ /** Untrusted, length-capped freeform handoff from the requester. */
40
+ handoff?: string;
41
+ /** Untrusted distilling instructions (HOW to distill), length-capped. */
42
+ instructions?: string;
43
+ /** Session's own model ref (default distiller model — capability parity). */
44
+ sessionModel?: string;
45
+ /** Per-call override (operator) or deployment distillerModel config. */
46
+ distillerModel?: string;
47
+ archiveArtifactId?: string;
48
+ }
49
+ export interface RegenDistillResult {
50
+ packageArtifactId: string;
51
+ bootstrap: string;
52
+ distillMs: number;
53
+ distillerModel: string;
54
+ packageBytes: number;
55
+ }
56
+ export interface RegenWorkerDeps {
57
+ catalog: SessionCatalog;
58
+ artifactStore: ArtifactStore | null;
59
+ /**
60
+ * Resolve a model ref to SDK session options ({model, provider} or
61
+ * {githubToken}). Ref undefined = the deployment default. Returns null
62
+ * when the ref doesn't resolve (dead model) — the caller falls back.
63
+ */
64
+ resolveModelOptions(ref?: string): {
65
+ model?: string;
66
+ provider?: unknown;
67
+ gitHubToken?: string;
68
+ } | null;
69
+ /** Deployment-configured fallback distiller model (mandatory per §9). */
70
+ fallbackDistillerModel?: string;
71
+ trace(message: string): void;
72
+ }
73
+ export declare function archiveName(epoch: number, attemptId: string): string;
74
+ export declare function packageName(epoch: number, attemptId: string): string;
75
+ /** Exact distiller input as sent — attempt-scoped dump artifact (§9 dumps). */
76
+ export declare function distillInputName(epoch: number, attemptId: string): string;
77
+ /** Raw pre-parse distiller output — attempt-scoped dump artifact (§9 dumps). */
78
+ export declare function distillOutputName(epoch: number, attemptId: string): string;
79
+ export declare function artifactExists(store: ArtifactStore, sessionId: string, filename: string): Promise<boolean>;
80
+ export declare function runRegenArchive(deps: RegenWorkerDeps, input: RegenArchiveInput): Promise<RegenArchiveResult>;
81
+ export interface ResumePackage {
82
+ version: number;
83
+ mission: string;
84
+ standingInstructions: string[];
85
+ currentState: string;
86
+ workingSet: string[];
87
+ commitments: string[];
88
+ childRoster: Array<{
89
+ id: string;
90
+ role?: string;
91
+ status?: string;
92
+ }>;
93
+ factsMap: string[];
94
+ artifactsMap: Array<{
95
+ id: string;
96
+ what?: string;
97
+ }>;
98
+ workspaceMap: Array<{
99
+ path: string;
100
+ what?: string;
101
+ recreate?: string;
102
+ }>;
103
+ pitfalls: string[];
104
+ openQuestions: string[];
105
+ recentTail: string;
106
+ /**
107
+ * Requester's distilling instructions, embedded verbatim when the
108
+ * DETERMINISTIC path ran (no LLM to honor them) so the reborn agent still
109
+ * sees them. LLM distillations honor them in-prompt instead.
110
+ */
111
+ requesterInstructions?: string;
112
+ }
113
+ /** Render the bootstrap the reborn session wakes to. Verified pointers, quoted summaries. */
114
+ export declare function renderBootstrap(pkg: ResumePackage, meta: {
115
+ epoch: number;
116
+ archiveArtifactId?: string;
117
+ packageArtifactId: string;
118
+ }): string;
119
+ /**
120
+ * Control-plane closure for a distillation: verbatim transcript tail plus
121
+ * live pointers (child roster, artifact list). Shared by the deterministic
122
+ * package and the service-session distiller's seed prompt.
123
+ */
124
+ export interface RegenClosure {
125
+ tail: string;
126
+ firstUserMessage: string | null;
127
+ childRoster: Array<{
128
+ id: string;
129
+ status?: string;
130
+ }>;
131
+ artifactNames: string[];
132
+ }
133
+ export declare function assembleRegenClosure(deps: Pick<RegenWorkerDeps, "catalog" | "artifactStore">, sessionId: string): Promise<RegenClosure>;
134
+ /**
135
+ * Deterministic package from the closure alone (no LLM). The guaranteed
136
+ * floor: what the reborn session boots from if the distiller model is
137
+ * unavailable, hangs, or returns junk — a degraded-but-real resume package
138
+ * always beats blocking the regeneration that exists to escape a broken
139
+ * transcript. Requester instructions are embedded verbatim (§9) since no
140
+ * LLM ran to honor them.
141
+ */
142
+ export declare function deterministicPackage(closure: RegenClosure, opts?: {
143
+ instructions?: string;
144
+ }): ResumePackage;
145
+ /** Parse + schema-normalize a distiller's raw response (throws on junk). */
146
+ export declare function parseDistillerResponse(text: string): ResumePackage;
147
+ export declare function runRegenDistill(deps: RegenWorkerDeps, input: RegenDistillInput): Promise<RegenDistillResult>;
148
+ /**
149
+ * System message for the regen-distiller service session. The session is
150
+ * read-only machinery: one seed prompt in, one ResumePackage JSON out.
151
+ */
152
+ export declare const DISTILLER_SYSTEM_MESSAGE: string;
153
+ /**
154
+ * Seed prompt for the service-session distiller: page the WHOLE archived
155
+ * transcript via read_transcript_page (map), then emit the ResumePackage
156
+ * JSON (reduce). Untrusted inputs ride in explicit fences.
157
+ */
158
+ export declare function buildMapReduceSeedPrompt(args: {
159
+ servedSessionId: string;
160
+ epoch: number;
161
+ attemptId: string;
162
+ archiveArtifactId: string;
163
+ closure: RegenClosure;
164
+ handoff?: string;
165
+ instructions?: string;
166
+ }, nonce?: string): string;
167
+ //# sourceMappingURL=regen-worker.d.ts.map