baxian 1.2.60 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (212) hide show
  1. package/README.md +7 -4
  2. package/README.zh-CN.md +7 -4
  3. package/dist/agent/bootstrap-poller.d.ts +1 -1
  4. package/dist/agent/bootstrap-poller.d.ts.map +1 -1
  5. package/dist/agent/bootstrap-poller.js.map +1 -1
  6. package/dist/agent/bootstrap.d.ts +1 -1
  7. package/dist/agent/bootstrap.d.ts.map +1 -1
  8. package/dist/agent/bootstrap.js +6 -2
  9. package/dist/agent/bootstrap.js.map +1 -1
  10. package/dist/agent/branch.d.ts +1 -2
  11. package/dist/agent/branch.d.ts.map +1 -1
  12. package/dist/agent/branch.js +2 -2
  13. package/dist/agent/branch.js.map +1 -1
  14. package/dist/agent/dispatch-reconciler.d.ts +0 -1
  15. package/dist/agent/dispatch-reconciler.d.ts.map +1 -1
  16. package/dist/agent/dispatch-reconciler.js +11 -50
  17. package/dist/agent/dispatch-reconciler.js.map +1 -1
  18. package/dist/agent/manager.d.ts +208 -85
  19. package/dist/agent/manager.d.ts.map +1 -1
  20. package/dist/agent/manager.js +3027 -1441
  21. package/dist/agent/manager.js.map +1 -1
  22. package/dist/agent/pane-streamer.js +1 -1
  23. package/dist/agent/pane-streamer.js.map +1 -1
  24. package/dist/agent/phase-signal-watcher.d.ts +47 -2
  25. package/dist/agent/phase-signal-watcher.d.ts.map +1 -1
  26. package/dist/agent/phase-signal-watcher.js +318 -49
  27. package/dist/agent/phase-signal-watcher.js.map +1 -1
  28. package/dist/agent/phase-signal.d.ts +11 -7
  29. package/dist/agent/phase-signal.d.ts.map +1 -1
  30. package/dist/agent/phase-signal.js +67 -9
  31. package/dist/agent/phase-signal.js.map +1 -1
  32. package/dist/agent/preflight.d.ts +23 -1
  33. package/dist/agent/preflight.d.ts.map +1 -1
  34. package/dist/agent/preflight.js +223 -24
  35. package/dist/agent/preflight.js.map +1 -1
  36. package/dist/agent/prompt.d.ts +16 -0
  37. package/dist/agent/prompt.d.ts.map +1 -1
  38. package/dist/agent/prompt.js +71 -11
  39. package/dist/agent/prompt.js.map +1 -1
  40. package/dist/agent/repo-store.d.ts +6 -1
  41. package/dist/agent/repo-store.d.ts.map +1 -1
  42. package/dist/agent/repo-store.js +44 -11
  43. package/dist/agent/repo-store.js.map +1 -1
  44. package/dist/agent/review-transport.d.ts +20 -1
  45. package/dist/agent/review-transport.d.ts.map +1 -1
  46. package/dist/agent/review-transport.js +68 -20
  47. package/dist/agent/review-transport.js.map +1 -1
  48. package/dist/api/config.d.ts.map +1 -1
  49. package/dist/api/config.js +20 -11
  50. package/dist/api/config.js.map +1 -1
  51. package/dist/api/hosts.d.ts.map +1 -1
  52. package/dist/api/hosts.js +3 -2
  53. package/dist/api/hosts.js.map +1 -1
  54. package/dist/api/platform-guard.d.ts +10 -2
  55. package/dist/api/platform-guard.d.ts.map +1 -1
  56. package/dist/api/platform-guard.js +112 -10
  57. package/dist/api/platform-guard.js.map +1 -1
  58. package/dist/api/projects.d.ts.map +1 -1
  59. package/dist/api/projects.js +87 -11
  60. package/dist/api/projects.js.map +1 -1
  61. package/dist/api/tasks.d.ts.map +1 -1
  62. package/dist/api/tasks.js +22 -14
  63. package/dist/api/tasks.js.map +1 -1
  64. package/dist/app.d.ts +4 -4
  65. package/dist/app.d.ts.map +1 -1
  66. package/dist/cli.d.ts.map +1 -1
  67. package/dist/cli.js +7 -0
  68. package/dist/cli.js.map +1 -1
  69. package/dist/config/hot-reload.d.ts +11 -2
  70. package/dist/config/hot-reload.d.ts.map +1 -1
  71. package/dist/config/hot-reload.js +43 -8
  72. package/dist/config/hot-reload.js.map +1 -1
  73. package/dist/config/loader.js +1 -1
  74. package/dist/config/loader.js.map +1 -1
  75. package/dist/config/validator.d.ts +3 -1
  76. package/dist/config/validator.d.ts.map +1 -1
  77. package/dist/config/validator.js +57 -28
  78. package/dist/config/validator.js.map +1 -1
  79. package/dist/event/handlers.d.ts.map +1 -1
  80. package/dist/event/handlers.js +616 -1067
  81. package/dist/event/handlers.js.map +1 -1
  82. package/dist/event/log.d.ts.map +1 -1
  83. package/dist/event/log.js +17 -2
  84. package/dist/event/log.js.map +1 -1
  85. package/dist/event/server-handlers.d.ts.map +1 -1
  86. package/dist/event/server-handlers.js +667 -440
  87. package/dist/event/server-handlers.js.map +1 -1
  88. package/dist/index.d.ts +4 -1
  89. package/dist/index.d.ts.map +1 -1
  90. package/dist/index.js +55 -79
  91. package/dist/index.js.map +1 -1
  92. package/dist/platform/command-renderer.d.ts +1 -0
  93. package/dist/platform/command-renderer.d.ts.map +1 -1
  94. package/dist/platform/command-renderer.js +16 -2
  95. package/dist/platform/command-renderer.js.map +1 -1
  96. package/dist/platform/comment-cursor.d.ts +9 -0
  97. package/dist/platform/comment-cursor.d.ts.map +1 -1
  98. package/dist/platform/comment-cursor.js +63 -5
  99. package/dist/platform/comment-cursor.js.map +1 -1
  100. package/dist/platform/driver-host.d.ts.map +1 -1
  101. package/dist/platform/driver-host.js +0 -2
  102. package/dist/platform/driver-host.js.map +1 -1
  103. package/dist/platform/driver-spec.d.ts.map +1 -1
  104. package/dist/platform/driver-spec.js +50 -6
  105. package/dist/platform/driver-spec.js.map +1 -1
  106. package/dist/platform/feedback.d.ts.map +1 -1
  107. package/dist/platform/feedback.js +0 -9
  108. package/dist/platform/feedback.js.map +1 -1
  109. package/dist/platform/git-driver.d.ts +10 -1
  110. package/dist/platform/git-driver.d.ts.map +1 -1
  111. package/dist/platform/git-driver.js +78 -5
  112. package/dist/platform/git-driver.js.map +1 -1
  113. package/dist/platform/platform-poller.d.ts +26 -5
  114. package/dist/platform/platform-poller.d.ts.map +1 -1
  115. package/dist/platform/platform-poller.js +362 -34
  116. package/dist/platform/platform-poller.js.map +1 -1
  117. package/dist/platform/plugin-registry.d.ts.map +1 -1
  118. package/dist/platform/plugin-registry.js +14 -2
  119. package/dist/platform/plugin-registry.js.map +1 -1
  120. package/dist/platform/plugins/github/baxian-plugin.json +1 -1
  121. package/dist/platform/plugins/github/driver.json +17 -3
  122. package/dist/platform/plugins/github/skills/baxian-cli-gh/SKILL.md +21 -11
  123. package/dist/platform/plugins/github/skills/baxian-cli-gh/agents/openai.yaml +2 -0
  124. package/dist/platform/pr-binding.d.ts.map +1 -1
  125. package/dist/platform/pr-binding.js +0 -2
  126. package/dist/platform/pr-binding.js.map +1 -1
  127. package/dist/{github → platform}/pr-conversation-cache.d.ts +11 -4
  128. package/dist/platform/pr-conversation-cache.d.ts.map +1 -0
  129. package/dist/platform/pr-conversation-cache.js +199 -0
  130. package/dist/platform/pr-conversation-cache.js.map +1 -0
  131. package/dist/platform/preflight-exec.d.ts +21 -0
  132. package/dist/platform/preflight-exec.d.ts.map +1 -0
  133. package/dist/platform/preflight-exec.js +62 -0
  134. package/dist/platform/preflight-exec.js.map +1 -0
  135. package/dist/platform/review-timeline.d.ts +16 -0
  136. package/dist/platform/review-timeline.d.ts.map +1 -0
  137. package/dist/platform/review-timeline.js +195 -0
  138. package/dist/platform/review-timeline.js.map +1 -0
  139. package/dist/platform/row-schema.d.ts.map +1 -1
  140. package/dist/platform/row-schema.js +1 -0
  141. package/dist/platform/row-schema.js.map +1 -1
  142. package/dist/platform/startup.d.ts +34 -2
  143. package/dist/platform/startup.d.ts.map +1 -1
  144. package/dist/platform/startup.js +107 -4
  145. package/dist/platform/startup.js.map +1 -1
  146. package/dist/platform/types.d.ts +4 -0
  147. package/dist/platform/types.d.ts.map +1 -1
  148. package/dist/platform/types.js +6 -4
  149. package/dist/platform/types.js.map +1 -1
  150. package/dist/platform/verdict-engine.d.ts.map +1 -1
  151. package/dist/platform/verdict-engine.js +0 -2
  152. package/dist/platform/verdict-engine.js.map +1 -1
  153. package/dist/shared/git-url.d.ts +1 -0
  154. package/dist/shared/git-url.d.ts.map +1 -1
  155. package/dist/shared/git-url.js +3 -0
  156. package/dist/shared/git-url.js.map +1 -1
  157. package/dist/shared/types.d.ts +90 -9
  158. package/dist/shared/types.d.ts.map +1 -1
  159. package/dist/shared/types.js.map +1 -1
  160. package/dist/skill/registry.d.ts +9 -2
  161. package/dist/skill/registry.d.ts.map +1 -1
  162. package/dist/skill/registry.js +88 -54
  163. package/dist/skill/registry.js.map +1 -1
  164. package/dist/skills/baxian-pr-feedback/SKILL.md +5 -11
  165. package/dist/skills/baxian-pr-recheck/SKILL.md +4 -43
  166. package/dist/skills/baxian-pr-review/SKILL.md +5 -42
  167. package/dist/skills/baxian-research/SKILL.md +1 -1
  168. package/dist/skills/baxian-server-feedback/SKILL.md +7 -5
  169. package/dist/skills/baxian-signals/SKILL.md +21 -8
  170. package/dist/skills/baxian-task-check/SKILL.md +5 -5
  171. package/dist/state/agent-store.d.ts.map +1 -1
  172. package/dist/state/agent-store.js +25 -2
  173. package/dist/state/agent-store.js.map +1 -1
  174. package/dist/state/review-store.d.ts +21 -1
  175. package/dist/state/review-store.d.ts.map +1 -1
  176. package/dist/state/review-store.js +132 -0
  177. package/dist/state/review-store.js.map +1 -1
  178. package/dist/state/task-store.d.ts +6 -0
  179. package/dist/state/task-store.d.ts.map +1 -1
  180. package/dist/state/task-store.js +262 -21
  181. package/dist/state/task-store.js.map +1 -1
  182. package/dist/terminal/attach.d.ts.map +1 -1
  183. package/dist/terminal/attach.js +7 -6
  184. package/dist/terminal/attach.js.map +1 -1
  185. package/dist/web/assets/{index-CwYBVTyn.css → index-BPv6vv3U.css} +1 -1
  186. package/dist/web/assets/index-BXfgaFNm.js +18 -0
  187. package/dist/web/index.html +2 -2
  188. package/package.json +1 -1
  189. package/dist/github/mapper.d.ts +0 -9
  190. package/dist/github/mapper.d.ts.map +0 -1
  191. package/dist/github/mapper.js +0 -25
  192. package/dist/github/mapper.js.map +0 -1
  193. package/dist/github/poller.d.ts +0 -73
  194. package/dist/github/poller.d.ts.map +0 -1
  195. package/dist/github/poller.js +0 -556
  196. package/dist/github/poller.js.map +0 -1
  197. package/dist/github/pr-conversation-cache.d.ts.map +0 -1
  198. package/dist/github/pr-conversation-cache.js +0 -105
  199. package/dist/github/pr-conversation-cache.js.map +0 -1
  200. package/dist/github/pr-conversation.d.ts +0 -7
  201. package/dist/github/pr-conversation.d.ts.map +0 -1
  202. package/dist/github/pr-conversation.js +0 -175
  203. package/dist/github/pr-conversation.js.map +0 -1
  204. package/dist/github/resolver.d.ts +0 -8
  205. package/dist/github/resolver.d.ts.map +0 -1
  206. package/dist/github/resolver.js +0 -28
  207. package/dist/github/resolver.js.map +0 -1
  208. package/dist/state/post-approve-store.d.ts +0 -23
  209. package/dist/state/post-approve-store.d.ts.map +0 -1
  210. package/dist/state/post-approve-store.js +0 -82
  211. package/dist/state/post-approve-store.js.map +0 -1
  212. package/dist/web/assets/index-DtnDvjOU.js +0 -16
@@ -1,10 +1,8 @@
1
- import { scanNeedInputSignals, scanPhaseSignals, scanReadFileSignals, } from './phase-signal.js';
1
+ import { compactBoundaryIndex, scanAskAnswerSignals, scanPhaseSignals, scanReadFileSignals, } from './phase-signal.js';
2
2
  const MATCH_BUFFER_CHARS = 1024;
3
3
  const KIND_TO_EVENT_TYPE = {
4
4
  'spec-fixed': 'server.spec.fix.submitted',
5
5
  'pr-created': 'pr.created',
6
- 'pr-approved': 'review.submitted',
7
- 'pr-changes-requested': 'review.submitted',
8
6
  'pr-fixed': 'pr.fix.submitted',
9
7
  'pr-merge-ready': 'pr.updated',
10
8
  'spec-done': 'server.spec.ready',
@@ -24,9 +22,16 @@ function normalizeKinds(input) {
24
22
  function entryKey(taskId, agentId) {
25
23
  return `${taskId}:${agentId}`;
26
24
  }
25
+ const ARM_FENCE_CAP = 4096;
27
26
  export class PhaseSignalWatcher {
28
27
  deps;
29
28
  entries = new Map();
29
+ armFences = new Map();
30
+ // Arms that claimed ownership but have not installed yet (their subscribe is in
31
+ // flight). The own-token fence must see them, or a stale replay would evict a
32
+ // current-token pass whose watcher is merely slow to attach.
33
+ pendingArms = new Map();
34
+ armCounter = 0;
30
35
  constructor(deps) {
31
36
  this.deps = deps;
32
37
  }
@@ -41,10 +46,36 @@ export class PhaseSignalWatcher {
41
46
  return this.taskEntries(args.taskId);
42
47
  }
43
48
  async start(args) {
44
- if (args.onlyReplaceOwnToken
45
- && this.replaceTargets(args).some(entry => entry.expectedToken !== args.token)) {
46
- return false;
49
+ // Everything up to the first await is one atomic section with the caller's epoch bump.
50
+ const key = entryKey(args.taskId, args.agentId);
51
+ const predecessor = this.entries.get(key);
52
+ // The predecessor keeps consuming pane data while we subscribe: hand it this arm's
53
+ // generation now, or answers it consumes in that window fence against the store.
54
+ if (args.needInput !== undefined && args.needInputInherit
55
+ && predecessor?.expectedToken === args.token) {
56
+ this.migrateEntryGeneration(predecessor, args.needInput, true);
47
57
  }
58
+ // Our caller bumped the store before calling us, so any rejection leaves the store
59
+ // ahead of the installed entry. Rescue it — but only when it is still the very entry
60
+ // this arm started against: a successor installed meanwhile owns a newer generation
61
+ // and adopting ours would drag it back to a superseded watermark.
62
+ const rejectArm = () => {
63
+ if (args.needInput !== undefined
64
+ && predecessor
65
+ && this.entries.get(key) === predecessor
66
+ && (args.replaceFromToken === undefined || predecessor.expectedToken === args.token)) {
67
+ this.migrateEntryGeneration(predecessor, args.needInput, args.needInputInherit === true && predecessor.expectedToken === args.token);
68
+ }
69
+ return false;
70
+ };
71
+ if (!this.ownsArmClaim(args, args.armClaimId))
72
+ return rejectArm();
73
+ if (this.hasForeignTokenOwner(args, args.armClaimId))
74
+ return rejectArm();
75
+ // Fence bookkeeping happens on ENTRY, before any await: even an arm that later
76
+ // fails to subscribe leaves its generation/arrival behind to fence older stragglers.
77
+ const armSeq = ++this.armCounter;
78
+ this.touchArmFence(key, armSeq, args.needInput?.epoch);
48
79
  // The old entry keeps consuming until the replacement subscription exists; a failed start must not orphan the signal.
49
80
  const expectedKinds = normalizeKinds(args.expectedKinds);
50
81
  const kindsLabel = [...expectedKinds].join(',');
@@ -57,7 +88,7 @@ export class PhaseSignalWatcher {
57
88
  agentId: args.agentId,
58
89
  phase: `signal-setup-no-agent:${kindsLabel}`,
59
90
  });
60
- return false;
91
+ return rejectArm();
61
92
  }
62
93
  const streamer = this.deps.paneStreamerManager.ensure(agent);
63
94
  const entry = {
@@ -68,8 +99,11 @@ export class PhaseSignalWatcher {
68
99
  expectedToken: args.token,
69
100
  ...(args.onReadFile ? { onReadFile: args.onReadFile } : {}),
70
101
  seenReadFile: new Set(),
71
- ...(args.onNeedInput ? { onNeedInput: args.onNeedInput } : {}),
72
- needInputFired: false,
102
+ askSeq: args.needInput?.askSeq ?? 0,
103
+ answeredSeq: args.needInput?.answeredSeq ?? 0,
104
+ epoch: args.needInput?.epoch ?? 0,
105
+ snapshotReconcile: args.needInputInherit === true && args.needInput !== undefined,
106
+ commitEnabled: args.needInput !== undefined,
73
107
  needInputBuffer: '',
74
108
  recovered: args.recovered ?? false,
75
109
  buffer: '',
@@ -92,28 +126,162 @@ export class PhaseSignalWatcher {
92
126
  phase: `signal-setup-failed:${kindsLabel}`,
93
127
  error: err instanceof Error ? err.message : String(err),
94
128
  });
95
- return false;
129
+ return rejectArm();
96
130
  }
97
- // A successor may have armed while the subscription was in flight.
131
+ // ---- Fences first: every rejection must happen BEFORE any raced entry is dropped,
132
+ // or a doomed stale arm would tear down a live sibling watcher on its way out.
98
133
  const raced = this.replaceTargets(args);
99
- if (raced.length > 0) {
100
- if (args.onlyReplaceOwnToken && raced.some(existing => existing.expectedToken !== args.token)) {
101
- try {
102
- sub.unsubscribe();
103
- }
104
- catch { }
105
- return false;
134
+ const rejectAfterSubscribe = () => {
135
+ try {
136
+ sub.unsubscribe();
137
+ }
138
+ catch { }
139
+ return rejectArm();
140
+ };
141
+ if (this.hasForeignTokenOwner(args, args.armClaimId))
142
+ return rejectAfterSubscribe();
143
+ const own = this.entries.get(key);
144
+ // Generation-monotonic install: the bump order IS the arm order, so a smaller epoch
145
+ // identifies a late arrival that must not demote the persisted generation. The fence
146
+ // record (not the live entry) carries this across subscribe failures and exits.
147
+ if (own?.commitEnabled && args.needInput !== undefined && own.epoch > args.needInput.epoch) {
148
+ return rejectAfterSubscribe();
149
+ }
150
+ const fence = this.armFences.get(key);
151
+ if (args.needInput !== undefined && (fence?.highWater ?? 0) > args.needInput.epoch) {
152
+ return rejectAfterSubscribe();
153
+ }
154
+ // Arrival-order fence covers what epochs cannot: a degraded successor (no generation)
155
+ // must still win over an older arm whose subscription settled after it.
156
+ if (fence !== undefined && fence.latestSeq !== armSeq) {
157
+ return rejectAfterSubscribe();
158
+ }
159
+ // ---- Install: merge, evict, subscribe hand-off.
160
+ if (args.needInput === undefined && own) {
161
+ // Degraded arm (bump failed): keep watching signals on the surviving entry's
162
+ // generation, but honour the wm-null contract — no badge commits, and only a
163
+ // restore intent may carry the ordinals (a fresh replay restarts at 1).
164
+ entry.epoch = own.epoch;
165
+ entry.commitEnabled = false;
166
+ if (args.needInputInherit) {
167
+ entry.askSeq = Math.max(entry.askSeq, own.askSeq);
168
+ entry.answeredSeq = Math.max(entry.answeredSeq, own.answeredSeq);
106
169
  }
107
- for (const existing of raced)
108
- this.dropEntry(existing);
109
170
  }
171
+ // Same-token restore transfer merges the predecessor's in-memory watermark: seqs it
172
+ // advanced but never persisted (error'd commits) must survive the swap.
173
+ const prior = args.needInputInherit
174
+ ? raced.find(existing => existing.taskId === args.taskId
175
+ && existing.agentId === args.agentId
176
+ && existing.expectedToken === args.token)
177
+ : undefined;
178
+ if (prior) {
179
+ entry.askSeq = Math.max(entry.askSeq, prior.askSeq);
180
+ entry.answeredSeq = Math.max(entry.answeredSeq, prior.answeredSeq);
181
+ }
182
+ for (const existing of raced)
183
+ this.dropEntry(existing);
110
184
  entry.unsubscribe = sub.unsubscribe;
111
- this.entries.set(entryKey(args.taskId, args.agentId), entry);
185
+ this.entries.set(key, entry);
186
+ // A merged watermark ahead of the bump write (the predecessor's error'd commits, whose
187
+ // retry intents the arm just cleared) must reach the new generation's persistence now,
188
+ // or a cleared badge could stay lit in the store forever.
189
+ if (args.needInput !== undefined
190
+ && (entry.askSeq > args.needInput.askSeq || entry.answeredSeq > args.needInput.answeredSeq)) {
191
+ this.commitWatermark(entry);
192
+ }
112
193
  if (!args.skipSnapshot) {
113
194
  this.onPaneData(entry, sub.snapshot.data, true);
114
195
  }
115
196
  return true;
116
197
  }
198
+ touchArmFence(key, armSeq, epoch) {
199
+ const cur = this.armFences.get(key);
200
+ const next = {
201
+ highWater: Math.max(cur?.highWater ?? 0, epoch ?? 0),
202
+ latestSeq: Math.max(cur?.latestSeq ?? 0, armSeq),
203
+ };
204
+ this.armFences.delete(key);
205
+ this.armFences.set(key, next);
206
+ if (this.armFences.size > ARM_FENCE_CAP) {
207
+ const oldest = this.armFences.keys().next().value;
208
+ if (oldest !== undefined)
209
+ this.armFences.delete(oldest);
210
+ }
211
+ }
212
+ hasForeignTokenOwner(args, selfArmId) {
213
+ if (!args.onlyReplaceOwnToken)
214
+ return false;
215
+ const installed = this.replaceTargets({
216
+ taskId: args.taskId,
217
+ agentId: args.agentId,
218
+ ...(args.replaceScope ? { replaceScope: args.replaceScope } : {}),
219
+ });
220
+ const replaceFromToken = args.replaceScope === 'agent' ? args.replaceFromToken : undefined;
221
+ if (installed.some(entry => entry.expectedToken !== args.token && entry.expectedToken !== replaceFromToken))
222
+ return true;
223
+ for (const [id, arm] of this.pendingArms) {
224
+ if (id === selfArmId)
225
+ continue;
226
+ if (arm.taskId !== args.taskId)
227
+ continue;
228
+ if (args.replaceScope === 'agent' && arm.agentId !== args.agentId)
229
+ continue;
230
+ if (arm.token !== args.token)
231
+ return true;
232
+ }
233
+ return false;
234
+ }
235
+ // Read-only ownership probe (no claim) — the fence a would-be arm faces right now.
236
+ wouldRejectOwnTokenArm(args) {
237
+ return this.hasForeignTokenOwner(args);
238
+ }
239
+ // Atomic decide-and-claim, called before the caller's epoch bump: a rejected arm must
240
+ // not bump (it would fence the owner), and a claimed arm must be visible to every
241
+ // later ownership probe until it installs or fails.
242
+ claimArm(args) {
243
+ if (this.hasForeignTokenOwner(args))
244
+ return null;
245
+ const armId = ++this.armCounter;
246
+ this.pendingArms.set(armId, { taskId: args.taskId, agentId: args.agentId, token: args.token });
247
+ return armId;
248
+ }
249
+ releaseArm(armId) {
250
+ if (armId != null)
251
+ this.pendingArms.delete(armId);
252
+ }
253
+ ownsArmClaim(args, armId) {
254
+ if (armId === undefined)
255
+ return true;
256
+ const claim = this.pendingArms.get(armId);
257
+ return claim?.taskId === args.taskId
258
+ && claim.agentId === args.agentId
259
+ && claim.token === args.token;
260
+ }
261
+ // Monotonic: never demote a generation a successor already owns. An in-memory lead
262
+ // (seqs the entry advanced but could not persist) is written out immediately.
263
+ migrateEntryGeneration(entry, wm, inherit) {
264
+ if (entry.commitEnabled && entry.epoch >= wm.epoch)
265
+ return;
266
+ entry.epoch = wm.epoch;
267
+ entry.commitEnabled = true;
268
+ this.touchArmFence(entryKey(entry.taskId, entry.agentId), 0, wm.epoch);
269
+ if (!inherit) {
270
+ // A fresh generation superseded whatever was open: adopt its stripped ordinals
271
+ // instead of re-committing the old question into it.
272
+ entry.askSeq = wm.askSeq;
273
+ entry.answeredSeq = wm.answeredSeq;
274
+ entry.snapshotReconcile = false;
275
+ return;
276
+ }
277
+ const leads = entry.askSeq > wm.askSeq || entry.answeredSeq > wm.answeredSeq;
278
+ // The watermark may lead the entry too (queue/ledger merges): adopt it, or the entry
279
+ // would answer a question it does not know is open.
280
+ entry.askSeq = Math.max(entry.askSeq, wm.askSeq);
281
+ entry.answeredSeq = Math.max(entry.answeredSeq, wm.answeredSeq);
282
+ if (leads)
283
+ this.commitWatermark(entry);
284
+ }
117
285
  dropEntry(entry) {
118
286
  this.entries.delete(entryKey(entry.taskId, entry.agentId));
119
287
  try {
@@ -137,6 +305,11 @@ export class PhaseSignalWatcher {
137
305
  this.dropEntry(entry);
138
306
  }
139
307
  }
308
+ stopAgentIfToken(taskId, agentId, expectedToken) {
309
+ const entry = this.entries.get(entryKey(taskId, agentId));
310
+ if (entry?.expectedToken === expectedToken)
311
+ this.dropEntry(entry);
312
+ }
140
313
  has(taskId, agentId) {
141
314
  if (agentId !== undefined)
142
315
  return this.entries.has(entryKey(taskId, agentId));
@@ -200,36 +373,135 @@ export class PhaseSignalWatcher {
200
373
  .catch(() => finish('session-gone'));
201
374
  });
202
375
  }
203
- // Re-arm takes effect immediately: dropping the need-input tail window means the
204
- // consumed literal cannot re-fire off the echo of the user's answer, while a
205
- // follow-up ask (arriving as new bytes) fires even when it comes right away.
206
- rearmNeedInput(agentId) {
376
+ commitWatermark(entry) {
377
+ const commit = this.deps.commitNeedInputWatermark;
378
+ if (!commit || !entry.commitEnabled)
379
+ return;
380
+ // Fire-and-forget by design: memory seqs never roll back on a failed write —
381
+ // the manager-side retry queue owns persistence convergence.
382
+ void commit({
383
+ agentId: entry.agentId,
384
+ taskId: entry.taskId,
385
+ epoch: entry.epoch,
386
+ askSeq: entry.askSeq,
387
+ answeredSeq: entry.answeredSeq,
388
+ }).catch(() => undefined);
389
+ }
390
+ markAnswered(entry) {
391
+ if (entry.askSeq <= entry.answeredSeq)
392
+ return false;
393
+ entry.answeredSeq = entry.askSeq;
394
+ return true;
395
+ }
396
+ // The user submitted input through baxian's own channel — the open question
397
+ // (if any) counts as answered. Returns whether any entry watches this agent:
398
+ // when one does, the store fallback must NOT run (it would re-read a moving
399
+ // watermark and could confirm an ask that arrived after this input).
400
+ // Returns the tasks whose watermark actually absorbed this input. Entries are settled
401
+ // synchronously, before any await: a question printed while this runs must not be
402
+ // swallowed as if it had been answered.
403
+ async rearmNeedInput(agentId) {
404
+ const handled = new Set();
405
+ const commits = [];
207
406
  for (const entry of this.entries.values()) {
208
407
  if (entry.agentId !== agentId)
209
408
  continue;
210
- if (!entry.needInputFired)
409
+ // A commit-disabled (degraded) entry cannot persist the answer, so it must not
410
+ // count as handled — the store fallback has to run instead.
411
+ if (entry.commitEnabled)
412
+ handled.add(entry.taskId);
413
+ if (!this.markAnswered(entry))
211
414
  continue;
212
- entry.needInputFired = false;
213
- entry.needInputBuffer = '';
415
+ const commit = this.deps.commitNeedInputWatermark;
416
+ if (!commit || !entry.commitEnabled)
417
+ continue;
418
+ commits.push(commit({
419
+ agentId: entry.agentId,
420
+ taskId: entry.taskId,
421
+ epoch: entry.epoch,
422
+ askSeq: entry.askSeq,
423
+ answeredSeq: entry.answeredSeq,
424
+ }).catch(() => 'error'));
214
425
  }
426
+ await Promise.all(commits);
427
+ return handled;
215
428
  }
216
- scanNeedInput(entry, chunk, isSnapshot) {
217
- if (!entry.onNeedInput)
429
+ onAskSignal(entry, sig) {
430
+ if (sig.seq !== undefined) {
431
+ if (sig.seq <= entry.askSeq)
432
+ return;
433
+ entry.askSeq = sig.seq;
434
+ }
435
+ else {
436
+ // Bare legacy ask: trust it only when no question is open (idempotent while lit).
437
+ if (entry.askSeq > entry.answeredSeq)
438
+ return;
439
+ entry.askSeq += 1;
440
+ }
441
+ this.commitWatermark(entry);
442
+ }
443
+ onAnswerSignal(entry, sig) {
444
+ if (entry.askSeq <= entry.answeredSeq)
445
+ return;
446
+ if (sig.seq !== undefined && sig.seq < entry.askSeq)
218
447
  return;
219
- // Snapshot content is ignored entirely (not even buffered). The persisted binding
220
- // flag alone carries pre-restart state: marking a scrollback literal as fired would
221
- // permanently swallow the next same-token ask when the user had already answered
222
- // before the restart, and a stale-but-still-open ask re-badges idempotently anyway.
223
- if (isSnapshot)
448
+ if (this.markAnswered(entry))
449
+ this.commitWatermark(entry);
450
+ }
451
+ scanNeedInput(entry, chunk, isSnapshot) {
452
+ // Snapshot asks and BARE answers stay blind (replaying them would relight or clear
453
+ // ambiguously), but a seq'd answer proves its numbered question was answered no
454
+ // matter when it was printed — this recovers a reply given while the server was
455
+ // down, which nothing else can carry (no ledger, no fallback, no live edge).
456
+ if (isSnapshot) {
457
+ // Seed the tail so a literal torn across the snapshot/live boundary still matches;
458
+ // the old/new region split keeps the seeded bytes from being applied twice.
459
+ entry.needInputBuffer = chunk.slice(-MATCH_BUFFER_CHARS);
460
+ if (!entry.snapshotReconcile)
461
+ return;
462
+ // A snapshot is a serialized framebuffer, not an output log: a TUI redraw can put
463
+ // later output on an earlier row, so screen position says nothing about time.
464
+ // Ordinals do — within one generation each question is asked once and confirmed
465
+ // once, so a literal's mere presence is the fact, wherever it sits.
466
+ let maxAsk = 0;
467
+ let maxAnswer = 0;
468
+ for (const sig of scanAskAnswerSignals(chunk)) {
469
+ if (sig.token !== entry.expectedToken || sig.seq === undefined)
470
+ continue;
471
+ if (sig.kind === 'ask')
472
+ maxAsk = Math.max(maxAsk, sig.seq);
473
+ else
474
+ maxAnswer = Math.max(maxAnswer, sig.seq);
475
+ }
476
+ const askSeq = Math.max(entry.askSeq, maxAsk);
477
+ const answeredSeq = Math.min(askSeq, Math.max(entry.answeredSeq, maxAnswer));
478
+ if (askSeq === entry.askSeq && answeredSeq === entry.answeredSeq)
479
+ return;
480
+ entry.askSeq = askSeq;
481
+ entry.answeredSeq = answeredSeq;
482
+ this.commitWatermark(entry);
224
483
  return;
484
+ }
485
+ // Matches that end inside the old tail are rescans of already-processed bytes:
486
+ // applying them again would let a swallowed answer clear a later ask, while
487
+ // clearing the buffer instead would drop a torn next-ask prefix. Skipping them
488
+ // keeps both; genuinely new literals (even replayed by a redraw as fresh bytes)
489
+ // land in the new region and are handled by the seq watermark. The boundary is
490
+ // mapped through the COMBINED compact transform — compacting the tail on its own
491
+ // would misplace it whenever an escape/whitespace run straddles the chunk seam.
225
492
  const combined = entry.needInputBuffer + chunk;
493
+ const oldRegionLen = compactBoundaryIndex(combined, entry.needInputBuffer.length);
226
494
  entry.needInputBuffer = combined.slice(-MATCH_BUFFER_CHARS);
227
- if (entry.needInputFired)
228
- return;
229
- if (!scanNeedInputSignals(combined).some(s => s.token === entry.expectedToken))
230
- return;
231
- entry.needInputFired = true;
232
- entry.onNeedInput(true);
495
+ for (const sig of scanAskAnswerSignals(combined)) {
496
+ if (sig.token !== entry.expectedToken)
497
+ continue;
498
+ if (sig.index + sig.raw.length <= oldRegionLen)
499
+ continue;
500
+ if (sig.kind === 'ask')
501
+ this.onAskSignal(entry, sig);
502
+ else
503
+ this.onAnswerSignal(entry, sig);
504
+ }
233
505
  }
234
506
  onPaneData(entry, chunk, isSnapshot = false) {
235
507
  if (this.entries.get(entryKey(entry.taskId, entry.agentId)) !== entry)
@@ -259,12 +531,9 @@ export class PhaseSignalWatcher {
259
531
  entry.unsubscribe();
260
532
  }
261
533
  catch { }
262
- // Unconditional: a recovered watch may not have rebuilt needInputFired even though
263
- // the persisted badge is set — the phase signal ends the dispatch either way.
264
- entry.onNeedInput?.(false);
265
- const verdictAction = signal.kind === 'pr-approved' ? 'APPROVE'
266
- : signal.kind === 'pr-changes-requested' ? 'REQUEST_CHANGES'
267
- : undefined;
534
+ // The phase signal ends the dispatch: whatever question was open counts as closed.
535
+ if (this.markAnswered(entry))
536
+ this.commitWatermark(entry);
268
537
  const event = {
269
538
  id: '',
270
539
  type: KIND_TO_EVENT_TYPE[signal.kind],
@@ -282,7 +551,6 @@ export class PhaseSignalWatcher {
282
551
  ...(signal.kind === 'code-ready' && signal.prNumber !== undefined
283
552
  ? { prNumber: signal.prNumber }
284
553
  : {}),
285
- ...(verdictAction ? { action: verdictAction } : {}),
286
554
  },
287
555
  };
288
556
  void this.emitCompletion(event, entry, signal.kind);
@@ -308,7 +576,8 @@ export class PhaseSignalWatcher {
308
576
  this.entries.delete(entryKey(entry.taskId, entry.agentId));
309
577
  if (entry.fired)
310
578
  return;
311
- entry.onNeedInput?.(false);
579
+ if (this.markAnswered(entry))
580
+ this.commitWatermark(entry);
312
581
  const kindsLabel = [...entry.expectedKinds].join(',');
313
582
  void this.emitInterventionFireAndForget({
314
583
  taskId: entry.taskId,
@@ -1 +1 @@
1
- {"version":3,"file":"phase-signal-watcher.js","sourceRoot":"","sources":["../../src/agent/phase-signal-watcher.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"phase-signal-watcher.js","sourceRoot":"","sources":["../../src/agent/phase-signal-watcher.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
- export type PhaseSignalKind = 'spec-fixed' | 'pr-created' | 'pr-approved' | 'pr-changes-requested' | 'pr-fixed' | 'pr-merge-ready' | 'spec-done' | 'spec-reviewed' | 'code-done' | 'code-reviewed' | 'code-fixed' | 'code-ready' | 'greeting';
1
+ export type PhaseSignalKind = 'spec-fixed' | 'pr-created' | 'pr-fixed' | 'pr-merge-ready' | 'spec-done' | 'spec-reviewed' | 'code-done' | 'code-reviewed' | 'code-fixed' | 'code-ready' | 'greeting';
2
+ export declare const PASSIVE_VERDICT_WATCH: readonly PhaseSignalKind[];
2
3
  export declare const PHASE_SIGNAL_KINDS: readonly PhaseSignalKind[];
3
4
  export type PhaseSignal = {
4
5
  kind: 'spec-fixed';
@@ -8,12 +9,6 @@ export type PhaseSignal = {
8
9
  token: string;
9
10
  prNumber: number;
10
11
  actorB64?: string;
11
- } | {
12
- kind: 'pr-approved';
13
- token: string;
14
- } | {
15
- kind: 'pr-changes-requested';
16
- token: string;
17
12
  } | {
18
13
  kind: 'pr-fixed';
19
14
  token: string;
@@ -52,9 +47,18 @@ export declare function decodeSignalActorId(actorB64: string): string | undefine
52
47
  export declare function scanPhaseSignals(text: string): PhaseSignal[];
53
48
  export interface NeedInputSignal {
54
49
  token: string;
50
+ seq?: number;
55
51
  raw: string;
52
+ index: number;
53
+ }
54
+ export interface AskAnswerSignal extends NeedInputSignal {
55
+ kind: 'ask' | 'answer';
56
56
  }
57
+ export declare function compactSignalText(text: string): string;
58
+ export declare function compactBoundaryIndex(text: string, rawBoundary: number): number;
57
59
  export declare function scanNeedInputSignals(text: string): NeedInputSignal[];
60
+ export declare function scanInputReceivedSignals(text: string): NeedInputSignal[];
61
+ export declare function scanAskAnswerSignals(text: string): AskAnswerSignal[];
58
62
  export interface ReadFileSignal {
59
63
  file: string;
60
64
  startLine: number;
@@ -1 +1 @@
1
- {"version":3,"file":"phase-signal.d.ts","sourceRoot":"","sources":["../../src/agent/phase-signal.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,eAAe,GACvB,YAAY,GACZ,YAAY,GACZ,aAAa,GACb,sBAAsB,GACtB,UAAU,GACV,gBAAgB,GAChB,WAAW,GACX,eAAe,GACf,WAAW,GACX,eAAe,GACf,YAAY,GACZ,YAAY,GACZ,UAAU,CAAC;AAEf,eAAO,MAAM,kBAAkB,EAAE,SAAS,eAAe,EAc/C,CAAC;AAEX,MAAM,MAAM,WAAW,GACnB;IAAE,IAAI,EAAE,YAAY,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GACrC;IAAE,IAAI,EAAE,YAAY,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,GAC1E;IAAE,IAAI,EAAE,aAAa,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GACtC;IAAE,IAAI,EAAE,sBAAsB,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAC/C;IAAE,IAAI,EAAE,UAAU,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GACnC;IAAE,IAAI,EAAE,gBAAgB,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GACzC;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GACpC;IAAE,IAAI,EAAE,eAAe,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GACxC;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GACpC;IAAE,IAAI,EAAE,eAAe,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GACxC;IAAE,IAAI,EAAE,YAAY,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GACrC;IAAE,IAAI,EAAE,YAAY,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,GACxD;IAAE,IAAI,EAAE,UAAU,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAsBxC,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEpD;AAED,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,OAAO,CAAC,eAAe,EAAE,YAAY,GAAG,YAAY,CAAC,EAC3D,KAAK,EAAE,MAAM,GACZ,MAAM,CAAC;AACV,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,YAAY,EAClB,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,EAChB,QAAQ,CAAC,EAAE,MAAM,GAChB,MAAM,CAAC;AACV,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,YAAY,EAClB,KAAK,EAAE,MAAM,EACb,QAAQ,CAAC,EAAE,MAAM,GAChB,MAAM,CAAC;AAqBV,wBAAgB,iBAAiB,IAAI,MAAM,CAE1C;AAED,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAYxE;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,EAAE,CA4B5D;AAED,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;CACb;AAID,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,eAAe,EAAE,CAOpE;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,MAAM,CAAC;CACb;AAID,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,cAAc,EAAE,CAUlE"}
1
+ {"version":3,"file":"phase-signal.d.ts","sourceRoot":"","sources":["../../src/agent/phase-signal.ts"],"names":[],"mappings":"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"}