@stigmer/runner 3.11.0 → 3.12.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/README.md +2 -0
- package/dist/.build-fingerprint +1 -1
- package/dist/activities/discover-mcp-server.d.ts +7 -0
- package/dist/activities/discover-mcp-server.js +6 -4
- package/dist/activities/discover-mcp-server.js.map +1 -1
- package/dist/activities/emit-event.d.ts +14 -2
- package/dist/activities/emit-event.js +52 -17
- package/dist/activities/emit-event.js.map +1 -1
- package/dist/activities/execute-cursor/attachment-resolver.d.ts +11 -0
- package/dist/activities/execute-cursor/attachment-resolver.js +8 -0
- package/dist/activities/execute-cursor/attachment-resolver.js.map +1 -1
- package/dist/activities/execute-cursor/blueprint-resolver.d.ts +1 -9
- package/dist/activities/execute-cursor/blueprint-resolver.js +0 -1
- package/dist/activities/execute-cursor/blueprint-resolver.js.map +1 -1
- package/dist/activities/execute-cursor/error-classifier.d.ts +19 -0
- package/dist/activities/execute-cursor/error-classifier.js +34 -3
- package/dist/activities/execute-cursor/error-classifier.js.map +1 -1
- package/dist/activities/execute-cursor/index.d.ts +52 -12
- package/dist/activities/execute-cursor/index.js +141 -67
- package/dist/activities/execute-cursor/index.js.map +1 -1
- package/dist/activities/execute-cursor/model-pricing-data.d.ts +2 -0
- package/dist/activities/execute-cursor/model-pricing-data.js +13 -3
- package/dist/activities/execute-cursor/model-pricing-data.js.map +1 -1
- package/dist/activities/execute-cursor/prompt-builder.d.ts +48 -11
- package/dist/activities/execute-cursor/prompt-builder.js +57 -10
- package/dist/activities/execute-cursor/prompt-builder.js.map +1 -1
- package/dist/activities/execute-cursor/turn-recovery.d.ts +52 -0
- package/dist/activities/execute-cursor/turn-recovery.js +193 -0
- package/dist/activities/execute-cursor/turn-recovery.js.map +1 -0
- package/dist/activities/execute-deep-agent/attachment-injector.d.ts +11 -0
- package/dist/activities/execute-deep-agent/attachment-injector.js +7 -1
- package/dist/activities/execute-deep-agent/attachment-injector.js.map +1 -1
- package/dist/activities/execute-deep-agent/index.js +0 -15
- package/dist/activities/execute-deep-agent/index.js.map +1 -1
- package/dist/activities/execute-deep-agent/mcp-gate.d.ts +0 -2
- package/dist/activities/execute-deep-agent/mcp-gate.js +0 -1
- package/dist/activities/execute-deep-agent/mcp-gate.js.map +1 -1
- package/dist/activities/execute-deep-agent/prompt-builder.d.ts +7 -8
- package/dist/activities/execute-deep-agent/prompt-builder.js +14 -7
- package/dist/activities/execute-deep-agent/prompt-builder.js.map +1 -1
- package/dist/activities/execute-deep-agent/setup.d.ts +0 -10
- package/dist/activities/execute-deep-agent/setup.js +22 -49
- package/dist/activities/execute-deep-agent/setup.js.map +1 -1
- package/dist/activities/execute-deep-agent/shell-env.d.ts +5 -1
- package/dist/activities/execute-deep-agent/shell-env.js +7 -9
- package/dist/activities/execute-deep-agent/shell-env.js.map +1 -1
- package/dist/activities/execute-deep-agent/subagent-transformer.js +7 -1
- package/dist/activities/execute-deep-agent/subagent-transformer.js.map +1 -1
- package/dist/activities/execute-deep-agent/subagent-wiring.d.ts +17 -3
- package/dist/activities/execute-deep-agent/subagent-wiring.js +14 -2
- package/dist/activities/execute-deep-agent/subagent-wiring.js.map +1 -1
- package/dist/activities/hydrate-workflow-execution.js +8 -5
- package/dist/activities/hydrate-workflow-execution.js.map +1 -1
- package/dist/activities/run-command.d.ts +5 -2
- package/dist/activities/run-command.js +22 -10
- package/dist/activities/run-command.js.map +1 -1
- package/dist/activities/run-env.d.ts +40 -0
- package/dist/activities/run-env.js +66 -0
- package/dist/activities/run-env.js.map +1 -0
- package/dist/bootstrap.js +5 -0
- package/dist/bootstrap.js.map +1 -1
- package/dist/client/stigmer-client.d.ts +83 -26
- package/dist/client/stigmer-client.js +88 -24
- package/dist/client/stigmer-client.js.map +1 -1
- package/dist/config.d.ts +6 -5
- package/dist/config.js.map +1 -1
- package/dist/encryption/config.d.ts +41 -9
- package/dist/encryption/config.js +63 -23
- package/dist/encryption/config.js.map +1 -1
- package/dist/middleware/index.d.ts +3 -0
- package/dist/middleware/index.js +7 -0
- package/dist/middleware/index.js.map +1 -1
- package/dist/middleware/path-normalization.d.ts +57 -0
- package/dist/middleware/path-normalization.js +109 -0
- package/dist/middleware/path-normalization.js.map +1 -0
- package/dist/middleware/types.d.ts +8 -0
- package/dist/payload-codecs.d.ts +2 -1
- package/dist/payload-codecs.js +7 -3
- package/dist/payload-codecs.js.map +1 -1
- package/dist/runner-manager.js +17 -3
- package/dist/runner-manager.js.map +1 -1
- package/dist/runner.js +7 -3
- package/dist/runner.js.map +1 -1
- package/dist/shared/artifact-storage.d.ts +34 -1
- package/dist/shared/artifact-storage.js +53 -10
- package/dist/shared/artifact-storage.js.map +1 -1
- package/dist/shared/attachment-download-urls.d.ts +62 -0
- package/dist/shared/attachment-download-urls.js +79 -0
- package/dist/shared/attachment-download-urls.js.map +1 -0
- package/dist/shared/channel-attachment.d.ts +1 -1
- package/dist/shared/channel-attachment.js +1 -1
- package/dist/shared/checkpointer/http-saver.d.ts +4 -20
- package/dist/shared/checkpointer/http-saver.js +15 -57
- package/dist/shared/checkpointer/http-saver.js.map +1 -1
- package/dist/shared/conversation-attachment.d.ts +2 -3
- package/dist/shared/conversation-attachment.js +2 -3
- package/dist/shared/conversation-attachment.js.map +1 -1
- package/dist/shared/conversation-catchup.d.ts +9 -2
- package/dist/shared/conversation-catchup.js +39 -6
- package/dist/shared/conversation-catchup.js.map +1 -1
- package/dist/shared/grpc-retry.d.ts +5 -1
- package/dist/shared/grpc-retry.js +5 -1
- package/dist/shared/grpc-retry.js.map +1 -1
- package/dist/shared/http-retry.d.ts +51 -9
- package/dist/shared/http-retry.js +60 -9
- package/dist/shared/http-retry.js.map +1 -1
- package/dist/shared/mcp-manager.d.ts +8 -4
- package/dist/shared/mcp-manager.js +30 -4
- package/dist/shared/mcp-manager.js.map +1 -1
- package/dist/shared/mcp-schema-sanitizer.d.ts +70 -0
- package/dist/shared/mcp-schema-sanitizer.js +197 -0
- package/dist/shared/mcp-schema-sanitizer.js.map +1 -0
- package/dist/shared/mcp-transport-guard.d.ts +2 -2
- package/dist/shared/mcp-transport-guard.js +2 -2
- package/dist/shared/model-client.d.ts +6 -0
- package/dist/shared/model-client.js +14 -3
- package/dist/shared/model-client.js.map +1 -1
- package/dist/shared/model-pricing-data.d.ts +2 -0
- package/dist/shared/model-pricing-data.js +13 -3
- package/dist/shared/model-pricing-data.js.map +1 -1
- package/dist/shared/model-registry.js +3 -2
- package/dist/shared/model-registry.js.map +1 -1
- package/dist/shared/plan-mode-permissions.d.ts +7 -0
- package/dist/shared/plan-mode-permissions.js +7 -0
- package/dist/shared/plan-mode-permissions.js.map +1 -1
- package/dist/shared/registry-endpoint.d.ts +20 -0
- package/dist/shared/registry-endpoint.js +25 -0
- package/dist/shared/registry-endpoint.js.map +1 -1
- package/dist/shared/runner-credential-keys.d.ts +24 -0
- package/dist/shared/runner-credential-keys.js +47 -0
- package/dist/shared/runner-credential-keys.js.map +1 -0
- package/dist/shared/synthesized-attachment.d.ts +4 -4
- package/dist/shared/synthesized-attachment.js +4 -4
- package/dist/workflow-engine/resolve.d.ts +19 -1
- package/dist/workflow-engine/resolve.js +37 -2
- package/dist/workflow-engine/resolve.js.map +1 -1
- package/dist/workflows/connect-mcp-server.js +2 -0
- package/dist/workflows/connect-mcp-server.js.map +1 -1
- package/dist/workflows/types.d.ts +8 -0
- package/package.json +3 -4
- package/src/__test-utils__/__tests__/vitest-global-setup.test.ts +37 -0
- package/src/__test-utils__/fake-artifact-storage.ts +10 -1
- package/src/__test-utils__/vitest-global-setup.ts +50 -0
- package/src/__tests__/bootstrap.test.ts +43 -0
- package/src/__tests__/encryption-codec.test.ts +53 -0
- package/src/__tests__/preflight.test.ts +15 -0
- package/src/activities/__tests__/discover-mcp-server.test.ts +39 -1
- package/src/activities/__tests__/error-classifier.test.ts +94 -2
- package/src/activities/__tests__/run-command.test.ts +221 -0
- package/src/activities/discover-mcp-server.ts +16 -2
- package/src/activities/emit-event.ts +65 -21
- package/src/activities/execute-cursor/__tests__/attachment-resolver.test.ts +63 -3
- package/src/activities/execute-cursor/__tests__/build-prompt.test.ts +173 -31
- package/src/activities/execute-cursor/__tests__/model-pricing.test.ts +62 -1
- package/src/activities/execute-cursor/__tests__/turn-recovery.test.ts +160 -0
- package/src/activities/execute-cursor/attachment-resolver.ts +24 -0
- package/src/activities/execute-cursor/blueprint-resolver.ts +1 -10
- package/src/activities/execute-cursor/error-classifier.ts +40 -3
- package/src/activities/execute-cursor/index.ts +175 -74
- package/src/activities/execute-cursor/model-pricing-data.ts +22 -3
- package/src/activities/execute-cursor/prompt-builder.ts +89 -22
- package/src/activities/execute-cursor/turn-recovery.ts +208 -0
- package/src/activities/execute-deep-agent/__tests__/attachment-injector.test.ts +105 -0
- package/src/activities/execute-deep-agent/__tests__/hitl-reject.test.ts +0 -2
- package/src/activities/execute-deep-agent/__tests__/hitl-resume-approve-all.test.ts +0 -1
- package/src/activities/execute-deep-agent/__tests__/hitl-resume-history.test.ts +0 -1
- package/src/activities/execute-deep-agent/__tests__/mcp-gate.test.ts +2 -7
- package/src/activities/execute-deep-agent/__tests__/plan-mode-path-normalization.test.ts +174 -0
- package/src/activities/execute-deep-agent/__tests__/prompt-builder.test.ts +71 -0
- package/src/activities/execute-deep-agent/__tests__/sequential-gate-resume.test.ts +0 -1
- package/src/activities/execute-deep-agent/__tests__/shell-env.test.ts +24 -10
- package/src/activities/execute-deep-agent/__tests__/subagent-plan-mode-permissions.test.ts +22 -17
- package/src/activities/execute-deep-agent/attachment-injector.ts +20 -1
- package/src/activities/execute-deep-agent/index.ts +0 -19
- package/src/activities/execute-deep-agent/mcp-gate.ts +0 -3
- package/src/activities/execute-deep-agent/prompt-builder.ts +27 -15
- package/src/activities/execute-deep-agent/setup.ts +22 -73
- package/src/activities/execute-deep-agent/shell-env.ts +8 -9
- package/src/activities/execute-deep-agent/subagent-transformer.ts +7 -1
- package/src/activities/execute-deep-agent/subagent-wiring.ts +26 -3
- package/src/activities/hydrate-workflow-execution.ts +8 -5
- package/src/activities/run-command.ts +25 -12
- package/src/activities/run-env.ts +79 -0
- package/src/bootstrap.ts +5 -0
- package/src/client/__tests__/stigmer-client.test.ts +104 -5
- package/src/client/stigmer-client.ts +128 -29
- package/src/config.ts +6 -5
- package/src/encryption/config.ts +87 -23
- package/src/middleware/__tests__/path-normalization.test.ts +140 -0
- package/src/middleware/index.ts +8 -0
- package/src/middleware/path-normalization.ts +125 -0
- package/src/middleware/types.ts +11 -0
- package/src/payload-codecs.ts +8 -2
- package/src/runner-manager.ts +21 -3
- package/src/runner.ts +7 -3
- package/src/shared/__tests__/artifact-storage.test.ts +154 -2
- package/src/shared/__tests__/attachment-download-urls.test.ts +70 -0
- package/src/shared/__tests__/channel-attachment.test.ts +2 -2
- package/src/shared/__tests__/conversation-catchup.test.ts +24 -0
- package/src/shared/__tests__/http-retry.test.ts +5 -4
- package/src/shared/__tests__/mcp-manager.test.ts +53 -13
- package/src/shared/__tests__/mcp-schema-sanitizer.test.ts +267 -0
- package/src/shared/__tests__/model-client.test.ts +46 -0
- package/src/shared/__tests__/model-pricing.test.ts +62 -2
- package/src/shared/__tests__/model-registry.test.ts +22 -0
- package/src/shared/__tests__/synthesized-attachment.test.ts +19 -41
- package/src/shared/artifact-storage.ts +86 -10
- package/src/shared/attachment-download-urls.ts +98 -0
- package/src/shared/channel-attachment.ts +1 -1
- package/src/shared/checkpointer/http-saver.ts +15 -60
- package/src/shared/conversation-attachment.ts +2 -3
- package/src/shared/conversation-catchup.ts +39 -6
- package/src/shared/grpc-retry.ts +5 -1
- package/src/shared/http-retry.ts +98 -9
- package/src/shared/mcp-manager.ts +35 -4
- package/src/shared/mcp-schema-sanitizer.ts +224 -0
- package/src/shared/mcp-transport-guard.ts +2 -2
- package/src/shared/model-client.ts +21 -3
- package/src/shared/model-pricing-data.ts +22 -3
- package/src/shared/model-registry.ts +7 -2
- package/src/shared/plan-mode-permissions.ts +7 -0
- package/src/shared/registry-endpoint.ts +27 -0
- package/src/shared/runner-credential-keys.ts +46 -0
- package/src/shared/synthesized-attachment.ts +4 -4
- package/src/workflow-engine/__tests__/tasks/emit-event.test.ts +127 -49
- package/src/workflow-engine/resolve.ts +48 -2
- package/src/workflows/__tests__/connect-mcp-server.test.ts +25 -0
- package/src/workflows/connect-mcp-server.ts +2 -0
- package/src/workflows/types.ts +8 -0
- package/dist/activities/execute-cursor/mcp-config.d.ts +0 -30
- package/dist/activities/execute-cursor/mcp-config.js +0 -39
- package/dist/activities/execute-cursor/mcp-config.js.map +0 -1
- package/dist/shared/datastore-attachment.d.ts +0 -99
- package/dist/shared/datastore-attachment.js +0 -184
- package/dist/shared/datastore-attachment.js.map +0 -1
- package/src/activities/execute-cursor/mcp-config.ts +0 -66
- package/src/activities/execute-deep-agent/__tests__/datastore-degradation.test.ts +0 -104
- package/src/shared/__tests__/datastore-attachment.test.ts +0 -293
- package/src/shared/datastore-attachment.ts +0 -209
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Workspace-relative path normalization for permission-rule-bearing graphs
|
|
3
|
+
* (issue #429).
|
|
4
|
+
*
|
|
5
|
+
* deepagents' permission enforcement canonicalizes tool-call paths BEFORE any
|
|
6
|
+
* rule or backend runs, and its validation refuses non-absolute paths — on
|
|
7
|
+
* EVERY filesystem tool call once a graph carries any permission rules, reads
|
|
8
|
+
* included. Plan mode is the only rule-bearing production configuration
|
|
9
|
+
* (shared/plan-mode-permissions.ts), so there a workspace-relative path —
|
|
10
|
+
* the shape the multi-workspace prompt explicitly mandates, and one models
|
|
11
|
+
* routinely choose in single-workspace sessions — fails with
|
|
12
|
+
* `path must be absolute` instead of just working, burning tool rounds until
|
|
13
|
+
* the model adapts by switching to absolute paths.
|
|
14
|
+
*
|
|
15
|
+
* This middleware repairs the contract at our own seam: it rewrites
|
|
16
|
+
* workspace-relative paths on the deepagents built-in filesystem tools to
|
|
17
|
+
* workspace-absolute before the tool (and therefore enforcement) runs. The
|
|
18
|
+
* write-deny rule then fires as designed and reads succeed on the first try.
|
|
19
|
+
* Rule-less (act-mode) graphs never install it — the legacy backend already
|
|
20
|
+
* resolves relative paths under the workspace root, so act mode keeps a
|
|
21
|
+
* byte-zero delta.
|
|
22
|
+
*
|
|
23
|
+
* Invariant — nothing becomes newly reachable: only paths whose resolution
|
|
24
|
+
* stays INSIDE the workspace root are rewritten. Escaping relatives (`../x`)
|
|
25
|
+
* and `~`-carrying paths are left raw so today's validation refusal keeps
|
|
26
|
+
* speaking (a naive join would resolve `..` away and smuggle an out-of-root
|
|
27
|
+
* read past validation), and absolute paths pass through byte-untouched.
|
|
28
|
+
* The middleware converts false errors into correct behavior — never a
|
|
29
|
+
* refusal into an allowance the rules didn't decide.
|
|
30
|
+
*
|
|
31
|
+
* Tool matching is by bare built-in name, the house doctrine (an MCP server
|
|
32
|
+
* is not expected to shadow a built-in name — see shared/tool-kind.ts); the
|
|
33
|
+
* rewrite touches only the tool's path-bearing argument, never glob/grep
|
|
34
|
+
* patterns. Install FIRST in the stack so every downstream middleware
|
|
35
|
+
* (approval gate, error hints, otel spans) observes canonical paths.
|
|
36
|
+
*/
|
|
37
|
+
import { isAbsolute, relative } from "node:path";
|
|
38
|
+
import { resolveWorkspacePath } from "../shared/file-change.js";
|
|
39
|
+
/**
|
|
40
|
+
* The path-bearing argument of each deepagents built-in filesystem tool.
|
|
41
|
+
* `ls`/`glob`/`grep` take a base directory `path` (defaulting to "/" when
|
|
42
|
+
* omitted — absolute, so untouched here); the file tools take `file_path`.
|
|
43
|
+
* Confirmed against the installed deepagents' tool definitions.
|
|
44
|
+
*/
|
|
45
|
+
const PATH_ARG_BY_TOOL = new Map([
|
|
46
|
+
["ls", "path"],
|
|
47
|
+
["glob", "path"],
|
|
48
|
+
["grep", "path"],
|
|
49
|
+
["read_file", "file_path"],
|
|
50
|
+
["write_file", "file_path"],
|
|
51
|
+
["edit_file", "file_path"],
|
|
52
|
+
]);
|
|
53
|
+
/**
|
|
54
|
+
* Rewrite `raw` to its workspace-absolute form, or return undefined when the
|
|
55
|
+
* value must be left untouched (absolute already, `~`-carrying, or escaping
|
|
56
|
+
* the workspace root). Exported for direct unit testing of the mapping table.
|
|
57
|
+
*/
|
|
58
|
+
export function normalizeWorkspacePathArg(raw, rootDir) {
|
|
59
|
+
if (raw.length === 0 || isAbsolute(raw))
|
|
60
|
+
return undefined;
|
|
61
|
+
// Upstream validation refuses `~` segments even in absolute paths, so a
|
|
62
|
+
// rewrite could not make such a call succeed — leave the raw shape (and
|
|
63
|
+
// therefore the honest refusal) intact.
|
|
64
|
+
if (raw.split("/").includes("~"))
|
|
65
|
+
return undefined;
|
|
66
|
+
const { absolutePath } = resolveWorkspacePath(raw, rootDir, false);
|
|
67
|
+
// No-new-reachability guard: `join` inside the resolver normalizes `..`
|
|
68
|
+
// segments away, so an escaping relative would otherwise pass upstream
|
|
69
|
+
// validation as a clean out-of-root absolute path. Today that shape is
|
|
70
|
+
// refused; keep it that way.
|
|
71
|
+
const rel = relative(rootDir, absolutePath);
|
|
72
|
+
if (rel.startsWith("..") || isAbsolute(rel))
|
|
73
|
+
return undefined;
|
|
74
|
+
return absolutePath;
|
|
75
|
+
}
|
|
76
|
+
/**
|
|
77
|
+
* Create middleware that normalizes workspace-relative paths on the built-in
|
|
78
|
+
* filesystem tools before permission enforcement sees them.
|
|
79
|
+
*
|
|
80
|
+
* Installed only on graphs that carry filesystem permission rules — derive
|
|
81
|
+
* the install condition from the same expression that supplies the rules
|
|
82
|
+
* (setup.ts / compileSubagents) so the rules and their normalization shim
|
|
83
|
+
* cannot drift apart.
|
|
84
|
+
*/
|
|
85
|
+
export function createPathNormalizationMiddleware(config) {
|
|
86
|
+
const { rootDir } = config;
|
|
87
|
+
return {
|
|
88
|
+
name: "PathNormalizationMiddleware",
|
|
89
|
+
wrapToolCall(request, handler) {
|
|
90
|
+
const argKey = PATH_ARG_BY_TOOL.get(request.toolCall.name);
|
|
91
|
+
if (!argKey)
|
|
92
|
+
return handler(request);
|
|
93
|
+
const raw = request.toolCall.args[argKey];
|
|
94
|
+
if (typeof raw !== "string")
|
|
95
|
+
return handler(request);
|
|
96
|
+
const normalized = normalizeWorkspacePathArg(raw, rootDir);
|
|
97
|
+
if (normalized === undefined)
|
|
98
|
+
return handler(request);
|
|
99
|
+
return handler({
|
|
100
|
+
...request,
|
|
101
|
+
toolCall: {
|
|
102
|
+
...request.toolCall,
|
|
103
|
+
args: { ...request.toolCall.args, [argKey]: normalized },
|
|
104
|
+
},
|
|
105
|
+
});
|
|
106
|
+
},
|
|
107
|
+
};
|
|
108
|
+
}
|
|
109
|
+
//# sourceMappingURL=path-normalization.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"path-normalization.js","sourceRoot":"","sources":["../../src/middleware/path-normalization.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AAEH,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AACjD,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAGhE;;;;;GAKG;AACH,MAAM,gBAAgB,GAAgC,IAAI,GAAG,CAAC;IAC5D,CAAC,IAAI,EAAE,MAAM,CAAC;IACd,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,WAAW,EAAE,WAAW,CAAC;IAC1B,CAAC,YAAY,EAAE,WAAW,CAAC;IAC3B,CAAC,WAAW,EAAE,WAAW,CAAC;CAC3B,CAAC,CAAC;AAOH;;;;GAIG;AACH,MAAM,UAAU,yBAAyB,CACvC,GAAW,EACX,OAAe;IAEf,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,IAAI,UAAU,CAAC,GAAG,CAAC;QAAE,OAAO,SAAS,CAAC;IAC1D,wEAAwE;IACxE,wEAAwE;IACxE,wCAAwC;IACxC,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC;QAAE,OAAO,SAAS,CAAC;IAEnD,MAAM,EAAE,YAAY,EAAE,GAAG,oBAAoB,CAAC,GAAG,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;IAEnE,wEAAwE;IACxE,uEAAuE;IACvE,uEAAuE;IACvE,6BAA6B;IAC7B,MAAM,GAAG,GAAG,QAAQ,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IAC5C,IAAI,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,GAAG,CAAC;QAAE,OAAO,SAAS,CAAC;IAE9D,OAAO,YAAY,CAAC;AACtB,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,iCAAiC,CAC/C,MAA+B;IAE/B,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC;IAE3B,OAAO;QACL,IAAI,EAAE,6BAA6B;QAEnC,YAAY,CAAC,OAAO,EAAE,OAAO;YAC3B,MAAM,MAAM,GAAG,gBAAgB,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAC3D,IAAI,CAAC,MAAM;gBAAE,OAAO,OAAO,CAAC,OAAO,CAAC,CAAC;YAErC,MAAM,GAAG,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAC1C,IAAI,OAAO,GAAG,KAAK,QAAQ;gBAAE,OAAO,OAAO,CAAC,OAAO,CAAC,CAAC;YAErD,MAAM,UAAU,GAAG,yBAAyB,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;YAC3D,IAAI,UAAU,KAAK,SAAS;gBAAE,OAAO,OAAO,CAAC,OAAO,CAAC,CAAC;YAEtD,OAAO,OAAO,CAAC;gBACb,GAAG,OAAO;gBACV,QAAQ,EAAE;oBACR,GAAG,OAAO,CAAC,QAAQ;oBACnB,IAAI,EAAE,EAAE,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE,UAAU,EAAE;iBACzD;aACF,CAAC,CAAC;QACL,CAAC;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -83,6 +83,8 @@ export interface OtelSpansConfig {
|
|
|
83
83
|
}
|
|
84
84
|
import type { ApprovalGateConfig } from "./approval-gate.js";
|
|
85
85
|
export type { ApprovalGateConfig };
|
|
86
|
+
import type { PathNormalizationConfig } from "./path-normalization.js";
|
|
87
|
+
export type { PathNormalizationConfig };
|
|
86
88
|
/**
|
|
87
89
|
* Top-level configuration for buildMiddlewareStack().
|
|
88
90
|
* All sections are optional — the factory applies sensible defaults.
|
|
@@ -94,4 +96,10 @@ export interface MiddlewareStackConfig {
|
|
|
94
96
|
readonly costCap?: CostCapConfig | null;
|
|
95
97
|
readonly otelSpans?: Partial<OtelSpansConfig>;
|
|
96
98
|
readonly approvalGate?: ApprovalGateConfig | null;
|
|
99
|
+
/**
|
|
100
|
+
* Workspace-relative path normalization (issue #429). Set iff the graph
|
|
101
|
+
* carries filesystem permission rules — derive from the same expression
|
|
102
|
+
* that supplies the rules so the two cannot drift apart.
|
|
103
|
+
*/
|
|
104
|
+
readonly pathNormalization?: PathNormalizationConfig | null;
|
|
97
105
|
}
|
package/dist/payload-codecs.d.ts
CHANGED
|
@@ -13,4 +13,5 @@
|
|
|
13
13
|
*/
|
|
14
14
|
import type { PayloadCodec } from "@temporalio/common";
|
|
15
15
|
import type { Config } from "./config.js";
|
|
16
|
-
|
|
16
|
+
import type { BootstrapKeyMaterial } from "./encryption/config.js";
|
|
17
|
+
export declare function createPayloadCodecs(config: Config, bootstrapKeys?: BootstrapKeyMaterial): Promise<PayloadCodec[] | undefined>;
|
package/dist/payload-codecs.js
CHANGED
|
@@ -11,13 +11,17 @@
|
|
|
11
11
|
* relocates to object storage are already ciphertext)
|
|
12
12
|
* decode: claim-check → decrypt (restore the blob, then decrypt)
|
|
13
13
|
*/
|
|
14
|
-
export async function createPayloadCodecs(config) {
|
|
14
|
+
export async function createPayloadCodecs(config, bootstrapKeys) {
|
|
15
15
|
const codecs = [];
|
|
16
16
|
const { loadPayloadEncryptionConfig, EncryptionPayloadCodec } = await import("./encryption/index.js");
|
|
17
|
-
|
|
17
|
+
// Env-configured keys win outright; server-managed (bootstrap) keys apply
|
|
18
|
+
// only when the env is silent — see encryption/config.ts for the rationale.
|
|
19
|
+
const encryptionConfig = loadPayloadEncryptionConfig(bootstrapKeys);
|
|
18
20
|
if (encryptionConfig) {
|
|
19
21
|
codecs.push(new EncryptionPayloadCodec(encryptionConfig));
|
|
20
|
-
|
|
22
|
+
const source = process.env.STIGMER_PAYLOAD_ENCRYPTION_KEY ? "env" : "bootstrap";
|
|
23
|
+
console.log(`[runner] Payload encryption enabled (source=${source}, ` +
|
|
24
|
+
`key_id=${encryptionConfig.primary.keyId}` +
|
|
21
25
|
(encryptionConfig.secondary
|
|
22
26
|
? `, secondary_key_id=${encryptionConfig.secondary.keyId})`
|
|
23
27
|
: ")"));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"payload-codecs.js","sourceRoot":"","sources":["../src/payload-codecs.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;
|
|
1
|
+
{"version":3,"file":"payload-codecs.js","sourceRoot":"","sources":["../src/payload-codecs.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAMH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,MAAc,EACd,aAAoC;IAEpC,MAAM,MAAM,GAAmB,EAAE,CAAC;IAElC,MAAM,EAAE,2BAA2B,EAAE,sBAAsB,EAAE,GAAG,MAAM,MAAM,CAC1E,uBAAuB,CACxB,CAAC;IACF,0EAA0E;IAC1E,4EAA4E;IAC5E,MAAM,gBAAgB,GAAG,2BAA2B,CAAC,aAAa,CAAC,CAAC;IACpE,IAAI,gBAAgB,EAAE,CAAC;QACrB,MAAM,CAAC,IAAI,CAAC,IAAI,sBAAsB,CAAC,gBAAgB,CAAC,CAAC,CAAC;QAC1D,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC;QAChF,OAAO,CAAC,GAAG,CACT,+CAA+C,MAAM,IAAI;YACvD,UAAU,gBAAgB,CAAC,OAAO,CAAC,KAAK,EAAE;YAC1C,CAAC,gBAAgB,CAAC,SAAS;gBACzB,CAAC,CAAC,sBAAsB,gBAAgB,CAAC,SAAS,CAAC,KAAK,GAAG;gBAC3D,CAAC,CAAC,GAAG,CAAC,CACX,CAAC;IACJ,CAAC;IAED,MAAM,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,GAAG,MAAM,MAAM,CACnE,uBAAuB,CACxB,CAAC;IACF,MAAM,gBAAgB,GAAG,oBAAoB,EAAE,CAAC;IAChD,IAAI,gBAAgB,CAAC,OAAO,EAAE,CAAC;QAC7B,MAAM,EAAE,yBAAyB,EAAE,qBAAqB,EAAE,GAAG,MAAM,MAAM,CACvE,8BAA8B,CAC/B,CAAC;QACF,MAAM,aAAa,GAAG,yBAAyB,CAAC,MAAM,CAAC,CAAC;QACxD,MAAM,OAAO,GAAG,qBAAqB,CAAC,aAAa,CAAC,CAAC;QACrD,MAAM,CAAC,IAAI,CAAC,IAAI,sBAAsB,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC,CAAC;QACnE,OAAO,CAAC,GAAG,CACT,0CAA0C,gBAAgB,CAAC,cAAc,KAAK;YAC5E,eAAe,gBAAgB,CAAC,kBAAkB,IAAI;YACtD,WAAW,aAAa,CAAC,IAAI,GAAG,CACnC,CAAC;IACJ,CAAC;IAED,OAAO,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;AAChD,CAAC"}
|
package/dist/runner-manager.js
CHANGED
|
@@ -133,8 +133,10 @@ export async function createStigmerRunnerManager(options) {
|
|
|
133
133
|
// Resolve the runner bootstrap after the http2 patch is in place (discovery
|
|
134
134
|
// dials the control plane through connect-node). An explicit address wins;
|
|
135
135
|
// otherwise a token triggers control-plane discovery; otherwise localhost.
|
|
136
|
-
// Must happen before createAllActivities so
|
|
137
|
-
//
|
|
136
|
+
// Must happen before createAllActivities so the activities' Config carries
|
|
137
|
+
// the resolved coordinates. Only the worker connection dials Temporal — no
|
|
138
|
+
// activity does (emit-event, the last one, now routes signals through the
|
|
139
|
+
// server's SendSignal lane; see oss#517).
|
|
138
140
|
const bootstrap = await resolveRunnerBootstrap({
|
|
139
141
|
explicitAddress: options.temporalAddress,
|
|
140
142
|
explicitNamespace: options.temporalNamespace,
|
|
@@ -180,7 +182,19 @@ export async function createStigmerRunnerManager(options) {
|
|
|
180
182
|
console.warn(`[runner-manager] Artifact store: could not resolve config for boot log: ${err}`);
|
|
181
183
|
}
|
|
182
184
|
const { createPayloadCodecs } = await import("./payload-codecs.js");
|
|
183
|
-
|
|
185
|
+
// Server-managed payload-encryption keys (cloud desktop runners) ride the
|
|
186
|
+
// bootstrap response; an env-configured key still wins inside the loader.
|
|
187
|
+
// A cloud server that mints runner tokens but returns no key predates key
|
|
188
|
+
// management — payloads then rest plaintext in cloud Temporal history, which
|
|
189
|
+
// deserves a diagnosable warning rather than silence.
|
|
190
|
+
const payloadCodecs = await createPayloadCodecs(config, bootstrap.payloadEncryption);
|
|
191
|
+
if (!bootstrap.payloadEncryption &&
|
|
192
|
+
bootstrap.runnerAccessToken &&
|
|
193
|
+
!process.env.STIGMER_PAYLOAD_ENCRYPTION_KEY) {
|
|
194
|
+
console.warn("[runner-manager] Server minted a runner token but returned no payload " +
|
|
195
|
+
"encryption key; Temporal payloads will be plaintext (server predates " +
|
|
196
|
+
"runner key management?)");
|
|
197
|
+
}
|
|
184
198
|
const connection = await NativeConnection.connect({
|
|
185
199
|
address: config.temporalAddress,
|
|
186
200
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runner-manager.js","sourceRoot":"","sources":["../src/runner-manager.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACpC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EACL,gBAAgB,EAChB,MAAM,EACN,kBAAkB,GAInB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,uCAAuC,EAAE,sCAAsC,EAAE,iCAAiC,EAAE,MAAM,aAAa,CAAC;AACjJ,4EAA4E;AAC5E,yEAAyE;AACzE,4EAA4E;AAC5E,OAAO,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AAEzD,OAAO,EAAE,qBAAqB,EAAE,gCAAgC,EAAE,MAAM,sBAAsB,CAAC;AAC/F,OAAO,EAAE,sBAAsB,EAAE,wBAAwB,EAAE,MAAM,gBAAgB,CAAC;AAClF,OAAO,EAAE,0BAA0B,EAAE,MAAM,gBAAgB,CAAC;AAC5D,OAAO,EAAE,4BAA4B,EAAE,MAAM,+BAA+B,CAAC;AAC7E,4EAA4E;AAC5E,gFAAgF;AAChF,iFAAiF;AACjF,oDAAoD;AACpD,OAAO,EACL,sBAAsB,EACtB,uBAAuB,EACvB,qBAAqB,EACrB,qBAAqB,EACrB,WAAW,GACZ,MAAM,gBAAgB,CAAC;AAExB,MAAM,oBAAoB,GAAG,UAAU,CAAC;AACxC,MAAM,mBAAmB,GAAG,SAAS,CAAC;AACtC,6EAA6E;AAC7E,2EAA2E;AAC3E,0EAA0E;AAC1E,MAAM,yBAAyB,GAAG,UAAU,CAAC;AAE7C;;;;GAIG;AACH,MAAM,uBAAuB,GAAG,IAAI,GAAG,EAAuB,CAAC;AAE/D,MAAM,UAAU,yBAAyB,CAAC,SAAiB;IACzD,OAAO,uBAAuB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;AAChD,CAAC;AA6HD;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,CAAC,KAAK,UAAU,0BAA0B,CAC9C,OAA6B;IAE7B,sBAAsB,CAAC,OAAO,CAAC,CAAC;IAEhC,MAAM,EAAE,iCAAiC,EAAE,GAAG,MAAM,MAAM,CACxD,wDAAwD,CACzD,CAAC;IACF,iCAAiC,EAAE,CAAC;IAEpC,2EAA2E;IAC3E,0EAA0E;IAC1E,2EAA2E;IAC3E,6EAA6E;IAC7E,8EAA8E;IAC9E,qBAAqB;IACrB,MAAM,QAAQ,GAAG,EAAE,OAAO,EAAE,OAAO,CAAC,YAAY,IAAI,IAAI,EAAE,CAAC;IAC3D,4EAA4E;IAC5E,8EAA8E;IAC9E,+EAA+E;IAC/E,sEAAsE;IACtE,8EAA8E;IAC9E,4EAA4E;IAC5E,+EAA+E;IAC/E,qEAAqE;IACrE,MAAM,cAAc,GAAG,EAAE,OAAO,EAAE,OAAO,CAAC,YAAY,IAAI,IAAI,EAAE,CAAC;IACjE,MAAM,UAAU,GAAG,yBAAyB,CAAC,OAAO,EAAE,QAAQ,EAAE,cAAc,CAAC,CAAC;IAEhF,0BAA0B,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;IAErD,6EAA6E;IAC7E,8EAA8E;IAC9E,4EAA4E;IAC5E,8EAA8E;IAC9E,8EAA8E;IAC9E,uEAAuE;IACvE,gFAAgF;IAEhF,2DAA2D;IAC3D,MAAM,EAAE,uBAAuB,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,GAAG,MAAM,MAAM,CAC3F,kDAAkD,CACnD,CAAC;IACF,uBAAuB,CAAC;QACtB,aAAa,EAAE,UAAU,CAAC,aAAa,IAAI,SAAS;QACpD,YAAY,EAAE,UAAU,CAAC,YAAY,IAAI,SAAS;KACnD,CAAC,CAAC;IAEH,kFAAkF;IAClF,MAAM,EAAE,uBAAuB,EAAE,2BAA2B,EAAE,yBAAyB,EAAE,GAAG,MAAM,MAAM,CACtG,kDAAkD,CACnD,CAAC;IACF,uBAAuB,CAAC;QACtB,aAAa,EAAE,UAAU,CAAC,aAAa,IAAI,SAAS;QACpD,YAAY,EAAE,UAAU,CAAC,YAAY,IAAI,SAAS;KACnD,CAAC,CAAC;IACH,yEAAyE;IACzE,2EAA2E;IAC3E,oDAAoD;IACpD,MAAM,yBAAyB,EAAE,CAAC;IAClC,QAAQ,CAAC,wBAAwB,CAAC,CAAC;IAEnC,2EAA2E;IAC3E,8EAA8E;IAC9E,2EAA2E;IAC3E,6EAA6E;IAC7E,sDAAsD;IACtD,MAAM,gBAAgB,GAAG,4BAA4B,CAAC;QACpD,eAAe,EAAE,CAAC,KAAK,EAAE,EAAE;YACzB,sBAAsB,CAAC,KAAK,CAAC,CAAC;YAC9B,2BAA2B,CAAC,KAAK,CAAC,CAAC;YACnC,0EAA0E;YAC1E,2EAA2E;YAC3E,cAAc,CAAC,OAAO,GAAG,KAAK,CAAC;QACjC,CAAC;QACD,MAAM,EAAE,GAAG,EAAE,CACX,wBAAwB,CAAC;YACvB,KAAK,EAAE,QAAQ,CAAC,OAAO;YACvB,eAAe,EAAE,UAAU,CAAC,sBAAsB;SACnD,CAAC;KACL,CAAC,CAAC;IAEH,4EAA4E;IAC5E,2EAA2E;IAC3E,2EAA2E;IAC3E,yEAAyE;IACzE,2DAA2D;IAC3D,MAAM,SAAS,GAAG,MAAM,sBAAsB,CAAC;QAC7C,eAAe,EAAE,OAAO,CAAC,eAAe;QACxC,iBAAiB,EAAE,OAAO,CAAC,iBAAiB;QAC5C,KAAK,EAAE,OAAO,CAAC,YAAY;QAC3B,eAAe,EAAE,UAAU,CAAC,sBAAsB;KACnD,CAAC,CAAC;IACH,MAAM,MAAM,GAAW;QACrB,GAAG,UAAU;QACb,eAAe,EAAE,SAAS,CAAC,eAAe;QAC1C,iBAAiB,EAAE,SAAS,CAAC,iBAAiB;KAC/C,CAAC;IACF,QAAQ,CAAC,oBAAoB,CAAC,CAAC;IAE/B,2EAA2E;IAC3E,sEAAsE;IACtE,IAAI,SAAS,CAAC,iBAAiB,EAAE,CAAC;QAChC,gBAAgB,CAAC,gBAAgB,CAC/B,SAAS,CAAC,iBAAiB,EAC3B,SAAS,CAAC,iCAAiC,CAC5C,CAAC;QACF,OAAO,CAAC,GAAG,CAAC,4DAA4D,CAAC,CAAC;IAC5E,CAAC;SAAM,IAAI,UAAU,CAAC,aAAa,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;QACxD,6EAA6E;QAC7E,4EAA4E;QAC5E,0EAA0E;QAC1E,mDAAmD;QACnD,OAAO,CAAC,IAAI,CACV,6EAA6E;YAC3E,4DAA4D,CAC/D,CAAC;IACJ,CAAC;IAED,MAAM,EAAE,sBAAsB,EAAE,GAAG,MAAM,MAAM,CAC7C,kDAAkD,CACnD,CAAC;IACF,sBAAsB,CAAC,mBAAmB,EAAE,CAAC,CAAC;IAE9C,MAAM,UAAU,GAAG,MAAM,mBAAmB,CAAC,MAAM,CAAC,CAAC;IACrD,QAAQ,CAAC,qBAAqB,CAAC,CAAC;IAChC,6EAA6E;IAC7E,2EAA2E;IAC3E,iEAAiE;IACjE,IAAI,CAAC;QACH,MAAM,EAAE,yBAAyB,EAAE,GAAG,MAAM,MAAM,CAChD,8BAA8B,CAC/B,CAAC;QACF,MAAM,WAAW,GAAG,yBAAyB,CAAC,MAAM,CAAC,CAAC;QACtD,OAAO,CAAC,GAAG,CACT,yCAAyC,WAAW,CAAC,IAAI,EAAE;YACzD,CAAC,WAAW,CAAC,IAAI,KAAK,OAAO;gBAC3B,CAAC,CAAC,WAAW,WAAW,CAAC,SAAS,EAAE;gBACpC,CAAC,CAAC,YAAY,WAAW,CAAC,aAAa,IAAI,SAAS,EAAE,CAAC,CAC5D,CAAC;IACJ,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,IAAI,CACV,2EAA2E,GAAG,EAAE,CACjF,CAAC;IACJ,CAAC;IACD,MAAM,EAAE,mBAAmB,EAAE,GAAG,MAAM,MAAM,CAAC,qBAAqB,CAAC,CAAC;IACpE,MAAM,aAAa,GAAG,MAAM,mBAAmB,CAAC,MAAM,CAAC,CAAC;IAExD,MAAM,UAAU,GAAG,MAAM,gBAAgB,CAAC,OAAO,CAAC;QAChD,OAAO,EAAE,MAAM,CAAC,eAAe;KAChC,CAAC,CAAC;IACH,QAAQ,CAAC,mBAAmB,CAAC,CAAC;IAE9B,MAAM,iBAAiB,GAAG,MAAM,sBAAsB,EAAE,CAAC;IAEzD,6EAA6E;IAC7E,4EAA4E;IAC5E,MAAM,cAAc,GAAG,qBAAqB,EAAE,CAAC;IAC/C,IAAI,cAAoC,CAAC;IACzC,IAAI,cAAc,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;QACvC,OAAO,CAAC,GAAG,CAAC,qDAAqD,cAAc,CAAC,QAAQ,EAAE,CAAC,CAAC;QAC5F,cAAc,GAAG,EAAE,QAAQ,EAAE,cAAc,CAAC,QAAQ,EAAE,CAAC;IACzD,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,GAAG,CAAC,gDAAgD,CAAC,CAAC;QAC9D,cAAc,GAAG,MAAM,kBAAkB,CAAC;YACxC,aAAa,EAAE,cAAc,CAAC,aAAa;YAC3C,0BAA0B,EAAE,iBAAiB,CAAC,0BAA0B;SACzE,CAAC,CAAC;QACH,OAAO,CAAC,GAAG,CAAC,qDAAqD,CAAC,CAAC;IACrE,CAAC;IACD,QAAQ,CAAC,uBAAuB,CAAC,CAAC;IAElC,MAAM,QAAQ,GAAG,IAAI,GAAG,EAA0B,CAAC;IACnD,MAAM,kBAAkB,GAAG,IAAI,GAAG,EAA0B,CAAC;IAC7D,MAAM,eAAe,GAAG,IAAI,GAAG,EAA2B,CAAC;IAC3D,2EAA2E;IAC3E,IAAI,WAAW,GAA0D,IAAI,CAAC;IAC9E,IAAI,YAAY,GAAG,KAAK,CAAC;IAEzB,KAAK,UAAU,mBAAmB,CAAC,SAAiB;QAClD,MAAM,kBAAkB,GAAG,IAAI,eAAe,EAAE,CAAC;QACjD,eAAe,CAAC,GAAG,CAAC,SAAS,EAAE,kBAAkB,CAAC,CAAC;QACnD,uBAAuB,CAAC,GAAG,CAAC,SAAS,EAAE,kBAAkB,CAAC,MAAM,CAAC,CAAC;QAElE,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC;YACjC,UAAU;YACV,SAAS,EAAE,MAAM,CAAC,iBAAiB;YACnC,SAAS;YACT,UAAU;YACV,cAAc;YACd,mCAAmC,EAAE,MAAM,CAAC,uBAAuB;YACnE,aAAa,EAAE,aAAa,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,SAAS;YACpE,KAAK,EAAE,iBAAiB,CAAC,KAAK;YAC9B,YAAY,EAAE,iBAAiB,CAAC,YAAY;SAC7C,CAAC,CAAC;QAEH,MAAM,UAAU,GAAG,MAAM,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;YAC5C,OAAO,CAAC,KAAK,CACX,qCAAqC,SAAS,qBAAqB,EACnE,GAAG,CACJ,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,kBAAkB,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC;IACzE,CAAC;IAED;;;;OAIG;IACH,SAAS,mBAAmB,CAC1B,QAAqC,EACrC,EAAU,EACV,SAAiB,EACjB,IAAY;QAEZ,MAAM,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAClC,IAAI,CAAC,QAAQ;YAAE,OAAO,KAAK,CAAC;QAC5B,IAAI,QAAQ,CAAC,YAAY,EAAE,CAAC;YAC1B,QAAQ,CAAC,YAAY,GAAG,KAAK,CAAC;YAC9B,qBAAqB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;YAC5C,OAAO,CAAC,GAAG,CAAC,8BAA8B,IAAI,IAAI,EAAE,+BAA+B,CAAC,CAAC;QACvF,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;OAKG;IACH,KAAK,UAAU,eAAe,CAC5B,QAAqC,EACrC,EAAU,EACV,SAAiB,EACjB,IAAY;QAEZ,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACjC,IAAI,CAAC,OAAO;YAAE,OAAO;QACrB,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;QAC1B,MAAM,OAAO,CAAC,UAAU,CAAC;QACzB,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACpB,eAAe,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAClC,uBAAuB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAC1C,WAAW,CAAC,SAAS,CAAC,CAAC;QACvB,OAAO,CAAC,GAAG,CAAC,4BAA4B,IAAI,IAAI,EAAE,YAAY,QAAQ,CAAC,IAAI,GAAG,CAAC,CAAC;IAClF,CAAC;IAED;;;;;OAKG;IACH,KAAK,UAAU,aAAa,CAC1B,QAAqC,EACrC,EAAU,EACV,SAAiB,EACjB,IAAY;QAEZ,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACjC,IAAI,CAAC,OAAO;YAAE,OAAO;QAErB,IAAI,qBAAqB,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC;YACzC,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;YAC5B,qBAAqB,CAAC,SAAS,EAAE,GAAG,EAAE;gBACpC,mEAAmE;gBACnE,yDAAyD;gBACzD,IAAI,YAAY;oBAAE,OAAO;gBACzB,KAAK,eAAe,CAAC,QAAQ,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;YACtD,CAAC,CAAC,CAAC;YACH,OAAO,CAAC,GAAG,CACT,0CAA0C,IAAI,IAAI,EAAE,KAAK;gBACzD,GAAG,qBAAqB,CAAC,SAAS,CAAC,qDAAqD,CACzF,CAAC;YACF,OAAO;QACT,CAAC;QAED,MAAM,eAAe,CAAC,QAAQ,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;IACvD,CAAC;IAED,OAAO;QACL,KAAK,CAAC,UAAU,CAAC,SAAiB;YAChC,IAAI,YAAY,EAAE,CAAC;gBACjB,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;YACpD,CAAC;YACD,MAAM,SAAS,GAAG,oBAAoB,GAAG,SAAS,CAAC;YACnD,IAAI,mBAAmB,CAAC,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,CAAC,EAAE,CAAC;gBACnE,OAAO;YACT,CAAC;YAED,MAAM,OAAO,GAAG,MAAM,mBAAmB,CAAC,SAAS,CAAC,CAAC;YACrD,QAAQ,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;YACjC,OAAO,CAAC,GAAG,CACT,kCAAkC,SAAS,WAAW,SAAS,YAAY,QAAQ,CAAC,IAAI,GAAG,CAC5F,CAAC;QACJ,CAAC;QAED,KAAK,CAAC,aAAa,CAAC,SAAiB;YACnC,MAAM,aAAa,CACjB,QAAQ,EAAE,SAAS,EAAE,oBAAoB,GAAG,SAAS,EAAE,SAAS,CACjE,CAAC;QACJ,CAAC;QAED,cAAc;YACZ,OAAO,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;QACrC,CAAC;QAED,KAAK,CAAC,oBAAoB,CAAC,WAAmB;YAC5C,IAAI,YAAY,EAAE,CAAC;gBACjB,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;YACpD,CAAC;YACD,MAAM,SAAS,GAAG,mBAAmB,GAAG,WAAW,CAAC;YACpD,IAAI,mBAAmB,CAAC,kBAAkB,EAAE,WAAW,EAAE,SAAS,EAAE,oBAAoB,CAAC,EAAE,CAAC;gBAC1F,OAAO;YACT,CAAC;YAED,MAAM,OAAO,GAAG,MAAM,mBAAmB,CAAC,SAAS,CAAC,CAAC;YACrD,kBAAkB,CAAC,GAAG,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;YAC7C,OAAO,CAAC,GAAG,CACT,6CAA6C,WAAW,WAAW,SAAS,YAAY,kBAAkB,CAAC,IAAI,GAAG,CACnH,CAAC;QACJ,CAAC;QAED,KAAK,CAAC,uBAAuB,CAAC,WAAmB;YAC/C,MAAM,aAAa,CACjB,kBAAkB,EAAE,WAAW,EAAE,mBAAmB,GAAG,WAAW,EAClE,oBAAoB,CACrB,CAAC;QACJ,CAAC;QAED,wBAAwB;YACtB,OAAO,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,CAAC,CAAC;QAC/C,CAAC;QAED,KAAK,CAAC,cAAc,CAAC,QAAgB;YACnC,IAAI,YAAY,EAAE,CAAC;gBACjB,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;YACpD,CAAC;YACD,IAAI,WAAW,EAAE,CAAC;gBAChB,MAAM,IAAI,KAAK,CACb,uCAAuC,WAAW,CAAC,SAAS,KAAK;oBACjE,sCAAsC,CACvC,CAAC;YACJ,CAAC;YACD,MAAM,SAAS,GAAG,yBAAyB,GAAG,QAAQ,CAAC;YACvD,WAAW,GAAG,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC,SAAS,CAAC,EAAE,CAAC;YAC3E,OAAO,CAAC,GAAG,CACT,qDAAqD,SAAS,GAAG,CAClE,CAAC;QACJ,CAAC;QAED,WAAW,CAAC,KAAoB;YAC9B,2EAA2E;YAC3E,0EAA0E;YAC1E,uEAAuE;YACvE,uEAAuE;YACvE,QAAQ,CAAC,OAAO,GAAG,KAAK,CAAC;YACzB,IAAI,KAAK,EAAE,CAAC;gBACV,OAAO,CAAC,GAAG,CAAC,aAAa,GAAG,KAAK,CAAC;YACpC,CAAC;iBAAM,CAAC;gBACN,OAAO,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC;YACnC,CAAC;YACD,gBAAgB,CAAC,0BAA0B,CAAC,KAAK,CAAC,CAAC;YACnD,OAAO,CAAC,GAAG,CAAC,qCAAqC,CAAC,CAAC;QACrD,CAAC;QAED,KAAK,CAAC,QAAQ;YACZ,YAAY,GAAG,IAAI,CAAC;YACpB,gBAAgB,CAAC,IAAI,EAAE,CAAC;YACxB,MAAM,YAAY,GAAG,QAAQ,CAAC,IAAI,GAAG,kBAAkB,CAAC,IAAI,CAAC;YAC7D,OAAO,CAAC,GAAG,CACT,kCAAkC,YAAY,aAAa,QAAQ,CAAC,IAAI,cAAc,kBAAkB,CAAC,IAAI,0BAA0B,CACxI,CAAC;YAEF,MAAM,gBAAgB,GAAG;gBACvB,GAAG,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,CACnC,KAAK,EAAE,CAAC,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE;oBACtB,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;oBAC1B,MAAM,OAAO,CAAC,UAAU,CAAC;oBACzB,OAAO,CAAC,GAAG,CAAC,mCAAmC,EAAE,UAAU,CAAC,CAAC;gBAC/D,CAAC,CACF;gBACD,GAAG,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,CAC7C,KAAK,EAAE,CAAC,EAAE,EAAE,SAAS,CAAC,EAAE,EAAE;oBACxB,SAAS,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;oBAC5B,MAAM,SAAS,CAAC,UAAU,CAAC;oBAC3B,OAAO,CAAC,GAAG,CAAC,8CAA8C,EAAE,UAAU,CAAC,CAAC;gBAC1E,CAAC,CACF;aACF,CAAC;YACF,IAAI,WAAW,EAAE,CAAC;gBAChB,MAAM,OAAO,GAAG,WAAW,CAAC;gBAC5B,gBAAgB,CAAC,IAAI,CAAC,CAAC,KAAK,IAAI,EAAE;oBAChC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;oBAClC,MAAM,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC;oBACjC,OAAO,CAAC,GAAG,CAAC,yCAAyC,OAAO,CAAC,SAAS,WAAW,CAAC,CAAC;gBACrF,CAAC,CAAC,EAAE,CAAC,CAAC;YACR,CAAC;YAED,MAAM,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;YACpC,QAAQ,CAAC,KAAK,EAAE,CAAC;YACjB,kBAAkB,CAAC,KAAK,EAAE,CAAC;YAC3B,WAAW,GAAG,IAAI,CAAC;YACnB,UAAU,CAAC,KAAK,EAAE,CAAC;YACnB,OAAO,CAAC,GAAG,CAAC,yDAAyD,CAAC,CAAC;QACzE,CAAC;KACF,CAAC;AACJ,CAAC;AAED,SAAS,sBAAsB,CAAC,OAA6B;IAC3D,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,CAAC;QAC7B,MAAM,IAAI,KAAK,CACb,wFAAwF,CACzF,CAAC;IACJ,CAAC;IACD,0EAA0E;IAC1E,4EAA4E;IAC5E,8EAA8E;AAChF,CAAC;AAED,MAAM,UAAU,yBAAyB,CACvC,OAA6B,EAC7B,QAAqC,EACrC,cAA2C;IAE3C,MAAM,WAAW,GAAG,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC;IAE5C,6EAA6E;IAC7E,sEAAsE;IACtE,8EAA8E;IAC9E,8EAA8E;IAC9E,MAAM,IAAI,GAAG,OAAO,CAAC,aAAa,IAAK,OAAiB,CAAC;IAEzD,OAAO;QACL,SAAS,EAAE,SAAS,EAAE,kDAAkD;QACxE,gEAAgE;QAChE,uEAAuE;QACvE,eAAe,EAAE,OAAO,CAAC,eAAe,IAAI,EAAE;QAC9C,iBAAiB,EAAE,OAAO,CAAC,iBAAiB,IAAI,SAAS;QACzD,sBAAsB,EAAE,iBAAiB,CAAC,OAAO,CAAC,eAAe,CAAC;QAClE,YAAY,EAAE,OAAO,CAAC,YAAY,IAAI,IAAI;QAC1C,sEAAsE;QACtE,iDAAiD;QACjD,iBAAiB,EAAE,OAAO,CAAC,GAAG,CAAC,2BAA2B,IAAI,IAAI;QAClE,eAAe,EAAE,QAAQ;QACzB,qBAAqB,EAAE,cAAc;QACrC,YAAY,EAAE,WAAW;YACvB,CAAC,CAAC,CAAC,OAAO,CAAC,YAAY,IAAI,eAAe,CAAC;YAC3C,CAAC,CAAC,CAAC,OAAO,CAAC,YAAY,IAAI,EAAE,CAAC;QAChC,gBAAgB,EAAE,OAAO,CAAC,gBAAgB,IAAI,0BAA0B,EAAE;QAC1E,IAAI;QACJ,aAAa,EAAE,OAAO,CAAC,aAAa,IAAI,IAAI;QAC5C,uBAAuB,EAAE,OAAO,CAAC,iCAAiC,IAAI,CAAC;QACvE,kBAAkB,EAAE,IAAI;QACxB,gBAAgB,EAAE,OAAO,CAAC,gBAAgB,IAAI,KAAK;QACnD,gBAAgB,EACd,OAAO,CAAC,gBAAgB,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC;QAC/D,yBAAyB,EACvB,OAAO,CAAC,yBAAyB,IAAI,OAAO,CAAC,aAAa,IAAI,IAAI;QACpE,YAAY,EAAE,OAAO,CAAC,YAAY,IAAI,SAAS;QAC/C,0BAA0B,EACxB,OAAO,CAAC,0BAA0B,IAAI,sCAAsC;QAC9E,qBAAqB,EACnB,OAAO,CAAC,qBAAqB,IAAI,uCAAuC;QAC1E,sBAAsB,EACpB,OAAO,CAAC,sBAAsB,IAAI,iCAAiC;KACtE,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,mBAAmB,CAAC,MAAc;IAC/C,MAAM,CACJ,EAAE,sBAAsB,EAAE,EAC1B,EAAE,yBAAyB,EAAE,EAC7B,EAAE,4BAA4B,EAAE,EAChC,EAAE,qCAAqC,EAAE,EACzC,EAAE,iCAAiC,EAAE,EACrC,EAAE,mCAAmC,EAAE,EACvC,EAAE,wBAAwB,EAAE,EAC5B,EAAE,wBAAwB,EAAE,EAC5B,EAAE,4BAA4B,EAAE,EAChC,EAAE,uBAAuB,EAAE,EAC3B,EAAE,yBAAyB,EAAE,EAC7B,EAAE,+BAA+B,EAAE,EACnC,EAAE,0BAA0B,EAAE,EAC9B,EAAE,+BAA+B,EAAE,EACnC,EAAE,6BAA6B,EAAE,EACjC,EAAE,iCAAiC,EAAE,EACrC,EAAE,6BAA6B,EAAE,EAClC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QACpB,MAAM,CAAC,sCAAsC,CAAC;QAC9C,MAAM,CAAC,0CAA0C,CAAC;QAClD,MAAM,CAAC,+BAA+B,CAAC;QACvC,MAAM,CAAC,yCAAyC,CAAC;QACjD,MAAM,CAAC,qCAAqC,CAAC;QAC7C,MAAM,CAAC,sCAAsC,CAAC;QAC9C,MAAM,CAAC,2BAA2B,CAAC;QACnC,MAAM,CAAC,2BAA2B,CAAC;QACnC,MAAM,CAAC,+BAA+B,CAAC;QACvC,MAAM,CAAC,0BAA0B,CAAC;QAClC,MAAM,CAAC,4BAA4B,CAAC;QACpC,MAAM,CAAC,mCAAmC,CAAC;QAC3C,MAAM,CAAC,6BAA6B,CAAC;QACrC,MAAM,CAAC,4CAA4C,CAAC;QACpD,MAAM,CAAC,2CAA2C,CAAC;QACnD,MAAM,CAAC,qCAAqC,CAAC;QAC7C,MAAM,CAAC,gCAAgC,CAAC;KACzC,CAAC,CAAC;IAEH,OAAO;QACL,GAAG,sBAAsB,CAAC,MAAM,CAAC;QACjC,GAAG,yBAAyB,CAAC,MAAM,CAAC;QACpC,GAAG,4BAA4B,EAAE;QACjC,GAAG,qCAAqC,CAAC,MAAM,CAAC;QAChD,GAAG,iCAAiC,CAAC,MAAM,CAAC;QAC5C,GAAG,mCAAmC,EAAE;QACxC,GAAG,wBAAwB,EAAE;QAC7B,GAAG,wBAAwB,EAAE;QAC7B,GAAG,4BAA4B,EAAE;QACjC,GAAG,uBAAuB,EAAE;QAC5B,GAAG,yBAAyB,EAAE;QAC9B,GAAG,+BAA+B,EAAE;QACpC,GAAG,0BAA0B,EAAE;QAC/B,GAAG,+BAA+B,CAAC,MAAM,CAAC;QAC1C,GAAG,6BAA6B,EAAE;QAClC,GAAG,iCAAiC,EAAE;QACtC,GAAG,6BAA6B,CAAC,MAAM,CAAC;KACzC,CAAC;AACJ,CAAC;AAeD,KAAK,UAAU,sBAAsB;IACnC,MAAM,EAAE,0BAA0B,EAAE,GAAG,MAAM,MAAM,CACjD,yCAAyC,CAC1C,CAAC;IAEF,MAAM,oBAAoB,GAAkC,EAAE,CAAC;IAC/D,IAAI,KAAK,GAAuB,EAAE,GAAG,0BAA0B,EAAE,EAAE,CAAC;IACpE,MAAM,0BAA0B,GAAa,EAAE,CAAC;IAEhD,+EAA+E;IAC/E,8EAA8E;IAC9E,6EAA6E;IAC7E,oBAAoB,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QAClC,OAAO,EAAE;YACP,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI;gBACvB,MAAM,SAAS,GAAG,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC;gBACrC,sBAAsB,CAAC,SAAS,CAAC,CAAC;gBAClC,IAAI,CAAC;oBACH,OAAO,MAAM,IAAI,CAAC,KAAK,CAAC,CAAC;gBAC3B,CAAC;wBAAS,CAAC;oBACT,uBAAuB,CAAC,SAAS,CAAC,CAAC;gBACrC,CAAC;YACH,CAAC;SACF;KACF,CAAC,CAAC,CAAC;IAEJ,IAAI,OAAO,CAAC,GAAG,CAAC,2BAA2B,EAAE,CAAC;QAC5C,MAAM,EAAE,uCAAuC,EAAE,oBAAoB,EAAE,GACrE,MAAM,MAAM,CAAC,wCAAwC,CAAC,CAAC;QACzD,MAAM,EAAE,iBAAiB,EAAE,GAAG,MAAM,MAAM,CACxC,yCAAyC,CAC1C,CAAC;QACF,MAAM,EAAE,sBAAsB,EAAE,GAAG,MAAM,MAAM,CAC7C,0BAA0B,CAC3B,CAAC;QAEF,oBAAoB,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;YAClC,OAAO,EAAE,IAAI,uCAAuC,CAAC,GAAG,CAAC;SAC1D,CAAC,CAAC,CAAC;QAEJ,MAAM,QAAQ,GAAG,sBAAsB,CAAC;YACtC,cAAc,EAAE,wBAAwB;SACzC,CAAC,CAAC;QACH,MAAM,QAAQ,GAAG,IAAI,iBAAiB,CAAC;YACrC,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,2BAA2B;SAC7C,CAAC,CAAC;QACH,MAAM,SAAS,GAAG,oBAAoB,CACpC,QAAe,EACf,QAAe,CACiB,CAAC;QACnC,KAAK,GAAG,EAAE,GAAG,KAAK,EAAE,GAAG,SAAS,EAAE,CAAC;QAEnC,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAClD,0BAA0B,CAAC,IAAI,CAC7B,UAAU,CAAC,OAAO,CAAC,gCAAgC,CAAC,CACrD,CAAC;IACJ,CAAC;IAED,OAAO;QACL,KAAK;QACL,YAAY,EAAE;YACZ,GAAG,CAAC,oBAAoB,CAAC,MAAM,GAAG,CAAC;gBACjC,CAAC,CAAC,EAAE,QAAQ,EAAE,oBAAoB,EAAE;gBACpC,CAAC,CAAC,EAAE,CAAC;SACR;QACD,0BAA0B;KAC3B,CAAC;AACJ,CAAC;AAED,SAAS,0BAA0B;IACjC,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,UAAU,EAAE,YAAY,EAAE,QAAQ,CAAC,CAAC;QAChE,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACpC,OAAO,GAAG,CAAC;IACb,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,EAAE,EAAE,0BAA0B,CAAC,CAAC;QACvD,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACpC,OAAO,GAAG,CAAC;IACb,CAAC;AACH,CAAC;AAED,SAAS,iBAAiB,CAAC,QAAgB;IACzC,IAAI,QAAQ,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,QAAQ,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QACtE,OAAO,QAAQ,CAAC;IAClB,CAAC;IACD,IAAI,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QAC9B,OAAO,WAAW,QAAQ,EAAE,CAAC;IAC/B,CAAC;IACD,OAAO,UAAU,QAAQ,EAAE,CAAC;AAC9B,CAAC"}
|
|
1
|
+
{"version":3,"file":"runner-manager.js","sourceRoot":"","sources":["../src/runner-manager.ts"],"names":[],"mappings":"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"}
|
package/dist/runner.js
CHANGED
|
@@ -113,8 +113,9 @@ export async function createStigmerRunner(options) {
|
|
|
113
113
|
// Resolve Temporal coordinates after the http2 patch is in place (discovery
|
|
114
114
|
// dials the control plane through connect-node). Explicit address wins;
|
|
115
115
|
// otherwise a token triggers control-plane discovery; otherwise localhost.
|
|
116
|
-
//
|
|
117
|
-
//
|
|
116
|
+
// Only the worker connection consumes these coordinates — no activity dials
|
|
117
|
+
// Temporal directly (emit-event, the last one, now routes signals through
|
|
118
|
+
// the server's SendSignal lane; see oss#517).
|
|
118
119
|
//
|
|
119
120
|
// The static runner brings its own already-proxy-valid token (harness/CLI),
|
|
120
121
|
// so it does not consume the minted runner token from the bootstrap response;
|
|
@@ -165,7 +166,10 @@ export async function createStigmerRunner(options) {
|
|
|
165
166
|
console.warn(`[runner] Artifact store: could not resolve config for boot log: ${err}`);
|
|
166
167
|
}
|
|
167
168
|
const { createPayloadCodecs } = await import("./payload-codecs.js");
|
|
168
|
-
|
|
169
|
+
// Server-managed keys from the bootstrap response apply here too (a CLI
|
|
170
|
+
// daemon with a cloud token is desktop-class); cloud sandboxes are
|
|
171
|
+
// unaffected — their env-injected platform key wins inside the loader.
|
|
172
|
+
const payloadCodecs = await createPayloadCodecs(config, coordinates.payloadEncryption);
|
|
169
173
|
const { startWorker } = await import("./worker.js");
|
|
170
174
|
const worker = await startWorker({ config, activities, payloadCodecs });
|
|
171
175
|
markBoot("worker_created");
|
package/dist/runner.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runner.js","sourceRoot":"","sources":["../src/runner.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACpC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAE1C,OAAO,EAAE,uCAAuC,EAAE,sCAAsC,EAAE,iCAAiC,EAAE,MAAM,aAAa,CAAC;AAEjJ,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,0BAA0B,EAAE,MAAM,gBAAgB,CAAC;AAC5D,OAAO,EAAE,QAAQ,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AA8F/E;;;;;;;;;GASG;AACH,KAAK,UAAU,8BAA8B,CAC3C,MAAc,EACd,QAAoC;IAEpC,MAAM,EAAE,uBAAuB,EAAE,wBAAwB,EAAE,GAAG,MAAM,MAAM,CACxE,4BAA4B,CAC7B,CAAC;IACF,2EAA2E;IAC3E,yEAAyE;IACzE,mBAAmB;IACnB,IAAI,CAAC,uBAAuB,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;QAC/C,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,MAAM,CAAC,4BAA4B,CAAC,CAAC;IACrE,MAAM,EAAE,sBAAsB,EAAE,GAAG,MAAM,MAAM,CAC7C,kDAAkD,CACnD,CAAC;IACF,MAAM,EAAE,2BAA2B,EAAE,GAAG,MAAM,MAAM,CAClD,kDAAkD,CACnD,CAAC;IACF,MAAM,MAAM,GAAG,IAAI,aAAa,CAAC;QAC/B,QAAQ,EAAE,MAAM,CAAC,sBAAsB;QACvC,KAAK,EAAE,IAAI;QACX,QAAQ;KACT,CAAC,CAAC;IAEH,OAAO,wBAAwB,CAAC;QAC9B,QAAQ,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,OAAO;QAChC,KAAK,EAAE,CAAC,YAAY,EAAE,EAAE,CACtB,MAAM,CAAC,oBAAoB,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,YAAY,CAAC;QAC9D,UAAU,EAAE,CAAC,KAAK,EAAE,EAAE;YACpB,QAAQ,CAAC,OAAO,GAAG,KAAK,CAAC;YACzB,OAAO,CAAC,GAAG,CAAC,aAAa,GAAG,KAAK,CAAC;YAClC,sBAAsB,CAAC,KAAK,CAAC,CAAC;YAC9B,2BAA2B,CAAC,KAAK,CAAC,CAAC;QACrC,CAAC;KACF,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,OAA6B;IAE7B,eAAe,CAAC,OAAO,CAAC,CAAC;IAEzB,MAAM,EAAE,iCAAiC,EAAE,GAAG,MAAM,MAAM,CACxD,wDAAwD,CACzD,CAAC;IACF,iCAAiC,EAAE,CAAC;IAEpC,MAAM,UAAU,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAC;IAE/C,0BAA0B,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;IAErD,6EAA6E;IAC7E,8EAA8E;IAC9E,4EAA4E;IAC5E,8EAA8E;IAC9E,8EAA8E;IAC9E,uEAAuE;IACvE,gFAAgF;IAEhF,sEAAsE;IACtE,yEAAyE;IACzE,MAAM,EAAE,uBAAuB,EAAE,mBAAmB,EAAE,GAAG,MAAM,MAAM,CACnE,kDAAkD,CACnD,CAAC;IACF,uBAAuB,CAAC;QACtB,aAAa,EAAE,UAAU,CAAC,aAAa,IAAI,SAAS;QACpD,YAAY,EAAE,UAAU,CAAC,YAAY,IAAI,SAAS;KACnD,CAAC,CAAC;IAEH,uEAAuE;IACvE,wEAAwE;IACxE,iEAAiE;IACjE,kCAAkC;IAClC,MAAM,EAAE,uBAAuB,EAAE,yBAAyB,EAAE,GAAG,MAAM,MAAM,CACzE,kDAAkD,CACnD,CAAC;IACF,uBAAuB,CAAC;QACtB,aAAa,EAAE,UAAU,CAAC,aAAa,IAAI,SAAS;QACpD,YAAY,EAAE,UAAU,CAAC,YAAY,IAAI,SAAS;KACnD,CAAC,CAAC;IACH,yEAAyE;IACzE,2EAA2E;IAC3E,oDAAoD;IACpD,MAAM,yBAAyB,EAAE,CAAC;IAClC,QAAQ,CAAC,wBAAwB,CAAC,CAAC;IAEnC,4EAA4E;IAC5E,wEAAwE;IACxE,2EAA2E;IAC3E,
|
|
1
|
+
{"version":3,"file":"runner.js","sourceRoot":"","sources":["../src/runner.ts"],"names":[],"mappings":"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"}
|
|
@@ -13,10 +13,25 @@
|
|
|
13
13
|
* The runner never holds R2/S3 credentials — in cloud mode it calls the proxy
|
|
14
14
|
* to obtain a presigned upload URL, then PUTs content over plain HTTPS.
|
|
15
15
|
*
|
|
16
|
+
* Every proxy-backend request rides the shared bounded-backoff loop
|
|
17
|
+
* (http-retry.ts) with a per-request abort timeout, so a momentary
|
|
18
|
+
* stigmer-service interruption is retried and a hung connection cannot
|
|
19
|
+
* stall an agent turn unboundedly (stigmer/stigmer#468).
|
|
20
|
+
*
|
|
16
21
|
* DD-6: No direct R2 backend. Local + Proxy only.
|
|
17
22
|
*/
|
|
18
23
|
import type { Config } from "../config.js";
|
|
24
|
+
import type { RetryOptions } from "./grpc-retry.js";
|
|
19
25
|
export interface ArtifactStorage {
|
|
26
|
+
/**
|
|
27
|
+
* What kind of URL {@link getDownloadUrl} mints — self-described by the
|
|
28
|
+
* backend so consumers (the attachment hand-off prompt wording,
|
|
29
|
+
* attachment-download-urls.ts) can never disagree with the storage actually
|
|
30
|
+
* in use. "presigned": time-limited, single-object, remotely fetchable.
|
|
31
|
+
* "local-serve": the stigmer-server's unauthenticated loopback serve URL,
|
|
32
|
+
* reachable only from this machine.
|
|
33
|
+
*/
|
|
34
|
+
readonly downloadUrlKind: "presigned" | "local-serve";
|
|
20
35
|
upload(key: string, content: Buffer, contentType?: string): Promise<string>;
|
|
21
36
|
getDownloadUrl(key: string): Promise<string>;
|
|
22
37
|
/**
|
|
@@ -34,6 +49,7 @@ export interface ArtifactStorage {
|
|
|
34
49
|
}
|
|
35
50
|
export type ArtifactStorageType = "local" | "proxy";
|
|
36
51
|
export declare class LocalArtifactStorage implements ArtifactStorage {
|
|
52
|
+
readonly downloadUrlKind: "local-serve";
|
|
37
53
|
private readonly basePath;
|
|
38
54
|
private readonly serveUrlBase;
|
|
39
55
|
constructor(basePath: string, serveUrlBase: string);
|
|
@@ -52,10 +68,27 @@ export declare class LocalArtifactStorage implements ArtifactStorage {
|
|
|
52
68
|
*/
|
|
53
69
|
private resolveWithinRoot;
|
|
54
70
|
}
|
|
71
|
+
/** Retry policy plus the two per-request bounds; every field is defaulted. */
|
|
72
|
+
export interface ProxyArtifactStorageOptions extends RetryOptions {
|
|
73
|
+
/** Bound for proxy presign calls and the 1-byte exists probe. Default 30 s. */
|
|
74
|
+
readonly requestTimeoutMs?: number;
|
|
75
|
+
/**
|
|
76
|
+
* Bound for the presigned R2 PUT/GET, which move whole artifact payloads
|
|
77
|
+
* (claim-check offloads, tool outputs, file-review captures — MB scale).
|
|
78
|
+
* Deliberately wider than requestTimeoutMs so a legitimate slow transfer
|
|
79
|
+
* is never aborted by a bound sized for JSON round-trips. Default 120 s.
|
|
80
|
+
*/
|
|
81
|
+
readonly transferTimeoutMs?: number;
|
|
82
|
+
}
|
|
55
83
|
export declare class ProxyArtifactStorage implements ArtifactStorage {
|
|
84
|
+
readonly downloadUrlKind: "presigned";
|
|
56
85
|
private readonly baseUrl;
|
|
57
86
|
private readonly authTokenSource;
|
|
58
|
-
|
|
87
|
+
/** Governs the proxy presign calls and the exists probe. */
|
|
88
|
+
private readonly requestPolicy;
|
|
89
|
+
/** Governs the presigned R2 transfers; same budget, wider timeout. */
|
|
90
|
+
private readonly transferPolicy;
|
|
91
|
+
constructor(proxyEndpoint: string, authToken: ProxyAuthTokenSource, options?: ProxyArtifactStorageOptions);
|
|
59
92
|
/**
|
|
60
93
|
* Resolve the credential per call rather than pinning the boot token: a
|
|
61
94
|
* cloud sandbox's control-plane token rotates in place (see
|
|
@@ -13,13 +13,20 @@
|
|
|
13
13
|
* The runner never holds R2/S3 credentials — in cloud mode it calls the proxy
|
|
14
14
|
* to obtain a presigned upload URL, then PUTs content over plain HTTPS.
|
|
15
15
|
*
|
|
16
|
+
* Every proxy-backend request rides the shared bounded-backoff loop
|
|
17
|
+
* (http-retry.ts) with a per-request abort timeout, so a momentary
|
|
18
|
+
* stigmer-service interruption is retried and a hung connection cannot
|
|
19
|
+
* stall an agent turn unboundedly (stigmer/stigmer#468).
|
|
20
|
+
*
|
|
16
21
|
* DD-6: No direct R2 backend. Local + Proxy only.
|
|
17
22
|
*/
|
|
18
23
|
import { mkdir, writeFile, readFile, access, rm } from "node:fs/promises";
|
|
19
24
|
import { dirname, join, resolve, sep } from "node:path";
|
|
20
25
|
import { homedir } from "node:os";
|
|
26
|
+
import { fetchWithRetry } from "./http-retry.js";
|
|
21
27
|
// ── Local Backend ────────────────────────────────────────────────────
|
|
22
28
|
export class LocalArtifactStorage {
|
|
29
|
+
downloadUrlKind = "local-serve";
|
|
23
30
|
basePath;
|
|
24
31
|
serveUrlBase;
|
|
25
32
|
constructor(basePath, serveUrlBase) {
|
|
@@ -81,13 +88,46 @@ export class LocalArtifactStorage {
|
|
|
81
88
|
return full;
|
|
82
89
|
}
|
|
83
90
|
}
|
|
84
|
-
|
|
91
|
+
/**
|
|
92
|
+
* Default transient-retry policy (stigmer/stigmer#468): the checkpointer's
|
|
93
|
+
* budget — sized to span a pod-restart reroute, ~7.75 s of delays across
|
|
94
|
+
* 5 retries. Retrying is safe at every site: the presign POSTs are
|
|
95
|
+
* idempotent mints, the PUT re-sends identical bytes to the same key (a
|
|
96
|
+
* keyed overwrite), and the GETs are reads.
|
|
97
|
+
*/
|
|
98
|
+
const DEFAULT_RETRY = {
|
|
99
|
+
baseDelayMs: 250,
|
|
100
|
+
backoffFactor: 2,
|
|
101
|
+
maxRetries: 5,
|
|
102
|
+
requestTimeoutMs: 30_000,
|
|
103
|
+
transferTimeoutMs: 120_000,
|
|
104
|
+
};
|
|
85
105
|
export class ProxyArtifactStorage {
|
|
106
|
+
downloadUrlKind = "presigned";
|
|
86
107
|
baseUrl;
|
|
87
108
|
authTokenSource;
|
|
88
|
-
|
|
109
|
+
/** Governs the proxy presign calls and the exists probe. */
|
|
110
|
+
requestPolicy;
|
|
111
|
+
/** Governs the presigned R2 transfers; same budget, wider timeout. */
|
|
112
|
+
transferPolicy;
|
|
113
|
+
constructor(proxyEndpoint, authToken, options = {}) {
|
|
89
114
|
this.baseUrl = `${proxyEndpoint.replace(/\/+$/, "")}/v1/proxy/artifacts`;
|
|
90
115
|
this.authTokenSource = authToken;
|
|
116
|
+
const shared = {
|
|
117
|
+
label: "ProxyArtifactStorage",
|
|
118
|
+
baseDelayMs: options.baseDelayMs ?? DEFAULT_RETRY.baseDelayMs,
|
|
119
|
+
backoffFactor: options.backoffFactor ?? DEFAULT_RETRY.backoffFactor,
|
|
120
|
+
maxRetries: options.maxRetries ?? DEFAULT_RETRY.maxRetries,
|
|
121
|
+
delayFn: options.delayFn,
|
|
122
|
+
};
|
|
123
|
+
this.requestPolicy = {
|
|
124
|
+
...shared,
|
|
125
|
+
requestTimeoutMs: options.requestTimeoutMs ?? DEFAULT_RETRY.requestTimeoutMs,
|
|
126
|
+
};
|
|
127
|
+
this.transferPolicy = {
|
|
128
|
+
...shared,
|
|
129
|
+
requestTimeoutMs: options.transferTimeoutMs ?? DEFAULT_RETRY.transferTimeoutMs,
|
|
130
|
+
};
|
|
91
131
|
}
|
|
92
132
|
/**
|
|
93
133
|
* Resolve the credential per call rather than pinning the boot token: a
|
|
@@ -102,14 +142,14 @@ export class ProxyArtifactStorage {
|
|
|
102
142
|
}
|
|
103
143
|
async upload(key, content, contentType) {
|
|
104
144
|
const ct = contentType ?? "application/octet-stream";
|
|
105
|
-
const presignResp = await
|
|
145
|
+
const presignResp = await fetchWithRetry(`${this.baseUrl}/presigned-upload-url`, {
|
|
106
146
|
method: "POST",
|
|
107
147
|
headers: {
|
|
108
148
|
"Authorization": `Bearer ${this.authToken}`,
|
|
109
149
|
"Content-Type": "application/json",
|
|
110
150
|
},
|
|
111
151
|
body: JSON.stringify({ key, content_type: ct }),
|
|
112
|
-
});
|
|
152
|
+
}, this.requestPolicy);
|
|
113
153
|
if (!presignResp.ok) {
|
|
114
154
|
throw new Error(`Failed to get presigned upload URL (HTTP ${presignResp.status}): ` +
|
|
115
155
|
await presignResp.text());
|
|
@@ -138,11 +178,14 @@ export class ProxyArtifactStorage {
|
|
|
138
178
|
if (!contentTypeSigned) {
|
|
139
179
|
uploadHeaders["Content-Type"] = ct;
|
|
140
180
|
}
|
|
141
|
-
|
|
181
|
+
// Retrying the PUT alone (not the presign+PUT pair) is deliberate: the
|
|
182
|
+
// retry budget's few seconds of delays sit far inside presign validity,
|
|
183
|
+
// and re-sending the same Buffer to the same key is a keyed overwrite.
|
|
184
|
+
const putResp = await fetchWithRetry(data.url, {
|
|
142
185
|
method: "PUT",
|
|
143
186
|
headers: uploadHeaders,
|
|
144
187
|
body: content,
|
|
145
|
-
});
|
|
188
|
+
}, this.transferPolicy);
|
|
146
189
|
if (!putResp.ok) {
|
|
147
190
|
throw new Error(`Presigned upload failed (HTTP ${putResp.status}): ` +
|
|
148
191
|
await putResp.text());
|
|
@@ -150,14 +193,14 @@ export class ProxyArtifactStorage {
|
|
|
150
193
|
return key;
|
|
151
194
|
}
|
|
152
195
|
async getDownloadUrl(key) {
|
|
153
|
-
const resp = await
|
|
196
|
+
const resp = await fetchWithRetry(`${this.baseUrl}/presigned-download-url`, {
|
|
154
197
|
method: "POST",
|
|
155
198
|
headers: {
|
|
156
199
|
"Authorization": `Bearer ${this.authToken}`,
|
|
157
200
|
"Content-Type": "application/json",
|
|
158
201
|
},
|
|
159
202
|
body: JSON.stringify({ key }),
|
|
160
|
-
});
|
|
203
|
+
}, this.requestPolicy);
|
|
161
204
|
if (!resp.ok) {
|
|
162
205
|
throw new Error(`Failed to get presigned download URL (HTTP ${resp.status}): ` +
|
|
163
206
|
await resp.text());
|
|
@@ -167,7 +210,7 @@ export class ProxyArtifactStorage {
|
|
|
167
210
|
}
|
|
168
211
|
async download(key) {
|
|
169
212
|
const url = await this.getDownloadUrl(key);
|
|
170
|
-
const resp = await
|
|
213
|
+
const resp = await fetchWithRetry(url, undefined, this.transferPolicy);
|
|
171
214
|
if (!resp.ok) {
|
|
172
215
|
throw new Error(`Artifact download failed (HTTP ${resp.status}) for key '${key}': ` +
|
|
173
216
|
await resp.text());
|
|
@@ -191,7 +234,7 @@ export class ProxyArtifactStorage {
|
|
|
191
234
|
// addressed CAS blob dedup) then re-uploads, which is idempotent.
|
|
192
235
|
return false;
|
|
193
236
|
}
|
|
194
|
-
const resp = await
|
|
237
|
+
const resp = await fetchWithRetry(url, { headers: { Range: "bytes=0-0" } }, this.requestPolicy);
|
|
195
238
|
await resp.arrayBuffer().catch(() => undefined); // drain the <=1-byte body
|
|
196
239
|
if (resp.status === 404)
|
|
197
240
|
return false;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"artifact-storage.js","sourceRoot":"","sources":["../../src/shared/artifact-storage.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"artifact-storage.js","sourceRoot":"","sources":["../../src/shared/artifact-storage.ts"],"names":[],"mappings":"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"}
|