@empire-builder-kit/runtime 1.0.0-beta.8 → 1.0.0-rc.1
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/NOTICE +6 -0
- package/package.json +93 -3
- package/src/api-contract/artifacts.d.ts +67 -0
- package/src/api-contract/artifacts.js +349 -0
- package/src/api-contract/artifacts.js.map +1 -0
- package/src/api-contract/client.d.ts +79 -0
- package/src/api-contract/client.js +561 -0
- package/src/api-contract/client.js.map +1 -0
- package/src/api-contract/errors.d.ts +7 -0
- package/src/api-contract/errors.js +11 -0
- package/src/api-contract/errors.js.map +1 -0
- package/src/api-contract/index.d.ts +9 -0
- package/src/api-contract/index.js +10 -0
- package/src/api-contract/index.js.map +1 -0
- package/src/api-contract/operation.d.ts +118 -0
- package/src/api-contract/operation.js +609 -0
- package/src/api-contract/operation.js.map +1 -0
- package/src/api-contract/schema.d.ts +81 -0
- package/src/api-contract/schema.js +313 -0
- package/src/api-contract/schema.js.map +1 -0
- package/src/api-contract/server.d.ts +77 -0
- package/src/api-contract/server.js +466 -0
- package/src/api-contract/server.js.map +1 -0
- package/src/async-work/contract.d.ts +17 -0
- package/src/async-work/contract.js +105 -0
- package/src/async-work/contract.js.map +1 -0
- package/src/async-work/idempotency.d.ts +123 -0
- package/src/async-work/idempotency.js +167 -0
- package/src/async-work/idempotency.js.map +1 -0
- package/src/async-work/index.d.ts +8 -0
- package/src/async-work/index.js +9 -0
- package/src/async-work/index.js.map +1 -0
- package/src/async-work/provider.d.ts +90 -0
- package/src/async-work/provider.js +155 -0
- package/src/async-work/provider.js.map +1 -0
- package/src/async-work/recovery.d.ts +103 -0
- package/src/async-work/recovery.js +291 -0
- package/src/async-work/recovery.js.map +1 -0
- package/src/async-work/schedule.d.ts +117 -0
- package/src/async-work/schedule.js +279 -0
- package/src/async-work/schedule.js.map +1 -0
- package/src/async-work/sqs.d.ts +133 -0
- package/src/async-work/sqs.js +280 -0
- package/src/async-work/sqs.js.map +1 -0
- package/src/async-work/webhook.d.ts +60 -0
- package/src/async-work/webhook.js +178 -0
- package/src/async-work/webhook.js.map +1 -0
- package/src/async-work/workflow.d.ts +98 -0
- package/src/async-work/workflow.js +225 -0
- package/src/async-work/workflow.js.map +1 -0
- package/src/auth-backend.d.ts +12 -2
- package/src/auth-backend.js +30 -18
- package/src/auth-backend.js.map +1 -1
- package/src/authorization/admission.d.ts +30 -0
- package/src/authorization/admission.js +87 -0
- package/src/authorization/admission.js.map +1 -0
- package/src/authorization/approval.d.ts +99 -0
- package/src/authorization/approval.js +249 -0
- package/src/authorization/approval.js.map +1 -0
- package/src/authorization/audit.d.ts +35 -0
- package/src/authorization/audit.js +35 -0
- package/src/authorization/audit.js.map +1 -0
- package/src/authorization/delegation.d.ts +149 -0
- package/src/authorization/delegation.js +401 -0
- package/src/authorization/delegation.js.map +1 -0
- package/src/authorization/errors.d.ts +32 -0
- package/src/authorization/errors.js +153 -0
- package/src/authorization/errors.js.map +1 -0
- package/src/authorization/evaluator.d.ts +39 -0
- package/src/authorization/evaluator.js +199 -0
- package/src/authorization/evaluator.js.map +1 -0
- package/src/authorization/index.d.ts +14 -0
- package/src/authorization/index.js +15 -0
- package/src/authorization/index.js.map +1 -0
- package/src/authorization/machine-token.d.ts +87 -0
- package/src/authorization/machine-token.js +201 -0
- package/src/authorization/machine-token.js.map +1 -0
- package/src/authorization/machine.d.ts +32 -0
- package/src/authorization/machine.js +41 -0
- package/src/authorization/machine.js.map +1 -0
- package/src/authorization/model.d.ts +112 -0
- package/src/authorization/model.js +112 -0
- package/src/authorization/model.js.map +1 -0
- package/src/canonical-json.cjs +157 -0
- package/src/canonical-json.d.cts +26 -0
- package/src/canonical-json.d.ts +18 -0
- package/src/canonical-json.js +125 -0
- package/src/canonical-json.js.map +1 -0
- package/src/configuration/contract.d.ts +107 -0
- package/src/configuration/contract.js +461 -0
- package/src/configuration/contract.js.map +1 -0
- package/src/configuration/index.d.ts +3 -0
- package/src/configuration/index.js +4 -0
- package/src/configuration/index.js.map +1 -0
- package/src/configuration/provider.d.ts +59 -0
- package/src/configuration/provider.js +198 -0
- package/src/configuration/provider.js.map +1 -0
- package/src/configuration/rollout-evaluator.cjs +54 -0
- package/src/configuration/rollout-evaluator.d.cts +26 -0
- package/src/configuration/rollout-evaluator.d.ts +18 -0
- package/src/configuration/rollout-evaluator.js +38 -0
- package/src/configuration/rollout-evaluator.js.map +1 -0
- package/src/configuration/rollout-key.cjs +38 -0
- package/src/configuration/rollout-key.d.cts +14 -0
- package/src/configuration/rollout-key.d.ts +10 -0
- package/src/configuration/rollout-key.js +26 -0
- package/src/configuration/rollout-key.js.map +1 -0
- package/src/configuration/rollout.d.ts +60 -0
- package/src/configuration/rollout.js +42 -0
- package/src/configuration/rollout.js.map +1 -0
- package/src/data-lifecycle/contract.d.ts +33 -0
- package/src/data-lifecycle/contract.js +118 -0
- package/src/data-lifecycle/contract.js.map +1 -0
- package/src/data-lifecycle/event.d.ts +28 -0
- package/src/data-lifecycle/event.js +76 -0
- package/src/data-lifecycle/event.js.map +1 -0
- package/src/data-lifecycle/evidence.d.ts +65 -0
- package/src/data-lifecycle/evidence.js +162 -0
- package/src/data-lifecycle/evidence.js.map +1 -0
- package/src/data-lifecycle/holds.d.ts +29 -0
- package/src/data-lifecycle/holds.js +124 -0
- package/src/data-lifecycle/holds.js.map +1 -0
- package/src/data-lifecycle/index.d.ts +8 -0
- package/src/data-lifecycle/index.js +9 -0
- package/src/data-lifecycle/index.js.map +1 -0
- package/src/data-lifecycle/policy.d.ts +16 -0
- package/src/data-lifecycle/policy.js +79 -0
- package/src/data-lifecycle/policy.js.map +1 -0
- package/src/data-lifecycle/restore.d.ts +90 -0
- package/src/data-lifecycle/restore.js +336 -0
- package/src/data-lifecycle/restore.js.map +1 -0
- package/src/data-lifecycle/retention.d.ts +57 -0
- package/src/data-lifecycle/retention.js +232 -0
- package/src/data-lifecycle/retention.js.map +1 -0
- package/src/data-lifecycle/rights.d.ts +171 -0
- package/src/data-lifecycle/rights.js +533 -0
- package/src/data-lifecycle/rights.js.map +1 -0
- package/src/database.d.ts +36 -0
- package/src/database.js +119 -0
- package/src/database.js.map +1 -0
- package/src/deterministic-order.cjs +16 -0
- package/src/deterministic-order.d.cts +9 -0
- package/src/deterministic-order.d.ts +7 -0
- package/src/deterministic-order.js +10 -0
- package/src/deterministic-order.js.map +1 -0
- package/src/events.d.ts +28 -19
- package/src/events.js +171 -66
- package/src/events.js.map +1 -1
- package/src/index.d.ts +7 -1
- package/src/index.js +24 -0
- package/src/index.js.map +1 -1
- package/src/lambda.d.ts +8 -2
- package/src/lambda.js +100 -39
- package/src/lambda.js.map +1 -1
- package/src/logging.d.ts +95 -36
- package/src/logging.js +460 -62
- package/src/logging.js.map +1 -1
- package/src/observability.d.ts +80 -18
- package/src/observability.js +252 -61
- package/src/observability.js.map +1 -1
- package/src/performance/index.d.ts +1 -0
- package/src/performance/index.js +2 -0
- package/src/performance/index.js.map +1 -0
- package/src/performance/protected-load-endpoint.d.ts +140 -0
- package/src/performance/protected-load-endpoint.js +462 -0
- package/src/performance/protected-load-endpoint.js.map +1 -0
- package/src/rds-global-ca-bundle.d.ts +1 -0
- package/src/rds-global-ca-bundle.js +2742 -0
- package/src/rds-global-ca-bundle.js.map +1 -0
- package/src/reliability/burn.d.ts +39 -0
- package/src/reliability/burn.js +102 -0
- package/src/reliability/burn.js.map +1 -0
- package/src/reliability/contract.d.ts +5 -0
- package/src/reliability/contract.js +317 -0
- package/src/reliability/contract.js.map +1 -0
- package/src/reliability/incident.d.ts +16 -0
- package/src/reliability/incident.js +562 -0
- package/src/reliability/incident.js.map +1 -0
- package/src/reliability/index.d.ts +5 -0
- package/src/reliability/index.js +6 -0
- package/src/reliability/index.js.map +1 -0
- package/src/reliability/model.d.ts +191 -0
- package/src/reliability/model.fixtures.d.ts +2 -0
- package/src/reliability/model.fixtures.js +57 -0
- package/src/reliability/model.fixtures.js.map +1 -0
- package/src/reliability/model.js +2 -0
- package/src/reliability/model.js.map +1 -0
- package/src/reliability/slo.d.ts +9 -0
- package/src/reliability/slo.js +74 -0
- package/src/reliability/slo.js.map +1 -0
- package/src/request-context.d.ts +57 -15
- package/src/request-context.js +116 -36
- package/src/request-context.js.map +1 -1
- package/src/safe-reference.cjs +57 -0
- package/src/safe-reference.d.cts +25 -0
- package/src/safe-reference.d.ts +11 -0
- package/src/safe-reference.js +46 -0
- package/src/safe-reference.js.map +1 -0
- package/src/secrets/contract.d.ts +99 -0
- package/src/secrets/contract.js +238 -0
- package/src/secrets/contract.js.map +1 -0
- package/src/secrets/index.d.ts +4 -0
- package/src/secrets/index.js +5 -0
- package/src/secrets/index.js.map +1 -0
- package/src/secrets/observability.d.ts +14 -0
- package/src/secrets/observability.js +100 -0
- package/src/secrets/observability.js.map +1 -0
- package/src/secrets/personal.d.ts +48 -0
- package/src/secrets/personal.js +332 -0
- package/src/secrets/personal.js.map +1 -0
- package/src/secrets/resolver.d.ts +125 -0
- package/src/secrets/resolver.js +602 -0
- package/src/secrets/resolver.js.map +1 -0
- package/src/secrets/sensitive-patterns.cjs +84 -0
- package/src/secrets/sensitive-patterns.d.cts +62 -0
- package/src/secrets/sensitive-patterns.d.ts +40 -0
- package/src/secrets/sensitive-patterns.js +60 -0
- package/src/secrets/sensitive-patterns.js.map +1 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"request-context.js","sourceRoot":"","sources":["../../../../packages/runtime/src/request-context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"request-context.js","sourceRoot":"","sources":["../../../../packages/runtime/src/request-context.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
// @generated from packages/runtime/src/safe-reference.ts by tools/runtime/generate-shared-authorities.mjs
|
|
2
|
+
// Do not edit this artifact directly.
|
|
3
|
+
'use strict';
|
|
4
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
5
|
+
exports.SAFE_REFERENCE_PROFILES = void 0;
|
|
6
|
+
exports.isBoundedSafeReference = isBoundedSafeReference;
|
|
7
|
+
exports.safeReferencePatternSource = safeReferencePatternSource;
|
|
8
|
+
exports.safeReferenceMaximumLength = safeReferenceMaximumLength;
|
|
9
|
+
exports.SAFE_REFERENCE_PROFILES = Object.freeze([
|
|
10
|
+
'framework',
|
|
11
|
+
'performance-evidence',
|
|
12
|
+
'repository-evidence',
|
|
13
|
+
'supply-chain',
|
|
14
|
+
]);
|
|
15
|
+
const PROFILE_DEFINITIONS = Object.freeze({
|
|
16
|
+
framework: Object.freeze({
|
|
17
|
+
maximumLength: 256,
|
|
18
|
+
pattern: /^[A-Za-z0-9][A-Za-z0-9._:/@+~-]{0,255}$/,
|
|
19
|
+
}),
|
|
20
|
+
'performance-evidence': Object.freeze({
|
|
21
|
+
maximumLength: 512,
|
|
22
|
+
pattern: /^[A-Za-z0-9.][A-Za-z0-9._:/#@+~-]{0,511}$/,
|
|
23
|
+
}),
|
|
24
|
+
'repository-evidence': Object.freeze({
|
|
25
|
+
maximumLength: 512,
|
|
26
|
+
pattern: /^[A-Za-z0-9][A-Za-z0-9._:/@+~-]{0,511}$/,
|
|
27
|
+
}),
|
|
28
|
+
'supply-chain': Object.freeze({
|
|
29
|
+
maximumLength: 256,
|
|
30
|
+
pattern: /^[A-Za-z0-9@][A-Za-z0-9._:@/+~-]{0,255}$/,
|
|
31
|
+
}),
|
|
32
|
+
});
|
|
33
|
+
function profileDefinition(profile) {
|
|
34
|
+
if (!Object.prototype.hasOwnProperty.call(PROFILE_DEFINITIONS, profile)) {
|
|
35
|
+
throw new TypeError(`Unknown safe-reference profile: ${String(profile)}.`);
|
|
36
|
+
}
|
|
37
|
+
return PROFILE_DEFINITIONS[profile];
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* The canonical bounded-reference predicate. It validates exact bytes and does
|
|
41
|
+
* not trim or otherwise normalize caller input. The CommonJS peer is held to
|
|
42
|
+
* the same profiles and behavior by the parity spec.
|
|
43
|
+
*/
|
|
44
|
+
function isBoundedSafeReference(value, profile = 'framework') {
|
|
45
|
+
return (
|
|
46
|
+
typeof value === 'string' && profileDefinition(profile).pattern.test(value)
|
|
47
|
+
);
|
|
48
|
+
}
|
|
49
|
+
/** Returns the canonical source for generated consumers without Runtime. */
|
|
50
|
+
function safeReferencePatternSource(profile = 'framework') {
|
|
51
|
+
return profileDefinition(profile).pattern.source;
|
|
52
|
+
}
|
|
53
|
+
function safeReferenceMaximumLength(profile = 'framework') {
|
|
54
|
+
return profileDefinition(profile).maximumLength;
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
Object.freeze(module.exports);
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
// @generated from packages/runtime/src/safe-reference.ts by tools/runtime/generate-shared-authorities.mjs
|
|
2
|
+
// Do not edit this artifact directly.
|
|
3
|
+
export declare const SAFE_REFERENCE_PROFILES: readonly [
|
|
4
|
+
'framework',
|
|
5
|
+
'performance-evidence',
|
|
6
|
+
'repository-evidence',
|
|
7
|
+
'supply-chain',
|
|
8
|
+
];
|
|
9
|
+
export type SafeReferenceProfile = (typeof SAFE_REFERENCE_PROFILES)[number];
|
|
10
|
+
/**
|
|
11
|
+
* The canonical bounded-reference predicate. It validates exact bytes and does
|
|
12
|
+
* not trim or otherwise normalize caller input. The CommonJS peer is held to
|
|
13
|
+
* the same profiles and behavior by the parity spec.
|
|
14
|
+
*/
|
|
15
|
+
export declare function isBoundedSafeReference(
|
|
16
|
+
value: unknown,
|
|
17
|
+
profile?: SafeReferenceProfile,
|
|
18
|
+
): value is string;
|
|
19
|
+
/** Returns the canonical source for generated consumers without Runtime. */
|
|
20
|
+
export declare function safeReferencePatternSource(
|
|
21
|
+
profile?: SafeReferenceProfile,
|
|
22
|
+
): string;
|
|
23
|
+
export declare function safeReferenceMaximumLength(
|
|
24
|
+
profile?: SafeReferenceProfile,
|
|
25
|
+
): number;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export declare const SAFE_REFERENCE_PROFILES: readonly ["framework", "performance-evidence", "repository-evidence", "supply-chain"];
|
|
2
|
+
export type SafeReferenceProfile = (typeof SAFE_REFERENCE_PROFILES)[number];
|
|
3
|
+
/**
|
|
4
|
+
* The canonical bounded-reference predicate. It validates exact bytes and does
|
|
5
|
+
* not trim or otherwise normalize caller input. The CommonJS peer is held to
|
|
6
|
+
* the same profiles and behavior by the parity spec.
|
|
7
|
+
*/
|
|
8
|
+
export declare function isBoundedSafeReference(value: unknown, profile?: SafeReferenceProfile): value is string;
|
|
9
|
+
/** Returns the canonical source for generated consumers without Runtime. */
|
|
10
|
+
export declare function safeReferencePatternSource(profile?: SafeReferenceProfile): string;
|
|
11
|
+
export declare function safeReferenceMaximumLength(profile?: SafeReferenceProfile): number;
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
export const SAFE_REFERENCE_PROFILES = Object.freeze([
|
|
2
|
+
'framework',
|
|
3
|
+
'performance-evidence',
|
|
4
|
+
'repository-evidence',
|
|
5
|
+
'supply-chain',
|
|
6
|
+
]);
|
|
7
|
+
const PROFILE_DEFINITIONS = Object.freeze({
|
|
8
|
+
framework: Object.freeze({
|
|
9
|
+
maximumLength: 256,
|
|
10
|
+
pattern: /^[A-Za-z0-9][A-Za-z0-9._:/@+~-]{0,255}$/,
|
|
11
|
+
}),
|
|
12
|
+
'performance-evidence': Object.freeze({
|
|
13
|
+
maximumLength: 512,
|
|
14
|
+
pattern: /^[A-Za-z0-9.][A-Za-z0-9._:/#@+~-]{0,511}$/,
|
|
15
|
+
}),
|
|
16
|
+
'repository-evidence': Object.freeze({
|
|
17
|
+
maximumLength: 512,
|
|
18
|
+
pattern: /^[A-Za-z0-9][A-Za-z0-9._:/@+~-]{0,511}$/,
|
|
19
|
+
}),
|
|
20
|
+
'supply-chain': Object.freeze({
|
|
21
|
+
maximumLength: 256,
|
|
22
|
+
pattern: /^[A-Za-z0-9@][A-Za-z0-9._:@/+~-]{0,255}$/,
|
|
23
|
+
}),
|
|
24
|
+
});
|
|
25
|
+
function profileDefinition(profile) {
|
|
26
|
+
if (!Object.prototype.hasOwnProperty.call(PROFILE_DEFINITIONS, profile)) {
|
|
27
|
+
throw new TypeError(`Unknown safe-reference profile: ${String(profile)}.`);
|
|
28
|
+
}
|
|
29
|
+
return PROFILE_DEFINITIONS[profile];
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* The canonical bounded-reference predicate. It validates exact bytes and does
|
|
33
|
+
* not trim or otherwise normalize caller input. The CommonJS peer is held to
|
|
34
|
+
* the same profiles and behavior by the parity spec.
|
|
35
|
+
*/
|
|
36
|
+
export function isBoundedSafeReference(value, profile = 'framework') {
|
|
37
|
+
return (typeof value === 'string' && profileDefinition(profile).pattern.test(value));
|
|
38
|
+
}
|
|
39
|
+
/** Returns the canonical source for generated consumers without Runtime. */
|
|
40
|
+
export function safeReferencePatternSource(profile = 'framework') {
|
|
41
|
+
return profileDefinition(profile).pattern.source;
|
|
42
|
+
}
|
|
43
|
+
export function safeReferenceMaximumLength(profile = 'framework') {
|
|
44
|
+
return profileDefinition(profile).maximumLength;
|
|
45
|
+
}
|
|
46
|
+
//# sourceMappingURL=safe-reference.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"safe-reference.js","sourceRoot":"","sources":["../../../../packages/runtime/src/safe-reference.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,uBAAuB,GAAG,MAAM,CAAC,MAAM,CAAC;IACnD,WAAW;IACX,sBAAsB;IACtB,qBAAqB;IACrB,cAAc;CACN,CAAC,CAAC;AASZ,MAAM,mBAAmB,GAErB,MAAM,CAAC,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC;QACvB,aAAa,EAAE,GAAG;QAClB,OAAO,EAAE,yCAAyC;KACnD,CAAC;IACF,sBAAsB,EAAE,MAAM,CAAC,MAAM,CAAC;QACpC,aAAa,EAAE,GAAG;QAClB,OAAO,EAAE,2CAA2C;KACrD,CAAC;IACF,qBAAqB,EAAE,MAAM,CAAC,MAAM,CAAC;QACnC,aAAa,EAAE,GAAG;QAClB,OAAO,EAAE,yCAAyC;KACnD,CAAC;IACF,cAAc,EAAE,MAAM,CAAC,MAAM,CAAC;QAC5B,aAAa,EAAE,GAAG;QAClB,OAAO,EAAE,0CAA0C;KACpD,CAAC;CACH,CAAC,CAAC;AAEH,SAAS,iBAAiB,CAAC,OAA6B;IACtD,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,mBAAmB,EAAE,OAAO,CAAC,EAAE,CAAC;QACxE,MAAM,IAAI,SAAS,CAAC,mCAAmC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAC7E,CAAC;IACD,OAAO,mBAAmB,CAAC,OAAO,CAAC,CAAC;AACtC,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,sBAAsB,CACpC,KAAc,EACd,UAAgC,WAAW;IAE3C,OAAO,CACL,OAAO,KAAK,KAAK,QAAQ,IAAI,iBAAiB,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAC5E,CAAC;AACJ,CAAC;AAED,4EAA4E;AAC5E,MAAM,UAAU,0BAA0B,CACxC,UAAgC,WAAW;IAE3C,OAAO,iBAAiB,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;AACnD,CAAC;AAED,MAAM,UAAU,0BAA0B,CACxC,UAAgC,WAAW;IAE3C,OAAO,iBAAiB,CAAC,OAAO,CAAC,CAAC,aAAa,CAAC;AAClD,CAAC"}
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
declare const SECRET_SCHEMA_BRAND: unique symbol;
|
|
2
|
+
declare const SECRET_DECLARATION_BRAND: unique symbol;
|
|
3
|
+
export declare const SECRET_DECLARATION_CONTRACT_VERSION: 1;
|
|
4
|
+
export declare const DEFAULT_SECRET_FRESH_TTL_MS: number;
|
|
5
|
+
export declare const MAX_SECRET_STALE_TTL_MS: number;
|
|
6
|
+
export declare const SECRET_CANONICAL_STAGES: readonly ["development", "staging", "production"];
|
|
7
|
+
export type SecretValueKind = 'binary' | 'json' | 'string';
|
|
8
|
+
export type SecretValueSource = 'aws-managed' | 'database-bootstrap' | 'operator';
|
|
9
|
+
export interface SecretCachePolicy {
|
|
10
|
+
/**
|
|
11
|
+
* A declaration may only narrow the framework's five-minute default.
|
|
12
|
+
*/
|
|
13
|
+
freshTtlMs?: number;
|
|
14
|
+
/**
|
|
15
|
+
* A declaration may only narrow the framework's fifteen-minute maximum.
|
|
16
|
+
*/
|
|
17
|
+
staleTtlMs?: number;
|
|
18
|
+
}
|
|
19
|
+
export type SecretRotation = {
|
|
20
|
+
mode: 'manual';
|
|
21
|
+
runbook: string;
|
|
22
|
+
} | {
|
|
23
|
+
mode: 'provider-managed';
|
|
24
|
+
runbook?: string;
|
|
25
|
+
};
|
|
26
|
+
export type SecretRetention = {
|
|
27
|
+
mode: 'retain';
|
|
28
|
+
} | {
|
|
29
|
+
mode: 'retire-with-recovery-window';
|
|
30
|
+
recoveryWindowDays: number;
|
|
31
|
+
};
|
|
32
|
+
export type SecretSchemaResult<T> = {
|
|
33
|
+
valid: true;
|
|
34
|
+
value: T;
|
|
35
|
+
} | {
|
|
36
|
+
valid: false;
|
|
37
|
+
};
|
|
38
|
+
export interface SecretValueSchema<T> {
|
|
39
|
+
readonly [SECRET_SCHEMA_BRAND]: true;
|
|
40
|
+
readonly kind: SecretValueKind;
|
|
41
|
+
validate(payload: SecretValuePayload): SecretSchemaResult<T>;
|
|
42
|
+
}
|
|
43
|
+
export interface SecretValuePayload {
|
|
44
|
+
secretBinary?: Uint8Array;
|
|
45
|
+
secretString?: string;
|
|
46
|
+
}
|
|
47
|
+
export interface SecretDefinition<Schema extends SecretValueSchema<unknown> = SecretValueSchema<unknown>> {
|
|
48
|
+
cache?: SecretCachePolicy;
|
|
49
|
+
owner: string;
|
|
50
|
+
requiredStages: readonly string[];
|
|
51
|
+
retention?: SecretRetention;
|
|
52
|
+
rotation: SecretRotation;
|
|
53
|
+
source: SecretValueSource;
|
|
54
|
+
value: Schema;
|
|
55
|
+
}
|
|
56
|
+
export type DefinedSecret<LogicalName extends string = string, Schema extends SecretValueSchema<unknown> = SecretValueSchema<unknown>> = Readonly<SecretDefinition<Schema> & {
|
|
57
|
+
readonly [SECRET_DECLARATION_BRAND]: true;
|
|
58
|
+
contractVersion: typeof SECRET_DECLARATION_CONTRACT_VERSION;
|
|
59
|
+
logicalName: LogicalName;
|
|
60
|
+
retention: SecretRetention;
|
|
61
|
+
}>;
|
|
62
|
+
export type SecretValueOf<Declaration> = Declaration extends DefinedSecret<string, SecretValueSchema<infer Value>> ? Value : never;
|
|
63
|
+
export interface SecretReference {
|
|
64
|
+
logicalName: string;
|
|
65
|
+
provider: 'aws-secrets-manager';
|
|
66
|
+
secretArn: string;
|
|
67
|
+
}
|
|
68
|
+
export declare class SecretDeclarationError extends Error {
|
|
69
|
+
readonly path: string;
|
|
70
|
+
readonly code = "secret-declaration-invalid";
|
|
71
|
+
constructor(path: string, reason: string);
|
|
72
|
+
}
|
|
73
|
+
interface StringSecretOptions {
|
|
74
|
+
maxLength?: number;
|
|
75
|
+
minLength?: number;
|
|
76
|
+
pattern?: RegExp;
|
|
77
|
+
}
|
|
78
|
+
interface BinarySecretOptions {
|
|
79
|
+
maxBytes?: number;
|
|
80
|
+
minBytes?: number;
|
|
81
|
+
}
|
|
82
|
+
interface JsonSecretOptions<T> {
|
|
83
|
+
/**
|
|
84
|
+
* This predicate must return only pass/fail. Runtime failures deliberately
|
|
85
|
+
* discard validator error details because they can contain secret fields.
|
|
86
|
+
*/
|
|
87
|
+
validate(value: unknown): value is T;
|
|
88
|
+
}
|
|
89
|
+
export declare const secret: Readonly<{
|
|
90
|
+
binary(options?: BinarySecretOptions): SecretValueSchema<Uint8Array>;
|
|
91
|
+
json<T>(options: JsonSecretOptions<T>): SecretValueSchema<T>;
|
|
92
|
+
string(options?: StringSecretOptions): SecretValueSchema<string>;
|
|
93
|
+
}>;
|
|
94
|
+
export declare function isDefinedSecret(value: unknown): value is DefinedSecret;
|
|
95
|
+
export type DefinedSecrets<Definitions extends Record<string, SecretDefinition>> = Readonly<{
|
|
96
|
+
[Name in keyof Definitions]: DefinedSecret<Extract<Name, string>, Definitions[Name]['value']>;
|
|
97
|
+
}>;
|
|
98
|
+
export declare function defineSecrets<const Definitions extends Record<string, SecretDefinition>>(definitions: Definitions): DefinedSecrets<Definitions>;
|
|
99
|
+
export {};
|
|
@@ -0,0 +1,238 @@
|
|
|
1
|
+
const SECRET_SCHEMA_BRAND = Symbol('ebk.secret-schema');
|
|
2
|
+
const SECRET_DECLARATION_BRAND = Symbol('ebk.secret-declaration');
|
|
3
|
+
export const SECRET_DECLARATION_CONTRACT_VERSION = 1;
|
|
4
|
+
export const DEFAULT_SECRET_FRESH_TTL_MS = 5 * 60 * 1000;
|
|
5
|
+
export const MAX_SECRET_STALE_TTL_MS = 15 * 60 * 1000;
|
|
6
|
+
export const SECRET_CANONICAL_STAGES = [
|
|
7
|
+
'development',
|
|
8
|
+
'staging',
|
|
9
|
+
'production',
|
|
10
|
+
];
|
|
11
|
+
export class SecretDeclarationError extends Error {
|
|
12
|
+
constructor(path, reason) {
|
|
13
|
+
super(`Invalid secret declaration at ${path}: ${reason}.`);
|
|
14
|
+
this.path = path;
|
|
15
|
+
this.code = 'secret-declaration-invalid';
|
|
16
|
+
this.name = 'SecretDeclarationError';
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
function makeSchema(kind, validate) {
|
|
20
|
+
return Object.freeze({
|
|
21
|
+
[SECRET_SCHEMA_BRAND]: true,
|
|
22
|
+
kind,
|
|
23
|
+
validate,
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
function validateBound(value, name, minimum) {
|
|
27
|
+
if (value !== undefined &&
|
|
28
|
+
(!Number.isSafeInteger(value) || value < minimum)) {
|
|
29
|
+
throw new SecretDeclarationError(`secret.${name}`, `must be a safe integer greater than or equal to ${minimum}`);
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
export const secret = Object.freeze({
|
|
33
|
+
binary(options = {}) {
|
|
34
|
+
validateBound(options.minBytes, 'binary.minBytes', 0);
|
|
35
|
+
validateBound(options.maxBytes, 'binary.maxBytes', 0);
|
|
36
|
+
if (options.minBytes !== undefined &&
|
|
37
|
+
options.maxBytes !== undefined &&
|
|
38
|
+
options.minBytes > options.maxBytes) {
|
|
39
|
+
throw new SecretDeclarationError('secret.binary', 'minBytes must not exceed maxBytes');
|
|
40
|
+
}
|
|
41
|
+
return makeSchema('binary', (payload) => {
|
|
42
|
+
const value = payload.secretBinary;
|
|
43
|
+
if (value === undefined || payload.secretString !== undefined) {
|
|
44
|
+
return { valid: false };
|
|
45
|
+
}
|
|
46
|
+
const length = value.byteLength;
|
|
47
|
+
if ((options.minBytes !== undefined && length < options.minBytes) ||
|
|
48
|
+
(options.maxBytes !== undefined && length > options.maxBytes)) {
|
|
49
|
+
return { valid: false };
|
|
50
|
+
}
|
|
51
|
+
return { valid: true, value };
|
|
52
|
+
});
|
|
53
|
+
},
|
|
54
|
+
json(options) {
|
|
55
|
+
if (typeof (options === null || options === void 0 ? void 0 : options.validate) !== 'function') {
|
|
56
|
+
throw new SecretDeclarationError('secret.json.validate', 'must be a validation predicate');
|
|
57
|
+
}
|
|
58
|
+
return makeSchema('json', (payload) => {
|
|
59
|
+
const serialized = payload.secretString;
|
|
60
|
+
if (serialized === undefined || payload.secretBinary !== undefined) {
|
|
61
|
+
return { valid: false };
|
|
62
|
+
}
|
|
63
|
+
try {
|
|
64
|
+
const parsed = JSON.parse(serialized);
|
|
65
|
+
return options.validate(parsed)
|
|
66
|
+
? { valid: true, value: parsed }
|
|
67
|
+
: { valid: false };
|
|
68
|
+
}
|
|
69
|
+
catch (_a) {
|
|
70
|
+
return { valid: false };
|
|
71
|
+
}
|
|
72
|
+
});
|
|
73
|
+
},
|
|
74
|
+
string(options = {}) {
|
|
75
|
+
validateBound(options.minLength, 'string.minLength', 0);
|
|
76
|
+
validateBound(options.maxLength, 'string.maxLength', 0);
|
|
77
|
+
if (options.minLength !== undefined &&
|
|
78
|
+
options.maxLength !== undefined &&
|
|
79
|
+
options.minLength > options.maxLength) {
|
|
80
|
+
throw new SecretDeclarationError('secret.string', 'minLength must not exceed maxLength');
|
|
81
|
+
}
|
|
82
|
+
const pattern = options.pattern === undefined
|
|
83
|
+
? undefined
|
|
84
|
+
: new RegExp(options.pattern.source, options.pattern.flags.replace(/[gy]/g, ''));
|
|
85
|
+
return makeSchema('string', (payload) => {
|
|
86
|
+
const value = payload.secretString;
|
|
87
|
+
if (value === undefined || payload.secretBinary !== undefined) {
|
|
88
|
+
return { valid: false };
|
|
89
|
+
}
|
|
90
|
+
if ((options.minLength !== undefined && value.length < options.minLength) ||
|
|
91
|
+
(options.maxLength !== undefined && value.length > options.maxLength) ||
|
|
92
|
+
(pattern !== undefined && !pattern.test(value))) {
|
|
93
|
+
return { valid: false };
|
|
94
|
+
}
|
|
95
|
+
return { valid: true, value };
|
|
96
|
+
});
|
|
97
|
+
},
|
|
98
|
+
});
|
|
99
|
+
const logicalNamePattern = /^[A-Za-z][A-Za-z0-9]{0,63}$/;
|
|
100
|
+
const ownerPattern = /^[a-z0-9][a-z0-9-]{0,62}$/;
|
|
101
|
+
const stagePattern = /^[a-z0-9][a-z0-9-]{0,62}$/;
|
|
102
|
+
const canonicalStages = new Set(SECRET_CANONICAL_STAGES);
|
|
103
|
+
const relativeRunbookPattern = /^(?!\/)(?!.*(?:^|\/)\.\.(?:\/|$))[A-Za-z0-9._/-]+$/;
|
|
104
|
+
function rejectUnexpectedProperties(value, allowed, path) {
|
|
105
|
+
for (const property of Object.keys(value)) {
|
|
106
|
+
if (!allowed.includes(property)) {
|
|
107
|
+
throw new SecretDeclarationError(path, 'contains an unallowed declaration property');
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
function validateCachePolicy(cache, path) {
|
|
112
|
+
if (cache === undefined) {
|
|
113
|
+
return;
|
|
114
|
+
}
|
|
115
|
+
rejectUnexpectedProperties(cache, ['freshTtlMs', 'staleTtlMs'], path);
|
|
116
|
+
validateBound(cache.freshTtlMs, `${path}.freshTtlMs`, 0);
|
|
117
|
+
validateBound(cache.staleTtlMs, `${path}.staleTtlMs`, 0);
|
|
118
|
+
if (cache.freshTtlMs !== undefined &&
|
|
119
|
+
cache.freshTtlMs > DEFAULT_SECRET_FRESH_TTL_MS) {
|
|
120
|
+
throw new SecretDeclarationError(`${path}.freshTtlMs`, `must not exceed ${DEFAULT_SECRET_FRESH_TTL_MS}`);
|
|
121
|
+
}
|
|
122
|
+
if (cache.staleTtlMs !== undefined &&
|
|
123
|
+
cache.staleTtlMs > MAX_SECRET_STALE_TTL_MS) {
|
|
124
|
+
throw new SecretDeclarationError(`${path}.staleTtlMs`, `must not exceed ${MAX_SECRET_STALE_TTL_MS}`);
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
function validateRotation(rotation, path) {
|
|
128
|
+
if (rotation.mode === 'manual') {
|
|
129
|
+
rejectUnexpectedProperties(rotation, ['mode', 'runbook'], path);
|
|
130
|
+
if (!relativeRunbookPattern.test(rotation.runbook)) {
|
|
131
|
+
throw new SecretDeclarationError(`${path}.runbook`, 'must be a package-relative runbook path without parent traversal');
|
|
132
|
+
}
|
|
133
|
+
return;
|
|
134
|
+
}
|
|
135
|
+
rejectUnexpectedProperties(rotation, ['mode', 'runbook'], path);
|
|
136
|
+
if (rotation.mode !== 'provider-managed' ||
|
|
137
|
+
(rotation.runbook !== undefined &&
|
|
138
|
+
!relativeRunbookPattern.test(rotation.runbook))) {
|
|
139
|
+
throw new SecretDeclarationError(path, 'must describe manual or provider-managed rotation');
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
function validateRetention(retention, path) {
|
|
143
|
+
if (retention.mode === 'retain') {
|
|
144
|
+
rejectUnexpectedProperties(retention, ['mode'], path);
|
|
145
|
+
return;
|
|
146
|
+
}
|
|
147
|
+
rejectUnexpectedProperties(retention, ['mode', 'recoveryWindowDays'], path);
|
|
148
|
+
if (retention.mode !== 'retire-with-recovery-window' ||
|
|
149
|
+
!Number.isSafeInteger(retention.recoveryWindowDays) ||
|
|
150
|
+
retention.recoveryWindowDays < 7 ||
|
|
151
|
+
retention.recoveryWindowDays > 30) {
|
|
152
|
+
throw new SecretDeclarationError(path, 'must retain or use an AWS recovery window from 7 through 30 days');
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
function isSecretSchema(value) {
|
|
156
|
+
return (typeof value === 'object' &&
|
|
157
|
+
value !== null &&
|
|
158
|
+
SECRET_SCHEMA_BRAND in value &&
|
|
159
|
+
value[SECRET_SCHEMA_BRAND] === true);
|
|
160
|
+
}
|
|
161
|
+
export function isDefinedSecret(value) {
|
|
162
|
+
return (typeof value === 'object' &&
|
|
163
|
+
value !== null &&
|
|
164
|
+
SECRET_DECLARATION_BRAND in value &&
|
|
165
|
+
value[SECRET_DECLARATION_BRAND] === true);
|
|
166
|
+
}
|
|
167
|
+
export function defineSecrets(definitions) {
|
|
168
|
+
var _a;
|
|
169
|
+
if (typeof definitions !== 'object' ||
|
|
170
|
+
definitions === null ||
|
|
171
|
+
Array.isArray(definitions)) {
|
|
172
|
+
throw new SecretDeclarationError('secrets', 'must be an object');
|
|
173
|
+
}
|
|
174
|
+
const result = {};
|
|
175
|
+
for (const [logicalName, definition] of Object.entries(definitions)) {
|
|
176
|
+
const path = `secrets.${logicalName}`;
|
|
177
|
+
if (!logicalNamePattern.test(logicalName)) {
|
|
178
|
+
throw new SecretDeclarationError('secrets.<invalid-logical-name>', 'logical name must start with a letter and contain only letters or digits');
|
|
179
|
+
}
|
|
180
|
+
if (typeof definition !== 'object' ||
|
|
181
|
+
definition === null ||
|
|
182
|
+
!isSecretSchema(definition.value)) {
|
|
183
|
+
throw new SecretDeclarationError(`${path}.value`, 'must be a schema created by secret.string, secret.json, or secret.binary');
|
|
184
|
+
}
|
|
185
|
+
rejectUnexpectedProperties(definition, [
|
|
186
|
+
'cache',
|
|
187
|
+
'owner',
|
|
188
|
+
'requiredStages',
|
|
189
|
+
'retention',
|
|
190
|
+
'rotation',
|
|
191
|
+
'source',
|
|
192
|
+
'value',
|
|
193
|
+
], path);
|
|
194
|
+
if (typeof definition.owner !== 'string' ||
|
|
195
|
+
!ownerPattern.test(definition.owner)) {
|
|
196
|
+
throw new SecretDeclarationError(`${path}.owner`, 'must be a normalized owner slug');
|
|
197
|
+
}
|
|
198
|
+
if (!Array.isArray(definition.requiredStages) ||
|
|
199
|
+
definition.requiredStages.length === 0 ||
|
|
200
|
+
definition.requiredStages.some((stage) => typeof stage !== 'string' ||
|
|
201
|
+
!stagePattern.test(stage) ||
|
|
202
|
+
!canonicalStages.has(stage)) ||
|
|
203
|
+
new Set(definition.requiredStages).size !==
|
|
204
|
+
definition.requiredStages.length) {
|
|
205
|
+
throw new SecretDeclarationError(`${path}.requiredStages`, 'must contain unique canonical deployed stage names');
|
|
206
|
+
}
|
|
207
|
+
if (typeof definition.source !== 'string' ||
|
|
208
|
+
!['aws-managed', 'database-bootstrap', 'operator'].includes(definition.source)) {
|
|
209
|
+
throw new SecretDeclarationError(`${path}.source`, 'must name a supported value authority');
|
|
210
|
+
}
|
|
211
|
+
if (typeof definition.rotation !== 'object' ||
|
|
212
|
+
definition.rotation === null ||
|
|
213
|
+
Array.isArray(definition.rotation)) {
|
|
214
|
+
throw new SecretDeclarationError(`${path}.rotation`, 'must describe a rotation policy');
|
|
215
|
+
}
|
|
216
|
+
if (definition.cache !== undefined &&
|
|
217
|
+
(typeof definition.cache !== 'object' ||
|
|
218
|
+
definition.cache === null ||
|
|
219
|
+
Array.isArray(definition.cache))) {
|
|
220
|
+
throw new SecretDeclarationError(`${path}.cache`, 'must describe a cache policy');
|
|
221
|
+
}
|
|
222
|
+
if (definition.retention !== undefined &&
|
|
223
|
+
(typeof definition.retention !== 'object' ||
|
|
224
|
+
definition.retention === null ||
|
|
225
|
+
Array.isArray(definition.retention))) {
|
|
226
|
+
throw new SecretDeclarationError(`${path}.retention`, 'must describe a retention policy');
|
|
227
|
+
}
|
|
228
|
+
validateRotation(definition.rotation, `${path}.rotation`);
|
|
229
|
+
validateCachePolicy(definition.cache, `${path}.cache`);
|
|
230
|
+
const retention = (_a = definition.retention) !== null && _a !== void 0 ? _a : { mode: 'retain' };
|
|
231
|
+
validateRetention(retention, `${path}.retention`);
|
|
232
|
+
result[logicalName] = Object.freeze(Object.assign(Object.assign({ [SECRET_DECLARATION_BRAND]: true }, (definition.cache === undefined
|
|
233
|
+
? {}
|
|
234
|
+
: { cache: Object.freeze(Object.assign({}, definition.cache)) })), { contractVersion: SECRET_DECLARATION_CONTRACT_VERSION, logicalName, owner: definition.owner, requiredStages: Object.freeze([...definition.requiredStages]), retention: Object.freeze(Object.assign({}, retention)), rotation: Object.freeze(Object.assign({}, definition.rotation)), source: definition.source, value: definition.value }));
|
|
235
|
+
}
|
|
236
|
+
return Object.freeze(result);
|
|
237
|
+
}
|
|
238
|
+
//# sourceMappingURL=contract.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"contract.js","sourceRoot":"","sources":["../../../../../packages/runtime/src/secrets/contract.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../packages/runtime/src/secrets/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,oBAAoB,CAAC;AACnC,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { type Logger } from '../logging.js';
|
|
2
|
+
import { type MetricEmitter } from '../observability.js';
|
|
3
|
+
import { type SecretResolverHooks } from './resolver.js';
|
|
4
|
+
export declare const SECRET_RESOLUTION_FEATURE: "secret-management";
|
|
5
|
+
export declare const SECRET_RESOLUTION_OPERATION: "secret.resolve";
|
|
6
|
+
export declare const SECRET_RESOLUTION_COMPONENT: "secret-resolver";
|
|
7
|
+
export interface SecretResolverObservabilityOptions {
|
|
8
|
+
component?: string;
|
|
9
|
+
logger: Logger;
|
|
10
|
+
metrics: MetricEmitter;
|
|
11
|
+
slice: string;
|
|
12
|
+
stage: string;
|
|
13
|
+
}
|
|
14
|
+
export declare function createSecretResolverObservability(options: SecretResolverObservabilityOptions): SecretResolverHooks;
|