@deepseek-ai/dsh-client-test-runtime 0.1.3-alpha.2 → 0.1.5-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
@@ -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
  # pnpm run verify-translation-pairing --write packages/test-support/client-runtime/README.md
5
- README.md: 4ab70ecb6db7ae7d1844d8141b34daf7bd19a3dc
6
- README.zh.md: c3265d7cdcadaf55c0744b13267ac5e64d6b47a6
5
+ README.md: 616eab2cd5ef03ae4e514ca335b0c60b43d62cf0
6
+ README.zh.md: 08effcef7eaacad67b5496507925337e772d4ce9
package/README.md CHANGED
@@ -9,7 +9,7 @@ English | [中文](README.zh.md)
9
9
 
10
10
  ## Summary
11
11
 
12
- `dsh-client-test-runtime` gives a browser feature spec a real jsdom test bench: it assembles a Cordis context, the renderer-owned slot registry, and the production `UiSession` adapter around typed Session and Workspace Controller doubles. A default file-upload stub satisfies features that declare the service and rejects if a test starts an upload without replacing it. Feature suites exercise declaration, registration, scoping, stores, injection, rendering, updates, and disposal without copying production renderer or adapter logic. Suites publish Session lifecycle state, Workspace state, projection values, and Conversation events through typed fixtures, then use local DOM snapshot roots, scoped Testing Library queries, and fail-loud service checks. It is not part of the product plugin graph (no `dsh.client`); feature packages depend on it in `devDependencies` only.
12
+ `dsh-client-test-runtime` lets browser feature specs exercise production slot, store, rendering, update, and disposal behavior in jsdom without reimplementing the UI runtime. Test authors can publish typed Session, Workspace, projection, and Conversation fixtures, query slot-local DOM roots, and script Remote replies or failures. Missing services, unstubbed session behavior, and unexpected file uploads fail at the call site, while disposal is idempotent. Use it only from in-repository browser-oriented Vitest suites through `devDependencies`; it is not a product plugin or general Node test harness.
13
13
 
14
14
  ## Table of Contents
15
15
 
package/README.zh.md CHANGED
@@ -9,7 +9,7 @@ kind: "package-library"
9
9
 
10
10
  ## 概述
11
11
 
12
- `dsh-client-test-runtime` 让浏览器功能测试拥有真实的 jsdom 测试台:它把 Cordis 上下文、渲染器拥有的 slot 注册表与生产 `UiSession` 适配器组装在带类型的 SessionWorkspace Controller 替身周围。默认文件上传替身可满足声明该服务的功能;测试若没有替换它却发起上传,就会明确失败。功能套件无需复制生产渲染器或适配器逻辑,即可检验声明、注册、作用域、store、注入、渲染、更新与销毁。套件通过带类型 fixture 发布 Session 生命周期状态、Workspace 状态、projection 值与 Conversation 事件,再使用局部 DOM 快照根、限定范围的 Testing Library 查询与自明的服务缺失检查。它不属于产品插件图(无 `dsh.client`);feature 包仅以 `devDependencies` 依赖之。
12
+ `dsh-client-test-runtime` 让浏览器功能测试在 jsdom 中检验生产 slot、store、渲染、更新与销毁行为,而无需重实现 UI 运行时。测试作者可以发布带类型的 SessionWorkspace、projection Conversation fixture,查询 slot 局部 DOM 根,并脚本化 Remote 应答或失败。缺失服务、未打桩的会话行为与意外文件上传都会在调用点失败,销毁则保持幂等。仅限仓内、面向浏览器的 Vitest 套件通过 `devDependencies` 使用本包;它不是产品插件或通用 Node 测试框架。
13
13
 
14
14
  ## 目录
15
15
 
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@deepseek-ai/dsh-client-test-runtime",
3
3
  "description": "jsdom slot test runtime: real Cordis Context + SlotRegistry + UI renderer with test-owned session/workspace doubles for feature specs",
4
- "version": "0.1.3-alpha.2",
4
+ "version": "0.1.5-alpha.1",
5
5
  "publishConfig": {
6
6
  "access": "public"
7
7
  },
@@ -30,42 +30,42 @@
30
30
  "peerDependencies": {
31
31
  "react": "^18.2.0",
32
32
  "react-dom": "^18.2.0",
33
- "@deepseek-ai/dsh-api-session-controller": "^0.1.3-alpha.2",
34
- "@deepseek-ai/dsh-attachment": "^0.1.3-alpha.2",
35
- "@deepseek-ai/dsh-client-connection": "^0.1.3-alpha.2",
36
- "@deepseek-ai/dsh-client-store": "^0.1.3-alpha.2",
37
- "@deepseek-ai/dsh-client-ui-chat": "^0.1.3-alpha.2",
38
- "@deepseek-ai/dsh-client-ui-conversation": "^0.1.3-alpha.2",
39
- "@deepseek-ai/dsh-client-ui-session": "^0.1.3-alpha.2",
40
- "@deepseek-ai/dsh-client-ui-settings": "^0.1.3-alpha.2",
41
- "@deepseek-ai/dsh-client-ui-slots": "^0.1.3-alpha.2",
42
- "@deepseek-ai/dsh-client-ui-renderer": "^0.1.3-alpha.2",
43
- "@deepseek-ai/dsh-subagent": "^0.1.3-alpha.2",
44
- "@deepseek-ai/dsh-session": "^0.1.3-alpha.2",
33
+ "@deepseek-ai/dsh-api-session-controller": "^0.1.5-alpha.1",
34
+ "@deepseek-ai/dsh-api-workspace-controller": "^0.1.5-alpha.1",
35
+ "@deepseek-ai/dsh-attachment": "^0.1.5-alpha.1",
36
+ "@deepseek-ai/dsh-client-connection": "^0.1.5-alpha.1",
37
+ "@deepseek-ai/dsh-client-ui-chat": "^0.1.5-alpha.1",
38
+ "@deepseek-ai/dsh-client-ui-conversation": "^0.1.5-alpha.1",
39
+ "@deepseek-ai/dsh-client-store": "^0.1.5-alpha.1",
40
+ "@deepseek-ai/dsh-client-ui-renderer": "^0.1.5-alpha.1",
41
+ "@deepseek-ai/dsh-client-ui-session": "^0.1.5-alpha.1",
42
+ "@deepseek-ai/dsh-client-ui-settings": "^0.1.5-alpha.1",
43
+ "@deepseek-ai/dsh-session": "^0.1.5-alpha.1",
44
+ "@deepseek-ai/dsh-client-ui-slots": "^0.1.5-alpha.1",
45
+ "@deepseek-ai/dsh-typert-protocol": "^0.1.5-alpha.1",
45
46
  "@deepseek-ai/cordis": "^4.0.2",
46
- "@deepseek-ai/dsh-typert-protocol": "^0.1.3-alpha.2",
47
- "@deepseek-ai/dsh-api-workspace-controller": "^0.1.3-alpha.2"
47
+ "@deepseek-ai/dsh-subagent": "^0.1.5-alpha.1"
48
48
  },
49
49
  "devDependencies": {
50
50
  "@types/react": "~18.3.1",
51
51
  "@types/react-dom": "~18.3.0",
52
52
  "react": "^18.2.0",
53
53
  "react-dom": "^18.2.0",
54
- "@deepseek-ai/dsh-api-session-controller": "^0.1.3-alpha.2",
55
- "@deepseek-ai/dsh-api-workspace-controller": "^0.1.3-alpha.2",
56
- "@deepseek-ai/dsh-attachment": "^0.1.3-alpha.2",
57
- "@deepseek-ai/dsh-client-connection": "^0.1.3-alpha.2",
58
- "@deepseek-ai/dsh-client-store": "^0.1.3-alpha.2",
59
- "@deepseek-ai/dsh-client-ui-chat": "^0.1.3-alpha.2",
60
- "@deepseek-ai/dsh-client-ui-renderer": "^0.1.3-alpha.2",
61
- "@deepseek-ai/dsh-client-ui-session": "^0.1.3-alpha.2",
62
- "@deepseek-ai/dsh-client-ui-settings": "^0.1.3-alpha.2",
63
- "@deepseek-ai/dsh-client-ui-slots": "^0.1.3-alpha.2",
64
- "@deepseek-ai/dsh-session": "^0.1.3-alpha.2",
65
- "@deepseek-ai/dsh-client-ui-conversation": "^0.1.3-alpha.2",
66
- "@deepseek-ai/dsh-subagent": "^0.1.3-alpha.2",
67
- "@deepseek-ai/dsh-typert-protocol": "^0.1.3-alpha.2",
68
- "@deepseek-ai/cordis": "^4.0.2"
54
+ "@deepseek-ai/dsh-api-workspace-controller": "^0.1.5-alpha.1",
55
+ "@deepseek-ai/dsh-api-session-controller": "^0.1.5-alpha.1",
56
+ "@deepseek-ai/dsh-client-store": "^0.1.5-alpha.1",
57
+ "@deepseek-ai/dsh-client-connection": "^0.1.5-alpha.1",
58
+ "@deepseek-ai/dsh-client-ui-chat": "^0.1.5-alpha.1",
59
+ "@deepseek-ai/dsh-attachment": "^0.1.5-alpha.1",
60
+ "@deepseek-ai/dsh-client-ui-session": "^0.1.5-alpha.1",
61
+ "@deepseek-ai/dsh-client-ui-settings": "^0.1.5-alpha.1",
62
+ "@deepseek-ai/dsh-client-ui-renderer": "^0.1.5-alpha.1",
63
+ "@deepseek-ai/dsh-client-ui-slots": "^0.1.5-alpha.1",
64
+ "@deepseek-ai/dsh-subagent": "^0.1.5-alpha.1",
65
+ "@deepseek-ai/dsh-typert-protocol": "^0.1.5-alpha.1",
66
+ "@deepseek-ai/cordis": "^4.0.2",
67
+ "@deepseek-ai/dsh-session": "^0.1.5-alpha.1",
68
+ "@deepseek-ai/dsh-client-ui-conversation": "^0.1.5-alpha.1"
69
69
  },
70
70
  "files": [
71
71
  "lib/index.js",