@cotal-ai/connector-core 0.60.0 → 0.62.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/agent.d.ts +17 -5
- package/dist/agent.d.ts.map +1 -1
- package/dist/agent.js +57 -59
- package/dist/agent.js.map +1 -1
- package/dist/docs-bundle.generated.js +18 -18
- package/dist/docs-bundle.generated.js.map +1 -1
- package/dist/tool-specs.d.ts.map +1 -1
- package/dist/tool-specs.js +9 -5
- package/dist/tool-specs.js.map +1 -1
- package/package.json +2 -2
package/dist/agent.d.ts
CHANGED
|
@@ -122,9 +122,6 @@ export declare class MeshAgent extends EventEmitter {
|
|
|
122
122
|
* permanently degrades unknown ambient to pull-only for this session rather than risk a late
|
|
123
123
|
* live/durable copy changing from quiet to automatic. */
|
|
124
124
|
private evictedClassifications;
|
|
125
|
-
/** How many times overflow has evicted each directed id without it ever being handled. Bounds the
|
|
126
|
-
* un-ack reprieve so a redelivery cycle cannot run forever — see the eviction path in `buffer`. */
|
|
127
|
-
private overflowEvictions;
|
|
128
125
|
/** Surfaced to the host but not yet committed or abandoned, counted per holding frame because
|
|
129
126
|
* frames overlap. See {@link holdInFlight}. */
|
|
130
127
|
private inFlightIds;
|
|
@@ -191,6 +188,11 @@ export declare class MeshAgent extends EventEmitter {
|
|
|
191
188
|
* answered yet (bounded). `pending` marks one a DM in flight is answering; `text` is the start of
|
|
192
189
|
* its body, to name it when a DM must say which one it answers. */
|
|
193
190
|
private readonly unanswered;
|
|
191
|
+
/** By sender id, least recently heard first: the display name of each peer that sent us a DM or
|
|
192
|
+
* anycast (bounded). The id is the authenticated sender (the broker forge-locks it on the
|
|
193
|
+
* subject), so a DM back to it is addressed to a real identity even when that sender has no
|
|
194
|
+
* roster row, as a one-shot `cotal send` never has. See {@link heldSender}. */
|
|
195
|
+
private readonly senders;
|
|
194
196
|
/** By `contextId`, the questions this seat asked inside a {@link withCorrelation} scope, and whom
|
|
195
197
|
* they went to (bounded). See {@link answersQuestion}. */
|
|
196
198
|
private readonly asked;
|
|
@@ -614,16 +616,26 @@ export declare class MeshAgent extends EventEmitter {
|
|
|
614
616
|
* one peer, `undefined` if none match, or throws `AmbiguousPeerError` on a same-name collision —
|
|
615
617
|
* it never silently picks. See `resolvePeer` in @cotal-ai/core. */
|
|
616
618
|
resolvePeer(target: string): Presence | undefined;
|
|
619
|
+
/** #384: a peer that sent us a DM or anycast and has no roster row, by its exact id or, while the
|
|
620
|
+
* presence view is current, by a display name only one such sender carried. A one-shot
|
|
621
|
+
* `cotal send` never registers presence, so without this a reply to it could not be addressed. */
|
|
622
|
+
private heldSender;
|
|
617
623
|
dm(target: string, text: string, opts?: {
|
|
618
624
|
replyTo?: string;
|
|
619
625
|
}): Promise<{
|
|
620
626
|
msg: CotalMessage;
|
|
621
|
-
|
|
627
|
+
/** The roster row the target resolved to; absent when it resolved to an unrostered sender. */
|
|
628
|
+
peer?: Presence;
|
|
629
|
+
recipient: {
|
|
630
|
+
id: string;
|
|
631
|
+
name: string;
|
|
632
|
+
};
|
|
622
633
|
ack: {
|
|
623
634
|
seq: number;
|
|
624
635
|
duplicate: boolean;
|
|
625
636
|
};
|
|
626
|
-
|
|
637
|
+
/** `unrostered`: the recipient is a peer that messaged us and has no roster row (#384). */
|
|
638
|
+
recipientStatusAtSend: Presence["status"] | "unrostered";
|
|
627
639
|
}>;
|
|
628
640
|
/** Ask the manager to spawn a new teammate into this space (its `spawn` action).
|
|
629
641
|
* The request uses {@link SPAWN_TIMEOUT_MS} as its floor; after acceptance, core follows through
|
package/dist/agent.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"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"}
|
package/dist/agent.js
CHANGED
|
@@ -71,12 +71,6 @@ export function afterRecallMark(a, b) {
|
|
|
71
71
|
return a.ts !== b.ts ? a.ts > b.ts : a.id > b.id;
|
|
72
72
|
}
|
|
73
73
|
const MAX_INBOX = 200;
|
|
74
|
-
/** How many times overflow may evict the SAME directed id before it is acked and given up on.
|
|
75
|
-
* The un-ack reprieve exists so a sacrificed message can be redelivered once there is room; if the
|
|
76
|
-
* inbox is still full on the Nth redelivery, room is not coming and the cycle is pure cost. */
|
|
77
|
-
const OVERFLOW_REDELIVERY_LIMIT = 5;
|
|
78
|
-
/** Bound on the eviction bookkeeping itself, so tracking churn cannot become a leak of its own. */
|
|
79
|
-
const OVERFLOW_EVICTION_CAP = 4 * MAX_INBOX;
|
|
80
74
|
/** How many future-stamped recall ids one session will remember having handed over. See
|
|
81
75
|
* {@link MeshAgent.recallAheadRoom}. */
|
|
82
76
|
const MAX_AHEAD = 256;
|
|
@@ -199,9 +193,6 @@ export class MeshAgent extends EventEmitter {
|
|
|
199
193
|
* permanently degrades unknown ambient to pull-only for this session rather than risk a late
|
|
200
194
|
* live/durable copy changing from quiet to automatic. */
|
|
201
195
|
evictedClassifications = new Map();
|
|
202
|
-
/** How many times overflow has evicted each directed id without it ever being handled. Bounds the
|
|
203
|
-
* un-ack reprieve so a redelivery cycle cannot run forever — see the eviction path in `buffer`. */
|
|
204
|
-
overflowEvictions = new Map();
|
|
205
196
|
/** Surfaced to the host but not yet committed or abandoned, counted per holding frame because
|
|
206
197
|
* frames overlap. See {@link holdInFlight}. */
|
|
207
198
|
inFlightIds = new Map();
|
|
@@ -268,6 +259,11 @@ export class MeshAgent extends EventEmitter {
|
|
|
268
259
|
* answered yet (bounded). `pending` marks one a DM in flight is answering; `text` is the start of
|
|
269
260
|
* its body, to name it when a DM must say which one it answers. */
|
|
270
261
|
unanswered = new Map();
|
|
262
|
+
/** By sender id, least recently heard first: the display name of each peer that sent us a DM or
|
|
263
|
+
* anycast (bounded). The id is the authenticated sender (the broker forge-locks it on the
|
|
264
|
+
* subject), so a DM back to it is addressed to a real identity even when that sender has no
|
|
265
|
+
* roster row, as a one-shot `cotal send` never has. See {@link heldSender}. */
|
|
266
|
+
senders = new Map();
|
|
271
267
|
/** By `contextId`, the questions this seat asked inside a {@link withCorrelation} scope, and whom
|
|
272
268
|
* they went to (bounded). See {@link answersQuestion}. */
|
|
273
269
|
asked = new Map();
|
|
@@ -778,6 +774,12 @@ export class MeshAgent extends EventEmitter {
|
|
|
778
774
|
if (!meta)
|
|
779
775
|
throw new Error(`message ${m.id} delivered without MessageMeta — its class is unauthenticated`);
|
|
780
776
|
const item = this.toInboxItem(m, meta.kind, meta.historical);
|
|
777
|
+
if (item.kind === "dm" || item.kind === "anycast") {
|
|
778
|
+
this.senders.delete(item.fromId);
|
|
779
|
+
this.senders.set(item.fromId, item.fromName);
|
|
780
|
+
if (this.senders.size > MAX_CORRELATIONS)
|
|
781
|
+
this.senders.delete(this.senders.keys().next().value);
|
|
782
|
+
}
|
|
781
783
|
if ((item.kind === "dm" || item.kind === "anycast") && !item.historical && item.id !== "" && !this.answersQuestion(item)) {
|
|
782
784
|
// A DM back to this peer answers it (see dm()). An answer to our own question needs none.
|
|
783
785
|
this.unanswered.set(item.id, { fromId: item.fromId, contextId: item.contextId, text: item.text.slice(0, 80) });
|
|
@@ -864,8 +866,9 @@ export class MeshAgent extends EventEmitter {
|
|
|
864
866
|
pending.idless = { tally: this.focusIdless, ...idless };
|
|
865
867
|
this.inbox.push(pending);
|
|
866
868
|
if (this.inbox.length > MAX_INBOX) {
|
|
867
|
-
// Prefer sacrificing pull-only backlog so it cannot crowd out DMs/mentions. Overflow
|
|
868
|
-
//
|
|
869
|
+
// Prefer sacrificing pull-only backlog so it cannot crowd out DMs/mentions. Overflow is bounded
|
|
870
|
+
// local loss for channel traffic only: an evicted channel item is acked without being marked
|
|
871
|
+
// handled. An evicted directed item is never acked (below).
|
|
869
872
|
let excess = this.inbox.length - MAX_INBOX;
|
|
870
873
|
while (excess-- > 0) {
|
|
871
874
|
// Eviction order, weakest claim first. The tiers below `pullOnly` exist because `pullOnly`
|
|
@@ -903,42 +906,15 @@ export class MeshAgent extends EventEmitter {
|
|
|
903
906
|
// it once we have room, which turns unrecoverable loss into a delay. Channel ambient is still
|
|
904
907
|
// acked, because replaying it is what the history flood was (#775).
|
|
905
908
|
//
|
|
906
|
-
//
|
|
907
|
-
// back
|
|
908
|
-
//
|
|
909
|
-
//
|
|
910
|
-
//
|
|
911
|
-
//
|
|
912
|
-
//
|
|
913
|
-
//
|
|
914
|
-
|
|
915
|
-
// whenever the message is actually handled ({@link drainInboxDeliveries}), so one that
|
|
916
|
-
// eventually lands never accumulates toward the cap.
|
|
917
|
-
let giveUp = false;
|
|
918
|
-
if (sacrificingDirected) {
|
|
919
|
-
const seen = (this.overflowEvictions.get(evicted.item.recvKey) ?? 0) + 1;
|
|
920
|
-
if (seen >= OVERFLOW_REDELIVERY_LIMIT) {
|
|
921
|
-
giveUp = true;
|
|
922
|
-
this.overflowEvictions.delete(evicted.item.recvKey);
|
|
923
|
-
// Reported on stderr via the existing log path, NOT emit("error"): an EventEmitter with
|
|
924
|
-
// no "error" listener turns an emit into an unhandled exception that takes the process
|
|
925
|
-
// down, so announcing a dropped message would kill the seat that was trying to survive
|
|
926
|
-
// the flood. Nothing else in this class emits "error" either.
|
|
927
|
-
this.log(`overflow: dropping directed message ${evicted.item.recvKey} after ${seen} evictions - ` +
|
|
928
|
-
`the inbox has stayed full across every redelivery, so the reprieve is not helping`);
|
|
929
|
-
}
|
|
930
|
-
else {
|
|
931
|
-
this.overflowEvictions.set(evicted.item.recvKey, seen);
|
|
932
|
-
if (this.overflowEvictions.size > OVERFLOW_EVICTION_CAP) {
|
|
933
|
-
// Bounded bookkeeping: the map must not become its own leak under a sustained flood.
|
|
934
|
-
// Dropping the oldest entry only forgives a message, never destroys one.
|
|
935
|
-
const oldest = this.overflowEvictions.keys().next();
|
|
936
|
-
if (!oldest.done)
|
|
937
|
-
this.overflowEvictions.delete(oldest.value);
|
|
938
|
-
}
|
|
939
|
-
}
|
|
940
|
-
}
|
|
941
|
-
if (!this.inFlightIds.has(evicted.item.recvKey) && (!sacrificingDirected || giveUp))
|
|
909
|
+
// The broker paces that delay, so nothing here has to end it. An un-acked message comes
|
|
910
|
+
// back only after its durable's ack wait, so an inbox that stays full costs one redelivery
|
|
911
|
+
// per parked message per ack wait, and the message stays pending until a redelivery finds
|
|
912
|
+
// room: a DM on the recipient's own durable (`cotal deliver pending` counts it), a role
|
|
913
|
+
// request on its role's shared queue (which that command does not read). Giving up on
|
|
914
|
+
// it instead, as a per-id eviction count once did (#807), acked a message the sender had
|
|
915
|
+
// seen stored and the live recipient never read, with one stderr line as the only trace:
|
|
916
|
+
// a seat whose turn ran long lost its oldest DMs exactly that way (#2215).
|
|
917
|
+
if (!sacrificingDirected && !this.inFlightIds.has(evicted.item.recvKey))
|
|
942
918
|
evicted.ack();
|
|
943
919
|
}
|
|
944
920
|
}
|
|
@@ -1249,10 +1225,6 @@ export class MeshAgent extends EventEmitter {
|
|
|
1249
1225
|
this.markHandled(id, pullOnly.get(id) ?? false);
|
|
1250
1226
|
this.evictedClassifications.delete(id);
|
|
1251
1227
|
}
|
|
1252
|
-
// A message that actually landed is not churning, whatever it survived on the way here: clear
|
|
1253
|
-
// its overflow tally so one that is redelivered, evicted, then finally handled never carries
|
|
1254
|
-
// history toward the give-up cap. Keyed on the receive key, like the tally itself.
|
|
1255
|
-
this.overflowEvictions.delete(id);
|
|
1256
1228
|
}
|
|
1257
1229
|
return { items, missingKeys: requested.filter((key) => !present.has(key)) };
|
|
1258
1230
|
}
|
|
@@ -1708,19 +1680,44 @@ export class MeshAgent extends EventEmitter {
|
|
|
1708
1680
|
resolvePeer(target) {
|
|
1709
1681
|
return resolvePeerInRoster(this.ep.getRoster(), target, { selfId: this.id });
|
|
1710
1682
|
}
|
|
1683
|
+
/** #384: a peer that sent us a DM or anycast and has no roster row, by its exact id or, while the
|
|
1684
|
+
* presence view is current, by a display name only one such sender carried. A one-shot
|
|
1685
|
+
* `cotal send` never registers presence, so without this a reply to it could not be addressed. */
|
|
1686
|
+
heldSender(target, byName) {
|
|
1687
|
+
const name = this.senders.get(target);
|
|
1688
|
+
if (name !== undefined)
|
|
1689
|
+
return { id: target, name };
|
|
1690
|
+
if (!byName)
|
|
1691
|
+
return undefined;
|
|
1692
|
+
const want = target.trim().toLowerCase();
|
|
1693
|
+
// A sender rostered again under a new name has a row now, so its old name must not collide here.
|
|
1694
|
+
const rostered = new Set(this.ep.getRoster().map((p) => p.card.id));
|
|
1695
|
+
const matches = [...this.senders].filter(([id, n]) => !rostered.has(id) && n.toLowerCase() === want);
|
|
1696
|
+
if (matches.length > 1)
|
|
1697
|
+
throw new Error(`"${target}" is ambiguous - ${matches.length} senders with no roster row share that name; ` +
|
|
1698
|
+
`DM by instance id instead: ${matches.map(([id, n]) => `${n} (${id})`).join("; ")}`);
|
|
1699
|
+
return matches[0] && { id: matches[0][0], name: matches[0][1] };
|
|
1700
|
+
}
|
|
1711
1701
|
async dm(target, text, opts = {}) {
|
|
1712
1702
|
await this.requireConnected();
|
|
1703
|
+
// #384: a sender's exact id is as unambiguous as a roster id, so it is never read as a roster
|
|
1704
|
+
// display name; a peer that took that id as its name would otherwise receive the reply.
|
|
1705
|
+
const resolve = () => this.senders.has(target) ? this.ep.getRoster().find((p) => p.card.id === target) : this.resolvePeer(target);
|
|
1713
1706
|
// #1229: a miss is only a real "no peer" while the view is current. Under `unpopulated`
|
|
1714
1707
|
// the roster may be a reconnect refill in progress, so wait once for the snapshot and
|
|
1715
1708
|
// re-resolve; a still-unverifiable target refuses naming the observer's condition (never
|
|
1716
1709
|
// "no peer"), and the DM does not go out.
|
|
1717
1710
|
const view = this.ep.presenceView();
|
|
1718
|
-
let peer =
|
|
1711
|
+
let peer = resolve();
|
|
1719
1712
|
if (!peer && view.state === "unpopulated") {
|
|
1720
1713
|
await this.ep.waitForPresenceSnapshot();
|
|
1721
|
-
peer =
|
|
1714
|
+
peer = resolve();
|
|
1722
1715
|
}
|
|
1723
|
-
|
|
1716
|
+
// #384: a target with no roster row may still be a peer that messaged us (its id is
|
|
1717
|
+
// authenticated), which a one-shot `cotal send` always is. The DM goes to that identity and the
|
|
1718
|
+
// space's DM stream keeps it, instead of refusing a reply nothing could ever deliver.
|
|
1719
|
+
const held = peer ? undefined : this.heldSender(target, this.ep.presenceView().state === "current");
|
|
1720
|
+
if (!peer && !held) {
|
|
1724
1721
|
const after = this.ep.presenceView();
|
|
1725
1722
|
if (after.state === "current")
|
|
1726
1723
|
throw new Error(`no peer "${target}" in space "${this.config.space}"`);
|
|
@@ -1731,21 +1728,22 @@ export class MeshAgent extends EventEmitter {
|
|
|
1731
1728
|
}
|
|
1732
1729
|
// The only status we can truthfully attribute is the roster snapshot taken right before the
|
|
1733
1730
|
// publish: recipient state can change the instant after, and the ack never tells us either way.
|
|
1734
|
-
const recipientStatusAtSend = peer.status;
|
|
1731
|
+
const recipientStatusAtSend = peer ? peer.status : "unrostered";
|
|
1732
|
+
const recipient = peer ? { id: peer.card.id, name: peer.card.name } : held;
|
|
1735
1733
|
// A DM back to a peer answers the message `replyTo` names, or the oldest one it sent us that no
|
|
1736
1734
|
// DM has answered yet (see answering()). It counts as answered only once the DM is published,
|
|
1737
1735
|
// so a failed send leaves it to the retry.
|
|
1738
|
-
const answered = this.answering(
|
|
1736
|
+
const answered = this.answering(recipient.id, opts.replyTo?.trim() || undefined);
|
|
1739
1737
|
const entry = answered && this.unanswered.get(answered.id);
|
|
1740
1738
|
const { stamp, own } = this.stamp(answered);
|
|
1741
|
-
this.recordQuestion(own, { peerId:
|
|
1739
|
+
this.recordQuestion(own, { peerId: recipient.id });
|
|
1742
1740
|
if (entry)
|
|
1743
1741
|
entry.pending = true;
|
|
1744
1742
|
try {
|
|
1745
|
-
const { msg, ack } = await this.ep.unicastAttributed(
|
|
1743
|
+
const { msg, ack } = await this.ep.unicastAttributed(recipient.id, text, stamp);
|
|
1746
1744
|
if (answered)
|
|
1747
1745
|
this.unanswered.delete(answered.id);
|
|
1748
|
-
return { msg, peer, ack, recipientStatusAtSend };
|
|
1746
|
+
return { msg, peer, recipient, ack, recipientStatusAtSend };
|
|
1749
1747
|
}
|
|
1750
1748
|
finally {
|
|
1751
1749
|
if (entry)
|