@xrkseek/harness 0.6.3 → 0.6.4

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 (122) hide show
  1. package/node_modules/@xrkseek/core-agent/dist/index.d.ts +2 -2
  2. package/node_modules/@xrkseek/core-agent/dist/index.d.ts.map +1 -1
  3. package/node_modules/@xrkseek/core-agent-loop/dist/compaction.d.ts.map +1 -1
  4. package/node_modules/@xrkseek/core-agent-loop/dist/compaction.js +9 -0
  5. package/node_modules/@xrkseek/core-agent-loop/dist/compaction.js.map +1 -1
  6. package/node_modules/@xrkseek/core-agent-loop/dist/index.d.ts +5 -5
  7. package/node_modules/@xrkseek/core-agent-loop/dist/index.d.ts.map +1 -1
  8. package/node_modules/@xrkseek/core-agent-loop/dist/index.js +53 -7
  9. package/node_modules/@xrkseek/core-agent-loop/dist/index.js.map +1 -1
  10. package/node_modules/@xrkseek/core-session/dist/compaction.d.ts +30 -0
  11. package/node_modules/@xrkseek/core-session/dist/compaction.d.ts.map +1 -1
  12. package/node_modules/@xrkseek/core-session/dist/compaction.js +15 -0
  13. package/node_modules/@xrkseek/core-session/dist/compaction.js.map +1 -1
  14. package/node_modules/@xrkseek/core-session/dist/index.d.ts +1 -1
  15. package/node_modules/@xrkseek/core-session/dist/index.d.ts.map +1 -1
  16. package/node_modules/@xrkseek/core-session/dist/index.js +1 -1
  17. package/node_modules/@xrkseek/core-session/dist/index.js.map +1 -1
  18. package/node_modules/@xrkseek/core-session/dist/search-text.d.ts.map +1 -1
  19. package/node_modules/@xrkseek/core-session/dist/search-text.js +6 -0
  20. package/node_modules/@xrkseek/core-session/dist/search-text.js.map +1 -1
  21. package/node_modules/@xrkseek/core-session/dist/sqlite-store.d.ts +5 -2
  22. package/node_modules/@xrkseek/core-session/dist/sqlite-store.d.ts.map +1 -1
  23. package/node_modules/@xrkseek/core-session/dist/sqlite-store.js +155 -29
  24. package/node_modules/@xrkseek/core-session/dist/sqlite-store.js.map +1 -1
  25. package/node_modules/@xrkseek/core-tools/dist/tool-exposure.d.ts +6 -2
  26. package/node_modules/@xrkseek/core-tools/dist/tool-exposure.d.ts.map +1 -1
  27. package/node_modules/@xrkseek/core-tools/dist/tool-exposure.js +10 -3
  28. package/node_modules/@xrkseek/core-tools/dist/tool-exposure.js.map +1 -1
  29. package/node_modules/@xrkseek/llm/dist/retry-policy.js +1 -1
  30. package/node_modules/@xrkseek/llm/dist/retry-policy.js.map +1 -1
  31. package/node_modules/@xrkseek/llm-registry/dist/discover.d.ts +11 -0
  32. package/node_modules/@xrkseek/llm-registry/dist/discover.d.ts.map +1 -1
  33. package/node_modules/@xrkseek/llm-registry/dist/discover.js +61 -0
  34. package/node_modules/@xrkseek/llm-registry/dist/discover.js.map +1 -1
  35. package/node_modules/@xrkseek/llm-registry/dist/index.d.ts +1 -1
  36. package/node_modules/@xrkseek/llm-registry/dist/index.d.ts.map +1 -1
  37. package/node_modules/@xrkseek/llm-registry/dist/index.js.map +1 -1
  38. package/node_modules/@xrkseek/preset-harness/dist/preset.d.ts.map +1 -1
  39. package/node_modules/@xrkseek/preset-harness/dist/preset.js +27 -13
  40. package/node_modules/@xrkseek/preset-harness/dist/preset.js.map +1 -1
  41. package/node_modules/@xrkseek/preset-harness/dist/tsconfig.tsbuildinfo +1 -1
  42. package/node_modules/@xrkseek/preset-minimal/dist/tsconfig.tsbuildinfo +1 -1
  43. package/node_modules/@xrkseek/preset-server/dist/tsconfig.tsbuildinfo +1 -1
  44. package/node_modules/@xrkseek/protocol/dist/session-events.d.ts +3 -3
  45. package/node_modules/@xrkseek/server-face/dist/adapt/index.d.ts +1 -1
  46. package/node_modules/@xrkseek/server-face/dist/adapt/index.d.ts.map +1 -1
  47. package/node_modules/@xrkseek/server-face/dist/adapt/index.js +1 -1
  48. package/node_modules/@xrkseek/server-face/dist/adapt/index.js.map +1 -1
  49. package/node_modules/@xrkseek/server-face/dist/adapt/subagent-notice.d.ts +15 -1
  50. package/node_modules/@xrkseek/server-face/dist/adapt/subagent-notice.d.ts.map +1 -1
  51. package/node_modules/@xrkseek/server-face/dist/adapt/subagent-notice.js +108 -8
  52. package/node_modules/@xrkseek/server-face/dist/adapt/subagent-notice.js.map +1 -1
  53. package/node_modules/@xrkseek/server-face/dist/context.d.ts +5 -0
  54. package/node_modules/@xrkseek/server-face/dist/context.d.ts.map +1 -1
  55. package/node_modules/@xrkseek/server-face/dist/handlers/session.d.ts.map +1 -1
  56. package/node_modules/@xrkseek/server-face/dist/handlers/session.js +69 -19
  57. package/node_modules/@xrkseek/server-face/dist/handlers/session.js.map +1 -1
  58. package/node_modules/@xrkseek/server-face/dist/handlers/subagent.d.ts.map +1 -1
  59. package/node_modules/@xrkseek/server-face/dist/handlers/subagent.js +7 -1
  60. package/node_modules/@xrkseek/server-face/dist/handlers/subagent.js.map +1 -1
  61. package/node_modules/@xrkseek/server-face/dist/index.d.ts +2 -1
  62. package/node_modules/@xrkseek/server-face/dist/index.d.ts.map +1 -1
  63. package/node_modules/@xrkseek/server-face/dist/index.js +2 -1
  64. package/node_modules/@xrkseek/server-face/dist/index.js.map +1 -1
  65. package/node_modules/@xrkseek/server-face/dist/model-catalog.d.ts.map +1 -1
  66. package/node_modules/@xrkseek/server-face/dist/model-catalog.js +2 -1
  67. package/node_modules/@xrkseek/server-face/dist/model-catalog.js.map +1 -1
  68. package/node_modules/@xrkseek/server-face/dist/peer-session-wait.d.ts.map +1 -1
  69. package/node_modules/@xrkseek/server-face/dist/peer-session-wait.js +16 -9
  70. package/node_modules/@xrkseek/server-face/dist/peer-session-wait.js.map +1 -1
  71. package/node_modules/@xrkseek/server-face/dist/ralph-tool.d.ts.map +1 -1
  72. package/node_modules/@xrkseek/server-face/dist/ralph-tool.js +19 -20
  73. package/node_modules/@xrkseek/server-face/dist/ralph-tool.js.map +1 -1
  74. package/node_modules/@xrkseek/server-face/dist/runtime.d.ts.map +1 -1
  75. package/node_modules/@xrkseek/server-face/dist/runtime.js +54 -10
  76. package/node_modules/@xrkseek/server-face/dist/runtime.js.map +1 -1
  77. package/node_modules/@xrkseek/server-face/dist/select-session-model.d.ts.map +1 -1
  78. package/node_modules/@xrkseek/server-face/dist/select-session-model.js +33 -1
  79. package/node_modules/@xrkseek/server-face/dist/select-session-model.js.map +1 -1
  80. package/node_modules/@xrkseek/server-face/dist/session-thread-message.d.ts +5 -0
  81. package/node_modules/@xrkseek/server-face/dist/session-thread-message.d.ts.map +1 -1
  82. package/node_modules/@xrkseek/server-face/dist/session-thread-message.js +8 -0
  83. package/node_modules/@xrkseek/server-face/dist/session-thread-message.js.map +1 -1
  84. package/node_modules/@xrkseek/server-face/dist/session-thread-tools.d.ts.map +1 -1
  85. package/node_modules/@xrkseek/server-face/dist/session-thread-tools.js +4 -1
  86. package/node_modules/@xrkseek/server-face/dist/session-thread-tools.js.map +1 -1
  87. package/node_modules/@xrkseek/server-face/dist/settings-schemas.d.ts.map +1 -1
  88. package/node_modules/@xrkseek/server-face/dist/settings-schemas.js +32 -5
  89. package/node_modules/@xrkseek/server-face/dist/settings-schemas.js.map +1 -1
  90. package/node_modules/@xrkseek/server-face/dist/subagent-registry.d.ts +7 -0
  91. package/node_modules/@xrkseek/server-face/dist/subagent-registry.d.ts.map +1 -1
  92. package/node_modules/@xrkseek/server-face/dist/subagent-registry.js +21 -5
  93. package/node_modules/@xrkseek/server-face/dist/subagent-registry.js.map +1 -1
  94. package/node_modules/@xrkseek/server-face/dist/subagent-tools.d.ts.map +1 -1
  95. package/node_modules/@xrkseek/server-face/dist/subagent-tools.js +79 -149
  96. package/node_modules/@xrkseek/server-face/dist/subagent-tools.js.map +1 -1
  97. package/node_modules/@xrkseek/server-face/dist/wait-drain-idle.d.ts +32 -0
  98. package/node_modules/@xrkseek/server-face/dist/wait-drain-idle.d.ts.map +1 -0
  99. package/node_modules/@xrkseek/server-face/dist/wait-drain-idle.js +138 -0
  100. package/node_modules/@xrkseek/server-face/dist/wait-drain-idle.js.map +1 -0
  101. package/node_modules/@xrkseek/server-face/dist/workspace-orchestrate-tools.d.ts.map +1 -1
  102. package/node_modules/@xrkseek/server-face/dist/workspace-orchestrate-tools.js +2 -1
  103. package/node_modules/@xrkseek/server-face/dist/workspace-orchestrate-tools.js.map +1 -1
  104. package/node_modules/@xrkseek/server-host/dist/agent-cache.d.ts +26 -4
  105. package/node_modules/@xrkseek/server-host/dist/agent-cache.d.ts.map +1 -1
  106. package/node_modules/@xrkseek/server-host/dist/agent-cache.js +63 -16
  107. package/node_modules/@xrkseek/server-host/dist/agent-cache.js.map +1 -1
  108. package/node_modules/@xrkseek/server-host/dist/index.d.ts +1 -1
  109. package/node_modules/@xrkseek/server-host/dist/index.d.ts.map +1 -1
  110. package/node_modules/@xrkseek/server-host/dist/index.js +96 -23
  111. package/node_modules/@xrkseek/server-host/dist/index.js.map +1 -1
  112. package/node_modules/@xrkseek/server-host/dist/workflow-engine-mount.d.ts.map +1 -1
  113. package/node_modules/@xrkseek/server-host/dist/workflow-engine-mount.js +16 -21
  114. package/node_modules/@xrkseek/server-host/dist/workflow-engine-mount.js.map +1 -1
  115. package/node_modules/@xrkseek/server-http/dist/dsh-compat/community-llm-host-sync.d.ts.map +1 -1
  116. package/node_modules/@xrkseek/server-http/dist/dsh-compat/community-llm-host-sync.js +49 -11
  117. package/node_modules/@xrkseek/server-http/dist/dsh-compat/community-llm-host-sync.js.map +1 -1
  118. package/node_modules/@xrkseek/session-projection/dist/index.d.ts +7 -0
  119. package/node_modules/@xrkseek/session-projection/dist/index.d.ts.map +1 -1
  120. package/node_modules/@xrkseek/session-projection/dist/index.js +16 -0
  121. package/node_modules/@xrkseek/session-projection/dist/index.js.map +1 -1
  122. package/package.json +1 -1
@@ -124,9 +124,9 @@ export type UserMessageSource = {
124
124
  readonly [key: string]: unknown;
125
125
  } | {
126
126
  /**
127
- * Loop-injected continuation prompt after a max-tokens truncation
128
- * (Face `agent-loop.autoContinueOnMaxTokens`). Rendered as a grey
129
- * "已自动继续" strip, not as a real human message.
127
+ * Loop-injected continuation after a max-tokens truncation
128
+ * (`agent-loop.autoContinueOnMaxTokens`). Content is the user text
129
+ * "继续"; the transcript shows that message, not a hidden inject row.
130
130
  */
131
131
  readonly kind: "auto-continue";
132
132
  /** Which consecutive auto-continue this is (1-based). */
@@ -4,6 +4,6 @@ export { FaceInboxWireMaps, FaceInboxWireProjector, type FaceInboxSplice, type F
4
4
  export { FaceWireIdMaps } from "./wire-ids.js";
5
5
  export { presentToolView, collectToolCallArgs, collectToolCallArgsForPage, FaceToolArgMaps, faceToolLookup, type PresentToolLookup, type ToolCallPairing, type ToolEventView, } from "./tool-view.js";
6
6
  export { jobViews, formatJobCompletionNotice, isSettledJobStatus, JOB_COMPLETION_MAX_WAKES, type FaceJobsSource, type JobView, type JobViewStatus, } from "./job-view.js";
7
- export { describeChildOutcome, formatSubagentCompletionNotice, lastAssistantBodyText, type ChildOutcome, type ChildOutcomeKind, } from "./subagent-notice.js";
7
+ export { childProgressLine, describeChildOutcome, formatSubagentCompletionNotice, formatSubagentStopNotice, lastAssistantBodyText, type ChildOutcome, type ChildOutcomeKind, type SubagentStopReason, } from "./subagent-notice.js";
8
8
  export { boundChildAnswer, SUBAGENT_ANSWER_INLINE_BYTES, } from "./subagent-answer-bound.js";
9
9
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/adapt/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EACjB,sBAAsB,EACtB,iBAAiB,EACjB,kBAAkB,EAClB,aAAa,EACb,KAAK,oBAAoB,EACzB,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,GACtB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,sBAAsB,EACtB,iCAAiC,EACjC,4BAA4B,EAC5B,gBAAgB,EAChB,sBAAsB,EACtB,0BAA0B,EAC1B,KAAK,cAAc,GACpB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,iBAAiB,EACjB,sBAAsB,EACtB,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACxB,KAAK,WAAW,GACjB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EACL,eAAe,EACf,mBAAmB,EACnB,0BAA0B,EAC1B,eAAe,EACf,cAAc,EACd,KAAK,iBAAiB,EACtB,KAAK,eAAe,EACpB,KAAK,aAAa,GACnB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,QAAQ,EACR,yBAAyB,EACzB,kBAAkB,EAClB,wBAAwB,EACxB,KAAK,cAAc,EACnB,KAAK,OAAO,EACZ,KAAK,aAAa,GACnB,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,oBAAoB,EACpB,8BAA8B,EAC9B,qBAAqB,EACrB,KAAK,YAAY,EACjB,KAAK,gBAAgB,GACtB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,gBAAgB,EAChB,4BAA4B,GAC7B,MAAM,4BAA4B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/adapt/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EACjB,sBAAsB,EACtB,iBAAiB,EACjB,kBAAkB,EAClB,aAAa,EACb,KAAK,oBAAoB,EACzB,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,GACtB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,sBAAsB,EACtB,iCAAiC,EACjC,4BAA4B,EAC5B,gBAAgB,EAChB,sBAAsB,EACtB,0BAA0B,EAC1B,KAAK,cAAc,GACpB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,iBAAiB,EACjB,sBAAsB,EACtB,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACxB,KAAK,WAAW,GACjB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EACL,eAAe,EACf,mBAAmB,EACnB,0BAA0B,EAC1B,eAAe,EACf,cAAc,EACd,KAAK,iBAAiB,EACtB,KAAK,eAAe,EACpB,KAAK,aAAa,GACnB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,QAAQ,EACR,yBAAyB,EACzB,kBAAkB,EAClB,wBAAwB,EACxB,KAAK,cAAc,EACnB,KAAK,OAAO,EACZ,KAAK,aAAa,GACnB,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,iBAAiB,EACjB,oBAAoB,EACpB,8BAA8B,EAC9B,wBAAwB,EACxB,qBAAqB,EACrB,KAAK,YAAY,EACjB,KAAK,gBAAgB,EACrB,KAAK,kBAAkB,GACxB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,gBAAgB,EAChB,4BAA4B,GAC7B,MAAM,4BAA4B,CAAC"}
@@ -4,6 +4,6 @@ export { FaceInboxWireMaps, FaceInboxWireProjector, } from "./inbox-wire.js";
4
4
  export { FaceWireIdMaps } from "./wire-ids.js";
5
5
  export { presentToolView, collectToolCallArgs, collectToolCallArgsForPage, FaceToolArgMaps, faceToolLookup, } from "./tool-view.js";
6
6
  export { jobViews, formatJobCompletionNotice, isSettledJobStatus, JOB_COMPLETION_MAX_WAKES, } from "./job-view.js";
7
- export { describeChildOutcome, formatSubagentCompletionNotice, lastAssistantBodyText, } from "./subagent-notice.js";
7
+ export { childProgressLine, describeChildOutcome, formatSubagentCompletionNotice, formatSubagentStopNotice, lastAssistantBodyText, } from "./subagent-notice.js";
8
8
  export { boundChildAnswer, SUBAGENT_ANSWER_INLINE_BYTES, } from "./subagent-answer-bound.js";
9
9
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/adapt/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EACjB,sBAAsB,EACtB,iBAAiB,EACjB,kBAAkB,EAClB,aAAa,GAId,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,sBAAsB,EACtB,iCAAiC,EACjC,4BAA4B,EAC5B,gBAAgB,EAChB,sBAAsB,EACtB,0BAA0B,GAE3B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,iBAAiB,EACjB,sBAAsB,GAIvB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EACL,eAAe,EACf,mBAAmB,EACnB,0BAA0B,EAC1B,eAAe,EACf,cAAc,GAIf,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,QAAQ,EACR,yBAAyB,EACzB,kBAAkB,EAClB,wBAAwB,GAIzB,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,oBAAoB,EACpB,8BAA8B,EAC9B,qBAAqB,GAGtB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,gBAAgB,EAChB,4BAA4B,GAC7B,MAAM,4BAA4B,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/adapt/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EACjB,sBAAsB,EACtB,iBAAiB,EACjB,kBAAkB,EAClB,aAAa,GAId,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,sBAAsB,EACtB,iCAAiC,EACjC,4BAA4B,EAC5B,gBAAgB,EAChB,sBAAsB,EACtB,0BAA0B,GAE3B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,iBAAiB,EACjB,sBAAsB,GAIvB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EACL,eAAe,EACf,mBAAmB,EACnB,0BAA0B,EAC1B,eAAe,EACf,cAAc,GAIf,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,QAAQ,EACR,yBAAyB,EACzB,kBAAkB,EAClB,wBAAwB,GAIzB,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,iBAAiB,EACjB,oBAAoB,EACpB,8BAA8B,EAC9B,wBAAwB,EACxB,qBAAqB,GAItB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,gBAAgB,EAChB,4BAA4B,GAC7B,MAAM,4BAA4B,CAAC"}
@@ -43,11 +43,25 @@ export declare function describeChildOutcome(events: readonly SessionEvent[], no
43
43
  */
44
44
  export declare function formatDescribedChildOutcome(outcome: ChildOutcome): string;
45
45
  export declare function formatChildOutcome(events: readonly SessionEvent[], now?: number): string;
46
+ /** Steps / tool results already spent on the child — so the parent can judge sunk cost. */
47
+ export declare function childProgressLine(events: readonly SessionEvent[]): string | undefined;
48
+ /** Why a continuable child was cut off before a natural turn end. */
49
+ export type SubagentStopReason = "user" | "parent" | "takeover";
50
+ /** Loop-injected user messages `继续` already written into this child log. */
51
+ export declare function autoContinueRounds(events: readonly SessionEvent[]): number;
52
+ /**
53
+ * Parent inbox notice when a child is stopped on purpose.
54
+ * Distinct from {@link formatSubagentCompletionNotice}: Stop / interrupt_agent
55
+ * / takeover each say who cut the turn, so the parent does not read a kill as
56
+ * "finished a turn".
57
+ */
58
+ export declare function formatSubagentStopNotice(link: FaceSubagentLink, reason: SubagentStopReason, events: readonly SessionEvent[], answerBody?: string): string;
46
59
  /**
47
60
  * Parent inbox notice when a background (continuable) child drain goes idle.
48
61
  * Normal idle → "finished a turn". Abnormal `turn/end` (abort / error / …)
49
62
  * still reports back with a clear head so the parent can recover — except when
50
- * Face suppressed delivery after a **user** parent Stop (cascade cancel).
63
+ * Face suppressed delivery (e.g. `interrupt_agent` / explicit suppress).
64
+ * Parent Stop does **not** cascade-cancel delegated workers.
51
65
  *
52
66
  * @param answerBody - optional already-bound child answer (see
53
67
  * {@link boundChildAnswer}). When omitted, the raw last assistant text is
@@ -1 +1 @@
1
- {"version":3,"file":"subagent-notice.d.ts","sourceRoot":"","sources":["../../src/adapt/subagent-notice.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACrE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAEhE;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,SAAS,YAAY,EAAE,GAC9B,MAAM,CAyBR;AAED,6EAA6E;AAC7E,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,SAAS,YAAY,EAAE,GAC9B,aAAa,GAAG,SAAS,CAM3B;AAED;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,SAAS,YAAY,EAAE,GAC9B,MAAM,GAAG,SAAS,CAkBpB;AAmBD,MAAM,MAAM,gBAAgB,GAAG,aAAa,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC;AAC9D,MAAM,MAAM,eAAe,GACvB,MAAM,GACN,QAAQ,GACR,UAAU,GACV,MAAM,GACN,QAAQ,CAAC;AAEb,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,IAAI,EAAE,gBAAgB,CAAC;IAChC,6DAA6D;IAC7D,QAAQ,CAAC,KAAK,CAAC,EAAE,eAAe,CAAC;IACjC,4EAA4E;IAC5E,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,SAAS,YAAY,EAAE,EAC/B,GAAG,GAAE,MAAmB,GACvB,YAAY,CAqBd;AAED;;;;;;GAMG;AACH,wBAAgB,2BAA2B,CAAC,OAAO,EAAE,YAAY,GAAG,MAAM,CAuBzE;AAED,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,SAAS,YAAY,EAAE,EAC/B,GAAG,GAAE,MAAmB,GACvB,MAAM,CAER;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,8BAA8B,CAC5C,IAAI,EAAE,gBAAgB,EACtB,MAAM,EAAE,SAAS,YAAY,EAAE,EAC/B,UAAU,CAAC,EAAE,MAAM,GAClB,MAAM,CAaR"}
1
+ {"version":3,"file":"subagent-notice.d.ts","sourceRoot":"","sources":["../../src/adapt/subagent-notice.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACrE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAEhE;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,SAAS,YAAY,EAAE,GAC9B,MAAM,CAyBR;AAED,6EAA6E;AAC7E,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,SAAS,YAAY,EAAE,GAC9B,aAAa,GAAG,SAAS,CAM3B;AAED;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,SAAS,YAAY,EAAE,GAC9B,MAAM,GAAG,SAAS,CAkBpB;AAmBD,MAAM,MAAM,gBAAgB,GAAG,aAAa,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC;AAC9D,MAAM,MAAM,eAAe,GACvB,MAAM,GACN,QAAQ,GACR,UAAU,GACV,MAAM,GACN,QAAQ,CAAC;AAEb,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,IAAI,EAAE,gBAAgB,CAAC;IAChC,6DAA6D;IAC7D,QAAQ,CAAC,KAAK,CAAC,EAAE,eAAe,CAAC;IACjC,4EAA4E;IAC5E,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,SAAS,YAAY,EAAE,EAC/B,GAAG,GAAE,MAAmB,GACvB,YAAY,CAqBd;AAED;;;;;;GAMG;AACH,wBAAgB,2BAA2B,CAAC,OAAO,EAAE,YAAY,GAAG,MAAM,CAuBzE;AAED,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,SAAS,YAAY,EAAE,EAC/B,GAAG,GAAE,MAAmB,GACvB,MAAM,CAER;AAED,2FAA2F;AAC3F,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,SAAS,YAAY,EAAE,GAC9B,MAAM,GAAG,SAAS,CAyBpB;AAED,qEAAqE;AACrE,MAAM,MAAM,kBAAkB,GAAG,MAAM,GAAG,QAAQ,GAAG,UAAU,CAAC;AAEhE,4EAA4E;AAC5E,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,SAAS,YAAY,EAAE,GAAG,MAAM,CAQ1E;AAqED;;;;;GAKG;AACH,wBAAgB,wBAAwB,CACtC,IAAI,EAAE,gBAAgB,EACtB,MAAM,EAAE,kBAAkB,EAC1B,MAAM,EAAE,SAAS,YAAY,EAAE,EAC/B,UAAU,CAAC,EAAE,MAAM,GAClB,MAAM,CAeR;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,8BAA8B,CAC5C,IAAI,EAAE,gBAAgB,EACtB,MAAM,EAAE,SAAS,YAAY,EAAE,EAC/B,UAAU,CAAC,EAAE,MAAM,GAClB,MAAM,CAaR"}
@@ -157,11 +157,116 @@ export function formatDescribedChildOutcome(outcome) {
157
157
  export function formatChildOutcome(events, now = Date.now()) {
158
158
  return formatDescribedChildOutcome(describeChildOutcome(events, now));
159
159
  }
160
+ /** Steps / tool results already spent on the child — so the parent can judge sunk cost. */
161
+ export function childProgressLine(events) {
162
+ let steps = 0;
163
+ let toolResults = 0;
164
+ let chars = 0;
165
+ for (const ev of events) {
166
+ if (ev.type === "step/end")
167
+ steps += 1;
168
+ if (ev.type === "tool/result")
169
+ toolResults += 1;
170
+ if (ev.type === "assistant/message" && ev.content.trim()) {
171
+ chars += ev.content.trim().length;
172
+ }
173
+ }
174
+ if (steps === 0 && toolResults === 0 && chars === 0)
175
+ return undefined;
176
+ const parts = [];
177
+ if (steps > 0)
178
+ parts.push(`${steps} step${steps === 1 ? "" : "s"}`);
179
+ if (toolResults > 0) {
180
+ parts.push(`${toolResults} tool result${toolResults === 1 ? "" : "s"}`);
181
+ }
182
+ if (chars > 0) {
183
+ parts.push(chars >= 1000
184
+ ? `~${Math.round(chars / 1000)}k chars written`
185
+ : `${chars} chars written`);
186
+ }
187
+ return `Already ran: ${parts.join(", ")}.`;
188
+ }
189
+ /** Loop-injected user messages `继续` already written into this child log. */
190
+ export function autoContinueRounds(events) {
191
+ let count = 0;
192
+ for (const ev of events) {
193
+ if (ev.type === "user/message" && ev.source?.kind === "auto-continue") {
194
+ count += 1;
195
+ }
196
+ }
197
+ return count;
198
+ }
199
+ function resumeHint(outcome, events, stop) {
200
+ const idHint = "Reuse the same agent_id — do not spawn a duplicate worker.";
201
+ if (stop === "takeover") {
202
+ return ("Task is paused for a human. Open the child session in the UI, or " +
203
+ `send_message to resume as the model. list_agents shows status. ${idHint}`);
204
+ }
205
+ if (outcome.kind === "max-tokens") {
206
+ const rounds = autoContinueRounds(events);
207
+ const sent = rounds > 0
208
+ ? `The child already sent "继续" as a user message ${rounds} time(s) inside this turn and still hit the output cap, so the turn stopped.`
209
+ : 'The child hit the output cap and did not auto-send "继续" (auto-continue off, or this truncation never entered continuation).';
210
+ return (`${sent} If you still need the rest, call send_message(agent_id, "继续") ` +
211
+ `for another turn. session_read / list_agents shows what it already wrote. ${idHint}`);
212
+ }
213
+ if (stop !== undefined ||
214
+ outcome.kind === "aborted" ||
215
+ outcome.kind === "interrupted" ||
216
+ outcome.kind === "none") {
217
+ return ("Child session and transcript are kept. send_message to resume, " +
218
+ `wait_agent if you need the next answer, or list_agents. ${idHint}`);
219
+ }
220
+ if (outcome.kind === "error" || outcome.kind === "blocked") {
221
+ return ("Inspect with session_read / list_agents, then send_message to recover " +
222
+ `or interrupt_agent when done. ${idHint}`);
223
+ }
224
+ return "Follow up with send_message, interrupt_agent when done, or list_agents.";
225
+ }
226
+ function assembleParentNotice(head, events, answerBody, follow) {
227
+ const progress = childProgressLine(events);
228
+ const outcome = formatDescribedChildOutcome(describeChildOutcome(events));
229
+ const retry = lastModelRetryNotice(events);
230
+ const preview = (answerBody !== undefined
231
+ ? answerBody
232
+ : lastAssistantBodyText(events)).trim();
233
+ const lines = [head];
234
+ if (progress)
235
+ lines.push(progress);
236
+ lines.push(`Outcome: ${outcome}.`);
237
+ if (retry)
238
+ lines.push(retry);
239
+ if (preview) {
240
+ lines.push("", "Partial / last answer:", preview, "");
241
+ }
242
+ else {
243
+ lines.push("");
244
+ }
245
+ lines.push(follow);
246
+ return lines.join("\n");
247
+ }
248
+ /**
249
+ * Parent inbox notice when a child is stopped on purpose.
250
+ * Distinct from {@link formatSubagentCompletionNotice}: Stop / interrupt_agent
251
+ * / takeover each say who cut the turn, so the parent does not read a kill as
252
+ * "finished a turn".
253
+ */
254
+ export function formatSubagentStopNotice(link, reason, events, answerBody) {
255
+ const why = reason === "user"
256
+ ? "stopped by the user (Stop on the child session)"
257
+ : reason === "takeover"
258
+ ? "paused for human takeover"
259
+ : "interrupted by the parent (interrupt_agent)";
260
+ const head = `background subagent \`${link.childSessionId}\` (${link.label}) ${why}.`;
261
+ const outcome = describeChildOutcome(events);
262
+ return assembleParentNotice(head, events, answerBody, resumeHint(outcome, events, reason));
263
+ }
160
264
  /**
161
265
  * Parent inbox notice when a background (continuable) child drain goes idle.
162
266
  * Normal idle → "finished a turn". Abnormal `turn/end` (abort / error / …)
163
267
  * still reports back with a clear head so the parent can recover — except when
164
- * Face suppressed delivery after a **user** parent Stop (cascade cancel).
268
+ * Face suppressed delivery (e.g. `interrupt_agent` / explicit suppress).
269
+ * Parent Stop does **not** cascade-cancel delegated workers.
165
270
  *
166
271
  * @param answerBody - optional already-bound child answer (see
167
272
  * {@link boundChildAnswer}). When omitted, the raw last assistant text is
@@ -174,12 +279,7 @@ export function formatSubagentCompletionNotice(link, events, answerBody) {
174
279
  const head = abnormal
175
280
  ? `background subagent \`${link.childSessionId}\` (${link.label}) ended abnormally (${abnormal}).`
176
281
  : `background subagent \`${link.childSessionId}\` (${link.label}) finished a turn.`;
177
- const preview = (answerBody !== undefined
178
- ? answerBody
179
- : lastAssistantBodyText(events)).trim();
180
- const follow = "Follow up with send_message, interrupt_agent when done, or list_agents.";
181
- if (!preview)
182
- return `${head} ${follow}`;
183
- return `${head}\n\n${preview}\n\n${follow}`;
282
+ const outcome = describeChildOutcome(events);
283
+ return assembleParentNotice(head, events, answerBody, resumeHint(outcome, events));
184
284
  }
185
285
  //# sourceMappingURL=subagent-notice.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"subagent-notice.js","sourceRoot":"","sources":["../../src/adapt/subagent-notice.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"subagent-notice.js","sourceRoot":"","sources":["../../src/adapt/subagent-notice.ts"],"names":[],"mappings":"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"}
@@ -356,6 +356,11 @@ export interface FaceRuntime {
356
356
  * Cleared when the child drain goes running again (resume via send_message).
357
357
  */
358
358
  suppressOwnedSubagentCompletion(childSessionId: string): void;
359
+ /**
360
+ * Tell the parent why a continuable child was stopped, and suppress the
361
+ * later idle "finished a turn" steer for this stretch.
362
+ */
363
+ notifyOwnedSubagentStopped(childSessionId: string, reason: "user" | "parent" | "takeover"): void;
359
364
  /** Shared shell registry for session-scoped job kill / background RPC. */
360
365
  readonly shell?: ShellService;
361
366
  }
@@ -1 +1 @@
1
- {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../src/handlers/session.ts"],"names":[],"mappings":"AAiDA,OAAO,EAAY,KAAK,WAAW,EAAE,MAAM,YAAY,CAAC;AA0DxD,eAAO,MAAM,aAAa,EAAE,WAuR3B,CAAC;AAEF,eAAO,MAAM,WAAW,EAAE,WA+DzB,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,WAqH5B,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,WAI3B,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,WAgL3B,CAAC;AAcF,eAAO,MAAM,aAAa,EAAE,WAiE3B,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,aAAa,EAAE,WAmG3B,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,WAc3B,CAAC;AAEF,eAAO,MAAM,kBAAkB,EAAE,WAUhC,CAAC;AAEF,eAAO,MAAM,WAAW,EAAE,WA0NzB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,eAAe,EAAE,WA4E7B,CAAC;AAEF,eAAO,MAAM,sBAAsB,EAAE,WA4CpC,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,0BAA0B,EAAE,WA2CxC,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,WAkC3B,CAAC;AAEF,eAAO,MAAM,kBAAkB,EAAE,WAiLhC,CAAC;AAEF,gEAAgE;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAEnD,eAAO,MAAM,aAAa,EAAE,WAmB3B,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,mBAAmB,EAAE,WA6CjC,CAAC"}
1
+ {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../src/handlers/session.ts"],"names":[],"mappings":"AAmDA,OAAO,EAAY,KAAK,WAAW,EAAE,MAAM,YAAY,CAAC;AA0DxD,eAAO,MAAM,aAAa,EAAE,WAuR3B,CAAC;AAEF,eAAO,MAAM,WAAW,EAAE,WA+DzB,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,WAwH5B,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,WAI3B,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,WAgL3B,CAAC;AA8CF,eAAO,MAAM,aAAa,EAAE,WAuD3B,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,aAAa,EAAE,WAqG3B,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,WAc3B,CAAC;AAEF,eAAO,MAAM,kBAAkB,EAAE,WAUhC,CAAC;AAEF,eAAO,MAAM,WAAW,EAAE,WAiOzB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,eAAe,EAAE,WA0F7B,CAAC;AAEF,eAAO,MAAM,sBAAsB,EAAE,WA4CpC,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,0BAA0B,EAAE,WA2CxC,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,WAkC3B,CAAC;AAEF,eAAO,MAAM,kBAAkB,EAAE,WAiLhC,CAAC;AAEF,gEAAgE;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAEnD,eAAO,MAAM,aAAa,EAAE,WAmB3B,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,mBAAmB,EAAE,WA6CjC,CAAC"}
@@ -4,6 +4,8 @@ import { flattenText, parseTurnEndCancelCause, } from "@xrkseek/protocol";
4
4
  import { FACE_AGENT_PRESET_IDS, canonicalAgentPresetId, resolveAgentPresetProfile, } from "../presets-catalog.js";
5
5
  import { isAgentTeamSpawnRole } from "../agent-team-roles.js";
6
6
  import { appearanceLookWire } from "../agent-roster-store.js";
7
+ import { formatPeerCollabStopNotice } from "../session-thread-message.js";
8
+ import { sessionIdsOnThread } from "../session-thread-publish.js";
7
9
  import { dressingFromPresence } from "../presence-dressing.js";
8
10
  import { toWireHistoryEntry, collectToolCallArgsForPage, routeFromRequestHeader } from "../adapt/index.js";
9
11
  import { rewritePendingAdmit } from "../update-queue-rewrite.js";
@@ -343,6 +345,9 @@ export const sessionHistory = async (runtime, _rpcId, payload) => {
343
345
  }
344
346
  const events = readSessionEvents(runtime.store, sessionId);
345
347
  runtime.wireIds.primeFromLog(sessionId, events);
348
+ // Resident eviction drops the in-memory allowlist; durable `path/allowlisted`
349
+ // rows live in the log — refill before any tool path gate runs.
350
+ runtime.pathAllowlist.hydrate(runtime.store, sessionId);
346
351
  const beforeSeq = typeof p.beforeSeq === "number" ? p.beforeSeq : undefined;
347
352
  const maxMessages = typeof p.maxMessages === "number"
348
353
  ? p.maxMessages
@@ -613,6 +618,38 @@ export const sessionPrompt = async (runtime, rpcId, payload) => {
613
618
  * Live `agent.abort` only accepts {@link AgentCancelCause} — `legacy` is a
614
619
  * durable turn/end fallback, so map it to `user` for the latch.
615
620
  */
621
+ function collabStopWhy(cause) {
622
+ if (cause.kind === "user")
623
+ return "stopped by the user";
624
+ if (cause.kind === "parent")
625
+ return "interrupted by the parent";
626
+ if (cause.kind === "disposed")
627
+ return "was disposed";
628
+ return `stopped by a hook (${cause.reason})`;
629
+ }
630
+ /** Steer every other parent on the same 主线 when this session is cut off. */
631
+ function notifyThreadCollabStopped(runtime, sessionId, cause) {
632
+ const workspaceId = runtime.workspaces.workspaceIdOf(sessionId);
633
+ if (!workspaceId)
634
+ return;
635
+ const bind = runtime.sessionThreads.bindOf(workspaceId, sessionId);
636
+ if (!bind)
637
+ return;
638
+ const peers = sessionIdsOnThread(runtime, workspaceId, bind.threadId)
639
+ .filter((id) => id !== sessionId && !runtime.subagents.getByChild(id));
640
+ if (peers.length === 0)
641
+ return;
642
+ const text = formatPeerCollabStopNotice({
643
+ sessionId,
644
+ why: collabStopWhy(cause),
645
+ });
646
+ for (const peerId of peers) {
647
+ void runtime.resolveAgent(peerId).then((peer) => {
648
+ peer.admit(text, { delivery: "steer" });
649
+ runtime.drain.wake(peerId);
650
+ }).catch(() => undefined);
651
+ }
652
+ }
616
653
  function cancelCauseFromPayload(payload) {
617
654
  const raw = asRecord(payload).cause;
618
655
  if (raw === undefined)
@@ -655,25 +692,18 @@ export const sessionCancel = async (runtime, _rpcId, payload) => {
655
692
  // floating "background job finished" toasts.
656
693
  killLiveSessionJobs(runtime.shell, sessionId);
657
694
  runtime.publishJobs(sessionId);
658
- // 3) Cascade to delegated children (fire-and-forget) — **user Stop only**.
659
- // A parent turn that completes on its own must NOT cancel background
660
- // children (they keep draining and still report natural / abnormal idle).
661
- // Manual parent Stop: stop the tree, stamp cause.kind "parent", and
662
- // suppressOwnedSubagentCompletion *before* child cancel so cancel→idle
663
- // does not steer a "finished a turn" notice with truncated body back
664
- // (interrupt_agent already suppresses; Stop cascade must match).
665
- const cascade = asRecord(payload).cascade !== false;
666
- if (cascade) {
667
- for (const link of runtime.subagents.listDelegated(sessionId)) {
668
- runtime.suppressOwnedSubagentCompletion(link.childSessionId);
669
- void sessionCancel(runtime, `tool-sa-c-${link.childSessionId}`, {
670
- sessionId: link.childSessionId,
671
- cascade: true,
672
- cause: { kind: "parent" },
673
- }).catch(() => undefined);
674
- }
675
- }
676
- // 4) Bounded drain join in the background. Returning accepted here unblocks
695
+ const childLink = runtime.subagents.getByChild(sessionId);
696
+ if (childLink?.mode === "continuable" &&
697
+ (cause.kind === "user" || cause.kind === "parent")) {
698
+ runtime.notifyOwnedSubagentStopped(sessionId, cause.kind);
699
+ }
700
+ else if (!childLink) {
701
+ notifyThreadCollabStopped(runtime, sessionId, cause);
702
+ }
703
+ // Delegated workers are independent sessions. Stopping, archiving, or
704
+ // deleting this session must not abort them; they finish and reply on
705
+ // their own (inline tool result, spill file, or a later user message).
706
+ // 3) Bounded drain join in the background. Returning accepted here unblocks
677
707
  // the client Stop click immediately; Host already published running:false
678
708
  // and aborted the turn. The latch keeps its entry on timeout so a message
679
709
  // admitted during teardown still drains once the stuck chain settles.
@@ -755,6 +785,8 @@ export const sessionDelete = async (runtime, _rpcId, payload) => {
755
785
  runtime.listProjectionCache.forget(sessionId);
756
786
  runtime.wireIds.clear(sessionId);
757
787
  runtime.inboxWire.clear(sessionId);
788
+ runtime.toolDisclosure.forget(sessionId);
789
+ runtime.pathAllowlist.forget(sessionId);
758
790
  runtime.sessionModels.delete(sessionId);
759
791
  try {
760
792
  clearSessionModelSelection(sessionModelsPath(runtime.productDir?.trim() || resolveXrkHome()), sessionId);
@@ -914,6 +946,13 @@ export const sessionFork = async (runtime, _rpcId, payload) => {
914
946
  runtime.watchSession(child.id);
915
947
  const parentCwd = resolveSessionCwd(runtime, sessionId);
916
948
  runtime.sessionCwds.set(child.id, parentCwd);
949
+ // Seed may carry durable path grants; subagent children also inherit the
950
+ // parent's live allowlist (same as session.create with parentSessionId).
951
+ if (linkMode !== "fork") {
952
+ runtime.pathAllowlist.inherit(child.id, sessionId);
953
+ runtime.pathAllowlist.hydrate(runtime.store, sessionId);
954
+ }
955
+ runtime.pathAllowlist.hydrate(runtime.store, child.id);
917
956
  if (prefixHasImageContent(seed)) {
918
957
  runtime.sessionHasImage.add(child.id);
919
958
  runtime.sessionImageScanned.add(child.id);
@@ -1069,6 +1108,17 @@ export const sessionTruncate = async (runtime, _rpcId, payload) => {
1069
1108
  }
1070
1109
  const n = sessionEventCount(runtime.store, sessionId);
1071
1110
  runtime.seq.ensureAtLeast(sessionId, n);
1111
+ // Edit-resubmit cuts the log in place; wire turn numbers must follow the
1112
+ // kept prefix (or restart at 1). Leaving the pre-cut map marks the next
1113
+ // turnId as 第 2 轮 even when the first opener was removed.
1114
+ runtime.wireIds.clear(sessionId);
1115
+ runtime.wireIds.primeFromLog(sessionId, readSessionEvents(runtime.store, sessionId));
1116
+ runtime.inboxWire.clear(sessionId);
1117
+ // Expanded MCP schemas are not in the log. Leaving them keeps the next
1118
+ // resubmit over the soft budget after the conversation itself was cut.
1119
+ runtime.toolDisclosure.forget(sessionId);
1120
+ runtime.pathAllowlist.forget(sessionId);
1121
+ runtime.pathAllowlist.hydrate(runtime.store, sessionId);
1072
1122
  void runtime.projections.snapshot(sessionId);
1073
1123
  forgetRequestHeaderCache(sessionId);
1074
1124
  return {