dsh-autotier 0.2.2 → 0.2.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/AGENTS.md CHANGED
@@ -38,7 +38,7 @@ records repo-local decisions.
38
38
  (`present.ts`), inline scoped stylesheet (`styles.ts`), and en/zh dictionaries
39
39
  (`locales.ts`). The slot registry is read through a local structural
40
40
  `SlotsFace` (its owning package differs across host lines).
41
- - `tests/` — vitest over the REAL published `0.1.5-rc.1` host packages
41
+ - `tests/` — vitest over the REAL published `0.1.5-rc.2` host packages
42
42
  (`Context`, `SessionStore`, `SystemPrompt`, `ToolRuntime`, `CommandRuntime`,
43
43
  in-memory `SettingsProvider`) plus one real Loader composition. The browser
44
44
  half is covered through its pure units (wire codecs, presenter, dictionaries)
@@ -95,7 +95,7 @@ with the shell's platform modules (`react`, `react/jsx-runtime`, the
95
95
  pnpm run verify:self-contained && pnpm run verify:artifacts && pnpm pack`. The
96
96
  plain `typecheck` resolves the local harness checkout's type faces through
97
97
  tsconfig `paths` (four levels up to `D:\deepseek-harness`); `typecheck:ci`
98
- resolves the npm-published `0.1.5-rc.1` faces (no paths) and is what CI runs —
98
+ resolves the npm-published `0.1.5-rc.2` faces (no paths) and is what CI runs —
99
99
  keep both green.
100
100
 
101
101
  ## Release
@@ -108,8 +108,8 @@ and creates the GitHub Release from the CHANGELOG section.
108
108
 
109
109
  ## Docs
110
110
 
111
- - Five-language READMEs (`README.md`, `README.zh.md`, `README.es.md`,
112
- `README.pt.md`, `README.hi.md`) — keep all five in sync; the English file is
111
+ - Five-language READMEs (`README.md`, `README-zh.md`, `README-es.md`,
112
+ `README-pt.md`, `README-hi.md`) — keep all five in sync; the English file is
113
113
  the source of truth.
114
114
  - GitHub topics mirror `package.json` keywords.
115
115
  - `THIRD_PARTY_NOTICES.md` records the MIT-licensed guard-rule port from
package/CHANGELOG.md CHANGED
@@ -5,6 +5,14 @@ All notable changes to this project are documented in this file.
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## [0.2.3] - 2026-09-12
9
+
10
+ ### Changed
11
+
12
+ - Rename the four translated READMEs to `README-<lang>.md`. npm selects the package-page readme as the first markdown file matching its `{README,README.*}` glob (`@npmcli/package-json`, publish path), and that glob order puts `README.<lang>.md` ahead of `README.md` — so npm was serving the Simplified-Chinese file for every package of this family (measured on 15/15 sampled packages). The new names sit outside the glob, so the English source is served again. No content changed: the four renames are byte-identical (verified by content hash) and `check:readmes` still passes. Takes effect from the next release; an already-published version cannot gain a corrected readme retroactively.
13
+ - `scripts/check-readme-sync.mjs` now fails when the package root holds more than one npm-visible `README*.md` (it mirrors npm's `{README,README.*}` glob plus the markdown test), so the regression cannot return silently.
14
+ - Pin the `@deepseek-ai/dsh-*` dev/test dependencies to the published `0.1.5-rc.2` line and record `0.1.5-rc.2` in `dshWorkshop.compatibility.dshVersions`; the monthly Compat workflow now runs against `0.1.5-rc.2`. The peer range `>=0.1.2-rc.1 <0.2.0 || >=0.1.5-alpha.1 <0.2.0` is unchanged, so no supported host line is dropped.
15
+
8
16
  ## [0.2.2] - 2026-09-10
9
17
 
10
18
  ### Changed
@@ -28,7 +28,7 @@ strong con un TTL de retorno.
28
28
  | Harness | Estado |
29
29
  |---|---|
30
30
  | `@deepseek-ai/dsh` `0.1.2-rc.1` | compatible; el flujo compat instala esta línea de extremo a extremo |
31
- | `@deepseek-ai/dsh` `0.1.5-rc.1` | compatible; verificada de extremo a extremo (perfil real, fila en `--dump-config`, smoke keyless) y en la matriz compat |
31
+ | `@deepseek-ai/dsh` `0.1.5-rc.2` | compatible; verificada de extremo a extremo (perfil real, fila en `--dump-config`, smoke keyless) y en la matriz compat |
32
32
  | `@deepseek-ai/cordis` `^4.0.2`, `@deepseek-ai/schemastery` `^3.18.2` | base de peers |
33
33
 
34
34
  Los rangos de peers nombran ambas líneas publicadas (`>=0.1.2-rc.1 <0.2.0 ||
@@ -229,7 +229,7 @@ cruzado se rechaza al guardar y la última política válida sigue vigente.
229
229
  ```bash
230
230
  pnpm install
231
231
  pnpm run typecheck # contra las caras de tipo del checkout local del harness
232
- pnpm run typecheck:ci # contra las caras publicadas 0.1.5-rc.1 (lo que ejecuta CI)
232
+ pnpm run typecheck:ci # contra las caras publicadas 0.1.5-rc.2 (lo que ejecuta CI)
233
233
  pnpm test
234
234
  pnpm run build
235
235
  pnpm run verify:self-contained
@@ -26,7 +26,7 @@ DeepSeek Harness के लिए स्वचालित मॉडल-स्
26
26
  | Harness | स्थिति |
27
27
  |---|---|
28
28
  | `@deepseek-ai/dsh` `0.1.2-rc.1` | संगत; compat वर्कफ़्लो इस लाइन को end-to-end इंस्टॉल करता है |
29
- | `@deepseek-ai/dsh` `0.1.5-rc.1` | संगत; end-to-end सत्यापित (वास्तविक profile, `--dump-config` पंक्ति, keyless smoke) और compat मैट्रिक्स में |
29
+ | `@deepseek-ai/dsh` `0.1.5-rc.2` | संगत; end-to-end सत्यापित (वास्तविक profile, `--dump-config` पंक्ति, keyless smoke) और compat मैट्रिक्स में |
30
30
  | `@deepseek-ai/cordis` `^4.0.2`, `@deepseek-ai/schemastery` `^3.18.2` | peer आधार |
31
31
 
32
32
  peer ranges दोनों प्रकाशित लाइनें स्पष्ट रूप से लिखती हैं (`>=0.1.2-rc.1 <0.2.0
@@ -225,7 +225,7 @@ dsh plugin --profile web remove dsh-autotier
225
225
  ```bash
226
226
  pnpm install
227
227
  pnpm run typecheck # स्थानीय harness checkout के type faces के विरुद्ध
228
- pnpm run typecheck:ci # प्रकाशित 0.1.5-rc.1 faces के विरुद्ध (CI यही चलाता है)
228
+ pnpm run typecheck:ci # प्रकाशित 0.1.5-rc.2 faces के विरुद्ध (CI यही चलाता है)
229
229
  pnpm test
230
230
  pnpm run build
231
231
  pnpm run verify:self-contained
@@ -27,7 +27,7 @@ retorno.
27
27
  | Harness | Estado |
28
28
  |---|---|
29
29
  | `@deepseek-ai/dsh` `0.1.2-rc.1` | compatível; o fluxo compat instala esta linha ponta a ponta |
30
- | `@deepseek-ai/dsh` `0.1.5-rc.1` | compatível; verificada ponta a ponta (perfil real, linha no `--dump-config`, smoke keyless) e na matriz compat |
30
+ | `@deepseek-ai/dsh` `0.1.5-rc.2` | compatível; verificada ponta a ponta (perfil real, linha no `--dump-config`, smoke keyless) e na matriz compat |
31
31
  | `@deepseek-ai/cordis` `^4.0.2`, `@deepseek-ai/schemastery` `^3.18.2` | base de peers |
32
32
 
33
33
  Os ranges de peers nomeiam as duas linhas publicadas (`>=0.1.2-rc.1 <0.2.0 ||
@@ -228,7 +228,7 @@ cruzado é recusada ao salvar e a última política válida continua em vigor.
228
228
  ```bash
229
229
  pnpm install
230
230
  pnpm run typecheck # contra as faces de tipo do checkout local do harness
231
- pnpm run typecheck:ci # contra as faces publicadas 0.1.5-rc.1 (o que a CI executa)
231
+ pnpm run typecheck:ci # contra as faces publicadas 0.1.5-rc.2 (o que a CI executa)
232
232
  pnpm test
233
233
  pnpm run build
234
234
  pnpm run verify:self-contained
@@ -23,7 +23,7 @@ DeepSeek Harness 的自动模型分档路由:一条用户指令进来,一个
23
23
  | Harness | 状态 |
24
24
  |---|---|
25
25
  | `@deepseek-ai/dsh` `0.1.2-rc.1` | 兼容;compat 工作流对该线做端到端安装验证 |
26
- | `@deepseek-ai/dsh` `0.1.5-rc.1` | 兼容;已端到端实测(真实 profile 安装、`--dump-config` 行、keyless headless 冒烟)并纳入 compat 矩阵 |
26
+ | `@deepseek-ai/dsh` `0.1.5-rc.2` | 兼容;已端到端实测(真实 profile 安装、`--dump-config` 行、keyless headless 冒烟)并纳入 compat 矩阵 |
27
27
  | `@deepseek-ai/cordis` `^4.0.2`、`@deepseek-ai/schemastery` `^3.18.2` | peer 基线 |
28
28
 
29
29
  peer 范围显式列出两条已发布线(`>=0.1.2-rc.1 <0.2.0 || >=0.1.5-alpha.1
@@ -204,7 +204,7 @@ dsh plugin --profile web remove dsh-autotier
204
204
  ```bash
205
205
  pnpm install
206
206
  pnpm run typecheck # 对照本地 harness checkout 的类型面
207
- pnpm run typecheck:ci # 对照已发布的 0.1.5-rc.1 类型面(CI 实际执行)
207
+ pnpm run typecheck:ci # 对照已发布的 0.1.5-rc.2 类型面(CI 实际执行)
208
208
  pnpm test
209
209
  pnpm run build
210
210
  pnpm run verify:self-contained
package/README.md CHANGED
@@ -26,7 +26,7 @@ escalate to the strong tier with a TTL fallback.
26
26
  | Harness | Status |
27
27
  |---|---|
28
28
  | `@deepseek-ai/dsh` `0.1.2-rc.1` | compatible; the compat workflow installs this line end-to-end |
29
- | `@deepseek-ai/dsh` `0.1.5-rc.1` | compatible; verified end-to-end (real profile install, `--dump-config` row, keyless headless smoke) and in the compat matrix |
29
+ | `@deepseek-ai/dsh` `0.1.5-rc.2` | compatible; verified end-to-end (real profile install, `--dump-config` row, keyless headless smoke) and in the compat matrix |
30
30
  | `@deepseek-ai/cordis` `^4.0.2`, `@deepseek-ai/schemastery` `^3.18.2` | peer baseline |
31
31
 
32
32
  Peer ranges name both published lines explicitly (`>=0.1.2-rc.1 <0.2.0 ||
@@ -228,7 +228,7 @@ refused at save time and the last good policy stays in effect.
228
228
  ```bash
229
229
  pnpm install
230
230
  pnpm run typecheck # against the local harness checkout type faces
231
- pnpm run typecheck:ci # against the published 0.1.5-rc.1 faces (what CI runs)
231
+ pnpm run typecheck:ci # against the published 0.1.5-rc.2 faces (what CI runs)
232
232
  pnpm test
233
233
  pnpm run build
234
234
  pnpm run verify:self-contained
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "dsh-autotier",
3
- "version": "0.2.2",
3
+ "version": "0.2.3",
4
4
  "description": "Automatic strong/cheap model-tier routing for DeepSeek Harness: intent-gated tier landing on the agent/request waterfall, plan-mode handoff (strong plans, cheap implements), deterministic high-risk guards on tools/pre-execute, failure escalation with TTL fallback, a /tier command, and tier status tools",
5
5
  "repository": {
6
6
  "type": "git",
@@ -39,10 +39,10 @@
39
39
  "SECURITY.md",
40
40
  "AGENTS.md",
41
41
  "README.md",
42
- "README.zh.md",
43
- "README.es.md",
44
- "README.pt.md",
45
- "README.hi.md",
42
+ "README-zh.md",
43
+ "README-es.md",
44
+ "README-pt.md",
45
+ "README-hi.md",
46
46
  "LICENSE",
47
47
  "docs"
48
48
  ],
@@ -62,7 +62,7 @@
62
62
  "compatibility": {
63
63
  "dshReleases": {
64
64
  "0.1.2-rc.1": "compatible",
65
- "0.1.5-rc.1": "compatible"
65
+ "0.1.5-rc.2": "compatible"
66
66
  }
67
67
  }
68
68
  },
@@ -90,7 +90,7 @@
90
90
  "compatibility": {
91
91
  "dshVersions": [
92
92
  "0.1.2-rc.1",
93
- "0.1.5-rc.1"
93
+ "0.1.5-rc.2"
94
94
  ]
95
95
  },
96
96
  "capability": {
@@ -175,32 +175,32 @@
175
175
  "@deepseek-ai/cordis": "^4.0.2",
176
176
  "@deepseek-ai/cordis-plugin-include": "^1.0.7",
177
177
  "@deepseek-ai/cordis-plugin-loader": "^1.0.3",
178
- "@deepseek-ai/dsh-agent": "0.1.5-rc.1",
179
- "@deepseek-ai/dsh-agent-default-model": "0.1.5-rc.1",
180
- "@deepseek-ai/dsh-agent-loop": "0.1.5-rc.1",
181
- "@deepseek-ai/dsh-agent-loop-testkit": "0.1.5-rc.1",
182
- "@deepseek-ai/dsh-api-remotes": "0.1.5-rc.1",
183
- "@deepseek-ai/dsh-atomic-write": "0.1.5-rc.1",
184
- "@deepseek-ai/dsh-attachment": "0.1.5-rc.1",
185
- "@deepseek-ai/dsh-client-connection": "0.1.5-rc.1",
186
- "@deepseek-ai/dsh-client-locale": "0.1.5-rc.1",
187
- "@deepseek-ai/dsh-client-ui-conversation": "0.1.5-rc.1",
188
- "@deepseek-ai/dsh-client-ui-settings": "0.1.5-rc.1",
189
- "@deepseek-ai/dsh-client-ui-slots": "0.1.5-rc.1",
190
- "@deepseek-ai/dsh-commands": "0.1.5-rc.1",
191
- "@deepseek-ai/dsh-home-paths": "0.1.5-rc.1",
192
- "@deepseek-ai/dsh-llm": "0.1.5-rc.1",
193
- "@deepseek-ai/dsh-plan-mode": "0.1.5-rc.1",
194
- "@deepseek-ai/dsh-sandbox-policy": "0.1.5-rc.1",
195
- "@deepseek-ai/dsh-session": "0.1.5-rc.1",
196
- "@deepseek-ai/dsh-session-persistence": "0.1.5-rc.1",
197
- "@deepseek-ai/dsh-session-projection": "0.1.5-rc.1",
198
- "@deepseek-ai/dsh-settings": "0.1.5-rc.1",
199
- "@deepseek-ai/dsh-settings-file": "0.1.5-rc.1",
200
- "@deepseek-ai/dsh-system-prompt": "0.1.5-rc.1",
201
- "@deepseek-ai/dsh-tools": "0.1.5-rc.1",
202
- "@deepseek-ai/dsh-typert-protocol": "0.1.5-rc.1",
203
- "@deepseek-ai/dsh-util-values": "0.1.5-rc.1",
178
+ "@deepseek-ai/dsh-agent": "0.1.5-rc.2",
179
+ "@deepseek-ai/dsh-agent-default-model": "0.1.5-rc.2",
180
+ "@deepseek-ai/dsh-agent-loop": "0.1.5-rc.2",
181
+ "@deepseek-ai/dsh-agent-loop-testkit": "0.1.5-rc.2",
182
+ "@deepseek-ai/dsh-api-remotes": "0.1.5-rc.2",
183
+ "@deepseek-ai/dsh-atomic-write": "0.1.5-rc.2",
184
+ "@deepseek-ai/dsh-attachment": "0.1.5-rc.2",
185
+ "@deepseek-ai/dsh-client-connection": "0.1.5-rc.2",
186
+ "@deepseek-ai/dsh-client-locale": "0.1.5-rc.2",
187
+ "@deepseek-ai/dsh-client-ui-conversation": "0.1.5-rc.2",
188
+ "@deepseek-ai/dsh-client-ui-settings": "0.1.5-rc.2",
189
+ "@deepseek-ai/dsh-client-ui-slots": "0.1.5-rc.2",
190
+ "@deepseek-ai/dsh-commands": "0.1.5-rc.2",
191
+ "@deepseek-ai/dsh-home-paths": "0.1.5-rc.2",
192
+ "@deepseek-ai/dsh-llm": "0.1.5-rc.2",
193
+ "@deepseek-ai/dsh-plan-mode": "0.1.5-rc.2",
194
+ "@deepseek-ai/dsh-sandbox-policy": "0.1.5-rc.2",
195
+ "@deepseek-ai/dsh-session": "0.1.5-rc.2",
196
+ "@deepseek-ai/dsh-session-persistence": "0.1.5-rc.2",
197
+ "@deepseek-ai/dsh-session-projection": "0.1.5-rc.2",
198
+ "@deepseek-ai/dsh-settings": "0.1.5-rc.2",
199
+ "@deepseek-ai/dsh-settings-file": "0.1.5-rc.2",
200
+ "@deepseek-ai/dsh-system-prompt": "0.1.5-rc.2",
201
+ "@deepseek-ai/dsh-tools": "0.1.5-rc.2",
202
+ "@deepseek-ai/dsh-typert-protocol": "0.1.5-rc.2",
203
+ "@deepseek-ai/dsh-util-values": "0.1.5-rc.2",
204
204
  "@deepseek-ai/schemastery": "^3.18.2",
205
205
  "@types/node": "^22.19.0",
206
206
  "@types/react": "18.3.31",