@griffin-app/griffin-plan-executor 0.1.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.
Files changed (114) hide show
  1. package/README.md +152 -0
  2. package/dist/adapters/axios.d.ts +5 -0
  3. package/dist/adapters/axios.d.ts.map +1 -0
  4. package/dist/adapters/axios.js +36 -0
  5. package/dist/adapters/axios.js.map +1 -0
  6. package/dist/adapters/index.d.ts +3 -0
  7. package/dist/adapters/index.d.ts.map +1 -0
  8. package/dist/adapters/index.js +3 -0
  9. package/dist/adapters/index.js.map +1 -0
  10. package/dist/adapters/stub.d.ts +22 -0
  11. package/dist/adapters/stub.d.ts.map +1 -0
  12. package/dist/adapters/stub.js +36 -0
  13. package/dist/adapters/stub.js.map +1 -0
  14. package/dist/events/emitter.d.ts +68 -0
  15. package/dist/events/emitter.d.ts.map +1 -0
  16. package/dist/events/emitter.js +83 -0
  17. package/dist/events/emitter.js.map +1 -0
  18. package/dist/events/emitter.test.d.ts +2 -0
  19. package/dist/events/emitter.test.d.ts.map +1 -0
  20. package/dist/events/emitter.test.js +251 -0
  21. package/dist/events/emitter.test.js.map +1 -0
  22. package/dist/events/index.d.ts +3 -0
  23. package/dist/events/index.d.ts.map +1 -0
  24. package/dist/events/index.js +3 -0
  25. package/dist/events/index.js.map +1 -0
  26. package/dist/events/types.d.ts +109 -0
  27. package/dist/events/types.d.ts.map +1 -0
  28. package/dist/events/types.js +9 -0
  29. package/dist/events/types.js.map +1 -0
  30. package/dist/executor.d.ts +4 -0
  31. package/dist/executor.d.ts.map +1 -0
  32. package/dist/executor.js +732 -0
  33. package/dist/executor.js.map +1 -0
  34. package/dist/executor.test.d.ts +2 -0
  35. package/dist/executor.test.d.ts.map +1 -0
  36. package/dist/executor.test.js +1524 -0
  37. package/dist/executor.test.js.map +1 -0
  38. package/dist/index.d.ts +8 -0
  39. package/dist/index.d.ts.map +1 -0
  40. package/dist/index.js +12 -0
  41. package/dist/index.js.map +1 -0
  42. package/dist/secrets/index.d.ts +14 -0
  43. package/dist/secrets/index.d.ts.map +1 -0
  44. package/dist/secrets/index.js +18 -0
  45. package/dist/secrets/index.js.map +1 -0
  46. package/dist/secrets/providers/aws.d.ts +63 -0
  47. package/dist/secrets/providers/aws.d.ts.map +1 -0
  48. package/dist/secrets/providers/aws.js +111 -0
  49. package/dist/secrets/providers/aws.js.map +1 -0
  50. package/dist/secrets/providers/env.d.ts +36 -0
  51. package/dist/secrets/providers/env.d.ts.map +1 -0
  52. package/dist/secrets/providers/env.js +37 -0
  53. package/dist/secrets/providers/env.js.map +1 -0
  54. package/dist/secrets/providers/index.d.ts +7 -0
  55. package/dist/secrets/providers/index.d.ts.map +1 -0
  56. package/dist/secrets/providers/index.js +7 -0
  57. package/dist/secrets/providers/index.js.map +1 -0
  58. package/dist/secrets/providers/vault.d.ts +75 -0
  59. package/dist/secrets/providers/vault.d.ts.map +1 -0
  60. package/dist/secrets/providers/vault.js +143 -0
  61. package/dist/secrets/providers/vault.js.map +1 -0
  62. package/dist/secrets/registry.d.ts +61 -0
  63. package/dist/secrets/registry.d.ts.map +1 -0
  64. package/dist/secrets/registry.js +182 -0
  65. package/dist/secrets/registry.js.map +1 -0
  66. package/dist/secrets/resolver.d.ts +40 -0
  67. package/dist/secrets/resolver.d.ts.map +1 -0
  68. package/dist/secrets/resolver.js +178 -0
  69. package/dist/secrets/resolver.js.map +1 -0
  70. package/dist/secrets/secrets.test.d.ts +2 -0
  71. package/dist/secrets/secrets.test.d.ts.map +1 -0
  72. package/dist/secrets/secrets.test.js +243 -0
  73. package/dist/secrets/secrets.test.js.map +1 -0
  74. package/dist/secrets/types.d.ts +71 -0
  75. package/dist/secrets/types.d.ts.map +1 -0
  76. package/dist/secrets/types.js +38 -0
  77. package/dist/secrets/types.js.map +1 -0
  78. package/dist/shared.d.ts +8 -0
  79. package/dist/shared.d.ts.map +1 -0
  80. package/dist/shared.js +30 -0
  81. package/dist/shared.js.map +1 -0
  82. package/dist/test-plan-types.d.ts +43 -0
  83. package/dist/test-plan-types.d.ts.map +1 -0
  84. package/dist/test-plan-types.js +2 -0
  85. package/dist/test-plan-types.js.map +1 -0
  86. package/dist/types.d.ts +77 -0
  87. package/dist/types.d.ts.map +1 -0
  88. package/dist/types.js +3 -0
  89. package/dist/types.js.map +1 -0
  90. package/package.json +35 -0
  91. package/src/adapters/axios.ts +41 -0
  92. package/src/adapters/index.ts +2 -0
  93. package/src/adapters/stub.ts +47 -0
  94. package/src/events/emitter.test.ts +316 -0
  95. package/src/events/emitter.ts +133 -0
  96. package/src/events/index.ts +2 -0
  97. package/src/events/types.ts +132 -0
  98. package/src/executor.test.ts +1674 -0
  99. package/src/executor.ts +986 -0
  100. package/src/index.ts +69 -0
  101. package/src/secrets/index.ts +41 -0
  102. package/src/secrets/providers/aws.ts +179 -0
  103. package/src/secrets/providers/env.ts +66 -0
  104. package/src/secrets/providers/index.ts +15 -0
  105. package/src/secrets/providers/vault.ts +257 -0
  106. package/src/secrets/registry.ts +234 -0
  107. package/src/secrets/resolver.ts +249 -0
  108. package/src/secrets/secrets.test.ts +318 -0
  109. package/src/secrets/types.ts +105 -0
  110. package/src/shared.ts +46 -0
  111. package/src/test-plan-types.ts +49 -0
  112. package/src/types.ts +95 -0
  113. package/tsconfig.json +20 -0
  114. package/vitest.config.ts +14 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"executor.test.js","sourceRoot":"","sources":["../src/executor.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ export { executePlanV1 } from "./executor.js";
2
+ export type { ExecutionOptions, ExecutionResult, NodeResult, HttpClientAdapter, HttpRequest, HttpResponse, } from "./types.js";
3
+ export type { TestPlan, Endpoint, WaitNode, AssertionNode, Edge, } from "./test-plan-types.js";
4
+ export { AxiosAdapter, StubAdapter, type StubResponse, } from "./adapters/index.js";
5
+ export { LocalEventEmitter, DurableEventEmitter, type ExecutionEventEmitter, type DurableEventBusAdapter, } from "./events/emitter.js";
6
+ export type { ExecutionEvent, BaseEvent, PlanStartEvent, PlanEndEvent, NodeStartEvent, NodeEndEvent, HttpRequestEvent, HttpResponseEvent, HttpRetryEvent, AssertionResultEvent, WaitStartEvent, NodeStreamEvent, ErrorEvent, } from "./events/types.js";
7
+ export { type SecretProvider, type SecretRef, type SecretRefData, type SecretResolveOptions, SecretResolutionError, isSecretRef, SecretProviderRegistry, resolveSecretsInPlan, collectSecretsFromPlan, planHasSecrets, EnvSecretProvider, type EnvSecretProviderOptions, AwsSecretsManagerProvider, type AwsSecretsManagerProviderOptions, type AwsSecretsManagerClient, VaultProvider, type VaultProviderOptions, type VaultHttpClient, } from "./secrets/index.js";
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,YAAY,EACV,gBAAgB,EAChB,eAAe,EACf,UAAU,EACV,iBAAiB,EACjB,WAAW,EACX,YAAY,GACb,MAAM,YAAY,CAAC;AACpB,YAAY,EACV,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,aAAa,EACb,IAAI,GACL,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,YAAY,EACZ,WAAW,EACX,KAAK,YAAY,GAClB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EACL,iBAAiB,EACjB,mBAAmB,EACnB,KAAK,qBAAqB,EAC1B,KAAK,sBAAsB,GAC5B,MAAM,qBAAqB,CAAC;AAC7B,YAAY,EACV,cAAc,EACd,SAAS,EACT,cAAc,EACd,YAAY,EACZ,cAAc,EACd,YAAY,EACZ,gBAAgB,EAChB,iBAAiB,EACjB,cAAc,EACd,oBAAoB,EACpB,cAAc,EACd,eAAe,EACf,UAAU,GACX,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EAEL,KAAK,cAAc,EACnB,KAAK,SAAS,EACd,KAAK,aAAa,EAClB,KAAK,oBAAoB,EACzB,qBAAqB,EACrB,WAAW,EAEX,sBAAsB,EAEtB,oBAAoB,EACpB,sBAAsB,EACtB,cAAc,EAEd,iBAAiB,EACjB,KAAK,wBAAwB,EAC7B,yBAAyB,EACzB,KAAK,gCAAgC,EACrC,KAAK,uBAAuB,EAC5B,aAAa,EACb,KAAK,oBAAoB,EACzB,KAAK,eAAe,GACrB,MAAM,oBAAoB,CAAC"}
package/dist/index.js ADDED
@@ -0,0 +1,12 @@
1
+ export { executePlanV1 } from "./executor.js";
2
+ export { AxiosAdapter, StubAdapter, } from "./adapters/index.js";
3
+ export { LocalEventEmitter, DurableEventEmitter, } from "./events/emitter.js";
4
+ // Export secrets system
5
+ export { SecretResolutionError, isSecretRef,
6
+ // Registry
7
+ SecretProviderRegistry,
8
+ // Resolution utilities
9
+ resolveSecretsInPlan, collectSecretsFromPlan, planHasSecrets,
10
+ // Providers
11
+ EnvSecretProvider, AwsSecretsManagerProvider, VaultProvider, } from "./secrets/index.js";
12
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAgB9C,OAAO,EACL,YAAY,EACZ,WAAW,GAEZ,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EACL,iBAAiB,EACjB,mBAAmB,GAGpB,MAAM,qBAAqB,CAAC;AAiB7B,wBAAwB;AACxB,OAAO,EAML,qBAAqB,EACrB,WAAW;AACX,WAAW;AACX,sBAAsB;AACtB,uBAAuB;AACvB,oBAAoB,EACpB,sBAAsB,EACtB,cAAc;AACd,YAAY;AACZ,iBAAiB,EAEjB,yBAAyB,EAGzB,aAAa,GAGd,MAAM,oBAAoB,CAAC"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Secret management for griffin plan executor.
3
+ *
4
+ * This module provides:
5
+ * - SecretProvider interface for implementing custom providers
6
+ * - SecretProviderRegistry for managing multiple providers
7
+ * - Secret resolution utilities for test plans
8
+ * - Built-in providers: env, aws, vault
9
+ */
10
+ export { type SecretProvider, type SecretRef, type SecretRefData, type SecretResolveOptions, SecretResolutionError, isSecretRef, } from "./types.js";
11
+ export { SecretProviderRegistry } from "./registry.js";
12
+ export { resolveSecretsInPlan, collectSecretsFromPlan, planHasSecrets, } from "./resolver.js";
13
+ export { EnvSecretProvider, type EnvSecretProviderOptions, AwsSecretsManagerProvider, type AwsSecretsManagerProviderOptions, type AwsSecretsManagerClient, VaultProvider, type VaultProviderOptions, type VaultHttpClient, } from "./providers/index.js";
14
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/secrets/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,OAAO,EACL,KAAK,cAAc,EACnB,KAAK,SAAS,EACd,KAAK,aAAa,EAClB,KAAK,oBAAoB,EACzB,qBAAqB,EACrB,WAAW,GACZ,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AAGvD,OAAO,EACL,oBAAoB,EACpB,sBAAsB,EACtB,cAAc,GACf,MAAM,eAAe,CAAC;AAGvB,OAAO,EACL,iBAAiB,EACjB,KAAK,wBAAwB,EAC7B,yBAAyB,EACzB,KAAK,gCAAgC,EACrC,KAAK,uBAAuB,EAC5B,aAAa,EACb,KAAK,oBAAoB,EACzB,KAAK,eAAe,GACrB,MAAM,sBAAsB,CAAC"}
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Secret management for griffin plan executor.
3
+ *
4
+ * This module provides:
5
+ * - SecretProvider interface for implementing custom providers
6
+ * - SecretProviderRegistry for managing multiple providers
7
+ * - Secret resolution utilities for test plans
8
+ * - Built-in providers: env, aws, vault
9
+ */
10
+ // Core types
11
+ export { SecretResolutionError, isSecretRef, } from "./types.js";
12
+ // Registry
13
+ export { SecretProviderRegistry } from "./registry.js";
14
+ // Resolution utilities
15
+ export { resolveSecretsInPlan, collectSecretsFromPlan, planHasSecrets, } from "./resolver.js";
16
+ // Providers
17
+ export { EnvSecretProvider, AwsSecretsManagerProvider, VaultProvider, } from "./providers/index.js";
18
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/secrets/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,aAAa;AACb,OAAO,EAKL,qBAAqB,EACrB,WAAW,GACZ,MAAM,YAAY,CAAC;AAEpB,WAAW;AACX,OAAO,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AAEvD,uBAAuB;AACvB,OAAO,EACL,oBAAoB,EACpB,sBAAsB,EACtB,cAAc,GACf,MAAM,eAAe,CAAC;AAEvB,YAAY;AACZ,OAAO,EACL,iBAAiB,EAEjB,yBAAyB,EAGzB,aAAa,GAGd,MAAM,sBAAsB,CAAC"}
@@ -0,0 +1,63 @@
1
+ /**
2
+ * AWS Secrets Manager secret provider.
3
+ *
4
+ * Reads secrets from AWS Secrets Manager. Supports JSON secrets
5
+ * with field extraction and version staging.
6
+ *
7
+ * Usage in DSL:
8
+ * secret("aws:my-secret")
9
+ * secret("aws:prod/api-keys", { field: "stripe" })
10
+ * secret("aws:my-secret", { version: "AWSPREVIOUS" })
11
+ */
12
+ import type { SecretProvider, SecretResolveOptions } from "../types.js";
13
+ /**
14
+ * Interface for AWS Secrets Manager client.
15
+ * This allows dependency injection of the actual AWS SDK client.
16
+ */
17
+ export interface AwsSecretsManagerClient {
18
+ getSecretValue(params: {
19
+ SecretId: string;
20
+ VersionStage?: string;
21
+ }): Promise<{
22
+ SecretString?: string;
23
+ SecretBinary?: Uint8Array;
24
+ }>;
25
+ }
26
+ export interface AwsSecretsManagerProviderOptions {
27
+ /**
28
+ * AWS Secrets Manager client instance.
29
+ * Should be pre-configured with region and credentials.
30
+ */
31
+ client: AwsSecretsManagerClient;
32
+ /**
33
+ * Optional prefix for secret names.
34
+ * For example, if prefix is "myapp/", then secret("aws:api-key")
35
+ * will look for "myapp/api-key" in Secrets Manager.
36
+ */
37
+ prefix?: string;
38
+ /**
39
+ * Default version stage to use if not specified.
40
+ * Defaults to "AWSCURRENT".
41
+ */
42
+ defaultVersionStage?: string;
43
+ }
44
+ export declare class AwsSecretsManagerProvider implements SecretProvider {
45
+ readonly name = "aws";
46
+ private readonly client;
47
+ private readonly prefix;
48
+ private readonly defaultVersionStage;
49
+ private cache;
50
+ private readonly cacheTtlMs;
51
+ constructor(options: AwsSecretsManagerProviderOptions);
52
+ resolve(ref: string, options?: SecretResolveOptions): Promise<string>;
53
+ /**
54
+ * Extract a field from a JSON secret string.
55
+ */
56
+ private extractField;
57
+ validate(): Promise<void>;
58
+ /**
59
+ * Clear the cache. Useful for testing or forced refresh.
60
+ */
61
+ clearCache(): void;
62
+ }
63
+ //# sourceMappingURL=aws.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"aws.d.ts","sourceRoot":"","sources":["../../../src/secrets/providers/aws.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAGxE;;;GAGG;AACH,MAAM,WAAW,uBAAuB;IACtC,cAAc,CAAC,MAAM,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,YAAY,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC;QAC3E,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,YAAY,CAAC,EAAE,UAAU,CAAC;KAC3B,CAAC,CAAC;CACJ;AAED,MAAM,WAAW,gCAAgC;IAC/C;;;OAGG;IACH,MAAM,EAAE,uBAAuB,CAAC;IAEhC;;;;OAIG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;OAGG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED,qBAAa,yBAA0B,YAAW,cAAc;IAC9D,QAAQ,CAAC,IAAI,SAAS;IACtB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA0B;IACjD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAS;IAG7C,OAAO,CAAC,KAAK,CAAyD;IACtE,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAiB;gBAEhC,OAAO,EAAE,gCAAgC;IAM/C,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,oBAAoB,GAAG,OAAO,CAAC,MAAM,CAAC;IAwD3E;;OAEG;IACH,OAAO,CAAC,YAAY;IA4Cd,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAM/B;;OAEG;IACH,UAAU,IAAI,IAAI;CAGnB"}
@@ -0,0 +1,111 @@
1
+ /**
2
+ * AWS Secrets Manager secret provider.
3
+ *
4
+ * Reads secrets from AWS Secrets Manager. Supports JSON secrets
5
+ * with field extraction and version staging.
6
+ *
7
+ * Usage in DSL:
8
+ * secret("aws:my-secret")
9
+ * secret("aws:prod/api-keys", { field: "stripe" })
10
+ * secret("aws:my-secret", { version: "AWSPREVIOUS" })
11
+ */
12
+ import { SecretResolutionError } from "../types.js";
13
+ export class AwsSecretsManagerProvider {
14
+ name = "aws";
15
+ client;
16
+ prefix;
17
+ defaultVersionStage;
18
+ // Simple in-memory cache with TTL
19
+ cache = new Map();
20
+ cacheTtlMs = 5 * 60 * 1000; // 5 minutes
21
+ constructor(options) {
22
+ this.client = options.client;
23
+ this.prefix = options.prefix ?? "";
24
+ this.defaultVersionStage = options.defaultVersionStage ?? "AWSCURRENT";
25
+ }
26
+ async resolve(ref, options) {
27
+ const secretId = this.prefix + ref;
28
+ const versionStage = options?.version ?? this.defaultVersionStage;
29
+ const cacheKey = `${secretId}:${versionStage}`;
30
+ // Check cache
31
+ const cached = this.cache.get(cacheKey);
32
+ if (cached && cached.expires > Date.now()) {
33
+ return this.extractField(cached.value, options?.field, ref);
34
+ }
35
+ try {
36
+ const response = await this.client.getSecretValue({
37
+ SecretId: secretId,
38
+ VersionStage: versionStage,
39
+ });
40
+ if (!response.SecretString) {
41
+ throw new SecretResolutionError(`Secret "${secretId}" does not contain a string value (binary secrets are not supported)`, { provider: this.name, ref });
42
+ }
43
+ // Cache the raw value
44
+ this.cache.set(cacheKey, {
45
+ value: response.SecretString,
46
+ expires: Date.now() + this.cacheTtlMs,
47
+ });
48
+ return this.extractField(response.SecretString, options?.field, ref);
49
+ }
50
+ catch (error) {
51
+ if (error instanceof SecretResolutionError) {
52
+ throw error;
53
+ }
54
+ // Handle common AWS errors
55
+ const awsError = error;
56
+ let message = `Failed to retrieve secret "${secretId}"`;
57
+ if (awsError.name === "ResourceNotFoundException") {
58
+ message = `Secret "${secretId}" not found in AWS Secrets Manager`;
59
+ }
60
+ else if (awsError.name === "AccessDeniedException") {
61
+ message = `Access denied to secret "${secretId}". Check IAM permissions.`;
62
+ }
63
+ else if (awsError.message) {
64
+ message = `${message}: ${awsError.message}`;
65
+ }
66
+ throw new SecretResolutionError(message, {
67
+ provider: this.name,
68
+ ref,
69
+ cause: error,
70
+ });
71
+ }
72
+ }
73
+ /**
74
+ * Extract a field from a JSON secret string.
75
+ */
76
+ extractField(secretValue, field, ref) {
77
+ if (!field) {
78
+ return secretValue;
79
+ }
80
+ try {
81
+ const parsed = JSON.parse(secretValue);
82
+ if (typeof parsed !== "object" || parsed === null) {
83
+ throw new SecretResolutionError(`Secret "${ref}" is not a JSON object, cannot extract field "${field}"`, { provider: this.name, ref });
84
+ }
85
+ const value = parsed[field];
86
+ if (value === undefined) {
87
+ throw new SecretResolutionError(`Field "${field}" not found in secret "${ref}"`, { provider: this.name, ref });
88
+ }
89
+ // Convert to string if not already
90
+ return typeof value === "string" ? value : JSON.stringify(value);
91
+ }
92
+ catch (error) {
93
+ if (error instanceof SecretResolutionError) {
94
+ throw error;
95
+ }
96
+ throw new SecretResolutionError(`Failed to parse secret "${ref}" as JSON for field extraction: ${error instanceof Error ? error.message : String(error)}`, { provider: this.name, ref, cause: error });
97
+ }
98
+ }
99
+ async validate() {
100
+ // Try a simple operation to verify credentials
101
+ // This is a no-op if the client is properly configured
102
+ // The actual validation happens on first secret access
103
+ }
104
+ /**
105
+ * Clear the cache. Useful for testing or forced refresh.
106
+ */
107
+ clearCache() {
108
+ this.cache.clear();
109
+ }
110
+ }
111
+ //# sourceMappingURL=aws.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"aws.js","sourceRoot":"","sources":["../../../src/secrets/providers/aws.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,36 @@
1
+ /**
2
+ * Environment variable secret provider.
3
+ *
4
+ * Reads secrets from process.env. Useful for local development
5
+ * and simple deployments where secrets are injected as environment variables.
6
+ *
7
+ * Usage in DSL:
8
+ * secret("env:MY_API_KEY")
9
+ * secret("env:DATABASE_URL")
10
+ */
11
+ import type { SecretProvider, SecretResolveOptions } from "../types.js";
12
+ export interface EnvSecretProviderOptions {
13
+ /**
14
+ * Custom environment object to read from.
15
+ * Defaults to process.env.
16
+ */
17
+ env?: Record<string, string | undefined>;
18
+ /**
19
+ * Prefix to strip from secret refs.
20
+ * For example, if prefix is "APP_", then secret("env:API_KEY")
21
+ * will look for "APP_API_KEY" in the environment.
22
+ */
23
+ prefix?: string;
24
+ }
25
+ export declare class EnvSecretProvider implements SecretProvider {
26
+ readonly name = "env";
27
+ private readonly env;
28
+ private readonly prefix;
29
+ constructor(options?: EnvSecretProviderOptions);
30
+ resolve(ref: string, _options?: SecretResolveOptions): Promise<string>;
31
+ resolveMany(refs: Array<{
32
+ ref: string;
33
+ options?: SecretResolveOptions;
34
+ }>): Promise<Map<string, string>>;
35
+ }
36
+ //# sourceMappingURL=env.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"env.d.ts","sourceRoot":"","sources":["../../../src/secrets/providers/env.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAGxE,MAAM,WAAW,wBAAwB;IACvC;;;OAGG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;IAEzC;;;;OAIG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,qBAAa,iBAAkB,YAAW,cAAc;IACtD,QAAQ,CAAC,IAAI,SAAS;IACtB,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAqC;IACzD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;gBAEpB,OAAO,GAAE,wBAA6B;IAK5C,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,oBAAoB,GAAG,OAAO,CAAC,MAAM,CAAC;IActE,WAAW,CACf,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;CAUhC"}
@@ -0,0 +1,37 @@
1
+ /**
2
+ * Environment variable secret provider.
3
+ *
4
+ * Reads secrets from process.env. Useful for local development
5
+ * and simple deployments where secrets are injected as environment variables.
6
+ *
7
+ * Usage in DSL:
8
+ * secret("env:MY_API_KEY")
9
+ * secret("env:DATABASE_URL")
10
+ */
11
+ import { SecretResolutionError } from "../types.js";
12
+ export class EnvSecretProvider {
13
+ name = "env";
14
+ env;
15
+ prefix;
16
+ constructor(options = {}) {
17
+ this.env = options.env ?? process.env;
18
+ this.prefix = options.prefix ?? "";
19
+ }
20
+ async resolve(ref, _options) {
21
+ const envKey = this.prefix + ref;
22
+ const value = this.env[envKey];
23
+ if (value === undefined) {
24
+ throw new SecretResolutionError(`Environment variable "${envKey}" is not set`, { provider: this.name, ref });
25
+ }
26
+ return value;
27
+ }
28
+ async resolveMany(refs) {
29
+ const results = new Map();
30
+ for (const { ref } of refs) {
31
+ const value = await this.resolve(ref);
32
+ results.set(ref, value);
33
+ }
34
+ return results;
35
+ }
36
+ }
37
+ //# sourceMappingURL=env.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"env.js","sourceRoot":"","sources":["../../../src/secrets/providers/env.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAiBpD,MAAM,OAAO,iBAAiB;IACnB,IAAI,GAAG,KAAK,CAAC;IACL,GAAG,CAAqC;IACxC,MAAM,CAAS;IAEhC,YAAY,UAAoC,EAAE;QAChD,IAAI,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC;QACtC,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,EAAE,CAAC;IACrC,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,GAAW,EAAE,QAA+B;QACxD,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC;QACjC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAE/B,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,MAAM,IAAI,qBAAqB,CAC7B,yBAAyB,MAAM,cAAc,EAC7C,EAAE,QAAQ,EAAE,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,CAC7B,CAAC;QACJ,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAED,KAAK,CAAC,WAAW,CACf,IAA4D;QAE5D,MAAM,OAAO,GAAG,IAAI,GAAG,EAAkB,CAAC;QAE1C,KAAK,MAAM,EAAE,GAAG,EAAE,IAAI,IAAI,EAAE,CAAC;YAC3B,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YACtC,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QAC1B,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;CACF"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Secret provider implementations.
3
+ */
4
+ export { EnvSecretProvider, type EnvSecretProviderOptions } from "./env.js";
5
+ export { AwsSecretsManagerProvider, type AwsSecretsManagerProviderOptions, type AwsSecretsManagerClient, } from "./aws.js";
6
+ export { VaultProvider, type VaultProviderOptions, type VaultHttpClient, } from "./vault.js";
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/secrets/providers/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,iBAAiB,EAAE,KAAK,wBAAwB,EAAE,MAAM,UAAU,CAAC;AAC5E,OAAO,EACL,yBAAyB,EACzB,KAAK,gCAAgC,EACrC,KAAK,uBAAuB,GAC7B,MAAM,UAAU,CAAC;AAClB,OAAO,EACL,aAAa,EACb,KAAK,oBAAoB,EACzB,KAAK,eAAe,GACrB,MAAM,YAAY,CAAC"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Secret provider implementations.
3
+ */
4
+ export { EnvSecretProvider } from "./env.js";
5
+ export { AwsSecretsManagerProvider, } from "./aws.js";
6
+ export { VaultProvider, } from "./vault.js";
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/secrets/providers/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,iBAAiB,EAAiC,MAAM,UAAU,CAAC;AAC5E,OAAO,EACL,yBAAyB,GAG1B,MAAM,UAAU,CAAC;AAClB,OAAO,EACL,aAAa,GAGd,MAAM,YAAY,CAAC"}
@@ -0,0 +1,75 @@
1
+ /**
2
+ * HashiCorp Vault secret provider.
3
+ *
4
+ * Reads secrets from HashiCorp Vault KV secrets engine (v1 and v2).
5
+ * Supports field extraction from JSON secrets.
6
+ *
7
+ * Usage in DSL:
8
+ * secret("vault:secret/data/myapp/config")
9
+ * secret("vault:secret/data/myapp/config", { field: "api_key" })
10
+ * secret("vault:secret/data/myapp/config", { version: "2" })
11
+ */
12
+ import type { SecretProvider, SecretResolveOptions } from "../types.js";
13
+ /**
14
+ * HTTP client interface for Vault API calls.
15
+ * This allows dependency injection without requiring a specific HTTP library.
16
+ */
17
+ export interface VaultHttpClient {
18
+ get(url: string, options: {
19
+ headers: Record<string, string>;
20
+ }): Promise<{
21
+ status: number;
22
+ data: unknown;
23
+ }>;
24
+ }
25
+ export interface VaultProviderOptions {
26
+ /**
27
+ * Vault server address (e.g., "https://vault.example.com:8200").
28
+ */
29
+ address: string;
30
+ /**
31
+ * Authentication token.
32
+ */
33
+ token: string;
34
+ /**
35
+ * HTTP client for making requests to Vault.
36
+ */
37
+ httpClient: VaultHttpClient;
38
+ /**
39
+ * Optional namespace for Vault Enterprise.
40
+ */
41
+ namespace?: string;
42
+ /**
43
+ * KV secrets engine version (1 or 2).
44
+ * Defaults to 2.
45
+ */
46
+ kvVersion?: 1 | 2;
47
+ /**
48
+ * Optional prefix for secret paths.
49
+ */
50
+ prefix?: string;
51
+ }
52
+ export declare class VaultProvider implements SecretProvider {
53
+ readonly name = "vault";
54
+ private readonly address;
55
+ private readonly token;
56
+ private readonly httpClient;
57
+ private readonly namespace?;
58
+ private readonly kvVersion;
59
+ private readonly prefix;
60
+ private cache;
61
+ private readonly cacheTtlMs;
62
+ constructor(options: VaultProviderOptions);
63
+ resolve(ref: string, options?: SecretResolveOptions): Promise<string>;
64
+ /**
65
+ * Extract a field from the secret data.
66
+ * If no field is specified, returns the entire data as JSON string.
67
+ */
68
+ private extractField;
69
+ validate(): Promise<void>;
70
+ /**
71
+ * Clear the cache. Useful for testing or forced refresh.
72
+ */
73
+ clearCache(): void;
74
+ }
75
+ //# sourceMappingURL=vault.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vault.d.ts","sourceRoot":"","sources":["../../../src/secrets/providers/vault.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAGxE;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B,GAAG,CACD,GAAG,EAAE,MAAM,EACX,OAAO,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;KAAE,GAC3C,OAAO,CAAC;QACT,MAAM,EAAE,MAAM,CAAC;QACf,IAAI,EAAE,OAAO,CAAC;KACf,CAAC,CAAC;CACJ;AAED,MAAM,WAAW,oBAAoB;IACnC;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,UAAU,EAAE,eAAe,CAAC;IAE5B;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;;OAGG;IACH,SAAS,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;IAElB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,qBAAa,aAAc,YAAW,cAAc;IAClD,QAAQ,CAAC,IAAI,WAAW;IACxB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAS;IAC/B,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAkB;IAC7C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAQ;IAClC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAGhC,OAAO,CAAC,KAAK,CAGT;IACJ,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAiB;gBAEhC,OAAO,EAAE,oBAAoB;IASnC,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,oBAAoB,GAAG,OAAO,CAAC,MAAM,CAAC;IAoG3E;;;OAGG;IACH,OAAO,CAAC,YAAY;IAuBd,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAoC/B;;OAEG;IACH,UAAU,IAAI,IAAI;CAGnB"}