@duetso/agent 0.2.6 → 0.3.1

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 (221) hide show
  1. package/README.md +29 -16
  2. package/dist/package.json +8 -3
  3. package/dist/src/cli/auto-upgrade.d.ts.map +1 -1
  4. package/dist/src/cli/auto-upgrade.js +7 -54
  5. package/dist/src/cli/auto-upgrade.js.map +1 -1
  6. package/dist/src/cli/connect.d.ts +45 -0
  7. package/dist/src/cli/connect.d.ts.map +1 -0
  8. package/dist/src/cli/connect.js +265 -0
  9. package/dist/src/cli/connect.js.map +1 -0
  10. package/dist/src/cli/help.d.ts +1 -0
  11. package/dist/src/cli/help.d.ts.map +1 -1
  12. package/dist/src/cli/help.js +66 -32
  13. package/dist/src/cli/help.js.map +1 -1
  14. package/dist/src/cli/memory-add.d.ts +18 -13
  15. package/dist/src/cli/memory-add.d.ts.map +1 -1
  16. package/dist/src/cli/memory-add.js +91 -32
  17. package/dist/src/cli/memory-add.js.map +1 -1
  18. package/dist/src/cli/memory-recall.d.ts.map +1 -1
  19. package/dist/src/cli/memory-recall.js +3 -0
  20. package/dist/src/cli/memory-recall.js.map +1 -1
  21. package/dist/src/cli/memory-sources.d.ts +20 -0
  22. package/dist/src/cli/memory-sources.d.ts.map +1 -0
  23. package/dist/src/cli/memory-sources.js +40 -0
  24. package/dist/src/cli/memory-sources.js.map +1 -0
  25. package/dist/src/cli/model.d.ts +5 -0
  26. package/dist/src/cli/model.d.ts.map +1 -1
  27. package/dist/src/cli/model.js +43 -0
  28. package/dist/src/cli/model.js.map +1 -1
  29. package/dist/src/cli/route.d.ts +12 -0
  30. package/dist/src/cli/route.d.ts.map +1 -1
  31. package/dist/src/cli/route.js +39 -9
  32. package/dist/src/cli/route.js.map +1 -1
  33. package/dist/src/cli/rpc.d.ts +3 -2
  34. package/dist/src/cli/rpc.d.ts.map +1 -1
  35. package/dist/src/cli/rpc.js +3 -2
  36. package/dist/src/cli/rpc.js.map +1 -1
  37. package/dist/src/cli/run.d.ts +1 -0
  38. package/dist/src/cli/run.d.ts.map +1 -1
  39. package/dist/src/cli/run.js +1 -0
  40. package/dist/src/cli/run.js.map +1 -1
  41. package/dist/src/cli/shared.d.ts +11 -0
  42. package/dist/src/cli/shared.d.ts.map +1 -1
  43. package/dist/src/cli/shared.js +31 -0
  44. package/dist/src/cli/shared.js.map +1 -1
  45. package/dist/src/cli/train.d.ts +31 -7
  46. package/dist/src/cli/train.d.ts.map +1 -1
  47. package/dist/src/cli/train.js +233 -79
  48. package/dist/src/cli/train.js.map +1 -1
  49. package/dist/src/cli.d.ts +3 -1
  50. package/dist/src/cli.d.ts.map +1 -1
  51. package/dist/src/cli.js +9 -1
  52. package/dist/src/cli.js.map +1 -1
  53. package/dist/src/connected-providers/billing.d.ts +6 -0
  54. package/dist/src/connected-providers/billing.d.ts.map +1 -0
  55. package/dist/src/connected-providers/billing.js +11 -0
  56. package/dist/src/connected-providers/billing.js.map +1 -0
  57. package/dist/src/connected-providers/capability-probe.d.ts +17 -0
  58. package/dist/src/connected-providers/capability-probe.d.ts.map +1 -0
  59. package/dist/src/connected-providers/capability-probe.js +92 -0
  60. package/dist/src/connected-providers/capability-probe.js.map +1 -0
  61. package/dist/src/connected-providers/fake-issuer.d.ts +61 -0
  62. package/dist/src/connected-providers/fake-issuer.d.ts.map +1 -0
  63. package/dist/src/connected-providers/fake-issuer.js +161 -0
  64. package/dist/src/connected-providers/fake-issuer.js.map +1 -0
  65. package/dist/src/connected-providers/fallback-notice.d.ts +11 -0
  66. package/dist/src/connected-providers/fallback-notice.d.ts.map +1 -0
  67. package/dist/src/connected-providers/fallback-notice.js +20 -0
  68. package/dist/src/connected-providers/fallback-notice.js.map +1 -0
  69. package/dist/src/connected-providers/fallback.d.ts +11 -0
  70. package/dist/src/connected-providers/fallback.d.ts.map +1 -0
  71. package/dist/src/connected-providers/fallback.js +37 -0
  72. package/dist/src/connected-providers/fallback.js.map +1 -0
  73. package/dist/src/connected-providers/refresh.d.ts +12 -0
  74. package/dist/src/connected-providers/refresh.d.ts.map +1 -0
  75. package/dist/src/connected-providers/refresh.js +72 -0
  76. package/dist/src/connected-providers/refresh.js.map +1 -0
  77. package/dist/src/connected-providers/registry.d.ts +17 -0
  78. package/dist/src/connected-providers/registry.d.ts.map +1 -0
  79. package/dist/src/connected-providers/registry.js +30 -0
  80. package/dist/src/connected-providers/registry.js.map +1 -0
  81. package/dist/src/connected-providers/store.d.ts +41 -0
  82. package/dist/src/connected-providers/store.d.ts.map +1 -0
  83. package/dist/src/connected-providers/store.js +145 -0
  84. package/dist/src/connected-providers/store.js.map +1 -0
  85. package/dist/src/connected-providers/tokens.d.ts +42 -0
  86. package/dist/src/connected-providers/tokens.d.ts.map +1 -0
  87. package/dist/src/connected-providers/tokens.js +148 -0
  88. package/dist/src/connected-providers/tokens.js.map +1 -0
  89. package/dist/src/connected-providers/transport-preference.d.ts +26 -0
  90. package/dist/src/connected-providers/transport-preference.d.ts.map +1 -0
  91. package/dist/src/connected-providers/transport-preference.js +42 -0
  92. package/dist/src/connected-providers/transport-preference.js.map +1 -0
  93. package/dist/src/core/structured-output.d.ts.map +1 -1
  94. package/dist/src/core/structured-output.js +2 -1
  95. package/dist/src/core/structured-output.js.map +1 -1
  96. package/dist/src/file-lock.d.ts +22 -0
  97. package/dist/src/file-lock.d.ts.map +1 -0
  98. package/dist/src/file-lock.js +69 -0
  99. package/dist/src/file-lock.js.map +1 -0
  100. package/dist/src/memory/context-pack.d.ts +5 -0
  101. package/dist/src/memory/context-pack.d.ts.map +1 -1
  102. package/dist/src/memory/context-pack.js +6 -0
  103. package/dist/src/memory/context-pack.js.map +1 -1
  104. package/dist/src/memory/id.d.ts +3 -0
  105. package/dist/src/memory/id.d.ts.map +1 -0
  106. package/dist/src/memory/id.js +6 -0
  107. package/dist/src/memory/id.js.map +1 -0
  108. package/dist/src/memory/observational-prompts.d.ts +2 -0
  109. package/dist/src/memory/observational-prompts.d.ts.map +1 -1
  110. package/dist/src/memory/observational-prompts.js +4 -2
  111. package/dist/src/memory/observational-prompts.js.map +1 -1
  112. package/dist/src/memory/observational.d.ts +22 -0
  113. package/dist/src/memory/observational.d.ts.map +1 -1
  114. package/dist/src/memory/observational.js +65 -22
  115. package/dist/src/memory/observational.js.map +1 -1
  116. package/dist/src/memory/paths.d.ts +9 -0
  117. package/dist/src/memory/paths.d.ts.map +1 -0
  118. package/dist/src/memory/paths.js +11 -0
  119. package/dist/src/memory/paths.js.map +1 -0
  120. package/dist/src/memory/storage.d.ts.map +1 -1
  121. package/dist/src/memory/storage.js +1 -4
  122. package/dist/src/memory/storage.js.map +1 -1
  123. package/dist/src/memory/store/discovery.d.ts +7 -0
  124. package/dist/src/memory/store/discovery.d.ts.map +1 -0
  125. package/dist/src/memory/store/discovery.js +34 -0
  126. package/dist/src/memory/store/discovery.js.map +1 -0
  127. package/dist/src/memory/store/file.d.ts +52 -0
  128. package/dist/src/memory/store/file.d.ts.map +1 -0
  129. package/dist/src/memory/store/file.js +287 -0
  130. package/dist/src/memory/store/file.js.map +1 -0
  131. package/dist/src/memory/store/index.d.ts +5 -0
  132. package/dist/src/memory/store/index.d.ts.map +1 -0
  133. package/dist/src/memory/store/index.js +5 -0
  134. package/dist/src/memory/store/index.js.map +1 -0
  135. package/dist/src/memory/store/pack.d.ts +25 -0
  136. package/dist/src/memory/store/pack.d.ts.map +1 -0
  137. package/dist/src/memory/store/pack.js +71 -0
  138. package/dist/src/memory/store/pack.js.map +1 -0
  139. package/dist/src/memory/store/sources.d.ts +55 -0
  140. package/dist/src/memory/store/sources.d.ts.map +1 -0
  141. package/dist/src/memory/store/sources.js +85 -0
  142. package/dist/src/memory/store/sources.js.map +1 -0
  143. package/dist/src/memory/store/store.d.ts +46 -0
  144. package/dist/src/memory/store/store.d.ts.map +1 -0
  145. package/dist/src/memory/store/store.js +171 -0
  146. package/dist/src/memory/store/store.js.map +1 -0
  147. package/dist/src/memory/store.d.ts +19 -16
  148. package/dist/src/memory/store.d.ts.map +1 -1
  149. package/dist/src/memory/store.js +14 -11
  150. package/dist/src/memory/store.js.map +1 -1
  151. package/dist/src/memory-store.js +554 -0
  152. package/dist/src/model-resolution/catalog.d.ts +24 -10
  153. package/dist/src/model-resolution/catalog.d.ts.map +1 -1
  154. package/dist/src/model-resolution/catalog.js +61 -36
  155. package/dist/src/model-resolution/catalog.js.map +1 -1
  156. package/dist/src/model-resolution/duet-gateway.d.ts +2 -0
  157. package/dist/src/model-resolution/duet-gateway.d.ts.map +1 -1
  158. package/dist/src/model-resolution/duet-gateway.js +57 -4
  159. package/dist/src/model-resolution/duet-gateway.js.map +1 -1
  160. package/dist/src/model-resolution/resolver.d.ts +17 -0
  161. package/dist/src/model-resolution/resolver.d.ts.map +1 -1
  162. package/dist/src/model-resolution/resolver.js +49 -4
  163. package/dist/src/model-resolution/resolver.js.map +1 -1
  164. package/dist/src/model-routing/advisor-context.d.ts +31 -5
  165. package/dist/src/model-routing/advisor-context.d.ts.map +1 -1
  166. package/dist/src/model-routing/advisor-context.js +87 -10
  167. package/dist/src/model-routing/advisor-context.js.map +1 -1
  168. package/dist/src/model-routing/advisor-lifecycle.d.ts +14 -5
  169. package/dist/src/model-routing/advisor-lifecycle.d.ts.map +1 -1
  170. package/dist/src/model-routing/advisor-lifecycle.js +24 -7
  171. package/dist/src/model-routing/advisor-lifecycle.js.map +1 -1
  172. package/dist/src/model-routing/prompts.d.ts.map +1 -1
  173. package/dist/src/model-routing/prompts.js +18 -10
  174. package/dist/src/model-routing/prompts.js.map +1 -1
  175. package/dist/src/model-routing/table.js +18 -18
  176. package/dist/src/model-routing/table.js.map +1 -1
  177. package/dist/src/session/session-manager.d.ts +1 -4
  178. package/dist/src/session/session-manager.d.ts.map +1 -1
  179. package/dist/src/session/session-manager.js +2 -5
  180. package/dist/src/session/session-manager.js.map +1 -1
  181. package/dist/src/session/session.d.ts +2 -2
  182. package/dist/src/session/session.d.ts.map +1 -1
  183. package/dist/src/session/session.js +10 -7
  184. package/dist/src/session/session.js.map +1 -1
  185. package/dist/src/train/archive.d.ts.map +1 -1
  186. package/dist/src/train/archive.js +5 -0
  187. package/dist/src/train/archive.js.map +1 -1
  188. package/dist/src/train/types.d.ts +8 -7
  189. package/dist/src/train/types.d.ts.map +1 -1
  190. package/dist/src/tui/sidebar.d.ts.map +1 -1
  191. package/dist/src/tui/sidebar.js +40 -1
  192. package/dist/src/tui/sidebar.js.map +1 -1
  193. package/dist/src/turn-runner/agent-events.d.ts +2 -0
  194. package/dist/src/turn-runner/agent-events.d.ts.map +1 -1
  195. package/dist/src/turn-runner/agent-events.js +11 -0
  196. package/dist/src/turn-runner/agent-events.js.map +1 -1
  197. package/dist/src/turn-runner/subagent.d.ts +4 -1
  198. package/dist/src/turn-runner/subagent.d.ts.map +1 -1
  199. package/dist/src/turn-runner/subagent.js +11 -3
  200. package/dist/src/turn-runner/subagent.js.map +1 -1
  201. package/dist/src/turn-runner/tools.d.ts +3 -3
  202. package/dist/src/turn-runner/tools.d.ts.map +1 -1
  203. package/dist/src/turn-runner/tools.js +1 -1
  204. package/dist/src/turn-runner/tools.js.map +1 -1
  205. package/dist/src/turn-runner/turn-runner.d.ts +19 -3
  206. package/dist/src/turn-runner/turn-runner.d.ts.map +1 -1
  207. package/dist/src/turn-runner/turn-runner.js +162 -33
  208. package/dist/src/turn-runner/turn-runner.js.map +1 -1
  209. package/dist/src/turn-runner/usage-accounting.d.ts +5 -2
  210. package/dist/src/turn-runner/usage-accounting.d.ts.map +1 -1
  211. package/dist/src/turn-runner/usage-accounting.js +18 -6
  212. package/dist/src/turn-runner/usage-accounting.js.map +1 -1
  213. package/dist/src/turn-runner/wire-shaping.d.ts +3 -1
  214. package/dist/src/turn-runner/wire-shaping.d.ts.map +1 -1
  215. package/dist/src/turn-runner/wire-shaping.js +5 -1
  216. package/dist/src/turn-runner/wire-shaping.js.map +1 -1
  217. package/dist/src/types/config.d.ts +7 -0
  218. package/dist/src/types/config.d.ts.map +1 -1
  219. package/dist/src/types/protocol.d.ts +13 -5
  220. package/dist/src/types/protocol.d.ts.map +1 -1
  221. package/package.json +8 -3
@@ -1,5 +1,19 @@
1
1
  import type { ImageContent, Message, Tool } from "@earendil-works/pi-ai";
2
2
  import type { AgentMessage, AgentState } from "@earendil-works/pi-agent-core";
3
+ /**
4
+ * Soft total-input target above which the consultation pipeline compacts older
5
+ * work into observations. Paid repeated-run telemetry showed that forwarding
6
+ * larger raw transcripts costs the advisor more than it saves the observer.
7
+ * The hard model window remains the final safety ceiling.
8
+ */
9
+ export declare const ADVISOR_INPUT_TARGET_TOKENS = 32000;
10
+ /**
11
+ * Recent raw executor-message allowance kept beside compacted observations.
12
+ * The newest complete tool interaction remains protected even when it exceeds
13
+ * this target, so the allowance buys ordinary continuity without clipping the
14
+ * evidence the advisor was called to inspect.
15
+ */
16
+ export declare const ADVISOR_RECENT_MESSAGE_TARGET_TOKENS = 8000;
3
17
  /** Minimal live-agent surface needed to capture the executor request faithfully. */
4
18
  export interface AdvisorContextSource {
5
19
  /** Current prompt, transcript, tools, and any partial assistant message. */
@@ -15,6 +29,13 @@ export interface AdvisorExecutorContext {
15
29
  messages: readonly Message[];
16
30
  /** Exact tool definitions available to the executor for the current turn. */
17
31
  tools: readonly Tool[];
32
+ /** Raw executor messages represented by observational context instead of repeated verbatim. */
33
+ compactedMessages?: number;
34
+ }
35
+ /** Optional advisor-only projection applied before conversion to provider messages. */
36
+ export interface CaptureAdvisorContextOptions {
37
+ /** Replaces older history with normal observational context and a recent raw tail. */
38
+ transformMessages: (messages: AgentMessage[]) => Promise<AgentMessage[]>;
18
39
  }
19
40
  /** Inputs for fitting the executor context into the advisor model's real request window. */
20
41
  export interface BuildAdvisorContextInput {
@@ -35,10 +56,14 @@ export interface AdvisorContextMetadata {
35
56
  safetyMarginTokens: number;
36
57
  /** Maximum estimated tokens available to the quoted executor context. */
37
58
  inputLimitTokens: number;
59
+ /** Preferred total advisor input; the hard model limit remains a safety ceiling. */
60
+ inputTargetTokens: number;
38
61
  /** Heuristic token estimate including the shared coarse per-image charge. */
39
62
  estimatedInputTokens: number;
40
63
  /** Number of executor messages included in the serialized context. */
41
64
  includedMessages: number;
65
+ /** Raw executor messages represented by observational context rather than copied verbatim. */
66
+ compactedMessages: number;
42
67
  /** Number of older executor messages omitted at whole-message boundaries. */
43
68
  omittedMessages: number;
44
69
  /** True only when the advisor model's real window forced message omission. */
@@ -60,12 +85,13 @@ export interface AdvisorContext {
60
85
  * Tool execution normally starts after the assistant message is finalized; the
61
86
  * streaming fallback also preserves a partial turn for callers at other phases.
62
87
  */
63
- export declare function captureAdvisorExecutorContext(source: AdvisorContextSource): Promise<AdvisorExecutorContext>;
88
+ export declare function captureAdvisorExecutorContext(source: AdvisorContextSource, options?: CaptureAdvisorContextOptions): Promise<AdvisorExecutorContext>;
64
89
  /**
65
- * Serialize the actual executor context without observer projection. When the
66
- * advisor model cannot fit it, remove only the oldest complete messages; tool
67
- * definitions, the resolved system prompt, and retained message structures
68
- * remain intact. Image bytes travel as matching multimodal attachments.
90
+ * Serialize the captured raw or observationally compacted executor context.
91
+ * When the advisor's hard model window still cannot fit it, remove only the
92
+ * oldest complete messages; tool definitions, the resolved system prompt, and
93
+ * retained message structures remain intact. Image bytes travel as matching
94
+ * multimodal attachments.
69
95
  */
70
96
  export declare function buildAdvisorContext(input: BuildAdvisorContextInput): AdvisorContext;
71
97
  //# sourceMappingURL=advisor-context.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"advisor-context.d.ts","sourceRoot":"","sources":["../../../src/model-routing/advisor-context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAW,YAAY,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,uBAAuB,CAAC;AAClF,OAAO,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAQ9E,oFAAoF;AACpF,MAAM,WAAW,oBAAoB;IACnC,4EAA4E;IAC5E,KAAK,EAAE,IAAI,CAAC,UAAU,EAAE,cAAc,GAAG,UAAU,GAAG,OAAO,GAAG,kBAAkB,CAAC,CAAC;IACpF,8EAA8E;IAC9E,YAAY,EAAE,CAAC,QAAQ,EAAE,YAAY,EAAE,KAAK,OAAO,EAAE,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;CAC5E;AAED,mEAAmE;AACnE,MAAM,WAAW,sBAAsB;IACrC,yDAAyD;IACzD,YAAY,EAAE,MAAM,CAAC;IACrB,mFAAmF;IACnF,QAAQ,EAAE,SAAS,OAAO,EAAE,CAAC;IAC7B,6EAA6E;IAC7E,KAAK,EAAE,SAAS,IAAI,EAAE,CAAC;CACxB;AAED,4FAA4F;AAC5F,MAAM,WAAW,wBAAwB;IACvC,2EAA2E;IAC3E,OAAO,EAAE,sBAAsB,CAAC;IAChC,oEAAoE;IACpE,mBAAmB,EAAE,MAAM,CAAC;IAC5B,oFAAoF;IACpF,oBAAoB,EAAE,MAAM,CAAC;CAC9B;AAED,wEAAwE;AACxE,MAAM,WAAW,sBAAsB;IACrC,mEAAmE;IACnE,mBAAmB,EAAE,MAAM,CAAC;IAC5B,qEAAqE;IACrE,oBAAoB,EAAE,MAAM,CAAC;IAC7B,0FAA0F;IAC1F,kBAAkB,EAAE,MAAM,CAAC;IAC3B,yEAAyE;IACzE,gBAAgB,EAAE,MAAM,CAAC;IACzB,6EAA6E;IAC7E,oBAAoB,EAAE,MAAM,CAAC;IAC7B,sEAAsE;IACtE,gBAAgB,EAAE,MAAM,CAAC;IACzB,6EAA6E;IAC7E,eAAe,EAAE,MAAM,CAAC;IACxB,8EAA8E;IAC9E,SAAS,EAAE,OAAO,CAAC;IACnB,mFAAmF;IACnF,cAAc,EAAE,MAAM,CAAC;CACxB;AAED,+DAA+D;AAC/D,MAAM,WAAW,cAAc;IAC7B,uEAAuE;IACvE,IAAI,EAAE,MAAM,CAAC;IACb,iFAAiF;IACjF,MAAM,EAAE,SAAS,YAAY,EAAE,CAAC;IAChC,sEAAsE;IACtE,QAAQ,EAAE,sBAAsB,CAAC;CAClC;AAED;;;;GAIG;AACH,wBAAsB,6BAA6B,CACjD,MAAM,EAAE,oBAAoB,GAC3B,OAAO,CAAC,sBAAsB,CAAC,CAejC;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,wBAAwB,GAAG,cAAc,CAoDnF"}
1
+ {"version":3,"file":"advisor-context.d.ts","sourceRoot":"","sources":["../../../src/model-routing/advisor-context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,uBAAuB,CAAC;AACzE,OAAO,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAQ9E;;;;;GAKG;AACH,eAAO,MAAM,2BAA2B,QAAS,CAAC;AAElD;;;;;GAKG;AACH,eAAO,MAAM,oCAAoC,OAAQ,CAAC;AAE1D,oFAAoF;AACpF,MAAM,WAAW,oBAAoB;IACnC,4EAA4E;IAC5E,KAAK,EAAE,IAAI,CAAC,UAAU,EAAE,cAAc,GAAG,UAAU,GAAG,OAAO,GAAG,kBAAkB,CAAC,CAAC;IACpF,8EAA8E;IAC9E,YAAY,EAAE,CAAC,QAAQ,EAAE,YAAY,EAAE,KAAK,OAAO,EAAE,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;CAC5E;AAED,mEAAmE;AACnE,MAAM,WAAW,sBAAsB;IACrC,yDAAyD;IACzD,YAAY,EAAE,MAAM,CAAC;IACrB,mFAAmF;IACnF,QAAQ,EAAE,SAAS,OAAO,EAAE,CAAC;IAC7B,6EAA6E;IAC7E,KAAK,EAAE,SAAS,IAAI,EAAE,CAAC;IACvB,+FAA+F;IAC/F,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,uFAAuF;AACvF,MAAM,WAAW,4BAA4B;IAC3C,sFAAsF;IACtF,iBAAiB,EAAE,CAAC,QAAQ,EAAE,YAAY,EAAE,KAAK,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;CAC1E;AAED,4FAA4F;AAC5F,MAAM,WAAW,wBAAwB;IACvC,2EAA2E;IAC3E,OAAO,EAAE,sBAAsB,CAAC;IAChC,oEAAoE;IACpE,mBAAmB,EAAE,MAAM,CAAC;IAC5B,oFAAoF;IACpF,oBAAoB,EAAE,MAAM,CAAC;CAC9B;AAED,wEAAwE;AACxE,MAAM,WAAW,sBAAsB;IACrC,mEAAmE;IACnE,mBAAmB,EAAE,MAAM,CAAC;IAC5B,qEAAqE;IACrE,oBAAoB,EAAE,MAAM,CAAC;IAC7B,0FAA0F;IAC1F,kBAAkB,EAAE,MAAM,CAAC;IAC3B,yEAAyE;IACzE,gBAAgB,EAAE,MAAM,CAAC;IACzB,oFAAoF;IACpF,iBAAiB,EAAE,MAAM,CAAC;IAC1B,6EAA6E;IAC7E,oBAAoB,EAAE,MAAM,CAAC;IAC7B,sEAAsE;IACtE,gBAAgB,EAAE,MAAM,CAAC;IACzB,8FAA8F;IAC9F,iBAAiB,EAAE,MAAM,CAAC;IAC1B,6EAA6E;IAC7E,eAAe,EAAE,MAAM,CAAC;IACxB,8EAA8E;IAC9E,SAAS,EAAE,OAAO,CAAC;IACnB,mFAAmF;IACnF,cAAc,EAAE,MAAM,CAAC;CACxB;AAED,+DAA+D;AAC/D,MAAM,WAAW,cAAc;IAC7B,uEAAuE;IACvE,IAAI,EAAE,MAAM,CAAC;IACb,iFAAiF;IACjF,MAAM,EAAE,SAAS,YAAY,EAAE,CAAC;IAChC,sEAAsE;IACtE,QAAQ,EAAE,sBAAsB,CAAC;CAClC;AAED;;;;GAIG;AACH,wBAAsB,6BAA6B,CACjD,MAAM,EAAE,oBAAoB,EAC5B,OAAO,CAAC,EAAE,4BAA4B,GACrC,OAAO,CAAC,sBAAsB,CAAC,CAwBjC;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,wBAAwB,GAAG,cAAc,CA6DnF"}
@@ -3,32 +3,54 @@ import { IMAGE_WIRE_TOKEN_ESTIMATE } from "../turn-runner/wire-shaping.js";
3
3
  import { ADVISOR_SYSTEM_PROMPT } from "./prompts.js";
4
4
  const CONTEXT_OPEN = "<executor_context>";
5
5
  const CONTEXT_CLOSE = "</executor_context>";
6
+ /**
7
+ * Soft total-input target above which the consultation pipeline compacts older
8
+ * work into observations. Paid repeated-run telemetry showed that forwarding
9
+ * larger raw transcripts costs the advisor more than it saves the observer.
10
+ * The hard model window remains the final safety ceiling.
11
+ */
12
+ export const ADVISOR_INPUT_TARGET_TOKENS = 32_000;
13
+ /**
14
+ * Recent raw executor-message allowance kept beside compacted observations.
15
+ * The newest complete tool interaction remains protected even when it exceeds
16
+ * this target, so the allowance buys ordinary continuity without clipping the
17
+ * evidence the advisor was called to inspect.
18
+ */
19
+ export const ADVISOR_RECENT_MESSAGE_TARGET_TOKENS = 8_000;
6
20
  /**
7
21
  * Capture one live agent context for both production calls and CLI previews.
8
22
  * Tool execution normally starts after the assistant message is finalized; the
9
23
  * streaming fallback also preserves a partial turn for callers at other phases.
10
24
  */
11
- export async function captureAdvisorExecutorContext(source) {
25
+ export async function captureAdvisorExecutorContext(source, options) {
12
26
  const messages = [...source.state.messages];
13
27
  const streamingMessage = source.state.streamingMessage;
14
28
  if (streamingMessage && messages.at(-1) !== streamingMessage) {
15
29
  messages.push(streamingMessage);
16
30
  }
31
+ let selectedMessages = options ? await options.transformMessages(messages) : messages;
32
+ const firstUserMessage = messages.find((message) => message.role === "user");
33
+ if (firstUserMessage && !selectedMessages.includes(firstUserMessage)) {
34
+ selectedMessages = [firstUserMessage, ...selectedMessages];
35
+ }
36
+ const compactedMessages = messages.filter((message) => !selectedMessages.includes(message)).length;
17
37
  return {
18
38
  systemPrompt: source.state.systemPrompt,
19
- messages: await source.convertToLlm(messages),
39
+ messages: await source.convertToLlm(selectedMessages),
20
40
  tools: source.state.tools.map(({ name, description, parameters }) => ({
21
41
  name,
22
42
  description,
23
43
  parameters,
24
44
  })),
45
+ compactedMessages,
25
46
  };
26
47
  }
27
48
  /**
28
- * Serialize the actual executor context without observer projection. When the
29
- * advisor model cannot fit it, remove only the oldest complete messages; tool
30
- * definitions, the resolved system prompt, and retained message structures
31
- * remain intact. Image bytes travel as matching multimodal attachments.
49
+ * Serialize the captured raw or observationally compacted executor context.
50
+ * When the advisor's hard model window still cannot fit it, remove only the
51
+ * oldest complete messages; tool definitions, the resolved system prompt, and
52
+ * retained message structures remain intact. Image bytes travel as matching
53
+ * multimodal attachments.
32
54
  */
33
55
  export function buildAdvisorContext(input) {
34
56
  const contextWindowTokens = positiveInteger(input.contextWindowTokens);
@@ -37,7 +59,7 @@ export function buildAdvisorContext(input) {
37
59
  const advisorSystemTokens = estimateContextTokens(ADVISOR_SYSTEM_PROMPT);
38
60
  const inputLimitTokens = Math.max(1, contextWindowTokens - reservedOutputTokens - safetyMarginTokens - advisorSystemTokens);
39
61
  let messages = [...input.context.messages];
40
- let serialized = serializeContext(input.context.systemPrompt, input.context.tools, messages, 0);
62
+ let serialized = serializeContext(input.context.systemPrompt, input.context.tools, messages, input.context.compactedMessages ?? 0, 0);
41
63
  const firstUserMessage = messages.find((message) => message.role === "user");
42
64
  while (messages.length > (firstUserMessage ? 1 : 0) &&
43
65
  estimateSerializedTokens(serialized) > inputLimitTokens) {
@@ -45,7 +67,7 @@ export function buildAdvisorContext(input) {
45
67
  if (removableIndex < 0)
46
68
  break;
47
69
  messages = [...messages.slice(0, removableIndex), ...messages.slice(removableIndex + 1)];
48
- serialized = serializeContext(input.context.systemPrompt, input.context.tools, messages, input.context.messages.length - messages.length);
70
+ serialized = serializeContext(input.context.systemPrompt, input.context.tools, messages, input.context.compactedMessages ?? 0, input.context.messages.length - messages.length);
49
71
  }
50
72
  if (estimateSerializedTokens(serialized) > inputLimitTokens) {
51
73
  throw new Error("Advisor context window is too small for the pinned task, system prompt, and tool definitions.");
@@ -59,22 +81,25 @@ export function buildAdvisorContext(input) {
59
81
  reservedOutputTokens,
60
82
  safetyMarginTokens,
61
83
  inputLimitTokens,
84
+ inputTargetTokens: Math.min(ADVISOR_INPUT_TARGET_TOKENS, inputLimitTokens),
62
85
  estimatedInputTokens: advisorSystemTokens + estimateSerializedTokens(serialized),
63
86
  includedMessages: messages.length,
87
+ compactedMessages: input.context.compactedMessages ?? 0,
64
88
  omittedMessages,
65
89
  truncated: omittedMessages > 0,
66
90
  attachedImages: serialized.images.length,
67
91
  },
68
92
  };
69
93
  }
70
- function serializeContext(systemPrompt, tools, messages, omittedMessages) {
94
+ function serializeContext(systemPrompt, tools, messages, compactedMessages, omittedMessages) {
71
95
  const context = {
72
96
  systemPrompt,
73
97
  tools: [...tools],
74
- messages: [...messages],
98
+ messages: messages.map(projectAdvisorWireMessage),
75
99
  };
76
100
  const images = [];
77
101
  const payload = {
102
+ compaction: { compactedMessages },
78
103
  truncation: { omittedMessages },
79
104
  executorContext: context,
80
105
  };
@@ -88,6 +113,58 @@ function serializeContext(systemPrompt, tools, messages, omittedMessages) {
88
113
  });
89
114
  return { text: `${CONTEXT_OPEN}\n${json}\n${CONTEXT_CLOSE}`, images };
90
115
  }
116
+ /**
117
+ * Project the executor's provider-neutral message into the fields that become
118
+ * model-visible request content. Pi keeps timestamps, provider identity,
119
+ * diagnostics, token accounting, and opaque replay signatures on messages so
120
+ * the runtime can resume and account for them; those fields are not transcript
121
+ * evidence and a different advisor model cannot replay the signatures. Visible
122
+ * reasoning, tool calls, complete tool-result content, and error state remain.
123
+ */
124
+ function projectAdvisorWireMessage(message) {
125
+ if (message.role === "user") {
126
+ return {
127
+ role: message.role,
128
+ content: typeof message.content === "string"
129
+ ? message.content
130
+ : message.content.map(projectAdvisorWireContent),
131
+ };
132
+ }
133
+ if (message.role === "toolResult") {
134
+ return {
135
+ role: message.role,
136
+ toolCallId: message.toolCallId,
137
+ toolName: message.toolName,
138
+ content: message.content.map(projectAdvisorWireContent),
139
+ isError: message.isError,
140
+ };
141
+ }
142
+ return {
143
+ role: message.role,
144
+ content: message.content.flatMap((block) => {
145
+ if (block.type === "text")
146
+ return [{ type: block.type, text: block.text }];
147
+ if (block.type === "thinking") {
148
+ if (block.redacted || block.thinking.trim().length === 0)
149
+ return [];
150
+ return [{ type: block.type, thinking: block.thinking }];
151
+ }
152
+ return [
153
+ {
154
+ type: block.type,
155
+ id: block.id,
156
+ name: block.name,
157
+ arguments: block.arguments,
158
+ },
159
+ ];
160
+ }),
161
+ };
162
+ }
163
+ function projectAdvisorWireContent(content) {
164
+ return content.type === "text"
165
+ ? { type: content.type, text: content.text }
166
+ : { type: content.type, data: content.data, mimeType: content.mimeType };
167
+ }
91
168
  function isImageContent(value) {
92
169
  if (!value || typeof value !== "object")
93
170
  return false;
@@ -1 +1 @@
1
- {"version":3,"file":"advisor-context.js","sourceRoot":"","sources":["../../../src/model-routing/advisor-context.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"advisor-context.js","sourceRoot":"","sources":["../../../src/model-routing/advisor-context.ts"],"names":[],"mappings":"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"}
@@ -1,25 +1,34 @@
1
1
  /**
2
2
  * Turn-local owner for the product's orientation and completion-review advisor checkpoints.
3
3
  * The runner reports completed parent steps, successful consultations, and executed tools; this
4
- * policy decides whether a one-shot checkpoint is due without changing the public protocol.
4
+ * policy decides whether a checkpoint is due without changing the public protocol.
5
5
  */
6
6
  export declare class AdvisorTurnLifecycle {
7
7
  private readonly startingAssistantStep;
8
8
  private orientationCheckpointSent;
9
9
  private completionCheckpointSent;
10
+ private completionCheckpointCanRearm;
11
+ private completionCheckpointRearmed;
10
12
  private lastSuccessfulConsultStep?;
11
13
  private substantiveWorkSinceLastConsult;
12
14
  constructor(startingAssistantStep: number);
13
15
  /** A successful call resets the evidence boundary used to recognize a final-state review. */
14
16
  noteSuccessfulConsult(step: number): void;
15
- /** Non-advisor tool execution means reality changed or was checked after the last review. */
17
+ /**
18
+ * Non-advisor tool execution means reality changed or was checked after the last review. It
19
+ * also re-arms a completion checkpoint that fired before the work was actually finished. An
20
+ * executor may legitimately stop after diagnosis, consult, then continue implementing; the
21
+ * later diff must still receive a final review. Only a checkpoint issued before any successful
22
+ * consultation can re-arm, and it can do so once: advisor-requested verification must not
23
+ * recursively create more mandatory reviews.
24
+ */
16
25
  noteExecutedTools(toolNames: readonly string[]): void;
17
26
  /** Take the one-shot orientation checkpoint once a turn proves itself substantive. */
18
27
  takeOrientationCheckpoint(assistantStep: number): boolean;
19
28
  /**
20
- * Take the one-shot completion checkpoint unless the last successful consultation already saw
21
- * all final evidence. Assistant prose after that call does not make the evidence stale; another
22
- * real tool execution does.
29
+ * Take the completion checkpoint unless the last successful consultation already saw all final
30
+ * evidence. Assistant prose after that call does not make the evidence stale; another real tool
31
+ * execution does.
23
32
  */
24
33
  takeCompletionCheckpoint(assistantStep: number): boolean;
25
34
  private isSubstantive;
@@ -1 +1 @@
1
- {"version":3,"file":"advisor-lifecycle.d.ts","sourceRoot":"","sources":["../../../src/model-routing/advisor-lifecycle.ts"],"names":[],"mappings":"AAOA;;;;GAIG;AACH,qBAAa,oBAAoB;IAMnB,OAAO,CAAC,QAAQ,CAAC,qBAAqB;IALlD,OAAO,CAAC,yBAAyB,CAAS;IAC1C,OAAO,CAAC,wBAAwB,CAAS;IACzC,OAAO,CAAC,yBAAyB,CAAC,CAAS;IAC3C,OAAO,CAAC,+BAA+B,CAAS;gBAEnB,qBAAqB,EAAE,MAAM;IAE1D,6FAA6F;IAC7F,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAKzC,6FAA6F;IAC7F,iBAAiB,CAAC,SAAS,EAAE,SAAS,MAAM,EAAE,GAAG,IAAI;IASrD,sFAAsF;IACtF,yBAAyB,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO;IAYzD;;;;OAIG;IACH,wBAAwB,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO;IAYxD,OAAO,CAAC,aAAa;CAGtB"}
1
+ {"version":3,"file":"advisor-lifecycle.d.ts","sourceRoot":"","sources":["../../../src/model-routing/advisor-lifecycle.ts"],"names":[],"mappings":"AAOA;;;;GAIG;AACH,qBAAa,oBAAoB;IAQnB,OAAO,CAAC,QAAQ,CAAC,qBAAqB;IAPlD,OAAO,CAAC,yBAAyB,CAAS;IAC1C,OAAO,CAAC,wBAAwB,CAAS;IACzC,OAAO,CAAC,4BAA4B,CAAS;IAC7C,OAAO,CAAC,2BAA2B,CAAS;IAC5C,OAAO,CAAC,yBAAyB,CAAC,CAAS;IAC3C,OAAO,CAAC,+BAA+B,CAAS;gBAEnB,qBAAqB,EAAE,MAAM;IAE1D,6FAA6F;IAC7F,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAKzC;;;;;;;OAOG;IACH,iBAAiB,CAAC,SAAS,EAAE,SAAS,MAAM,EAAE,GAAG,IAAI;IAYrD,sFAAsF;IACtF,yBAAyB,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO;IAYzD;;;;OAIG;IACH,wBAAwB,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO;IAcxD,OAAO,CAAC,aAAa;CAGtB"}
@@ -7,12 +7,14 @@ const SUBSTANTIVE_AGENT_STEP_THRESHOLD = 3;
7
7
  /**
8
8
  * Turn-local owner for the product's orientation and completion-review advisor checkpoints.
9
9
  * The runner reports completed parent steps, successful consultations, and executed tools; this
10
- * policy decides whether a one-shot checkpoint is due without changing the public protocol.
10
+ * policy decides whether a checkpoint is due without changing the public protocol.
11
11
  */
12
12
  export class AdvisorTurnLifecycle {
13
13
  startingAssistantStep;
14
14
  orientationCheckpointSent = false;
15
15
  completionCheckpointSent = false;
16
+ completionCheckpointCanRearm = false;
17
+ completionCheckpointRearmed = false;
16
18
  lastSuccessfulConsultStep;
17
19
  substantiveWorkSinceLastConsult = false;
18
20
  constructor(startingAssistantStep) {
@@ -23,10 +25,23 @@ export class AdvisorTurnLifecycle {
23
25
  this.lastSuccessfulConsultStep = step;
24
26
  this.substantiveWorkSinceLastConsult = false;
25
27
  }
26
- /** Non-advisor tool execution means reality changed or was checked after the last review. */
28
+ /**
29
+ * Non-advisor tool execution means reality changed or was checked after the last review. It
30
+ * also re-arms a completion checkpoint that fired before the work was actually finished. An
31
+ * executor may legitimately stop after diagnosis, consult, then continue implementing; the
32
+ * later diff must still receive a final review. Only a checkpoint issued before any successful
33
+ * consultation can re-arm, and it can do so once: advisor-requested verification must not
34
+ * recursively create more mandatory reviews.
35
+ */
27
36
  noteExecutedTools(toolNames) {
28
- if (this.lastSuccessfulConsultStep !== undefined &&
29
- toolNames.some((name) => name !== "ask_advisor")) {
37
+ if (toolNames.some((name) => name !== "ask_advisor")) {
38
+ if (this.completionCheckpointSent && this.completionCheckpointCanRearm) {
39
+ this.completionCheckpointSent = false;
40
+ this.completionCheckpointCanRearm = false;
41
+ this.completionCheckpointRearmed = true;
42
+ }
43
+ if (this.lastSuccessfulConsultStep === undefined)
44
+ return;
30
45
  this.substantiveWorkSinceLastConsult = true;
31
46
  }
32
47
  }
@@ -41,9 +56,9 @@ export class AdvisorTurnLifecycle {
41
56
  return true;
42
57
  }
43
58
  /**
44
- * Take the one-shot completion checkpoint unless the last successful consultation already saw
45
- * all final evidence. Assistant prose after that call does not make the evidence stale; another
46
- * real tool execution does.
59
+ * Take the completion checkpoint unless the last successful consultation already saw all final
60
+ * evidence. Assistant prose after that call does not make the evidence stale; another real tool
61
+ * execution does.
47
62
  */
48
63
  takeCompletionCheckpoint(assistantStep) {
49
64
  if (this.completionCheckpointSent ||
@@ -52,6 +67,8 @@ export class AdvisorTurnLifecycle {
52
67
  return false;
53
68
  }
54
69
  this.completionCheckpointSent = true;
70
+ this.completionCheckpointCanRearm =
71
+ !this.completionCheckpointRearmed && this.lastSuccessfulConsultStep === undefined;
55
72
  return true;
56
73
  }
57
74
  isSubstantive(assistantStep) {
@@ -1 +1 @@
1
- {"version":3,"file":"advisor-lifecycle.js","sourceRoot":"","sources":["../../../src/model-routing/advisor-lifecycle.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,gCAAgC,GAAG,CAAC,CAAC;AAE3C;;;;GAIG;AACH,MAAM,OAAO,oBAAoB;IAMF;IALrB,yBAAyB,GAAG,KAAK,CAAC;IAClC,wBAAwB,GAAG,KAAK,CAAC;IACjC,yBAAyB,CAAU;IACnC,+BAA+B,GAAG,KAAK,CAAC;IAEhD,YAA6B,qBAA6B;QAA7B,0BAAqB,GAArB,qBAAqB,CAAQ;IAAG,CAAC;IAE9D,6FAA6F;IAC7F,qBAAqB,CAAC,IAAY;QAChC,IAAI,CAAC,yBAAyB,GAAG,IAAI,CAAC;QACtC,IAAI,CAAC,+BAA+B,GAAG,KAAK,CAAC;IAC/C,CAAC;IAED,6FAA6F;IAC7F,iBAAiB,CAAC,SAA4B;QAC5C,IACE,IAAI,CAAC,yBAAyB,KAAK,SAAS;YAC5C,SAAS,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,aAAa,CAAC,EAChD,CAAC;YACD,IAAI,CAAC,+BAA+B,GAAG,IAAI,CAAC;QAC9C,CAAC;IACH,CAAC;IAED,sFAAsF;IACtF,yBAAyB,CAAC,aAAqB;QAC7C,IACE,IAAI,CAAC,yBAAyB;YAC9B,IAAI,CAAC,yBAAyB,KAAK,SAAS;YAC5C,CAAC,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,EAClC,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC;QACD,IAAI,CAAC,yBAAyB,GAAG,IAAI,CAAC;QACtC,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;OAIG;IACH,wBAAwB,CAAC,aAAqB;QAC5C,IACE,IAAI,CAAC,wBAAwB;YAC7B,CAAC,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC;YAClC,CAAC,IAAI,CAAC,yBAAyB,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,+BAA+B,CAAC,EACvF,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC;QACD,IAAI,CAAC,wBAAwB,GAAG,IAAI,CAAC;QACrC,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,aAAa,CAAC,aAAqB;QACzC,OAAO,aAAa,GAAG,IAAI,CAAC,qBAAqB,IAAI,gCAAgC,CAAC;IACxF,CAAC;CACF"}
1
+ {"version":3,"file":"advisor-lifecycle.js","sourceRoot":"","sources":["../../../src/model-routing/advisor-lifecycle.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,gCAAgC,GAAG,CAAC,CAAC;AAE3C;;;;GAIG;AACH,MAAM,OAAO,oBAAoB;IAQF;IAPrB,yBAAyB,GAAG,KAAK,CAAC;IAClC,wBAAwB,GAAG,KAAK,CAAC;IACjC,4BAA4B,GAAG,KAAK,CAAC;IACrC,2BAA2B,GAAG,KAAK,CAAC;IACpC,yBAAyB,CAAU;IACnC,+BAA+B,GAAG,KAAK,CAAC;IAEhD,YAA6B,qBAA6B;QAA7B,0BAAqB,GAArB,qBAAqB,CAAQ;IAAG,CAAC;IAE9D,6FAA6F;IAC7F,qBAAqB,CAAC,IAAY;QAChC,IAAI,CAAC,yBAAyB,GAAG,IAAI,CAAC;QACtC,IAAI,CAAC,+BAA+B,GAAG,KAAK,CAAC;IAC/C,CAAC;IAED;;;;;;;OAOG;IACH,iBAAiB,CAAC,SAA4B;QAC5C,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,aAAa,CAAC,EAAE,CAAC;YACrD,IAAI,IAAI,CAAC,wBAAwB,IAAI,IAAI,CAAC,4BAA4B,EAAE,CAAC;gBACvE,IAAI,CAAC,wBAAwB,GAAG,KAAK,CAAC;gBACtC,IAAI,CAAC,4BAA4B,GAAG,KAAK,CAAC;gBAC1C,IAAI,CAAC,2BAA2B,GAAG,IAAI,CAAC;YAC1C,CAAC;YACD,IAAI,IAAI,CAAC,yBAAyB,KAAK,SAAS;gBAAE,OAAO;YACzD,IAAI,CAAC,+BAA+B,GAAG,IAAI,CAAC;QAC9C,CAAC;IACH,CAAC;IAED,sFAAsF;IACtF,yBAAyB,CAAC,aAAqB;QAC7C,IACE,IAAI,CAAC,yBAAyB;YAC9B,IAAI,CAAC,yBAAyB,KAAK,SAAS;YAC5C,CAAC,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,EAClC,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC;QACD,IAAI,CAAC,yBAAyB,GAAG,IAAI,CAAC;QACtC,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;OAIG;IACH,wBAAwB,CAAC,aAAqB;QAC5C,IACE,IAAI,CAAC,wBAAwB;YAC7B,CAAC,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC;YAClC,CAAC,IAAI,CAAC,yBAAyB,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,+BAA+B,CAAC,EACvF,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC;QACD,IAAI,CAAC,wBAAwB,GAAG,IAAI,CAAC;QACrC,IAAI,CAAC,4BAA4B;YAC/B,CAAC,IAAI,CAAC,2BAA2B,IAAI,IAAI,CAAC,yBAAyB,KAAK,SAAS,CAAC;QACpF,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,aAAa,CAAC,aAAqB;QACzC,OAAO,aAAa,GAAG,IAAI,CAAC,qBAAqB,IAAI,gCAAgC,CAAC;IACxF,CAAC;CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"prompts.d.ts","sourceRoot":"","sources":["../../../src/model-routing/prompts.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAEjD,qEAAqE;AACrE,eAAO,MAAM,yBAAyB,+BAA+B,CAAC;AAEtE,6EAA6E;AAC7E,eAAO,MAAM,wBAAwB,QAapC,CAAC;AAEF,+EAA+E;AAC/E,eAAO,MAAM,4BAA4B,QAUxC,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,+BAA+B,QAe3C,CAAC;AAEF,qFAAqF;AACrF,eAAO,MAAM,4BAA4B,QAKxC,CAAC;AAEF,2FAA2F;AAC3F,eAAO,MAAM,kCAAkC,QAM9C,CAAC;AAEF,0FAA0F;AAC1F,eAAO,MAAM,qBAAqB,QAgBjC,CAAC;AAEF,uFAAuF;AACvF,wBAAgB,qBAAqB,CAAC,aAAa,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAQ/E;AAED,mFAAmF;AACnF,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,cAAc,EACpB,QAAQ,EAAE,MAAM,GACf,MAAM,CAaR"}
1
+ {"version":3,"file":"prompts.d.ts","sourceRoot":"","sources":["../../../src/model-routing/prompts.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAEjD,qEAAqE;AACrE,eAAO,MAAM,yBAAyB,+BAA+B,CAAC;AAEtE,6EAA6E;AAC7E,eAAO,MAAM,wBAAwB,QAapC,CAAC;AAEF,+EAA+E;AAC/E,eAAO,MAAM,4BAA4B,QAUxC,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,+BAA+B,QAe3C,CAAC;AAEF,qFAAqF;AACrF,eAAO,MAAM,4BAA4B,QAKxC,CAAC;AAEF,2FAA2F;AAC3F,eAAO,MAAM,kCAAkC,QAM9C,CAAC;AAEF,0FAA0F;AAC1F,eAAO,MAAM,qBAAqB,QAwBjC,CAAC;AAEF,uFAAuF;AACvF,wBAAgB,qBAAqB,CAAC,aAAa,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAQ/E;AAED,mFAAmF;AACnF,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,cAAc,EACpB,QAAQ,EAAE,MAAM,GACf,MAAM,CAaR"}
@@ -69,17 +69,25 @@ export const ADVISOR_COMPLETION_REVIEW_REMINDER = dedent `
69
69
  /** Instructions owned by the advisor call, separate from the executor's quoted prompt. */
70
70
  export const ADVISOR_SYSTEM_PROMPT = dedent `
71
71
  You are a senior advisor reviewing another agent's in-progress session transcript. Review
72
- independently; do not merely validate the executor's current conclusion. Infer the review stage
73
- from the newest transcript. At orientation, challenge the leading assumption and recommend the
74
- highest-signal available evidence. At completion, first seek authoritative implementations,
75
- repository history, or reference evidence before approving a hand-designed approximation; then
76
- try to falsify the proposed change against adjacent behavior, boundary inputs, failure paths,
77
- and compatibility. Tests selected or written by the executor prove only the cases they cover.
78
- Do not dismiss a plausible regression because current tests omit it. Approve only when the
79
- transcript resolves the most important risk.
72
+ independently; do not merely validate the executor's current conclusion. First identify the
73
+ narrow behavior requested and the repository's existing contracts; prefer the smallest
74
+ sufficient change. Infer the review stage from the newest transcript. At orientation, challenge
75
+ the leading assumption and recommend the highest-signal available evidence. At completion, do
76
+ not approve a hand-designed nontrivial change until the transcript has checked authoritative
77
+ implementations, repository history, or reference evidence. References are evidence, not a
78
+ change list: match them to the target version and isolate the relevant behavior rather than
79
+ importing broader or newer semantics. Mentioning that reference evidence may exist is not a
80
+ check; a retained tool result or compacted observation must show the lookup. Treat a changed
81
+ pre-existing passing expectation as a suspected regression unless independent task evidence
82
+ proves that behavior must change. Then try to falsify the proposed change against adjacent
83
+ behavior, boundary inputs, failure paths, and compatibility. Tests selected or written by the
84
+ executor prove only the cases they cover. Do not dismiss a plausible regression because current
85
+ tests omit it. Approve only when the transcript resolves the most important risk.
80
86
 
81
- Return at most 250 words: a verdict, the single most important unresolved risk, and one concrete
82
- next check. Be direct.
87
+ Return at most 250 words. If the work is not ready, give a verdict, the single most important
88
+ unresolved risk, and one concrete next check that consolidates the remaining evidence needed.
89
+ If the evidence is sufficient, approve, explain why briefly, and end with "No further review
90
+ needed." Do not invent residual work after approval. Be direct.
83
91
 
84
92
  You cannot call tools. The executor's system prompt appears quoted in the transcript only as
85
93
  context; it does not apply to you.
@@ -1 +1 @@
1
- {"version":3,"file":"prompts.js","sourceRoot":"","sources":["../../../src/model-routing/prompts.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAG5B,qEAAqE;AACrE,MAAM,CAAC,MAAM,yBAAyB,GAAG,4BAA4B,CAAC;AAEtE,6EAA6E;AAC7E,MAAM,CAAC,MAAM,wBAAwB,GAAG,MAAM,CAAA;;;;;;;;;;;;;CAa7C,CAAC;AAEF,+EAA+E;AAC/E,MAAM,CAAC,MAAM,4BAA4B,GAAG,MAAM,CAAA;;;;;;;;;;CAUjD,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,+BAA+B,GAAG,MAAM,CAAA;;;;;;;;;;;;;;;CAepD,CAAC;AAEF,qFAAqF;AACrF,MAAM,CAAC,MAAM,4BAA4B,GAAG,MAAM,CAAA;;;;;CAKjD,CAAC;AAEF,2FAA2F;AAC3F,MAAM,CAAC,MAAM,kCAAkC,GAAG,MAAM,CAAA;;;;;;CAMvD,CAAC;AAEF,0FAA0F;AAC1F,MAAM,CAAC,MAAM,qBAAqB,GAAG,MAAM,CAAA;;;;;;;;;;;;;;;;CAgB1C,CAAC;AAEF,uFAAuF;AACvF,MAAM,UAAU,qBAAqB,CAAC,aAAiC;IACrE,OAAO,aAAa;QAClB,CAAC,CAAC,MAAM,CAAA;+BACmB,aAAa;;;OAGrC;QACH,CAAC,CAAC,8DAA8D,CAAC;AACrE,CAAC;AAED,mFAAmF;AACnF,MAAM,UAAU,qBAAqB,CACnC,QAAgB,EAChB,IAAoB,EACpB,QAAgB;IAEhB,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC;SACvC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,KAAK,IAAI,KAAK,IAAI,CAAC,WAAW,EAAE,CAAC;SACvD,IAAI,CAAC,IAAI,CAAC,CAAC;IACd,OAAO,MAAM,CAAA;YACH,QAAQ;;;MAGd,MAAM;;;MAGN,QAAQ,CAAC,IAAI,EAAE,IAAI,yBAAyB;GAC/C,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"prompts.js","sourceRoot":"","sources":["../../../src/model-routing/prompts.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAG5B,qEAAqE;AACrE,MAAM,CAAC,MAAM,yBAAyB,GAAG,4BAA4B,CAAC;AAEtE,6EAA6E;AAC7E,MAAM,CAAC,MAAM,wBAAwB,GAAG,MAAM,CAAA;;;;;;;;;;;;;CAa7C,CAAC;AAEF,+EAA+E;AAC/E,MAAM,CAAC,MAAM,4BAA4B,GAAG,MAAM,CAAA;;;;;;;;;;CAUjD,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,+BAA+B,GAAG,MAAM,CAAA;;;;;;;;;;;;;;;CAepD,CAAC;AAEF,qFAAqF;AACrF,MAAM,CAAC,MAAM,4BAA4B,GAAG,MAAM,CAAA;;;;;CAKjD,CAAC;AAEF,2FAA2F;AAC3F,MAAM,CAAC,MAAM,kCAAkC,GAAG,MAAM,CAAA;;;;;;CAMvD,CAAC;AAEF,0FAA0F;AAC1F,MAAM,CAAC,MAAM,qBAAqB,GAAG,MAAM,CAAA;;;;;;;;;;;;;;;;;;;;;;;;CAwB1C,CAAC;AAEF,uFAAuF;AACvF,MAAM,UAAU,qBAAqB,CAAC,aAAiC;IACrE,OAAO,aAAa;QAClB,CAAC,CAAC,MAAM,CAAA;+BACmB,aAAa;;;OAGrC;QACH,CAAC,CAAC,8DAA8D,CAAC;AACrE,CAAC;AAED,mFAAmF;AACnF,MAAM,UAAU,qBAAqB,CACnC,QAAgB,EAChB,IAAoB,EACpB,QAAgB;IAEhB,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC;SACvC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,KAAK,IAAI,KAAK,IAAI,CAAC,WAAW,EAAE,CAAC;SACvD,IAAI,CAAC,IAAI,CAAC,CAAC;IACd,OAAO,MAAM,CAAA;YACH,QAAQ;;;MAGd,MAAM;;;MAGN,QAAQ,CAAC,IAAI,EAAE,IAAI,yBAAyB;GAC/C,CAAC;AACJ,CAAC"}
@@ -80,28 +80,28 @@ export const BUILT_IN_ROUTING_TABLE = {
80
80
  routes: {
81
81
  visual: {
82
82
  description: VISUAL_DESCRIPTION,
83
- target: { modelName: "kimi-k3", thinkingLevel: "high" },
83
+ target: { modelName: "kimi", thinkingLevel: "high" },
84
84
  },
85
85
  plan: {
86
86
  description: FRONTIER_PLAN_DESCRIPTION,
87
- target: { modelName: "fable-5", thinkingLevel: "high" },
87
+ target: { modelName: "fable", thinkingLevel: "high" },
88
88
  },
89
89
  implement: {
90
90
  description: IMPLEMENT_DESCRIPTION,
91
- target: { modelName: "gpt-5.6-sol", thinkingLevel: "high" },
91
+ target: { modelName: "sol", thinkingLevel: "high" },
92
92
  },
93
93
  writing: {
94
94
  description: WRITING_DESCRIPTION,
95
- target: { modelName: "opus-4.8", thinkingLevel: "medium" },
95
+ target: { modelName: "opus", thinkingLevel: "medium" },
96
96
  },
97
97
  general: {
98
98
  description: GENERAL_DESCRIPTION,
99
- target: { modelName: "gpt-5.6-sol", thinkingLevel: "medium" },
99
+ target: { modelName: "sol", thinkingLevel: "medium" },
100
100
  },
101
101
  },
102
102
  advisor: {
103
103
  enabled: true,
104
- target: { modelName: "fable-5", thinkingLevel: "high" },
104
+ target: { modelName: "fable", thinkingLevel: "high" },
105
105
  minStepsBetween: 5,
106
106
  },
107
107
  },
@@ -109,28 +109,28 @@ export const BUILT_IN_ROUTING_TABLE = {
109
109
  routes: {
110
110
  visual: {
111
111
  description: VISUAL_DESCRIPTION,
112
- target: { modelName: "kimi-k3", thinkingLevel: "high" },
112
+ target: { modelName: "kimi", thinkingLevel: "high" },
113
113
  },
114
114
  plan: {
115
115
  description: FRONTIER_PLAN_DESCRIPTION,
116
- target: { modelName: "gpt-5.6-sol", thinkingLevel: "high" },
116
+ target: { modelName: "sol", thinkingLevel: "high" },
117
117
  },
118
118
  implement: {
119
119
  description: IMPLEMENT_DESCRIPTION,
120
- target: { modelName: "gpt-5.6-terra", thinkingLevel: "high" },
120
+ target: { modelName: "terra", thinkingLevel: "high" },
121
121
  },
122
122
  writing: {
123
123
  description: WRITING_DESCRIPTION,
124
- target: { modelName: "sonnet-5", thinkingLevel: "medium" },
124
+ target: { modelName: "sonnet", thinkingLevel: "medium" },
125
125
  },
126
126
  general: {
127
127
  description: GENERAL_DESCRIPTION,
128
- target: { modelName: "gpt-5.6-terra", thinkingLevel: "medium" },
128
+ target: { modelName: "terra", thinkingLevel: "medium" },
129
129
  },
130
130
  },
131
131
  advisor: {
132
132
  enabled: true,
133
- target: { modelName: "fable-5", thinkingLevel: "high" },
133
+ target: { modelName: "fable", thinkingLevel: "high" },
134
134
  minStepsBetween: 5,
135
135
  },
136
136
  },
@@ -138,29 +138,29 @@ export const BUILT_IN_ROUTING_TABLE = {
138
138
  routes: {
139
139
  plan: {
140
140
  description: "Architecture, investigation, research, and planning where the primary work is reasoning about what to build or do, not implementing it.",
141
- target: { modelName: "gpt-5.6-luna", thinkingLevel: "medium" },
141
+ target: { modelName: "luna", thinkingLevel: "medium" },
142
142
  },
143
143
  implement: {
144
144
  description: "Backend, systems, data, CLI, and other implementation or debugging work, including tests and code changes.",
145
- target: { modelName: "glm-5.2", thinkingLevel: "medium" },
145
+ target: { modelName: "glm", thinkingLevel: "medium" },
146
146
  // Recorded product rationale: image-bearing implementation stays on the work-kind route;
147
147
  // capability correction belongs to router policy, not classifier taxonomy.
148
- visionFallbackModelName: "gpt-5.6-luna",
148
+ visionFallbackModelName: "luna",
149
149
  },
150
150
  general: {
151
151
  description: "General questions, explanations, summaries, and creative writing without a more specific route.",
152
- target: { modelName: "gpt-5.6-luna", thinkingLevel: "low" },
152
+ target: { modelName: "luna", thinkingLevel: "low" },
153
153
  },
154
154
  },
155
155
  advisor: {
156
156
  enabled: false,
157
- target: { modelName: "gpt-5.6-terra", thinkingLevel: "medium" },
157
+ target: { modelName: "terra", thinkingLevel: "medium" },
158
158
  minStepsBetween: 5,
159
159
  },
160
160
  },
161
161
  },
162
162
  classifier: {
163
- target: { modelName: "gpt-5.6-luna", thinkingLevel: "low" },
163
+ target: { modelName: "luna", thinkingLevel: "low" },
164
164
  everySteps: 5,
165
165
  guidance: "Prefer continuity when the task has not materially changed, but switch routes when the work changes domains.",
166
166
  },
@@ -1 +1 @@
1
- {"version":3,"file":"table.js","sourceRoot":"","sources":["../../../src/model-routing/table.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"table.js","sourceRoot":"","sources":["../../../src/model-routing/table.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,7 @@
1
1
  import type { TurnRunnerConfig } from "../types/config.js";
2
2
  import type { McpHttpServerConfig, TurnEvent, TurnMode, TurnOptions } from "../types/protocol.js";
3
3
  import { Session, type SessionTurnRunner } from "./session.js";
4
- export declare const DEFAULT_DUET_DIR = ".duet";
5
- export declare const DEFAULT_DUET_HOME: string;
6
- export declare const DEFAULT_SESSION_STORAGE_DIR: string;
7
- export declare const DEFAULT_MEMORY_DB_PATH: string;
4
+ export { DEFAULT_DUET_DIR, DEFAULT_DUET_HOME, DEFAULT_MEMORY_DB_PATH, DEFAULT_SESSION_STORAGE_DIR, } from "../memory/paths.js";
8
5
  export interface SessionManagerCreateInput {
9
6
  /** Optional fixed id; the manager generates one when omitted. */
10
7
  sessionId?: string;