@qwen-code/arena-agent 0.0.10-dev.15 → 0.0.10-dev.17

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 (124) hide show
  1. package/.env.example +30 -7
  2. package/CHANGELOG.md +56 -1
  3. package/README.md +98 -38
  4. package/dist/agent.d.ts +5 -1
  5. package/dist/agent.js +130 -37
  6. package/dist/agent.js.map +1 -1
  7. package/dist/anthropic.js +33 -49
  8. package/dist/anthropic.js.map +1 -1
  9. package/dist/arena-history.d.ts +12 -0
  10. package/dist/arena-history.js +119 -0
  11. package/dist/arena-history.js.map +1 -0
  12. package/dist/attachment-limits.d.ts +4 -0
  13. package/dist/attachment-limits.js +10 -0
  14. package/dist/attachment-limits.js.map +1 -0
  15. package/dist/attachments.d.ts +4 -2
  16. package/dist/attachments.js +9 -11
  17. package/dist/attachments.js.map +1 -1
  18. package/dist/brave-search.js +11 -7
  19. package/dist/brave-search.js.map +1 -1
  20. package/dist/canonical-data.d.ts +7 -0
  21. package/dist/canonical-data.js +10 -3
  22. package/dist/canonical-data.js.map +1 -1
  23. package/dist/cli.js +8 -3
  24. package/dist/cli.js.map +1 -1
  25. package/dist/code-cli.js +0 -0
  26. package/dist/code-tools.js +2 -4
  27. package/dist/code-tools.js.map +1 -1
  28. package/dist/compaction-threshold.d.ts +3 -0
  29. package/dist/compaction-threshold.js +6 -0
  30. package/dist/compaction-threshold.js.map +1 -0
  31. package/dist/compaction.d.ts +6 -3
  32. package/dist/compaction.js +76 -39
  33. package/dist/compaction.js.map +1 -1
  34. package/dist/config.d.ts +4 -2
  35. package/dist/config.js +12 -10
  36. package/dist/config.js.map +1 -1
  37. package/dist/connector-errors.d.ts +16 -0
  38. package/dist/connector-errors.js +69 -0
  39. package/dist/connector-errors.js.map +1 -0
  40. package/dist/connector-files.d.ts +31 -0
  41. package/dist/connector-files.js +249 -0
  42. package/dist/connector-files.js.map +1 -0
  43. package/dist/connector-input.d.ts +10 -0
  44. package/dist/connector-input.js +79 -0
  45. package/dist/connector-input.js.map +1 -0
  46. package/dist/connector-mcp.d.ts +15 -2
  47. package/dist/connector-mcp.js +201 -41
  48. package/dist/connector-mcp.js.map +1 -1
  49. package/dist/connectors.d.ts +7 -2
  50. package/dist/connectors.js +42 -30
  51. package/dist/connectors.js.map +1 -1
  52. package/dist/fetch-page.js +2 -2
  53. package/dist/fetch-page.js.map +1 -1
  54. package/dist/history.d.ts +4 -2
  55. package/dist/history.js +6 -2
  56. package/dist/history.js.map +1 -1
  57. package/dist/image-choice.d.ts +23 -0
  58. package/dist/image-choice.js +190 -0
  59. package/dist/image-choice.js.map +1 -0
  60. package/dist/image-input-fallback.js +5 -0
  61. package/dist/image-input-fallback.js.map +1 -1
  62. package/dist/image-model.d.ts +6 -0
  63. package/dist/image-model.js +32 -0
  64. package/dist/image-model.js.map +1 -0
  65. package/dist/mode.js +1 -1
  66. package/dist/mode.js.map +1 -1
  67. package/dist/model-router-media.js +5 -3
  68. package/dist/model-router-media.js.map +1 -1
  69. package/dist/model-stream.d.ts +16 -0
  70. package/dist/model-stream.js +129 -0
  71. package/dist/model-stream.js.map +1 -0
  72. package/dist/openai-responses.d.ts +1 -0
  73. package/dist/openai-responses.js +79 -85
  74. package/dist/openai-responses.js.map +1 -1
  75. package/dist/process-manager.js +9 -9
  76. package/dist/process-manager.js.map +1 -1
  77. package/dist/prompts.d.ts +0 -1
  78. package/dist/prompts.js +3 -27
  79. package/dist/prompts.js.map +1 -1
  80. package/dist/provider.js +42 -33
  81. package/dist/provider.js.map +1 -1
  82. package/dist/repo.d.ts +1 -1
  83. package/dist/repo.js +26 -4
  84. package/dist/repo.js.map +1 -1
  85. package/dist/routify-web-fetch.js +2 -2
  86. package/dist/routify-web-fetch.js.map +1 -1
  87. package/dist/server.js +40 -23
  88. package/dist/server.js.map +1 -1
  89. package/dist/session-memory-prompts.d.ts +3 -1
  90. package/dist/session-memory-prompts.js +4 -2
  91. package/dist/session-memory-prompts.js.map +1 -1
  92. package/dist/side-query.js +5 -0
  93. package/dist/side-query.js.map +1 -1
  94. package/dist/spec.d.ts +4 -4
  95. package/dist/spec.js +25 -12
  96. package/dist/spec.js.map +1 -1
  97. package/dist/startup-config.js +2 -1
  98. package/dist/startup-config.js.map +1 -1
  99. package/dist/startup-main-config.d.ts +1 -0
  100. package/dist/startup-main-config.js +1 -0
  101. package/dist/startup-main-config.js.map +1 -1
  102. package/dist/startup-tool-config.js +12 -2
  103. package/dist/startup-tool-config.js.map +1 -1
  104. package/dist/summary-compaction.js +5 -0
  105. package/dist/summary-compaction.js.map +1 -1
  106. package/dist/tools.d.ts +2 -0
  107. package/dist/tools.js +133 -49
  108. package/dist/tools.js.map +1 -1
  109. package/dist/tui.js +18 -2
  110. package/dist/tui.js.map +1 -1
  111. package/dist/types.d.ts +8 -1
  112. package/dist/web/app.js +30 -5
  113. package/dist/web/app.js.map +1 -1
  114. package/docs/BINARY_DISTRIBUTION.md +36 -4
  115. package/docs/MODES_AND_RELEASES.md +7 -2
  116. package/package.json +1 -1
  117. package/web/styles.css +22 -0
  118. package/dist/code-arena-output.d.ts +0 -15
  119. package/dist/code-arena-output.js +0 -41
  120. package/dist/code-arena-output.js.map +0 -1
  121. package/dist/legacy-compaction.d.ts +0 -20
  122. package/dist/legacy-compaction.js +0 -209
  123. package/dist/legacy-compaction.js.map +0 -1
  124. package/dist/web/app.d.ts +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"app.js","sourceRoot":"","sources":["../../src/web/app.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"app.js","sourceRoot":"","sources":["../../src/web/app.ts"],"names":[],"mappings":"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"}
@@ -145,10 +145,10 @@ CI 应构建并汇总 `build/npm/packages/<target>`。原生 Runtime 通常应
145
145
  `package.json` 版本完全一致的 `v<semver>` Tag 时会自动运行,并在同一批次
146
146
  发布这四个平台包、`@qwen-code/arena-agent` 和
147
147
  `@qwen-code/arena-cli`;后两个包都包含四种模式和两个命令入口。普通分支 push
148
- 不触发,手动运行只构建、不发布。发布前
148
+ 不触发,手动运行分支只构建;在标签上手动运行或重跑失败任务可继续发布。发布前
149
149
  需要在“设置 → 持续集成 → 变量管理”中配置有效的 `NPM_TOKEN` Secret;本地使用的
150
150
  凭证不会自动更新 CI。Tag 发布先校验版本、changelog 和 npm 身份,成功后才启动
151
- 四个平台构建;凭证缺失或认证失败会直接停止。手动构建跳过认证,不要求 npm 凭证。
151
+ 四个平台构建;凭证缺失或认证失败会直接停止。分支构建跳过认证,不要求 npm 凭证。
152
152
 
153
153
  每次发布前先按[发版流程](MODES_AND_RELEASES.md#发布节奏)更新
154
154
  [`CHANGELOG.md`](../CHANGELOG.md)。以下以新的预发布版 `0.0.10-dev.7` 为例,
@@ -212,11 +212,16 @@ npm run publish:binaries -- \
212
212
  平台包可用后才发布入口包。网络失败后会先确认 npm 上的版本状态,再决定是否重试;
213
213
  认证和权限错误会直接报告,不作为网络错误反复上传。
214
214
 
215
- 同版本重跑会核验已存在的包并继续剩余步骤。预发布默认使用 `dev` tag,稳定版本
216
- 默认使用 `latest`,也可显式用 `--tag` 覆盖。发布结束会将各包的滚动标签同步到该
215
+ 同版本重跑会核验已存在的包并继续剩余步骤。测试版(如 `0.0.10-test.0`)默认使用
216
+ `test` tag,其他预发布使用 `dev`,稳定版本使用 `latest`,也可显式用 `--tag` 覆盖。
217
+ 测试版发布只更新 `test` 通道。发布结束会将各包的滚动标签同步到该
217
218
  渠道所有包均已发布的最新版本,避免历史补发把标签退回旧版。历史版本补发仍应
218
219
  从旧到新执行,待所有批次完成后确认标签一致。
219
220
 
221
+ npm 的精确版本、包索引和 dist-tag 可能分别同步。精确版本可见后,发布入口还会
222
+ 等待索引和标签收敛,默认最多 300 秒;标签从独立端点读取,避免旧索引误报失败。
223
+ 网络波动与暂时的 404 可重试,认证、权限和内容不一致仍立即报错。
224
+
220
225
  上传进度和待发布 tarball 保存在 `build/npm/releases/<version>/`,中断后重跑可
221
226
  继续等待已受理的上传。扫描等待可并行进行,大文件上传保持串行。npm 上传遇到
222
227
  网络问题时会尝试通过 curl 直连、限速传输同一份 tarball(不使用代理);
@@ -225,6 +230,7 @@ npm run publish:binaries -- \
225
230
  | 变量 | 默认值 | 用途 |
226
231
  | --- | --- | --- |
227
232
  | `ARENA_NPM_WAIT_SECONDS` | `1200` | 等待已受理版本公开可见的最长秒数 |
233
+ | `ARENA_NPM_TAG_WAIT_SECONDS` | `300` | 等待包索引及 dist-tag 同步的最长秒数,含此阶段的网络请求与重试 |
228
234
  | `ARENA_NPM_UPLOAD_RATE` | `2M` | 网络恢复上传的限速,使用 curl 的速率格式 |
229
235
 
230
236
  最后运行完整版本验证。CI 自动执行此步骤,本地补发也必须通过:
@@ -237,6 +243,32 @@ node scripts/verify-release.mjs --version 0.0.10-dev.7
237
243
  `install.sh` 完成安装烟测。仅看到 `npm publish` 接受上传或某一个包可查询,不能
238
244
  视为整次发布完成。
239
245
 
246
+ ### 恢复已经上传完成的发布
247
+
248
+ 六个包均已公开,但更新标签或安装验证失败时,在当前 `master` 上运行同一条
249
+ “Arena 多平台二进制”流水线,填写 `finalize_version` 为完整版本号。它使用 CI
250
+ 的 `NPM_TOKEN`,跳过构建、打包和上传,只更新对应通道并执行精确版本安装烟测:
251
+
252
+ ```bash
253
+ a1 ci pipeline run 265740 --repo know-how/arena-harness \
254
+ --branch master --param finalize_version=0.0.10-test.0
255
+ ```
256
+
257
+ 本地配置了具备发布权限的 `NPM_TOKEN` 时,也可使用同一恢复入口:
258
+
259
+ ```bash
260
+ node scripts/finalize-release.mjs --version 0.0.10-test.0 --fetch-tag
261
+ ```
262
+
263
+ 恢复入口读取并校验 `v<version>` 标签中的版本和 changelog,使用当前恢复脚本,
264
+ 无需切换到历史代码。省略 `--fetch-tag` 时使用已有本地标签。它核对全部平台包、
265
+ Agent、CLI 以及 CLI 的精确版本依赖,缺包时在修改任何标签前停止;`test`、`dev`
266
+ 和 `latest` 按版本自动选择,历史版本恢复不会将滚动标签退回旧版。
267
+
268
+ 仍有包未上传时,应续跑原发布任务。新标签流水线的 API 重跑会保留发布步骤;
269
+ 使用旧版 YAML 的历史任务仍保留当时的触发条件,已经发齐的历史版本优先使用
270
+ 上面的 `finalize_version` 入口。
271
+
240
272
  ## 平台与兼容性
241
273
 
242
274
  SEA 产物内含目标平台的 Node.js 可执行文件,因此需要为每种目标分别构建:
@@ -190,6 +190,10 @@ npm run publish:binaries -- --dry-run \
190
190
  平台包必须先于 `@qwen-code/arena-cli` 发布。发布入口会等待 npm 异步扫描结束、
191
191
  核对公开包的哈希,并在平台包可用后发布 CLI,最后核验滚动 dist-tag。已被接受但
192
192
  尚未公开的上传不应当作未发布包重复上传;同版本重跑由发布入口检查状态后续跑。
193
+ 包索引和 dist-tag 的同步延迟会有时限重试,默认 300 秒,可用
194
+ `ARENA_NPM_TAG_WAIT_SECONDS` 调整。标签流水线支持 API 重跑;若包已经全部发布,
195
+ 在当前 `master` 上运行该流水线并填写 `finalize_version`,即可跳过构建与上传,
196
+ 直接更新对应通道并验证安装,详见[发布恢复入口](BINARY_DISTRIBUTION.md#恢复已经上传完成的发布)。
193
197
 
194
198
  推送标签后,CI 自动运行下列完整版本验证。本地补发也必须运行并通过:
195
199
 
@@ -199,8 +203,9 @@ node scripts/verify-release.mjs --version 0.0.10-dev.7
199
203
 
200
204
  验证覆盖 Agent、CLI 和所有受支持平台包的 exact-version npm 查询,至少包括
201
205
  `darwin-arm64`、`darwin-x64`、`linux-x64`、`linux-x64-musl`,并用该完整版本号的
202
- `install.sh` 在当前平台做端到端烟测。预发布还需确认相关包的 `dev` dist-tag
203
- 均指向最新预发布版本;历史补发从旧到新执行,待所有批次结束后再确认标签。
206
+ `install.sh` 在当前平台做端到端烟测。测试版(如 `0.0.10-test.0`)使用 `test`
207
+ dist-tag,其他预发布使用 `dev`;确认相关包均指向本通道的最新版本,不跨通道更新。
208
+ 历史补发从旧到新执行,待所有批次结束后再确认标签。
204
209
  完整矩阵及发布命令见 [`BINARY_DISTRIBUTION.md`](BINARY_DISTRIBUTION.md)。
205
210
 
206
211
  ## 原 Code Harness 的迁移边界
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@qwen-code/arena-agent",
3
- "version": "0.0.10-dev.15",
3
+ "version": "0.0.10-dev.17",
4
4
  "description": "A four-mode TypeScript agent harness for Arena and Code Arena traces.",
5
5
  "type": "module",
6
6
  "types": "./dist/sdk.d.ts",
package/web/styles.css CHANGED
@@ -1253,6 +1253,28 @@ a:focus-visible {
1253
1253
  margin-top: 7px;
1254
1254
  }
1255
1255
 
1256
+ .user-input-card .user-input-image-options {
1257
+ grid-template-columns: repeat(auto-fit, minmax(min(100%, 220px), 1fr));
1258
+ }
1259
+
1260
+ .user-input-image-options .user-input-option > span {
1261
+ min-width: 0;
1262
+ flex: 1;
1263
+ }
1264
+
1265
+ .user-input-image-options .user-input-option:not(:has(.user-input-image)) {
1266
+ grid-column: 1 / -1;
1267
+ }
1268
+
1269
+ .user-input-image {
1270
+ display: block;
1271
+ width: 100%;
1272
+ max-height: 360px;
1273
+ margin-top: 8px;
1274
+ border-radius: 5px;
1275
+ object-fit: contain;
1276
+ }
1277
+
1256
1278
  .user-input-custom {
1257
1279
  align-items: center;
1258
1280
  }
@@ -1,15 +0,0 @@
1
- import { EventSink, type EventSinkOptions } from "./protocol.js";
2
- import type { AgentEvent, AgentResult } from "./types.js";
3
- export type CodeArenaStreamHistory = "incremental" | "full";
4
- export declare function codeArenaStreamHistory(value: string | undefined): CodeArenaStreamHistory;
5
- /**
6
- * Code Arena headless stdout only. SDK/UI callbacks, model input and durable
7
- * history still receive the complete, original events.
8
- */
9
- export declare class CodeArenaEventSink extends EventSink {
10
- private readonly streamOptions;
11
- private readonly history;
12
- private readonly writeStream;
13
- constructor(streamOptions: EventSinkOptions, history?: CodeArenaStreamHistory);
14
- emit(event: AgentEvent | AgentResult): void;
15
- }
@@ -1,41 +0,0 @@
1
- import { EventSink } from "./protocol.js";
2
- export function codeArenaStreamHistory(value) {
3
- if (value === undefined || value === "" || value === "incremental")
4
- return "incremental";
5
- if (value === "full")
6
- return "full";
7
- throw new Error("ARENA_CODE_STREAM_HISTORY must be incremental or full");
8
- }
9
- /**
10
- * Code Arena headless stdout only. SDK/UI callbacks, model input and durable
11
- * history still receive the complete, original events.
12
- */
13
- export class CodeArenaEventSink extends EventSink {
14
- streamOptions;
15
- history;
16
- writeStream;
17
- constructor(streamOptions, history = "incremental") {
18
- // The base sink continues to deliver callbacks, without serializing stdout.
19
- super({ format: "silent", onEvent: streamOptions.onEvent });
20
- this.streamOptions = streamOptions;
21
- this.history = history;
22
- this.writeStream = streamOptions.write || ((value) => process.stdout.write(value));
23
- }
24
- emit(event) {
25
- super.emit(event);
26
- if (this.streamOptions.format !== "stream-json")
27
- return;
28
- // Repeating the growing trajectory here makes captured stdout quadratic in
29
- // message count. start/result remain full snapshots for existing readers.
30
- const output = this.history === "incremental" && event.type === "message"
31
- ? { type: event.type, session_id: event.session_id, message: event.message }
32
- : event;
33
- const json = JSON.stringify(output);
34
- // A single non-BMP character otherwise widens a Python receiver's entire
35
- // captured string to four bytes per code point, including ASCII image data.
36
- // Escape UTF-16 code units separately so surrogate pairs round-trip exactly.
37
- const encoded = this.history === "full" ? json : json.replace(/[^\x00-\x7f]/g, character => `\\u${character.charCodeAt(0).toString(16).padStart(4, "0")}`);
38
- this.writeStream(`${encoded}\n`);
39
- }
40
- }
41
- //# sourceMappingURL=code-arena-output.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"code-arena-output.js","sourceRoot":"","sources":["../src/code-arena-output.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAyB,MAAM,eAAe,CAAC;AAKjE,MAAM,UAAU,sBAAsB,CAAC,KAAyB;IAC9D,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,EAAE,IAAI,KAAK,KAAK,aAAa;QAAE,OAAO,aAAa,CAAC;IACzF,IAAI,KAAK,KAAK,MAAM;QAAE,OAAO,MAAM,CAAC;IACpC,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;AAC3E,CAAC;AAED;;;GAGG;AACH,MAAM,OAAO,kBAAmB,SAAQ,SAAS;IAI5B,aAAa;IACb,OAAO;IAJT,WAAW,CAA0B;IAEtD,YACmB,aAA+B,EAC/B,OAAO,GAA2B,aAAa;QAEhE,4EAA4E;QAC5E,KAAK,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,CAAC,OAAO,EAAE,CAAC,CAAC;6BAJ3C,aAAa;uBACb,OAAO;QAIxB,IAAI,CAAC,WAAW,GAAG,aAAa,CAAC,KAAK,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;IACrF,CAAC;IAEQ,IAAI,CAAC,KAA+B;QAC3C,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAClB,IAAI,IAAI,CAAC,aAAa,CAAC,MAAM,KAAK,aAAa;YAAE,OAAO;QAExD,2EAA2E;QAC3E,0EAA0E;QAC1E,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,KAAK,aAAa,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS;YACvE,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE;YAC5E,CAAC,CAAC,KAAK,CAAC;QACV,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QACpC,yEAAyE;QACzE,4EAA4E;QAC5E,6EAA6E;QAC7E,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAC3D,eAAe,EACf,SAAS,CAAC,EAAE,CAAC,MAAM,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAC3E,CAAC;QACF,IAAI,CAAC,WAAW,CAAC,GAAG,OAAO,IAAI,CAAC,CAAC;IACnC,CAAC;CACF"}
@@ -1,20 +0,0 @@
1
- import type { Message, ModelClient, ModelUsage, ToolDefinition } from "./types.js";
2
- export interface CompactionSettings {
3
- contextWindow: number;
4
- triggerRatio: number;
5
- summaryMaxTokens: number;
6
- imageTokenEstimate?: number;
7
- compactionThresholdTokens?: number;
8
- }
9
- export interface CompactionResult {
10
- compacted: boolean;
11
- estimatedTokensBefore: number;
12
- estimatedTokensAfter: number;
13
- usage?: ModelUsage;
14
- memory?: string;
15
- /** Exclusive boundary in the input context, including its system prefix. */
16
- coveredMessages?: number;
17
- }
18
- export declare function estimateContextTokens(messages: readonly Message[], tools: readonly ToolDefinition[], imageTokenEstimate?: number): number;
19
- export declare function continuationSummaryBlock(summary: string): string;
20
- export declare function compactMessagesIfNeeded(messages: Message[], tools: readonly ToolDefinition[], client: ModelClient, model: string, settings: CompactionSettings, signal?: AbortSignal): Promise<CompactionResult>;