@deepseek-ai/dsh-web-fetch-http 0.1.5-rc.2 → 0.1.6-alpha.1

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.
package/README.i18n.yaml CHANGED
@@ -3,4 +3,4 @@
3
3
  # after editing either side, bring the other along and re-record with:
4
4
  # pnpm run verify-translation-pairing --write packages/web/web-fetch-http/README.md
5
5
  README.md: a3e6da087df37b051aa2dc506eb718b4876601de
6
- README.zh.md: 8bcdc8da8229a0251f520b52744811088a9b974c
6
+ README.zh.md: d57d10545ae8da63515ba1e3d53a06bca5090b67
package/README.zh.md CHANGED
@@ -33,7 +33,7 @@ kind: "package-reference"
33
33
 
34
34
  ### 最小配置
35
35
 
36
- 加载 web 服务与本提供方;可配置上限都有安全默认值,并在插件构造时验证,因此无效值会响亮地失败,而不是构造出上限荒谬的提供方。URL 安全上限固定为 2,048 个字符。
36
+ 加载 web 服务与本提供方;可配置上限都有安全默认值,并在插件构造时验证,因此无效值会直接报错,而不是构造出上限荒谬的提供方。URL 安全上限固定为 2,048 个字符。
37
37
 
38
38
  ```yaml
39
39
  - name: '@deepseek-ai/dsh-web'
@@ -65,7 +65,7 @@ const page = await ctx.web.fetch({ url: 'https://example.com' })
65
65
 
66
66
  ### 失败与恢复
67
67
 
68
- 失败抛出携带可按机器路由 code 的 `WebError`:`WEB_INVALID_URL`、`WEB_BLOCKED_URL`、`WEB_FETCH_TOO_LARGE`、`WEB_FETCH_TIMEOUT`、`WEB_REDIRECT_BLOCKED`、`WEB_UNSUPPORTED_CONTENT_TYPE`、`WEB_ABORTED` 或 `WEB_PROVIDER_ERROR`。直接调用方可以按 code 路由;面向模型的 `web_fetch` 工具会在自己的错误包装层内把失败文本呈现给模型。
68
+ 失败会抛出 `WebError`,其中包含可供程序路由的错误码:`WEB_INVALID_URL`、`WEB_BLOCKED_URL`、`WEB_FETCH_TOO_LARGE`、`WEB_FETCH_TIMEOUT`、`WEB_REDIRECT_BLOCKED`、`WEB_UNSUPPORTED_CONTENT_TYPE`、`WEB_ABORTED` 或 `WEB_PROVIDER_ERROR`。直接调用方可以按错误码路由;面向模型的 `web_fetch` 工具会在自己的错误包装层内把失败文本呈现给模型。
69
69
 
70
70
  -----
71
71
 
@@ -79,7 +79,7 @@ const page = await ctx.web.fetch({ url: 'https://example.com' })
79
79
 
80
80
  ### 设计理念
81
81
 
82
- 本包建立在一个分离与一个分层超时之上:
82
+ 本包基于一项职责分离和一套分层超时机制:
83
83
 
84
84
  - **安全获取与呈现分离。** 本提供方拥有 URL 校验、公开地址强制规则、连接固定、HTTP 传输、重定向策略、上限、charset 解码与二进制拒绝;`dsh-tool-web` 拥有 HTML→markdown 与截断格式化。非 2xx 响应是数据,不是失败。
85
85
  - **两层超时。** 提供方的 `timeoutMs` 是直接 `ctx.web.fetch()` 调用方的资源兜底;面向模型的工具调用预算属于 `dsh-tool-call-timeout-policy`,由它触发 `exec.signal`。外层截止期限先到时,提供方报告 `WEB_ABORTED`,策略再以 `TOOL_TIMEOUT` 替换;因此 `WEB_FETCH_TIMEOUT` 标识的是提供方预算耗尽的直接服务调用方。
@@ -92,7 +92,7 @@ const page = await ctx.web.fetch({ url: 'https://example.com' })
92
92
  | [`src/provider.ts`](src/provider.ts) | `HttpFetchProvider`:固定连接、重定向跟随、有界读取、charset 解码 |
93
93
  | [`src/network.ts`](src/network.ts) | 公开地址解析、DNS64 发现与连接固定 |
94
94
  | [`src/policy.ts`](src/policy.ts) | URL 校验、同源检查、内容类型分类、charset 解析 |
95
- | — | 不发布运行时不变式伴生入口;上限在提供方处强制执行。 |
95
+ | — | 不发布运行时不变量配套入口;除所属 seam 强制执行的约定外,本包没有独立的事件序列或可变数据关系。 |
96
96
 
97
97
  ### 读取路径
98
98
 
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@deepseek-ai/dsh-web-fetch-http",
3
3
  "description": "Anonymous public HTTP(S) fetch provider for the DeepSeek Harness web capability seam (ctx.web)",
4
- "version": "0.1.5-rc.2",
4
+ "version": "0.1.6-alpha.1",
5
5
  "publishConfig": {
6
6
  "access": "public"
7
7
  },
@@ -28,9 +28,9 @@
28
28
  "license": "MIT",
29
29
  "peerDependencies": {
30
30
  "@deepseek-ai/cordis": "^4.0.2",
31
- "@deepseek-ai/dsh-web": "^0.1.5-rc.2",
32
- "@deepseek-ai/dsh-http-proxy": "^0.1.5-rc.2",
33
- "@deepseek-ai/dsh-timeout": "^0.1.5-rc.2"
31
+ "@deepseek-ai/dsh-timeout": "^0.1.6-alpha.1",
32
+ "@deepseek-ai/dsh-web": "^0.1.6-alpha.1",
33
+ "@deepseek-ai/dsh-http-proxy": "^0.1.6-alpha.1"
34
34
  },
35
35
  "dependencies": {
36
36
  "ipaddr.js": "^2.5.0",
@@ -38,9 +38,9 @@
38
38
  "@deepseek-ai/schemastery": "^3.18.2"
39
39
  },
40
40
  "devDependencies": {
41
- "@deepseek-ai/cordis": "^4.0.2",
42
- "@deepseek-ai/dsh-timeout": "^0.1.5-rc.2",
43
- "@deepseek-ai/dsh-web": "^0.1.5-rc.2",
44
- "@deepseek-ai/dsh-http-proxy": "^0.1.5-rc.2"
41
+ "@deepseek-ai/dsh-timeout": "^0.1.6-alpha.1",
42
+ "@deepseek-ai/dsh-web": "^0.1.6-alpha.1",
43
+ "@deepseek-ai/dsh-http-proxy": "^0.1.6-alpha.1",
44
+ "@deepseek-ai/cordis": "^4.0.2"
45
45
  }
46
46
  }