@griffin-app/griffin-plan-executor 0.1.13 → 0.1.15
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 +14 -14
- package/dist/events/adapters/in-memory.test.js +25 -23
- package/dist/events/adapters/in-memory.test.js.map +1 -1
- package/dist/events/adapters/kinesis.d.ts.map +1 -1
- package/dist/events/adapters/kinesis.js.map +1 -1
- package/dist/events/adapters/kinesis.test.js +22 -20
- package/dist/events/adapters/kinesis.test.js.map +1 -1
- package/dist/events/emitter.test.js +15 -15
- package/dist/events/emitter.test.js.map +1 -1
- package/dist/events/types.d.ts +12 -12
- package/dist/events/types.d.ts.map +1 -1
- package/dist/events/types.js +1 -1
- package/dist/executor.d.ts +2 -2
- package/dist/executor.d.ts.map +1 -1
- package/dist/executor.js +33 -43
- package/dist/executor.js.map +1 -1
- package/dist/executor.test.js +102 -102
- package/dist/executor.test.js.map +1 -1
- package/dist/index.d.ts +4 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/dist/secrets/index.d.ts +4 -4
- package/dist/secrets/index.d.ts.map +1 -1
- package/dist/secrets/index.js +4 -4
- package/dist/secrets/index.js.map +1 -1
- package/dist/secrets/providers/aws.d.ts.map +1 -1
- package/dist/secrets/providers/aws.js +4 -5
- package/dist/secrets/providers/aws.js.map +1 -1
- package/dist/secrets/providers/env.js +1 -1
- package/dist/secrets/providers/env.js.map +1 -1
- package/dist/secrets/providers/vault.js +7 -7
- package/dist/secrets/providers/vault.js.map +1 -1
- package/dist/secrets/registry.d.ts +11 -33
- package/dist/secrets/registry.d.ts.map +1 -1
- package/dist/secrets/registry.js +65 -113
- package/dist/secrets/registry.js.map +1 -1
- package/dist/secrets/resolver.d.ts +12 -12
- package/dist/secrets/resolver.d.ts.map +1 -1
- package/dist/secrets/resolver.js +21 -21
- package/dist/secrets/resolver.js.map +1 -1
- package/dist/secrets/secrets.test.js +96 -120
- package/dist/secrets/secrets.test.js.map +1 -1
- package/dist/secrets/types.d.ts +2 -5
- package/dist/secrets/types.d.ts.map +1 -1
- package/dist/secrets/types.js +1 -4
- package/dist/secrets/types.js.map +1 -1
- package/dist/types.d.ts +2 -2
- package/package.json +4 -4
- package/src/events/adapters/README.md +7 -7
- package/src/events/adapters/in-memory.test.ts +27 -23
- package/src/events/adapters/kinesis.test.ts +23 -21
- package/src/events/adapters/kinesis.ts +6 -3
- package/src/events/emitter.test.ts +15 -15
- package/src/events/types.ts +13 -13
- package/src/executor.test.ts +103 -103
- package/src/executor.ts +40 -48
- package/src/index.ts +7 -7
- package/src/secrets/index.ts +5 -5
- package/src/secrets/providers/aws.ts +4 -5
- package/src/secrets/providers/env.ts +1 -1
- package/src/secrets/providers/vault.ts +7 -7
- package/src/secrets/registry.ts +75 -142
- package/src/secrets/resolver.ts +28 -26
- package/src/secrets/secrets.test.ts +124 -155
- package/src/secrets/types.ts +4 -13
- package/src/{test-plan-types.ts → test-monitor-types.ts} +1 -1
- package/src/types.ts +2 -2
|
@@ -2,13 +2,10 @@ import { describe, it, expect, beforeEach } from "vitest";
|
|
|
2
2
|
import { isSecretRef, isStringLiteral } from "./types.js";
|
|
3
3
|
import { SecretProviderRegistry } from "./registry.js";
|
|
4
4
|
import { EnvSecretProvider } from "./providers/env.js";
|
|
5
|
-
import {
|
|
5
|
+
import { resolveSecretsInMonitor, collectSecretsFromMonitor, planHasSecrets, } from "./resolver.js";
|
|
6
6
|
// Helper to create a secret ref (mirrors the DSL's secret function)
|
|
7
|
-
function createSecretRef(
|
|
8
|
-
|
|
9
|
-
const provider = path.slice(0, colonIndex);
|
|
10
|
-
const ref = path.slice(colonIndex + 1);
|
|
11
|
-
return { $secret: { provider, ref } };
|
|
7
|
+
function createSecretRef(ref) {
|
|
8
|
+
return { $secret: { ref } };
|
|
12
9
|
}
|
|
13
10
|
// Helper to create a string literal (mirrors the schema's StringLiteral)
|
|
14
11
|
function createStringLiteral(value) {
|
|
@@ -17,9 +14,9 @@ function createStringLiteral(value) {
|
|
|
17
14
|
describe("Secret Types", () => {
|
|
18
15
|
describe("isSecretRef", () => {
|
|
19
16
|
it("should return true for valid secret refs", () => {
|
|
20
|
-
expect(isSecretRef({ $secret: {
|
|
17
|
+
expect(isSecretRef({ $secret: { ref: "API_KEY" } })).toBe(true);
|
|
21
18
|
expect(isSecretRef({
|
|
22
|
-
$secret: {
|
|
19
|
+
$secret: { ref: "my-secret", version: "1" },
|
|
23
20
|
})).toBe(true);
|
|
24
21
|
});
|
|
25
22
|
it("should return false for non-secret values", () => {
|
|
@@ -28,7 +25,7 @@ describe("Secret Types", () => {
|
|
|
28
25
|
expect(isSecretRef(null)).toBe(false);
|
|
29
26
|
expect(isSecretRef(undefined)).toBe(false);
|
|
30
27
|
expect(isSecretRef({})).toBe(false);
|
|
31
|
-
expect(isSecretRef({ secret: {
|
|
28
|
+
expect(isSecretRef({ secret: { ref: "KEY" } })).toBe(false); // wrong key
|
|
32
29
|
expect(isSecretRef({ $literal: "value" })).toBe(false); // string literal
|
|
33
30
|
});
|
|
34
31
|
});
|
|
@@ -45,7 +42,7 @@ describe("Secret Types", () => {
|
|
|
45
42
|
expect(isStringLiteral(undefined)).toBe(false);
|
|
46
43
|
expect(isStringLiteral({})).toBe(false);
|
|
47
44
|
expect(isStringLiteral({ literal: "value" })).toBe(false); // wrong key
|
|
48
|
-
expect(isStringLiteral({ $secret: {
|
|
45
|
+
expect(isStringLiteral({ $secret: { ref: "KEY" } })).toBe(false); // secret ref
|
|
49
46
|
});
|
|
50
47
|
});
|
|
51
48
|
});
|
|
@@ -54,28 +51,20 @@ describe("SecretProviderRegistry", () => {
|
|
|
54
51
|
beforeEach(() => {
|
|
55
52
|
registry = new SecretProviderRegistry();
|
|
56
53
|
});
|
|
57
|
-
it("should
|
|
58
|
-
const envProvider = new EnvSecretProvider(
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
it("should throw when getting unregistered provider", () => {
|
|
65
|
-
expect(() => registry.get("unknown")).toThrow(/not configured/);
|
|
66
|
-
});
|
|
67
|
-
it("should throw when registering duplicate provider", () => {
|
|
68
|
-
const envProvider = new EnvSecretProvider();
|
|
69
|
-
registry.register(envProvider);
|
|
70
|
-
expect(() => registry.register(envProvider)).toThrow(/already registered/);
|
|
54
|
+
it("should set and use provider", async () => {
|
|
55
|
+
const envProvider = new EnvSecretProvider({
|
|
56
|
+
env: { TEST_SECRET: "resolved-value" },
|
|
57
|
+
});
|
|
58
|
+
registry.setProvider(envProvider);
|
|
59
|
+
const value = await registry.resolve({ ref: "TEST_SECRET" });
|
|
60
|
+
expect(value).toBe("resolved-value");
|
|
71
61
|
});
|
|
72
|
-
it("should resolve secrets using the
|
|
62
|
+
it("should resolve secrets using the configured provider", async () => {
|
|
73
63
|
const envProvider = new EnvSecretProvider({
|
|
74
64
|
env: { TEST_SECRET: "secret-value" },
|
|
75
65
|
});
|
|
76
|
-
registry.
|
|
66
|
+
registry.setProvider(envProvider);
|
|
77
67
|
const result = await registry.resolve({
|
|
78
|
-
provider: "env",
|
|
79
68
|
ref: "TEST_SECRET",
|
|
80
69
|
});
|
|
81
70
|
expect(result).toBe("secret-value");
|
|
@@ -102,10 +91,10 @@ describe("EnvSecretProvider", () => {
|
|
|
102
91
|
expect(result).toBe("prefixed-value");
|
|
103
92
|
});
|
|
104
93
|
});
|
|
105
|
-
describe("
|
|
106
|
-
const
|
|
107
|
-
id: "test-
|
|
108
|
-
name: "Test
|
|
94
|
+
describe("Monitor Secret Resolution", () => {
|
|
95
|
+
const createTestMonitor = (headers, body) => ({
|
|
96
|
+
id: "test-monitor-1",
|
|
97
|
+
name: "Test Monitor",
|
|
109
98
|
version: "1.0",
|
|
110
99
|
environment: "default",
|
|
111
100
|
project: "test-project",
|
|
@@ -128,82 +117,73 @@ describe("Plan Secret Resolution", () => {
|
|
|
128
117
|
],
|
|
129
118
|
});
|
|
130
119
|
describe("planHasSecrets", () => {
|
|
131
|
-
it("should return false for
|
|
132
|
-
const
|
|
133
|
-
expect(planHasSecrets(
|
|
120
|
+
it("should return false for monitors without secrets or literals", () => {
|
|
121
|
+
const monitor = createTestMonitor({ "Content-Type": "application/json" });
|
|
122
|
+
expect(planHasSecrets(monitor)).toBe(false);
|
|
134
123
|
});
|
|
135
|
-
it("should return true for
|
|
136
|
-
const
|
|
137
|
-
Authorization: createSecretRef("
|
|
124
|
+
it("should return true for monitors with secret refs in headers", () => {
|
|
125
|
+
const monitor = createTestMonitor({
|
|
126
|
+
Authorization: createSecretRef("API_KEY"),
|
|
138
127
|
});
|
|
139
|
-
expect(planHasSecrets(
|
|
128
|
+
expect(planHasSecrets(monitor)).toBe(true);
|
|
140
129
|
});
|
|
141
|
-
it("should return true for
|
|
142
|
-
const
|
|
143
|
-
token: createSecretRef("
|
|
130
|
+
it("should return true for monitors with secret refs in body", () => {
|
|
131
|
+
const monitor = createTestMonitor(undefined, {
|
|
132
|
+
token: createSecretRef("TOKEN"),
|
|
144
133
|
});
|
|
145
|
-
expect(planHasSecrets(
|
|
134
|
+
expect(planHasSecrets(monitor)).toBe(true);
|
|
146
135
|
});
|
|
147
|
-
it("should return true for
|
|
148
|
-
const
|
|
136
|
+
it("should return true for monitors with string literals in headers", () => {
|
|
137
|
+
const monitor = createTestMonitor({
|
|
149
138
|
"Content-Type": createStringLiteral("application/json"),
|
|
150
139
|
});
|
|
151
|
-
expect(planHasSecrets(
|
|
140
|
+
expect(planHasSecrets(monitor)).toBe(true);
|
|
152
141
|
});
|
|
153
|
-
it("should return true for
|
|
154
|
-
const
|
|
142
|
+
it("should return true for monitors with string literals in body", () => {
|
|
143
|
+
const monitor = createTestMonitor(undefined, {
|
|
155
144
|
type: createStringLiteral("test"),
|
|
156
145
|
});
|
|
157
|
-
expect(planHasSecrets(
|
|
146
|
+
expect(planHasSecrets(monitor)).toBe(true);
|
|
158
147
|
});
|
|
159
148
|
});
|
|
160
|
-
describe("
|
|
149
|
+
describe("collectSecretsFromMonitor", () => {
|
|
161
150
|
it("should collect secrets from headers", () => {
|
|
162
|
-
const
|
|
163
|
-
Authorization: createSecretRef("
|
|
164
|
-
"X-Custom": createSecretRef("
|
|
151
|
+
const monitor = createTestMonitor({
|
|
152
|
+
Authorization: createSecretRef("API_KEY"),
|
|
153
|
+
"X-Custom": createSecretRef("custom-secret"),
|
|
165
154
|
});
|
|
166
|
-
const collected =
|
|
155
|
+
const collected = collectSecretsFromMonitor(monitor);
|
|
167
156
|
expect(collected.refs).toHaveLength(2);
|
|
168
|
-
expect(collected.refs).toContainEqual({
|
|
169
|
-
|
|
170
|
-
ref: "API_KEY",
|
|
171
|
-
});
|
|
172
|
-
expect(collected.refs).toContainEqual({
|
|
173
|
-
provider: "aws",
|
|
174
|
-
ref: "custom-secret",
|
|
175
|
-
});
|
|
157
|
+
expect(collected.refs).toContainEqual({ ref: "API_KEY" });
|
|
158
|
+
expect(collected.refs).toContainEqual({ ref: "custom-secret" });
|
|
176
159
|
});
|
|
177
160
|
it("should collect secrets from nested body", () => {
|
|
178
|
-
const
|
|
161
|
+
const monitor = createTestMonitor(undefined, {
|
|
179
162
|
auth: {
|
|
180
|
-
token: createSecretRef("
|
|
163
|
+
token: createSecretRef("TOKEN"),
|
|
181
164
|
},
|
|
182
|
-
items: [{ key: createSecretRef("
|
|
165
|
+
items: [{ key: createSecretRef("ITEM_KEY") }],
|
|
183
166
|
});
|
|
184
|
-
const collected =
|
|
167
|
+
const collected = collectSecretsFromMonitor(monitor);
|
|
185
168
|
expect(collected.refs).toHaveLength(2);
|
|
186
|
-
expect(collected.refs).toContainEqual({
|
|
187
|
-
expect(collected.refs).toContainEqual({
|
|
188
|
-
provider: "env",
|
|
189
|
-
ref: "ITEM_KEY",
|
|
190
|
-
});
|
|
169
|
+
expect(collected.refs).toContainEqual({ ref: "TOKEN" });
|
|
170
|
+
expect(collected.refs).toContainEqual({ ref: "ITEM_KEY" });
|
|
191
171
|
});
|
|
192
172
|
it("should deduplicate secret refs", () => {
|
|
193
|
-
const
|
|
194
|
-
Authorization: createSecretRef("
|
|
195
|
-
"X-Backup-Auth": createSecretRef("
|
|
173
|
+
const monitor = createTestMonitor({
|
|
174
|
+
Authorization: createSecretRef("API_KEY"),
|
|
175
|
+
"X-Backup-Auth": createSecretRef("API_KEY"),
|
|
196
176
|
});
|
|
197
|
-
const collected =
|
|
177
|
+
const collected = collectSecretsFromMonitor(monitor);
|
|
198
178
|
expect(collected.refs).toHaveLength(1);
|
|
199
179
|
expect(collected.paths).toHaveLength(2);
|
|
200
180
|
});
|
|
201
181
|
it("should collect string literals from headers", () => {
|
|
202
|
-
const
|
|
182
|
+
const monitor = createTestMonitor({
|
|
203
183
|
"Content-Type": createStringLiteral("application/json"),
|
|
204
184
|
Accept: createStringLiteral("application/xml"),
|
|
205
185
|
});
|
|
206
|
-
const collected =
|
|
186
|
+
const collected = collectSecretsFromMonitor(monitor);
|
|
207
187
|
expect(collected.refs).toHaveLength(0);
|
|
208
188
|
expect(collected.literalPaths).toHaveLength(2);
|
|
209
189
|
expect(collected.literalPaths).toContainEqual({
|
|
@@ -216,16 +196,13 @@ describe("Plan Secret Resolution", () => {
|
|
|
216
196
|
});
|
|
217
197
|
});
|
|
218
198
|
it("should collect both secrets and literals", () => {
|
|
219
|
-
const
|
|
220
|
-
Authorization: createSecretRef("
|
|
199
|
+
const monitor = createTestMonitor({
|
|
200
|
+
Authorization: createSecretRef("API_KEY"),
|
|
221
201
|
"Content-Type": createStringLiteral("application/json"),
|
|
222
202
|
});
|
|
223
|
-
const collected =
|
|
203
|
+
const collected = collectSecretsFromMonitor(monitor);
|
|
224
204
|
expect(collected.refs).toHaveLength(1);
|
|
225
|
-
expect(collected.refs).toContainEqual({
|
|
226
|
-
provider: "env",
|
|
227
|
-
ref: "API_KEY",
|
|
228
|
-
});
|
|
205
|
+
expect(collected.refs).toContainEqual({ ref: "API_KEY" });
|
|
229
206
|
expect(collected.literalPaths).toHaveLength(1);
|
|
230
207
|
expect(collected.literalPaths).toContainEqual({
|
|
231
208
|
path: ["nodes", 0, "headers", "Content-Type"],
|
|
@@ -233,17 +210,17 @@ describe("Plan Secret Resolution", () => {
|
|
|
233
210
|
});
|
|
234
211
|
});
|
|
235
212
|
});
|
|
236
|
-
describe("
|
|
213
|
+
describe("resolveSecretsInMonitor", () => {
|
|
237
214
|
it("should resolve secrets in headers", async () => {
|
|
238
|
-
const
|
|
239
|
-
Authorization: createSecretRef("
|
|
215
|
+
const monitor = createTestMonitor({
|
|
216
|
+
Authorization: createSecretRef("API_KEY"),
|
|
240
217
|
"Content-Type": "application/json",
|
|
241
218
|
});
|
|
242
219
|
const registry = new SecretProviderRegistry();
|
|
243
|
-
registry.
|
|
220
|
+
registry.setProvider(new EnvSecretProvider({
|
|
244
221
|
env: { API_KEY: "Bearer secret-token" },
|
|
245
222
|
}));
|
|
246
|
-
const resolved = await
|
|
223
|
+
const resolved = await resolveSecretsInMonitor(monitor, registry);
|
|
247
224
|
const endpoint = resolved.nodes[0];
|
|
248
225
|
if (endpoint.type !== "HTTP_REQUEST") {
|
|
249
226
|
throw new Error("HttpRequest not found");
|
|
@@ -252,15 +229,15 @@ describe("Plan Secret Resolution", () => {
|
|
|
252
229
|
expect(endpoint.headers?.["Content-Type"]).toBe("application/json");
|
|
253
230
|
});
|
|
254
231
|
it("should resolve secrets in body", async () => {
|
|
255
|
-
const
|
|
256
|
-
token: createSecretRef("
|
|
232
|
+
const monitor = createTestMonitor(undefined, {
|
|
233
|
+
token: createSecretRef("TOKEN"),
|
|
257
234
|
data: "plain-value",
|
|
258
235
|
});
|
|
259
236
|
const registry = new SecretProviderRegistry();
|
|
260
|
-
registry.
|
|
237
|
+
registry.setProvider(new EnvSecretProvider({
|
|
261
238
|
env: { TOKEN: "resolved-token" },
|
|
262
239
|
}));
|
|
263
|
-
const resolved = await
|
|
240
|
+
const resolved = await resolveSecretsInMonitor(monitor, registry);
|
|
264
241
|
const endpoint = resolved.nodes[0];
|
|
265
242
|
if (endpoint.type !== "HTTP_REQUEST") {
|
|
266
243
|
throw new Error("HttpRequest not found");
|
|
@@ -268,21 +245,21 @@ describe("Plan Secret Resolution", () => {
|
|
|
268
245
|
expect(endpoint.body.token).toBe("resolved-token");
|
|
269
246
|
expect(endpoint.body.data).toBe("plain-value");
|
|
270
247
|
});
|
|
271
|
-
it("should not modify original
|
|
272
|
-
const
|
|
273
|
-
Authorization: createSecretRef("
|
|
248
|
+
it("should not modify original monitor", async () => {
|
|
249
|
+
const monitor = createTestMonitor({
|
|
250
|
+
Authorization: createSecretRef("API_KEY"),
|
|
274
251
|
});
|
|
275
252
|
const registry = new SecretProviderRegistry();
|
|
276
|
-
registry.
|
|
253
|
+
registry.setProvider(new EnvSecretProvider({
|
|
277
254
|
env: { API_KEY: "secret" },
|
|
278
255
|
}));
|
|
279
|
-
const resolved = await
|
|
256
|
+
const resolved = await resolveSecretsInMonitor(monitor, registry);
|
|
280
257
|
// Original should still have secret ref
|
|
281
|
-
const originalEndpoint =
|
|
258
|
+
const originalEndpoint = monitor.nodes[0];
|
|
282
259
|
if (originalEndpoint.type !== "HTTP_REQUEST") {
|
|
283
260
|
throw new Error("HttpRequest not found");
|
|
284
261
|
}
|
|
285
|
-
expect(originalEndpoint.headers?.Authorization).toEqual(createSecretRef("
|
|
262
|
+
expect(originalEndpoint.headers?.Authorization).toEqual(createSecretRef("API_KEY"));
|
|
286
263
|
// Resolved should have string
|
|
287
264
|
const resolvedEndpoint = resolved.nodes[0];
|
|
288
265
|
if (resolvedEndpoint.type !== "HTTP_REQUEST") {
|
|
@@ -290,29 +267,28 @@ describe("Plan Secret Resolution", () => {
|
|
|
290
267
|
}
|
|
291
268
|
expect(resolvedEndpoint.headers?.Authorization).toBe("secret");
|
|
292
269
|
});
|
|
293
|
-
it("should throw
|
|
294
|
-
const
|
|
295
|
-
Authorization: createSecretRef("
|
|
270
|
+
it("should throw when no provider configured", async () => {
|
|
271
|
+
const monitor = createTestMonitor({
|
|
272
|
+
Authorization: createSecretRef("API_KEY"),
|
|
296
273
|
});
|
|
297
274
|
const registry = new SecretProviderRegistry();
|
|
298
|
-
registry.
|
|
299
|
-
await expect(resolveSecretsInPlan(plan, registry)).rejects.toThrow(/not configured/);
|
|
275
|
+
await expect(resolveSecretsInMonitor(monitor, registry)).rejects.toThrow(/No secret provider configured/);
|
|
300
276
|
});
|
|
301
277
|
it("should throw for missing secret", async () => {
|
|
302
|
-
const
|
|
303
|
-
Authorization: createSecretRef("
|
|
278
|
+
const monitor = createTestMonitor({
|
|
279
|
+
Authorization: createSecretRef("MISSING_KEY"),
|
|
304
280
|
});
|
|
305
281
|
const registry = new SecretProviderRegistry();
|
|
306
|
-
registry.
|
|
307
|
-
await expect(
|
|
282
|
+
registry.setProvider(new EnvSecretProvider({ env: {} }));
|
|
283
|
+
await expect(resolveSecretsInMonitor(monitor, registry)).rejects.toThrow(/not set/);
|
|
308
284
|
});
|
|
309
285
|
it("should unwrap string literals in headers", async () => {
|
|
310
|
-
const
|
|
286
|
+
const monitor = createTestMonitor({
|
|
311
287
|
"Content-Type": createStringLiteral("application/json"),
|
|
312
288
|
Accept: createStringLiteral("application/xml"),
|
|
313
289
|
});
|
|
314
290
|
const registry = new SecretProviderRegistry();
|
|
315
|
-
const resolved = await
|
|
291
|
+
const resolved = await resolveSecretsInMonitor(monitor, registry);
|
|
316
292
|
const endpoint = resolved.nodes[0];
|
|
317
293
|
if (endpoint.type !== "HTTP_REQUEST") {
|
|
318
294
|
throw new Error("HttpRequest not found");
|
|
@@ -321,12 +297,12 @@ describe("Plan Secret Resolution", () => {
|
|
|
321
297
|
expect(endpoint.headers?.Accept).toBe("application/xml");
|
|
322
298
|
});
|
|
323
299
|
it("should unwrap string literals in body", async () => {
|
|
324
|
-
const
|
|
300
|
+
const monitor = createTestMonitor(undefined, {
|
|
325
301
|
type: createStringLiteral("test-type"),
|
|
326
302
|
data: "plain-value",
|
|
327
303
|
});
|
|
328
304
|
const registry = new SecretProviderRegistry();
|
|
329
|
-
const resolved = await
|
|
305
|
+
const resolved = await resolveSecretsInMonitor(monitor, registry);
|
|
330
306
|
const endpoint = resolved.nodes[0];
|
|
331
307
|
if (endpoint.type !== "HTTP_REQUEST") {
|
|
332
308
|
throw new Error("HttpRequest not found");
|
|
@@ -335,15 +311,15 @@ describe("Plan Secret Resolution", () => {
|
|
|
335
311
|
expect(endpoint.body.data).toBe("plain-value");
|
|
336
312
|
});
|
|
337
313
|
it("should resolve both secrets and literals", async () => {
|
|
338
|
-
const
|
|
339
|
-
Authorization: createSecretRef("
|
|
314
|
+
const monitor = createTestMonitor({
|
|
315
|
+
Authorization: createSecretRef("API_KEY"),
|
|
340
316
|
"Content-Type": createStringLiteral("application/json"),
|
|
341
317
|
});
|
|
342
318
|
const registry = new SecretProviderRegistry();
|
|
343
|
-
registry.
|
|
319
|
+
registry.setProvider(new EnvSecretProvider({
|
|
344
320
|
env: { API_KEY: "Bearer secret-token" },
|
|
345
321
|
}));
|
|
346
|
-
const resolved = await
|
|
322
|
+
const resolved = await resolveSecretsInMonitor(monitor, registry);
|
|
347
323
|
const endpoint = resolved.nodes[0];
|
|
348
324
|
if (endpoint.type !== "HTTP_REQUEST") {
|
|
349
325
|
throw new Error("HttpRequest not found");
|
|
@@ -351,14 +327,14 @@ describe("Plan Secret Resolution", () => {
|
|
|
351
327
|
expect(endpoint.headers?.Authorization).toBe("Bearer secret-token");
|
|
352
328
|
expect(endpoint.headers?.["Content-Type"]).toBe("application/json");
|
|
353
329
|
});
|
|
354
|
-
it("should not modify original
|
|
355
|
-
const
|
|
330
|
+
it("should not modify original monitor with literals", async () => {
|
|
331
|
+
const monitor = createTestMonitor({
|
|
356
332
|
"Content-Type": createStringLiteral("application/json"),
|
|
357
333
|
});
|
|
358
334
|
const registry = new SecretProviderRegistry();
|
|
359
|
-
const resolved = await
|
|
335
|
+
const resolved = await resolveSecretsInMonitor(monitor, registry);
|
|
360
336
|
// Original should still have literal wrapper
|
|
361
|
-
const originalEndpoint =
|
|
337
|
+
const originalEndpoint = monitor.nodes[0];
|
|
362
338
|
if (originalEndpoint.type !== "HTTP_REQUEST") {
|
|
363
339
|
throw new Error("HttpRequest not found");
|
|
364
340
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"secrets.test.js","sourceRoot":"","sources":["../../src/secrets/secrets.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"secrets.test.js","sourceRoot":"","sources":["../../src/secrets/secrets.test.ts"],"names":[],"mappings":"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"}
|
package/dist/secrets/types.d.ts
CHANGED
|
@@ -1,15 +1,14 @@
|
|
|
1
1
|
import { StringLiteral } from "@griffin-app/griffin-hub-sdk";
|
|
2
2
|
/**
|
|
3
|
-
* Data structure for a secret reference as it appears in a
|
|
3
|
+
* Data structure for a secret reference as it appears in a monitor.
|
|
4
4
|
*/
|
|
5
5
|
export interface SecretRefData {
|
|
6
|
-
provider: string;
|
|
7
6
|
ref: string;
|
|
8
7
|
version?: string;
|
|
9
8
|
field?: string;
|
|
10
9
|
}
|
|
11
10
|
/**
|
|
12
|
-
* Secret reference marker in
|
|
11
|
+
* Secret reference marker in monitor JSON.
|
|
13
12
|
*/
|
|
14
13
|
export interface SecretRef {
|
|
15
14
|
$secret: SecretRefData;
|
|
@@ -53,11 +52,9 @@ export interface SecretProvider {
|
|
|
53
52
|
* Error thrown when secret resolution fails.
|
|
54
53
|
*/
|
|
55
54
|
export declare class SecretResolutionError extends Error {
|
|
56
|
-
readonly provider: string;
|
|
57
55
|
readonly ref: string;
|
|
58
56
|
readonly cause?: Error;
|
|
59
57
|
constructor(message: string, details: {
|
|
60
|
-
provider: string;
|
|
61
58
|
ref: string;
|
|
62
59
|
cause?: unknown;
|
|
63
60
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/secrets/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAE7D;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/secrets/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAE7D;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,OAAO,EAAE,aAAa,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,gEAAgE;IAChE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEtB;;;;;;OAMG;IACH,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,oBAAoB,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAEtE;;;OAGG;IACH,WAAW,CAAC,CACV,IAAI,EAAE,KAAK,CAAC;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,oBAAoB,CAAA;KAAE,CAAC,GAC3D,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAEhC;;;OAGG;IACH,QAAQ,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC5B;AAED;;GAEG;AACH,qBAAa,qBAAsB,SAAQ,KAAK;IAC9C,SAAgB,GAAG,EAAE,MAAM,CAAC;IAC5B,SAAgB,KAAK,CAAC,EAAE,KAAK,CAAC;gBAElB,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE;CAQvE;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,SAAS,CAgB9D;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,aAAa,CAOtE"}
|
package/dist/secrets/types.js
CHANGED
|
@@ -2,13 +2,11 @@
|
|
|
2
2
|
* Error thrown when secret resolution fails.
|
|
3
3
|
*/
|
|
4
4
|
export class SecretResolutionError extends Error {
|
|
5
|
-
provider;
|
|
6
5
|
ref;
|
|
7
6
|
cause;
|
|
8
7
|
constructor(message, details) {
|
|
9
8
|
super(message);
|
|
10
9
|
this.name = "SecretResolutionError";
|
|
11
|
-
this.provider = details.provider;
|
|
12
10
|
this.ref = details.ref;
|
|
13
11
|
if (details.cause instanceof Error) {
|
|
14
12
|
this.cause = details.cause;
|
|
@@ -29,8 +27,7 @@ export function isSecretRef(value) {
|
|
|
29
27
|
return false;
|
|
30
28
|
}
|
|
31
29
|
const secretData = obj.$secret;
|
|
32
|
-
return
|
|
33
|
-
typeof secretData.ref === "string");
|
|
30
|
+
return typeof secretData.ref === "string";
|
|
34
31
|
}
|
|
35
32
|
/**
|
|
36
33
|
* Type guard to check if a value is a string literal.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/secrets/types.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/secrets/types.ts"],"names":[],"mappings":"AAyDA;;GAEG;AACH,MAAM,OAAO,qBAAsB,SAAQ,KAAK;IAC9B,GAAG,CAAS;IACZ,KAAK,CAAS;IAE9B,YAAY,OAAe,EAAE,OAAyC;QACpE,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,uBAAuB,CAAC;QACpC,IAAI,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;QACvB,IAAI,OAAO,CAAC,KAAK,YAAY,KAAK,EAAE,CAAC;YACnC,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;QAC7B,CAAC;IACH,CAAC;CACF;AAED;;GAEG;AACH,MAAM,UAAU,WAAW,CAAC,KAAc;IACxC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QAChD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,GAAG,GAAG,KAAgC,CAAC;IAC7C,IACE,CAAC,CAAC,SAAS,IAAI,GAAG,CAAC;QACnB,OAAO,GAAG,CAAC,OAAO,KAAK,QAAQ;QAC/B,GAAG,CAAC,OAAO,KAAK,IAAI,EACpB,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,UAAU,GAAG,GAAG,CAAC,OAAkC,CAAC;IAC1D,OAAO,OAAO,UAAU,CAAC,GAAG,KAAK,QAAQ,CAAC;AAC5C,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,eAAe,CAAC,KAAc;IAC5C,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QAChD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,GAAG,GAAG,KAAgC,CAAC;IAC7C,OAAO,UAAU,IAAI,GAAG,IAAI,OAAO,GAAG,CAAC,QAAQ,KAAK,QAAQ,CAAC;AAC/D,CAAC"}
|
package/dist/types.d.ts
CHANGED
|
@@ -45,11 +45,11 @@ export interface RunStatusUpdate {
|
|
|
45
45
|
*/
|
|
46
46
|
export interface StatusCallbacks {
|
|
47
47
|
/**
|
|
48
|
-
* Called when
|
|
48
|
+
* Called when monitor execution starts (after secret resolution, before graph execution).
|
|
49
49
|
*/
|
|
50
50
|
onStart?: () => Promise<void>;
|
|
51
51
|
/**
|
|
52
|
-
* Called when
|
|
52
|
+
* Called when monitor execution completes (success or failure).
|
|
53
53
|
*/
|
|
54
54
|
onComplete?: (update: RunStatusUpdate) => Promise<void>;
|
|
55
55
|
}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@griffin-app/griffin-plan-executor",
|
|
3
|
-
"version": "0.1.
|
|
4
|
-
"description": "Executor for griffin JSON test
|
|
3
|
+
"version": "0.1.15",
|
|
4
|
+
"description": "Executor for griffin JSON test monitors",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
7
7
|
"types": "dist/index.d.ts",
|
|
@@ -22,8 +22,8 @@
|
|
|
22
22
|
"license": "MIT",
|
|
23
23
|
"dependencies": {
|
|
24
24
|
"@aws-sdk/client-kinesis": "^3.975.0",
|
|
25
|
-
"@griffin-app/griffin-hub-sdk": "1.0.
|
|
26
|
-
"@griffin-app/griffin-ts": "0.1.
|
|
25
|
+
"@griffin-app/griffin-hub-sdk": "1.0.7",
|
|
26
|
+
"@griffin-app/griffin-ts": "0.1.15",
|
|
27
27
|
"axios": "^1.13.2",
|
|
28
28
|
"ts-edge": "^1.0.4",
|
|
29
29
|
"typebox": "^1.0.77"
|
|
@@ -21,7 +21,7 @@ import { KinesisClient } from "@aws-sdk/client-kinesis";
|
|
|
21
21
|
import {
|
|
22
22
|
DurableEventEmitter,
|
|
23
23
|
KinesisAdapter,
|
|
24
|
-
} from "@griffin-app/griffin-executor";
|
|
24
|
+
} from "@griffin-app/griffin-plan-executor";
|
|
25
25
|
|
|
26
26
|
// Create Kinesis client
|
|
27
27
|
const kinesisClient = new KinesisClient({ region: "us-east-1" });
|
|
@@ -41,7 +41,7 @@ const emitter = new DurableEventEmitter(adapter, {
|
|
|
41
41
|
});
|
|
42
42
|
|
|
43
43
|
// Use with executor
|
|
44
|
-
const result = await
|
|
44
|
+
const result = await executeMonitorV1(monitor, {
|
|
45
45
|
eventEmitter: emitter,
|
|
46
46
|
});
|
|
47
47
|
|
|
@@ -67,7 +67,7 @@ Simple in-memory storage for testing and local development.
|
|
|
67
67
|
import {
|
|
68
68
|
DurableEventEmitter,
|
|
69
69
|
InMemoryAdapter,
|
|
70
|
-
} from "@griffin-app/griffin-executor";
|
|
70
|
+
} from "@griffin-app/griffin-plan-executor";
|
|
71
71
|
|
|
72
72
|
const adapter = new InMemoryAdapter({
|
|
73
73
|
latencyMs: 10, // Optional: simulate network latency
|
|
@@ -79,13 +79,13 @@ const emitter = new DurableEventEmitter(adapter, {
|
|
|
79
79
|
flushIntervalMs: 50,
|
|
80
80
|
});
|
|
81
81
|
|
|
82
|
-
// Execute
|
|
83
|
-
await
|
|
82
|
+
// Execute monitor
|
|
83
|
+
await executeMonitorV1(monitor, { eventEmitter: emitter });
|
|
84
84
|
await emitter.flush();
|
|
85
85
|
|
|
86
86
|
// Inspect events
|
|
87
87
|
const allEvents = adapter.getEvents();
|
|
88
|
-
const planStartEvents = adapter.getEventsByType("
|
|
88
|
+
const planStartEvents = adapter.getEventsByType("MONITOR_START");
|
|
89
89
|
const executionEvents = adapter.getEventsForExecution("exec-123");
|
|
90
90
|
const publishCount = adapter.getPublishCount(); // Number of batches
|
|
91
91
|
|
|
@@ -109,7 +109,7 @@ To create a new adapter, implement the `DurableEventBusAdapter` interface:
|
|
|
109
109
|
import type {
|
|
110
110
|
DurableEventBusAdapter,
|
|
111
111
|
ExecutionEvent,
|
|
112
|
-
} from "@griffin-app/griffin-executor";
|
|
112
|
+
} from "@griffin-app/griffin-plan-executor";
|
|
113
113
|
|
|
114
114
|
export class MyCustomAdapter implements DurableEventBusAdapter {
|
|
115
115
|
async publish(events: ExecutionEvent[]): Promise<void> {
|