@cello-protocol/daemon 0.0.196 → 0.0.198
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-admin-handlers.d.ts +56 -0
- package/dist/agent-admin-handlers.d.ts.map +1 -0
- package/dist/agent-admin-handlers.js +70 -0
- package/dist/agent-admin-handlers.js.map +1 -0
- package/dist/agent-handlers.d.ts +8 -7
- package/dist/agent-handlers.d.ts.map +1 -1
- package/dist/agent-handlers.js.map +1 -1
- package/dist/agent-selection-root.d.ts +29 -0
- package/dist/agent-selection-root.d.ts.map +1 -0
- package/dist/agent-selection-root.js +126 -0
- package/dist/agent-selection-root.js.map +1 -0
- package/dist/attendance-wiring.d.ts +44 -0
- package/dist/attendance-wiring.d.ts.map +1 -0
- package/dist/attendance-wiring.js +432 -0
- package/dist/attendance-wiring.js.map +1 -0
- package/dist/backup-restore-handlers.d.ts +10 -0
- package/dist/backup-restore-handlers.d.ts.map +1 -0
- package/dist/backup-restore-handlers.js +82 -0
- package/dist/backup-restore-handlers.js.map +1 -0
- package/dist/boot-agents.d.ts +64 -0
- package/dist/boot-agents.d.ts.map +1 -0
- package/dist/boot-agents.js +241 -0
- package/dist/boot-agents.js.map +1 -0
- package/dist/boot-connection-state.d.ts +40 -0
- package/dist/boot-connection-state.d.ts.map +1 -0
- package/dist/boot-connection-state.js +136 -0
- package/dist/boot-connection-state.js.map +1 -0
- package/dist/boot-core.d.ts +36 -0
- package/dist/boot-core.d.ts.map +1 -0
- package/dist/boot-core.js +292 -0
- package/dist/boot-core.js.map +1 -0
- package/dist/boot-parked-content.d.ts +34 -0
- package/dist/boot-parked-content.d.ts.map +1 -0
- package/dist/boot-parked-content.js +527 -0
- package/dist/boot-parked-content.js.map +1 -0
- package/dist/boot-sweeps.d.ts +22 -0
- package/dist/boot-sweeps.d.ts.map +1 -0
- package/dist/boot-sweeps.js +50 -0
- package/dist/boot-sweeps.js.map +1 -0
- package/dist/connection-agents.d.ts +16 -0
- package/dist/connection-agents.d.ts.map +1 -0
- package/dist/connection-agents.js +68 -0
- package/dist/connection-agents.js.map +1 -0
- package/dist/content-park.d.ts.map +1 -1
- package/dist/content-park.js +274 -25
- package/dist/content-park.js.map +1 -1
- package/dist/daemon-handle.d.ts +57 -0
- package/dist/daemon-handle.d.ts.map +1 -0
- package/dist/daemon-handle.js +2 -0
- package/dist/daemon-handle.js.map +1 -0
- package/dist/daemon-status-report.d.ts +40 -0
- package/dist/daemon-status-report.d.ts.map +1 -0
- package/dist/daemon-status-report.js +78 -0
- package/dist/daemon-status-report.js.map +1 -0
- package/dist/daemon.d.ts +5 -66
- package/dist/daemon.d.ts.map +1 -1
- package/dist/daemon.js +332 -4894
- package/dist/daemon.js.map +1 -1
- package/dist/delivery-open-registry.d.ts +1 -1
- package/dist/delivery-open-registry.js +1 -1
- package/dist/directory-connect.d.ts +27 -0
- package/dist/directory-connect.d.ts.map +1 -0
- package/dist/directory-connect.js +98 -0
- package/dist/directory-connect.js.map +1 -0
- package/dist/disconnect-cleanup.d.ts +45 -0
- package/dist/disconnect-cleanup.d.ts.map +1 -0
- package/dist/disconnect-cleanup.js +65 -0
- package/dist/disconnect-cleanup.js.map +1 -0
- package/dist/document-surface.d.ts +32 -0
- package/dist/document-surface.d.ts.map +1 -0
- package/dist/document-surface.js +150 -0
- package/dist/document-surface.js.map +1 -0
- package/dist/document-wiring.d.ts +53 -0
- package/dist/document-wiring.d.ts.map +1 -0
- package/dist/document-wiring.js +323 -0
- package/dist/document-wiring.js.map +1 -0
- package/dist/held-content.d.ts +7 -3
- package/dist/held-content.d.ts.map +1 -1
- package/dist/held-content.js.map +1 -1
- package/dist/inbound-sessions.d.ts +9 -1
- package/dist/inbound-sessions.d.ts.map +1 -1
- package/dist/inbound-sessions.js +9 -1
- package/dist/inbound-sessions.js.map +1 -1
- package/dist/index.d.ts +1 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -2
- package/dist/index.js.map +1 -1
- package/dist/ipc-surface.d.ts +44 -0
- package/dist/ipc-surface.d.ts.map +1 -0
- package/dist/ipc-surface.js +106 -0
- package/dist/ipc-surface.js.map +1 -0
- package/dist/network-directory-node.d.ts +0 -18
- package/dist/network-directory-node.d.ts.map +1 -1
- package/dist/network-directory-node.js +1 -38
- package/dist/network-directory-node.js.map +1 -1
- package/dist/notification-handlers.d.ts.map +1 -1
- package/dist/notification-handlers.js +2 -0
- package/dist/notification-handlers.js.map +1 -1
- package/dist/operator-guidance.d.ts +25 -0
- package/dist/operator-guidance.d.ts.map +1 -0
- package/dist/operator-guidance.js +50 -0
- package/dist/operator-guidance.js.map +1 -0
- package/dist/park-recovery.d.ts +22 -1
- package/dist/park-recovery.d.ts.map +1 -1
- package/dist/park-recovery.js.map +1 -1
- package/dist/park-refusals.d.ts +147 -0
- package/dist/park-refusals.d.ts.map +1 -0
- package/dist/park-refusals.js +331 -0
- package/dist/park-refusals.js.map +1 -0
- package/dist/refusal-notices.d.ts.map +1 -1
- package/dist/refusal-notices.js +22 -2
- package/dist/refusal-notices.js.map +1 -1
- package/dist/refusal-reasons.d.ts +13 -0
- package/dist/refusal-reasons.d.ts.map +1 -1
- package/dist/refusal-reasons.js +19 -0
- package/dist/refusal-reasons.js.map +1 -1
- package/dist/register-handler.d.ts +8 -7
- package/dist/register-handler.d.ts.map +1 -1
- package/dist/register-handler.js.map +1 -1
- package/dist/session-content-context.d.ts +144 -0
- package/dist/session-content-context.d.ts.map +1 -0
- package/dist/session-content-context.js +2 -0
- package/dist/session-content-context.js.map +1 -0
- package/dist/session-content-handlers.d.ts.map +1 -1
- package/dist/session-content-handlers.js +2 -0
- package/dist/session-content-handlers.js.map +1 -1
- package/dist/session-content-ingest.d.ts +209 -0
- package/dist/session-content-ingest.d.ts.map +1 -0
- package/dist/session-content-ingest.js +2216 -0
- package/dist/session-content-ingest.js.map +1 -0
- package/dist/session-content-send.d.ts +184 -0
- package/dist/session-content-send.d.ts.map +1 -0
- package/dist/session-content-send.js +1300 -0
- package/dist/session-content-send.js.map +1 -0
- package/dist/session-lifecycle.d.ts +303 -0
- package/dist/session-lifecycle.d.ts.map +1 -0
- package/dist/session-lifecycle.js +1643 -0
- package/dist/session-lifecycle.js.map +1 -0
- package/dist/session-node-factory.d.ts +18 -0
- package/dist/session-node-factory.d.ts.map +1 -0
- package/dist/session-node-factory.js +182 -0
- package/dist/session-node-factory.js.map +1 -0
- package/dist/session-node-manager.d.ts +68 -766
- package/dist/session-node-manager.d.ts.map +1 -1
- package/dist/session-node-manager.js +966 -7940
- package/dist/session-node-manager.js.map +1 -1
- package/dist/session-node-types.d.ts +30 -0
- package/dist/session-node-types.d.ts.map +1 -1
- package/dist/session-node-types.js.map +1 -1
- package/dist/session-notify.d.ts +46 -0
- package/dist/session-notify.d.ts.map +1 -0
- package/dist/session-notify.js +115 -0
- package/dist/session-notify.js.map +1 -0
- package/dist/session-read-handlers.d.ts.map +1 -1
- package/dist/session-read-handlers.js +0 -1
- package/dist/session-read-handlers.js.map +1 -1
- package/dist/session-relay.d.ts +361 -0
- package/dist/session-relay.d.ts.map +1 -0
- package/dist/session-relay.js +1471 -0
- package/dist/session-relay.js.map +1 -0
- package/dist/session-salt-agreement.d.ts +0 -7
- package/dist/session-salt-agreement.d.ts.map +1 -1
- package/dist/session-salt-agreement.js +0 -7
- package/dist/session-salt-agreement.js.map +1 -1
- package/dist/session-salts.d.ts +13 -0
- package/dist/session-salts.d.ts.map +1 -1
- package/dist/session-salts.js +13 -0
- package/dist/session-salts.js.map +1 -1
- package/dist/session-seal.d.ts +336 -0
- package/dist/session-seal.d.ts.map +1 -0
- package/dist/session-seal.js +948 -0
- package/dist/session-seal.js.map +1 -0
- package/dist/session-views.d.ts +46 -0
- package/dist/session-views.d.ts.map +1 -0
- package/dist/session-views.js +197 -0
- package/dist/session-views.js.map +1 -0
- package/dist/signal-handlers.d.ts +66 -0
- package/dist/signal-handlers.d.ts.map +1 -0
- package/dist/signal-handlers.js +975 -0
- package/dist/signal-handlers.js.map +1 -0
- package/dist/signaling-wiring.d.ts +100 -0
- package/dist/signaling-wiring.d.ts.map +1 -0
- package/dist/signaling-wiring.js +392 -0
- package/dist/signaling-wiring.js.map +1 -0
- package/dist/start-agent.d.ts +64 -0
- package/dist/start-agent.d.ts.map +1 -0
- package/dist/start-agent.js +136 -0
- package/dist/start-agent.js.map +1 -0
- package/dist/status-handler.d.ts +46 -0
- package/dist/status-handler.d.ts.map +1 -0
- package/dist/status-handler.js +58 -0
- package/dist/status-handler.js.map +1 -0
- package/dist/test-handlers.d.ts +62 -0
- package/dist/test-handlers.d.ts.map +1 -0
- package/dist/test-handlers.js +239 -0
- package/dist/test-handlers.js.map +1 -0
- package/dist/types.d.ts +0 -11
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +0 -12
- package/dist/types.js.map +1 -1
- package/dist/unresolved-nodes-report.d.ts +14 -0
- package/dist/unresolved-nodes-report.d.ts.map +1 -0
- package/dist/unresolved-nodes-report.js +96 -0
- package/dist/unresolved-nodes-report.js.map +1 -0
- package/dist/who-resolver.d.ts +15 -0
- package/dist/who-resolver.d.ts.map +1 -0
- package/dist/who-resolver.js +46 -0
- package/dist/who-resolver.js.map +1 -0
- package/dist/wire-content-hash.d.ts +0 -2
- package/dist/wire-content-hash.d.ts.map +1 -1
- package/dist/wire-content-hash.js +0 -4
- package/dist/wire-content-hash.js.map +1 -1
- package/package.json +5 -5
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Two verbs an operator runs ON an agent rather than through it: rotate its signing shares, and read
|
|
3
|
+
* the relay's ordering receipts for it. Both resolve an agent by name and then reach the consortium
|
|
4
|
+
* on that agent's own signaling connection, which is why they share a module.
|
|
5
|
+
*
|
|
6
|
+
* ⚠️ THE WORK ORDER PUT FOUR VERBS AND `cello_status` IN THIS UNIT. They are three modules, and the
|
|
7
|
+
* split is a measurement rather than taste. Counting every member of each shipped interface,
|
|
8
|
+
* `handlers` and `logger` included: one module for all of it needs **22**. Split by what each
|
|
9
|
+
* surface touches — **12** here, **10** for `cello_status`, **3** for backup/restore, overlapping on
|
|
10
|
+
* `handlers` and `logger` alone. 22 is the shape the order calls "the root with an extra hop".
|
|
11
|
+
*
|
|
12
|
+
* ⚠️ AND THIS MODULE IS AT THE BOUND, NOT UNDER IT. Twelve is exactly the order's ~12 ceiling. A
|
|
13
|
+
* first draft of this note said eleven, which reads like room to spare; unit 7 calibrates against
|
|
14
|
+
* these numbers, so the real one is written here. Anything else that wants to live in this file
|
|
15
|
+
* needs a member it does not already have — which means it does not live in this file.
|
|
16
|
+
*/
|
|
17
|
+
import type { IpcHandler } from "./ipc-server.js";
|
|
18
|
+
import type { SessionNodeManager } from "./session-node-manager.js";
|
|
19
|
+
import type { Logger } from "./types.js";
|
|
20
|
+
import type { KeyProvider } from "@cello-protocol/crypto";
|
|
21
|
+
import type { SignalingManager } from "@cello-protocol/transport";
|
|
22
|
+
import type { LoadedAgent } from "./agent-loader.js";
|
|
23
|
+
import type { SealFailureStore } from "./seal-failure-store.js";
|
|
24
|
+
import { runAgentRefresh } from "./session-ceremony.js";
|
|
25
|
+
/** `runAgentRefresh`'s own parameter object — the source of truth for the types below, never a copy. */
|
|
26
|
+
type RefreshArgs = Parameters<typeof runAgentRefresh>[0];
|
|
27
|
+
/** The per-connection agent selection, as these verbs need to read it. */
|
|
28
|
+
export interface AdminConnState {
|
|
29
|
+
currentAgent: string | null;
|
|
30
|
+
clearedAgent?: string;
|
|
31
|
+
}
|
|
32
|
+
export interface AgentAdminDeps {
|
|
33
|
+
handlers: Map<string, IpcHandler>;
|
|
34
|
+
logger: Logger;
|
|
35
|
+
sessionNodeManager: SessionNodeManager;
|
|
36
|
+
/** Every agent this daemon has loaded — both verbs resolve a name through it. */
|
|
37
|
+
loadedAgents: ReadonlyArray<LoadedAgent>;
|
|
38
|
+
/** Read this connection's agent selection. The READ, not the container. */
|
|
39
|
+
getConnState: (connectionId: string) => AdminConnState | undefined;
|
|
40
|
+
/** The daemon's single agent-selection rule. Injected, never re-implemented here. */
|
|
41
|
+
resolveCurrentAgent: (connState: AdminConnState | undefined, explicitAgent?: string) => string | null;
|
|
42
|
+
getPersistence: (agentName: string) => RefreshArgs["persistence"];
|
|
43
|
+
/** ⚠️ NOT a getter — for an agent with no manager this CONSTRUCTS one and dials. */
|
|
44
|
+
getAgentSignaling: (agentName: string, agentKeyProvider: KeyProvider, agentPubkeyHex: string) => {
|
|
45
|
+
signaling: SignalingManager;
|
|
46
|
+
getNode: RefreshArgs["getNode"];
|
|
47
|
+
};
|
|
48
|
+
waitForSignalingConnected: (mgr: SignalingManager, timeoutMs: number) => Promise<boolean>;
|
|
49
|
+
resolveConsortiumRoster: RefreshArgs["getConsortiumEndpoints"];
|
|
50
|
+
getFailoverEndpoint: RefreshArgs["getDirectoryEndpoint"];
|
|
51
|
+
/** Where a dead seal ceremony leaves its mark, so a receipt can say it FAILED and why. */
|
|
52
|
+
sealFailures: SealFailureStore;
|
|
53
|
+
}
|
|
54
|
+
export declare function registerAgentAdminHandlers(deps: AgentAdminDeps): void;
|
|
55
|
+
export {};
|
|
56
|
+
//# sourceMappingURL=agent-admin-handlers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-admin-handlers.d.ts","sourceRoot":"","sources":["../src/agent-admin-handlers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAExD,wGAAwG;AACxG,KAAK,WAAW,GAAG,UAAU,CAAC,OAAO,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC;AAEzD,0EAA0E;AAC1E,MAAM,WAAW,cAAc;IAAG,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,YAAY,CAAC,EAAE,MAAM,CAAC;CAAE;AAEvF,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IAClC,MAAM,EAAE,MAAM,CAAC;IACf,kBAAkB,EAAE,kBAAkB,CAAC;IACvC,iFAAiF;IACjF,YAAY,EAAE,aAAa,CAAC,WAAW,CAAC,CAAC;IACzC,2EAA2E;IAC3E,YAAY,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,cAAc,GAAG,SAAS,CAAC;IACnE,qFAAqF;IACrF,mBAAmB,EAAE,CAAC,SAAS,EAAE,cAAc,GAAG,SAAS,EAAE,aAAa,CAAC,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,CAAC;IACtG,cAAc,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,WAAW,CAAC,aAAa,CAAC,CAAC;IAClE,oFAAoF;IACpF,iBAAiB,EAAE,CACjB,SAAS,EAAE,MAAM,EACjB,gBAAgB,EAAE,WAAW,EAC7B,cAAc,EAAE,MAAM,KACnB;QAAE,SAAS,EAAE,gBAAgB,CAAC;QAAC,OAAO,EAAE,WAAW,CAAC,SAAS,CAAC,CAAA;KAAE,CAAC;IACtE,yBAAyB,EAAE,CAAC,GAAG,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IAC1F,uBAAuB,EAAE,WAAW,CAAC,wBAAwB,CAAC,CAAC;IAC/D,mBAAmB,EAAE,WAAW,CAAC,sBAAsB,CAAC,CAAC;IACzD,0FAA0F;IAC1F,YAAY,EAAE,gBAAgB,CAAC;CAChC;AAED,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,cAAc,GAAG,IAAI,CA0ErE"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import { runAgentRefresh } from "./session-ceremony.js";
|
|
2
|
+
export function registerAgentAdminHandlers(deps) {
|
|
3
|
+
const { handlers, logger, sessionNodeManager, loadedAgents, getConnState, resolveCurrentAgent, getPersistence, getAgentSignaling, waitForSignalingConnected, resolveConsortiumRoster, getFailoverEndpoint, sealFailures, } = deps;
|
|
4
|
+
// ─── M8B DOD-REFRESH-1: cello_refresh_shares — proactive share refresh / epoch rollover ───
|
|
5
|
+
handlers.set("cello_refresh_shares", async (params, connectionId) => {
|
|
6
|
+
const connState = getConnState(connectionId);
|
|
7
|
+
const agentName = resolveCurrentAgent(connState, params?.agent); // M8C-AUTOSTART-1 F18: sole-online fallback
|
|
8
|
+
if (!agentName) {
|
|
9
|
+
// Not an MCP tool — the CLI is the only real caller, and its gesture is the POSITIONAL
|
|
10
|
+
// `cello refresh <name>`, not a JSON param. The old text said "pass { name }", which stopped
|
|
11
|
+
// working at the rename and never worked on this surface anyway. cello_use_agent stays: it is
|
|
12
|
+
// the other real remedy, and renderForSurface rewrites it to `cello use-agent` for a CLI caller.
|
|
13
|
+
return { ok: false, reason: "no_current_agent", guidance: "Name the agent: cello refresh <name>. Or select one for this connection with cello_use_agent." };
|
|
14
|
+
}
|
|
15
|
+
const loaded = loadedAgents.find((a) => a.name === agentName);
|
|
16
|
+
if (!loaded) {
|
|
17
|
+
return { ok: false, reason: "agent_not_found", guidance: `No agent named '${agentName}'. Create + register it first.` };
|
|
18
|
+
}
|
|
19
|
+
// The refresh ceremony reaches the consortium over the agent's signaling node — ensure it is up.
|
|
20
|
+
const entry = getAgentSignaling(agentName, loaded.keyProvider, loaded.pubkey);
|
|
21
|
+
const connected = await waitForSignalingConnected(entry.signaling, 15_000);
|
|
22
|
+
if (!connected) {
|
|
23
|
+
return { ok: false, reason: "directory_unreachable", guidance: "The agent's directory signaling is not connected; start the agent and retry." };
|
|
24
|
+
}
|
|
25
|
+
const result = await runAgentRefresh({
|
|
26
|
+
agentName,
|
|
27
|
+
persistence: getPersistence(agentName),
|
|
28
|
+
agentPubkeyHex: loaded.pubkey,
|
|
29
|
+
// DOD-M15-SEALWIRE-1 bullet 2 (review F1): gate the co-signature on the root check.
|
|
30
|
+
verifyCertifiedRoot: (pub, sid, root, leaves) => sessionNodeManager.verifyCertifiedRoot(pub, sid, root, leaves),
|
|
31
|
+
keyProvider: loaded.keyProvider,
|
|
32
|
+
getNode: entry.getNode,
|
|
33
|
+
getDirectoryEndpoint: getFailoverEndpoint,
|
|
34
|
+
getConsortiumEndpoints: resolveConsortiumRoster,
|
|
35
|
+
signaling: entry.signaling,
|
|
36
|
+
logger,
|
|
37
|
+
// DOD-M15-SEALPARTIES-1: where a dead seal ceremony leaves its mark, so `cello_sealed_receipt`
|
|
38
|
+
// can say it FAILED and why instead of falling through to "no receipt yet".
|
|
39
|
+
recordSealFailure: (name, sid, reason) => sealFailures.record(name, sid, reason, new Date().toISOString(), "unresolved"),
|
|
40
|
+
});
|
|
41
|
+
if (!result.ok) {
|
|
42
|
+
return { ok: false, reason: result.reason, guidance: "Share refresh did not complete — see the daemon log (refresh.ceremony.*) for the cause." };
|
|
43
|
+
}
|
|
44
|
+
return { ok: true, epoch: result.toEpochN, primary_pubkey: result.primaryPubkey, verifying_shares_digest: result.verifyingSharesDigest };
|
|
45
|
+
});
|
|
46
|
+
// ─── M8B DOD-RELAYSIG-1: cello_get_relay_receipts — the agent's stored relay ordering receipts ───
|
|
47
|
+
handlers.set("cello_get_relay_receipts", async (params, connectionId) => {
|
|
48
|
+
const connState = getConnState(connectionId);
|
|
49
|
+
const agentName = resolveCurrentAgent(connState, params?.agent); // M8C-AUTOSTART-1 F18: sole-online fallback
|
|
50
|
+
if (!agentName) {
|
|
51
|
+
// Not an MCP tool either — same reasoning as cello_refresh_shares above.
|
|
52
|
+
return { ok: false, reason: "no_current_agent", guidance: "Name the agent: cello relay-receipts <name>. Or select one for this connection with cello_use_agent." };
|
|
53
|
+
}
|
|
54
|
+
const loaded = loadedAgents.find((a) => a.name === agentName);
|
|
55
|
+
if (!loaded) {
|
|
56
|
+
return { ok: false, reason: "agent_not_found", guidance: `No agent named '${agentName}'.` };
|
|
57
|
+
}
|
|
58
|
+
const sessionIdHex = typeof params?.session_id === "string" ? params.session_id : undefined;
|
|
59
|
+
const receipts = sessionNodeManager.getRelayReceipts(loaded.pubkey, sessionIdHex).map((r) => ({
|
|
60
|
+
hash_hex: r.hashHex,
|
|
61
|
+
session_id: r.sessionIdHex,
|
|
62
|
+
relay_id: r.relayId,
|
|
63
|
+
sequence_number: r.sequenceNumber,
|
|
64
|
+
timestamp: r.timestamp,
|
|
65
|
+
signature_hex: r.signatureHex,
|
|
66
|
+
}));
|
|
67
|
+
return { ok: true, receipts };
|
|
68
|
+
});
|
|
69
|
+
}
|
|
70
|
+
//# sourceMappingURL=agent-admin-handlers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-admin-handlers.js","sourceRoot":"","sources":["../src/agent-admin-handlers.ts"],"names":[],"mappings":"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"}
|
package/dist/agent-handlers.d.ts
CHANGED
|
@@ -11,6 +11,7 @@
|
|
|
11
11
|
* "the only agent online" — that is how a write lands on the wrong agent (fixed in f00b534, and
|
|
12
12
|
* the reason resolveCurrentAgent distinguishes "never chose" from "choice taken away").
|
|
13
13
|
*/
|
|
14
|
+
import type { StartAgentResult } from "./start-agent.js";
|
|
14
15
|
import type { IpcHandler } from "./ipc-server.js";
|
|
15
16
|
import type { SessionNodeManager } from "./session-node-manager.js";
|
|
16
17
|
import type { AgentInfo, Logger } from "./types.js";
|
|
@@ -37,13 +38,13 @@ export interface AgentHandlerDeps {
|
|
|
37
38
|
clientType: string;
|
|
38
39
|
}>;
|
|
39
40
|
getAgentsForConnection: (connectionId: string) => AgentInfo[];
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
41
|
+
/**
|
|
42
|
+
* ⚠️ THE THREE-WAY UNION, NOT `{ ok: true }`. The readiness half is the point: an agent can be
|
|
43
|
+
* online and DEAF — marked started while its standing receiver never came up — and the two states
|
|
44
|
+
* render identically at every surface without it. Declared narrow, dropping it is invisible to the
|
|
45
|
+
* type checker.
|
|
46
|
+
*/
|
|
47
|
+
startAgentInternal: (name: string) => StartAgentResult;
|
|
47
48
|
dropAgentSignaling: (agentName: string) => Promise<void>;
|
|
48
49
|
awayAckSent: Set<string>;
|
|
49
50
|
keyProviders: Map<string, KeyProvider>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-handlers.d.ts","sourceRoot":"","sources":["../src/agent-handlers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AACpD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AAG3E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,KAAK,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAM7E,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IAClC,MAAM,EAAE,MAAM,CAAC;IACf,kBAAkB,EAAE,kBAAkB,CAAC;IACvC,MAAM,EAAE,SAAS,EAAE,CAAC;IACpB,YAAY,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC1B,gGAAgG;IAChG,uBAAuB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACrC;uFACmF;IACnF,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;IACxD,YAAY,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,SAAS,GAAG,SAAS,CAAC;IAC9D,kBAAkB,EAAE,GAAG,CAAC,MAAM,EAAE;QAAE,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,YAAY,CAAC,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC5G,sBAAsB,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,SAAS,EAAE,CAAC;IAC9D,kBAAkB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK
|
|
1
|
+
{"version":3,"file":"agent-handlers.d.ts","sourceRoot":"","sources":["../src/agent-handlers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AACpD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AAG3E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,KAAK,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAM7E,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IAClC,MAAM,EAAE,MAAM,CAAC;IACf,kBAAkB,EAAE,kBAAkB,CAAC;IACvC,MAAM,EAAE,SAAS,EAAE,CAAC;IACpB,YAAY,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC1B,gGAAgG;IAChG,uBAAuB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACrC;uFACmF;IACnF,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;IACxD,YAAY,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,SAAS,GAAG,SAAS,CAAC;IAC9D,kBAAkB,EAAE,GAAG,CAAC,MAAM,EAAE;QAAE,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,YAAY,CAAC,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC5G,sBAAsB,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,SAAS,EAAE,CAAC;IAC9D;;;;;OAKG;IACH,kBAAkB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,gBAAgB,CAAC;IACvD,kBAAkB,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACzD,WAAW,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACzB,YAAY,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IACvC,YAAY,EAAE,WAAW,EAAE,CAAC;IAC5B,iBAAiB,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,KAAK;QAAE,SAAS,EAAE,gBAAgB,CAAC;QAAC,OAAO,EAAE,MAAM,SAAS,GAAG,IAAI,CAAA;KAAE,CAAC;IACxJ,yBAAyB,EAAE,CAAC,GAAG,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IAC1F,iBAAiB,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACzC;AAED,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,gBAAgB,GAAG,IAAI,CAyiBlE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-handlers.js","sourceRoot":"","sources":["../src/agent-handlers.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"agent-handlers.js","sourceRoot":"","sources":["../src/agent-handlers.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Which agent a call is FOR, and how a caller learns it fell back.
|
|
3
|
+
*
|
|
4
|
+
* One rule, in one place, because the alternative has already happened: several handlers each
|
|
5
|
+
* deciding what "the current agent" means is how a call lands on an agent the operator did not
|
|
6
|
+
* choose. The fallback notice rides an AsyncLocalStorage so an answer can carry WHY it fell back
|
|
7
|
+
* without every caller having to thread it through.
|
|
8
|
+
*
|
|
9
|
+
* The registration guidance stayed in the root: it is written between this block and the agent
|
|
10
|
+
* lifecycle handlers, and moving it would have meant moving the handler registration with it.
|
|
11
|
+
*/
|
|
12
|
+
import { AsyncLocalStorage } from "node:async_hooks";
|
|
13
|
+
import type { Logger } from "./types.js";
|
|
14
|
+
export interface AgentSelectionDeps {
|
|
15
|
+
logger: Logger;
|
|
16
|
+
/** The live set — a copy would freeze at boot and the single-online-agent fallback would never fire. */
|
|
17
|
+
onlineAgents: ReadonlySet<string>;
|
|
18
|
+
}
|
|
19
|
+
export declare function createAgentSelection(deps: AgentSelectionDeps): {
|
|
20
|
+
fallbackNoticeStore: AsyncLocalStorage<{
|
|
21
|
+
notice?: Record<string, unknown>;
|
|
22
|
+
}>;
|
|
23
|
+
resolveCurrentAgent: (connState: {
|
|
24
|
+
currentAgent: string | null;
|
|
25
|
+
clearedAgent?: string;
|
|
26
|
+
clientType?: string;
|
|
27
|
+
} | undefined, explicitAgent?: string) => string | null;
|
|
28
|
+
};
|
|
29
|
+
//# sourceMappingURL=agent-selection-root.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-selection-root.d.ts","sourceRoot":"","sources":["../src/agent-selection-root.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAErD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAEzC,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,MAAM,CAAC;IACf,wGAAwG;IACxG,YAAY,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;CACnC;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,kBAAkB;;iBAwDE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;;qCAGvE;QAAE,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,YAAY,CAAC,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,SAAS,kBAClF,MAAM,KACrB,MAAM,GAAG,IAAI;EA0DjB"}
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Which agent a call is FOR, and how a caller learns it fell back.
|
|
3
|
+
*
|
|
4
|
+
* One rule, in one place, because the alternative has already happened: several handlers each
|
|
5
|
+
* deciding what "the current agent" means is how a call lands on an agent the operator did not
|
|
6
|
+
* choose. The fallback notice rides an AsyncLocalStorage so an answer can carry WHY it fell back
|
|
7
|
+
* without every caller having to thread it through.
|
|
8
|
+
*
|
|
9
|
+
* The registration guidance stayed in the root: it is written between this block and the agent
|
|
10
|
+
* lifecycle handlers, and moving it would have meant moving the handler registration with it.
|
|
11
|
+
*/
|
|
12
|
+
import { AsyncLocalStorage } from "node:async_hooks";
|
|
13
|
+
import { resolveCurrentAgentFor } from "./agent-selection.js";
|
|
14
|
+
export function createAgentSelection(deps) {
|
|
15
|
+
const { logger, onlineAgents } = deps;
|
|
16
|
+
// M8C-AUTOSTART-1 (F18): resolve which agent an agent-defaulting tool should act on for this
|
|
17
|
+
// connection: an explicit { agent } wins; else the connection's current agent; else — when EXACTLY one
|
|
18
|
+
// agent is online daemon-wide — that sole agent (removes the "why did it forget my agent" moment
|
|
19
|
+
// after a /mcp reconnect). Two-or-more online with none selected stays ambiguous → null (the
|
|
20
|
+
// caller returns no_current_agent), because guessing between peers would misroute.
|
|
21
|
+
/**
|
|
22
|
+
* Which agent does this call act as?
|
|
23
|
+
*
|
|
24
|
+
* An explicit { agent } wins, then this connection's selection. Only with NEITHER does the daemon fall back
|
|
25
|
+
* to the sole online agent — a convenience for a caller that never chose, where "the online one"
|
|
26
|
+
* cannot mean anyone else.
|
|
27
|
+
*
|
|
28
|
+
* The fallback is REFUSED for a connection whose selection was taken away (`clearedAgent`): it
|
|
29
|
+
* chose an agent, that agent was stopped or retired, and the choice is gone. Falling back there
|
|
30
|
+
* silently re-targets the next call at whoever else happens to be online — the caller asked for
|
|
31
|
+
* alice, alice was stopped, and the work lands on bob reporting success. A lost intent is not the
|
|
32
|
+
* same as no intent, and it must fail loud (no_current_agent) rather than be guessed at.
|
|
33
|
+
*/
|
|
34
|
+
/**
|
|
35
|
+
* Which agent this call acts as — `DOD-M15-SELECTION-1`, logic in `agent-selection.ts`.
|
|
36
|
+
*
|
|
37
|
+
* It used to end with `if (onlineAgents.size === 1) return [...onlineAgents][0]`, so a connection
|
|
38
|
+
* that had selected nothing acted as whichever agent happened to be the only one online. On a
|
|
39
|
+
* shared daemon that can be a DIFFERENT operator's agent, and a live MCP session was being bound
|
|
40
|
+
* to an identity it never asked for.
|
|
41
|
+
*
|
|
42
|
+
* The resolution is now attributable: every path reports how it was reached, and `fallback` — the
|
|
43
|
+
* one that was invisible — is logged at INFO. `DOD-M15-IPCVISIBLE-1`.
|
|
44
|
+
*/
|
|
45
|
+
/**
|
|
46
|
+
* The fallback notice owed to THIS REQUEST's response — `DOD-M15-SELECTION-1` clause 2.
|
|
47
|
+
*
|
|
48
|
+
* ─── Why an AsyncLocalStorage and not a per-connection map ─────────────────────────────────────
|
|
49
|
+
*
|
|
50
|
+
* The first cut keyed a `WeakMap` on the per-connection state object, so the notice belonged to
|
|
51
|
+
* the CONNECTION and was read back at the response boundary. Review found that hands the notice to
|
|
52
|
+
* whichever response finishes first, and Claude Code issues tool calls in parallel:
|
|
53
|
+
*
|
|
54
|
+
* 1. the agent calls `cello_receive` — nothing selected, so the fallback resolves and records
|
|
55
|
+
* the notice, then the handler BLOCKS for up to 30 s waiting for content;
|
|
56
|
+
* 2. in the same turn it calls `cello_sessions {agent: "bob"}`, which names an agent explicitly
|
|
57
|
+
* and never falls back;
|
|
58
|
+
* 3. `cello_sessions` returns first and takes the notice on its way out.
|
|
59
|
+
*
|
|
60
|
+
* Bob's response now says *"no agent was selected, so 'solo' was used"* — false, on the one call
|
|
61
|
+
* that did name an agent — and `cello_receive`, the call that actually fell back, says nothing.
|
|
62
|
+
* Exactly inverted.
|
|
63
|
+
*
|
|
64
|
+
* A notice is a fact about ONE CALL, so it is stored in that call's async context. The store is
|
|
65
|
+
* created per request in `renderedHandlers` and dies with it, which also means a handler that
|
|
66
|
+
* THROWS cannot leave a notice behind to attach itself to some later, unrelated response — the
|
|
67
|
+
* other half of the same review finding.
|
|
68
|
+
*/
|
|
69
|
+
const fallbackNoticeStore = new AsyncLocalStorage();
|
|
70
|
+
function resolveCurrentAgent(connState, explicitAgent) {
|
|
71
|
+
return resolveCurrentAgentFor({
|
|
72
|
+
connState,
|
|
73
|
+
onlineAgents,
|
|
74
|
+
...(explicitAgent !== undefined ? { explicitAgent } : {}),
|
|
75
|
+
onResolved: (agent, trigger) => {
|
|
76
|
+
// Only the FALLBACK is announced. `explicit` and `selected` are the ordinary cases and
|
|
77
|
+
// logging them would bury the one that matters — a signal that fires on the normal case is
|
|
78
|
+
// not a signal.
|
|
79
|
+
if (trigger !== "fallback")
|
|
80
|
+
return;
|
|
81
|
+
/**
|
|
82
|
+
* RECORDED FOR THE RESPONSE, not just the log — `DOD-M15-SELECTION-1` clause 2.
|
|
83
|
+
*
|
|
84
|
+
* The log tells whoever reads the daemon log. The RESPONSE tells the agent that just acted
|
|
85
|
+
* as an identity it never selected, which is the one that stops the half-attended state
|
|
86
|
+
* being read as the protocol dropping messages.
|
|
87
|
+
*/
|
|
88
|
+
/**
|
|
89
|
+
* No `connState` guard. The first cut wrote the notice only `if (agent && connState)`, and
|
|
90
|
+
* `perConnectionState` is populated at `ipc.connect` — which `withIpc` in the CLI
|
|
91
|
+
* (`core/cli/src/commands.ts`) does not send. So every plain `cello` invocation fell back
|
|
92
|
+
* and got a response that said nothing, while the log line below fired regardless: the
|
|
93
|
+
* clause asks for explicit IN THE RESPONSE, and those callers had it explicit in the log
|
|
94
|
+
* only. The store is per-REQUEST, so it exists whether or not the connection ever
|
|
95
|
+
* handshook.
|
|
96
|
+
*/
|
|
97
|
+
const store = fallbackNoticeStore.getStore();
|
|
98
|
+
if (agent && store) {
|
|
99
|
+
store.notice = {
|
|
100
|
+
acting_as: agent,
|
|
101
|
+
agent_selection: "fallback",
|
|
102
|
+
agent_selection_guidance: `No agent was selected on this connection, so '${agent}' was used because it is the ` +
|
|
103
|
+
`only one online. This is a per-call subject, NOT an attendance: doorbells route by ` +
|
|
104
|
+
`the connection's registered agent and this does not set it. Two things follow — ` +
|
|
105
|
+
`this session will not WAKE on an incoming message even though sending and reading ` +
|
|
106
|
+
`work, and anyone who opens a session with you is sent an AWAY auto-reply while you ` +
|
|
107
|
+
`sit here able to answer. Run cello_use_agent to fix both. Naming the agent on each ` +
|
|
108
|
+
`call is NOT a remedy for either: it settles which agent a call is about and leaves ` +
|
|
109
|
+
`the connection just as unattended.`,
|
|
110
|
+
};
|
|
111
|
+
}
|
|
112
|
+
logger.info("agent.current.fallback", {
|
|
113
|
+
agentName: agent,
|
|
114
|
+
clientType: connState?.clientType ?? "cli",
|
|
115
|
+
impact: "this call had no selected agent and exactly one was online, so that one was used. It " +
|
|
116
|
+
"is a per-call subject, NOT an attendance: doorbells route by the connection's " +
|
|
117
|
+
"registered agent, which this does not set.",
|
|
118
|
+
guidance: "If this was not the intended agent, name it explicitly, or run cello_use_agent to " +
|
|
119
|
+
"select one for the connection.",
|
|
120
|
+
});
|
|
121
|
+
},
|
|
122
|
+
});
|
|
123
|
+
}
|
|
124
|
+
return { fallbackNoticeStore, resolveCurrentAgent };
|
|
125
|
+
}
|
|
126
|
+
//# sourceMappingURL=agent-selection-root.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-selection-root.js","sourceRoot":"","sources":["../src/agent-selection-root.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAS9D,MAAM,UAAU,oBAAoB,CAAC,IAAwB;IAC3D,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,IAAI,CAAC;IAEtC,6FAA6F;IAC7F,uGAAuG;IACvG,iGAAiG;IACjG,6FAA6F;IAC7F,mFAAmF;IACnF;;;;;;;;;;;;OAYG;IACH;;;;;;;;;;OAUG;IACH;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACH,MAAM,mBAAmB,GAAG,IAAI,iBAAiB,EAAwC,CAAC;IAE1F,SAAS,mBAAmB,CAC1B,SAAkG,EAClG,aAAsB;QAEtB,OAAO,sBAAsB,CAAC;YAC5B,SAAS;YACT,YAAY;YACZ,GAAG,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACzD,UAAU,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;gBAC7B,uFAAuF;gBACvF,2FAA2F;gBAC3F,gBAAgB;gBAChB,IAAI,OAAO,KAAK,UAAU;oBAAE,OAAO;gBACnC;;;;;;mBAMG;gBACH;;;;;;;;mBAQG;gBACH,MAAM,KAAK,GAAG,mBAAmB,CAAC,QAAQ,EAAE,CAAC;gBAC7C,IAAI,KAAK,IAAI,KAAK,EAAE,CAAC;oBACnB,KAAK,CAAC,MAAM,GAAG;wBACb,SAAS,EAAE,KAAK;wBAChB,eAAe,EAAE,UAAU;wBAC3B,wBAAwB,EACtB,iDAAiD,KAAK,+BAA+B;4BACrF,qFAAqF;4BACrF,kFAAkF;4BAClF,oFAAoF;4BACpF,qFAAqF;4BACrF,qFAAqF;4BACrF,qFAAqF;4BACrF,oCAAoC;qBACvC,CAAC;gBACJ,CAAC;gBACD,MAAM,CAAC,IAAI,CAAC,wBAAwB,EAAE;oBACpC,SAAS,EAAE,KAAK;oBAChB,UAAU,EAAE,SAAS,EAAE,UAAU,IAAI,KAAK;oBAC1C,MAAM,EACJ,uFAAuF;wBACvF,gFAAgF;wBAChF,4CAA4C;oBAC9C,QAAQ,EACN,oFAAoF;wBACpF,gCAAgC;iBACnC,CAAC,CAAC;YACL,CAAC;SACF,CAAC,CAAC;IACL,CAAC;IAED,OAAO,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,CAAC;AACtD,CAAC"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import type { SessionNodeManager } from "./session-node-manager.js";
|
|
2
|
+
import type { Logger, SessionRecord } from "./types.js";
|
|
3
|
+
import type { ActiveSealResult } from "./seal-flows.js";
|
|
4
|
+
import type { KeyProvider } from "@cello-protocol/crypto";
|
|
5
|
+
import type { SecurityGatewayClient } from "@cello-protocol/gateway";
|
|
6
|
+
import { ContentTakeLedger } from "./co-attendance.js";
|
|
7
|
+
import type { UnilateralResult } from "./seal-coordinator.js";
|
|
8
|
+
import type { SealCompletion } from "./seal-coordinator.js";
|
|
9
|
+
export interface AttendanceWiringDeps {
|
|
10
|
+
logger: Logger;
|
|
11
|
+
sessionNodeManager: SessionNodeManager;
|
|
12
|
+
/**
|
|
13
|
+
* The per-connection agent selection, read whole: "is anyone attending X" is a scan of the live
|
|
14
|
+
* selections, and the count is the same scan. Read-only — this surface never changes a selection.
|
|
15
|
+
*/
|
|
16
|
+
perConnectionState: ReadonlyMap<string, {
|
|
17
|
+
currentAgent: string | null;
|
|
18
|
+
}>;
|
|
19
|
+
keyProviders: Map<string, KeyProvider>;
|
|
20
|
+
/** The away reply is outbound content and takes the same screen every other send takes. */
|
|
21
|
+
securityGateway: SecurityGatewayClient;
|
|
22
|
+
/**
|
|
23
|
+
* The seal machinery a one-shot rejection hands off to once it has closed the conversation. All
|
|
24
|
+
* four come from the seal coordinator, which is built ABOVE this wiring, so they are values.
|
|
25
|
+
*/
|
|
26
|
+
sealKey: (agentName: string, sessionId: string) => string;
|
|
27
|
+
sealInterruptedInProgress: Set<string>;
|
|
28
|
+
pendingSealWaiters: Map<string, (completion: SealCompletion) => void>;
|
|
29
|
+
pendingUnilateralWaiters: Map<string, (r: UnilateralResult) => void>;
|
|
30
|
+
/** Sends a frame over the OWNING agent's directory manager. */
|
|
31
|
+
sendOver: (agentName: string, frame: Record<string, unknown>) => Promise<{
|
|
32
|
+
ok: boolean;
|
|
33
|
+
reason?: string;
|
|
34
|
+
}>;
|
|
35
|
+
handleActiveSealFlow: (sessionId: string, record: SessionRecord, correlationId: string) => Promise<ActiveSealResult>;
|
|
36
|
+
}
|
|
37
|
+
export declare function createAttendanceWiring(deps: AttendanceWiringDeps): {
|
|
38
|
+
attendanceCount: (agentName: string) => number;
|
|
39
|
+
sendAwayResponse: (agentName: string, sessionId: string, kind: "request" | "message") => Promise<void>;
|
|
40
|
+
contentTakes: ContentTakeLedger;
|
|
41
|
+
backgroundSeals: Set<Promise<unknown>>;
|
|
42
|
+
awayAckSent: Set<string>;
|
|
43
|
+
};
|
|
44
|
+
//# sourceMappingURL=attendance-wiring.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"attendance-wiring.d.ts","sourceRoot":"","sources":["../src/attendance-wiring.ts"],"names":[],"mappings":"AAmBA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AACxD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AACrE,OAAO,EAAmB,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAKxE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAE5D,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,MAAM,CAAC;IACf,kBAAkB,EAAE,kBAAkB,CAAC;IACvC;;;OAGG;IACH,kBAAkB,EAAE,WAAW,CAAC,MAAM,EAAE;QAAE,YAAY,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAAC,CAAC;IACzE,YAAY,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IACvC,2FAA2F;IAC3F,eAAe,EAAE,qBAAqB,CAAC;IACvC;;;OAGG;IACH,OAAO,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,KAAK,MAAM,CAAC;IAC1D,yBAAyB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACvC,kBAAkB,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,UAAU,EAAE,cAAc,KAAK,IAAI,CAAC,CAAC;IACtE,wBAAwB,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,gBAAgB,KAAK,IAAI,CAAC,CAAC;IACrE,+DAA+D;IAC/D,QAAQ,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC;QAAE,EAAE,EAAE,OAAO,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC3G,oBAAoB,EAAE,CACpB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,aAAa,EACrB,aAAa,EAAE,MAAM,KAClB,OAAO,CAAC,gBAAgB,CAAC,CAAC;CAChC;AAED,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,oBAAoB;iCAyB3B,MAAM,KAAG,MAAM;kCAiCR,MAAM,aAAa,MAAM,QAAQ,SAAS,GAAG,SAAS,KAAG,OAAO,CAAC,IAAI,CAAC;;;;EAuWlH"}
|