local-serverless-stack 0.14.0 → 0.16.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/dist/server/engine/dispatch/filter-criteria.d.ts +6 -0
- package/dist/server/engine/dispatch/filter-criteria.d.ts.map +1 -0
- package/dist/server/engine/dispatch/filter-criteria.js +125 -0
- package/dist/server/engine/dispatch/filter-criteria.js.map +1 -0
- package/dist/server/engine/dispatch/sqs-poller.d.ts +4 -0
- package/dist/server/engine/dispatch/sqs-poller.d.ts.map +1 -1
- package/dist/server/engine/dispatch/sqs-poller.js +78 -3
- package/dist/server/engine/dispatch/sqs-poller.js.map +1 -1
- package/dist/server/engine/dispatch/stream-tailer.d.ts.map +1 -1
- package/dist/server/engine/dispatch/stream-tailer.js +134 -21
- package/dist/server/engine/dispatch/stream-tailer.js.map +1 -1
- package/dist/server/engine/emulators/events/pattern.d.ts +2 -0
- package/dist/server/engine/emulators/events/pattern.d.ts.map +1 -1
- package/dist/server/engine/emulators/events/pattern.js +152 -5
- package/dist/server/engine/emulators/events/pattern.js.map +1 -1
- package/dist/server/engine/emulators/lambda-ctl/index.d.ts +1 -0
- package/dist/server/engine/emulators/lambda-ctl/index.d.ts.map +1 -1
- package/dist/server/engine/emulators/lambda-ctl/index.js +28 -2
- package/dist/server/engine/emulators/lambda-ctl/index.js.map +1 -1
- package/dist/server/engine/types.d.ts +1 -0
- package/dist/server/engine/types.d.ts.map +1 -1
- package/dist/server/index.js +12 -0
- package/dist/server/index.js.map +1 -1
- package/dist/server/routes/apis.d.ts.map +1 -1
- package/dist/server/routes/apis.js +4 -0
- package/dist/server/routes/apis.js.map +1 -1
- package/dist/server/services/cloudformation-parser.d.ts +99 -1
- package/dist/server/services/cloudformation-parser.d.ts.map +1 -1
- package/dist/server/services/cloudformation-parser.js +290 -1
- package/dist/server/services/cloudformation-parser.js.map +1 -1
- package/dist/server/services/config-manager.d.ts +4 -0
- package/dist/server/services/config-manager.d.ts.map +1 -1
- package/dist/server/services/config-manager.js +12 -0
- package/dist/server/services/config-manager.js.map +1 -1
- package/dist/server/services/gateway-manager.d.ts.map +1 -1
- package/dist/server/services/gateway-manager.js +14 -2
- package/dist/server/services/gateway-manager.js.map +1 -1
- package/dist/server/services/raw-api-assembler.d.ts +17 -0
- package/dist/server/services/raw-api-assembler.d.ts.map +1 -0
- package/dist/server/services/raw-api-assembler.js +172 -0
- package/dist/server/services/raw-api-assembler.js.map +1 -0
- package/dist/server/services/resource-provisioner.d.ts +2 -0
- package/dist/server/services/resource-provisioner.d.ts.map +1 -1
- package/dist/server/services/resource-provisioner.js +75 -1
- package/dist/server/services/resource-provisioner.js.map +1 -1
- package/dist/server/services/secret-value.d.ts +35 -0
- package/dist/server/services/secret-value.d.ts.map +1 -0
- package/dist/server/services/secret-value.js +69 -0
- package/dist/server/services/secret-value.js.map +1 -0
- package/dist/server/services/seed-manager.d.ts +20 -0
- package/dist/server/services/seed-manager.d.ts.map +1 -1
- package/dist/server/services/seed-manager.js +131 -0
- package/dist/server/services/seed-manager.js.map +1 -1
- package/dist/server/services/serverless-state-parser.d.ts +4 -0
- package/dist/server/services/serverless-state-parser.d.ts.map +1 -1
- package/dist/server/services/serverless-state-parser.js.map +1 -1
- package/dist/server/services/service-registrar.d.ts +1 -0
- package/dist/server/services/service-registrar.d.ts.map +1 -1
- package/dist/server/services/service-registrar.js +24 -0
- package/dist/server/services/service-registrar.js.map +1 -1
- package/dist/ui/assets/{ApisPage-Dg-fuYQY.js → ApisPage-CXVLYVM6.js} +1 -1
- package/dist/ui/assets/{BucketDetailPage-By9deUkc.js → BucketDetailPage-BU7ytv7P.js} +1 -1
- package/dist/ui/assets/{BucketsPage-idHR6yXh.js → BucketsPage-6oRAkKhU.js} +1 -1
- package/dist/ui/assets/{DynamoPage-k8NQGeJ_.js → DynamoPage-DU29K5hT.js} +1 -1
- package/dist/ui/assets/{DynamoTablePage-C-LPU3I7.js → DynamoTablePage-BsVCgzws.js} +1 -1
- package/dist/ui/assets/{LambdaDetailPage-D8HVidB_.js → LambdaDetailPage-CgDlY1Kc.js} +1 -1
- package/dist/ui/assets/{LambdasPage-B19rwgUM.js → LambdasPage-CB59BQVb.js} +1 -1
- package/dist/ui/assets/{OpenSearchCollectionPage-Bmc8gI8s.js → OpenSearchCollectionPage-PhV7ZitS.js} +1 -1
- package/dist/ui/assets/{OpenSearchPage-CDFY7dS9.js → OpenSearchPage-DMq5T-jO.js} +1 -1
- package/dist/ui/assets/{OverviewPage-CWrXkA8s.js → OverviewPage-B7i6ZutS.js} +1 -1
- package/dist/ui/assets/{QueueDetailPage-CGcXlOrN.js → QueueDetailPage-CDM38X1V.js} +1 -1
- package/dist/ui/assets/{QueuesPage-BMU0DBMz.js → QueuesPage-6py2nlnw.js} +1 -1
- package/dist/ui/assets/{SecretsPage-RgJc26ab.js → SecretsPage-BlllDXAl.js} +1 -1
- package/dist/ui/assets/{ServiceDetailPage-BZnTIbac.js → ServiceDetailPage-ghEHM9ko.js} +1 -1
- package/dist/ui/assets/{ServicesPage-BJCWxYkd.js → ServicesPage-C0E9vXE2.js} +1 -1
- package/dist/ui/assets/index-DdoMwcQX.css +1 -0
- package/dist/ui/assets/index-VlhdCpKx.js +37 -0
- package/dist/ui/index.html +2 -2
- package/package.json +1 -1
- package/dist/ui/assets/index-DGkmrq2b.js +0 -37
- package/dist/ui/assets/index-DH7RTkRh.css +0 -1
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { DeliveredMessage } from '../emulators/sqs/index.js';
|
|
2
|
+
export declare function compileFilterCriteria(filterCriteria: unknown): (record: Record<string, unknown>) => boolean;
|
|
3
|
+
export declare function validateFilterCriteria(filterCriteria: unknown): void;
|
|
4
|
+
export declare function buildStreamFilterView(wireRecord: Record<string, unknown>): Record<string, unknown>;
|
|
5
|
+
export declare function buildSqsFilterView(message: DeliveredMessage): Record<string, unknown>;
|
|
6
|
+
//# sourceMappingURL=filter-criteria.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"filter-criteria.d.ts","sourceRoot":"","sources":["../../../../src/server/engine/dispatch/filter-criteria.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAyBlE,wBAAgB,qBAAqB,CACnC,cAAc,EAAE,OAAO,GACtB,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAc9C;AAMD,wBAAgB,sBAAsB,CAAC,cAAc,EAAE,OAAO,GAAG,IAAI,CA4BpE;AAKD,wBAAgB,qBAAqB,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAElG;AAMD,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,gBAAgB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAyBrF"}
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
// Pure compiler + view builders for Lambda event source mapping FilterCriteria
|
|
2
|
+
// (PRD RF4/RF5 content filtering). FilterCriteria = { Filters: [{ Pattern }] }
|
|
3
|
+
// where each Pattern is a JSON-ENCODED string holding one EventBridge-style
|
|
4
|
+
// content-filter object. Filters are OR'd (a record passes if it matches ANY
|
|
5
|
+
// pattern); sibling keys inside one pattern are AND'd. Matching delegates to
|
|
6
|
+
// the shared ESM matcher in emulators/events/pattern.ts. When FilterCriteria is
|
|
7
|
+
// absent, has no Filters, or Filters === [], the predicate is always-true so
|
|
8
|
+
// every record is delivered (the pre-filtering default).
|
|
9
|
+
import { matchEsmPattern, validateEsmPattern } from '../emulators/events/pattern.js';
|
|
10
|
+
// AWS default account limit is 5 filter patterns per ESM.
|
|
11
|
+
const MAX_FILTERS = 5;
|
|
12
|
+
function isPlainObject(value) {
|
|
13
|
+
return typeof value === 'object' && value !== null && !Array.isArray(value);
|
|
14
|
+
}
|
|
15
|
+
// Returns the raw Pattern strings from a FilterCriteria value, or [] when there
|
|
16
|
+
// is nothing to filter on (undefined criteria / missing / empty Filters).
|
|
17
|
+
function patternStrings(filterCriteria) {
|
|
18
|
+
if (!isPlainObject(filterCriteria))
|
|
19
|
+
return [];
|
|
20
|
+
const filters = filterCriteria.Filters;
|
|
21
|
+
if (!Array.isArray(filters) || filters.length === 0)
|
|
22
|
+
return [];
|
|
23
|
+
const patterns = [];
|
|
24
|
+
for (const filter of filters) {
|
|
25
|
+
if (isPlainObject(filter) && typeof filter.Pattern === 'string')
|
|
26
|
+
patterns.push(filter.Pattern);
|
|
27
|
+
}
|
|
28
|
+
return patterns;
|
|
29
|
+
}
|
|
30
|
+
// Compiles FilterCriteria into a predicate that is TRUE when the record matches
|
|
31
|
+
// ANY pattern. Parses each Pattern once at compile time. An undefined / empty
|
|
32
|
+
// FilterCriteria compiles to an always-true predicate (no filtering).
|
|
33
|
+
export function compileFilterCriteria(filterCriteria) {
|
|
34
|
+
const raw = patternStrings(filterCriteria);
|
|
35
|
+
if (raw.length === 0)
|
|
36
|
+
return () => true;
|
|
37
|
+
const patterns = [];
|
|
38
|
+
for (const str of raw) {
|
|
39
|
+
try {
|
|
40
|
+
const parsed = JSON.parse(str);
|
|
41
|
+
if (isPlainObject(parsed))
|
|
42
|
+
patterns.push(parsed);
|
|
43
|
+
}
|
|
44
|
+
catch {
|
|
45
|
+
// Unparseable patterns are rejected at write time by validateFilterCriteria;
|
|
46
|
+
// a stray one here is simply dropped from the OR set.
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
return record => patterns.some(pattern => matchEsmPattern(pattern, record));
|
|
50
|
+
}
|
|
51
|
+
// Control-plane validation. Throws a plain Error (callers wrap it into
|
|
52
|
+
// InvalidArgumentException) when FilterCriteria is structurally invalid: a
|
|
53
|
+
// non-object Filters, more than MAX_FILTERS entries, a non-object filter, a
|
|
54
|
+
// non-JSON / non-object Pattern, or an unsupported operator.
|
|
55
|
+
export function validateFilterCriteria(filterCriteria) {
|
|
56
|
+
if (filterCriteria === undefined || filterCriteria === null)
|
|
57
|
+
return;
|
|
58
|
+
if (!isPlainObject(filterCriteria)) {
|
|
59
|
+
throw new Error('FilterCriteria must be an object.');
|
|
60
|
+
}
|
|
61
|
+
const filters = filterCriteria.Filters;
|
|
62
|
+
if (filters === undefined)
|
|
63
|
+
return;
|
|
64
|
+
if (!Array.isArray(filters)) {
|
|
65
|
+
throw new Error('FilterCriteria.Filters must be an array.');
|
|
66
|
+
}
|
|
67
|
+
if (filters.length > MAX_FILTERS) {
|
|
68
|
+
throw new Error(`FilterCriteria supports at most ${MAX_FILTERS} filters.`);
|
|
69
|
+
}
|
|
70
|
+
for (const filter of filters) {
|
|
71
|
+
if (!isPlainObject(filter) || typeof filter.Pattern !== 'string') {
|
|
72
|
+
throw new Error('Each FilterCriteria filter must be an object with a string Pattern.');
|
|
73
|
+
}
|
|
74
|
+
let parsed;
|
|
75
|
+
try {
|
|
76
|
+
parsed = JSON.parse(filter.Pattern);
|
|
77
|
+
}
|
|
78
|
+
catch {
|
|
79
|
+
throw new Error('FilterCriteria Pattern must be valid JSON.');
|
|
80
|
+
}
|
|
81
|
+
if (!isPlainObject(parsed)) {
|
|
82
|
+
throw new Error('FilterCriteria Pattern must be a JSON object.');
|
|
83
|
+
}
|
|
84
|
+
validateEsmPattern(parsed);
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
// Stream records are matched against the raw wire record exactly as readStream
|
|
88
|
+
// returns it (top-level eventName + dynamodb.Keys/NewImage/OldImage in typed
|
|
89
|
+
// attribute-value form), so the filter view is the identity.
|
|
90
|
+
export function buildStreamFilterView(wireRecord) {
|
|
91
|
+
return wireRecord;
|
|
92
|
+
}
|
|
93
|
+
// SQS records are matched against the Lambda SQS record shape. BODY-AS-JSON
|
|
94
|
+
// rule: if message.body parses to a plain object/array use the parsed value
|
|
95
|
+
// (nested content filters); otherwise use the raw body string (scalar/prefix/
|
|
96
|
+
// anything-but on the string). The delivered event still carries the raw body.
|
|
97
|
+
export function buildSqsFilterView(message) {
|
|
98
|
+
let body = message.body;
|
|
99
|
+
try {
|
|
100
|
+
const parsed = JSON.parse(message.body);
|
|
101
|
+
if (parsed !== null && typeof parsed === 'object')
|
|
102
|
+
body = parsed;
|
|
103
|
+
}
|
|
104
|
+
catch {
|
|
105
|
+
// Not JSON — keep the raw string body.
|
|
106
|
+
}
|
|
107
|
+
const messageAttributes = {};
|
|
108
|
+
for (const [name, value] of Object.entries(message.messageAttributes)) {
|
|
109
|
+
messageAttributes[name] = {
|
|
110
|
+
...(value.StringValue !== undefined ? { stringValue: value.StringValue } : {}),
|
|
111
|
+
...(value.BinaryValue !== undefined ? { binaryValue: value.BinaryValue } : {}),
|
|
112
|
+
dataType: value.DataType,
|
|
113
|
+
};
|
|
114
|
+
}
|
|
115
|
+
return {
|
|
116
|
+
messageId: message.messageId,
|
|
117
|
+
receiptHandle: message.receiptHandle,
|
|
118
|
+
body,
|
|
119
|
+
md5OfBody: message.md5OfBody,
|
|
120
|
+
attributes: message.attributes,
|
|
121
|
+
messageAttributes,
|
|
122
|
+
eventSource: 'aws:sqs',
|
|
123
|
+
};
|
|
124
|
+
}
|
|
125
|
+
//# sourceMappingURL=filter-criteria.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"filter-criteria.js","sourceRoot":"","sources":["../../../../src/server/engine/dispatch/filter-criteria.ts"],"names":[],"mappings":"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"}
|
|
@@ -14,6 +14,10 @@ export interface SqsPollerDeps {
|
|
|
14
14
|
export declare function buildSqsLambdaEvent(batch: DeliveredMessage[], eventSourceArn: string, region: string): {
|
|
15
15
|
Records: Record<string, unknown>[];
|
|
16
16
|
};
|
|
17
|
+
export declare function partitionBatchFailures(batch: DeliveredMessage[], payload: unknown): {
|
|
18
|
+
deleteHandles: string[];
|
|
19
|
+
anyRemaining: boolean;
|
|
20
|
+
};
|
|
17
21
|
export declare class SqsPollerSet {
|
|
18
22
|
private readonly deps;
|
|
19
23
|
private readonly loops;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sqs-poller.d.ts","sourceRoot":"","sources":["../../../../src/server/engine/dispatch/sqs-poller.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,aAAa,EAAkC,kBAAkB,EAA0B,MAAM,aAAa,CAAC;AAC7H,OAAO,KAAK,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAE/E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;
|
|
1
|
+
{"version":3,"file":"sqs-poller.d.ts","sourceRoot":"","sources":["../../../../src/server/engine/dispatch/sqs-poller.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,aAAa,EAAkC,kBAAkB,EAA0B,MAAM,aAAa,CAAC;AAC7H,OAAO,KAAK,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAE/E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AAG1E,MAAM,MAAM,QAAQ,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE;IAAE,KAAK,CAAC,EAAE,OAAO,CAAA;CAAE,KAAK,OAAO,CAAC,kBAAkB,CAAC,CAAC;AAEhH,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,aAAa,CAAC;IACnB,GAAG,EAAE,WAAW,CAAC;IACjB,SAAS,EAAE,iBAAiB,CAAC;IAC7B,MAAM,EAAE,QAAQ,CAAC;IAEjB,qBAAqB,CAAC,EAAE,MAAM,EAAE,CAAC;CAClC;AAOD,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,gBAAgB,EAAE,EACzB,cAAc,EAAE,MAAM,EACtB,MAAM,EAAE,MAAM,GACb;IAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAA;CAAE,CAsCxC;AAYD,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,gBAAgB,EAAE,EACzB,OAAO,EAAE,OAAO,GACf;IAAE,aAAa,EAAE,MAAM,EAAE,CAAC;IAAC,YAAY,EAAE,OAAO,CAAA;CAAE,CA0BpD;AAmLD,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAgB;IACrC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAmC;gBAE7C,IAAI,EAAE,aAAa;IAI/B,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAwB1B,OAAO,IAAI,IAAI;IAKf,SAAS,IAAI,MAAM;CAGpB"}
|
|
@@ -7,6 +7,7 @@
|
|
|
7
7
|
// only 'RuntimeUnavailable' (worker restarting) retries the same batch with a
|
|
8
8
|
// capped backoff.
|
|
9
9
|
import { queueNameFromArn } from '../emulators/sqs/index.js';
|
|
10
|
+
import { buildSqsFilterView, compileFilterCriteria } from './filter-criteria.js';
|
|
10
11
|
const DEFAULT_RUNTIME_RETRY_BACKOFF_MS = [1000, 2000, 4000];
|
|
11
12
|
const SAFETY_TICK_MS = 1000;
|
|
12
13
|
// The Lambda SQS event for one delivered batch. Message attributes use the
|
|
@@ -51,6 +52,49 @@ export function buildSqsLambdaEvent(batch, eventSourceArn, region) {
|
|
|
51
52
|
}),
|
|
52
53
|
};
|
|
53
54
|
}
|
|
55
|
+
function isPlainObject(value) {
|
|
56
|
+
return typeof value === 'object' && value !== null && !Array.isArray(value);
|
|
57
|
+
}
|
|
58
|
+
// ReportBatchItemFailures partitioning for an SQS batch (matched by messageId).
|
|
59
|
+
// Returns the receiptHandles to delete and whether any message stays in flight.
|
|
60
|
+
// - null/{}/{batchItemFailures:[]} → delete the whole batch.
|
|
61
|
+
// - malformed / unknown / empty id / every message listed → delete NOTHING
|
|
62
|
+
// (whole batch redelivers via the visibility timeout).
|
|
63
|
+
// - partial subset → delete the messages NOT listed.
|
|
64
|
+
export function partitionBatchFailures(batch, payload) {
|
|
65
|
+
const deleteAll = { deleteHandles: batch.map(message => message.receiptHandle), anyRemaining: false };
|
|
66
|
+
const deleteNone = { deleteHandles: [], anyRemaining: true };
|
|
67
|
+
if (payload === null || payload === undefined)
|
|
68
|
+
return deleteAll;
|
|
69
|
+
if (!isPlainObject(payload))
|
|
70
|
+
return deleteNone;
|
|
71
|
+
const bif = payload.batchItemFailures;
|
|
72
|
+
if (bif === null || bif === undefined)
|
|
73
|
+
return deleteAll;
|
|
74
|
+
if (!Array.isArray(bif))
|
|
75
|
+
return deleteNone;
|
|
76
|
+
if (bif.length === 0)
|
|
77
|
+
return deleteAll;
|
|
78
|
+
const failed = new Set();
|
|
79
|
+
for (const entry of bif) {
|
|
80
|
+
if (!isPlainObject(entry))
|
|
81
|
+
return deleteNone;
|
|
82
|
+
const id = entry.itemIdentifier;
|
|
83
|
+
if (typeof id !== 'string' || id.length === 0)
|
|
84
|
+
return deleteNone;
|
|
85
|
+
failed.add(id);
|
|
86
|
+
}
|
|
87
|
+
const batchIds = new Set(batch.map(message => message.messageId));
|
|
88
|
+
for (const id of failed) {
|
|
89
|
+
if (!batchIds.has(id))
|
|
90
|
+
return deleteNone; // an id outside the batch = whole-batch failure
|
|
91
|
+
}
|
|
92
|
+
const remaining = batch.filter(message => failed.has(message.messageId));
|
|
93
|
+
if (remaining.length === batch.length)
|
|
94
|
+
return deleteNone; // every message listed = whole-batch failure
|
|
95
|
+
const deleteHandles = batch.filter(message => !failed.has(message.messageId)).map(message => message.receiptHandle);
|
|
96
|
+
return { deleteHandles, anyRemaining: remaining.length > 0 };
|
|
97
|
+
}
|
|
54
98
|
class DeliveryLoop {
|
|
55
99
|
region;
|
|
56
100
|
queueName;
|
|
@@ -64,12 +108,14 @@ class DeliveryLoop {
|
|
|
64
108
|
awaitingRedelivery = false;
|
|
65
109
|
tick = null;
|
|
66
110
|
windowWaiter = null;
|
|
111
|
+
filter;
|
|
67
112
|
busListener;
|
|
68
113
|
constructor(deps, esm, region) {
|
|
69
114
|
this.deps = deps;
|
|
70
115
|
this.esm = esm;
|
|
71
116
|
this.region = region;
|
|
72
117
|
this.queueName = queueNameFromArn(esm.eventSourceArn);
|
|
118
|
+
this.filter = compileFilterCriteria(esm.filterCriteria);
|
|
73
119
|
this.busListener = payload => {
|
|
74
120
|
if (payload.region === this.region && payload.queueName === this.queueName)
|
|
75
121
|
this.wake();
|
|
@@ -82,6 +128,8 @@ class DeliveryLoop {
|
|
|
82
128
|
}
|
|
83
129
|
update(esm) {
|
|
84
130
|
this.esm = esm;
|
|
131
|
+
// FilterCriteria can change on update — recompile the predicate.
|
|
132
|
+
this.filter = compileFilterCriteria(esm.filterCriteria);
|
|
85
133
|
this.wake();
|
|
86
134
|
}
|
|
87
135
|
stop() {
|
|
@@ -142,15 +190,42 @@ class DeliveryLoop {
|
|
|
142
190
|
}
|
|
143
191
|
if (this.stopped)
|
|
144
192
|
return true; // in-flight messages redeliver via visibility
|
|
193
|
+
// FilterCriteria: drop non-matching messages BEFORE invoking. AWS
|
|
194
|
+
// auto-deletes them (the receive made them invisible), so they must not
|
|
195
|
+
// redeliver, count as a failure, or reach the OnFailure destination.
|
|
196
|
+
const matching = [];
|
|
197
|
+
const nonMatching = [];
|
|
198
|
+
for (const message of batch) {
|
|
199
|
+
(this.filter(buildSqsFilterView(message)) ? matching : nonMatching).push(message);
|
|
200
|
+
}
|
|
201
|
+
if (nonMatching.length > 0) {
|
|
202
|
+
this.deps.sqs.deleteDelivered(this.region, this.queueName, nonMatching.map(message => message.receiptHandle));
|
|
203
|
+
}
|
|
204
|
+
if (matching.length === 0) {
|
|
205
|
+
// The whole window was filtered out: progress, but nothing to invoke.
|
|
206
|
+
this.awaitingRedelivery = false;
|
|
207
|
+
return true;
|
|
208
|
+
}
|
|
145
209
|
this.armTick();
|
|
146
|
-
const event = buildSqsLambdaEvent(
|
|
210
|
+
const event = buildSqsLambdaEvent(matching, this.esm.eventSourceArn, this.region);
|
|
211
|
+
const reportPartial = this.esm.functionResponseTypes?.includes('ReportBatchItemFailures') ?? false;
|
|
147
212
|
const backoffs = this.deps.runtimeRetryBackoffMs ?? DEFAULT_RUNTIME_RETRY_BACKOFF_MS;
|
|
148
213
|
let attempt = 0;
|
|
149
214
|
for (;;) {
|
|
150
215
|
const result = await this.deps.invoke(this.esm.functionName, event);
|
|
151
216
|
if (result.ok) {
|
|
152
|
-
|
|
153
|
-
|
|
217
|
+
// ReportBatchItemFailures: delete only the messages NOT reported as
|
|
218
|
+
// failed; leave the rest in flight for the visibility timeout to
|
|
219
|
+
// redeliver. Without it, a successful invoke deletes the whole batch.
|
|
220
|
+
if (reportPartial) {
|
|
221
|
+
const { deleteHandles, anyRemaining } = partitionBatchFailures(matching, result.payload);
|
|
222
|
+
this.deps.sqs.deleteDelivered(this.region, this.queueName, deleteHandles);
|
|
223
|
+
this.awaitingRedelivery = anyRemaining;
|
|
224
|
+
}
|
|
225
|
+
else {
|
|
226
|
+
this.deps.sqs.deleteDelivered(this.region, this.queueName, matching.map(message => message.receiptHandle));
|
|
227
|
+
this.awaitingRedelivery = false;
|
|
228
|
+
}
|
|
154
229
|
return true;
|
|
155
230
|
}
|
|
156
231
|
if (result.errorType === 'RuntimeUnavailable' && attempt < backoffs.length && !this.stopped) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sqs-poller.js","sourceRoot":"","sources":["../../../../src/server/engine/dispatch/sqs-poller.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"sqs-poller.js","sourceRoot":"","sources":["../../../../src/server/engine/dispatch/sqs-poller.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stream-tailer.d.ts","sourceRoot":"","sources":["../../../../src/server/engine/dispatch/stream-tailer.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"stream-tailer.d.ts","sourceRoot":"","sources":["../../../../src/server/engine/dispatch/stream-tailer.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAGV,aAAa,EAEd,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AACvE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAE7D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AAC1E,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAGhD,MAAM,WAAW,gBAAgB;IAC/B,GAAG,EAAE,aAAa,CAAC;IACnB,MAAM,EAAE,gBAAgB,CAAC;IACzB,GAAG,EAAE,WAAW,CAAC;IACjB,SAAS,EAAE,iBAAiB,CAAC;IAC7B,MAAM,EAAE,QAAQ,CAAC;IAEjB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AA0RD,qBAAa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAmB;IACxC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAmC;gBAE/C,IAAI,EAAE,gBAAgB;IAIlC,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAwB1B,OAAO,IAAI,IAAI;IAKf,WAAW,IAAI,MAAM;CAGtB"}
|
|
@@ -1,13 +1,19 @@
|
|
|
1
1
|
// DynamoDB Streams → Lambda tailers (PRD RF5.3). One serial tailer per
|
|
2
2
|
// ENABLED ESM on a table stream ARN; wakes on the engine bus
|
|
3
3
|
// 'dynamo:stream-appended' event — no polling. Failure semantics follow AWS:
|
|
4
|
-
//
|
|
5
|
-
//
|
|
6
|
-
//
|
|
4
|
+
// maximumRetryAttempts omitted or -1 means "retry until the record ages out of
|
|
5
|
+
// the stream" (locally, until the batch's oldest record rotates past the
|
|
6
|
+
// 1000-record ring's trim horizon — never capped at 5); a positive N retries
|
|
7
|
+
// at most N times (N+1 invocations). On genuine exhaustion (RetryAttemptsExhausted)
|
|
8
|
+
// or record-age expiry (RecordAgeExpired) the OnFailure SQS destination, when
|
|
9
|
+
// configured, receives the DDBStreamBatchInfo envelope and the tailer advances
|
|
10
|
+
// past the batch. FilterCriteria drops non-matching records before batching
|
|
11
|
+
// (still advancing the cursor); ReportBatchItemFailures honors a handler's
|
|
12
|
+
// partial-batch response, checkpointing before the earliest still-failing record.
|
|
7
13
|
import { randomUUID } from 'crypto';
|
|
8
14
|
import { queueNameFromArn } from '../emulators/sqs/index.js';
|
|
15
|
+
import { buildStreamFilterView, compileFilterCriteria } from './filter-criteria.js';
|
|
9
16
|
const DEFAULT_RETRY_BACKOFF_MS = 200;
|
|
10
|
-
const MAX_RETRY_ATTEMPTS = 5;
|
|
11
17
|
// The stream ring keeps at most 1000 records, so one read sees them all.
|
|
12
18
|
const LATEST_PROBE_LIMIT = 1000;
|
|
13
19
|
const STREAM_ARN_TABLE = /:table\/([^/]+)\/stream\//;
|
|
@@ -20,12 +26,14 @@ class StreamTailer {
|
|
|
20
26
|
stopped = false;
|
|
21
27
|
delivering = false;
|
|
22
28
|
pending = false;
|
|
29
|
+
filter;
|
|
23
30
|
busListener;
|
|
24
31
|
constructor(deps, esm, region, tableName) {
|
|
25
32
|
this.deps = deps;
|
|
26
33
|
this.esm = esm;
|
|
27
34
|
this.region = region;
|
|
28
35
|
this.tableName = tableName;
|
|
36
|
+
this.filter = compileFilterCriteria(esm.filterCriteria);
|
|
29
37
|
// LATEST starts after whatever the ring holds right now; TRIM_HORIZON
|
|
30
38
|
// (and an omitted position) starts at the oldest retained record.
|
|
31
39
|
if (esm.startingPosition === 'LATEST') {
|
|
@@ -42,6 +50,8 @@ class StreamTailer {
|
|
|
42
50
|
}
|
|
43
51
|
update(esm) {
|
|
44
52
|
this.esm = esm;
|
|
53
|
+
// FilterCriteria can change on update — recompile the predicate.
|
|
54
|
+
this.filter = compileFilterCriteria(esm.filterCriteria);
|
|
45
55
|
this.wake();
|
|
46
56
|
}
|
|
47
57
|
stop() {
|
|
@@ -70,38 +80,141 @@ class StreamTailer {
|
|
|
70
80
|
const { records, lastSeq } = this.deps.dynamo.readStream(this.region, this.tableName, this.afterSeq, this.esm.batchSize);
|
|
71
81
|
if (records.length === 0 || lastSeq === undefined)
|
|
72
82
|
break;
|
|
73
|
-
|
|
83
|
+
// FilterCriteria drops non-matching records BEFORE batching. The raw
|
|
84
|
+
// window is still consumed (batchSize reads raw records) and the cursor
|
|
85
|
+
// advances past filtered records so they never reappear.
|
|
86
|
+
const wire = records;
|
|
87
|
+
const matching = wire.filter(record => this.filter(buildStreamFilterView(record)));
|
|
88
|
+
// A window that is 100% filtered advances the cursor with no invoke.
|
|
89
|
+
const advance = matching.length === 0 ? true : await this.deliverBatch(matching);
|
|
74
90
|
if (this.stopped)
|
|
75
91
|
break;
|
|
76
|
-
//
|
|
77
|
-
//
|
|
92
|
+
// deliverBatch returns false only when the ESM was disabled/stopped
|
|
93
|
+
// mid-retry: leave the cursor so the batch is reconsidered on re-enable.
|
|
94
|
+
if (!advance)
|
|
95
|
+
break;
|
|
96
|
+
// Advance in every advancing outcome: success, partial-batch commit,
|
|
97
|
+
// retries exhausted or record-age expiry (OnFailure already sent), or a
|
|
98
|
+
// fully-filtered window — a poisoned batch never wedges.
|
|
78
99
|
this.afterSeq = lastSeq;
|
|
79
100
|
}
|
|
80
101
|
} while (this.pending && !this.stopped && this.esm.enabled);
|
|
81
102
|
this.delivering = false;
|
|
82
103
|
}
|
|
104
|
+
// Delivers one batch, honoring maximumRetryAttempts (-1/omitted = retry until
|
|
105
|
+
// record-age expiry; positive N = N retries) and, when the ESM declares
|
|
106
|
+
// ReportBatchItemFailures, the handler's partial-batch response. Returns true
|
|
107
|
+
// to advance the cursor past the batch, false to leave it (disabled/stopped
|
|
108
|
+
// mid-retry) so the batch is reconsidered when the ESM is re-enabled.
|
|
83
109
|
async deliverBatch(records) {
|
|
84
|
-
const
|
|
85
|
-
const
|
|
110
|
+
const reportPartial = this.esm.functionResponseTypes?.includes('ReportBatchItemFailures') ?? false;
|
|
111
|
+
const configured = this.esm.maximumRetryAttempts;
|
|
112
|
+
const infinite = configured === undefined || configured < 0;
|
|
113
|
+
const maxRetries = infinite ? Number.POSITIVE_INFINITY : configured;
|
|
114
|
+
// The still-failing suffix; shrinks as ReportBatchItemFailures checkpoints
|
|
115
|
+
// past committed records. The attempt budget is NOT reset when it shrinks.
|
|
116
|
+
let suffix = records;
|
|
86
117
|
let lastErrorType;
|
|
87
|
-
|
|
118
|
+
let condition = 'RetryAttemptsExhausted';
|
|
119
|
+
let invokeCount = 0;
|
|
120
|
+
for (let attempt = 0;; attempt++) {
|
|
121
|
+
if (this.stopped || !this.esm.enabled)
|
|
122
|
+
return false;
|
|
88
123
|
if (attempt > 0)
|
|
89
124
|
await sleep(this.deps.retryBackoffMs ?? DEFAULT_RETRY_BACKOFF_MS);
|
|
90
|
-
if (this.stopped)
|
|
91
|
-
return;
|
|
92
|
-
const result = await this.deps.invoke(this.esm.functionName,
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
125
|
+
if (this.stopped || !this.esm.enabled)
|
|
126
|
+
return false;
|
|
127
|
+
const result = await this.deps.invoke(this.esm.functionName, { Records: suffix });
|
|
128
|
+
invokeCount++;
|
|
129
|
+
if (result.ok) {
|
|
130
|
+
if (!reportPartial)
|
|
131
|
+
return true; // whole batch committed
|
|
132
|
+
const parsed = this.parseBatchItemFailures(result.payload, suffix);
|
|
133
|
+
if (parsed.kind === 'success')
|
|
134
|
+
return true; // whole (remaining) batch committed
|
|
135
|
+
if (parsed.kind === 'partial')
|
|
136
|
+
suffix = parsed.failingSuffix; // checkpoint past the prefix
|
|
137
|
+
// partial or malformed → the suffix failed; fall through to retry it.
|
|
138
|
+
lastErrorType = 'Unhandled';
|
|
139
|
+
}
|
|
140
|
+
else {
|
|
141
|
+
// A failed invoke (result.ok === false) retries the whole current suffix.
|
|
142
|
+
lastErrorType = result.errorType;
|
|
143
|
+
}
|
|
144
|
+
if (infinite) {
|
|
145
|
+
// -1/omitted retries until the still-failing suffix ages out of the ring.
|
|
146
|
+
if (this.batchAgedOut(suffix)) {
|
|
147
|
+
condition = 'RecordAgeExpired';
|
|
148
|
+
break;
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
else if (attempt >= maxRetries) {
|
|
152
|
+
condition = 'RetryAttemptsExhausted';
|
|
153
|
+
break;
|
|
154
|
+
}
|
|
96
155
|
}
|
|
97
|
-
console.warn(`[engine-stream-tailer] ${this.tableName}: batch of ${
|
|
98
|
-
`${
|
|
156
|
+
console.warn(`[engine-stream-tailer] ${this.tableName}: batch of ${suffix.length} record(s) failed after ` +
|
|
157
|
+
`${invokeCount} attempt(s) (${lastErrorType ?? 'Error'}, ${condition}) — advancing past it`);
|
|
99
158
|
if (this.esm.onFailureDestinationArn) {
|
|
100
|
-
await this.sendOnFailure(
|
|
159
|
+
await this.sendOnFailure(suffix, invokeCount, lastErrorType, condition);
|
|
160
|
+
}
|
|
161
|
+
return true;
|
|
162
|
+
}
|
|
163
|
+
// Parses a ReportBatchItemFailures response against the current suffix.
|
|
164
|
+
// success = null/undefined payload, absent batchItemFailures, or [] (commit).
|
|
165
|
+
// malformed = batchItemFailures not an array, a bad/empty itemIdentifier, or an
|
|
166
|
+
// itemIdentifier that is not a SequenceNumber in the current suffix
|
|
167
|
+
// (retry the whole current suffix, like a thrown handler).
|
|
168
|
+
// partial = the contiguous suffix from the EARLIEST reported failure through
|
|
169
|
+
// the end (records are ascending, so slicing from the first matched
|
|
170
|
+
// index includes any unlisted records after the earliest failure).
|
|
171
|
+
parseBatchItemFailures(payload, suffix) {
|
|
172
|
+
if (payload === null || payload === undefined)
|
|
173
|
+
return { kind: 'success' };
|
|
174
|
+
if (typeof payload !== 'object' || Array.isArray(payload))
|
|
175
|
+
return { kind: 'malformed' };
|
|
176
|
+
const bif = payload.batchItemFailures;
|
|
177
|
+
if (bif === null || bif === undefined)
|
|
178
|
+
return { kind: 'success' };
|
|
179
|
+
if (!Array.isArray(bif))
|
|
180
|
+
return { kind: 'malformed' };
|
|
181
|
+
if (bif.length === 0)
|
|
182
|
+
return { kind: 'success' };
|
|
183
|
+
const failing = new Set();
|
|
184
|
+
for (const entry of bif) {
|
|
185
|
+
if (typeof entry !== 'object' || entry === null || Array.isArray(entry))
|
|
186
|
+
return { kind: 'malformed' };
|
|
187
|
+
const id = entry.itemIdentifier;
|
|
188
|
+
if (typeof id !== 'string' || id.length === 0)
|
|
189
|
+
return { kind: 'malformed' };
|
|
190
|
+
failing.add(id);
|
|
101
191
|
}
|
|
192
|
+
const suffixSeqs = new Set(suffix.map(record => record.dynamodb?.SequenceNumber).filter((seq) => seq !== undefined));
|
|
193
|
+
for (const id of failing) {
|
|
194
|
+
if (!suffixSeqs.has(id))
|
|
195
|
+
return { kind: 'malformed' };
|
|
196
|
+
}
|
|
197
|
+
const firstIndex = suffix.findIndex(record => {
|
|
198
|
+
const seq = record.dynamodb?.SequenceNumber;
|
|
199
|
+
return seq !== undefined && failing.has(seq);
|
|
200
|
+
});
|
|
201
|
+
return { kind: 'partial', failingSuffix: suffix.slice(firstIndex) };
|
|
202
|
+
}
|
|
203
|
+
// True once the batch's earliest record has been evicted from the ring (its
|
|
204
|
+
// SequenceNumber no longer precedes the oldest retained record after the
|
|
205
|
+
// pre-batch cursor) — the local stand-in for AWS's record-age expiry.
|
|
206
|
+
batchAgedOut(records) {
|
|
207
|
+
const firstSeq = records[0]?.dynamodb?.SequenceNumber;
|
|
208
|
+
if (firstSeq === undefined)
|
|
209
|
+
return true;
|
|
210
|
+
const head = this.deps.dynamo.readStream(this.region, this.tableName, this.afterSeq, 1);
|
|
211
|
+
const headSeq = head.records[0]?.dynamodb?.SequenceNumber;
|
|
212
|
+
if (headSeq === undefined)
|
|
213
|
+
return true; // nothing left in the ring after the cursor
|
|
214
|
+
return headSeq > firstSeq;
|
|
102
215
|
}
|
|
103
216
|
// AWS's OnFailure destination envelope for stream batches.
|
|
104
|
-
async sendOnFailure(records, invokeCount, errorType) {
|
|
217
|
+
async sendOnFailure(records, invokeCount, errorType, condition) {
|
|
105
218
|
const destinationArn = this.esm.onFailureDestinationArn;
|
|
106
219
|
const first = records[0];
|
|
107
220
|
const last = records[records.length - 1];
|
|
@@ -110,7 +223,7 @@ class StreamTailer {
|
|
|
110
223
|
requestContext: {
|
|
111
224
|
requestId: randomUUID(),
|
|
112
225
|
functionArn: `arn:aws:lambda:${this.region}:${account}:function:${this.esm.functionName}`,
|
|
113
|
-
condition
|
|
226
|
+
condition,
|
|
114
227
|
approximateInvokeCount: invokeCount,
|
|
115
228
|
},
|
|
116
229
|
responseContext: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stream-tailer.js","sourceRoot":"","sources":["../../../../src/server/engine/dispatch/stream-tailer.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"stream-tailer.js","sourceRoot":"","sources":["../../../../src/server/engine/dispatch/stream-tailer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
1
|
export declare function matches(pattern: unknown, event: Record<string, unknown>): boolean;
|
|
2
|
+
export declare function matchEsmPattern(pattern: unknown, event: Record<string, unknown>): boolean;
|
|
2
3
|
export declare function validatePattern(pattern: unknown): string[];
|
|
4
|
+
export declare function validateEsmPattern(pattern: unknown): void;
|
|
3
5
|
//# sourceMappingURL=pattern.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pattern.d.ts","sourceRoot":"","sources":["../../../../../src/server/engine/emulators/events/pattern.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"pattern.d.ts","sourceRoot":"","sources":["../../../../../src/server/engine/emulators/events/pattern.ts"],"names":[],"mappings":"AAsBA,wBAAgB,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAGjF;AAKD,wBAAgB,eAAe,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAGzF;AAsHD,wBAAgB,eAAe,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,EAAE,CAO1D;AA+CD,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAKzD"}
|