baxian 2.0.2 → 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 (212) hide show
  1. package/dist/agent/branch.d.ts.map +1 -1
  2. package/dist/agent/branch.js +0 -7
  3. package/dist/agent/branch.js.map +1 -1
  4. package/dist/agent/detect/region.d.ts.map +1 -1
  5. package/dist/agent/detect/region.js +0 -3
  6. package/dist/agent/detect/region.js.map +1 -1
  7. package/dist/agent/dispatch-reconciler.d.ts.map +1 -1
  8. package/dist/agent/dispatch-reconciler.js +0 -51
  9. package/dist/agent/dispatch-reconciler.js.map +1 -1
  10. package/dist/agent/lineage.d.ts.map +1 -1
  11. package/dist/agent/lineage.js +0 -9
  12. package/dist/agent/lineage.js.map +1 -1
  13. package/dist/agent/manager.d.ts +1 -4
  14. package/dist/agent/manager.d.ts.map +1 -1
  15. package/dist/agent/manager.js +10 -298
  16. package/dist/agent/manager.js.map +1 -1
  17. package/dist/agent/net-exec.d.ts.map +1 -1
  18. package/dist/agent/net-exec.js +0 -5
  19. package/dist/agent/net-exec.js.map +1 -1
  20. package/dist/agent/pane-streamer-manager.d.ts.map +1 -1
  21. package/dist/agent/pane-streamer-manager.js +0 -36
  22. package/dist/agent/pane-streamer-manager.js.map +1 -1
  23. package/dist/agent/pane-streamer.d.ts +6 -0
  24. package/dist/agent/pane-streamer.d.ts.map +1 -1
  25. package/dist/agent/pane-streamer.js +126 -83
  26. package/dist/agent/pane-streamer.js.map +1 -1
  27. package/dist/agent/phase-signal-watcher.d.ts.map +1 -1
  28. package/dist/agent/phase-signal-watcher.js +2 -77
  29. package/dist/agent/phase-signal-watcher.js.map +1 -1
  30. package/dist/agent/phase-signal.d.ts +0 -1
  31. package/dist/agent/phase-signal.d.ts.map +1 -1
  32. package/dist/agent/phase-signal.js +0 -17
  33. package/dist/agent/phase-signal.js.map +1 -1
  34. package/dist/agent/preflight.d.ts.map +1 -1
  35. package/dist/agent/preflight.js +0 -18
  36. package/dist/agent/preflight.js.map +1 -1
  37. package/dist/agent/prompt.d.ts.map +1 -1
  38. package/dist/agent/prompt.js +0 -1
  39. package/dist/agent/prompt.js.map +1 -1
  40. package/dist/agent/repo-store.d.ts.map +1 -1
  41. package/dist/agent/repo-store.js +0 -38
  42. package/dist/agent/repo-store.js.map +1 -1
  43. package/dist/agent/runner.d.ts.map +1 -1
  44. package/dist/agent/runner.js +0 -2
  45. package/dist/agent/runner.js.map +1 -1
  46. package/dist/agent/tmux-install.js +0 -1
  47. package/dist/agent/tmux-install.js.map +1 -1
  48. package/dist/agent/tmux-probe-poller.d.ts.map +1 -1
  49. package/dist/agent/tmux-probe-poller.js +0 -7
  50. package/dist/agent/tmux-probe-poller.js.map +1 -1
  51. package/dist/agent/tmux.d.ts.map +1 -1
  52. package/dist/agent/tmux.js +0 -86
  53. package/dist/agent/tmux.js.map +1 -1
  54. package/dist/agent/vt-visible-text.d.ts +46 -1
  55. package/dist/agent/vt-visible-text.d.ts.map +1 -1
  56. package/dist/agent/vt-visible-text.js +639 -63
  57. package/dist/agent/vt-visible-text.js.map +1 -1
  58. package/dist/api/agents.d.ts.map +1 -1
  59. package/dist/api/agents.js +1 -42
  60. package/dist/api/agents.js.map +1 -1
  61. package/dist/api/config.d.ts.map +1 -1
  62. package/dist/api/config.js +3 -52
  63. package/dist/api/config.js.map +1 -1
  64. package/dist/api/hosts.d.ts.map +1 -1
  65. package/dist/api/hosts.js +2 -57
  66. package/dist/api/hosts.js.map +1 -1
  67. package/dist/api/platform-guard.d.ts.map +1 -1
  68. package/dist/api/platform-guard.js +0 -1
  69. package/dist/api/platform-guard.js.map +1 -1
  70. package/dist/api/probe.d.ts.map +1 -1
  71. package/dist/api/probe.js +0 -1
  72. package/dist/api/probe.js.map +1 -1
  73. package/dist/api/projects.d.ts.map +1 -1
  74. package/dist/api/projects.js +1 -14
  75. package/dist/api/projects.js.map +1 -1
  76. package/dist/api/tasks.d.ts.map +1 -1
  77. package/dist/api/tasks.js +0 -1
  78. package/dist/api/tasks.js.map +1 -1
  79. package/dist/app.d.ts +0 -2
  80. package/dist/app.d.ts.map +1 -1
  81. package/dist/app.js +0 -6
  82. package/dist/app.js.map +1 -1
  83. package/dist/cli.d.ts.map +1 -1
  84. package/dist/cli.js +4 -29
  85. package/dist/cli.js.map +1 -1
  86. package/dist/config/hot-reload.d.ts.map +1 -1
  87. package/dist/config/hot-reload.js +0 -4
  88. package/dist/config/hot-reload.js.map +1 -1
  89. package/dist/config/loader.d.ts.map +1 -1
  90. package/dist/config/loader.js +1 -24
  91. package/dist/config/loader.js.map +1 -1
  92. package/dist/config/normalizer.d.ts.map +1 -1
  93. package/dist/config/normalizer.js +0 -19
  94. package/dist/config/normalizer.js.map +1 -1
  95. package/dist/config/validator.d.ts.map +1 -1
  96. package/dist/config/validator.js +2 -200
  97. package/dist/config/validator.js.map +1 -1
  98. package/dist/event/handlers.d.ts.map +1 -1
  99. package/dist/event/handlers.js +0 -11
  100. package/dist/event/handlers.js.map +1 -1
  101. package/dist/event/log.js +0 -2
  102. package/dist/event/log.js.map +1 -1
  103. package/dist/index.d.ts.map +1 -1
  104. package/dist/index.js +0 -45
  105. package/dist/index.js.map +1 -1
  106. package/dist/platform/body-digest.d.ts.map +1 -1
  107. package/dist/platform/body-digest.js +0 -4
  108. package/dist/platform/body-digest.js.map +1 -1
  109. package/dist/platform/command-renderer.d.ts.map +1 -1
  110. package/dist/platform/command-renderer.js +0 -3
  111. package/dist/platform/command-renderer.js.map +1 -1
  112. package/dist/platform/comment-cursor.d.ts.map +1 -1
  113. package/dist/platform/comment-cursor.js +0 -21
  114. package/dist/platform/comment-cursor.js.map +1 -1
  115. package/dist/platform/driver-spec.d.ts.map +1 -1
  116. package/dist/platform/driver-spec.js +1 -42
  117. package/dist/platform/driver-spec.js.map +1 -1
  118. package/dist/platform/field-mapper.d.ts.map +1 -1
  119. package/dist/platform/field-mapper.js +3 -11
  120. package/dist/platform/field-mapper.js.map +1 -1
  121. package/dist/platform/git-driver.d.ts.map +1 -1
  122. package/dist/platform/git-driver.js +0 -20
  123. package/dist/platform/git-driver.js.map +1 -1
  124. package/dist/platform/manifest.d.ts.map +1 -1
  125. package/dist/platform/manifest.js +0 -3
  126. package/dist/platform/manifest.js.map +1 -1
  127. package/dist/platform/markers.d.ts.map +1 -1
  128. package/dist/platform/markers.js +0 -19
  129. package/dist/platform/markers.js.map +1 -1
  130. package/dist/platform/platform-poller.d.ts.map +1 -1
  131. package/dist/platform/platform-poller.js +0 -43
  132. package/dist/platform/platform-poller.js.map +1 -1
  133. package/dist/platform/plugin-registry.d.ts.map +1 -1
  134. package/dist/platform/plugin-registry.js +1 -12
  135. package/dist/platform/plugin-registry.js.map +1 -1
  136. package/dist/platform/pr-conversation-cache.d.ts.map +1 -1
  137. package/dist/platform/pr-conversation-cache.js +0 -17
  138. package/dist/platform/pr-conversation-cache.js.map +1 -1
  139. package/dist/platform/preflight-exec.d.ts.map +1 -1
  140. package/dist/platform/preflight-exec.js +0 -9
  141. package/dist/platform/preflight-exec.js.map +1 -1
  142. package/dist/platform/response-parser.d.ts.map +1 -1
  143. package/dist/platform/response-parser.js +0 -4
  144. package/dist/platform/response-parser.js.map +1 -1
  145. package/dist/platform/review-timeline.d.ts.map +1 -1
  146. package/dist/platform/review-timeline.js +0 -22
  147. package/dist/platform/review-timeline.js.map +1 -1
  148. package/dist/platform/row-schema.d.ts.map +1 -1
  149. package/dist/platform/row-schema.js +0 -11
  150. package/dist/platform/row-schema.js.map +1 -1
  151. package/dist/platform/startup.d.ts.map +1 -1
  152. package/dist/platform/startup.js +1 -12
  153. package/dist/platform/startup.js.map +1 -1
  154. package/dist/platform/types.d.ts.map +1 -1
  155. package/dist/platform/types.js +0 -5
  156. package/dist/platform/types.js.map +1 -1
  157. package/dist/platform/verdict-engine.d.ts.map +1 -1
  158. package/dist/platform/verdict-engine.js +0 -15
  159. package/dist/platform/verdict-engine.js.map +1 -1
  160. package/dist/shared/concurrency.d.ts.map +1 -1
  161. package/dist/shared/concurrency.js +0 -2
  162. package/dist/shared/concurrency.js.map +1 -1
  163. package/dist/shared/constants.d.ts +0 -2
  164. package/dist/shared/constants.d.ts.map +1 -1
  165. package/dist/shared/constants.js +0 -3
  166. package/dist/shared/constants.js.map +1 -1
  167. package/dist/shared/git-url.d.ts.map +1 -1
  168. package/dist/shared/git-url.js +0 -9
  169. package/dist/shared/git-url.js.map +1 -1
  170. package/dist/shared/types.d.ts +0 -11
  171. package/dist/shared/types.d.ts.map +1 -1
  172. package/dist/shared/types.js.map +1 -1
  173. package/dist/skill/registry.d.ts.map +1 -1
  174. package/dist/skill/registry.js +0 -5
  175. package/dist/skill/registry.js.map +1 -1
  176. package/dist/skills/baxian-signals/SKILL.md +0 -6
  177. package/dist/state/agent-store.d.ts.map +1 -1
  178. package/dist/state/agent-store.js +0 -6
  179. package/dist/state/agent-store.js.map +1 -1
  180. package/dist/state/error-record-store.d.ts.map +1 -1
  181. package/dist/state/error-record-store.js +0 -5
  182. package/dist/state/error-record-store.js.map +1 -1
  183. package/dist/state/init.d.ts.map +1 -1
  184. package/dist/state/init.js +0 -1
  185. package/dist/state/init.js.map +1 -1
  186. package/dist/state/lock.d.ts.map +1 -1
  187. package/dist/state/lock.js +0 -1
  188. package/dist/state/lock.js.map +1 -1
  189. package/dist/state/task-store.d.ts.map +1 -1
  190. package/dist/state/task-store.js +0 -3
  191. package/dist/state/task-store.js.map +1 -1
  192. package/dist/terminal/attach.d.ts.map +1 -1
  193. package/dist/terminal/attach.js +0 -4
  194. package/dist/terminal/attach.js.map +1 -1
  195. package/dist/terminal/stream-ws.js +0 -5
  196. package/dist/terminal/stream-ws.js.map +1 -1
  197. package/dist/web/assets/{index-BS2adAfI.css → index-yqxawAPJ.css} +1 -1
  198. package/dist/web/index.html +2 -2
  199. package/package.json +1 -1
  200. package/dist/agent/root-agent-runtime.d.ts +0 -80
  201. package/dist/agent/root-agent-runtime.d.ts.map +0 -1
  202. package/dist/agent/root-agent-runtime.js +0 -637
  203. package/dist/agent/root-agent-runtime.js.map +0 -1
  204. package/dist/agent/root-recovery-coordinator.d.ts +0 -124
  205. package/dist/agent/root-recovery-coordinator.d.ts.map +0 -1
  206. package/dist/agent/root-recovery-coordinator.js +0 -1557
  207. package/dist/agent/root-recovery-coordinator.js.map +0 -1
  208. package/dist/state/root-recovery-store.d.ts +0 -107
  209. package/dist/state/root-recovery-store.d.ts.map +0 -1
  210. package/dist/state/root-recovery-store.js +0 -400
  211. package/dist/state/root-recovery-store.js.map +0 -1
  212. /package/dist/web/assets/{index-BKiM0MSM.js → index-CiAnjs1_.js} +0 -0
@@ -9,8 +9,6 @@ import { isRecord } from '../shared/index.js';
9
9
  import { createHash } from 'node:crypto';
10
10
  export const DRIVER_MAX_BUFFER = 64 * 1024 * 1024;
11
11
  export const DRIVER_EXEC_TIMEOUT_MS = 60_000;
12
- // listPrs 的 10 页封顶是发现窗口(v1 §6,正常终止);评论源无业务水位上限,
13
- // 命中 100 页即 fail closed——「最终必有空页」不是声明式输出可验证的契约(spec §5.3 增量⑦)。
14
12
  export const LIST_PRS_PAGE_CAP = 10;
15
13
  export const COMMENT_SOURCE_PAGE_CAP = 100;
16
14
  const STDERR_TAIL_CHARS = 500;
@@ -22,9 +20,6 @@ export class DriverOpError extends Error {
22
20
  this.name = 'DriverOpError';
23
21
  }
24
22
  }
25
- // 跨 HTTP/日志边界的错误一律有界投影:DriverOpError 的 message 携 stderr 尾部,
26
- // RowSchemaError 等会把非法值整个 JSON.stringify 进 message(实测可达数 MiB)——
27
- // 未知错误只保留类名与截断后的短摘要,原文不出边界。
28
23
  const SAFE_ERROR_SUMMARY_CHARS = 200;
29
24
  export function safeDriverErrorText(err) {
30
25
  if (err instanceof DriverOpError) {
@@ -43,7 +38,6 @@ export function buildDriverRunContext(repoUrl, binary) {
43
38
  if (isGitHubRepo(t)) {
44
39
  return { scheme: 'https', hostname: 'github.com', host: 'github.com', repoPath: repoSlug(t), binary };
45
40
  }
46
- // 与 repoIdentityKey 同一分解(shared/git-url):cursor 身份与命令渲染对同一 URL 的解读不分叉。
47
41
  const parts = parseRepoUrlParts(t);
48
42
  if (parts === null)
49
43
  throw new Error(`cannot derive driver context from repo URL: ${t}`);
@@ -71,7 +65,6 @@ export class GitDriver {
71
65
  minToolVersion: plugin.manifest?.minToolVersion ?? '',
72
66
  ctx,
73
67
  }), 'utf8').digest('hex');
74
- // 声明期常量模式一次编译(无 g 标志,test 无 lastIndex 状态);失败风暴期每次 exec 免重编译。
75
68
  this.errorMatchers = plugin.spec.errorClasses.map(c => ({
76
69
  class: c.class,
77
70
  regexes: c.regex.map(r => new RegExp(r)),
@@ -84,7 +77,6 @@ export class GitDriver {
84
77
  return this.plugin.spec.commentSources;
85
78
  }
86
79
  async runPreflightSteps() {
87
- // 限流失败折叠成普通结果会绕过 poller 的 RateLimitAbort 退避,持续加重 secondary limit。
88
80
  let rateLimited;
89
81
  const results = await runDriverPreflightSteps((cmd) => this.exec(cmd, { timeout: DRIVER_EXEC_TIMEOUT_MS, maxBuffer: DRIVER_MAX_BUFFER }), this.plugin.spec.preflight, { ...this.ctx, minToolVersion: this.plugin.manifest?.minToolVersion ?? '' }, (step, rawOutput) => {
90
82
  if (this.classify(rawOutput) === 'RATE_LIMIT')
@@ -117,16 +109,10 @@ export class GitDriver {
117
109
  : validateRows(opName, mapResponse(opName, op, parseJsonResponse(result.stdout)));
118
110
  }
119
111
  catch (e) {
120
- // optional op 不可用仅能力降级、不计健康度(spec §5.3/§7 listApprovals 语义);生命周期
121
- // 必需 op 与评论源在加载期即拒绝 optional。降级只吞执行失败(DriverOpError)——命令
122
- // 成功后的 parse/schema 错误是插件缺陷,照常 fail loud。
123
112
  if (op.optional === true && e instanceof DriverOpError)
124
113
  return [];
125
114
  throw e;
126
115
  }
127
- // 单资源 op 的空/多行响应是 fail-open 洞:null/标量被归一成零行后上层只会静默跳过,
128
- // 项目/PR 永久停摆而健康度仍显示成功——按 op 契约恰好一行,违例 fail closed。
129
- // 检查对 parse 缺失/treated-success 的零行同样生效(加载期契约之外的运行时纵深)。
130
116
  if (SINGLE_RESOURCE_OPS.has(opName) && rows.length !== 1) {
131
117
  throw new DriverOpError(`op ${opName} must yield exactly one row (got ${rows.length})`, { opName });
132
118
  }
@@ -202,8 +188,6 @@ export class GitDriver {
202
188
  const label = opts.sourceKey === undefined ? rowOp : `${rowOp}[${opts.sourceKey}]`;
203
189
  const { idField } = opts;
204
190
  const all = [];
205
- // 页码分页在扫描期间有排序前移时,相邻页可部分重叠(GitHub sort=updated 已知形态):
206
- // 同身份同内容 = 位移重复、静默去重;同身份异内容 = 同扫描内版本冲突,fail closed 下轮重扫。
207
191
  const seen = new Map();
208
192
  let prevIds;
209
193
  for (let page = 1; page <= opts.pageCap; page++) {
@@ -214,13 +198,9 @@ export class GitDriver {
214
198
  const rawPage = parseJsonPagedPage(result.stdout);
215
199
  if (rawPage.length === 0)
216
200
  return all;
217
- // 投影先于指纹:指纹对原文 stringify 会把整页 body 再序列化一遍并在 seen 里滞留到扫描
218
- // 结束,绕开「跨页只聚合投影行」的内存界;bodyDigest 已入投影行,任何正文差异仍必然
219
- // 改变指纹,冲突检测语义等价。
220
201
  const rows = validateRows(rowOp, mapResponse(rowOp, op, rawPage), opts.sourceKey === undefined ? undefined : { sourceKey: opts.sourceKey });
221
202
  const projected = opts.projectPage === undefined ? rows : opts.projectPage(rows);
222
203
  const ids = new Set(projected.map(r => String(r[idField])));
223
- // flatten 源可能整页映射零行,空集合相等不构成「后端未消费 {page}」的证据。
224
204
  if (prevIds !== undefined && prevIds.size > 0 && ids.size === prevIds.size && [...ids].every(i => prevIds.has(i))) {
225
205
  throw new DriverOpError(`op ${label}: pagination did not advance at page ${page} (backend ignoring {page}?)`, { opName: label });
226
206
  }
@@ -1 +1 @@
1
- {"version":3,"file":"git-driver.js","sourceRoot":"","sources":["../../src/platform/git-driver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"git-driver.js","sourceRoot":"","sources":["../../src/platform/git-driver.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"manifest.d.ts","sourceRoot":"","sources":["../../src/platform/manifest.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAKnE,wBAAgB,aAAa,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAS1D;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,wBAAgB,aAAa,CAC3B,GAAG,EAAE,MAAM,EACX,UAAU,EAAE,MAAM,GACjB;IAAE,QAAQ,EAAE,cAAc,CAAA;CAAE,GAAG,CAAC;IAAE,MAAM,EAAE,qBAAqB,EAAE,CAAA;CAAE,GAAG,gBAAgB,CAAC,CAoCzF"}
1
+ {"version":3,"file":"manifest.d.ts","sourceRoot":"","sources":["../../src/platform/manifest.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAKnE,wBAAgB,aAAa,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAS1D;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,wBAAgB,aAAa,CAC3B,GAAG,EAAE,MAAM,EACX,UAAU,EAAE,MAAM,GACjB;IAAE,QAAQ,EAAE,cAAc,CAAA;CAAE,GAAG,CAAC;IAAE,MAAM,EAAE,qBAAqB,EAAE,CAAA;CAAE,GAAG,gBAAgB,CAAC,CAiCzF"}
@@ -30,7 +30,6 @@ export function parseManifest(raw, pluginPath) {
30
30
  const m = obj;
31
31
  if (typeof m.name !== 'string' || m.name === '')
32
32
  err('name must be a non-empty string');
33
- // version 是插件元数据:spec §5.2 未声明格式契约、无消费者对其做 semver 比较(仅 minToolVersion 比较)——非空串即可,勿收成 semver。
34
33
  if (typeof m.version !== 'string' || m.version.trim() === '')
35
34
  err(`version must be a non-empty string (got ${JSON.stringify(m.version)})`);
36
35
  if (m.kind !== 'git-driver')
@@ -44,8 +43,6 @@ export function parseManifest(raw, pluginPath) {
44
43
  if (m.driverSchema !== 1)
45
44
  err(`driverSchema must be 1 (got ${JSON.stringify(m.driverSchema)})`);
46
45
  if (errors.length > 0) {
47
- // schema 失败仍保留各自通过格式校验的 name/tool 作 best-effort 身份——
48
- // startup 的同名覆盖下毒靠它识别「坏损覆盖」,丢弃会静默回退内置(spec §5.4)。
49
46
  return {
50
47
  errors,
51
48
  name: typeof m.name === 'string' && m.name !== '' ? m.name : undefined,
@@ -1 +1 @@
1
- {"version":3,"file":"manifest.js","sourceRoot":"","sources":["../../src/platform/manifest.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"manifest.js","sourceRoot":"","sources":["../../src/platform/manifest.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"markers.d.ts","sourceRoot":"","sources":["../../src/platform/markers.ts"],"names":[],"mappings":"AAKA,OAAO,EAAkC,KAAK,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAErF,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,SAAS;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;CACpB;AAeD,wBAAgB,oBAAoB,CAAC,CAAC,EAAE,iBAAiB,GAAG,MAAM,CAEjE;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,iBAAiB,EAAE,CAMrE;AAED,wBAAgB,cAAc,CAAC,CAAC,EAAE,SAAS,GAAG,MAAM,CAEnD;AAED,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,EAAE,CAE3D;AAGD,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAK3D;AAOD,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,aAAa,GAAG,IAAI,CAU1D;AAOD,wBAAgB,aAAa,CAAC,GAAG,EAAE,aAAa,GAAG,MAAM,CAExD;AAED,wBAAgB,SAAS,CAAC,GAAG,EAAE,aAAa,GAAG,iBAAiB,EAAE,CAEjE;AAED,wBAAgB,OAAO,CAAC,GAAG,EAAE,aAAa,GAAG,SAAS,EAAE,CAEvD;AAED,wBAAgB,UAAU,CAAC,GAAG,EAAE,aAAa,GAAG,OAAO,CAEtD;AAED,MAAM,MAAM,kBAAkB,GAAG,SAAS,GAAG,UAAU,GAAG,WAAW,CAAC;AAItE,wBAAgB,qBAAqB,CAAC,MAAM,EAAE;IAAE,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,GAAG,kBAAkB,CAKnG;AAED,MAAM,WAAW,eAAe;IAC9B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gBAAgB,CAAC,EAAE,UAAU,GAAG,aAAa,CAAC;CAC/C;AAED,MAAM,WAAW,aAAa;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,kBAAkB,CAAC;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,IAAI,EAAE,SAAS,EAAE,CAAC;IAClB,YAAY,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAClB,cAAc,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;CAC7B;AAGD,eAAO,MAAM,cAAc,GAAI,WAAW,MAAM,EAAE,IAAI,MAAM,EAAE,QAAQ,MAAM,WAAmC,CAAC;AAChH,eAAO,MAAM,aAAa,GAAI,WAAW,MAAM,EAAE,IAAI,MAAM,WAAyB,CAAC;AAQrF,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,aAAa,EAAE,EAAE,GAAG,EAAE,eAAe,GAAG,aAAa,CA0B3F"}
1
+ {"version":3,"file":"markers.d.ts","sourceRoot":"","sources":["../../src/platform/markers.ts"],"names":[],"mappings":"AAEA,OAAO,EAAkC,KAAK,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAErF,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,SAAS;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;CACpB;AAWD,wBAAgB,oBAAoB,CAAC,CAAC,EAAE,iBAAiB,GAAG,MAAM,CAEjE;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,iBAAiB,EAAE,CAMrE;AAED,wBAAgB,cAAc,CAAC,CAAC,EAAE,SAAS,GAAG,MAAM,CAEnD;AAED,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,EAAE,CAE3D;AAED,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAK3D;AAID,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,aAAa,GAAG,IAAI,CAU1D;AAOD,wBAAgB,aAAa,CAAC,GAAG,EAAE,aAAa,GAAG,MAAM,CAExD;AAED,wBAAgB,SAAS,CAAC,GAAG,EAAE,aAAa,GAAG,iBAAiB,EAAE,CAEjE;AAED,wBAAgB,OAAO,CAAC,GAAG,EAAE,aAAa,GAAG,SAAS,EAAE,CAEvD;AAED,wBAAgB,UAAU,CAAC,GAAG,EAAE,aAAa,GAAG,OAAO,CAEtD;AAED,MAAM,MAAM,kBAAkB,GAAG,SAAS,GAAG,UAAU,GAAG,WAAW,CAAC;AAEtE,wBAAgB,qBAAqB,CAAC,MAAM,EAAE;IAAE,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,GAAG,kBAAkB,CAKnG;AAED,MAAM,WAAW,eAAe;IAC9B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gBAAgB,CAAC,EAAE,UAAU,GAAG,aAAa,CAAC;CAC/C;AAED,MAAM,WAAW,aAAa;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,kBAAkB,CAAC;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,IAAI,EAAE,SAAS,EAAE,CAAC;IAClB,YAAY,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAClB,cAAc,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;CAC7B;AAED,eAAO,MAAM,cAAc,GAAI,WAAW,MAAM,EAAE,IAAI,MAAM,EAAE,QAAQ,MAAM,WAAmC,CAAC;AAChH,eAAO,MAAM,aAAa,GAAI,WAAW,MAAM,EAAE,IAAI,MAAM,WAAyB,CAAC;AAErF,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,aAAa,EAAE,EAAE,GAAG,EAAE,eAAe,GAAG,aAAa,CA0B3F"}
@@ -1,15 +1,9 @@
1
- // baxian 标记线协议(spec §6/§7/§8):verdict 令牌行与逐 revision ack 行的唯一定义,
2
- // verdict engine / 事件过滤 / ack 完成集 / 展示剥离共用,防多处正则漂移。
3
1
  import { BODY_DIGEST_SOURCE, bodyDigest } from './body-digest.js';
4
2
  import { SHA_HEX_SOURCE, SOURCE_KEY_PATTERN } from './types.js';
5
3
  import { LINE_SAFE_ID_RE, versionTimeOf } from './row-schema.js';
6
- // 段文法取自各自的具名定义:装机校验放行的键/id/digest 形态与线协议能解析回来的
7
- // 必须是同一形态——各自内联会在任一侧收放后静默失配(ack 永判无效、反馈重派循环)。
8
4
  const unanchored = (re) => re.source.replace(/^\^/, '').replace(/\$$/, '');
9
5
  const REVIEW_TOKEN_RE = new RegExp(`<!--\\s*baxian:review:(pass|fail):(${SHA_HEX_SOURCE}):([A-Za-z0-9_-]{6,64})\\s*-->`, 'g');
10
6
  const ACK_RE = new RegExp(`<!--\\s*baxian:reply:ack:(${unanchored(SOURCE_KEY_PATTERN)}):(${unanchored(LINE_SAFE_ID_RE)}):(${BODY_DIGEST_SOURCE})\\s*-->`, 'g');
11
- // (?:(?!-->).)* 禁止注释体内提前出现 -->:贪婪 .* 会从行首标记吞到行尾另一条注释,
12
- // 把夹在中间的可见正文一并剥掉——只有「单条完整注释占满整行」才可剥。
13
7
  const MARKER_ONLY_LINE_RE = /^<!--\s*baxian:(?:(?!-->).)*-->$/;
14
8
  export function buildReviewTokenLine(m) {
15
9
  return `<!-- baxian:review:${m.kind}:${m.anchorSha}:${m.token} -->`;
@@ -27,16 +21,12 @@ export function buildAckMarker(m) {
27
21
  export function extractAckMarkers(body) {
28
22
  return [...body.matchAll(ACK_RE)].map(m => ({ sourceKey: m[1], commentId: m[2], bodyDigest: m[3] }));
29
23
  }
30
- // 仅剥「整行只有 baxian 标记」的行——verdict engine 恒读原文,此函数只服务展示/正文投影(v1 分离原则)。
31
24
  export function stripBaxianMarkerLines(body) {
32
25
  return body
33
26
  .split('\n')
34
27
  .filter(line => !MARKER_ONLY_LINE_RE.test(line.trim()))
35
28
  .join('\n');
36
29
  }
37
- // 行投影(spec v1 §6 页内管线,v2 §5.3 继承):正文一次性折算成 digest/令牌/ack/非空标记后
38
- // 原文即释放——分页聚合与 scans 跨源滞留的都是投影行,内存不随评论原文总量线性增长。
39
- // 读取端一律走 rowXxx 助手:投影行取 stash、未投影行(测试直构)现算,单点防两套语义漂移。
40
30
  const PROJECTED = Symbol('bodyProjected');
41
31
  export function projectCommentRow(row) {
42
32
  const body = typeof row.body === 'string' ? row.body : '';
@@ -64,8 +54,6 @@ export function rowAcks(row) {
64
54
  export function rowHasBody(row) {
65
55
  return isProjected(row) ? row.hasBody === true : rawBody(row) !== '';
66
56
  }
67
- // 载体类按声明结构推导而非 key 字面(用户插件的 key 集合任意,spec §6 矩阵须平台中立):
68
- // 声明 reviewState 的源承载 native review(恒非 ack 载体),声明 discussionId 的源有线程结构。
69
57
  export function classifyCommentSource(source) {
70
58
  const map = source.map ?? {};
71
59
  if ('reviewState' in map)
@@ -74,15 +62,8 @@ export function classifyCommentSource(source) {
74
62
  return 'threaded';
75
63
  return 'top-level';
76
64
  }
77
- // 集合成员键的拼法与产出同居:消费侧手工重拼在键形变更时会静默 miss(已 ack 反馈重发)。
78
65
  export const ackRevisionKey = (sourceKey, id, digest) => `${sourceKey}:${id}:${digest}`;
79
66
  export const ackCarrierKey = (sourceKey, id) => `${sourceKey}:${id}`;
80
- // ack 载体矩阵(spec §6 矩阵修订③④):唯一授权谓词 = verified 且 authorId 相等;
81
- // reviews 类行与携令牌行恒非载体(同账号 confused-deputy 结构隔离);threaded 行可 ack
82
- // **同一线程内任意成员**(根或回复 revision——poller 对 reply 行投递的 revision id 即行自身 id,
83
- // 只认线程根会让合法 ack 永判无效并把 dev 回复再当新反馈);隶属以传入行集解析,
84
- // 目标行不在集合内按 fail-closed 拒绝。行集可跨源(issue 类顶层 ack 可指向任意源),
85
- // 载体键与隶属表一律 (sourceKey, id)——三源是不同对象表、数值 id 无跨表唯一性契约(spec §5.3 增量①)。
86
67
  export function collectValidAcks(rows, ctx) {
87
68
  const acks = new Set();
88
69
  const carrierRowKeys = new Set();
@@ -1 +1 @@
1
- {"version":3,"file":"markers.js","sourceRoot":"","sources":["../../src/platform/markers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"markers.js","sourceRoot":"","sources":["../../src/platform/markers.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"platform-poller.d.ts","sourceRoot":"","sources":["../../src/platform/platform-poller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"platform-poller.d.ts","sourceRoot":"","sources":["../../src/platform/platform-poller.ts"],"names":[],"mappings":"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"}
@@ -12,7 +12,6 @@ import { collectValidAcks, rowBodyDigest } from './markers.js';
12
12
  import { createHash } from 'node:crypto';
13
13
  import { buildAckCarrierRows, feedbackEventTarget, scanCommentSourcesOnce } from './feedback.js';
14
14
  import { checkPrBinding } from './pr-binding.js';
15
- // TaskState 到轮询视图的唯一投影:poller 只看这些字段,其余任务状态一律不进轮询面。
16
15
  export function platformTaskView(task) {
17
16
  return {
18
17
  taskId: task.id,
@@ -33,10 +32,6 @@ export function platformTaskView(task) {
33
32
  ...(task.replyActorStatus !== undefined ? { replyActorStatus: task.replyActorStatus } : {}),
34
33
  };
35
34
  }
36
- // 限流后必须停止请求并退避(GitHub 平台要求,持续触发 secondary limit 会招致封禁):
37
- // 命中即短路该 entry 本周期剩余工作,退避窗口内整周期跳过,成功周期重置。
38
- // abort 携带此前已入列的全部失败:混合周期(如 ACCESS_DENIED → RATE_LIMIT)的真实
39
- // 凭据故障不得被限流短路洗白成 healthy。
40
35
  class RateLimitAbort extends Error {
41
36
  failure;
42
37
  failures;
@@ -47,7 +42,6 @@ class RateLimitAbort extends Error {
47
42
  this.name = 'RateLimitAbort';
48
43
  }
49
44
  }
50
- // 周期失败已在抛出前记入健康度——typed 标记让 catch 兜底不二次记账(不能用消息前缀嗅探)。
51
45
  class CycleFailuresError extends Error {
52
46
  constructor(message) {
53
47
  super(message);
@@ -62,7 +56,6 @@ class EntryRetiredError extends Error {
62
56
  }
63
57
  const RATE_LIMIT_BACKOFF_MIN_MS = 60_000;
64
58
  const RATE_LIMIT_BACKOFF_MAX_MS = 900_000;
65
- // 与 spec §8 base 快照同一时效纪律:projectView 连续失败 ≥3 周期后缓存默认分支视为缺失。
66
59
  const DEFAULT_BRANCH_STALE_CYCLES = 3;
67
60
  const ADOPTION_DEFERRAL_INTERVENTION_CYCLES = 3;
68
61
  export class PlatformPoller {
@@ -117,7 +110,6 @@ export class PlatformPoller {
117
110
  }
118
111
  }
119
112
  upsertWantedEntries(wantedByKey) {
120
- // Reusing repo-keyed entries keeps durable cursors and in-memory observations aligned across reloads.
121
113
  const existingByKey = new Map(this.entries.map(e => [e.repoKey, e]));
122
114
  for (const [key, init] of wantedByKey) {
123
115
  const existing = existingByKey.get(key);
@@ -159,7 +151,6 @@ export class PlatformPoller {
159
151
  console.error('[PlatformPoller] lifecycle hook threw:', err);
160
152
  }
161
153
  }
162
- // 超龄即视为缺失;纯缓存读,派发路径零网络调用。
163
154
  defaultBranchSnapshot(repoKey) {
164
155
  const entry = this.entries.find(e => e.repoKey === repoKey);
165
156
  if (entry?.defaultBranch === undefined)
@@ -198,8 +189,6 @@ export class PlatformPoller {
198
189
  }
199
190
  this.periodicRunner.start();
200
191
  }
201
- // 热重载改 pollIntervalMs:只调整已在运行的 runner,不替一个从未 start 的 poller 启动
202
- // (启动是 index 装配的职责)。未运行时仅记下新间隔,下次 start 生效。
203
192
  reschedule(intervalMs) {
204
193
  this.intervalMs = intervalMs;
205
194
  this.periodicRunner?.reschedule(intervalMs);
@@ -207,8 +196,6 @@ export class PlatformPoller {
207
196
  stop() {
208
197
  this.periodicRunner?.stop();
209
198
  }
210
- // 防重入设在唯一公开入口:定时 tick、手动触发与测试直调共用同一互斥,
211
- // 并发周期会对同一 entry/cursor 双写(重复事件 + 状态文件竞争)。
212
199
  async poll() {
213
200
  if (this.isPolling) {
214
201
  console.warn('[PlatformPoller] poll skipped: previous cycle still in flight');
@@ -262,7 +249,6 @@ export class PlatformPoller {
262
249
  if (e instanceof EntryRetiredError)
263
250
  return;
264
251
  if (e instanceof RateLimitAbort) {
265
- // 不计凭据健康度(spec §5.3 要点):退避顺延重试并在状态里如实标注 rate-limited。
266
252
  const attempt = (entry.rateLimit?.attempt ?? 0) + 1;
267
253
  const backoffMs = computeBackoffMs(attempt, {
268
254
  baseMs: RATE_LIMIT_BACKOFF_MIN_MS, maxMs: RATE_LIMIT_BACKOFF_MAX_MS,
@@ -379,7 +365,6 @@ export class PlatformPoller {
379
365
  if (!activePrs.has(Number(key.split(':')[0])))
380
366
  entry.loggedUndated.delete(key);
381
367
  }
382
- // 首周期自证,失败进健康度周期重试;早退周期未刷新 projectView,须同步老化缓存。
383
368
  if (entry.preflightPassed !== true && entry.driver.runPreflightSteps !== undefined) {
384
369
  let steps;
385
370
  try {
@@ -424,8 +409,6 @@ export class PlatformPoller {
424
409
  entry.defaultBranchStale += 1;
425
410
  fail('projectView', e);
426
411
  }
427
- // 收编快照必须用当周期值(写 durable base);子轮询绑定校验是纯守卫谓词,可用
428
- // 有界陈旧的缓存跨过瞬时 projectView 故障,超龄即视为缺失(fail closed 停子轮询)。
429
412
  const usableDefault = defaultBranch
430
413
  ?? (entry.defaultBranch !== undefined && entry.defaultBranchStale < DEFAULT_BRANCH_STALE_CYCLES
431
414
  ? entry.defaultBranch
@@ -435,8 +418,6 @@ export class PlatformPoller {
435
418
  for (const task of tasks) {
436
419
  if (task.terminal || task.prNumber === undefined)
437
420
  continue;
438
- // closed-unmerged 锚在场即停子轮询:恢复只经主轮询 reopen 事件 → handler durable
439
- // 解锚 → 下一周期任务视图锚已清(spec §6 reopen 显式 durable 观察协议)。
440
421
  if (task.closedUnmergedAnchor === true)
441
422
  continue;
442
423
  await this.subPoll(entry, task, usableDefault, fail);
@@ -444,7 +425,6 @@ export class PlatformPoller {
444
425
  }
445
426
  return failures;
446
427
  }
447
- // PR 收编后仍可被 retarget/改写:产出生命周期/裁决事件前按 fresh prView 复核绑定,「无法核验」不得视同「匹配」。
448
428
  bindingCheck(task, prRow, defaultBranch) {
449
429
  return checkPrBinding(prRow, {
450
430
  branch: task.branch,
@@ -460,9 +440,6 @@ export class PlatformPoller {
460
440
  prRows = await entry.driver.runListPrs({}, pageRows => {
461
441
  if (prsCursor.watermarkTime === null)
462
442
  return false;
463
- // 停止条件 = 观察到严格早于水位的行:desc 序下这证明 ≥ 水位的行(含水位同秒整桶)
464
- // 已全部翻过;「整页都是已知水位行」证明不了同秒桶已扫完——同秒无稳定次序,
465
- // 第二页可能还有同秒新 PR(spec v1 §6 停止条件)。
466
443
  return pageRows.some(r => {
467
444
  const vt = versionTimeOf(r);
468
445
  return vt !== undefined && vt < prsCursor.watermarkTime;
@@ -529,7 +506,6 @@ export class PlatformPoller {
529
506
  const boundTask = boundByPr.get(prNumber);
530
507
  if (boundTask !== undefined) {
531
508
  await clearPending(prNumber);
532
- // reopen 是显式 durable 观察:closed-unmerged 锚在 TaskState,主轮询见重开即合成(spec §6)。
533
509
  if (boundTask.closedUnmergedAnchor === true && row.state === 'open') {
534
510
  try {
535
511
  await this.emit(entry, 'pr.updated', { ...base, kind: 'reopened' }, boundTask.taskId);
@@ -557,8 +533,6 @@ export class PlatformPoller {
557
533
  const pendingTaskId = pendingByPr.get(prNumber);
558
534
  if (pendingTaskId !== undefined && pendingTaskId !== task.taskId)
559
535
  await clearPending(prNumber);
560
- // 统一谓词 branch === task.branch:branch 缺失的任务视图无从核验绑定,收编一并 fail closed
561
- // (与子轮询 bindingCheck 对称——「无法核验」不是「匹配」)。
562
536
  if (task.branch !== base.branch) {
563
537
  await clearPending(prNumber);
564
538
  continue;
@@ -586,8 +560,6 @@ export class PlatformPoller {
586
560
  continue;
587
561
  }
588
562
  if (target !== defaultBranch) {
589
- // 无快照档的失配交人工:PR 已存在、同 head 重试 create 必失败,静默拒收会永久卡死(spec §6)。
590
- // 条件未变时跨周期去重(成功投递才记指纹,emit 失败下轮重试);恢复/收编成功即清。
591
563
  const fp = [task.taskId, target, defaultBranch].join('\0');
592
564
  if (entry.baseMismatch.get(prNumber) !== fp) {
593
565
  await this.emit(entry, 'human.intervention', {
@@ -730,7 +702,6 @@ export class PlatformPoller {
730
702
  fail(`closed pr#${prNumber}`, e);
731
703
  }
732
704
  }
733
- // 未合并关闭停子轮询,reopen 经主轮询恢复(spec §6)。
734
705
  return;
735
706
  }
736
707
  observed.closedUnmerged = false;
@@ -747,10 +718,6 @@ export class PlatformPoller {
747
718
  const scans = await this.scanCommentSources(entry, task, base, fail);
748
719
  await this.noteConversationProjection(entry, task.taskId, obsKey, scans);
749
720
  const anchorSha = task.anchorSha?.toLowerCase();
750
- // 裁决资格门:head 偏离锚点只能走 push/recheck,旧锚令牌不得批准新 head;signalToken
751
- // 缺失**或空白**的事件会绕过既有 handler 的令牌比对(guard 是 truthy 双与,两个空值照样
752
- // 通过)——缺任一资格即清候选,跨不可裁决状态存活的候选会把恢复后首个扫描当成第二个
753
- // 确认周期(spec §6 verdict ③)。
754
721
  const verdictEligible = task.inReview === true
755
722
  && prRow.draft === false
756
723
  && task.passToken !== undefined && task.failToken !== undefined
@@ -761,7 +728,6 @@ export class PlatformPoller {
761
728
  this.engine.dropCandidate(task.taskId, prNumber);
762
729
  return;
763
730
  }
764
- // 源扫描失败的完整性门由 engine 单点持有(spec §6 verdict ①,含候选保留语义),此处不复检。
765
731
  const decision = this.engine.evaluate({
766
732
  taskId: task.taskId,
767
733
  prNumber,
@@ -776,8 +742,6 @@ export class PlatformPoller {
776
742
  if (entry.deliveredVerdicts.get(obsKey) === fp)
777
743
  return;
778
744
  try {
779
- // 评论源扫描最长可达分钟级,扫描期间 head/状态可被平台改写(TOCTOU):emit 前以
780
- // 权威 prView 复核 open/!draft/绑定/锚点,失配清候选走 push/recheck,查询失败按瞬态重试。
781
745
  const [freshRow] = await entry.driver.runOp('prView', { prNumber });
782
746
  this.assertEntryActive(entry);
783
747
  const freshEligible = freshRow !== undefined
@@ -806,7 +770,6 @@ export class PlatformPoller {
806
770
  fail(`verdict pr#${prNumber}`, e);
807
771
  }
808
772
  }
809
- // 全源成功才比对(失败源缺行会伪刷新两次);回调失败不推进基线,下轮重试。
810
773
  async noteConversationProjection(entry, taskId, obsKey, scans) {
811
774
  const notify = this.opts.onConversationRevision;
812
775
  if (notify === undefined)
@@ -815,7 +778,6 @@ export class PlatformPoller {
815
778
  return;
816
779
  const h = createHash('sha256');
817
780
  for (const scan of [...scans].sort((a, b) => a.key.localeCompare(b.key))) {
818
- // 源未承诺稳定行序:按行身份规范化后再散列,重排不产生伪 revision。
819
781
  const rows = [...scan.rows].sort((a, b) => {
820
782
  const ai = String(a.id);
821
783
  const bi = String(b.id);
@@ -826,8 +788,6 @@ export class PlatformPoller {
826
788
  return ad < bd ? -1 : ad > bd ? 1 : 0;
827
789
  });
828
790
  for (const row of rows) {
829
- // versionTime 入摘要:正文相同但 updatedAt 变化会改变时间线排序(进而改变分轮),
830
- // 不计入就永远不推进展示 revision。
831
791
  h.update(`${scan.key}:${String(row.id)}:${rowBodyDigest(row)}:${String(row.reviewState ?? '')}:${String(versionTimeOf(row) ?? '')}\n`);
832
792
  }
833
793
  }
@@ -844,9 +804,6 @@ export class PlatformPoller {
844
804
  }
845
805
  async scanCommentSources(entry, task, base, fail) {
846
806
  const scans = await scanCommentSourcesOnce(entry.driver, base.prNumber, this.now, (key, error) => fail(`listComments[${key}] pr#${base.prNumber}`, error));
847
- // ack 完成集跨源计算一次:issue 类顶层 ack 可指向任意源的 revision,threaded 隶属
848
- // 也要全源行集解析;已 ack 的 revision 即 dev 已处置——cursor 重置/源删重加后再变 fresh
849
- // 也不得重发反馈事件(ack 是 durable 处置证据,ledger 只是投递优化)。
850
807
  const ackCollection = collectValidAcks(buildAckCarrierRows(scans), {
851
808
  replyActorId: task.replyActorId,
852
809
  replyActorStatus: task.replyActorStatus,