@herdctl/core 5.10.0 → 5.11.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/dist/fleet-manager/__tests__/agent-management.test.d.ts +9 -0
- package/dist/fleet-manager/__tests__/agent-management.test.d.ts.map +1 -0
- package/dist/fleet-manager/__tests__/agent-management.test.js +358 -0
- package/dist/fleet-manager/__tests__/agent-management.test.js.map +1 -0
- package/dist/fleet-manager/__tests__/errors.test.js +40 -2
- package/dist/fleet-manager/__tests__/errors.test.js.map +1 -1
- package/dist/fleet-manager/__tests__/session-control.test.d.ts +14 -0
- package/dist/fleet-manager/__tests__/session-control.test.d.ts.map +1 -0
- package/dist/fleet-manager/__tests__/session-control.test.js +240 -0
- package/dist/fleet-manager/__tests__/session-control.test.js.map +1 -0
- package/dist/fleet-manager/__tests__/trigger.test.js +137 -2
- package/dist/fleet-manager/__tests__/trigger.test.js.map +1 -1
- package/dist/fleet-manager/agent-management.d.ts +107 -0
- package/dist/fleet-manager/agent-management.d.ts.map +1 -0
- package/dist/fleet-manager/agent-management.js +237 -0
- package/dist/fleet-manager/agent-management.js.map +1 -0
- package/dist/fleet-manager/errors.d.ts +30 -0
- package/dist/fleet-manager/errors.d.ts.map +1 -1
- package/dist/fleet-manager/errors.js +40 -0
- package/dist/fleet-manager/errors.js.map +1 -1
- package/dist/fleet-manager/fleet-manager.d.ts +144 -2
- package/dist/fleet-manager/fleet-manager.d.ts.map +1 -1
- package/dist/fleet-manager/fleet-manager.js +260 -2
- package/dist/fleet-manager/fleet-manager.js.map +1 -1
- package/dist/fleet-manager/index.d.ts +1 -0
- package/dist/fleet-manager/index.d.ts.map +1 -1
- package/dist/fleet-manager/index.js +2 -0
- package/dist/fleet-manager/index.js.map +1 -1
- package/dist/fleet-manager/job-control.d.ts.map +1 -1
- package/dist/fleet-manager/job-control.js +54 -9
- package/dist/fleet-manager/job-control.js.map +1 -1
- package/dist/fleet-manager/types.d.ts +28 -0
- package/dist/fleet-manager/types.d.ts.map +1 -1
- package/dist/runner/index.d.ts +1 -1
- package/dist/runner/index.d.ts.map +1 -1
- package/dist/runner/index.js +1 -1
- package/dist/runner/index.js.map +1 -1
- package/dist/runner/runtime/__tests__/cli-runtime.test.js +35 -0
- package/dist/runner/runtime/__tests__/cli-runtime.test.js.map +1 -1
- package/dist/runner/runtime/__tests__/cli-session-path.test.js +63 -6
- package/dist/runner/runtime/__tests__/cli-session-path.test.js.map +1 -1
- package/dist/runner/runtime/__tests__/docker-security.test.js +39 -0
- package/dist/runner/runtime/__tests__/docker-security.test.js.map +1 -1
- package/dist/runner/runtime/cli-session-path.d.ts +18 -6
- package/dist/runner/runtime/cli-session-path.d.ts.map +1 -1
- package/dist/runner/runtime/cli-session-path.js +48 -8
- package/dist/runner/runtime/cli-session-path.js.map +1 -1
- package/dist/runner/runtime/index.d.ts +1 -0
- package/dist/runner/runtime/index.d.ts.map +1 -1
- package/dist/runner/runtime/index.js +5 -0
- package/dist/runner/runtime/index.js.map +1 -1
- package/dist/scheduler/errors.d.ts +1 -0
- package/dist/scheduler/errors.d.ts.map +1 -1
- package/dist/state/session-discovery.d.ts +18 -0
- package/dist/state/session-discovery.d.ts.map +1 -1
- package/dist/state/session-discovery.js +12 -1
- package/dist/state/session-discovery.js.map +1 -1
- package/dist/state/utils/__tests__/path-safety.test.js +26 -1
- package/dist/state/utils/__tests__/path-safety.test.js.map +1 -1
- package/dist/state/utils/path-safety.d.ts.map +1 -1
- package/dist/state/utils/path-safety.js +3 -2
- package/dist/state/utils/path-safety.js.map +1 -1
- package/package.json +1 -1
|
@@ -2,33 +2,73 @@
|
|
|
2
2
|
* CLI session path utilities - locate Claude CLI session files
|
|
3
3
|
*
|
|
4
4
|
* The Claude CLI stores session files in ~/.claude/projects/ with workspace paths
|
|
5
|
-
* encoded by replacing
|
|
6
|
-
* directories and specific session files.
|
|
5
|
+
* encoded by replacing every non-alphanumeric character with a hyphen. These
|
|
6
|
+
* utilities help locate CLI session directories and specific session files.
|
|
7
7
|
*/
|
|
8
8
|
import { readdir, stat } from "node:fs/promises";
|
|
9
9
|
import * as os from "node:os";
|
|
10
10
|
import * as path from "node:path";
|
|
11
|
+
/**
|
|
12
|
+
* Maximum length of an encoded path before Claude Code truncates it.
|
|
13
|
+
*
|
|
14
|
+
* Determined empirically from Claude Code's bundled encoder (the `Aj` function):
|
|
15
|
+
* when the hyphen-encoded path exceeds this length it is sliced to this length
|
|
16
|
+
* and a stable hash of the *original* path is appended (`<slice>-<hash>`).
|
|
17
|
+
*/
|
|
18
|
+
const MAX_ENCODED_LENGTH = 200;
|
|
19
|
+
/**
|
|
20
|
+
* Stable hash matching Claude Code's path-shortening hash.
|
|
21
|
+
*
|
|
22
|
+
* This is the djb2-style accumulator Claude Code uses (its `_wH` helper):
|
|
23
|
+
* `h = (h << 5) - h + charCode | 0`, taken as `Math.abs(h).toString(36)`.
|
|
24
|
+
* It is only used when the encoded path exceeds {@link MAX_ENCODED_LENGTH},
|
|
25
|
+
* to keep our output byte-for-byte identical to Claude Code's directory names.
|
|
26
|
+
*/
|
|
27
|
+
function hashPathForCli(input) {
|
|
28
|
+
let hash = 0;
|
|
29
|
+
for (let i = 0; i < input.length; i++) {
|
|
30
|
+
hash = ((hash << 5) - hash + input.charCodeAt(i)) | 0;
|
|
31
|
+
}
|
|
32
|
+
return Math.abs(hash).toString(36);
|
|
33
|
+
}
|
|
11
34
|
/**
|
|
12
35
|
* Encode a workspace path for CLI session storage
|
|
13
36
|
*
|
|
14
|
-
*
|
|
15
|
-
*
|
|
37
|
+
* Matches Claude Code's exact cwd → transcript-directory encoding: every
|
|
38
|
+
* character that is **not** `[A-Za-z0-9]` is replaced with a hyphen. This
|
|
39
|
+
* covers path separators (`/`, `\`), dots (`.`), underscores (`_`), `@`, `+`,
|
|
40
|
+
* spaces, and every other non-alphanumeric character. If the resulting string
|
|
41
|
+
* exceeds {@link MAX_ENCODED_LENGTH} characters, it is truncated to that length
|
|
42
|
+
* and a stable hash of the original path is appended, exactly as Claude Code does.
|
|
43
|
+
*
|
|
44
|
+
* Previously this only replaced path separators, so a cwd containing a `.` (or
|
|
45
|
+
* `_`, etc.) resolved to the wrong `~/.claude/projects/<encoded>` directory and
|
|
46
|
+
* session discovery silently returned nothing. This aligns herdctl with Claude
|
|
47
|
+
* Code's actual behavior.
|
|
16
48
|
*
|
|
17
49
|
* @example
|
|
18
50
|
* ```typescript
|
|
19
51
|
* encodePathForCli('/Users/ed/Code/myproject')
|
|
20
52
|
* // => '-Users-ed-Code-myproject'
|
|
21
53
|
*
|
|
54
|
+
* encodePathForCli('/Users/ed/Code/my.project')
|
|
55
|
+
* // => '-Users-ed-Code-my-project' (dot becomes a hyphen)
|
|
56
|
+
*
|
|
22
57
|
* encodePathForCli('C:\\Users\\ed\\Code\\myproject')
|
|
23
|
-
* // => 'C
|
|
58
|
+
* // => 'C--Users-ed-Code-myproject' (colon and backslashes become hyphens)
|
|
24
59
|
* ```
|
|
25
60
|
*
|
|
26
61
|
* @param absolutePath - Absolute path to workspace directory
|
|
27
|
-
* @returns Encoded path with
|
|
62
|
+
* @returns Encoded path with all non-alphanumeric characters replaced by hyphens
|
|
28
63
|
*/
|
|
29
64
|
export function encodePathForCli(absolutePath) {
|
|
30
|
-
// Replace
|
|
31
|
-
|
|
65
|
+
// Replace every non-alphanumeric character with a hyphen, matching Claude Code.
|
|
66
|
+
const encoded = absolutePath.replace(/[^A-Za-z0-9]/g, "-");
|
|
67
|
+
if (encoded.length <= MAX_ENCODED_LENGTH) {
|
|
68
|
+
return encoded;
|
|
69
|
+
}
|
|
70
|
+
// Truncate and append a stable hash of the original path, as Claude Code does.
|
|
71
|
+
return `${encoded.slice(0, MAX_ENCODED_LENGTH)}-${hashPathForCli(absolutePath)}`;
|
|
32
72
|
}
|
|
33
73
|
/**
|
|
34
74
|
* Get the CLI session directory for a workspace
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli-session-path.js","sourceRoot":"","sources":["../../../src/runner/runtime/cli-session-path.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAElC
|
|
1
|
+
{"version":3,"file":"cli-session-path.js","sourceRoot":"","sources":["../../../src/runner/runtime/cli-session-path.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,6 +9,7 @@
|
|
|
9
9
|
*
|
|
10
10
|
* Internal consumers import directly from sub-modules.
|
|
11
11
|
*/
|
|
12
|
+
export { encodePathForCli, getCliSessionDir, getCliSessionFile, getDockerSessionDir, getDockerSessionFile, } from "./cli-session-path.js";
|
|
12
13
|
export { RuntimeFactory, type RuntimeType } from "./factory.js";
|
|
13
14
|
export type { RuntimeExecuteOptions, RuntimeInterface } from "./interface.js";
|
|
14
15
|
export { SDKRuntime } from "./sdk-runtime.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/runner/runtime/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/runner/runtime/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAMH,OAAO,EACL,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,EACjB,mBAAmB,EACnB,oBAAoB,GACrB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,cAAc,EAAE,KAAK,WAAW,EAAE,MAAM,cAAc,CAAC;AAChE,YAAY,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAC9E,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC"}
|
|
@@ -9,6 +9,11 @@
|
|
|
9
9
|
*
|
|
10
10
|
* Internal consumers import directly from sub-modules.
|
|
11
11
|
*/
|
|
12
|
+
// CLI / Docker session path utilities — locate Claude session files and
|
|
13
|
+
// transcript directories. Exported on the public surface so consumers can
|
|
14
|
+
// compute a session's transcript path (e.g. to delete it) without
|
|
15
|
+
// deep-importing `dist/runner/runtime/cli-session-path.js`.
|
|
16
|
+
export { encodePathForCli, getCliSessionDir, getCliSessionFile, getDockerSessionDir, getDockerSessionFile, } from "./cli-session-path.js";
|
|
12
17
|
export { RuntimeFactory } from "./factory.js";
|
|
13
18
|
export { SDKRuntime } from "./sdk-runtime.js";
|
|
14
19
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/runner/runtime/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,cAAc,EAAoB,MAAM,cAAc,CAAC;AAEhE,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/runner/runtime/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,wEAAwE;AACxE,0EAA0E;AAC1E,kEAAkE;AAClE,4DAA4D;AAC5D,OAAO,EACL,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,EACjB,mBAAmB,EACnB,oBAAoB,GACrB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,cAAc,EAAoB,MAAM,cAAc,CAAC;AAEhE,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC"}
|
|
@@ -24,6 +24,7 @@ export declare const SchedulerErrorCode: {
|
|
|
24
24
|
readonly SHUTDOWN_ERROR: "SHUTDOWN_ERROR";
|
|
25
25
|
readonly JOB_CANCEL_ERROR: "JOB_CANCEL_ERROR";
|
|
26
26
|
readonly JOB_FORK_ERROR: "JOB_FORK_ERROR";
|
|
27
|
+
readonly INVALID_WORKING_DIRECTORY_OVERRIDE: "INVALID_WORKING_DIRECTORY_OVERRIDE";
|
|
27
28
|
readonly SOURCE_PARSE_ERROR: "SOURCE_PARSE_ERROR";
|
|
28
29
|
readonly REPOSITORY_FETCH_ERROR: "REPOSITORY_FETCH_ERROR";
|
|
29
30
|
readonly AGENT_INSTALL_ERROR: "AGENT_INSTALL_ERROR";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/scheduler/errors.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,iBAAiB,EAAyB,MAAM,4BAA4B,CAAC;AAMtF;;GAEG;AACH,eAAO,MAAM,kBAAkB
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/scheduler/errors.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,iBAAiB,EAAyB,MAAM,4BAA4B,CAAC;AAMtF;;GAEG;AACH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAOrB,CAAC;AAEX,MAAM,MAAM,kBAAkB,GAAG,CAAC,OAAO,kBAAkB,CAAC,CAAC,MAAM,OAAO,kBAAkB,CAAC,CAAC;AAM9F;;;;GAIG;AACH,qBAAa,cAAe,SAAQ,iBAAiB;gBACvC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,KAAK,CAAC;QAAC,IAAI,CAAC,EAAE,kBAAkB,CAAA;KAAE;CAQpF;AAMD;;;;;GAKG;AACH,qBAAa,kBAAmB,SAAQ,cAAc;IACpD,qDAAqD;IACrD,SAAgB,KAAK,EAAE,MAAM,CAAC;gBAElB,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,KAAK,CAAA;KAAE;CAKxE;AAMD;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,eAAO,MAAM,WAAW,EAAE,aAAa,EAMtC,CAAC;AAEF;;;;;;;;;;;;;;;;;;;GAmBG;AACH,qBAAa,cAAe,SAAQ,cAAc;IAChD,wDAAwD;IACxD,SAAgB,UAAU,EAAE,MAAM,CAAC;IAEnC,uDAAuD;IACvD,SAAgB,KAAK,CAAC,EAAE,MAAM,CAAC;IAE/B,gCAAgC;IAChC,SAAgB,OAAO,CAAC,EAAE,MAAM,CAAC;gBAG/B,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,EAClB,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,KAAK,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE;IAS/D;;OAEG;IACH,MAAM,CAAC,YAAY,CACjB,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,GACpD,MAAM;CAOV;AAMD;;;;;;;GAOG;AACH,qBAAa,oBAAqB,SAAQ,cAAc;IACtD,mDAAmD;IACnD,SAAgB,SAAS,EAAE,MAAM,CAAC;IAElC,2CAA2C;IAC3C,SAAgB,YAAY,EAAE,MAAM,CAAC;gBAGnC,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,MAAM,EACpB,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,KAAK,CAAA;KAAE;CAO9B;AAMD;;;;;GAKG;AACH,qBAAa,sBAAuB,SAAQ,cAAc;IACxD,kEAAkE;IAClE,SAAgB,QAAQ,EAAE,OAAO,CAAC;IAElC,+EAA+E;IAC/E,SAAgB,eAAe,EAAE,MAAM,CAAC;gBAGtC,OAAO,EAAE,MAAM,EACf,OAAO,EAAE;QAAE,QAAQ,EAAE,OAAO,CAAC;QAAC,eAAe,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,KAAK,CAAA;KAAE;CAOzE"}
|
|
@@ -7,6 +7,7 @@
|
|
|
7
7
|
*/
|
|
8
8
|
import { type ChatMessage, type SessionMetadata, type SessionUsage } from "./jsonl-parser.js";
|
|
9
9
|
import { type SessionOrigin } from "./session-attribution.js";
|
|
10
|
+
import { SessionMetadataStore } from "./session-metadata.js";
|
|
10
11
|
/**
|
|
11
12
|
* A discovered session with attribution and metadata
|
|
12
13
|
*/
|
|
@@ -42,6 +43,15 @@ export interface SessionDiscoveryOptions {
|
|
|
42
43
|
stateDir: string;
|
|
43
44
|
/** Cache TTL in milliseconds. Default: 30_000 (30 seconds) */
|
|
44
45
|
cacheTtlMs?: number;
|
|
46
|
+
/**
|
|
47
|
+
* Optional shared {@link SessionMetadataStore}. When provided, the service
|
|
48
|
+
* reads custom names / auto-names / previews through this store instead of
|
|
49
|
+
* creating its own. Sharing one instance keeps the in-memory cache consistent
|
|
50
|
+
* with callers that *write* metadata (e.g. `FleetManager.setSessionName`), so
|
|
51
|
+
* a subsequent `getAgentSessions` reflects the change immediately. When
|
|
52
|
+
* omitted, a private store is created for backward compatibility.
|
|
53
|
+
*/
|
|
54
|
+
sessionMetadataStore?: SessionMetadataStore;
|
|
45
55
|
}
|
|
46
56
|
/**
|
|
47
57
|
* Service for discovering and enumerating Claude Code sessions.
|
|
@@ -79,6 +89,14 @@ export declare class SessionDiscoveryService {
|
|
|
79
89
|
* @param options - Configuration options
|
|
80
90
|
*/
|
|
81
91
|
constructor(options: SessionDiscoveryOptions);
|
|
92
|
+
/**
|
|
93
|
+
* The {@link SessionMetadataStore} this service reads metadata through.
|
|
94
|
+
*
|
|
95
|
+
* Exposed so callers that share a discovery service can write metadata (e.g.
|
|
96
|
+
* custom names) through the *same* store instance and have the change
|
|
97
|
+
* reflected by subsequent discovery calls without a stale in-memory cache.
|
|
98
|
+
*/
|
|
99
|
+
getSessionMetadataStore(): SessionMetadataStore;
|
|
82
100
|
/**
|
|
83
101
|
* Check if the attribution index cache is valid
|
|
84
102
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-discovery.d.ts","sourceRoot":"","sources":["../../src/state/session-discovery.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAYH,OAAO,EACL,KAAK,WAAW,EAOhB,KAAK,eAAe,EACpB,KAAK,YAAY,EAClB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAGL,KAAK,aAAa,EACnB,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"session-discovery.d.ts","sourceRoot":"","sources":["../../src/state/session-discovery.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAYH,OAAO,EACL,KAAK,WAAW,EAOhB,KAAK,eAAe,EACpB,KAAK,YAAY,EAClB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAGL,KAAK,aAAa,EACnB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAM7D;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB,EAAE,MAAM,CAAC;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,aAAa,CAAC;IACtB,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,SAAS,EAAE,OAAO,CAAC;IACnB,UAAU,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,uEAAuE;IACvE,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7B,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC;CAC7B;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,gBAAgB,EAAE,MAAM,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,iBAAiB,EAAE,CAAC;CAC/B;AAED;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC,+EAA+E;IAC/E,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,4CAA4C;IAC5C,QAAQ,EAAE,MAAM,CAAC;IACjB,8DAA8D;IAC9D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;;;;OAOG;IACH,oBAAoB,CAAC,EAAE,oBAAoB,CAAC;CAC7C;AAkED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,qBAAa,uBAAuB;IAClC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAS;IACxC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IAEpC,OAAO,CAAC,gBAAgB,CAAiC;IACzD,OAAO,CAAC,oBAAoB,CAAa;IAEzC,OAAO,CAAC,cAAc,CAA+C;IACrE,OAAO,CAAC,aAAa,CAA2C;IAEhE,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAuB;IAE5D;;;;OAIG;gBACS,OAAO,EAAE,uBAAuB;IAQ5C;;;;;;OAMG;IACH,uBAAuB,IAAI,oBAAoB;IAI/C;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAM/B;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAM7B;;OAEG;YACW,mBAAmB;IAajC;;OAEG;YACW,gBAAgB;IAoD9B;;;;;;;;;;;OAWG;YACW,eAAe;IA4B7B;;;;;;;;OAQG;YACW,cAAc;IA4B5B;;;;;;;;;;;OAWG;IACG,gBAAgB,CACpB,SAAS,EAAE,MAAM,EACjB,gBAAgB,EAAE,MAAM,EACxB,aAAa,EAAE,OAAO,EACtB,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,GAC3B,OAAO,CAAC,iBAAiB,EAAE,CAAC;IA2G/B;;;;;;;;;;;;;;OAcG;IACG,cAAc,CAClB,MAAM,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,gBAAgB,EAAE,MAAM,CAAC;QAAC,aAAa,EAAE,OAAO,CAAA;KAAE,CAAC,EACjF,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,GAC3B,OAAO,CAAC,cAAc,EAAE,CAAC;IA8Q5B;;;;;OAKG;IACH,OAAO,CAAC,sBAAsB;IAU9B;;;;;;;;;OASG;IACG,kBAAkB,CACtB,gBAAgB,EAAE,MAAM,EACxB,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE;QAAE,aAAa,CAAC,EAAE,OAAO,CAAA;KAAE,GACpC,OAAO,CAAC,WAAW,EAAE,CAAC;IASzB;;;;;;;;;OASG;IACG,kBAAkB,CACtB,gBAAgB,EAAE,MAAM,EACxB,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE;QAAE,aAAa,CAAC,EAAE,OAAO,CAAA;KAAE,GACpC,OAAO,CAAC,eAAe,CAAC;IAqB3B;;;;;;;;;OASG;IACG,eAAe,CACnB,gBAAgB,EAAE,MAAM,EACxB,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE;QAAE,aAAa,CAAC,EAAE,OAAO,CAAA;KAAE,GACpC,OAAO,CAAC,YAAY,CAAC;IASxB;;;;;;;;OAQG;IACH,eAAe,CAAC,gBAAgB,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,aAAa,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,IAAI;IAsBvF;;;;;;;;;;;;OAYG;IACH,0BAA0B,CACxB,gBAAgB,CAAC,EAAE,MAAM,EACzB,OAAO,CAAC,EAAE;QAAE,aAAa,CAAC,EAAE,OAAO,CAAA;KAAE,GACpC,IAAI;CAmBR"}
|
|
@@ -97,7 +97,18 @@ export class SessionDiscoveryService {
|
|
|
97
97
|
this.claudeHomePath = options.claudeHomePath ?? path.join(os.homedir(), ".claude");
|
|
98
98
|
this.stateDir = options.stateDir;
|
|
99
99
|
this.cacheTtlMs = options.cacheTtlMs ?? 30_000;
|
|
100
|
-
this.sessionMetadataStore =
|
|
100
|
+
this.sessionMetadataStore =
|
|
101
|
+
options.sessionMetadataStore ?? new SessionMetadataStore(options.stateDir);
|
|
102
|
+
}
|
|
103
|
+
/**
|
|
104
|
+
* The {@link SessionMetadataStore} this service reads metadata through.
|
|
105
|
+
*
|
|
106
|
+
* Exposed so callers that share a discovery service can write metadata (e.g.
|
|
107
|
+
* custom names) through the *same* store instance and have the change
|
|
108
|
+
* reflected by subsequent discovery calls without a stale in-memory cache.
|
|
109
|
+
*/
|
|
110
|
+
getSessionMetadataStore() {
|
|
111
|
+
return this.sessionMetadataStore;
|
|
101
112
|
}
|
|
102
113
|
/**
|
|
103
114
|
* Check if the attribution index cache is valid
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-discovery.js","sourceRoot":"","sources":["../../src/state/session-discovery.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"session-discovery.js","sourceRoot":"","sources":["../../src/state/session-discovery.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { join } from "node:path";
|
|
1
|
+
import { join, resolve, sep } from "node:path";
|
|
2
2
|
import { describe, expect, it } from "vitest";
|
|
3
3
|
import { buildSafeFilePath, isValidIdentifier, PathTraversalError, SAFE_IDENTIFIER_PATTERN, } from "../path-safety.js";
|
|
4
4
|
describe("PathTraversalError", () => {
|
|
@@ -192,6 +192,31 @@ describe("buildSafeFilePath", () => {
|
|
|
192
192
|
const result = buildSafeFilePath(baseDir, "agent", "");
|
|
193
193
|
expect(result).toBe(join(baseDir, "agent"));
|
|
194
194
|
});
|
|
195
|
+
it("handles root directory as base path", () => {
|
|
196
|
+
// On POSIX, resolve("/") returns "/" which already ends with sep.
|
|
197
|
+
// The basePrefix logic must avoid creating "//" in this case.
|
|
198
|
+
const result = buildSafeFilePath("/", "agent", ".json");
|
|
199
|
+
expect(result).toBe(join("/", "agent.json"));
|
|
200
|
+
});
|
|
201
|
+
});
|
|
202
|
+
describe("cross-platform path separator handling", () => {
|
|
203
|
+
it("uses path.sep instead of hardcoded forward slash", () => {
|
|
204
|
+
// Verify the implementation uses sep for the startsWith check.
|
|
205
|
+
// On this platform, sep is the native separator, so valid paths
|
|
206
|
+
// within the base directory should always pass.
|
|
207
|
+
const result = buildSafeFilePath(baseDir, "test-agent", ".json");
|
|
208
|
+
const resolvedResult = resolve(result);
|
|
209
|
+
const resolvedBase = resolve(baseDir);
|
|
210
|
+
const expectedPrefix = resolvedBase.endsWith(sep) ? resolvedBase : `${resolvedBase}${sep}`;
|
|
211
|
+
expect(resolvedResult.startsWith(expectedPrefix)).toBe(true);
|
|
212
|
+
});
|
|
213
|
+
it("does not produce double separators when base ends with sep", () => {
|
|
214
|
+
// A base directory that ends with a separator should not cause
|
|
215
|
+
// the prefix check to fail due to doubled separators.
|
|
216
|
+
const baseWithTrailingSep = `/tmp/sessions${sep}`;
|
|
217
|
+
const result = buildSafeFilePath(baseWithTrailingSep, "agent", ".json");
|
|
218
|
+
expect(result).toBe(join(baseWithTrailingSep, "agent.json"));
|
|
219
|
+
});
|
|
195
220
|
});
|
|
196
221
|
});
|
|
197
222
|
//# sourceMappingURL=path-safety.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"path-safety.test.js","sourceRoot":"","sources":["../../../../src/state/utils/__tests__/path-safety.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"path-safety.test.js","sourceRoot":"","sources":["../../../../src/state/utils/__tests__/path-safety.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAM,MAAM,QAAQ,CAAC;AAClD,OAAO,EACL,iBAAiB,EACjB,iBAAiB,EACjB,kBAAkB,EAClB,uBAAuB,GACxB,MAAM,mBAAmB,CAAC;AAE3B,QAAQ,CAAC,oBAAoB,EAAE,GAAG,EAAE;IAClC,EAAE,CAAC,uCAAuC,EAAE,GAAG,EAAE;QAC/C,MAAM,KAAK,GAAG,IAAI,kBAAkB,CAAC,WAAW,EAAE,QAAQ,EAAE,eAAe,CAAC,CAAC;QAE7E,MAAM,CAAC,KAAK,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;QACpC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;QAC9C,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACxC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACxC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IACjD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mCAAmC,EAAE,GAAG,EAAE;QAC3C,MAAM,KAAK,GAAG,IAAI,kBAAkB,CAAC,WAAW,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;QAEtE,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,yBAAyB,CAAC,CAAC;QAC3D,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QAC3C,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QACzC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;IAC/C,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,yBAAyB,EAAE,GAAG,EAAE;IACvC,QAAQ,CAAC,mBAAmB,EAAE,GAAG,EAAE;QACjC,MAAM,UAAU,GAAG;YACjB,OAAO;YACP,UAAU;YACV,UAAU;YACV,UAAU;YACV,OAAO;YACP,OAAO;YACP,GAAG;YACH,GAAG;YACH,GAAG;YACH,QAAQ;YACR,yBAAyB;YACzB,6BAA6B;YAC7B,0BAA0B;YAC1B,uBAAuB,EAAE,gBAAgB;YACzC,0BAA0B,EAAE,iCAAiC;YAC7D,yBAAyB,EAAE,+BAA+B;YAC1D,KAAK,EAAE,yBAAyB;SACjC,CAAC;QAEF,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,cAAc,EAAE,CAAC,UAAU,EAAE,EAAE;YACjD,MAAM,CAAC,uBAAuB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC9D,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,qBAAqB,EAAE,GAAG,EAAE;QACnC,MAAM,YAAY,GAAG;YACnB,CAAC,WAAW,EAAE,wBAAwB,CAAC;YACvC,CAAC,YAAY,EAAE,wBAAwB,CAAC;YACxC,CAAC,WAAW,EAAE,eAAe,CAAC;YAC9B,CAAC,YAAY,EAAE,wBAAwB,CAAC;YACxC,CAAC,iBAAiB,EAAE,oBAAoB,CAAC;YACzC,CAAC,YAAY,EAAE,gBAAgB,CAAC;YAChC,CAAC,qBAAqB,EAAE,oBAAoB,CAAC;YAC7C,CAAC,yBAAyB,EAAE,wBAAwB,CAAC;YACrD,CAAC,EAAE,EAAE,cAAc,CAAC;YACpB,CAAC,kBAAkB,EAAE,iBAAiB,CAAC;YACvC,CAAC,gBAAgB,EAAE,eAAe,CAAC;YACnC,CAAC,WAAW,EAAE,gBAAgB,CAAC;YAC/B,CAAC,QAAQ,EAAE,oBAAoB,CAAC;YAChC,CAAC,YAAY,EAAE,sBAAsB,CAAC;YACtC,CAAC,aAAa,EAAE,kBAAkB,CAAC;YACnC,CAAC,KAAK,EAAE,sBAAsB,CAAC;SAChC,CAAC;QAEF,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,mBAAmB,EAAE,CAAC,UAAU,EAAE,EAAE;YACxD,MAAM,CAAC,uBAAuB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC/D,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,mBAAmB,EAAE,GAAG,EAAE;IACjC,EAAE,CAAC,oCAAoC,EAAE,GAAG,EAAE;QAC5C,MAAM,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjD,MAAM,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAChD,MAAM,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC9C,MAAM,CAAC,iBAAiB,CAAC,0BAA0B,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uCAAuC,EAAE,GAAG,EAAE;QAC/C,MAAM,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACjD,MAAM,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC1C,MAAM,CAAC,iBAAiB,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACpD,MAAM,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC5D,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,mBAAmB,EAAE,GAAG,EAAE;IACjC,MAAM,OAAO,GAAG,8BAA8B,CAAC;IAE/C,QAAQ,CAAC,mBAAmB,EAAE,GAAG,EAAE;QACjC,EAAE,CAAC,mCAAmC,EAAE,GAAG,EAAE;YAC3C,MAAM,MAAM,GAAG,iBAAiB,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;YAC/D,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC,CAAC;QACtD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,6CAA6C,EAAE,GAAG,EAAE;YACrD,MAAM,MAAM,GAAG,iBAAiB,CAAC,OAAO,EAAE,aAAa,EAAE,OAAO,CAAC,CAAC;YAClE,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,kBAAkB,CAAC,CAAC,CAAC;QACzD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,+BAA+B,EAAE,GAAG,EAAE;YACvC,MAAM,MAAM,GAAG,iBAAiB,CAAC,OAAO,EAAE,uBAAuB,EAAE,OAAO,CAAC,CAAC;YAC5E,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,4BAA4B,CAAC,CAAC,CAAC;QACnE,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,mCAAmC,EAAE,GAAG,EAAE;YAC3C,MAAM,CAAC,iBAAiB,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC;YACvF,MAAM,CAAC,iBAAiB,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC;YACvF,MAAM,CAAC,iBAAiB,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC;QACvF,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,sCAAsC,EAAE,GAAG,EAAE;YAC9C,MAAM,MAAM,GAAG,iBAAiB,CAAC,OAAO,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC;YACxD,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC;QAC/C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,6BAA6B,EAAE,GAAG,EAAE;YACrC,MAAM,MAAM,GAAG,iBAAiB,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;YAC1D,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC;QACjD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,sDAAsD,EAAE,GAAG,EAAE;YAC9D,MAAM,MAAM,GAAG,iBAAiB,CAAC,OAAO,EAAE,0BAA0B,EAAE,OAAO,CAAC,CAAC;YAC/E,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,+BAA+B,CAAC,CAAC,CAAC;QACtE,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,8CAA8C,EAAE,GAAG,EAAE;YACtD,MAAM,MAAM,GAAG,iBAAiB,CAAC,OAAO,EAAE,2BAA2B,EAAE,OAAO,CAAC,CAAC;YAChF,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,gCAAgC,CAAC,CAAC,CAAC;QACvE,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,yBAAyB,EAAE,GAAG,EAAE;QACvC,EAAE,CAAC,6CAA6C,EAAE,GAAG,EAAE;YACrD,MAAM,CAAC,GAAG,EAAE,CAAC,iBAAiB,CAAC,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;QAC3F,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,6CAA6C,EAAE,GAAG,EAAE;YACrD,MAAM,CAAC,GAAG,EAAE,CAAC,iBAAiB,CAAC,OAAO,EAAE,qBAAqB,EAAE,OAAO,CAAC,CAAC,CAAC,OAAO,CAC9E,kBAAkB,CACnB,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,2CAA2C,EAAE,GAAG,EAAE;YACnD,MAAM,CAAC,GAAG,EAAE,CAAC,iBAAiB,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;QAC5F,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,2BAA2B,EAAE,GAAG,EAAE;YACnC,MAAM,CAAC,GAAG,EAAE,CAAC,iBAAiB,CAAC,OAAO,EAAE,aAAa,EAAE,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;QAC/F,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,uCAAuC,EAAE,GAAG,EAAE;YAC/C,MAAM,CAAC,GAAG,EAAE,CAAC,iBAAiB,CAAC,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;QAC3F,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,mCAAmC,EAAE,GAAG,EAAE;YAC3C,MAAM,CAAC,GAAG,EAAE,CAAC,iBAAiB,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;QAC5F,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,oCAAoC,EAAE,GAAG,EAAE;YAC5C,IAAI,CAAC;gBACH,iBAAiB,CAAC,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;gBAC/C,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;YACpC,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,CAAC,KAAK,CAAC,CAAC,cAAc,CAAC,kBAAkB,CAAC,CAAC;gBACjD,MAAM,SAAS,GAAG,KAA2B,CAAC;gBAC9C,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBACxC,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBAC7C,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC;YAC5D,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,2BAA2B,EAAE,GAAG,EAAE;QACzC,EAAE,CAAC,6BAA6B,EAAE,GAAG,EAAE;YACrC,MAAM,CAAC,GAAG,EAAE,CAAC,iBAAiB,CAAC,OAAO,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;QACpF,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,4CAA4C,EAAE,GAAG,EAAE;YACpD,MAAM,CAAC,GAAG,EAAE,CAAC,iBAAiB,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;QAC1F,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,gDAAgD,EAAE,GAAG,EAAE;YACxD,MAAM,CAAC,GAAG,EAAE,CAAC,iBAAiB,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;QAC1F,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,mCAAmC,EAAE,GAAG,EAAE;YAC3C,MAAM,CAAC,GAAG,EAAE,CAAC,iBAAiB,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;QAC5F,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,iDAAiD,EAAE,GAAG,EAAE;YACzD,MAAM,MAAM,GAAG,iBAAiB,CAAC,OAAO,EAAE,0BAA0B,EAAE,OAAO,CAAC,CAAC;YAC/E,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,+BAA+B,CAAC,CAAC,CAAC;QACtE,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,+CAA+C,EAAE,GAAG,EAAE;YACvD,MAAM,CAAC,GAAG,EAAE,CAAC,iBAAiB,CAAC,OAAO,EAAE,YAAY,EAAE,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;YAC5F,MAAM,CAAC,GAAG,EAAE,CAAC,iBAAiB,CAAC,OAAO,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;YAC3F,MAAM,CAAC,GAAG,EAAE,CAAC,iBAAiB,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;QAC5F,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,YAAY,EAAE,GAAG,EAAE;QAC1B,EAAE,CAAC,iCAAiC,EAAE,GAAG,EAAE;YACzC,MAAM,MAAM,GAAG,iBAAiB,CAAC,YAAY,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;YACjE,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC,CAAC;QACxD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,4CAA4C,EAAE,GAAG,EAAE;YACpD,MAAM,MAAM,GAAG,iBAAiB,CAAC,YAAY,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;YACjE,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC,CAAC;QACxD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,uCAAuC,EAAE,GAAG,EAAE;YAC/C,yDAAyD;YACzD,MAAM,MAAM,GAAG,iBAAiB,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;YAC3D,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC;QAClD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,yBAAyB,EAAE,GAAG,EAAE;YACjC,MAAM,MAAM,GAAG,iBAAiB,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;YACvD,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;QAC9C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,qCAAqC,EAAE,GAAG,EAAE;YAC7C,kEAAkE;YAClE,8DAA8D;YAC9D,MAAM,MAAM,GAAG,iBAAiB,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;YACxD,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC,CAAC;QAC/C,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,wCAAwC,EAAE,GAAG,EAAE;QACtD,EAAE,CAAC,kDAAkD,EAAE,GAAG,EAAE;YAC1D,+DAA+D;YAC/D,gEAAgE;YAChE,gDAAgD;YAChD,MAAM,MAAM,GAAG,iBAAiB,CAAC,OAAO,EAAE,YAAY,EAAE,OAAO,CAAC,CAAC;YACjE,MAAM,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;YACvC,MAAM,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;YACtC,MAAM,cAAc,GAAG,YAAY,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,GAAG,YAAY,GAAG,GAAG,EAAE,CAAC;YAC3F,MAAM,CAAC,cAAc,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC/D,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,4DAA4D,EAAE,GAAG,EAAE;YACpE,+DAA+D;YAC/D,sDAAsD;YACtD,MAAM,mBAAmB,GAAG,gBAAgB,GAAG,EAAE,CAAC;YAClD,MAAM,MAAM,GAAG,iBAAiB,CAAC,mBAAmB,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;YACxE,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,YAAY,CAAC,CAAC,CAAC;QAC/D,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"path-safety.d.ts","sourceRoot":"","sources":["../../../src/state/utils/path-safety.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,KAAK;IAC3C,SAAgB,OAAO,EAAE,MAAM,CAAC;IAChC,SAAgB,UAAU,EAAE,MAAM,CAAC;IACnC,SAAgB,UAAU,EAAE,MAAM,CAAC;gBAEvB,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM;CASpE;AAED;;;;;GAKG;AACH,eAAO,MAAM,uBAAuB,QAA+C,CAAC;AAEpF;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAE7D;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,
|
|
1
|
+
{"version":3,"file":"path-safety.d.ts","sourceRoot":"","sources":["../../../src/state/utils/path-safety.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,KAAK;IAC3C,SAAgB,OAAO,EAAE,MAAM,CAAC;IAChC,SAAgB,UAAU,EAAE,MAAM,CAAC;IACnC,SAAgB,UAAU,EAAE,MAAM,CAAC;gBAEvB,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM;CASpE;AAED;;;;;GAKG;AACH,eAAO,MAAM,uBAAuB,QAA+C,CAAC;AAEpF;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAE7D;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAwBhG"}
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* Provides defense-in-depth protection against path traversal attacks
|
|
5
5
|
* when constructing file paths from user-controlled identifiers.
|
|
6
6
|
*/
|
|
7
|
-
import { join, resolve } from "node:path";
|
|
7
|
+
import { join, resolve, sep } from "node:path";
|
|
8
8
|
/**
|
|
9
9
|
* Error thrown when a path traversal attempt is detected
|
|
10
10
|
*/
|
|
@@ -69,7 +69,8 @@ export function buildSafeFilePath(baseDir, identifier, extension) {
|
|
|
69
69
|
// Second line of defense: verify the resolved path stays within baseDir
|
|
70
70
|
const resolvedBase = resolve(baseDir);
|
|
71
71
|
const resolvedPath = resolve(filePath);
|
|
72
|
-
|
|
72
|
+
const basePrefix = resolvedBase.endsWith(sep) ? resolvedBase : `${resolvedBase}${sep}`;
|
|
73
|
+
if (!resolvedPath.startsWith(basePrefix) && resolvedPath !== resolvedBase) {
|
|
73
74
|
throw new PathTraversalError(baseDir, identifier, resolvedPath);
|
|
74
75
|
}
|
|
75
76
|
return filePath;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"path-safety.js","sourceRoot":"","sources":["../../../src/state/utils/path-safety.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"path-safety.js","sourceRoot":"","sources":["../../../src/state/utils/path-safety.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AAE/C;;GAEG;AACH,MAAM,OAAO,kBAAmB,SAAQ,KAAK;IAC3B,OAAO,CAAS;IAChB,UAAU,CAAS;IACnB,UAAU,CAAS;IAEnC,YAAY,OAAe,EAAE,UAAkB,EAAE,UAAkB;QACjE,KAAK,CACH,wCAAwC,UAAU,uBAAuB,UAAU,sCAAsC,OAAO,GAAG,CACpI,CAAC;QACF,IAAI,CAAC,IAAI,GAAG,oBAAoB,CAAC;QACjC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IAC/B,CAAC;CACF;AAED;;;;;GAKG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,4CAA4C,CAAC;AAEpF;;;;;GAKG;AACH,MAAM,UAAU,iBAAiB,CAAC,UAAkB;IAClD,OAAO,uBAAuB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;AAClD,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAAe,EAAE,UAAkB,EAAE,SAAiB;IACtF,oDAAoD;IACpD,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC,EAAE,CAAC;QACnC,MAAM,IAAI,kBAAkB,CAC1B,OAAO,EACP,UAAU,EACV,mCAAmC,uBAAuB,GAAG,CAC9D,CAAC;IACJ,CAAC;IAED,0BAA0B;IAC1B,MAAM,QAAQ,GAAG,GAAG,UAAU,GAAG,SAAS,EAAE,CAAC;IAC7C,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IAEzC,wEAAwE;IACxE,MAAM,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACtC,MAAM,YAAY,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;IAEvC,MAAM,UAAU,GAAG,YAAY,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,GAAG,YAAY,GAAG,GAAG,EAAE,CAAC;IACvF,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,YAAY,KAAK,YAAY,EAAE,CAAC;QAC1E,MAAM,IAAI,kBAAkB,CAAC,OAAO,EAAE,UAAU,EAAE,YAAY,CAAC,CAAC;IAClE,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC"}
|