@composurecdk/lambda 0.12.0 → 0.13.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -419,12 +419,18 @@ when dropping is intended — with
419
419
 
420
420
  ### Cross-component invariants
421
421
 
422
- AWS Well-Architected guidance spans the queue and the function — the source
423
- queue's visibility timeout should be ≥ 6× the function timeout, and its redrive
424
- `maxReceiveCount` should be ≥ 5 before the DLQ. These are **not** enforced
425
- today (the queue often arrives as an unresolved `ref()`); they are tracked in
426
- [#123](https://github.com/laazyj/composureCDK/issues/123) and
427
- [#124](https://github.com/laazyj/composureCDK/issues/124).
422
+ AWS Well-Architected guidance spans the queue and the function. Both rules are
423
+ suppressible synth-time warnings:
424
+
425
+ - **Visibility timeout ≥ 6× the function timeout** — a relationship guard in
426
+ this package, checked even when the queue arrives as a `ref()` (see
427
+ [ADR-0011](../../docs/adr/0011-cross-component-relationship-guards.md)). It
428
+ stays quiet for imported queues and token values. Silence it with
429
+ `Annotations.of(scope).acknowledgeWarning(SQS_VISIBILITY_TIMEOUT_WARNING_ID)`.
430
+ - **Redrive `maxReceiveCount` ≥ 5 before the DLQ** — checked by
431
+ `@composurecdk/sqs`'s `QueueBuilder`, so only for queues it builds. See
432
+ [its dead-letter docs](../sqs/README.md#dead-letter-queues-dlq-fifo-dlq) for
433
+ the warning id.
428
434
 
429
435
  ### Kinesis Data Streams
430
436
 
@@ -26,8 +26,9 @@ export type EventSourceRelationshipGuard = (fn: LambdaFunction, id: string, key:
26
26
  /**
27
27
  * Per-kind relationship guards, keyed by {@link EventSourceKind}. A kind maps to
28
28
  * the (possibly empty) list of relationships to guard for a source of that kind
29
- * — SQS gains a second entry for the `maxReceiveCount` floor (#124), and a bare
30
- * escape-hatch source attached as `"unknown"` has none.
29
+ * — a bare escape-hatch source attached as `"unknown"` has none. The SQS
30
+ * `maxReceiveCount` floor is not a relationship guard: it concerns the queue
31
+ * alone, so `@composurecdk/sqs`'s `QueueBuilder` checks it.
31
32
  *
32
33
  * @internal
33
34
  */
@@ -1 +1 @@
1
- {"version":3,"file":"event-source-relationship-guards.d.ts","sourceRoot":"","sources":["../../../src/event-sources/event-source-relationship-guards.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqC,KAAK,QAAQ,EAAS,MAAM,aAAa,CAAC;AACtF,OAAO,EAEL,KAAK,QAAQ,IAAI,cAAc,EAC/B,KAAK,YAAY,EAClB,MAAM,wBAAwB,CAAC;AAIhC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAiBnE;;;;;GAKG;AACH,eAAO,MAAM,iCAAiC,gDAAgD,CAAC;AAE/F;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB,4CAA4C,CAAC;AAE/E;;;;;;GAMG;AACH,MAAM,MAAM,4BAA4B,GAAG,CACzC,EAAE,EAAE,cAAc,EAClB,EAAE,EAAE,MAAM,EACV,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,YAAY,EACnB,OAAO,EAAE,QAAQ,GAAG,SAAS,KAC1B,IAAI,CAAC;AAEV;;;;;;;GAOG;AACH,eAAO,MAAM,gCAAgC,EAAE,MAAM,CACnD,eAAe,EACf,4BAA4B,EAAE,CAQ/B,CAAC"}
1
+ {"version":3,"file":"event-source-relationship-guards.d.ts","sourceRoot":"","sources":["../../../src/event-sources/event-source-relationship-guards.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqC,KAAK,QAAQ,EAAS,MAAM,aAAa,CAAC;AACtF,OAAO,EAEL,KAAK,QAAQ,IAAI,cAAc,EAC/B,KAAK,YAAY,EAClB,MAAM,wBAAwB,CAAC;AAIhC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAiBnE;;;;;GAKG;AACH,eAAO,MAAM,iCAAiC,gDAAgD,CAAC;AAE/F;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB,4CAA4C,CAAC;AAE/E;;;;;;GAMG;AACH,MAAM,MAAM,4BAA4B,GAAG,CACzC,EAAE,EAAE,cAAc,EAClB,EAAE,EAAE,MAAM,EACV,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,YAAY,EACnB,OAAO,EAAE,QAAQ,GAAG,SAAS,KAC1B,IAAI,CAAC;AAEV;;;;;;;;GAQG;AACH,eAAO,MAAM,gCAAgC,EAAE,MAAM,CACnD,eAAe,EACf,4BAA4B,EAAE,CAQ/B,CAAC"}
@@ -33,8 +33,9 @@ exports.STREAM_DLQ_WARNING_ID = "@composurecdk/lambda:stream-dlq-missing";
33
33
  /**
34
34
  * Per-kind relationship guards, keyed by {@link EventSourceKind}. A kind maps to
35
35
  * the (possibly empty) list of relationships to guard for a source of that kind
36
- * — SQS gains a second entry for the `maxReceiveCount` floor (#124), and a bare
37
- * escape-hatch source attached as `"unknown"` has none.
36
+ * — a bare escape-hatch source attached as `"unknown"` has none. The SQS
37
+ * `maxReceiveCount` floor is not a relationship guard: it concerns the queue
38
+ * alone, so `@composurecdk/sqs`'s `QueueBuilder` checks it.
38
39
  *
39
40
  * @internal
40
41
  */
@@ -1 +1 @@
1
- {"version":3,"file":"event-source-relationship-guards.js","sourceRoot":"","sources":["../../../src/event-sources/event-source-relationship-guards.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"event-source-relationship-guards.js","sourceRoot":"","sources":["../../../src/event-sources/event-source-relationship-guards.ts"],"names":[],"mappings":"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"}
@@ -31,8 +31,8 @@ export declare const DEFAULT_SQS_EVENT_SOURCE_PROPS: Pick<SqsEventSourceProps, "
31
31
  * guard**: when this source is attached to a {@link IFunctionBuilder}, the
32
32
  * builder reads the queue's resolved `visibilityTimeout` off its L1 `CfnQueue`
33
33
  * (the `Queue` construct does not re-expose it) and warns, suppressibly, on an
34
- * actual violation — see ADR-0011. The `maxReceiveCount` floor is tracked in
35
- * laazyj/composureCDK#124.
34
+ * actual violation (`SQS_VISIBILITY_TIMEOUT_WARNING_ID`) — see ADR-0011. The
35
+ * `maxReceiveCount` floor is checked by `@composurecdk/sqs`'s `QueueBuilder`.
36
36
  *
37
37
  * @param queue - The source queue, concrete or a `ref()` to a sibling.
38
38
  * @param props - Overrides for {@link DEFAULT_SQS_EVENT_SOURCE_PROPS} and any
@@ -51,8 +51,8 @@ exports.DEFAULT_SQS_EVENT_SOURCE_PROPS = {
51
51
  * guard**: when this source is attached to a {@link IFunctionBuilder}, the
52
52
  * builder reads the queue's resolved `visibilityTimeout` off its L1 `CfnQueue`
53
53
  * (the `Queue` construct does not re-expose it) and warns, suppressibly, on an
54
- * actual violation — see ADR-0011. The `maxReceiveCount` floor is tracked in
55
- * laazyj/composureCDK#124.
54
+ * actual violation (`SQS_VISIBILITY_TIMEOUT_WARNING_ID`) — see ADR-0011. The
55
+ * `maxReceiveCount` floor is checked by `@composurecdk/sqs`'s `QueueBuilder`.
56
56
  *
57
57
  * @param queue - The source queue, concrete or a `ref()` to a sibling.
58
58
  * @param props - Overrides for {@link DEFAULT_SQS_EVENT_SOURCE_PROPS} and any
@@ -26,8 +26,9 @@ export type EventSourceRelationshipGuard = (fn: LambdaFunction, id: string, key:
26
26
  /**
27
27
  * Per-kind relationship guards, keyed by {@link EventSourceKind}. A kind maps to
28
28
  * the (possibly empty) list of relationships to guard for a source of that kind
29
- * — SQS gains a second entry for the `maxReceiveCount` floor (#124), and a bare
30
- * escape-hatch source attached as `"unknown"` has none.
29
+ * — a bare escape-hatch source attached as `"unknown"` has none. The SQS
30
+ * `maxReceiveCount` floor is not a relationship guard: it concerns the queue
31
+ * alone, so `@composurecdk/sqs`'s `QueueBuilder` checks it.
31
32
  *
32
33
  * @internal
33
34
  */
@@ -1 +1 @@
1
- {"version":3,"file":"event-source-relationship-guards.d.ts","sourceRoot":"","sources":["../../../src/event-sources/event-source-relationship-guards.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqC,KAAK,QAAQ,EAAS,MAAM,aAAa,CAAC;AACtF,OAAO,EAEL,KAAK,QAAQ,IAAI,cAAc,EAC/B,KAAK,YAAY,EAClB,MAAM,wBAAwB,CAAC;AAIhC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAiBnE;;;;;GAKG;AACH,eAAO,MAAM,iCAAiC,gDAAgD,CAAC;AAE/F;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB,4CAA4C,CAAC;AAE/E;;;;;;GAMG;AACH,MAAM,MAAM,4BAA4B,GAAG,CACzC,EAAE,EAAE,cAAc,EAClB,EAAE,EAAE,MAAM,EACV,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,YAAY,EACnB,OAAO,EAAE,QAAQ,GAAG,SAAS,KAC1B,IAAI,CAAC;AAEV;;;;;;;GAOG;AACH,eAAO,MAAM,gCAAgC,EAAE,MAAM,CACnD,eAAe,EACf,4BAA4B,EAAE,CAQ/B,CAAC"}
1
+ {"version":3,"file":"event-source-relationship-guards.d.ts","sourceRoot":"","sources":["../../../src/event-sources/event-source-relationship-guards.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqC,KAAK,QAAQ,EAAS,MAAM,aAAa,CAAC;AACtF,OAAO,EAEL,KAAK,QAAQ,IAAI,cAAc,EAC/B,KAAK,YAAY,EAClB,MAAM,wBAAwB,CAAC;AAIhC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAiBnE;;;;;GAKG;AACH,eAAO,MAAM,iCAAiC,gDAAgD,CAAC;AAE/F;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB,4CAA4C,CAAC;AAE/E;;;;;;GAMG;AACH,MAAM,MAAM,4BAA4B,GAAG,CACzC,EAAE,EAAE,cAAc,EAClB,EAAE,EAAE,MAAM,EACV,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,YAAY,EACnB,OAAO,EAAE,QAAQ,GAAG,SAAS,KAC1B,IAAI,CAAC;AAEV;;;;;;;;GAQG;AACH,eAAO,MAAM,gCAAgC,EAAE,MAAM,CACnD,eAAe,EACf,4BAA4B,EAAE,CAQ/B,CAAC"}
@@ -30,8 +30,9 @@ export const STREAM_DLQ_WARNING_ID = "@composurecdk/lambda:stream-dlq-missing";
30
30
  /**
31
31
  * Per-kind relationship guards, keyed by {@link EventSourceKind}. A kind maps to
32
32
  * the (possibly empty) list of relationships to guard for a source of that kind
33
- * — SQS gains a second entry for the `maxReceiveCount` floor (#124), and a bare
34
- * escape-hatch source attached as `"unknown"` has none.
33
+ * — a bare escape-hatch source attached as `"unknown"` has none. The SQS
34
+ * `maxReceiveCount` floor is not a relationship guard: it concerns the queue
35
+ * alone, so `@composurecdk/sqs`'s `QueueBuilder` checks it.
35
36
  *
36
37
  * @internal
37
38
  */
@@ -1 +1 @@
1
- {"version":3,"file":"event-source-relationship-guards.js","sourceRoot":"","sources":["../../../src/event-sources/event-source-relationship-guards.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"event-source-relationship-guards.js","sourceRoot":"","sources":["../../../src/event-sources/event-source-relationship-guards.ts"],"names":[],"mappings":"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"}
@@ -31,8 +31,8 @@ export declare const DEFAULT_SQS_EVENT_SOURCE_PROPS: Pick<SqsEventSourceProps, "
31
31
  * guard**: when this source is attached to a {@link IFunctionBuilder}, the
32
32
  * builder reads the queue's resolved `visibilityTimeout` off its L1 `CfnQueue`
33
33
  * (the `Queue` construct does not re-expose it) and warns, suppressibly, on an
34
- * actual violation — see ADR-0011. The `maxReceiveCount` floor is tracked in
35
- * laazyj/composureCDK#124.
34
+ * actual violation (`SQS_VISIBILITY_TIMEOUT_WARNING_ID`) — see ADR-0011. The
35
+ * `maxReceiveCount` floor is checked by `@composurecdk/sqs`'s `QueueBuilder`.
36
36
  *
37
37
  * @param queue - The source queue, concrete or a `ref()` to a sibling.
38
38
  * @param props - Overrides for {@link DEFAULT_SQS_EVENT_SOURCE_PROPS} and any
@@ -47,8 +47,8 @@ export const DEFAULT_SQS_EVENT_SOURCE_PROPS = {
47
47
  * guard**: when this source is attached to a {@link IFunctionBuilder}, the
48
48
  * builder reads the queue's resolved `visibilityTimeout` off its L1 `CfnQueue`
49
49
  * (the `Queue` construct does not re-expose it) and warns, suppressibly, on an
50
- * actual violation — see ADR-0011. The `maxReceiveCount` floor is tracked in
51
- * laazyj/composureCDK#124.
50
+ * actual violation (`SQS_VISIBILITY_TIMEOUT_WARNING_ID`) — see ADR-0011. The
51
+ * `maxReceiveCount` floor is checked by `@composurecdk/sqs`'s `QueueBuilder`.
52
52
  *
53
53
  * @param queue - The source queue, concrete or a `ref()` to a sibling.
54
54
  * @param props - Overrides for {@link DEFAULT_SQS_EVENT_SOURCE_PROPS} and any
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@composurecdk/lambda",
3
- "version": "0.12.0",
3
+ "version": "0.13.0",
4
4
  "description": "Composable Lambda function builder with well-architected defaults",
5
5
  "repository": {
6
6
  "type": "git",
@@ -39,17 +39,17 @@
39
39
  }
40
40
  },
41
41
  "peerDependencies": {
42
- "@composurecdk/cloudformation": "^0.12.0",
43
- "@composurecdk/cloudwatch": "^0.12.0",
44
- "@composurecdk/core": "^0.12.0",
45
- "@composurecdk/iam": "^0.12.0",
46
- "@composurecdk/logs": "^0.12.0",
42
+ "@composurecdk/cloudformation": "^0.13.0",
43
+ "@composurecdk/cloudwatch": "^0.13.0",
44
+ "@composurecdk/core": "^0.13.0",
45
+ "@composurecdk/iam": "^0.13.0",
46
+ "@composurecdk/logs": "^0.13.0",
47
47
  "aws-cdk-lib": "^2.180.0",
48
48
  "constructs": "^10.0.0"
49
49
  },
50
50
  "devDependencies": {
51
51
  "@composurecdk/cdk-testing": "*",
52
- "@composurecdk/iam": "^0.12.0",
52
+ "@composurecdk/iam": "^0.13.0",
53
53
  "@types/node": "^26.6.6",
54
54
  "aws-cdk-lib": "^2.275.0",
55
55
  "constructs": "^10.8.1",