@laserdata/laser-sdk 0.0.1-rc.22 → 0.0.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/README.md +3 -3
- package/dist/agent/agdx.d.ts +2 -2
- package/dist/agent/agdx.d.ts.map +1 -1
- package/dist/agent/agdx.js +33 -22
- package/dist/agent/agdx.js.map +1 -1
- package/dist/agent/builder.d.ts +13 -2
- package/dist/agent/builder.d.ts.map +1 -1
- package/dist/agent/builder.js +38 -2
- package/dist/agent/builder.js.map +1 -1
- package/dist/agent/context.d.ts.map +1 -1
- package/dist/agent/context.js +5 -3
- package/dist/agent/context.js.map +1 -1
- package/dist/agent/contract.d.ts.map +1 -1
- package/dist/agent/contract.js +2 -11
- package/dist/agent/contract.js.map +1 -1
- package/dist/agent/registry.d.ts +1 -1
- package/dist/agent/registry.d.ts.map +1 -1
- package/dist/agent/registry.js +31 -16
- package/dist/agent/registry.js.map +1 -1
- package/dist/agent/reliable-consumer.d.ts +10 -3
- package/dist/agent/reliable-consumer.d.ts.map +1 -1
- package/dist/agent/reliable-consumer.js +80 -12
- package/dist/agent/reliable-consumer.js.map +1 -1
- package/dist/agent/replies.d.ts +5 -3
- package/dist/agent/replies.d.ts.map +1 -1
- package/dist/agent/replies.js +36 -10
- package/dist/agent/replies.js.map +1 -1
- package/dist/bridges/a2a.d.ts +1 -1
- package/dist/bridges/a2a.d.ts.map +1 -1
- package/dist/bridges/a2a.js +1 -1
- package/dist/bridges/a2a.js.map +1 -1
- package/dist/client/capabilities.d.ts +1 -0
- package/dist/client/capabilities.d.ts.map +1 -1
- package/dist/client/capabilities.js +56 -17
- package/dist/client/capabilities.js.map +1 -1
- package/dist/client/laser.d.ts +22 -8
- package/dist/client/laser.d.ts.map +1 -1
- package/dist/client/laser.js +100 -38
- package/dist/client/laser.js.map +1 -1
- package/dist/govern.d.ts +11 -3
- package/dist/govern.d.ts.map +1 -1
- package/dist/govern.js +76 -10
- package/dist/govern.js.map +1 -1
- package/dist/iggy/apache-iggy.d.ts.map +1 -1
- package/dist/iggy/apache-iggy.js +25 -9
- package/dist/iggy/apache-iggy.js.map +1 -1
- package/dist/runtime/async-once.d.ts +1 -0
- package/dist/runtime/async-once.d.ts.map +1 -1
- package/dist/runtime/async-once.js +3 -0
- package/dist/runtime/async-once.js.map +1 -1
- package/dist/signing.d.ts +5 -5
- package/dist/signing.d.ts.map +1 -1
- package/dist/signing.js +68 -23
- package/dist/signing.js.map +1 -1
- package/dist/wire/cbor.d.ts +1 -0
- package/dist/wire/cbor.d.ts.map +1 -1
- package/dist/wire/cbor.js +16 -2
- package/dist/wire/cbor.js.map +1 -1
- package/dist/wire/codes.d.ts +1 -0
- package/dist/wire/codes.d.ts.map +1 -1
- package/dist/wire/codes.js +24 -0
- package/dist/wire/codes.js.map +1 -1
- package/dist/wire/forward.d.ts +1 -0
- package/dist/wire/forward.d.ts.map +1 -1
- package/dist/wire/forward.js +5 -0
- package/dist/wire/forward.js.map +1 -1
- package/dist/wire/hello.d.ts +1 -0
- package/dist/wire/hello.d.ts.map +1 -1
- package/dist/wire/hello.js +4 -1
- package/dist/wire/hello.js.map +1 -1
- package/dist/wire/index.d.ts +1 -0
- package/dist/wire/index.d.ts.map +1 -1
- package/dist/wire/index.js +1 -0
- package/dist/wire/index.js.map +1 -1
- package/dist/wire/keys.d.ts +22 -0
- package/dist/wire/keys.d.ts.map +1 -0
- package/dist/wire/keys.js +56 -0
- package/dist/wire/keys.js.map +1 -0
- package/dist/wire/mutation.d.ts +9 -0
- package/dist/wire/mutation.d.ts.map +1 -1
- package/dist/wire/mutation.js +35 -1
- package/dist/wire/mutation.js.map +1 -1
- package/package.json +3 -3
package/dist/agent/contract.js
CHANGED
|
@@ -60,16 +60,7 @@ function acceptsReply(laser, message, expectedSigner) {
|
|
|
60
60
|
const verifier = laser[INTERNAL_VERIFIER]();
|
|
61
61
|
if (verifier === undefined)
|
|
62
62
|
return message;
|
|
63
|
-
|
|
64
|
-
if (envelope === undefined)
|
|
65
|
-
return undefined;
|
|
66
|
-
try {
|
|
67
|
-
const principal = verifier.verify(envelope);
|
|
68
|
-
return principal === expectedSigner ? { ...message, verifiedPrincipal: principal } : undefined;
|
|
69
|
-
}
|
|
70
|
-
catch {
|
|
71
|
-
return undefined;
|
|
72
|
-
}
|
|
63
|
+
return message.verifiedPrincipal === expectedSigner ? message : undefined;
|
|
73
64
|
}
|
|
74
65
|
function isWorking(envelope) {
|
|
75
66
|
return (envelope?.kind === AgentKind.Status &&
|
|
@@ -158,7 +149,7 @@ export class ContractBuilder {
|
|
|
158
149
|
const conversation = this.conversationId ?? ConversationId.new();
|
|
159
150
|
const actualCorrelation = CorrelationId.parse(ConversationId.new().toString());
|
|
160
151
|
const hub = await this.laser[INTERNAL_REPLY_HUB](this.replyTopic);
|
|
161
|
-
const ticket = hub.subscribeStream(actualCorrelation.toString());
|
|
152
|
+
const ticket = hub.subscribeStream(actualCorrelation.toString(), resolved.expectedSigner);
|
|
162
153
|
let run;
|
|
163
154
|
try {
|
|
164
155
|
if (this.registerRun) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contract.js","sourceRoot":"","sources":["../../src/agent/contract.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"contract.js","sourceRoot":"","sources":["../../src/agent/contract.ts"],"names":[],"mappings":"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"}
|
package/dist/agent/registry.d.ts
CHANGED
|
@@ -10,7 +10,7 @@ export interface RegistryCache {
|
|
|
10
10
|
offsets: Map<number, bigint>;
|
|
11
11
|
presence: Map<string, PresenceEntry>;
|
|
12
12
|
presenceReadAtMicros?: bigint;
|
|
13
|
-
appliedFacts:
|
|
13
|
+
appliedFacts: Map<string, bigint>;
|
|
14
14
|
}
|
|
15
15
|
export declare function newRegistryCache(): RegistryCache;
|
|
16
16
|
export interface RegisteredCard {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/agent/registry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAE5D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAA;AACjD,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AACtD,OAAO,
|
|
1
|
+
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/agent/registry.ts"],"names":[],"mappings":"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"}
|
package/dist/agent/registry.js
CHANGED
|
@@ -1,13 +1,16 @@
|
|
|
1
1
|
import {} from "../iggy/apache-iggy.js";
|
|
2
2
|
import { InvalidError } from "../client/errors.js";
|
|
3
3
|
import { AgentId, PrincipalId } from "../types/ids.js";
|
|
4
|
-
import { OPERATION_CARD, OPERATION_QUARANTINE, OPERATION_UNQUARANTINE, decodeAgentCard, decodeAgentPresence,
|
|
4
|
+
import { OPERATION_CARD, OPERATION_QUARANTINE, OPERATION_UNQUARANTINE, decodeAgentCard, decodeAgentPresence, encodeAgentPresence, parseAgentId, validateAgentPresence } from "../wire/agent.js";
|
|
5
5
|
import { decodeOne, encodeNamed, expectMap } from "../wire/cbor.js";
|
|
6
6
|
import { decodeClientMetadataList, encodeClientMetadataQuery } from "../wire/clients.js";
|
|
7
7
|
import { AGDX_GET_CLIENTS_METADATA_CODE, CLIENT_METADATA_OP_VERSION } from "../wire/codes.js";
|
|
8
8
|
import { MAX_PAGE_SIZE } from "../wire/limits.js";
|
|
9
9
|
import { KeyKind } from "../signing.js";
|
|
10
|
+
import { decodeAgentMessage } from "./reliable-consumer.js";
|
|
10
11
|
const PRESENCE_TTL_MICROS = 2000000n;
|
|
12
|
+
const APPLIED_FACT_CAPACITY = 16_384;
|
|
13
|
+
const APPLIED_FACT_TTL_MICROS = 86400000000n;
|
|
11
14
|
function u32(value, field) {
|
|
12
15
|
if (!Number.isSafeInteger(value) || value < 0 || value > 0xffff_ffff) {
|
|
13
16
|
throw new InvalidError(`${field} must be an unsigned 32-bit integer`, { field, value });
|
|
@@ -20,7 +23,7 @@ export function newRegistryCache() {
|
|
|
20
23
|
quarantined: new Set(),
|
|
21
24
|
offsets: new Map(),
|
|
22
25
|
presence: new Map(),
|
|
23
|
-
appliedFacts: new
|
|
26
|
+
appliedFacts: new Map()
|
|
24
27
|
};
|
|
25
28
|
}
|
|
26
29
|
function tryAgentId(value) {
|
|
@@ -176,7 +179,7 @@ export class AgentRegistry {
|
|
|
176
179
|
this.cards = new Map(cache.cards);
|
|
177
180
|
this.presence = new Map(cache.presence);
|
|
178
181
|
this.quarantined = new Set(cache.quarantined);
|
|
179
|
-
this.appliedFacts = new
|
|
182
|
+
this.appliedFacts = new Map(cache.appliedFacts);
|
|
180
183
|
this.presenceReadAtMicros = cache.presenceReadAtMicros;
|
|
181
184
|
this.cursor.fromOffsets(cache.offsets);
|
|
182
185
|
}
|
|
@@ -184,31 +187,29 @@ export class AgentRegistry {
|
|
|
184
187
|
const messages = await this.cursor.poll();
|
|
185
188
|
let folded = 0;
|
|
186
189
|
for (const message of messages) {
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
const context = "agent registry record";
|
|
190
|
-
envelope = decodeAgentEnvelope(expectMap(decodeOne(message.payload, context), context), context);
|
|
191
|
-
}
|
|
192
|
-
catch {
|
|
190
|
+
const decoded = decodeAgentMessage(message);
|
|
191
|
+
if (decoded.kind === "error" || decoded.message.envelope === undefined)
|
|
193
192
|
continue;
|
|
194
|
-
|
|
193
|
+
const envelope = decoded.message.envelope;
|
|
194
|
+
const observedAtMicros = decoded.observedAtMicros ?? nowMicros;
|
|
195
195
|
const operation = envelope.operation;
|
|
196
196
|
let applied;
|
|
197
197
|
if (operation === OPERATION_QUARANTINE || operation === OPERATION_UNQUARANTINE) {
|
|
198
198
|
const record = envelope.record?.toString();
|
|
199
199
|
if (record !== undefined && this.appliedFacts.has(record))
|
|
200
200
|
continue;
|
|
201
|
-
if (!this.factAuthorized(envelope,
|
|
201
|
+
if (!this.factAuthorized(envelope, decoded.signatureContext, decoded.observedAtMicros)) {
|
|
202
202
|
continue;
|
|
203
|
+
}
|
|
203
204
|
if (record !== undefined)
|
|
204
|
-
this.appliedFacts.
|
|
205
|
+
this.appliedFacts.set(record, observedAtMicros);
|
|
205
206
|
applied =
|
|
206
207
|
operation === OPERATION_QUARANTINE
|
|
207
208
|
? applyQuarantine(this.quarantined, envelope)
|
|
208
209
|
: liftQuarantine(this.quarantined, envelope);
|
|
209
210
|
}
|
|
210
211
|
else {
|
|
211
|
-
applied = applyCard(this.cards, envelope,
|
|
212
|
+
applied = applyCard(this.cards, envelope, observedAtMicros);
|
|
212
213
|
}
|
|
213
214
|
if (applied)
|
|
214
215
|
folded += 1;
|
|
@@ -217,14 +218,28 @@ export class AgentRegistry {
|
|
|
217
218
|
if (!cardIsFresh(card, nowMicros))
|
|
218
219
|
this.cards.delete(agent);
|
|
219
220
|
}
|
|
221
|
+
const cutoff = nowMicros - APPLIED_FACT_TTL_MICROS;
|
|
222
|
+
for (const [record, observed] of this.appliedFacts) {
|
|
223
|
+
if (observed < cutoff)
|
|
224
|
+
this.appliedFacts.delete(record);
|
|
225
|
+
}
|
|
226
|
+
while (this.appliedFacts.size > APPLIED_FACT_CAPACITY) {
|
|
227
|
+
const oldest = this.appliedFacts.keys().next().value;
|
|
228
|
+
if (oldest === undefined)
|
|
229
|
+
break;
|
|
230
|
+
this.appliedFacts.delete(oldest);
|
|
231
|
+
}
|
|
220
232
|
this.persist();
|
|
221
233
|
return folded;
|
|
222
234
|
}
|
|
223
|
-
factAuthorized(envelope,
|
|
235
|
+
factAuthorized(envelope, context, observedAtMicros) {
|
|
224
236
|
if (this.verifier === undefined)
|
|
225
237
|
return true;
|
|
238
|
+
if (context === undefined || observedAtMicros === undefined)
|
|
239
|
+
return false;
|
|
226
240
|
try {
|
|
227
|
-
return this.verifier.
|
|
241
|
+
return (this.verifier.verifyObservedAt(envelope, context, observedAtMicros).kind ===
|
|
242
|
+
KeyKind.Operator);
|
|
228
243
|
}
|
|
229
244
|
catch {
|
|
230
245
|
return false;
|
|
@@ -276,7 +291,7 @@ export class AgentRegistry {
|
|
|
276
291
|
this.cache.cards = new Map(this.cards);
|
|
277
292
|
this.cache.presence = new Map(this.presence);
|
|
278
293
|
this.cache.quarantined = new Set(this.quarantined);
|
|
279
|
-
this.cache.appliedFacts = new
|
|
294
|
+
this.cache.appliedFacts = new Map(this.appliedFacts);
|
|
280
295
|
this.cache.offsets = new Map(this.cursor.offsets);
|
|
281
296
|
if (this.presenceReadAtMicros !== undefined) {
|
|
282
297
|
this.cache.presenceReadAtMicros = this.presenceReadAtMicros;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/agent/registry.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/agent/registry.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,7 +5,7 @@ import { type Provenance } from "../provenance/provenance.js";
|
|
|
5
5
|
import { type Clock } from "../runtime/clock.js";
|
|
6
6
|
import type { KeyRegistry, SigningKey } from "../signing.js";
|
|
7
7
|
import { AgentId, type ConsumerGroupName, type MessageId } from "../types/ids.js";
|
|
8
|
-
import { type AgentDeadLetter, type AgentEnvelope } from "../wire/agent.js";
|
|
8
|
+
import { type AgentDeadLetter, type AgentEnvelope, type SignatureContext } from "../wire/agent.js";
|
|
9
9
|
import { type ContentType } from "../wire/content.js";
|
|
10
10
|
import { AgentContext } from "./context.js";
|
|
11
11
|
import { type InboxRoute } from "./router.js";
|
|
@@ -14,13 +14,15 @@ export interface ReceivedAgentMessage {
|
|
|
14
14
|
readonly payload: Uint8Array;
|
|
15
15
|
readonly partitionId: number;
|
|
16
16
|
readonly offset: bigint;
|
|
17
|
+
readonly timestampMicros?: bigint;
|
|
17
18
|
readonly headers: ReadonlyMap<string, IggyHeaderValue>;
|
|
18
19
|
}
|
|
19
20
|
export interface ProvenanceAndEnvelope {
|
|
20
21
|
readonly provenance: Provenance;
|
|
21
22
|
readonly envelope?: AgentEnvelope;
|
|
23
|
+
readonly signatureContext?: SignatureContext;
|
|
22
24
|
}
|
|
23
|
-
export declare function provenanceAndEnvelope(message: ReceivedAgentMessage): ProvenanceAndEnvelope;
|
|
25
|
+
export declare function provenanceAndEnvelope(message: ReceivedAgentMessage, understoodFeatures?: bigint): ProvenanceAndEnvelope;
|
|
24
26
|
export declare function contentTypeOf(message: ReceivedAgentMessage): ContentType | undefined;
|
|
25
27
|
export interface AgentMessage {
|
|
26
28
|
readonly provenance: Provenance;
|
|
@@ -34,12 +36,14 @@ export declare function agentMessageBody(message: AgentMessage): Uint8Array;
|
|
|
34
36
|
export type DecodedAgentMessage = {
|
|
35
37
|
readonly kind: "message";
|
|
36
38
|
readonly message: AgentMessage;
|
|
39
|
+
readonly signatureContext?: SignatureContext;
|
|
40
|
+
readonly observedAtMicros?: bigint;
|
|
37
41
|
} | {
|
|
38
42
|
readonly kind: "error";
|
|
39
43
|
readonly error: CodecError;
|
|
40
44
|
readonly payload: Uint8Array;
|
|
41
45
|
};
|
|
42
|
-
export declare function decodeAgentMessage(received: ReceivedAgentMessage): DecodedAgentMessage;
|
|
46
|
+
export declare function decodeAgentMessage(received: ReceivedAgentMessage, understoodFeatures?: bigint): DecodedAgentMessage;
|
|
43
47
|
export interface RetryPolicy {
|
|
44
48
|
readonly maxAttempts: number;
|
|
45
49
|
readonly baseDelayMs: number;
|
|
@@ -97,6 +101,9 @@ export interface ReliableConsumerOptions {
|
|
|
97
101
|
readonly retry?: RetryPolicy;
|
|
98
102
|
readonly pollIntervalMs?: number;
|
|
99
103
|
readonly concurrency?: ConcurrencyPolicy;
|
|
104
|
+
readonly maxQueuedRecords?: number;
|
|
105
|
+
readonly maxQueuedBytes?: number;
|
|
106
|
+
readonly understoodFeatures?: bigint;
|
|
100
107
|
readonly respondOn?: string;
|
|
101
108
|
readonly inboxRoute?: InboxRoute;
|
|
102
109
|
readonly ackOnPickup?: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reliable-consumer.d.ts","sourceRoot":"","sources":["../../src/agent/reliable-consumer.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EAGV,UAAU,EAGX,MAAM,qBAAqB,CAAA;AAE5B,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAA;AAC/C,OAAO,KAAK,EAAE,eAAe,EAAkB,MAAM,wBAAwB,CAAA;AAE7E,OAAO,EAA2B,KAAK,UAAU,EAAE,MAAM,6BAA6B,CAAA;AACtF,OAAO,EAAe,KAAK,KAAK,EAAE,MAAM,qBAAqB,CAAA;AAC7D,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAC5D,OAAO,EAAE,OAAO,EAAkB,KAAK,iBAAiB,EAAE,KAAK,SAAS,EAAE,MAAM,iBAAiB,CAAA;AACjG,OAAO,
|
|
1
|
+
{"version":3,"file":"reliable-consumer.d.ts","sourceRoot":"","sources":["../../src/agent/reliable-consumer.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,13 +4,15 @@ import { AgentTopic } from "../provenance/agent-topic.js";
|
|
|
4
4
|
import { decodeProvenanceHeaders } from "../provenance/provenance.js";
|
|
5
5
|
import { SystemClock } from "../runtime/clock.js";
|
|
6
6
|
import { AgentId, ConversationId } from "../types/ids.js";
|
|
7
|
-
import { AgentKind, OPERATION_TASK, TaskStateName, decodeAgentEnvelope, encodeAgentDeadLetter, taskStateFromCode } from "../wire/agent.js";
|
|
7
|
+
import { AgentKind, OPERATION_TASK, TaskStateName, decodeAgentEnvelope, encodeAgentDeadLetter, taskStateFromCode, unmetRequirements, validateAgentEnvelope } from "../wire/agent.js";
|
|
8
|
+
import { AGENT_OP_VERSION } from "../wire/codes.js";
|
|
8
9
|
import { decodeOne, encodeNamed, expectMap } from "../wire/cbor.js";
|
|
9
10
|
import { contentTypeFromCode } from "../wire/content.js";
|
|
10
11
|
import { AGENT_VERSION, CONTENT_TYPE, FENCE } from "../wire/headers.js";
|
|
11
12
|
import { AgentContext } from "./context.js";
|
|
12
13
|
import { ADVERTISED_INBOX_ROUTE } from "./router.js";
|
|
13
14
|
const DEDUP_SCOPE_SEP = "\u001f";
|
|
15
|
+
const TEXT_ENCODER = new TextEncoder();
|
|
14
16
|
const FENCE_MAP_SOFT_CAP = 16_384;
|
|
15
17
|
const FENCE_ENTRY_TTL_MICROS = 600000000n;
|
|
16
18
|
const FENCE_SWEEP_INTERVAL_MICROS = 1000000n;
|
|
@@ -45,11 +47,31 @@ export function provenanceFromEnvelope(envelope) {
|
|
|
45
47
|
...(fenceToken !== undefined ? { fenceToken } : {})
|
|
46
48
|
};
|
|
47
49
|
}
|
|
48
|
-
export function provenanceAndEnvelope(message) {
|
|
49
|
-
|
|
50
|
+
export function provenanceAndEnvelope(message, understoodFeatures = 0n) {
|
|
51
|
+
const version = message.headers.get(AGENT_VERSION);
|
|
52
|
+
if (version !== undefined) {
|
|
53
|
+
if (version.kind !== "uint32" || version.value !== AGENT_OP_VERSION) {
|
|
54
|
+
throw new CodecError("unsupported agent envelope version", "agent", AGENT_VERSION);
|
|
55
|
+
}
|
|
50
56
|
const context = "agent envelope";
|
|
51
57
|
const envelope = decodeAgentEnvelope(expectMap(decodeOne(message.payload, context), context), context);
|
|
52
|
-
|
|
58
|
+
validateAgentEnvelope(envelope);
|
|
59
|
+
const unmet = unmetRequirements(envelope, understoodFeatures);
|
|
60
|
+
if (unmet !== 0n) {
|
|
61
|
+
throw new CodecError(`agent envelope requires unsupported features 0x${unmet.toString(16).padStart(16, "0")}`, "agent", "must_understand");
|
|
62
|
+
}
|
|
63
|
+
const contentType = message.headers.get(CONTENT_TYPE);
|
|
64
|
+
if (contentType !== undefined && contentType.kind !== "uint8") {
|
|
65
|
+
throw new CodecError("invalid content-type header", "agent", CONTENT_TYPE);
|
|
66
|
+
}
|
|
67
|
+
return {
|
|
68
|
+
provenance: provenanceFromEnvelope(envelope),
|
|
69
|
+
envelope,
|
|
70
|
+
signatureContext: {
|
|
71
|
+
...(contentType?.kind === "uint8" ? { contentType: contentType.value } : {}),
|
|
72
|
+
agentVersion: version.value
|
|
73
|
+
}
|
|
74
|
+
};
|
|
53
75
|
}
|
|
54
76
|
return { provenance: decodeProvenanceHeaders(message.headers) };
|
|
55
77
|
}
|
|
@@ -60,9 +82,9 @@ export function contentTypeOf(message) {
|
|
|
60
82
|
export function agentMessageBody(message) {
|
|
61
83
|
return message.envelope !== undefined ? message.envelope.body : message.payload;
|
|
62
84
|
}
|
|
63
|
-
export function decodeAgentMessage(received) {
|
|
85
|
+
export function decodeAgentMessage(received, understoodFeatures = 0n) {
|
|
64
86
|
try {
|
|
65
|
-
const { provenance, envelope } = provenanceAndEnvelope(received);
|
|
87
|
+
const { provenance, envelope, signatureContext } = provenanceAndEnvelope(received, understoodFeatures);
|
|
66
88
|
const contentType = contentTypeOf(received);
|
|
67
89
|
return {
|
|
68
90
|
kind: "message",
|
|
@@ -72,7 +94,11 @@ export function decodeAgentMessage(received) {
|
|
|
72
94
|
id: { partitionId: received.partitionId, offset: received.offset },
|
|
73
95
|
...(envelope !== undefined ? { envelope } : {}),
|
|
74
96
|
...(contentType !== undefined ? { contentType } : {})
|
|
75
|
-
}
|
|
97
|
+
},
|
|
98
|
+
...(signatureContext !== undefined ? { signatureContext } : {}),
|
|
99
|
+
...(received.timestampMicros !== undefined
|
|
100
|
+
? { observedAtMicros: received.timestampMicros }
|
|
101
|
+
: {})
|
|
76
102
|
};
|
|
77
103
|
}
|
|
78
104
|
catch (cause) {
|
|
@@ -220,7 +246,7 @@ class ReliableWorker {
|
|
|
220
246
|
this.topicId = topicId;
|
|
221
247
|
}
|
|
222
248
|
async consume(received) {
|
|
223
|
-
const decoded = decodeAgentMessage(received);
|
|
249
|
+
const decoded = decodeAgentMessage(received, this.options.understoodFeatures);
|
|
224
250
|
if (decoded.kind === "error") {
|
|
225
251
|
await this.deadLetterUndecodable(received, decoded.payload);
|
|
226
252
|
return;
|
|
@@ -237,9 +263,12 @@ class ReliableWorker {
|
|
|
237
263
|
const envelope = message.envelope;
|
|
238
264
|
if (envelope === undefined)
|
|
239
265
|
throw new InvalidError("verified topic requires an envelope");
|
|
266
|
+
if (decoded.signatureContext === undefined || decoded.observedAtMicros === undefined) {
|
|
267
|
+
throw new InvalidError("verified topic requires observed record headers and timestamp");
|
|
268
|
+
}
|
|
240
269
|
message = {
|
|
241
270
|
...message,
|
|
242
|
-
verifiedPrincipal: this.options.verifier.
|
|
271
|
+
verifiedPrincipal: this.options.verifier.verifyObservedAt(envelope, decoded.signatureContext, decoded.observedAtMicros).principal
|
|
243
272
|
};
|
|
244
273
|
}
|
|
245
274
|
catch {
|
|
@@ -376,6 +405,8 @@ class ReliableWorker {
|
|
|
376
405
|
catch {
|
|
377
406
|
// Dead-letter sinks observe the terminal delivery decision.
|
|
378
407
|
}
|
|
408
|
+
if (publishError !== undefined)
|
|
409
|
+
throw publishError;
|
|
379
410
|
}
|
|
380
411
|
}
|
|
381
412
|
export class ReliableConsumer {
|
|
@@ -385,6 +416,14 @@ export class ReliableConsumer {
|
|
|
385
416
|
(options.dedupWindow ?? 10_000) < 1) {
|
|
386
417
|
throw new InvalidError("dedupWindow must be a positive safe integer");
|
|
387
418
|
}
|
|
419
|
+
for (const [name, value] of [
|
|
420
|
+
["maxQueuedRecords", options.maxQueuedRecords ?? 4_096],
|
|
421
|
+
["maxQueuedBytes", options.maxQueuedBytes ?? 64 * 1024 * 1024]
|
|
422
|
+
]) {
|
|
423
|
+
if (!Number.isSafeInteger(value) || value < 1) {
|
|
424
|
+
throw new InvalidError(`${name} must be a positive safe integer`);
|
|
425
|
+
}
|
|
426
|
+
}
|
|
388
427
|
this.options = options;
|
|
389
428
|
}
|
|
390
429
|
async run(laser, handler, control = {}) {
|
|
@@ -404,6 +443,7 @@ export class ReliableConsumer {
|
|
|
404
443
|
const ids = await laserTransportIds(laser, stream, this.options.topic);
|
|
405
444
|
const worker = new ReliableWorker(laser, handler, {
|
|
406
445
|
retry: this.options.retry ?? DEFAULT_RETRY_POLICY,
|
|
446
|
+
understoodFeatures: this.options.understoodFeatures ?? 0n,
|
|
407
447
|
clock: this.options.clock ?? new SystemClock(),
|
|
408
448
|
inboxRoute: this.options.inboxRoute ?? ADVERTISED_INBOX_ROUTE,
|
|
409
449
|
middleware: this.options.middleware ?? [],
|
|
@@ -426,7 +466,7 @@ export class ReliableConsumer {
|
|
|
426
466
|
}
|
|
427
467
|
else {
|
|
428
468
|
const concurrency = this.options.concurrency;
|
|
429
|
-
await this.runPerPartition(consumer, worker, concurrency?.kind === "serial-per-partition" ? concurrency.maxPartitions : 1, control, pollIntervalMs);
|
|
469
|
+
await this.runPerPartition(consumer, worker, concurrency?.kind === "serial-per-partition" ? concurrency.maxPartitions : 1, this.options.maxQueuedRecords ?? 4_096, this.options.maxQueuedBytes ?? 64 * 1024 * 1024, control, pollIntervalMs);
|
|
430
470
|
}
|
|
431
471
|
return;
|
|
432
472
|
}
|
|
@@ -468,10 +508,12 @@ export class ReliableConsumer {
|
|
|
468
508
|
await consumer.commit(message);
|
|
469
509
|
}
|
|
470
510
|
}
|
|
471
|
-
async runPerPartition(consumer, worker, maxPartitions, control, pollIntervalMs) {
|
|
511
|
+
async runPerPartition(consumer, worker, maxPartitions, maxQueuedRecords, maxQueuedBytes, control, pollIntervalMs) {
|
|
472
512
|
const limit = Math.max(1, maxPartitions);
|
|
473
513
|
const lanes = new Map();
|
|
474
514
|
const scheduled = new Set();
|
|
515
|
+
let queuedRecords = 0;
|
|
516
|
+
let queuedBytes = 0;
|
|
475
517
|
let failure;
|
|
476
518
|
const currentFailure = () => failure;
|
|
477
519
|
while (control.signal?.aborted !== true && failure === undefined) {
|
|
@@ -481,6 +523,12 @@ export class ReliableConsumer {
|
|
|
481
523
|
const position = `${String(message.partitionId)}:${message.offset.toString()}`;
|
|
482
524
|
if (scheduled.has(position))
|
|
483
525
|
continue;
|
|
526
|
+
const messageBytes = message.payload.byteLength + headerBytes(message.headers);
|
|
527
|
+
while (lanes.size > 0 &&
|
|
528
|
+
(queuedRecords >= Math.max(1, maxQueuedRecords) ||
|
|
529
|
+
queuedBytes + messageBytes > Math.max(1, maxQueuedBytes))) {
|
|
530
|
+
await Promise.race(lanes.values());
|
|
531
|
+
}
|
|
484
532
|
let existing = lanes.get(message.partitionId);
|
|
485
533
|
while (existing === undefined && lanes.size >= limit && currentFailure() === undefined) {
|
|
486
534
|
await Promise.race(lanes.values());
|
|
@@ -489,17 +537,23 @@ export class ReliableConsumer {
|
|
|
489
537
|
if (currentFailure() !== undefined)
|
|
490
538
|
break;
|
|
491
539
|
scheduled.add(position);
|
|
540
|
+
queuedRecords += 1;
|
|
541
|
+
queuedBytes += messageBytes;
|
|
492
542
|
const lane = (existing ?? Promise.resolve())
|
|
493
543
|
.then(async () => {
|
|
544
|
+
if (currentFailure() !== undefined)
|
|
545
|
+
return;
|
|
494
546
|
await worker.consume(message);
|
|
495
547
|
if (control.hardAborted?.() !== true)
|
|
496
548
|
await consumer.commit(message);
|
|
497
549
|
})
|
|
498
550
|
.catch((error) => {
|
|
499
|
-
failure
|
|
551
|
+
failure ??= handlerError(error);
|
|
500
552
|
})
|
|
501
553
|
.finally(() => {
|
|
502
554
|
scheduled.delete(position);
|
|
555
|
+
queuedRecords -= 1;
|
|
556
|
+
queuedBytes -= messageBytes;
|
|
503
557
|
if (lanes.get(message.partitionId) === lane)
|
|
504
558
|
lanes.delete(message.partitionId);
|
|
505
559
|
});
|
|
@@ -539,6 +593,20 @@ export class ReliableConsumer {
|
|
|
539
593
|
}
|
|
540
594
|
}
|
|
541
595
|
}
|
|
596
|
+
function headerBytes(headers) {
|
|
597
|
+
let size = 0;
|
|
598
|
+
for (const [key, value] of headers) {
|
|
599
|
+
size += TEXT_ENCODER.encode(key).byteLength;
|
|
600
|
+
if (value.kind === "raw" || value.kind === "int128" || value.kind === "uint128") {
|
|
601
|
+
size += value.value.byteLength;
|
|
602
|
+
}
|
|
603
|
+
else if (value.kind === "string")
|
|
604
|
+
size += TEXT_ENCODER.encode(value.value).byteLength;
|
|
605
|
+
else
|
|
606
|
+
size += 16;
|
|
607
|
+
}
|
|
608
|
+
return size;
|
|
609
|
+
}
|
|
542
610
|
function laserTransport(laser) {
|
|
543
611
|
return laser[INTERNAL_TRANSPORT]();
|
|
544
612
|
}
|