dsh-codex-connect 0.1.0-alpha.4.45 → 0.1.0-alpha.4.47
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/INSTALL.md +10 -8
- package/README.i18n.yaml +2 -2
- package/README.md +4 -4
- package/docs/README.zh.md +4 -4
- package/docs/agent-notes/issue-264-isolated-import.md +7 -0
- package/docs/agent-notes/windows-proxy-compressed-fetch.md +7 -0
- package/docs/release-notes/alpha-4.46.md +21 -0
- package/docs/release-notes/alpha-4.47.md +21 -0
- package/lib/bin.js +1 -1
- package/lib/client.js +1 -1
- package/lib/index.js +37 -1
- package/package.json +5 -6
package/INSTALL.md
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
# Installation Runbook for CLI Agents
|
|
2
2
|
|
|
3
|
-
Published Alpha 4.
|
|
3
|
+
Published Alpha 4.46 is verified with the exact DSH `0.1.7-rc.1` model-runtime pairing and pi-ai `0.85.1`. Earlier DSH pairings retain their separately published plugin versions below.
|
|
4
4
|
|
|
5
5
|
Install `dsh-codex-connect` into one requested DeepSeek Harness profile without changing its current default model, search route, global configuration, or OAuth state.
|
|
6
6
|
|
|
7
|
-
Channel snapshot on 2026-09-24: npm `alpha` points to `0.1.0-alpha.4.
|
|
7
|
+
Channel snapshot on 2026-09-24: npm `alpha` points to `0.1.0-alpha.4.46` while `latest` remains on `0.1.0-alpha.4.45`. Use the exact-version command for the installed DSH version. Publishing an Alpha and promoting the default installation channel are separate actions.
|
|
8
8
|
|
|
9
9
|
## Safety requirements
|
|
10
10
|
|
|
@@ -30,13 +30,15 @@ Check `dsh --version` before changing the requested profile. Use `dsh --help` to
|
|
|
30
30
|
| `0.1.5-alpha.1` | `0.1.0-alpha.4.41` |
|
|
31
31
|
| `0.1.5-rc.1` | `0.1.0-alpha.4.41` |
|
|
32
32
|
| `0.1.5-rc.2` | `0.1.0-alpha.4.41` |
|
|
33
|
-
| `0.1.7-rc.1` | `0.1.0-alpha.4.
|
|
33
|
+
| `0.1.7-rc.1` | `0.1.0-alpha.4.46` |
|
|
34
34
|
|
|
35
35
|
If your exact DSH version is unknown or not listed, preserve the installed host, report that the combination is unverified, and verify it before making installation changes. A missing record does not prove incompatibility, and the catalog's latest verified DSH version is not the latest upstream release. Do not recommend upgrading or downgrading DSH merely to match a row. Investigate any specific failure and seek verification of the installed combination. Do not blindly install `dsh-codex-connect@alpha`: `alpha` is a moving tag, not a compatibility guarantee. Do not infer support for newer DSH versions from these rows.
|
|
36
36
|
|
|
37
|
-
Alpha 4.
|
|
37
|
+
Alpha 4.46 requires one consistent DSH `0.1.7-rc.1` plugin API and pi-ai `0.85.1`; Node.js remains `^22.19.0 || >=24.0.0`. It does not support the older DSH rows. Alpha 4.41 remains the choice for DSH `0.1.2-rc.1` with pi-ai `^0.84.2`, or `0.1.5-alpha.1`, `0.1.5-rc.1`, and `0.1.5-rc.2` with pi-ai `0.85.1`. Mixed host versions and other DSH/pi-ai combinations remain unverified. Alpha 4.25 remains the verified choice for DSH `0.1.2-alpha.5`, Alpha 4.23 for DSH `0.1.2-alpha.2`, Alpha 4.21 for DSH `0.1.1-rc.2`, and Alpha 4.14 for DSH `0.1.0-rc.7`. Changing DSH is a separate operation requiring the user's explicit request; a plugin update request does not authorize it. The repository's `pnpm --silent run check:compatibility` remains a strict development/release dependency gate, not a recommendation to change a user's host.
|
|
38
38
|
|
|
39
|
-
The Alpha 4.
|
|
39
|
+
The Alpha 4.46 recommendation follows [exact-release main CI](https://github.com/franksong2702/dsh-codex-connect/actions/runs/35982530538) on Node 22/24, browser and keyless Windows checks, plus the stock DSH `0.1.7-rc.1` same-artifact installation matrix. The [original publish run](https://github.com/franksong2702/dsh-codex-connect/actions/runs/35983101557) uploaded the verified package but timed out waiting for npm's public readback; it must not be rerun. After the exact version and `alpha` tag appeared, the [recovery-only run](https://github.com/franksong2702/dsh-codex-connect/actions/runs/35984180679) matched the public npm archive byte-for-byte to the original artifact and created the Git tag and prerelease without republishing. The fix's real Chrome OAuth and quota refresh on the original Windows PC remain unverified; these checks do not promote npm `latest` or establish real-account acceptance. Stock rc.1 keeps Task controls paused; migration of old Task grants across a Harness upgrade remains unverified.
|
|
40
|
+
|
|
41
|
+
The historical Alpha 4.43 recommendation followed [exact-release main CI](https://github.com/franksong2702/dsh-codex-connect/actions/runs/35887810404) on Node 22/24, Chromium and Windows checks, plus the stock DSH `0.1.7-rc.1` same-artifact installation matrix. The [original publish run](https://github.com/franksong2702/dsh-codex-connect/actions/runs/35888766215) uploaded the verified npm package but timed out waiting for public registry readback; do not rerun publication. Once npm exposed the exact version and `alpha` tag, the [recovery-only run](https://github.com/franksong2702/dsh-codex-connect/actions/runs/35889959811) verified the archive against that original artifact and created the matching Git tag and prerelease without republishing. These checks used synthetic providers, not a real ChatGPT account. Stock rc.1 keeps Task controls paused; migration of old Task grants across a Harness upgrade remains unverified.
|
|
40
42
|
|
|
41
43
|
The Alpha 4.41 recommendation follows successful [exact-release main CI](https://github.com/franksong2702/dsh-codex-connect/actions/runs/35817909046) on Node 22 and 24 (1,282 unit tests each), 52 Chromium tests, and a four-host same-artifact installation matrix. After npm processing completed, the [recovery verification](https://github.com/franksong2702/dsh-codex-connect/actions/runs/35819017165) matched the public npm archive byte-for-byte to the original verified release artifact, then created the matching Git tag and GitHub prerelease. The [original release run](https://github.com/franksong2702/dsh-codex-connect/actions/runs/35818489220) remains failed because npm's public readback was not available within its bounded retry period; do not rerun publication. These are synthetic-provider installation/lifecycle checks, not new real-account acceptance or a newly exercised published-package upgrade. Task-level model control remains opt-in; a new grant preselects only GPT-5.6 Sol / Medium and displays its scope and request limit before Start. Existing grants are not silently narrowed. Stock DSH 0.1.6-alpha.1 and alpha.2 remain undeclared; their separate compatibility trackers are not broadened by this release.
|
|
42
44
|
|
|
@@ -73,10 +75,10 @@ Alpha 4.33 omits the `modelErrors` profile field required by RC model packages,
|
|
|
73
75
|
dsh plugin --profile web add dsh-codex-connect@0.1.0-alpha.4.41
|
|
74
76
|
```
|
|
75
77
|
|
|
76
|
-
For the exact DSH `0.1.7-rc.1` pairing, use Alpha 4.
|
|
78
|
+
For the exact DSH `0.1.7-rc.1` pairing, use Alpha 4.46:
|
|
77
79
|
|
|
78
80
|
```sh
|
|
79
|
-
dsh plugin --profile web add dsh-codex-connect@0.1.0-alpha.4.
|
|
81
|
+
dsh plugin --profile web add dsh-codex-connect@0.1.0-alpha.4.46
|
|
80
82
|
```
|
|
81
83
|
|
|
82
84
|
For DSH `0.1.2-alpha.5`, use Alpha 4.25:
|
|
@@ -85,7 +87,7 @@ Alpha 4.33 omits the `modelErrors` profile field required by RC model packages,
|
|
|
85
87
|
dsh plugin --profile web add dsh-codex-connect@0.1.0-alpha.4.25
|
|
86
88
|
```
|
|
87
89
|
|
|
88
|
-
If npm is unavailable after the matching GitHub prerelease is created, use `dsh plugin --profile web add 'github:franksong2702/dsh-codex-connect#v0.1.0-alpha.4.21'` only for the DSH `0.1.1-rc.2` combination, `dsh plugin --profile web add 'github:franksong2702/dsh-codex-connect#v0.1.0-alpha.4.23'` only for the DSH `0.1.2-alpha.2` combination, `dsh plugin --profile web add 'github:franksong2702/dsh-codex-connect#v0.1.0-alpha.4.25'` only for the DSH `0.1.2-alpha.5` combination, `dsh plugin --profile web add 'github:franksong2702/dsh-codex-connect#v0.1.0-alpha.4.41'` only for the DSH `0.1.2-rc.1`, `0.1.5-alpha.1`, `0.1.5-rc.1`, and `0.1.5-rc.2` combinations, or `dsh plugin --profile web add 'github:franksong2702/dsh-codex-connect#v0.1.0-alpha.4.
|
|
90
|
+
If npm is unavailable after the matching GitHub prerelease is created, use `dsh plugin --profile web add 'github:franksong2702/dsh-codex-connect#v0.1.0-alpha.4.21'` only for the DSH `0.1.1-rc.2` combination, `dsh plugin --profile web add 'github:franksong2702/dsh-codex-connect#v0.1.0-alpha.4.23'` only for the DSH `0.1.2-alpha.2` combination, `dsh plugin --profile web add 'github:franksong2702/dsh-codex-connect#v0.1.0-alpha.4.25'` only for the DSH `0.1.2-alpha.5` combination, `dsh plugin --profile web add 'github:franksong2702/dsh-codex-connect#v0.1.0-alpha.4.41'` only for the DSH `0.1.2-rc.1`, `0.1.5-alpha.1`, `0.1.5-rc.1`, and `0.1.5-rc.2` combinations, or `dsh plugin --profile web add 'github:franksong2702/dsh-codex-connect#v0.1.0-alpha.4.46'` only for DSH `0.1.7-rc.1`.
|
|
89
91
|
|
|
90
92
|
3. Run `dsh web --help` once to compose the installed profile without starting the server. DSH `0.1.2-rc.1` prepares profile plugin dependency fallback during this step.
|
|
91
93
|
4. Run `dsh --profile web --dump-config` and require exactly one `llm-openai-codex` row loading `dsh-codex-connect`.
|
package/README.i18n.yaml
CHANGED
|
@@ -2,5 +2,5 @@
|
|
|
2
2
|
# side as of the last confirmed-consistent state. Both languages carry equal authority;
|
|
3
3
|
# after editing either side, bring the other along and re-record with:
|
|
4
4
|
# git hash-object README.md docs/README.zh.md
|
|
5
|
-
README.md:
|
|
6
|
-
docs/README.zh.md:
|
|
5
|
+
README.md: 34ba6dec074368808fbec56353955a8264c5aa9f
|
|
6
|
+
docs/README.zh.md: 8265735a5582f9038f439165db5cf11fc1e62f2d
|
package/README.md
CHANGED
|
@@ -16,19 +16,19 @@ This guide describes the published pairing below. Check `dsh --version` first an
|
|
|
16
16
|
|
|
17
17
|
| Requirement | Verified pairing |
|
|
18
18
|
|---|---|
|
|
19
|
-
| Codex Connect | `0.1.0-alpha.4.
|
|
19
|
+
| Codex Connect | `0.1.0-alpha.4.46` |
|
|
20
20
|
| DeepSeek Harness | `0.1.7-rc.1` |
|
|
21
21
|
| Node.js | `^22.19.0 \|\| >=24.0.0` |
|
|
22
22
|
| Account | ChatGPT OAuth with access to the requested Codex model; availability is decided by OpenAI |
|
|
23
23
|
|
|
24
|
-
As of 2026-09-24, npm `alpha` points to 4.
|
|
24
|
+
As of 2026-09-24, npm `alpha` points to 4.46 while `latest` remains on 4.45. Use the exact version below for this DSH pairing; publishing an Alpha and changing the default installation channel are separate actions.
|
|
25
25
|
|
|
26
26
|
On stock DSH `0.1.7-rc.1`, ordinary Composer works, but Task controls remain paused: activation is rejected and fresh Sessions do not show them. Migration of earlier Task grants across a Harness upgrade is not verified. Older supported pairings and their task behavior are documented in [Installation and upgrades](INSTALL.md).
|
|
27
27
|
|
|
28
28
|
### 1. Install
|
|
29
29
|
|
|
30
30
|
```sh
|
|
31
|
-
dsh plugin --profile web add dsh-codex-connect@0.1.0-alpha.4.
|
|
31
|
+
dsh plugin --profile web add dsh-codex-connect@0.1.0-alpha.4.46
|
|
32
32
|
dsh web
|
|
33
33
|
```
|
|
34
34
|
|
|
@@ -75,7 +75,7 @@ All options below are off on a fresh installation. Edit them in **Settings → P
|
|
|
75
75
|
|
|
76
76
|
| Capability | Enable with | Important behavior |
|
|
77
77
|
|---|---|---|
|
|
78
|
-
| Proxy | `enableProxy` | Credential-free HTTP(S), scoped to this plugin's traffic. A failed proxy request does not silently retry directly. |
|
|
78
|
+
| Proxy | `enableProxy` | Credential-free HTTP(S), scoped to this plugin's traffic, including compressed OAuth and quota responses. Unrelated Fetch calls retain the host's original transport. A failed proxy request does not silently retry directly. |
|
|
79
79
|
| Codex Search | `enableSearch` | Selects Codex for the entire profile's search route; disabling restores the previously active route. |
|
|
80
80
|
| Luna Reserve | `enableReserveFallback` | Uses the hidden Reserve route only when the backend explicitly authorizes it for the captured account; never changes global defaults or retries a generic `429`. |
|
|
81
81
|
| Image viewing | `enableImageTool` | Adds `view_image` to vision-capable models for local files and validated public HTTP(S) images. |
|
package/docs/README.zh.md
CHANGED
|
@@ -16,19 +16,19 @@ Codex Connect 为标准 Harness agent loop 添加 `openai-codex` 模型提供方
|
|
|
16
16
|
|
|
17
17
|
| 要求 | 已验证组合 |
|
|
18
18
|
|---|---|
|
|
19
|
-
| Codex Connect | `0.1.0-alpha.4.
|
|
19
|
+
| Codex Connect | `0.1.0-alpha.4.46` |
|
|
20
20
|
| DeepSeek Harness | `0.1.7-rc.1` |
|
|
21
21
|
| Node.js | `^22.19.0 \|\| >=24.0.0` |
|
|
22
22
|
| 账户 | 通过 ChatGPT OAuth 使用所请求的 Codex 模型;可用性由 OpenAI 决定 |
|
|
23
23
|
|
|
24
|
-
截至 2026-09-24,npm `alpha` 指向 4.
|
|
24
|
+
截至 2026-09-24,npm `alpha` 指向 4.46,`latest` 仍指向 4.45。安装此 DSH 组合请使用下方精确版本命令;发布 Alpha 与提升默认安装渠道是两项独立操作。
|
|
25
25
|
|
|
26
26
|
在原版 DSH `0.1.7-rc.1` 上,普通 Composer 可用,但 Task 控件仍暂停:激活请求会被拒绝,新 Session 不显示这些控件。跨 Harness 升级迁移旧任务授权尚未验证。较旧组合及其任务行为见[安装与升级](../INSTALL.md)。
|
|
27
27
|
|
|
28
28
|
### 1. 安装
|
|
29
29
|
|
|
30
30
|
```sh
|
|
31
|
-
dsh plugin --profile web add dsh-codex-connect@0.1.0-alpha.4.
|
|
31
|
+
dsh plugin --profile web add dsh-codex-connect@0.1.0-alpha.4.46
|
|
32
32
|
dsh web
|
|
33
33
|
```
|
|
34
34
|
|
|
@@ -75,7 +75,7 @@ Alpha 4.40 还会在旧提供方目录缺失时补充 `gpt-6-sol` 和 `gpt-6-lun
|
|
|
75
75
|
|
|
76
76
|
| 能力 | 启用字段 | 重要行为 |
|
|
77
77
|
|---|---|---|
|
|
78
|
-
| 代理 | `enableProxy` | 不带凭据的 HTTP(S)
|
|
78
|
+
| 代理 | `enableProxy` | 不带凭据的 HTTP(S),只作用于本插件流量,包括压缩的 OAuth 和额度响应;无关的 Fetch 请求仍使用宿主原来的传输方式。代理请求失败不会静默改走直连。 |
|
|
79
79
|
| Codex 搜索 | `enableSearch` | 将整个 profile 的搜索路由切换为 Codex;关闭后恢复之前的路由。 |
|
|
80
80
|
| Luna Reserve | `enableReserveFallback` | 只在服务端为当前已固定账户明确授权时使用隐藏的 Reserve 路由;不修改全局默认模型,也不因普通 `429` 重试。 |
|
|
81
81
|
| 图片查看 | `enableImageTool` | 为视觉模型添加 `view_image`,读取本地文件和经过校验的公网 HTTP(S) 图片。 |
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
# Install libraries imported by the runtime bundle
|
|
2
|
+
|
|
3
|
+
The Cordis bundle's `lib/index.js` imports `@deepseek-ai/schemastery` and `@earendil-works/pi-ai` at module load. Alpha 4.46 declared both only as peers, so a profile that supplied the DSH host packages but not these two libraries could fail before plugin activation. Resolving an older host-level schemastery also exposed a `.volatile()` method mismatch. A profile-local dependency workaround confirmed that the missing libraries, not credentials or plugin configuration, caused the reported failure.
|
|
4
|
+
|
|
5
|
+
The plugin now declares exact, plugin-owned runtime dependencies for schemastery `3.18.4` and pi-ai `0.85.1`. DSH, Cordis, and React remain peers because they are host-owned APIs whose module identity must remain shared. The runtime bundle continues to externalize these imports; the package manager installs the two direct dependencies beside the plugin instead of relying on incidental profile hoisting.
|
|
6
|
+
|
|
7
|
+
`check:isolated-import` copies the built package into a disposable profile, exposes the declared host peers except these two libraries, links only the plugin's declared direct dependencies beside its package, and imports the real built entry point in a fresh Node process. Before the manifest change, the same check failed on missing schemastery. The DSH install matrix exercises the packed artifact with the declared host version and remains the compatibility gate; the isolated import check does not claim a real-account or Windows acceptance run.
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
# Keep compressed Fetch responses decodable through the Codex proxy
|
|
2
|
+
|
|
3
|
+
On Windows with Node 24, the plugin's npm Undici 8 `ProxyAgent` can serve Node's built-in Fetch through its legacy v1 dispatcher bridge, but the returned response may lose `content-encoding` while retaining gzip bytes. The resulting HTTP 200 fails JSON parsing during OAuth exchange or quota refresh. A credential-free Windows probe reproduced `content-encoding: null` and the gzip magic bytes with the published Alpha 4.45 package. The equivalent macOS probe succeeded; local macOS tests alone do not prove the Windows path.
|
|
4
|
+
|
|
5
|
+
The proxy manager now routes Fetch calls made inside its `AsyncLocalStorage` scope through the same npm Undici runtime that owns its proxy agent. Outside that scope, the original host Fetch remains the fallback. The wrapper is installed only while a proxy manager owns it, follows a third-party Fetch replacement on the next acquisition, and restores the previous function on final disposal if still owned. Native `Request` instances are converted into their URL and request options because npm Undici's separate `Request` class does not accept them directly. The existing legacy dispatcher bridge remains for other Node HTTP clients; this fix does not alter direct requests or retry a failed proxy request without the proxy.
|
|
6
|
+
|
|
7
|
+
The keyless test serves gzip JSON through a local CONNECT proxy, checks both URL and native `Request` inputs, confirms the proxy was used, and checks Fetch restoration. PR CI runs that test on Windows Node 24.15.0 in addition to Ubuntu. It does not use real OAuth credentials or prove a browser login until the patched plugin is installed and exercised there.
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# Codex Connect Alpha 4.46 — Windows proxy response decoding
|
|
2
|
+
|
|
3
|
+
## English
|
|
4
|
+
|
|
5
|
+
When the optional Codex proxy is enabled on Windows, Alpha 4.45 can receive a successful compressed response but expose its gzip bytes without the encoding header. OAuth token exchange or quota refresh can then fail while parsing JSON. Alpha 4.46 routes Fetch calls inside the plugin's proxy scope through the same Undici runtime as its proxy agent; unrelated Fetch calls keep the host's original transport. A failed proxy request still does not retry directly.
|
|
6
|
+
|
|
7
|
+
This release targets DeepSeek Harness `0.1.7-rc.1`. The published 4.45 failure was reproduced without credentials on a Windows PC. The fix passed keyless Windows CI, including compressed JSON and proxy ownership checks. Real Chrome OAuth and quota refresh with the patched package on that PC remain unverified. This release does not address the separate, still-unconfirmed message-source report in Issue #261. Publishing to `alpha` does not promote npm `latest` or install the plugin in an existing profile.
|
|
8
|
+
|
|
9
|
+
After npm publication is independently confirmed, install this exact version with:
|
|
10
|
+
|
|
11
|
+
```sh
|
|
12
|
+
dsh plugin --profile web add dsh-codex-connect@0.1.0-alpha.4.46
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## 中文
|
|
16
|
+
|
|
17
|
+
在 Windows 上启用可选的 Codex 代理时,Alpha 4.45 可能收到成功的压缩响应,却丢失编码标头、把 gzip 原始字节交给调用方,导致 OAuth 换取凭据或额度刷新在解析 JSON 时失败。Alpha 4.46 让插件代理作用域内的 Fetch 使用与代理组件相同的 Undici 运行时;无关的 Fetch 仍使用宿主原有传输方式。代理请求失败时仍不会静默改走直连。
|
|
18
|
+
|
|
19
|
+
本版针对 DeepSeek Harness `0.1.7-rc.1`。已在 Windows PC 上不使用凭据复现发布版 4.45 的故障;修复通过了无凭据的 Windows CI,包括压缩 JSON 和代理所有权测试。该 PC 上安装修复包后的真实 Chrome OAuth 与额度刷新仍未验收。本版不处理 Issue #261 尚未确认的消息来源报告。发布到 `alpha` 不会同步提升 npm `latest`,也不会自动安装到现有 profile。
|
|
20
|
+
|
|
21
|
+
独立确认 npm 发布后,可使用上面的精确版本命令安装。
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# Codex Connect Alpha 4.47 — isolated plugin import
|
|
2
|
+
|
|
3
|
+
## English
|
|
4
|
+
|
|
5
|
+
Alpha 4.46 could fail to load as a Cordis bundle when a DSH profile did not independently install `@deepseek-ai/schemastery` and `@earendil-works/pi-ai`. Depending on which libraries happened to be visible, activation failed with a missing-package import or `z.union(...).volatile is not a function`. Alpha 4.47 declares the exact compatible versions as plugin-owned runtime dependencies so a normal plugin install supplies them. DSH, Cordis, and React remain host-owned peers.
|
|
6
|
+
|
|
7
|
+
This release targets DeepSeek Harness `0.1.7-rc.1`. The missing-library import was reproduced with the built bundle in a disposable profile before the fix and passed after it. The keyless DSH install matrix checks the packed candidate, but real-account and user-profile upgrade acceptance remain separate. Publishing to `alpha` does not promote npm `latest` or install this release into an existing profile.
|
|
8
|
+
|
|
9
|
+
After npm publication is independently confirmed, install this exact version with:
|
|
10
|
+
|
|
11
|
+
```sh
|
|
12
|
+
dsh plugin --profile web add dsh-codex-connect@0.1.0-alpha.4.47
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## 中文
|
|
16
|
+
|
|
17
|
+
Alpha 4.46 在 DSH profile 没有另外安装 `@deepseek-ai/schemastery` 和 `@earendil-works/pi-ai` 时,作为 Cordis bundle 加载可能失败。根据环境里偶然可见的库,错误表现为找不到依赖,或 `z.union(...).volatile is not a function`。Alpha 4.47 把兼容的精确版本列为插件自身的运行依赖,正常安装插件时即可一并安装;DSH、Cordis 和 React 仍由宿主提供。
|
|
18
|
+
|
|
19
|
+
本版针对 DeepSeek Harness `0.1.7-rc.1`。修复前已在一次性 profile 中用构建后的 bundle 复现缺依赖导入失败,修复后同一检查通过。无凭据的 DSH 安装矩阵会检查打包候选版;真实账号和已有用户 profile 的升级验收仍是独立事项。发布到 `alpha` 不会同步提升 npm `latest`,也不会自动安装到现有 profile。
|
|
20
|
+
|
|
21
|
+
独立确认 npm 发布后,可使用上面的精确版本命令安装。
|
package/lib/bin.js
CHANGED
|
@@ -765,7 +765,7 @@ async function detectCompatibility(options = {}) {
|
|
|
765
765
|
}
|
|
766
766
|
//#endregion
|
|
767
767
|
//#region src/version.ts
|
|
768
|
-
const CODEX_CONNECT_VERSION = "0.1.0-alpha.4.
|
|
768
|
+
const CODEX_CONNECT_VERSION = "0.1.0-alpha.4.47";
|
|
769
769
|
//#endregion
|
|
770
770
|
//#region src/doctor.ts
|
|
771
771
|
/** Secret-free diagnostics and duplicate-provider guidance. */
|
package/lib/client.js
CHANGED
|
@@ -6526,7 +6526,7 @@ window.__ModuleLoader__.load({
|
|
|
6526
6526
|
}
|
|
6527
6527
|
//#endregion
|
|
6528
6528
|
//#region src/version.ts
|
|
6529
|
-
const CODEX_CONNECT_VERSION = "0.1.0-alpha.4.
|
|
6529
|
+
const CODEX_CONNECT_VERSION = "0.1.0-alpha.4.47";
|
|
6530
6530
|
//#endregion
|
|
6531
6531
|
//#region src/client/OpenAICodexModelsCard.tsx
|
|
6532
6532
|
/** Compact Models account entry with quota disclosure and shared configuration. */
|
package/lib/index.js
CHANGED
|
@@ -4184,6 +4184,37 @@ let previousDispatcher;
|
|
|
4184
4184
|
const legacySymbol = Symbol.for("undici.globalDispatcher.1");
|
|
4185
4185
|
let installedLegacy;
|
|
4186
4186
|
let previousLegacy;
|
|
4187
|
+
let installedFetch;
|
|
4188
|
+
let previousFetch;
|
|
4189
|
+
const scopedUndiciFetch = fetch$1;
|
|
4190
|
+
function installScopedFetch(fallback) {
|
|
4191
|
+
previousFetch = fallback;
|
|
4192
|
+
installedFetch = (input, init) => {
|
|
4193
|
+
if (proxyScope.getStore() === void 0) return fallback(input, init);
|
|
4194
|
+
if (input instanceof Request) {
|
|
4195
|
+
const request = new Request(input, init);
|
|
4196
|
+
return scopedUndiciFetch(request.url, {
|
|
4197
|
+
method: request.method,
|
|
4198
|
+
headers: request.headers,
|
|
4199
|
+
signal: request.signal,
|
|
4200
|
+
redirect: request.redirect,
|
|
4201
|
+
cache: request.cache,
|
|
4202
|
+
credentials: request.credentials,
|
|
4203
|
+
integrity: request.integrity,
|
|
4204
|
+
keepalive: request.keepalive,
|
|
4205
|
+
mode: request.mode,
|
|
4206
|
+
referrer: request.referrer,
|
|
4207
|
+
referrerPolicy: request.referrerPolicy,
|
|
4208
|
+
...request.body === null ? {} : {
|
|
4209
|
+
body: request.body,
|
|
4210
|
+
duplex: "half"
|
|
4211
|
+
}
|
|
4212
|
+
});
|
|
4213
|
+
}
|
|
4214
|
+
return scopedUndiciFetch(input, init);
|
|
4215
|
+
};
|
|
4216
|
+
globalThis.fetch = installedFetch;
|
|
4217
|
+
}
|
|
4187
4218
|
function installLegacy(fallback, bridge) {
|
|
4188
4219
|
previousLegacy = fallback;
|
|
4189
4220
|
installedLegacy = { dispatch: (...args) => {
|
|
@@ -4199,6 +4230,7 @@ function ensureInstalled(owner) {
|
|
|
4199
4230
|
installedDispatcher = new ScopedProxyDispatcher(current);
|
|
4200
4231
|
setGlobalDispatcher(installedDispatcher);
|
|
4201
4232
|
installLegacy(legacy, Reflect.get(globalThis, legacySymbol));
|
|
4233
|
+
installScopedFetch(globalThis.fetch);
|
|
4202
4234
|
} else if (current !== installedDispatcher) {
|
|
4203
4235
|
installedDispatcher = new ScopedProxyDispatcher(current);
|
|
4204
4236
|
previousDispatcher = current;
|
|
@@ -4208,6 +4240,7 @@ function ensureInstalled(owner) {
|
|
|
4208
4240
|
setGlobalDispatcher(installedDispatcher);
|
|
4209
4241
|
installLegacy(legacy, Reflect.get(globalThis, legacySymbol));
|
|
4210
4242
|
}
|
|
4243
|
+
if (globalThis.fetch !== installedFetch) installScopedFetch(globalThis.fetch);
|
|
4211
4244
|
activeOwners.add(owner);
|
|
4212
4245
|
}
|
|
4213
4246
|
function removeOwner(owner) {
|
|
@@ -4221,8 +4254,11 @@ function removeOwner(owner) {
|
|
|
4221
4254
|
previousDispatcher = void 0;
|
|
4222
4255
|
if (getGlobalDispatcher() === installed && previous !== void 0) setGlobalDispatcher(previous);
|
|
4223
4256
|
if (restoreLegacy !== void 0) Reflect.set(globalThis, legacySymbol, restoreLegacy);
|
|
4257
|
+
if (globalThis.fetch === installedFetch && previousFetch !== void 0) globalThis.fetch = previousFetch;
|
|
4224
4258
|
installedLegacy = void 0;
|
|
4225
4259
|
previousLegacy = void 0;
|
|
4260
|
+
installedFetch = void 0;
|
|
4261
|
+
previousFetch = void 0;
|
|
4226
4262
|
}
|
|
4227
4263
|
function isPromiseLike(value) {
|
|
4228
4264
|
return typeof value === "object" && value !== null && "then" in value && typeof value.then === "function";
|
|
@@ -5294,7 +5330,7 @@ function registerOpenAICodexOriginalImageRoute(ctx, trustedOrigins, assets) {
|
|
|
5294
5330
|
}
|
|
5295
5331
|
//#endregion
|
|
5296
5332
|
//#region src/version.ts
|
|
5297
|
-
const CODEX_CONNECT_VERSION = "0.1.0-alpha.4.
|
|
5333
|
+
const CODEX_CONNECT_VERSION = "0.1.0-alpha.4.47";
|
|
5298
5334
|
//#endregion
|
|
5299
5335
|
//#region src/doctor.ts
|
|
5300
5336
|
/** Secret-free diagnostics and duplicate-provider guidance. */
|
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "dsh-codex-connect",
|
|
3
3
|
"displayName": "Codex Connect",
|
|
4
4
|
"description": "ChatGPT OAuth and Codex models for DeepSeek Harness.",
|
|
5
|
-
"version": "0.1.0-alpha.4.
|
|
5
|
+
"version": "0.1.0-alpha.4.47",
|
|
6
6
|
"author": "Frank Song",
|
|
7
7
|
"contributors": [
|
|
8
8
|
"Yan-Zero (original dsh-codex author)"
|
|
@@ -54,7 +54,8 @@
|
|
|
54
54
|
"check:dsh-next": "node scripts/check-dsh-next.mjs",
|
|
55
55
|
"check:release-workflow": "node scripts/check-release-workflow.mjs",
|
|
56
56
|
"check:env-proxy-import": "node scripts/check-env-proxy-import.mjs",
|
|
57
|
-
"check": "
|
|
57
|
+
"check:isolated-import": "node scripts/check-isolated-import.mjs",
|
|
58
|
+
"check": "pnpm run check:release-workflow && pnpm run check:canary-workflow && pnpm run lint && pnpm run typecheck && pnpm run test && pnpm run build && pnpm run check:env-proxy-import && pnpm run check:isolated-import && pnpm run check:capability-cli && pnpm --silent run check:compatibility && pnpm run pack:check",
|
|
58
59
|
"prepublishOnly": "pnpm --config.minimum-release-age=0 run check"
|
|
59
60
|
},
|
|
60
61
|
"exports": {
|
|
@@ -83,6 +84,8 @@
|
|
|
83
84
|
"NOTICE"
|
|
84
85
|
],
|
|
85
86
|
"dependencies": {
|
|
87
|
+
"@deepseek-ai/schemastery": "3.18.4",
|
|
88
|
+
"@earendil-works/pi-ai": "0.85.1",
|
|
86
89
|
"undici": "^8.10.0"
|
|
87
90
|
},
|
|
88
91
|
"license": "Apache-2.0",
|
|
@@ -129,8 +132,6 @@
|
|
|
129
132
|
"@deepseek-ai/dsh-tools": "0.1.7-rc.1",
|
|
130
133
|
"@deepseek-ai/dsh-util-values": "0.1.7-rc.1",
|
|
131
134
|
"@deepseek-ai/dsh-web": "0.1.7-rc.1",
|
|
132
|
-
"@deepseek-ai/schemastery": "^3.18.2",
|
|
133
|
-
"@earendil-works/pi-ai": "0.85.1",
|
|
134
135
|
"react": "^18.2.0"
|
|
135
136
|
},
|
|
136
137
|
"peerDependenciesMeta": {
|
|
@@ -201,8 +202,6 @@
|
|
|
201
202
|
"@deepseek-ai/dsh-util-values": "0.1.7-rc.1",
|
|
202
203
|
"@deepseek-ai/dsh-web": "0.1.7-rc.1",
|
|
203
204
|
"@deepseek-ai/dsh-workspace": "0.1.7-rc.1",
|
|
204
|
-
"@deepseek-ai/schemastery": "3.18.4",
|
|
205
|
-
"@earendil-works/pi-ai": "0.85.1",
|
|
206
205
|
"@testing-library/react": "^16.3.2",
|
|
207
206
|
"@shikijs/langs": "^4.3.1",
|
|
208
207
|
"@types/node": "^22.20.0",
|