@yadsh/dsh-session-scope 0.5.0 → 0.6.0

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/lib/scope-fs.js CHANGED
@@ -4,11 +4,16 @@ import { isLexicallyUnder } from "./core.js";
4
4
  import { SESSION_SCOPE_ERROR, SessionScopeError, } from "./session-scope.js";
5
5
  const DENIAL_MESSAGE = "Path is outside the active session scope. Change the session scope if access is required.";
6
6
  export class SessionScopeRuntime {
7
+ fallbackWorkspaceRoot;
7
8
  storage = new AsyncLocalStorage();
8
9
  cache = new WeakMap();
10
+ constructor(fallbackWorkspaceRoot = "") {
11
+ this.fallbackWorkspaceRoot = fallbackWorkspaceRoot;
12
+ }
9
13
  run(session, operation, execution) {
10
- if (session === undefined)
14
+ if (session === undefined || getScope(session, this.fallbackWorkspaceRoot).mode === "full") {
11
15
  return operation();
16
+ }
12
17
  return this.storage.run({ session, execution }, operation);
13
18
  }
14
19
  currentSession() {
@@ -19,16 +24,6 @@ export class SessionScopeRuntime {
19
24
  }
20
25
  async resolvedScope(fs, session, fallbackWorkspaceRoot) {
21
26
  const scope = getScope(session, fallbackWorkspaceRoot);
22
- if (scope.mode === "full") {
23
- const workspace = await fs.resolve(scope.workspaceRoot);
24
- return {
25
- scope,
26
- workspace,
27
- workspaceSpellings: [scope.workspaceRoot, session.header?.cwd ?? fallbackWorkspaceRoot],
28
- content: [],
29
- navigation: [],
30
- };
31
- }
32
27
  const key = JSON.stringify([scope.mode, scope.workspaceRoot, scope.roots, scope.navigationRoots]);
33
28
  const cached = this.cache.get(session);
34
29
  if (cached?.eventCount === session.events.length && cached.key === key)
@@ -63,7 +58,7 @@ export class SessionScopeRuntime {
63
58
  deny() {
64
59
  throw new SessionScopeError(SESSION_SCOPE_ERROR.DENIED, DENIAL_MESSAGE);
65
60
  }
66
- patchFileSystem(fs, fallbackWorkspaceRoot = "") {
61
+ patchFileSystem(fs, fallbackWorkspaceRoot = this.fallbackWorkspaceRoot) {
67
62
  const original = {
68
63
  stat: fs.stat.bind(fs),
69
64
  lstat: fs.lstat.bind(fs),
@@ -1 +1 @@
1
- {"version":3,"file":"scope-fs.js","sourceRoot":"","sources":["../src/scope-fs.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scope-fs.js","sourceRoot":"","sources":["../src/scope-fs.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ import type { Context } from "@deepseek-ai/cordis";
2
+ import { TypertRemoteService } from "@deepseek-ai/dsh-typert-protocol";
3
+ import type { DirectoryListing } from "./core.js";
4
+ /** Non-durable read API used by the web scope picker. */
5
+ export declare class SessionScopeReadService extends TypertRemoteService {
6
+ private readonly fallbackWorkspaceRoot;
7
+ private readonly sessions;
8
+ constructor(ctx: Context, fallbackWorkspaceRoot?: string);
9
+ list(sessionId: string, path: string): Promise<DirectoryListing>;
10
+ }
11
+ //# sourceMappingURL=scope-remote.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scope-remote.d.ts","sourceRoot":"","sources":["../src/scope-remote.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAU,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AAG/E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAMlD,yDAAyD;AACzD,qBAAa,uBAAwB,SAAQ,mBAAmB;IAGpC,OAAO,CAAC,QAAQ,CAAC,qBAAqB;IAFhE,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAgB;IAEzC,YAAY,GAAG,EAAE,OAAO,EAAmB,qBAAqB,SAAK,EAGpE;IAEK,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAIrE;CACF"}
@@ -0,0 +1,35 @@
1
+ import { Remote, TypertRemoteService } from "@deepseek-ai/dsh-typert-protocol";
2
+ import { listScopeDirectory } from "./host-api.js";
3
+ /** Non-durable read API used by the web scope picker. */
4
+ export class SessionScopeReadService extends TypertRemoteService {
5
+ fallbackWorkspaceRoot;
6
+ sessions;
7
+ constructor(ctx, fallbackWorkspaceRoot = "") {
8
+ super(ctx, "sessionScopeRead", { namespace: "sessionScope" });
9
+ this.fallbackWorkspaceRoot = fallbackWorkspaceRoot;
10
+ this.sessions = ctx.get("sessions");
11
+ }
12
+ async list(sessionId, path) {
13
+ const session = this.sessions.get(sessionId);
14
+ if (session === undefined)
15
+ throw new Error("Session scope is unavailable for this session.");
16
+ return listScopeDirectory(session, path, this.fallbackWorkspaceRoot);
17
+ }
18
+ }
19
+ function registerRemoteMethod() {
20
+ const initializers = [];
21
+ const decorate = Remote;
22
+ decorate(SessionScopeReadService.prototype.list, {
23
+ name: "list",
24
+ private: false,
25
+ static: false,
26
+ addInitializer(initializer) {
27
+ initializers.push(initializer);
28
+ },
29
+ });
30
+ const markerReceiver = Object.create(SessionScopeReadService.prototype);
31
+ for (const initializer of initializers)
32
+ initializer.call(markerReceiver);
33
+ }
34
+ registerRemoteMethod();
35
+ //# sourceMappingURL=scope-remote.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scope-remote.js","sourceRoot":"","sources":["../src/scope-remote.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AAE/E,OAAO,EAAE,kBAAkB,EAAqB,MAAM,eAAe,CAAC;AAOtE,yDAAyD;AACzD,MAAM,OAAO,uBAAwB,SAAQ,mBAAmB;IAGnB,qBAAqB;IAF/C,QAAQ,CAAgB;IAEzC,YAAY,GAAY,EAAmB,qBAAqB,GAAG,EAAE;QACnE,KAAK,CAAC,GAAG,EAAE,kBAAkB,EAAE,EAAE,SAAS,EAAE,cAAc,EAAE,CAAC,CAAC;qCADrB,qBAAqB;QAE9D,IAAI,CAAC,QAAQ,GAAG,GAAG,CAAC,GAAG,CAAC,UAAU,CAAkB,CAAC;IACvD,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,SAAiB,EAAE,IAAY;QACxC,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC7C,IAAI,OAAO,KAAK,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;QAC7F,OAAO,kBAAkB,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,qBAAqB,CAAC,CAAC;IACvE,CAAC;CACF;AAED,SAAS,oBAAoB;IAC3B,MAAM,YAAY,GAAkC,EAAE,CAAC;IACvD,MAAM,QAAQ,GAAG,MAQR,CAAC;IACV,QAAQ,CACN,uBAAuB,CAAC,SAAS,CAAC,IAAkD,EACpF;QACE,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,KAAK;QACd,MAAM,EAAE,KAAK;QACb,cAAc,CAAC,WAAW;YACxB,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACjC,CAAC;KACF,CACF,CAAC;IACF,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC,uBAAuB,CAAC,SAAS,CAAW,CAAC;IAClF,KAAK,MAAM,WAAW,IAAI,YAAY;QAAE,WAAW,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;AAC3E,CAAC;AAED,oBAAoB,EAAE,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@yadsh/dsh-session-scope",
3
- "version": "0.5.0",
3
+ "version": "0.6.0",
4
4
  "description": "Per-session workspace visibility scopes for DeepSeek Harness.",
5
5
  "type": "module",
6
6
  "main": "./lib/index.js",
@@ -64,27 +64,13 @@
64
64
  "README.md",
65
65
  "LICENSE"
66
66
  ],
67
- "scripts": {
68
- "build": "tsc -p tsconfig.json",
69
- "lint": "eslint src test scripts",
70
- "typecheck": "tsc -p tsconfig.json --noEmit",
71
- "test": "vitest run",
72
- "test:watch": "vitest",
73
- "verify:client": "node scripts/verify-client-bundle.mjs",
74
- "verify:compatibility": "node scripts/verify-compatibility.mjs",
75
- "verify:package": "node scripts/verify-package.mjs",
76
- "verify": "npm run verify:client && npm run verify:compatibility && npm run verify:package",
77
- "check": "npm run build && npm test && npm run verify",
78
- "smoke:packed": "node scripts/smoke-packed-dsh.mjs",
79
- "release:prepare": "node scripts/prepare-release.mjs",
80
- "prepublishOnly": "npm run check"
81
- },
82
67
  "dsh": {
83
68
  "bundle": {
84
69
  "patch": "./cordis.patch.yml"
85
70
  },
86
71
  "client": {
87
72
  "inject": [
73
+ "@deepseek-ai/dsh-api-gateway",
88
74
  "@deepseek-ai/dsh-client-runtime",
89
75
  "@deepseek-ai/dsh-client-connection",
90
76
  "@deepseek-ai/dsh-api-remotes",
@@ -94,9 +80,11 @@
94
80
  }
95
81
  },
96
82
  "peerDependencies": {
97
- "@deepseek-ai/dsh-fs": "catalog:dsh",
98
- "@deepseek-ai/dsh-sandbox": "catalog:dsh",
99
- "@deepseek-ai/dsh-session": "catalog:dsh",
83
+ "@deepseek-ai/cordis": "^4.0.1",
84
+ "@deepseek-ai/dsh-fs": ">=0.1.1-rc.2 <0.2.0",
85
+ "@deepseek-ai/dsh-sandbox": ">=0.1.1-rc.2 <0.2.0",
86
+ "@deepseek-ai/dsh-session": ">=0.1.1-rc.2 <0.2.0",
87
+ "@deepseek-ai/dsh-typert-protocol": ">=0.1.1-rc.2 <0.2.0",
100
88
  "react": "^18.2.0",
101
89
  "react-dom": "^18.2.0"
102
90
  },
@@ -134,17 +122,36 @@
134
122
  "access": "public",
135
123
  "registry": "https://registry.npmjs.org/"
136
124
  },
125
+ "dependencies": {
126
+ "@yadsh/dsh-plugin-log": "^0.2.0"
127
+ },
137
128
  "devDependencies": {
138
- "@deepseek-ai/dsh-fs": "catalog:dsh-dev",
139
- "@deepseek-ai/dsh-sandbox": "catalog:dsh-dev",
140
- "@deepseek-ai/dsh-session": "catalog:dsh-dev",
141
- "@types/node": "catalog:tooling",
142
- "@types/react": "catalog:frontend-dev",
143
- "@types/react-dom": "catalog:frontend-dev",
144
- "eslint": "catalog:tooling",
145
- "react": "catalog:frontend-dev",
146
- "react-dom": "catalog:frontend-dev",
147
- "typescript": "catalog:plugin-tooling",
148
- "vitest": "catalog:tooling"
129
+ "@deepseek-ai/cordis": "4.0.1",
130
+ "@deepseek-ai/dsh-fs": "0.1.1-rc.2",
131
+ "@deepseek-ai/dsh-sandbox": "0.1.1-rc.2",
132
+ "@deepseek-ai/dsh-session": "0.1.1-rc.2",
133
+ "@deepseek-ai/dsh-typert-protocol": "0.1.1-rc.2",
134
+ "@types/node": "^26.4.0",
135
+ "@types/react": "18.3.28",
136
+ "@types/react-dom": "18.3.7",
137
+ "eslint": "10.9.1",
138
+ "react": "18.3.1",
139
+ "react-dom": "18.3.1",
140
+ "typescript": "^7.0.2",
141
+ "vitest": "^4.1.11"
142
+ },
143
+ "scripts": {
144
+ "build": "tsc -p tsconfig.json",
145
+ "lint": "eslint src test scripts",
146
+ "typecheck": "tsc -p tsconfig.json --noEmit",
147
+ "test": "vitest run",
148
+ "test:watch": "vitest",
149
+ "verify:client": "node scripts/verify-client-bundle.mjs",
150
+ "verify:compatibility": "node scripts/verify-compatibility.mjs",
151
+ "verify:package": "node scripts/verify-package.mjs",
152
+ "verify": "npm run verify:client && npm run verify:compatibility && npm run verify:package",
153
+ "check": "npm run build && npm test && npm run verify",
154
+ "smoke:packed": "node scripts/smoke-packed-dsh.mjs",
155
+ "release:prepare": "node scripts/prepare-release.mjs"
149
156
  }
150
- }
157
+ }