dsh-codex-connect 0.1.0-alpha.4.8 → 0.2.0-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.
Files changed (136) hide show
  1. package/INSTALL.md +138 -15
  2. package/MIGRATION.md +71 -0
  3. package/NOTICE +11 -0
  4. package/README.i18n.yaml +3 -3
  5. package/README.md +85 -122
  6. package/VERSIONING.md +67 -0
  7. package/compatibility.json +14 -2
  8. package/cordis.patch.yml +5 -0
  9. package/docs/README.zh.md +85 -122
  10. package/docs/VERSIONING.zh.md +67 -0
  11. package/docs/agent-notes/account-recovery-state.md +9 -0
  12. package/docs/agent-notes/adaptive-runtime-status.md +135 -0
  13. package/docs/agent-notes/adaptive-runtime-validation-2026-09-18.md +45 -0
  14. package/docs/agent-notes/astra-context-audit.md +27 -0
  15. package/docs/agent-notes/auth-diagnostics-safety.md +5 -0
  16. package/docs/agent-notes/canary-maintenance-loop.md +7 -0
  17. package/docs/agent-notes/canary-unverified-doctor.md +9 -0
  18. package/docs/agent-notes/compatibility-refresh.md +17 -0
  19. package/docs/agent-notes/core-transport-decoupling.md +11 -0
  20. package/docs/agent-notes/diagnostic-frame-types-20260928.md +29 -0
  21. package/docs/agent-notes/dispatcher-ownership.md +7 -0
  22. package/docs/agent-notes/dsh-016-candidate-validation.md +27 -0
  23. package/docs/agent-notes/dsh-017-stock-plugin-exec.md +9 -0
  24. package/docs/agent-notes/dsh-020-compatibility.md +17 -0
  25. package/docs/agent-notes/dual-dsh-release.md +9 -0
  26. package/docs/agent-notes/env-proxy-dispatcher-preservation.md +7 -0
  27. package/docs/agent-notes/gpt61-sol-support.md +29 -0
  28. package/docs/agent-notes/image-results-visible-answer.md +7 -0
  29. package/docs/agent-notes/issue-211-root-cause.md +70 -0
  30. package/docs/agent-notes/issue-215-install-triage-2026-09-19.md +43 -0
  31. package/docs/agent-notes/issue-264-isolated-import.md +7 -0
  32. package/docs/agent-notes/issue-270-implementation-checkpoint.md +49 -0
  33. package/docs/agent-notes/issue-270-review-checkpoint.md +107 -0
  34. package/docs/agent-notes/issue-270-sol-live-confirmation.md +59 -0
  35. package/docs/agent-notes/issue-270-transport-checkpoint.md +64 -0
  36. package/docs/agent-notes/issue-271-independent-review.md +47 -0
  37. package/docs/agent-notes/issue-272-post-release-fixes.md +30 -0
  38. package/docs/agent-notes/issue-273-independent-review.md +19 -0
  39. package/docs/agent-notes/oauth-cancel-commit.md +9 -0
  40. package/docs/agent-notes/oauth-jwt-decoding.md +7 -0
  41. package/docs/agent-notes/oauth-manual-callback-validation.md +44 -0
  42. package/docs/agent-notes/original-image-fork-access.md +7 -0
  43. package/docs/agent-notes/plugin-update-scope.md +9 -0
  44. package/docs/agent-notes/ptc-image-presentation.md +18 -0
  45. package/docs/agent-notes/remember-controlled-probes-delivery.md +41 -0
  46. package/docs/agent-notes/remember-delivery-preparation-2026-09-19.md +49 -0
  47. package/docs/agent-notes/remember-recall-investigation-2026-09-18.md +48 -0
  48. package/docs/agent-notes/request-metrics-runtime-candidate.md +27 -0
  49. package/docs/agent-notes/request-response-lifecycle.md +7 -0
  50. package/docs/agent-notes/search-route-runtime-override.md +7 -0
  51. package/docs/agent-notes/shared-reserve-quota.md +9 -0
  52. package/docs/agent-notes/task-activation-ui-retirement.md +11 -0
  53. package/docs/agent-notes/windows-proxy-compressed-fetch.md +7 -0
  54. package/docs/assets/composer-capabilities.jpg +0 -0
  55. package/docs/assets/en/image-generation.png +0 -0
  56. package/docs/assets/en/plugin-configuration.jpg +0 -0
  57. package/docs/assets/en/plugin-entry.jpg +0 -0
  58. package/docs/assets/zh/image-generation.png +0 -0
  59. package/docs/assets/zh/plugin-configuration.jpg +0 -0
  60. package/docs/assets/zh/plugin-entry.jpg +0 -0
  61. package/docs/auto-review.md +26 -0
  62. package/docs/auto-review.zh.md +26 -0
  63. package/docs/design.i18n.yaml +2 -2
  64. package/docs/design.md +32 -4
  65. package/docs/design.zh.md +16 -4
  66. package/docs/experiments/adaptive-task-evaluation.md +34 -0
  67. package/docs/experiments/adaptive-task-phase1-acceptance.md +106 -0
  68. package/docs/experiments/adaptive-task-phase1.md +52 -0
  69. package/docs/experiments/adaptive-task-phase2-acceptance.md +68 -0
  70. package/docs/experiments/adaptive-task-phase2-consent.md +54 -0
  71. package/docs/experiments/adaptive-task-phase2-design.md +155 -0
  72. package/docs/experiments/adaptive-task-phase2-execution.md +49 -0
  73. package/docs/experiments/adaptive-task-phase2-ledger.md +40 -0
  74. package/docs/experiments/adaptive-task-phase2-recovery.md +48 -0
  75. package/docs/experiments/adaptive-task-publication-gate.md +72 -0
  76. package/docs/experiments/dsh-017rc2-compatibility.md +31 -0
  77. package/docs/experiments/evidence/alpha-449-publication.json +26 -0
  78. package/docs/experiments/evidence/alpha-449-release-verification.json +70 -0
  79. package/docs/experiments/evidence/alpha-450-publication.json +67 -0
  80. package/docs/experiments/evidence/alpha-451-publication.json +41 -0
  81. package/docs/experiments/evidence/alpha-452-publication.json +58 -0
  82. package/docs/experiments/evidence/issue-270-sol-selection/live.json +77 -0
  83. package/docs/experiments/evidence/issue-270-sol-selection/offline.json +75 -0
  84. package/docs/experiments/evidence/issue-271-compatibility.json +1184 -0
  85. package/docs/experiments/evidence/issue-272-post-release-fix.json +94 -0
  86. package/docs/experiments/evidence/issue-273-independent-review.json +22 -0
  87. package/docs/experiments/evidence/issue-282-final-review-20260928.json +67 -0
  88. package/docs/experiments/evidence/request-metrics-runtime-review-20260928.json +62 -0
  89. package/docs/experiments/gpt6-sol-luna-compatibility.md +24 -0
  90. package/docs/experiments/issue-211-doctor-diagnostic-2026-09-18.json +153 -0
  91. package/docs/experiments/issue-211-peer-resolution-2026-09-18.json +837 -0
  92. package/docs/experiments/issue-219-diagnostics.md +49 -0
  93. package/docs/experiments/issue-270-image-edit.md +63 -0
  94. package/docs/experiments/native-compaction-durable-m15-2026-09-18-1317.json +129 -0
  95. package/docs/experiments/native-compaction-durable-m15-2026-09-18-1317.md +37 -0
  96. package/docs/experiments/native-compaction-lifecycle.md +85 -0
  97. package/docs/experiments/native-compaction-luna-smoke-m15-2026-09-12.json +89 -0
  98. package/docs/experiments/native-context-switch-acceptance.md +65 -0
  99. package/docs/experiments/phase2-matrix-node22.json +2411 -0
  100. package/docs/experiments/phase2-matrix-node24.json +2411 -0
  101. package/docs/experiments/remember-acceptance.md +60 -0
  102. package/docs/experiments/remember-controlled-acceptance-plan.md +95 -0
  103. package/docs/experiments/remember-controlled-live-m15-2026-09-18-9n7e.json +548 -0
  104. package/docs/experiments/remember-controlled-live-m15-2026-09-18-9n7e.md +33 -0
  105. package/docs/experiments/remember-controlled-offline-evidence.json +1408 -0
  106. package/docs/experiments/remember-recall-offline-diagnostics-2026-09-18.json +553 -0
  107. package/docs/experiments/remember-user-acceptance-plan.md +33 -0
  108. package/docs/licenses/pi-ai-oauth.txt +21 -0
  109. package/docs/licenses/standalone-cli.txt +115 -0
  110. package/docs/maintenance-scope.md +59 -0
  111. package/docs/reference.i18n.yaml +4 -0
  112. package/docs/reference.md +204 -0
  113. package/docs/reference.zh.md +204 -0
  114. package/docs/release-notes/0.2.0-alpha.1.md +31 -0
  115. package/docs/release-notes/alpha-4.37.md +29 -0
  116. package/docs/release-notes/alpha-4.38.md +34 -0
  117. package/docs/release-notes/alpha-4.39.md +36 -0
  118. package/docs/release-notes/alpha-4.42.md +27 -0
  119. package/docs/release-notes/alpha-4.43.md +17 -0
  120. package/docs/release-notes/alpha-4.45.md +21 -0
  121. package/docs/release-notes/alpha-4.46.md +21 -0
  122. package/docs/release-notes/alpha-4.47.md +21 -0
  123. package/docs/request-metrics.md +64 -0
  124. package/docs/request-metrics.zh.md +52 -0
  125. package/docs/versioning.i18n.yaml +4 -0
  126. package/lib/bin.js +7673 -15
  127. package/lib/client.js +7179 -526
  128. package/lib/index.d.ts +687 -106
  129. package/lib/index.js +12159 -2
  130. package/lib/invariant.d.ts +4 -5
  131. package/lib/models-DV5vWzMC.js +946 -0
  132. package/lib/openai-codex-responses-BG-O8Ytj.js +2862 -0
  133. package/lib/undici-runtime-Ctml-NLj.js +21 -0
  134. package/package.json +142 -51
  135. package/lib/bin.d.ts +0 -6
  136. package/lib/src-DztMY1zT.js +0 -1865
package/INSTALL.md CHANGED
@@ -1,7 +1,11 @@
1
1
  # Installation Runbook for CLI Agents
2
2
 
3
+ Published Alpha 4.54 is installation/runtime-regression verified with exact DSH `0.1.7-rc.1`, `0.1.7-rc.2`, `0.2.0-rc.1` or `0.2.0-rc.2`, using a consistent host package set and plugin-owned pi-ai `0.85.1`. Earlier DSH pairings retain their separately published plugin versions below.
4
+
3
5
  Install `dsh-codex-connect` into one requested DeepSeek Harness profile without changing its current default model, search route, global configuration, or OAuth state.
4
6
 
7
+ Channel snapshot on 2026-09-30: npm `alpha` points to `0.1.0-alpha.4.54`; `latest` remains `0.1.0-alpha.4.50`. Use the exact-version command for the installed DSH version; moving npm tags are not compatibility guarantees.
8
+
5
9
  ## Safety requirements
6
10
 
7
11
  - Never read, print, copy, move, or modify `~/.codex/auth.json`.
@@ -12,26 +16,142 @@ Install `dsh-codex-connect` into one requested DeepSeek Harness profile without
12
16
 
13
17
  ## Install and validate
14
18
 
15
- The only verified combination is DSH plugin API packages `0.1.0-rc.6`, `@earendil-works/pi-ai` `0.82.1`, and Node.js `^22.19.0 || >=24.0.0`. Upgrade the DSH API packages and pi-ai together, then rerun `dsh-codex-connect doctor --json` and `pnpm --silent run check:compatibility`; the contract does not make claims about future versions.
19
+ ### Select an exact version before installation
20
+
21
+ Check `dsh --version` before changing the requested profile. Use `dsh --help` to locate the CLI if needed; from a Harness checkout use `pnpm dsh --version`. The CLI string alone does not identify every installed model-runtime package: a CLI reporting `0.1.5-rc.1` can resolve `0.1.5-rc.2` packages. When the plugin is already installed, also run `dsh plugin --profile web exec dsh-codex-connect doctor --json` and inspect the installed `@deepseek-ai/dsh-llm`, `@deepseek-ai/dsh-llm-pi-ai`, and pi-ai versions. Substitute the requested profile. Select an exact pair from [verified-compatibility.json](verified-compatibility.json):
22
+
23
+ | Installed DSH version | Codex Connect version to pin |
24
+ | --- | --- |
25
+ | `0.1.0-rc.7` | `0.1.0-alpha.4.14` |
26
+ | `0.1.1-rc.2` | `0.1.0-alpha.4.21` |
27
+ | `0.1.2-alpha.2` | `0.1.0-alpha.4.23` |
28
+ | `0.1.2-rc.1` | `0.1.0-alpha.4.41` |
29
+ | `0.1.2-alpha.5` | `0.1.0-alpha.4.25` |
30
+ | `0.1.5-alpha.1` | `0.1.0-alpha.4.41` |
31
+ | `0.1.5-rc.1` | `0.1.0-alpha.4.41` |
32
+ | `0.1.5-rc.2` | `0.1.0-alpha.4.41` |
33
+ | `0.1.7-rc.1` | `0.1.0-alpha.4.54` |
34
+ | `0.1.7-rc.2` | `0.1.0-alpha.4.54` |
35
+ | `0.2.0-rc.1` | `0.1.0-alpha.4.54` |
36
+ | `0.2.0-rc.2` | `0.1.0-alpha.4.54` |
37
+
38
+ 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.
39
+
40
+ Alpha 4.54 requires one consistent DSH plugin API version from the four rows above; its direct runtime imports include `@deepseek-ai/schemastery` `3.18.4` and plugin-owned `@earendil-works/pi-ai` `0.85.1` so an isolated profile need not already provide them. The host adapter can own a different nested pi-ai version, as verified on DSH 0.2.0-rc.2. Node.js remains `^22.19.0 || >=24.0.0`. Alpha 4.54 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.
41
+
42
+ ### Alpha 4.54 DSH 0.2.0 compatibility delivery
43
+
44
+ [Alpha 4.54](https://github.com/franksong2702/dsh-codex-connect/releases/tag/v0.1.0-alpha.4.54) delivers the normal-request and dependency-ownership diagnostic repairs from [#294](https://github.com/franksong2702/dsh-codex-connect/pull/294), prepared by [#296](https://github.com/franksong2702/dsh-codex-connect/pull/296). It preserves initial system instructions and tool definitions for the pinned provider on DSH 0.2.0-rc.2 and strengthens the Canary request probe. Dynamic system/tool changes remain explicitly unsupported; frozen experimental features remain off.
45
+
46
+ [Exact-release main CI](https://github.com/franksong2702/dsh-codex-connect/actions/runs/36657684473) and the [publication workflow](https://github.com/franksong2702/dsh-codex-connect/actions/runs/36658367825) passed for `bf4fe177decb06b1b224fa642a6233594f66e40b`. Local verification passed 1,548 tests, 53 browser tests and all four same-artifact installations. Independent read-only verification matched the public npm archive to the workflow artifact (SHA-256 `3fe58fabf0aa16ab41d0d54e5d787779245bcfac45b6fe25e75573dc76e338ad`) and confirmed the release tag. These are keyless checks, not live OAuth or full user acceptance. No daily-service deployment or latest promotion is included.
47
+
48
+ ### Alpha 4.53 core maintenance delivery
49
+
50
+ [Alpha 4.53](https://github.com/franksong2702/dsh-codex-connect/releases/tag/v0.1.0-alpha.4.53) delivers the maintenance scope, explicit Task policy wiring and frozen activation-form retirement from #288–#290, prepared by #292. Existing-task recovery and safety remain. Exact-main CI passed at `d15638b614cbc0b9388768aefd30c417afa79c5a`; local checks passed 1,537 unit tests, 53 browser tests and both same-artifact host installations. These are keyless checks, not real-account acceptance.
51
+
52
+ The [original publication run](https://github.com/franksong2702/dsh-codex-connect/actions/runs/36558018123) uploaded npm but failed public readback. Recovery verified the npm archive against the original artifact (SHA-256 `1c83247e5c29fe3e9706960ad38beff2612c3a91be011b29c7ee20e70288a487`) and created only missing tag/prerelease records. No npm republish, old-tag movement or latest promotion occurred. Installation recommendations were updated only after version, alpha, tag and prerelease readback agreed.
53
+
54
+ ### Historical Alpha 4.52 request-metrics delivery
55
+
56
+ [PR #284](https://github.com/franksong2702/dsh-codex-connect/pull/284) adds optional local request evidence and the offline report CLI, without the internal evaluation runner or a metrics panel. Upgrading alone does not enable collection. Configure a private directory only in the intended profile and restart that profile explicitly; [English](docs/request-metrics.md) and [Chinese](docs/request-metrics.zh.md) guides cover configuration, unknown usage, retention and disabling. Task remains paused.
57
+
58
+ Fresh independent static source review found no blocker. Local checks passed 132 files / 1,533 tests, Chromium 73 tests, and both stock rc.1/rc.2 same-artifact installation/runtime checks including metrics startup/CLI tests. The final PR-head checks and [exact-main CI](https://github.com/franksong2702/dsh-codex-connect/actions/runs/36366815118) passed. These are synthetic engineering checks, not new real-model/image/Reserve acceptance or evidence of savings.
59
+
60
+ The original workflow uploaded npm but failed afterward. It was not rerun; recovery verified the original artifact byte-for-byte and created only missing tag/release records. [Original release run](https://github.com/franksong2702/dsh-codex-connect/actions/runs/36367211049); release commit `21504f83f0bed1d5737cb2b1972bcd3246b8d3a1`. Final independent read-only verification returned `already-complete`; the public npm archive exactly matched the original verified artifact (SHA-256 `5cab311ed632fb2156188a13633d0bf5ca4c569dad8415da4c95ad4d5063e4a4`). Version, alpha, tag and [prerelease](https://github.com/franksong2702/dsh-codex-connect/releases/tag/v0.1.0-alpha.4.52) agree. latest remains 4.50. No duplicate upload, old-tag movement or daily-service upgrade occurred. [Publication record](docs/experiments/evidence/alpha-452-publication.json).
61
+
62
+ ### Historical Alpha 4.51 maintenance delivery
63
+
64
+ The historical Alpha 4.51 recommendation followed [PR #283](https://github.com/franksong2702/dsh-codex-connect/pull/283), successful [exact-main CI](https://github.com/franksong2702/dsh-codex-connect/actions/runs/36362680011), and independent final source review of the diagnostic type/lifecycle repair. Frozen local checks passed 127 files / 1,466 tests, Chromium 73 tests, and stock rc.1/rc.2 same-artifact installation/runtime checks. Experimental defaults and Task pause remain unchanged; no draft metrics/evaluation feature is included.
65
+
66
+ The [original protected publication](https://github.com/franksong2702/dsh-codex-connect/actions/runs/36363043413) uploaded npm successfully but failed public readback. It was not rerun. Recovery-only verification matched the public package byte-for-byte to the original artifact (SHA-256 `6d8ffe3b9335e0f874592f6d5f67d2fe872e809a24a4ae4e2c1d8f14e29857e6`), then created only the missing tag and [prerelease](https://github.com/franksong2702/dsh-codex-connect/releases/tag/v0.1.0-alpha.4.51). Final independent verification returned `already-complete`: version, alpha, tag and release match commit `2ac612385ea3c3fcfc1078dc18619d7b1dc49b9a`; latest remains 4.50. See [the publication record](docs/experiments/evidence/alpha-451-publication.json). No duplicate npm upload, old-tag movement, daily-service upgrade or new real-model/image acceptance occurred.
67
+
68
+ ### Historical Alpha 4.50 delivery evidence
69
+
70
+ The Alpha 4.50 recommendation follows [PR #275](https://github.com/franksong2702/dsh-codex-connect/pull/275), [exact-release main CI](https://github.com/franksong2702/dsh-codex-connect/actions/runs/36222707376) and a successful [protected publication run](https://github.com/franksong2702/dsh-codex-connect/actions/runs/36222974006) at `6baa422b7b9cd513340948f659b51b0b9d76a724`. The same candidate passed unmodified rc.1 and rc.2 isolated installations without exemptions; Chromium passed 73 tests on each host. The rc.1 frozen full check passed 1,452 tests; rc.2 source types and focused image/auth/transport/compaction suites passed. An independent source reviewer found a mandatory UI-peer consistency gap; five red/green controls covered the correction before the final source review passed. See [the exact scope and evidence](docs/experiments/dsh-017rc2-compatibility.md).
71
+
72
+ Independent post-publication verification returned `already-complete`, matching the npm archive byte-for-byte to the original verified release artifact (SHA-256 `e974ef71d77b3153c8a41fa454d6e53de41227cf1ee96cee99db42f73a43b58d`). The version, `alpha`, Git tag and [prerelease](https://github.com/franksong2702/dsh-codex-connect/releases/tag/v0.1.0-alpha.4.50) agree. This release's publication workflow succeeded; no recovery mutation or duplicate publication was needed. `latest` remains 4.47. This is not new live-account/image/Reserve or physical Windows/mobile acceptance. All mandatory host peers, including UI peers, are checked by the full capability/strict compatibility checks; the compact doctor report alone is not a full peer audit. Optional commands-service behavior is not certified by the mandatory-peer check. Task controls remain paused and defaults are unchanged.
73
+
74
+ Historical Alpha 4.49 evidence:
75
+
76
+ The Alpha 4.49 recommendation follows [exact-release main CI](https://github.com/franksong2702/dsh-codex-connect/actions/runs/36212638824) on Node 22/24, browser and keyless Windows checks, plus the stock DSH `0.1.7-rc.1` same-artifact installation matrix. It fixes both independently reproduced Alpha 4.48 image-editing defects: reuploaded copies could select historical originals, and safe actionable input errors were hidden. The three original reproduction tests pass; a separate ephemeral GPT-6 Astra process reviewed the correction's source without implementation history and found no blockers in that scope.
77
+
78
+ The [original 4.49 publish run](https://github.com/franksong2702/dsh-codex-connect/actions/runs/36212860716) successfully published npm but failed its bounded public-readback step. It was not rerun. The [recovery-only run](https://github.com/franksong2702/dsh-codex-connect/actions/runs/36213209903) verified npm metadata and exact archive bytes against the original verified artifact, then created the [matching tag and prerelease](https://github.com/franksong2702/dsh-codex-connect/releases/tag/v0.1.0-alpha.4.49). npm exact version and `alpha` were independently read back as 4.49; `latest` remains 4.47. These checks do not claim new real-account image/selection acceptance, physical Windows/mobile behavior or pixel-perfect edits. Stock rc.1 keeps Task controls paused. The 4.48 package and tag remain unchanged and affected; select 4.49 for the corrected behavior.
79
+
80
+ Historical Alpha 4.47 evidence:
81
+
82
+ The Alpha 4.47 recommendation follows [exact-release main CI](https://github.com/franksong2702/dsh-codex-connect/actions/runs/35994106350) 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/35994578156) uploaded the verified package but failed during npm public readback; do not rerun publication. Recovery-only local verification matched the public npm archive byte-for-byte to the original artifact and created the [Git tag and prerelease](https://github.com/franksong2702/dsh-codex-connect/releases/tag/v0.1.0-alpha.4.47) without republishing. npm `alpha` and `latest` were independently read back as 4.47. These checks are not fresh real Chrome OAuth, live model/tool/image requests, or Windows application acceptance. Stock rc.1 keeps Task controls paused; migration of old Task grants across a Harness upgrade remains unverified.
83
+
84
+ Historical Alpha 4.46 evidence:
85
+
86
+ 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 did 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.
87
+
88
+ 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.
89
+
90
+ 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.
16
91
 
17
- 1. Check `dsh --version` or `dsh --help`. From a Harness checkout use `pnpm dsh`.
18
- 2. Install the package:
92
+ Historical Alpha 4.35 evidence (not relabeled as 4.37):
93
+
94
+ The Alpha 4.35 rows reflect successful release-commit CI on Node 22.19.0 and 24.20.0 (840 tests each), 28 Chromium tests, Windows canary contracts, and the four-host installation/Reserve matrix. Independent post-publication checks installed the exact npm version on all four hosts, matched all 63 installed plugin files to the verified published archive, and exercised a 4.34-to-4.35 upgrade on rc.2. All eight advertised models resolved and prepared, defaults were unchanged, all optional capabilities remained disabled, and provider disposal and synthetic Reserve transitions passed. These checks are not fresh real OAuth, live Reserve/model/tool/image, or full Windows application acceptance. See [.github/ALPHA_435_RELEASE_READINESS.md](.github/ALPHA_435_RELEASE_READINESS.md) for publication, installation evidence, and limitations. Historical rows remain the repository's existing verification record. This guidance does not change upstream DSH behavior or resolve [Issue #64](https://github.com/franksong2702/dsh-codex-connect/issues/64).
95
+
96
+ Alpha 4.33 omits the `modelErrors` profile field required by RC model packages, producing `Cannot read properties of undefined (reading 'get')`. Alpha 4.34 contains the fix, retained in 4.35. Reauthorization or repeated model-list retries do not add a missing profile field. Pin the corrected plugin version for a verified host combination; do not delete credentials or change DSH merely to work around this failure. DSH `0.1.5-alpha.2` remains unverified.
97
+
98
+ ### Install the selected version and validate
99
+
100
+ 1. Complete the version selection above. The commands below use `web`; substitute only the requested profile.
101
+ 2. Install the selected exact version. For DSH `0.1.0-rc.7`:
102
+
103
+ ```sh
104
+ dsh plugin --profile web add dsh-codex-connect@0.1.0-alpha.4.14
105
+ ```
106
+
107
+ For DSH `0.1.1-rc.2`, use Alpha 4.21:
19
108
 
20
109
  ```sh
21
- dsh plugin --profile web add dsh-codex-connect@alpha
110
+ dsh plugin --profile web add dsh-codex-connect@0.1.0-alpha.4.21
22
111
  ```
23
112
 
24
- After `0.1.0-alpha.4.8` is published, pin it exactly with `dsh plugin --profile web add dsh-codex-connect@0.1.0-alpha.4.8`. If npm is unavailable after its matching GitHub prerelease is created, use `dsh plugin --profile web add 'github:franksong2702/dsh-codex-connect#v0.1.0-alpha.4.8'`.
113
+ For DSH `0.1.2-alpha.2`, use Alpha 4.23:
25
114
 
26
- 3. Run `dsh --profile web --dump-config` and require exactly one `llm-openai-codex` row loading `dsh-codex-connect`.
27
- 4. Confirm the effective `agent-default-model` and `web.searchProvider` values are unchanged from before installation.
28
- 5. Run secret-free diagnostics:
115
+ ```sh
116
+ dsh plugin --profile web add dsh-codex-connect@0.1.0-alpha.4.23
117
+ ```
118
+
119
+ For DSH `0.1.2-rc.1`, `0.1.5-alpha.1`, `0.1.5-rc.1`, or `0.1.5-rc.2`, use Alpha 4.41:
120
+
121
+ ```sh
122
+ dsh plugin --profile web add dsh-codex-connect@0.1.0-alpha.4.41
123
+ ```
124
+
125
+ For exact DSH `0.1.7-rc.1`, `0.1.7-rc.2`, `0.2.0-rc.1` or `0.2.0-rc.2`, use Alpha 4.54:
126
+
127
+ ```sh
128
+ dsh plugin --profile web add dsh-codex-connect@0.1.0-alpha.4.54
129
+ ```
130
+
131
+ For DSH `0.1.2-alpha.5`, use Alpha 4.25:
132
+
133
+ ```sh
134
+ dsh plugin --profile web add dsh-codex-connect@0.1.0-alpha.4.25
135
+ ```
136
+
137
+ 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`.
138
+
139
+ For current DSH `0.1.7-rc.1`, `0.1.7-rc.2`, `0.2.0-rc.1` or `0.2.0-rc.2`, 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.54'`.
140
+
141
+ 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.
142
+ 4. Run `dsh --profile web --dump-config` and require exactly one `llm-openai-codex` row loading `dsh-codex-connect`.
143
+ 5. Confirm the effective `agent-default-model` and `web.searchProvider` values are unchanged from before installation.
144
+ 6. Run secret-free diagnostics:
29
145
 
30
146
  ```sh
31
147
  dsh plugin --profile web exec dsh-codex-connect doctor
32
148
  ```
33
149
 
34
- 6. If the user explicitly requests login, open **Settings → Plugins → Plugin configuration → Codex Connect**, or check `status` and then use `login` or `login --device-code`. OAuth approval belongs to the user.
150
+ 7. If the user explicitly requests login, open **Settings → Plugins → Plugin configuration → Codex Connect**, or check `status` and then use `login` or `login --device-code`. OAuth approval belongs to the user.
151
+
152
+ Alpha 4.25 offers the same account actions in **Settings → Models → Openai-Codex**, plus a shared **More settings** dialog for model visibility, proxy, search, image, context-budget, and Auto-review controls. The original Plugin settings entry remains available; neither entry automatically starts login or changes model/search defaults.
153
+
154
+ When signed out, select **Authorize**. When signed in, use **Sign out** or **View quota**; use **More settings** for plugin options. If authorization is abandoned, use **Reopen authorization** or **Cancel sign-in** and retry; cancellation does not delete an existing account. Pending authorization expires after 10 minutes by default (`oauthTimeoutMs` in plugin configuration, applied on load).
35
155
 
36
156
  ### Remote browser access
37
157
 
@@ -46,7 +166,7 @@ The value is a full `http://` or `https://` origin including its port, not a bar
46
166
 
47
167
  ## Optional configuration
48
168
 
49
- Use **Settings → Plugins → Plugin configuration → Codex Connect** for live, staged Save/Discard edits. The package row accepts the same `enableSearch` and `enableImageTool` fields as its composition base, both defaulting to `false`. Enabling search registers a provider but does not select it; selecting `web.searchProvider: openai-codex` is a second explicit profile change. Setting `agent-default-model` to `openai-codex` is also a separate explicit change.
169
+ Use **Settings → Plugins → Plugin configuration → Codex Connect** for live, staged Save/Discard edits organized under Account & quota, Models, Network, and Capabilities. Switching modules preserves the draft. The same settings control `enableSearch`, `enableReserveFallback`, `enableImageTool`, `enableImageGeneration`, and `enableAutoReview`; all five default to `false`. Luna Reserve is a published experiment in Alpha 4.35: enable it only when explicitly requested, never as an automatic installation step. Real-account Reserve entry and recovery remain unverified; authorization must come from the identity-matched backend response, not a generic `429` or quota percentage. Enabling Auto-review permits bounded approval context, tool arguments, working directory, and the planned action to be sent to `chatgpt.com`; failures return to human approval. Enabling image generation uses the image generation capability included with the current GPT subscription and saves results as DSH attachments. Enabling search registers the provider and selects it while the capability remains enabled; disabling restores the previous provider before unregistering Codex Search. Setting `agent-default-model` to `openai-codex` remains a separate explicit change.
50
170
 
51
171
  Apply only requested choices and preserve unrelated keys:
52
172
 
@@ -54,20 +174,19 @@ Apply only requested choices and preserve unrelated keys:
54
174
  - id: llm-openai-codex
55
175
  config:
56
176
  enableSearch: true
177
+ enableReserveFallback: false
57
178
  enableImageTool: false
179
+ enableImageGeneration: false
180
+ enableAutoReview: false
58
181
  searchMode: live
59
182
 
60
- - id: web
61
- config:
62
- searchProvider: openai-codex
63
-
64
183
  - id: agent-default-model
65
184
  config:
66
185
  provider: openai-codex
67
186
  model: gpt-5.6-sol
68
187
  ```
69
188
 
70
- Do not add the last two rows unless the user separately requested those routing changes.
189
+ Do not add a separate `web` row for this UI action. Do not add the `agent-default-model` row unless the user separately requested that default.
71
190
 
72
191
  ## Conflict handling
73
192
 
@@ -75,6 +194,10 @@ Do not add the last two rows unless the user separately requested those routing
75
194
 
76
195
  ## Update and removal
77
196
 
197
+ The update card checks Codex Connect releases only. It does not assess the installed host or recommend a DSH upgrade or downgrade. Run `doctor --json` explicitly for local dependency diagnostics; an `unverified` result (and its nonzero exit code) means the installed combination is outside the declared support set, not that it is known to fail. See the [diagnostic statuses](docs/reference.md#local-installation-diagnostics).
198
+
199
+ Before updating, repeat the exact-version selection above. Use `@alpha` only after verifying that the version it currently resolves to is compatible with the installed DSH; otherwise pin the selected version in the update command.
200
+
78
201
  ```sh
79
202
  dsh plugin --profile web update dsh-codex-connect@alpha
80
203
  dsh plugin --profile web remove dsh-codex-connect
package/MIGRATION.md CHANGED
@@ -1,5 +1,45 @@
1
1
  # Migrating from `dsh-codex`
2
2
 
3
+ ## Alpha 4.43 candidate: upgrade the Harness together
4
+
5
+ This candidate targets DeepSeek Harness `0.1.7-rc.1` only. Upgrade the Harness
6
+ and its profile runtime first, then install the matching Codex Connect release;
7
+ this candidate is not compatible with the previously declared `0.1.2-rc.1` or
8
+ `0.1.5` hosts. Keep the existing `llm-openai-codex` row and OAuth store. The DSH
9
+ settings lifecycle, message-source types, and native-compaction integration have
10
+ changed, but the migration does not require signing in again or editing
11
+ credentials. This candidate is not published; do not use a public install
12
+ command until its exact package/host pair is verified and released.
13
+ DSH `0.1.7-rc.1` also changes the Session log format. Migration of an active
14
+ task from the previously supported Harness versions to this target has not
15
+ passed acceptance; do not treat same-host task recovery below as proof of a
16
+ cross-Harness upgrade. Finish or safely stop active delegated tasks before
17
+ changing the Harness until that migration is verified.
18
+
19
+ ## Next release candidate: public task orchestration paused
20
+
21
+ Task-level automatic model selection and read-only delegation are being withheld
22
+ until maintainer acceptance. This change does not retroactively disable npm 4.41
23
+ or already-running installations. It takes effect only after the new package is
24
+ published, installed, and loaded.
25
+
26
+ A new ordinary conversation has no collaboration activation options. Cached
27
+ clients cannot start, resume, upgrade or authorize delegation through the closed
28
+ server route. On a supported same-version host, existing tasks keep authenticated
29
+ readback, Stop and manual takeover;
30
+ grants, original history and spent request counts are not deleted or reset.
31
+ Manual model selection (including GPT-6/Astra), accounts, existing optional tools
32
+ and native compaction settings are unchanged. Internal orchestration source and
33
+ tests remain, but there is no public setting or environment-variable escape hatch.
34
+ Reopening requires a separately reviewed source change and new build after
35
+ acceptance; per-task user authorization will still be required.
36
+
37
+ Before downgrading an existing delegated task, use the authenticated safety exits
38
+ and let the runtime verify cleanup and delivery. Do not delete the task ledger or
39
+ edit its counters to force recovery. Cross-device/new-cookie task ownership limits
40
+ remain unchanged.
41
+
42
+
3
43
  `dsh-codex-connect` uses the same provider id (`openai-codex`), OAuth filename (`.openai-codex-auth.json`), Cordis row id (`llm-openai-codex`), and browser auth routes for compatibility. The packages cannot be active together because Harness forbids duplicate provider adapters.
4
44
 
5
45
  1. Record the effective default model, search route, and `llm-openai-codex` config without reading any OAuth file.
@@ -10,3 +50,34 @@
10
50
  6. Run `--dump-config`, then `dsh-codex-connect doctor`. Do not run OAuth again when `status` already reports signed in.
11
51
 
12
52
  Rollback is the inverse package swap. Do not delete or copy the separate OAuth file during either direction. If Harness reports a duplicate `openai-codex` adapter, the old bundle or a manual provider row is still active; resolve that one row instead of changing credentials.
53
+
54
+ ## Astra reasoning selections
55
+
56
+ The plugin's Astra fallback definition offers `low`, `medium`, `high`, `xhigh`, and `max`. An omitted `reasoningEffort` preserves the provider default; it does not select Low or disable reasoning. The native dependency definition still takes precedence when present.
57
+
58
+ Before using Astra with a saved `minimal` or `off` selection, update the selected conversation and, if applicable, the default model setting:
59
+
60
+ | Saved value | Selection preserving its effective request behavior |
61
+ | --- | --- |
62
+ | `minimal` | Select `Low` (`reasoningEffort: low`); both send `low`. |
63
+ | `off` | Select `Default` (provider default), omitting `reasoningEffort`; both omit wire `reasoning`. This never guaranteed disabled reasoning. |
64
+
65
+ Other valid explicit efforts remain unchanged. A saved `minimal`, `off`, or unsupported `none` request is rejected with `UNSUPPORTED_REASONING_EFFORT` before authentication or model traffic; the plugin does not silently change it. `none` has no supported prior behavior to preserve: choose a valid effort or `Default` explicitly. The plugin does not rewrite settings or historical Session events. Use the conversation model selector for an existing Session; changing only the default model does not replace that Session's explicit selection. OAuth credentials do not need migration.
66
+
67
+ ## Repairing search history written by Alpha 4.10
68
+
69
+ Alpha 4.10 briefly wrote `web/openai-codex-search-llm-request` as a required private Session event. Because an external plugin cannot extend the Host persistence vocabulary across independent module instances, a newer Harness can refuse to read those histories after the event writer is removed.
70
+
71
+ Upgrade Codex Connect, then inspect the default `$DSH_HOME/sessions` root without changing it:
72
+
73
+ ```sh
74
+ dsh plugin --profile web exec dsh-codex-connect migrate-history --json
75
+ ```
76
+
77
+ If the dry run reports affected events, stop every DSH process that can write this Session root and apply the migration. `--confirm-stopped` is required together with `--apply`:
78
+
79
+ ```sh
80
+ dsh plugin --profile web exec dsh-codex-connect migrate-history --apply --confirm-stopped --json
81
+ ```
82
+
83
+ The migration changes only that retired event's envelope by adding `"ignorable": true`. It preserves event data, sequence, time, and the concatenated Zstandard frame layout, and creates `session.jsonl.zstd.pre-codex-search-history-migration` beside every changed artifact before replacing it. Keep that backup until you have reopened and verified the repaired Session. Re-running the command is safe. For a non-default JSONL persistence root, pass `--root /absolute/path/to/sessions`. SQLite and uncompressed JSONL stores are not modified by this command. Applying fails closed when the filesystem cannot create the required same-directory hard-link backup. Applying is also fail-closed on Windows; Windows users can run the dry-run only.
package/NOTICE CHANGED
@@ -13,3 +13,14 @@ release validation.
13
13
 
14
14
  The upstream material and the Codex Connect modifications are distributed
15
15
  under the Apache License, Version 2.0 included in LICENSE.
16
+
17
+ This product also includes OAuth login and refresh code from earendil-works/pi
18
+ (@earendil-works/pi-ai 0.84.4), under the MIT license reproduced in
19
+ docs/licenses/pi-ai-oauth.txt. JWT payload decoding, callback connection cleanup
20
+ and structured refresh rejection handling are modified.
21
+
22
+ The standalone CLI bundles selected code from host and provider dependencies so
23
+ it can run from an isolated DSH plugin-exec process without copying host peers.
24
+ The bundled third-party package attributions and license texts are in
25
+ docs/licenses/standalone-cli.txt. Runtime plugin imports continue to use the
26
+ host's packages rather than these standalone CLI copies.
package/README.i18n.yaml CHANGED
@@ -1,6 +1,6 @@
1
- # Bilingual-pair consistency record (docs/i18n/README.md): the git blob hash of each
1
+ # Bilingual-pair consistency record: the git blob hash of each
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: 6eedfff99162f49458c9fc6f5fc4dff502aa7dfc
6
- docs/README.zh.md: 3fa64da86d3c1f1305f67a5e29e4255ca309eccb
5
+ README.md: 51606273a56d29980cdfa24aad496c0e6f5395b6
6
+ docs/README.zh.md: d4f87a011bd0287bf45f1548cfc9f629f8e67dcf