@deepseek-ai/dsh-session-log-export 0.1.2-alpha.2 → 0.1.2-alpha.4

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/session-query/session-log-export/README.md
5
- README.md: a46bcdcd6fa6dda8997b3ed07f0ae789d8e3471d
6
- README.zh.md: 348f6c09c8c5de4e8fe7f779b6d0fd4f662e8e34
5
+ README.md: a096cea71b2e0bed4882a6e8d23c8f35dc3d0fb7
6
+ README.zh.md: 0c2da35ae0be9420cfd6ff076dd038c3a8edf2cb
package/README.md CHANGED
@@ -29,7 +29,7 @@ Use this package when the Web bundle should let users export a session log. It r
29
29
 
30
30
  ### When to choose it
31
31
 
32
- Choose it for a Web deployment that needs user-facing session export with a visible download dialog. Avoid it when a programmatic or Host-side export is needed: this package produces a browser download, not a Host path write, and it requires a persistence backend that stores a per-session raw artifact (the shipped JSONL backend supports plaintext and zstd; SQLite export is not supported).
32
+ Choose it for a Web deployment that needs user-facing session export with a visible download dialog. Avoid it when a programmatic or Host-side export is needed: this package produces a browser download, not a Host path write, and it requires the shipped JSONL provider's per-Session raw artifact in plaintext or zstd form.
33
33
 
34
34
  ### Composition
35
35
 
@@ -121,7 +121,7 @@ None. The log-only command lifecycle and browser download do not change the deri
121
121
 
122
122
  These limits define when this package is a poor fit or needs special operational care. They are current package constraints, not a task backlog.
123
123
 
124
- - **Requires a per-session raw artifact backend** — the download endpoint needs a persistence backend with a per-session raw artifact; the shipped JSONL backend supports plaintext and zstd, and SQLite export is not supported.
124
+ - **Requires a per-Session raw artifact** — the download endpoint reads the shipped JSONL provider's plaintext or zstd artifact; an out-of-tree provider without a raw artifact cannot serve this route.
125
125
  - **Browser download, not a Host-path writer** — the browser chooses the local destination; no Host path or native folder action is returned.
126
126
  - **Preflight reports only pre-stream failures** — a descendant or attachment failure after the browser accepts the GET is reported by the browser download manager, not by the dialog.
127
127
 
@@ -138,3 +138,5 @@ This Dev Note is working context for maintainers: open design questions and dire
138
138
  The download is deliberately browser-scoped; a Host-path or native folder export would need a new endpoint contract and a decision on where the ZIP lands.
139
139
 
140
140
  </details>
141
+
142
+ **Runtime invariant:** No companion is published. Connection and the command registry own both registrations, while each export reads authoritative Session services.
package/README.zh.md CHANGED
@@ -29,7 +29,7 @@ kind: "package-reference"
29
29
 
30
30
  ### 何时选择
31
31
 
32
- 为需要带可见下载弹窗的用户级会话导出的 Web 部署选择它。需要程序化或 Host 侧导出时避免使用:本包产生的是浏览器下载,而非 Host 路径写入,并且它要求持久化后端保存逐会话原始产物(随附 JSONL 后端支持明文与 zstd;不支持 SQLite 导出)。
32
+ 为需要带可见下载弹窗的用户级会话导出的 Web 部署选择它。需要程序化或 Host 侧导出时避免使用:本包产生的是浏览器下载,而非 Host 路径写入,并且它要求随产品交付的 JSONL provider 提供逐 Session 的明文或 zstd 原始产物。
33
33
 
34
34
  ### 组合
35
35
 
@@ -121,7 +121,7 @@ Host 路由是业务拥有的精确 Fetch contribution。Connection 应用 Host/
121
121
 
122
122
  这些限制说明本包何时不合适,或何时需要特别的运维注意。它们是当前包约束,不是任务积压。
123
123
 
124
- - **要求逐会话原始产物后端**——下载端点需要带逐会话原始产物的持久化后端;随附 JSONL 后端支持明文与 zstd,不支持 SQLite 导出。
124
+ - **要求逐 Session 原始产物**——下载端点读取随产品交付的 JSONL provider 所提供的明文或 zstd 产物;没有原始产物的仓库外 provider 无法服务该 route。
125
125
  - **浏览器下载,而非 Host 路径写入**——目标位置由浏览器选择;不会返回 Host 路径或原生文件夹操作。
126
126
  - **预检只报告流式传输前的失败**——浏览器接受 GET 后发生的子会话或附件读取失败由浏览器下载管理器报告,不通过弹窗报告。
127
127
 
@@ -138,3 +138,5 @@ Host 路由是业务拥有的精确 Fetch contribution。Connection 应用 Host/
138
138
  下载刻意限定在浏览器范围;Host 路径或原生文件夹导出需要新的端点约定,并决定 ZIP 的落盘位置。
139
139
 
140
140
  </details>
141
+
142
+ **运行时不变式:** 不发布伴生入口。Connection 与 command registry 持有两个注册,每次 export 直接读取权威 Session service。
package/lib/client.js CHANGED
@@ -169,7 +169,7 @@ window.__ModuleLoader__.load({
169
169
  }
170
170
  //#endregion
171
171
  //#region \0dsh-css:/home/runner/work/deepseek-harness/deepseek-harness/packages/session-query/session-log-export/src/client/HeaderAction.module.css.mjs
172
- const css = ".nL4_yW_sessionLogButton{border:1px solid var(--dsw-alias-border-l2);min-width:111px;height:32px;color:var(--dsw-alias-label-primary);font-family:var(--dsw-font-family);cursor:pointer;background:0 0;border-radius:18px;justify-content:center;align-items:center;gap:4px;padding:6px 12px;font-size:13px;font-weight:400;line-height:20px;display:inline-flex}.nL4_yW_sessionLogButton:hover:not(:disabled){background:var(--dsw-alias-interactive-bg-hover)}.nL4_yW_sessionLogButton:disabled{color:var(--dsw-alias-label-dimmed);cursor:wait}.nL4_yW_sessionLogButton span,.nL4_yW_sessionLogButton svg{flex:none}.nL4_yW_sessionLogButton span{white-space:nowrap}";
172
+ const css = ".nL4_yW_sessionLogButton{border:.5px solid var(--dsw-alias-border-l4);min-width:111px;height:32px;color:var(--dsw-alias-label-primary);font-family:var(--dsw-font-family);cursor:pointer;background:0 0;border-radius:18px;justify-content:center;align-items:center;gap:4px;padding:6px 12px;font-size:13px;font-weight:400;line-height:20px;display:inline-flex}.nL4_yW_sessionLogButton:hover:not(:disabled){background:var(--dsw-alias-interactive-bg-hover)}.nL4_yW_sessionLogButton:disabled{color:var(--dsw-alias-label-dimmed);cursor:wait}.nL4_yW_sessionLogButton span,.nL4_yW_sessionLogButton svg{flex:none}.nL4_yW_sessionLogButton span{white-space:nowrap}";
173
173
  const tagId = "@deepseek-ai/dsh-session-log-export/HeaderAction.module.css";
174
174
  if (typeof document !== "undefined" && document.querySelector("style[data-plugin-css=" + JSON.stringify(tagId) + "]") === null) {
175
175
  const tag = document.createElement("style");
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@deepseek-ai/dsh-session-log-export",
3
3
  "description": "Web Session-log export command and shared download dialog",
4
- "version": "0.1.2-alpha.2",
4
+ "version": "0.1.2-alpha.4",
5
5
  "publishConfig": {
6
6
  "access": "public"
7
7
  },
@@ -18,10 +18,6 @@
18
18
  "types": "./lib/types/index.d.ts",
19
19
  "default": "./lib/index.js"
20
20
  },
21
- "./invariant": {
22
- "types": "./lib/types/invariant.d.ts",
23
- "default": "./lib/invariant.js"
24
- },
25
21
  "./client": {
26
22
  "types": "./lib/types/client/index.d.ts",
27
23
  "default": "./lib/client.js"
@@ -31,14 +27,13 @@
31
27
  },
32
28
  "files": [
33
29
  "lib/index.js",
34
- "lib/invariant.js",
35
30
  "lib/client.js",
36
31
  "lib/types/**/*.d.ts"
37
32
  ],
38
33
  "license": "MIT",
39
34
  "dependencies": {
40
35
  "fflate": "^0.8.2",
41
- "@deepseek-ai/dsh-brand": "^0.1.2-alpha.2",
36
+ "@deepseek-ai/dsh-brand": "^0.1.2-alpha.4",
42
37
  "@deepseek-ai/schemastery": "^3.18.2"
43
38
  },
44
39
  "peerDependencies": {
@@ -49,22 +44,21 @@
49
44
  "react": "^18.2.0",
50
45
  "@deepseek-ai/cordis": "^4.0.2",
51
46
  "@deepseek-ai/cordis-plugin-loader": "^1.0.3",
52
- "@deepseek-ai/dsh-attachment": "^0.1.2-alpha.2",
53
- "@deepseek-ai/dsh-agent": "^0.1.2-alpha.2",
54
- "@deepseek-ai/dsh-client-connection": "^0.1.2-alpha.2",
55
- "@deepseek-ai/dsh-client-ui-commands": "^0.1.2-alpha.2",
56
- "@deepseek-ai/dsh-client-store": "^0.1.2-alpha.2",
57
- "@deepseek-ai/dsh-client-ui-conversation": "^0.1.2-alpha.2",
58
- "@deepseek-ai/dsh-client-ui-renderer": "^0.1.2-alpha.2",
59
- "@deepseek-ai/dsh-client-ui-session": "^0.1.2-alpha.2",
60
- "@deepseek-ai/dsh-client-ui-primitives": "^0.1.2-alpha.2",
61
- "@deepseek-ai/dsh-client-locale": "^0.1.2-alpha.2",
62
- "@deepseek-ai/dsh-commands": "^0.1.2-alpha.2",
63
- "@deepseek-ai/dsh-client-ui-slots": "^0.1.2-alpha.2",
64
- "@deepseek-ai/dsh-invariants": "^0.1.2-alpha.2",
65
- "@deepseek-ai/dsh-session-persistence": "^0.1.2-alpha.2",
66
- "@deepseek-ai/dsh-session-query": "^0.1.2-alpha.2",
67
- "@deepseek-ai/dsh-session": "^0.1.2-alpha.2"
47
+ "@deepseek-ai/dsh-agent": "^0.1.2-alpha.4",
48
+ "@deepseek-ai/dsh-attachment": "^0.1.2-alpha.4",
49
+ "@deepseek-ai/dsh-client-connection": "^0.1.2-alpha.4",
50
+ "@deepseek-ai/dsh-client-locale": "^0.1.2-alpha.4",
51
+ "@deepseek-ai/dsh-client-store": "^0.1.2-alpha.4",
52
+ "@deepseek-ai/dsh-client-ui-commands": "^0.1.2-alpha.4",
53
+ "@deepseek-ai/dsh-client-ui-conversation": "^0.1.2-alpha.4",
54
+ "@deepseek-ai/dsh-client-ui-renderer": "^0.1.2-alpha.4",
55
+ "@deepseek-ai/dsh-client-ui-session": "^0.1.2-alpha.4",
56
+ "@deepseek-ai/dsh-client-ui-primitives": "^0.1.2-alpha.4",
57
+ "@deepseek-ai/dsh-client-ui-slots": "^0.1.2-alpha.4",
58
+ "@deepseek-ai/dsh-commands": "^0.1.2-alpha.4",
59
+ "@deepseek-ai/dsh-session-persistence": "^0.1.2-alpha.4",
60
+ "@deepseek-ai/dsh-session-query": "^0.1.2-alpha.4",
61
+ "@deepseek-ai/dsh-session": "^0.1.2-alpha.4"
68
62
  },
69
63
  "dsh": {
70
64
  "client": {
package/lib/invariant.js DELETED
@@ -1,18 +0,0 @@
1
- //#region lib/types/invariant.js
2
- /** Package invariant companion for `@deepseek-ai/dsh-session-log-export`. */
3
- const PACKAGE_NAME = "@deepseek-ai/dsh-session-log-export";
4
- const name = "session-export-invariant";
5
- const inject = ["invariants"];
6
- /**
7
- * No runtime invariant: Connection and the command registry own both
8
- * registrations, while each export reads authoritative Session services.
9
- */
10
- const install = () => {};
11
- /**
12
- * Register this package's invariant companion.
13
- * @param ctx - Host context carrying the invariant registry.
14
- * @returns the registration disposer after setup succeeds.
15
- */
16
- const apply = (ctx) => Promise.resolve(ctx.invariants.register(PACKAGE_NAME, install));
17
- //#endregion
18
- export { apply, inject, name };
@@ -1,11 +0,0 @@
1
- /** Package invariant companion for `@deepseek-ai/dsh-session-log-export`. */
2
- import type { Context } from '@deepseek-ai/cordis';
3
- export declare const name = "session-export-invariant";
4
- export declare const inject: string[];
5
- /**
6
- * Register this package's invariant companion.
7
- * @param ctx - Host context carrying the invariant registry.
8
- * @returns the registration disposer after setup succeeds.
9
- */
10
- export declare const apply: (ctx: Context) => Promise<() => void>;
11
- //# sourceMappingURL=invariant.d.ts.map