baxian 2.0.1 → 2.0.3

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 (259) hide show
  1. package/README.md +5 -7
  2. package/README.zh-CN.md +5 -7
  3. package/dist/agent/bootstrap.d.ts.map +1 -1
  4. package/dist/agent/bootstrap.js +2 -4
  5. package/dist/agent/bootstrap.js.map +1 -1
  6. package/dist/agent/branch.d.ts +0 -12
  7. package/dist/agent/branch.d.ts.map +1 -1
  8. package/dist/agent/branch.js +1 -78
  9. package/dist/agent/branch.js.map +1 -1
  10. package/dist/agent/detect/region.d.ts.map +1 -1
  11. package/dist/agent/detect/region.js +0 -3
  12. package/dist/agent/detect/region.js.map +1 -1
  13. package/dist/agent/dispatch-reconciler.d.ts.map +1 -1
  14. package/dist/agent/dispatch-reconciler.js +8 -59
  15. package/dist/agent/dispatch-reconciler.js.map +1 -1
  16. package/dist/agent/lineage.d.ts.map +1 -1
  17. package/dist/agent/lineage.js +0 -9
  18. package/dist/agent/lineage.js.map +1 -1
  19. package/dist/agent/manager.d.ts +66 -142
  20. package/dist/agent/manager.d.ts.map +1 -1
  21. package/dist/agent/manager.js +936 -2738
  22. package/dist/agent/manager.js.map +1 -1
  23. package/dist/agent/net-exec.d.ts.map +1 -1
  24. package/dist/agent/net-exec.js +0 -5
  25. package/dist/agent/net-exec.js.map +1 -1
  26. package/dist/agent/pane-streamer-manager.d.ts.map +1 -1
  27. package/dist/agent/pane-streamer-manager.js +0 -36
  28. package/dist/agent/pane-streamer-manager.js.map +1 -1
  29. package/dist/agent/pane-streamer.d.ts +10 -1
  30. package/dist/agent/pane-streamer.d.ts.map +1 -1
  31. package/dist/agent/pane-streamer.js +142 -79
  32. package/dist/agent/pane-streamer.js.map +1 -1
  33. package/dist/agent/phase-signal-watcher.d.ts +2 -11
  34. package/dist/agent/phase-signal-watcher.d.ts.map +1 -1
  35. package/dist/agent/phase-signal-watcher.js +36 -160
  36. package/dist/agent/phase-signal-watcher.js.map +1 -1
  37. package/dist/agent/phase-signal.d.ts +13 -40
  38. package/dist/agent/phase-signal.d.ts.map +1 -1
  39. package/dist/agent/phase-signal.js +38 -98
  40. package/dist/agent/phase-signal.js.map +1 -1
  41. package/dist/agent/preflight.d.ts +0 -1
  42. package/dist/agent/preflight.d.ts.map +1 -1
  43. package/dist/agent/preflight.js +6 -31
  44. package/dist/agent/preflight.js.map +1 -1
  45. package/dist/agent/prompt.d.ts +1 -30
  46. package/dist/agent/prompt.d.ts.map +1 -1
  47. package/dist/agent/prompt.js +20 -148
  48. package/dist/agent/prompt.js.map +1 -1
  49. package/dist/agent/repo-store.d.ts.map +1 -1
  50. package/dist/agent/repo-store.js +0 -42
  51. package/dist/agent/repo-store.js.map +1 -1
  52. package/dist/agent/runner.d.ts.map +1 -1
  53. package/dist/agent/runner.js +0 -2
  54. package/dist/agent/runner.js.map +1 -1
  55. package/dist/agent/tmux-install.js +0 -1
  56. package/dist/agent/tmux-install.js.map +1 -1
  57. package/dist/agent/tmux-probe-poller.d.ts.map +1 -1
  58. package/dist/agent/tmux-probe-poller.js +0 -7
  59. package/dist/agent/tmux-probe-poller.js.map +1 -1
  60. package/dist/agent/tmux.d.ts.map +1 -1
  61. package/dist/agent/tmux.js +0 -86
  62. package/dist/agent/tmux.js.map +1 -1
  63. package/dist/agent/vt-visible-text.d.ts +87 -0
  64. package/dist/agent/vt-visible-text.d.ts.map +1 -0
  65. package/dist/agent/vt-visible-text.js +1058 -0
  66. package/dist/agent/vt-visible-text.js.map +1 -0
  67. package/dist/api/agents.d.ts.map +1 -1
  68. package/dist/api/agents.js +1 -42
  69. package/dist/api/agents.js.map +1 -1
  70. package/dist/api/config.d.ts.map +1 -1
  71. package/dist/api/config.js +8 -53
  72. package/dist/api/config.js.map +1 -1
  73. package/dist/api/hosts.d.ts.map +1 -1
  74. package/dist/api/hosts.js +2 -57
  75. package/dist/api/hosts.js.map +1 -1
  76. package/dist/api/platform-guard.d.ts.map +1 -1
  77. package/dist/api/platform-guard.js +2 -3
  78. package/dist/api/platform-guard.js.map +1 -1
  79. package/dist/api/probe.d.ts.map +1 -1
  80. package/dist/api/probe.js +0 -1
  81. package/dist/api/probe.js.map +1 -1
  82. package/dist/api/projects.d.ts.map +1 -1
  83. package/dist/api/projects.js +599 -332
  84. package/dist/api/projects.js.map +1 -1
  85. package/dist/api/tasks.d.ts.map +1 -1
  86. package/dist/api/tasks.js +15 -40
  87. package/dist/api/tasks.js.map +1 -1
  88. package/dist/app.d.ts +0 -2
  89. package/dist/app.d.ts.map +1 -1
  90. package/dist/app.js +0 -6
  91. package/dist/app.js.map +1 -1
  92. package/dist/cli.d.ts.map +1 -1
  93. package/dist/cli.js +4 -29
  94. package/dist/cli.js.map +1 -1
  95. package/dist/config/hot-reload.d.ts.map +1 -1
  96. package/dist/config/hot-reload.js +0 -4
  97. package/dist/config/hot-reload.js.map +1 -1
  98. package/dist/config/loader.d.ts +5 -1
  99. package/dist/config/loader.d.ts.map +1 -1
  100. package/dist/config/loader.js +36 -47
  101. package/dist/config/loader.js.map +1 -1
  102. package/dist/config/normalizer.d.ts.map +1 -1
  103. package/dist/config/normalizer.js +0 -19
  104. package/dist/config/normalizer.js.map +1 -1
  105. package/dist/config/validator.d.ts +7 -4
  106. package/dist/config/validator.d.ts.map +1 -1
  107. package/dist/config/validator.js +56 -270
  108. package/dist/config/validator.js.map +1 -1
  109. package/dist/event/handlers.d.ts.map +1 -1
  110. package/dist/event/handlers.js +356 -234
  111. package/dist/event/handlers.js.map +1 -1
  112. package/dist/event/log.js +0 -2
  113. package/dist/event/log.js.map +1 -1
  114. package/dist/index.d.ts.map +1 -1
  115. package/dist/index.js +0 -50
  116. package/dist/index.js.map +1 -1
  117. package/dist/platform/body-digest.d.ts.map +1 -1
  118. package/dist/platform/body-digest.js +0 -4
  119. package/dist/platform/body-digest.js.map +1 -1
  120. package/dist/platform/command-renderer.d.ts +6 -0
  121. package/dist/platform/command-renderer.d.ts.map +1 -1
  122. package/dist/platform/command-renderer.js +20 -3
  123. package/dist/platform/command-renderer.js.map +1 -1
  124. package/dist/platform/comment-cursor.d.ts.map +1 -1
  125. package/dist/platform/comment-cursor.js +0 -21
  126. package/dist/platform/comment-cursor.js.map +1 -1
  127. package/dist/platform/driver-host.d.ts.map +1 -1
  128. package/dist/platform/driver-host.js +3 -1
  129. package/dist/platform/driver-host.js.map +1 -1
  130. package/dist/platform/driver-spec.d.ts.map +1 -1
  131. package/dist/platform/driver-spec.js +33 -46
  132. package/dist/platform/driver-spec.js.map +1 -1
  133. package/dist/platform/field-mapper.d.ts.map +1 -1
  134. package/dist/platform/field-mapper.js +3 -11
  135. package/dist/platform/field-mapper.js.map +1 -1
  136. package/dist/platform/git-driver.d.ts +2 -0
  137. package/dist/platform/git-driver.d.ts.map +1 -1
  138. package/dist/platform/git-driver.js +9 -23
  139. package/dist/platform/git-driver.js.map +1 -1
  140. package/dist/platform/manifest.d.ts.map +1 -1
  141. package/dist/platform/manifest.js +0 -3
  142. package/dist/platform/manifest.js.map +1 -1
  143. package/dist/platform/markers.d.ts.map +1 -1
  144. package/dist/platform/markers.js +0 -19
  145. package/dist/platform/markers.js.map +1 -1
  146. package/dist/platform/platform-poller.d.ts +0 -1
  147. package/dist/platform/platform-poller.d.ts.map +1 -1
  148. package/dist/platform/platform-poller.js +0 -49
  149. package/dist/platform/platform-poller.js.map +1 -1
  150. package/dist/platform/plugin-registry.d.ts.map +1 -1
  151. package/dist/platform/plugin-registry.js +1 -12
  152. package/dist/platform/plugin-registry.js.map +1 -1
  153. package/dist/platform/plugins/github/driver.json +5 -0
  154. package/dist/platform/plugins/github/skills/baxian-cli-gh/SKILL.md +20 -14
  155. package/dist/platform/pr-conversation-cache.d.ts.map +1 -1
  156. package/dist/platform/pr-conversation-cache.js +0 -17
  157. package/dist/platform/pr-conversation-cache.js.map +1 -1
  158. package/dist/platform/preflight-exec.d.ts.map +1 -1
  159. package/dist/platform/preflight-exec.js +0 -9
  160. package/dist/platform/preflight-exec.js.map +1 -1
  161. package/dist/platform/response-parser.d.ts.map +1 -1
  162. package/dist/platform/response-parser.js +0 -4
  163. package/dist/platform/response-parser.js.map +1 -1
  164. package/dist/platform/review-timeline.d.ts.map +1 -1
  165. package/dist/platform/review-timeline.js +0 -22
  166. package/dist/platform/review-timeline.js.map +1 -1
  167. package/dist/platform/row-schema.d.ts.map +1 -1
  168. package/dist/platform/row-schema.js +0 -11
  169. package/dist/platform/row-schema.js.map +1 -1
  170. package/dist/platform/startup.d.ts.map +1 -1
  171. package/dist/platform/startup.js +6 -17
  172. package/dist/platform/startup.js.map +1 -1
  173. package/dist/platform/types.d.ts +1 -0
  174. package/dist/platform/types.d.ts.map +1 -1
  175. package/dist/platform/types.js +3 -8
  176. package/dist/platform/types.js.map +1 -1
  177. package/dist/platform/verdict-engine.d.ts.map +1 -1
  178. package/dist/platform/verdict-engine.js +0 -15
  179. package/dist/platform/verdict-engine.js.map +1 -1
  180. package/dist/shared/concurrency.d.ts.map +1 -1
  181. package/dist/shared/concurrency.js +0 -2
  182. package/dist/shared/concurrency.js.map +1 -1
  183. package/dist/shared/constants.d.ts +1 -8
  184. package/dist/shared/constants.d.ts.map +1 -1
  185. package/dist/shared/constants.js +2 -32
  186. package/dist/shared/constants.js.map +1 -1
  187. package/dist/shared/git-url.d.ts.map +1 -1
  188. package/dist/shared/git-url.js +0 -9
  189. package/dist/shared/git-url.js.map +1 -1
  190. package/dist/shared/types.d.ts +28 -135
  191. package/dist/shared/types.d.ts.map +1 -1
  192. package/dist/shared/types.js +7 -6
  193. package/dist/shared/types.js.map +1 -1
  194. package/dist/skill/registry.d.ts.map +1 -1
  195. package/dist/skill/registry.js +0 -5
  196. package/dist/skill/registry.js.map +1 -1
  197. package/dist/skills/baxian-pr-feedback/SKILL.md +5 -3
  198. package/dist/skills/baxian-pr-recheck/SKILL.md +4 -0
  199. package/dist/skills/baxian-pr-review/SKILL.md +4 -0
  200. package/dist/skills/baxian-signals/SKILL.md +15 -38
  201. package/dist/skills/baxian-task-check/SKILL.md +13 -14
  202. package/dist/state/agent-store.d.ts.map +1 -1
  203. package/dist/state/agent-store.js +0 -6
  204. package/dist/state/agent-store.js.map +1 -1
  205. package/dist/state/error-record-store.d.ts.map +1 -1
  206. package/dist/state/error-record-store.js +0 -5
  207. package/dist/state/error-record-store.js.map +1 -1
  208. package/dist/state/init.d.ts.map +1 -1
  209. package/dist/state/init.js +0 -1
  210. package/dist/state/init.js.map +1 -1
  211. package/dist/state/lock.d.ts.map +1 -1
  212. package/dist/state/lock.js +0 -1
  213. package/dist/state/lock.js.map +1 -1
  214. package/dist/state/snapshot.d.ts.map +1 -1
  215. package/dist/state/snapshot.js +5 -2
  216. package/dist/state/snapshot.js.map +1 -1
  217. package/dist/state/task-store.d.ts.map +1 -1
  218. package/dist/state/task-store.js +56 -143
  219. package/dist/state/task-store.js.map +1 -1
  220. package/dist/terminal/attach.d.ts.map +1 -1
  221. package/dist/terminal/attach.js +0 -4
  222. package/dist/terminal/attach.js.map +1 -1
  223. package/dist/terminal/stream-ws.js +0 -5
  224. package/dist/terminal/stream-ws.js.map +1 -1
  225. package/dist/web/assets/index-CiAnjs1_.js +15 -0
  226. package/dist/web/assets/index-yqxawAPJ.css +1 -0
  227. package/dist/web/index.html +2 -2
  228. package/package.json +1 -1
  229. package/dist/agent/review-transport.d.ts +0 -92
  230. package/dist/agent/review-transport.d.ts.map +0 -1
  231. package/dist/agent/review-transport.js +0 -512
  232. package/dist/agent/review-transport.js.map +0 -1
  233. package/dist/agent/root-agent-runtime.d.ts +0 -80
  234. package/dist/agent/root-agent-runtime.d.ts.map +0 -1
  235. package/dist/agent/root-agent-runtime.js +0 -635
  236. package/dist/agent/root-agent-runtime.js.map +0 -1
  237. package/dist/agent/root-recovery-coordinator.d.ts +0 -125
  238. package/dist/agent/root-recovery-coordinator.d.ts.map +0 -1
  239. package/dist/agent/root-recovery-coordinator.js +0 -1579
  240. package/dist/agent/root-recovery-coordinator.js.map +0 -1
  241. package/dist/event/server-handlers.d.ts +0 -4
  242. package/dist/event/server-handlers.d.ts.map +0 -1
  243. package/dist/event/server-handlers.js +0 -1294
  244. package/dist/event/server-handlers.js.map +0 -1
  245. package/dist/skills/baxian-research/SKILL.md +0 -28
  246. package/dist/skills/baxian-server-feedback/SKILL.md +0 -40
  247. package/dist/skills/baxian-server-feedback/agents/openai.yaml +0 -2
  248. package/dist/skills/baxian-server-review/SKILL.md +0 -58
  249. package/dist/skills/baxian-server-review/agents/openai.yaml +0 -2
  250. package/dist/state/review-store.d.ts +0 -33
  251. package/dist/state/review-store.d.ts.map +0 -1
  252. package/dist/state/review-store.js +0 -272
  253. package/dist/state/review-store.js.map +0 -1
  254. package/dist/state/root-recovery-store.d.ts +0 -107
  255. package/dist/state/root-recovery-store.d.ts.map +0 -1
  256. package/dist/state/root-recovery-store.js +0 -400
  257. package/dist/state/root-recovery-store.js.map +0 -1
  258. package/dist/web/assets/index-BPv6vv3U.css +0 -1
  259. package/dist/web/assets/index-BXfgaFNm.js +0 -18
@@ -1 +1 @@
1
- {"version":3,"file":"phase-signal-watcher.d.ts","sourceRoot":"","sources":["../../src/agent/phase-signal-watcher.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"phase-signal-watcher.d.ts","sourceRoot":"","sources":["../../src/agent/phase-signal-watcher.ts"],"names":[],"mappings":"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"}
@@ -1,23 +1,12 @@
1
- import { compactBoundaryIndex, scanAskAnswerSignals, scanPhaseSignalMatches, scanPhaseSignals, scanReadFileSignals, stripSignalAnsi, } from './phase-signal.js';
2
- // symbol 键随事件对象引用传递、不进 JSON 事件日志——手工管道复用同一函数也拿不到它。
3
- export const SETTLE_PERMIT = Symbol('baxian.settlePermit');
4
- export function settlePermitOf(event) {
5
- return event[SETTLE_PERMIT];
6
- }
1
+ import { compactBoundaryIndex, scanAskAnswerSignals, scanPhaseSignalMatches, scanPhaseSignals, } from './phase-signal.js';
2
+ import { visibleText } from './vt-visible-text.js';
7
3
  const MATCH_BUFFER_CHARS = 1024;
8
- // Cap so a stuck pane spewing endless distinct tokens can't grow the set or the logs unbounded.
9
4
  const STALE_TOKEN_WARN_CAP = 32;
10
5
  const KIND_TO_EVENT_TYPE = {
11
- 'spec-fixed': 'server.spec.fix.submitted',
12
6
  'pr-created': 'pr.created',
13
7
  'pr-fixed': 'pr.fix.submitted',
14
8
  'pr-merge-ready': 'pr.updated',
15
- 'spec-done': 'server.spec.ready',
16
- 'spec-reviewed': 'server.spec.review.submitted',
17
- 'code-done': 'server.code.ready',
18
- 'code-reviewed': 'server.code.review.submitted',
19
- 'code-fixed': 'server.code.fix.submitted',
20
- 'code-ready': 'server.code.published',
9
+ 'spec-done': 'spec.ready',
21
10
  };
22
11
  function normalizeKinds(input) {
23
12
  if (input instanceof Set)
@@ -34,73 +23,44 @@ export class PhaseSignalWatcher {
34
23
  deps;
35
24
  entries = new Map();
36
25
  armFences = new Map();
37
- // Arms that claimed ownership but have not installed yet (their subscribe is in
38
- // flight). The own-token fence must see them, or a stale replay would evict a
39
- // current-token pass whose watcher is merely slow to attach.
40
26
  pendingArms = new Map();
41
27
  armCounter = 0;
42
28
  settlingByTask = new Map();
43
- exclusiveByTask = new Map();
44
- exclusiveOwnerByTask = new Map();
45
29
  constructor(deps) {
46
30
  this.deps = deps;
47
31
  }
48
32
  isSettling(taskId) {
49
33
  return this.settlingByTask.has(taskId);
50
34
  }
51
- settlePermitMatches(taskId, permit) {
52
- const settling = this.settlingByTask.get(taskId);
53
- return settling !== undefined && permit === settling.permit;
54
- }
55
35
  async awaitSettled(taskId) {
56
36
  const settling = this.settlingByTask.get(taskId);
57
37
  if (settling)
58
38
  await settling.promise;
59
39
  }
60
40
  beginSettling(taskId) {
61
- const permit = Symbol(`settle:${taskId}`);
41
+ const current = this.settlingByTask.get(taskId);
42
+ if (current) {
43
+ current.active += 1;
44
+ return current;
45
+ }
62
46
  let resolve;
63
- const promise = new Promise((res) => { resolve = res; });
64
- const prior = this.settlingByTask.get(taskId);
65
- this.settlingByTask.set(taskId, { permit, promise, resolve });
66
- // 同任务并发结算不应出现(单 watch 单发);出现即让旧窗口立刻闭合,宁早释放不悬挂。
67
- prior?.resolve();
68
- return permit;
69
- }
70
- endSettling(taskId, permit) {
71
- const settling = this.settlingByTask.get(taskId);
72
- if (!settling || settling.permit !== permit)
47
+ const settling = {
48
+ active: 1,
49
+ promise: new Promise(settled => { resolve = settled; }),
50
+ resolve: () => resolve(),
51
+ };
52
+ this.settlingByTask.set(taskId, settling);
53
+ return settling;
54
+ }
55
+ endSettling(taskId, settling) {
56
+ if (this.settlingByTask.get(taskId) !== settling)
57
+ return;
58
+ settling.active -= 1;
59
+ if (settling.active > 0)
73
60
  return;
74
61
  this.settlingByTask.delete(taskId);
75
62
  settling.resolve();
76
63
  }
77
- exclusiveOwnerMatches(taskId, candidate) {
78
- const owner = this.exclusiveOwnerByTask.get(taskId);
79
- return owner !== undefined && candidate === owner;
80
- }
81
- // FIFO owner 拿到不可伪造的 permit:先入者获派发豁免,后入者按任务态 CAS/终闸拒绝。
82
- async runExclusive(taskId, fn) {
83
- const prior = this.exclusiveByTask.get(taskId);
84
- let release;
85
- const gate = new Promise((resolve) => { release = resolve; });
86
- const tail = prior ? prior.then(() => gate) : gate;
87
- this.exclusiveByTask.set(taskId, tail);
88
- // 无竞争时同步进入 fn:结算投递时序对快照/live 可见性敏感,不让出微任务。
89
- if (prior)
90
- await prior;
91
- const owner = Symbol(`exclusive:${taskId}`);
92
- this.exclusiveOwnerByTask.set(taskId, owner);
93
- try {
94
- return await fn(owner);
95
- }
96
- finally {
97
- if (this.exclusiveOwnerByTask.get(taskId) === owner)
98
- this.exclusiveOwnerByTask.delete(taskId);
99
- release();
100
- if (this.exclusiveByTask.get(taskId) === tail)
101
- this.exclusiveByTask.delete(taskId);
102
- }
103
- }
104
64
  taskEntries(taskId) {
105
65
  return [...this.entries.values()].filter(entry => entry.taskId === taskId);
106
66
  }
@@ -112,19 +72,12 @@ export class PhaseSignalWatcher {
112
72
  return this.taskEntries(args.taskId);
113
73
  }
114
74
  async start(args) {
115
- // Everything up to the first await is one atomic section with the caller's epoch bump.
116
75
  const key = entryKey(args.taskId, args.agentId);
117
76
  const predecessor = this.entries.get(key);
118
- // The predecessor keeps consuming pane data while we subscribe: hand it this arm's
119
- // generation now, or answers it consumes in that window fence against the store.
120
77
  if (args.needInput !== undefined && args.needInputInherit
121
78
  && predecessor?.expectedToken === args.token) {
122
79
  this.migrateEntryGeneration(predecessor, args.needInput, true);
123
80
  }
124
- // Our caller bumped the store before calling us, so any rejection leaves the store
125
- // ahead of the installed entry. Rescue it — but only when it is still the very entry
126
- // this arm started against: a successor installed meanwhile owns a newer generation
127
- // and adopting ours would drag it back to a superseded watermark.
128
81
  const rejectArm = () => {
129
82
  if (args.needInput !== undefined
130
83
  && predecessor
@@ -138,11 +91,8 @@ export class PhaseSignalWatcher {
138
91
  return rejectArm();
139
92
  if (this.hasForeignTokenOwner(args, args.armClaimId))
140
93
  return rejectArm();
141
- // Fence bookkeeping happens on ENTRY, before any await: even an arm that later
142
- // fails to subscribe leaves its generation/arrival behind to fence older stragglers.
143
94
  const armSeq = ++this.armCounter;
144
95
  this.touchArmFence(key, armSeq, args.needInput?.epoch);
145
- // The old entry keeps consuming until the replacement subscription exists; a failed start must not orphan the signal.
146
96
  const expectedKinds = normalizeKinds(args.expectedKinds);
147
97
  const kindsLabel = [...expectedKinds].join(',');
148
98
  const agent = this.deps.resolveAgent(args.agentId);
@@ -163,8 +113,6 @@ export class PhaseSignalWatcher {
163
113
  agentId: args.agentId,
164
114
  expectedKinds,
165
115
  expectedToken: args.token,
166
- ...(args.onReadFile ? { onReadFile: args.onReadFile } : {}),
167
- seenReadFile: new Set(),
168
116
  seenStaleToken: new Set(),
169
117
  staleWarnCapped: false,
170
118
  askSeq: args.needInput?.askSeq ?? 0,
@@ -181,7 +129,7 @@ export class PhaseSignalWatcher {
181
129
  let sub;
182
130
  try {
183
131
  sub = await streamer.subscribeAtomic({
184
- onLive: (data) => this.onPaneData(entry, data),
132
+ onVisible: (visible) => this.onPaneData(entry, visible),
185
133
  onSessionGone: () => this.onSessionGone(entry),
186
134
  });
187
135
  }
@@ -196,8 +144,6 @@ export class PhaseSignalWatcher {
196
144
  });
197
145
  return rejectArm();
198
146
  }
199
- // ---- Fences first: every rejection must happen BEFORE any raced entry is dropped,
200
- // or a doomed stale arm would tear down a live sibling watcher on its way out.
201
147
  const raced = this.replaceTargets(args);
202
148
  const rejectAfterSubscribe = () => {
203
149
  try {
@@ -209,9 +155,6 @@ export class PhaseSignalWatcher {
209
155
  if (this.hasForeignTokenOwner(args, args.armClaimId))
210
156
  return rejectAfterSubscribe();
211
157
  const own = this.entries.get(key);
212
- // Generation-monotonic install: the bump order IS the arm order, so a smaller epoch
213
- // identifies a late arrival that must not demote the persisted generation. The fence
214
- // record (not the live entry) carries this across subscribe failures and exits.
215
158
  if (own?.commitEnabled && args.needInput !== undefined && own.epoch > args.needInput.epoch) {
216
159
  return rejectAfterSubscribe();
217
160
  }
@@ -219,16 +162,10 @@ export class PhaseSignalWatcher {
219
162
  if (args.needInput !== undefined && (fence?.highWater ?? 0) > args.needInput.epoch) {
220
163
  return rejectAfterSubscribe();
221
164
  }
222
- // Arrival-order fence covers what epochs cannot: a degraded successor (no generation)
223
- // must still win over an older arm whose subscription settled after it.
224
165
  if (fence !== undefined && fence.latestSeq !== armSeq) {
225
166
  return rejectAfterSubscribe();
226
167
  }
227
- // ---- Install: merge, evict, subscribe hand-off.
228
168
  if (args.needInput === undefined && own) {
229
- // Degraded arm (bump failed): keep watching signals on the surviving entry's
230
- // generation, but honour the wm-null contract — no badge commits, and only a
231
- // restore intent may carry the ordinals (a fresh replay restarts at 1).
232
169
  entry.epoch = own.epoch;
233
170
  entry.commitEnabled = false;
234
171
  if (args.needInputInherit) {
@@ -236,8 +173,6 @@ export class PhaseSignalWatcher {
236
173
  entry.answeredSeq = Math.max(entry.answeredSeq, own.answeredSeq);
237
174
  }
238
175
  }
239
- // Same-token restore transfer merges the predecessor's in-memory watermark: seqs it
240
- // advanced but never persisted (error'd commits) must survive the swap.
241
176
  const prior = args.needInputInherit
242
177
  ? raced.find(existing => existing.taskId === args.taskId
243
178
  && existing.agentId === args.agentId
@@ -251,15 +186,12 @@ export class PhaseSignalWatcher {
251
186
  this.dropEntry(existing);
252
187
  entry.unsubscribe = sub.unsubscribe;
253
188
  this.entries.set(key, entry);
254
- // A merged watermark ahead of the bump write (the predecessor's error'd commits, whose
255
- // retry intents the arm just cleared) must reach the new generation's persistence now,
256
- // or a cleared badge could stay lit in the store forever.
257
189
  if (args.needInput !== undefined
258
190
  && (entry.askSeq > args.needInput.askSeq || entry.answeredSeq > args.needInput.answeredSeq)) {
259
191
  this.commitWatermark(entry);
260
192
  }
261
193
  if (!args.skipSnapshot) {
262
- this.onPaneData(entry, sub.snapshot.data, true);
194
+ this.onPaneData(entry, visibleText(sub.snapshot.data, sub.snapshot.cols, sub.snapshot.rows), true);
263
195
  }
264
196
  return true;
265
197
  }
@@ -300,13 +232,9 @@ export class PhaseSignalWatcher {
300
232
  }
301
233
  return false;
302
234
  }
303
- // Read-only ownership probe (no claim) — the fence a would-be arm faces right now.
304
235
  wouldRejectOwnTokenArm(args) {
305
236
  return this.hasForeignTokenOwner(args);
306
237
  }
307
- // Atomic decide-and-claim, called before the caller's epoch bump: a rejected arm must
308
- // not bump (it would fence the owner), and a claimed arm must be visible to every
309
- // later ownership probe until it installs or fails.
310
238
  claimArm(args) {
311
239
  if (this.hasForeignTokenOwner(args))
312
240
  return null;
@@ -326,8 +254,6 @@ export class PhaseSignalWatcher {
326
254
  && claim.agentId === args.agentId
327
255
  && claim.token === args.token;
328
256
  }
329
- // Monotonic: never demote a generation a successor already owns. An in-memory lead
330
- // (seqs the entry advanced but could not persist) is written out immediately.
331
257
  migrateEntryGeneration(entry, wm, inherit) {
332
258
  if (entry.commitEnabled && entry.epoch >= wm.epoch)
333
259
  return;
@@ -335,16 +261,12 @@ export class PhaseSignalWatcher {
335
261
  entry.commitEnabled = true;
336
262
  this.touchArmFence(entryKey(entry.taskId, entry.agentId), 0, wm.epoch);
337
263
  if (!inherit) {
338
- // A fresh generation superseded whatever was open: adopt its stripped ordinals
339
- // instead of re-committing the old question into it.
340
264
  entry.askSeq = wm.askSeq;
341
265
  entry.answeredSeq = wm.answeredSeq;
342
266
  entry.snapshotReconcile = false;
343
267
  return;
344
268
  }
345
269
  const leads = entry.askSeq > wm.askSeq || entry.answeredSeq > wm.answeredSeq;
346
- // The watermark may lead the entry too (queue/ledger merges): adopt it, or the entry
347
- // would answer a question it does not know is open.
348
270
  entry.askSeq = Math.max(entry.askSeq, wm.askSeq);
349
271
  entry.answeredSeq = Math.max(entry.answeredSeq, wm.answeredSeq);
350
272
  if (leads)
@@ -366,7 +288,6 @@ export class PhaseSignalWatcher {
366
288
  if (entry)
367
289
  this.dropEntry(entry);
368
290
  }
369
- // Token-fenced teardown: a stale pass undoing its own arm must never kill a successor's watcher.
370
291
  stopIfToken(taskId, expectedToken) {
371
292
  for (const entry of this.taskEntries(taskId)) {
372
293
  if (entry.expectedToken === expectedToken)
@@ -422,7 +343,7 @@ export class PhaseSignalWatcher {
422
343
  const timer = setTimeout(() => finish('timeout'), args.timeoutMs);
423
344
  streamer
424
345
  .subscribeAtomic({
425
- onLive: (data) => { if (matches(data))
346
+ onVisible: (visible) => { if (matches(visible))
426
347
  finish('matched'); },
427
348
  onSessionGone: () => finish('session-gone'),
428
349
  })
@@ -435,7 +356,7 @@ export class PhaseSignalWatcher {
435
356
  catch { }
436
357
  return;
437
358
  }
438
- if (matches(sub.snapshot.data))
359
+ if (matches(visibleText(sub.snapshot.data, sub.snapshot.cols, sub.snapshot.rows)))
439
360
  finish('matched');
440
361
  })
441
362
  .catch(() => finish('session-gone'));
@@ -445,8 +366,6 @@ export class PhaseSignalWatcher {
445
366
  const commit = this.deps.commitNeedInputWatermark;
446
367
  if (!commit || !entry.commitEnabled)
447
368
  return;
448
- // Fire-and-forget by design: memory seqs never roll back on a failed write —
449
- // the manager-side retry queue owns persistence convergence.
450
369
  void commit({
451
370
  agentId: entry.agentId,
452
371
  taskId: entry.taskId,
@@ -461,21 +380,12 @@ export class PhaseSignalWatcher {
461
380
  entry.answeredSeq = entry.askSeq;
462
381
  return true;
463
382
  }
464
- // The user submitted input through baxian's own channel — the open question
465
- // (if any) counts as answered. Returns whether any entry watches this agent:
466
- // when one does, the store fallback must NOT run (it would re-read a moving
467
- // watermark and could confirm an ask that arrived after this input).
468
- // Returns the tasks whose watermark actually absorbed this input. Entries are settled
469
- // synchronously, before any await: a question printed while this runs must not be
470
- // swallowed as if it had been answered.
471
383
  async rearmNeedInput(agentId) {
472
384
  const handled = new Set();
473
385
  const commits = [];
474
386
  for (const entry of this.entries.values()) {
475
387
  if (entry.agentId !== agentId)
476
388
  continue;
477
- // A commit-disabled (degraded) entry cannot persist the answer, so it must not
478
- // count as handled — the store fallback has to run instead.
479
389
  if (entry.commitEnabled)
480
390
  handled.add(entry.taskId);
481
391
  if (!this.markAnswered(entry))
@@ -501,7 +411,6 @@ export class PhaseSignalWatcher {
501
411
  entry.askSeq = sig.seq;
502
412
  }
503
413
  else {
504
- // Bare legacy ask: trust it only when no question is open (idempotent while lit).
505
414
  if (entry.askSeq > entry.answeredSeq)
506
415
  return;
507
416
  entry.askSeq += 1;
@@ -517,20 +426,10 @@ export class PhaseSignalWatcher {
517
426
  this.commitWatermark(entry);
518
427
  }
519
428
  scanNeedInput(entry, chunk, isSnapshot) {
520
- // Snapshot asks and BARE answers stay blind (replaying them would relight or clear
521
- // ambiguously), but a seq'd answer proves its numbered question was answered no
522
- // matter when it was printed — this recovers a reply given while the server was
523
- // down, which nothing else can carry (no ledger, no fallback, no live edge).
524
429
  if (isSnapshot) {
525
- // Seed the tail so a literal torn across the snapshot/live boundary still matches;
526
- // the old/new region split keeps the seeded bytes from being applied twice.
527
430
  entry.needInputBuffer = chunk.slice(-MATCH_BUFFER_CHARS);
528
431
  if (!entry.snapshotReconcile)
529
432
  return;
530
- // A snapshot is a serialized framebuffer, not an output log: a TUI redraw can put
531
- // later output on an earlier row, so screen position says nothing about time.
532
- // Ordinals do — within one generation each question is asked once and confirmed
533
- // once, so a literal's mere presence is the fact, wherever it sits.
534
433
  let maxAsk = 0;
535
434
  let maxAnswer = 0;
536
435
  for (const sig of scanAskAnswerSignals(chunk)) {
@@ -550,13 +449,6 @@ export class PhaseSignalWatcher {
550
449
  this.commitWatermark(entry);
551
450
  return;
552
451
  }
553
- // Matches that end inside the old tail are rescans of already-processed bytes:
554
- // applying them again would let a swallowed answer clear a later ask, while
555
- // clearing the buffer instead would drop a torn next-ask prefix. Skipping them
556
- // keeps both; genuinely new literals (even replayed by a redraw as fresh bytes)
557
- // land in the new region and are handled by the seq watermark. The boundary is
558
- // mapped through the COMBINED compact transform — compacting the tail on its own
559
- // would misplace it whenever an escape/whitespace run straddles the chunk seam.
560
452
  const combined = entry.needInputBuffer + chunk;
561
453
  const oldRegionLen = compactBoundaryIndex(combined, entry.needInputBuffer.length);
562
454
  entry.needInputBuffer = combined.slice(-MATCH_BUFFER_CHARS);
@@ -576,23 +468,12 @@ export class PhaseSignalWatcher {
576
468
  return;
577
469
  if (entry.fired)
578
470
  return;
579
- const rawCombined = entry.buffer + chunk;
580
- if (entry.onReadFile) {
581
- for (const req of scanReadFileSignals(rawCombined)) {
582
- if (entry.seenReadFile.has(req.raw))
583
- continue;
584
- entry.seenReadFile.add(req.raw);
585
- if (!isSnapshot)
586
- entry.onReadFile(req);
587
- }
588
- }
471
+ const combined = entry.buffer + chunk;
589
472
  this.scanNeedInput(entry, chunk, isSnapshot);
590
- const oldRegionLen = compactBoundaryIndex(rawCombined, entry.buffer.length);
591
- const matches = scanPhaseSignalMatches(rawCombined);
592
- // Retain the control-stripped tail so a stripped control string's payload can't resurface as output next chunk.
593
- entry.buffer = stripSignalAnsi(rawCombined).slice(-MATCH_BUFFER_CHARS);
473
+ const oldRegionLen = compactBoundaryIndex(combined, entry.buffer.length);
474
+ const matches = scanPhaseSignalMatches(combined);
475
+ entry.buffer = combined.slice(-MATCH_BUFFER_CHARS);
594
476
  const armed = matches.find(m => entry.expectedKinds.has(m.signal.kind) && m.signal.token === entry.expectedToken);
595
- // The armed marker ends the dispatch, so a foreign token after it belongs to the next task, not a mis-send here.
596
477
  if (!isSnapshot) {
597
478
  const endsBy = armed ? armed.index : Infinity;
598
479
  this.reportStaleTokens(entry, matches.filter(m => m.index + m.raw.length > oldRegionLen && m.index + m.raw.length <= endsBy).map(m => m.signal));
@@ -608,7 +489,6 @@ export class PhaseSignalWatcher {
608
489
  entry.unsubscribe();
609
490
  }
610
491
  catch { }
611
- // The phase signal ends the dispatch: whatever question was open counts as closed.
612
492
  if (this.markAnswered(entry))
613
493
  this.commitWatermark(entry);
614
494
  const event = {
@@ -623,18 +503,14 @@ export class PhaseSignalWatcher {
623
503
  token: signal.token,
624
504
  verdictAgentId: entry.agentId,
625
505
  source: 'pane-signal',
626
- ...(signal.kind === 'pr-created' ? { prNumber: signal.prNumber } : {}),
627
- ...(signal.kind === 'pr-created' && signal.actorB64 !== undefined ? { actorB64: signal.actorB64 } : {}),
628
- ...(signal.kind === 'code-ready' && signal.prNumber !== undefined
629
- ? { prNumber: signal.prNumber }
506
+ ...(signal.kind === 'pr-created' || signal.kind === 'spec-done'
507
+ ? { prNumber: signal.prNumber, actorB64: signal.actorB64 }
630
508
  : {}),
631
509
  },
632
510
  };
633
- const permit = this.beginSettling(entry.taskId);
634
- Object.defineProperty(event, SETTLE_PERMIT, { value: permit, enumerable: false });
635
- void this.emitCompletion(event, entry, signal.kind, permit);
511
+ const settling = this.beginSettling(entry.taskId);
512
+ void this.emitCompletion(event, entry, signal.kind, settling);
636
513
  }
637
- // 静默丢弃会把"agent 以为已交付、任务实际停等"变成查无实据的失联;故留痕,但只记日志不发事件(避免重放刷屏)。
638
514
  reportStaleTokens(entry, candidates) {
639
515
  for (const candidate of candidates) {
640
516
  if (entry.staleWarnCapped)
@@ -659,9 +535,9 @@ export class PhaseSignalWatcher {
659
535
  + `agent=${entry.agentId}: observed=${candidate.token} expected=${entry.expectedToken}`);
660
536
  }
661
537
  }
662
- async emitCompletion(event, entry, kind, permit) {
538
+ async emitCompletion(event, entry, kind, settling) {
663
539
  try {
664
- await this.runExclusive(entry.taskId, () => this.deps.eventBus.emit(event));
540
+ await this.deps.eventBus.emit(event);
665
541
  }
666
542
  catch (err) {
667
543
  console.error(`[PhaseSignalWatcher] eventBus.emit failed for task=${entry.taskId} kind=${kind}:`, err);
@@ -674,7 +550,7 @@ export class PhaseSignalWatcher {
674
550
  });
675
551
  }
676
552
  finally {
677
- this.endSettling(entry.taskId, permit);
553
+ this.endSettling(entry.taskId, settling);
678
554
  }
679
555
  }
680
556
  onSessionGone(entry) {
@@ -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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"}