agent-comms 2.4.0 → 2.5.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/.claude-plugin/marketplace.json +1 -1
- package/.claude-plugin/plugin.json +1 -1
- package/README.md +1 -1
- package/dist/bridges/claude-code/channel.js +1 -1
- package/dist/bridges/claude-code/channel.js.map +1 -1
- package/dist/bridges/codex/tool.js +1 -1
- package/dist/bridges/codex/tool.js.map +1 -1
- package/dist/bridges/mcp/index.js +1 -1
- package/dist/bridges/mcp/index.js.map +1 -1
- package/dist/bridges/opencode/plugin.d.ts.map +1 -1
- package/dist/bridges/opencode/plugin.js +1 -1
- package/dist/bridges/opencode/plugin.js.map +1 -1
- package/dist/bridges/pi/index.d.ts.map +1 -1
- package/dist/bridges/pi/index.js +3 -2
- package/dist/bridges/pi/index.js.map +1 -1
- package/dist/bridges/user/controller.d.ts +2 -1
- package/dist/bridges/user/controller.d.ts.map +1 -1
- package/dist/bridges/user/controller.js +13 -10
- package/dist/bridges/user/controller.js.map +1 -1
- package/dist/core/bridge-mesh.d.ts +9 -1
- package/dist/core/bridge-mesh.d.ts.map +1 -1
- package/dist/core/bridge-mesh.js +21 -1
- package/dist/core/bridge-mesh.js.map +1 -1
- package/dist/core/index.d.ts +2 -2
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js +1 -1
- package/dist/core/index.js.map +1 -1
- package/dist/core/mesh-store.d.ts +18 -0
- package/dist/core/mesh-store.d.ts.map +1 -1
- package/dist/core/mesh-store.js +42 -0
- package/dist/core/mesh-store.js.map +1 -1
- package/dist/core/token-id.d.ts +3 -0
- package/dist/core/token-id.d.ts.map +1 -0
- package/dist/core/token-id.js +7 -0
- package/dist/core/token-id.js.map +1 -0
- package/dist/test/approval.integration.test.js +13 -13
- package/dist/test/approval.integration.test.js.map +1 -1
- package/dist/test/bridge-mesh.test.js +4 -4
- package/dist/test/bridge-mesh.test.js.map +1 -1
- package/dist/test/coordinator-socket-error.integration.test.js +1 -1
- package/dist/test/coordinator-socket-error.integration.test.js.map +1 -1
- package/dist/test/create-room-mints-owner-grant.test.d.ts +5 -0
- package/dist/test/create-room-mints-owner-grant.test.d.ts.map +1 -0
- package/dist/test/create-room-mints-owner-grant.test.js +53 -0
- package/dist/test/create-room-mints-owner-grant.test.js.map +1 -0
- package/dist/test/create-room-name-sanitisation.test.js +4 -4
- package/dist/test/create-room-name-sanitisation.test.js.map +1 -1
- package/dist/test/delivery-receipt.helper.js +14 -14
- package/dist/test/delivery-receipt.helper.js.map +1 -1
- package/dist/test/downtime-replay.integration.test.js +17 -6
- package/dist/test/downtime-replay.integration.test.js.map +1 -1
- package/dist/test/downtime-replay.test.js +11 -11
- package/dist/test/downtime-replay.test.js.map +1 -1
- package/dist/test/federation.integration.test.js +1 -1
- package/dist/test/federation.integration.test.js.map +1 -1
- package/dist/test/identity-restart.integration.test.js +17 -6
- package/dist/test/identity-restart.integration.test.js.map +1 -1
- package/dist/test/listener-policy.integration.test.js +9 -9
- package/dist/test/listener-policy.integration.test.js.map +1 -1
- package/dist/test/mesh-e2e.integration.test.js +1 -1
- package/dist/test/mesh-e2e.integration.test.js.map +1 -1
- package/dist/test/mesh-smoke.runner.js +30 -16
- package/dist/test/mesh-smoke.runner.js.map +1 -1
- package/dist/test/state-sync-convergence.test.js +18 -18
- package/dist/test/state-sync-convergence.test.js.map +1 -1
- package/dist/test/test-transport.d.ts +4 -2
- package/dist/test/test-transport.d.ts.map +1 -1
- package/dist/test/test-transport.js +22 -4
- package/dist/test/test-transport.js.map +1 -1
- package/dist/test/token-id.test.d.ts +2 -0
- package/dist/test/token-id.test.d.ts.map +1 -0
- package/dist/test/token-id.test.js +15 -0
- package/dist/test/token-id.test.js.map +1 -0
- package/dist/test/visibility.integration.test.js +5 -5
- package/dist/test/visibility.integration.test.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"identity-restart.integration.test.js","sourceRoot":"","sources":["../../src/test/identity-restart.integration.test.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,MAAM,MAAM,oBAAoB,CAAC;AAC7C,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACjC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAChE,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"identity-restart.integration.test.js","sourceRoot":"","sources":["../../src/test/identity-restart.integration.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -21,7 +21,7 @@ const TEST_PORT = 19880;
|
|
|
21
21
|
describe("listener policy", () => {
|
|
22
22
|
void test("coordinator starts with a single default localhost listener", async () => {
|
|
23
23
|
const store = new MeshStore(TEST_PORT);
|
|
24
|
-
wireTestTransport(store);
|
|
24
|
+
await wireTestTransport(store);
|
|
25
25
|
try {
|
|
26
26
|
await store.init();
|
|
27
27
|
const listeners = store.listListeners();
|
|
@@ -37,7 +37,7 @@ describe("listener policy", () => {
|
|
|
37
37
|
});
|
|
38
38
|
void test("addListener creates an additional listener", async () => {
|
|
39
39
|
const store = new MeshStore(TEST_PORT);
|
|
40
|
-
wireTestTransport(store);
|
|
40
|
+
await wireTestTransport(store);
|
|
41
41
|
try {
|
|
42
42
|
await store.init();
|
|
43
43
|
const id = await store.addListener("127.0.0.1", 0, "observe");
|
|
@@ -56,7 +56,7 @@ describe("listener policy", () => {
|
|
|
56
56
|
});
|
|
57
57
|
void test("removeListener removes a non-default listener", async () => {
|
|
58
58
|
const store = new MeshStore(TEST_PORT);
|
|
59
|
-
wireTestTransport(store);
|
|
59
|
+
await wireTestTransport(store);
|
|
60
60
|
try {
|
|
61
61
|
await store.init();
|
|
62
62
|
const id = await store.addListener("127.0.0.1", 0, "observe");
|
|
@@ -72,7 +72,7 @@ describe("listener policy", () => {
|
|
|
72
72
|
});
|
|
73
73
|
void test("removeListener rejects removing the default listener", async () => {
|
|
74
74
|
const store = new MeshStore(TEST_PORT);
|
|
75
|
-
wireTestTransport(store);
|
|
75
|
+
await wireTestTransport(store);
|
|
76
76
|
try {
|
|
77
77
|
await store.init();
|
|
78
78
|
const listeners = store.listListeners();
|
|
@@ -86,7 +86,7 @@ describe("listener policy", () => {
|
|
|
86
86
|
});
|
|
87
87
|
void test("observe listener accepts connections but enforces policy", async () => {
|
|
88
88
|
const store = new MeshStore(TEST_PORT);
|
|
89
|
-
wireTestTransport(store);
|
|
89
|
+
await wireTestTransport(store);
|
|
90
90
|
try {
|
|
91
91
|
await store.init();
|
|
92
92
|
const id = await store.addListener("127.0.0.1", 0, "observe");
|
|
@@ -116,7 +116,7 @@ describe("listener policy", () => {
|
|
|
116
116
|
});
|
|
117
117
|
void test("mesh_listeners action returns all listeners via CommsTool", async () => {
|
|
118
118
|
const store = new MeshStore(TEST_PORT);
|
|
119
|
-
wireTestTransport(store);
|
|
119
|
+
await wireTestTransport(store);
|
|
120
120
|
try {
|
|
121
121
|
await store.init();
|
|
122
122
|
const agent = await store.registerAgent({
|
|
@@ -140,7 +140,7 @@ describe("listener policy", () => {
|
|
|
140
140
|
});
|
|
141
141
|
void test("mesh_interfaces action returns available network adapters", async () => {
|
|
142
142
|
const store = new MeshStore(TEST_PORT);
|
|
143
|
-
wireTestTransport(store);
|
|
143
|
+
await wireTestTransport(store);
|
|
144
144
|
try {
|
|
145
145
|
await store.init();
|
|
146
146
|
const agent = await store.registerAgent({
|
|
@@ -162,7 +162,7 @@ describe("listener policy", () => {
|
|
|
162
162
|
});
|
|
163
163
|
void test("mesh_unlisten removes listener via CommsTool", async () => {
|
|
164
164
|
const store = new MeshStore(TEST_PORT);
|
|
165
|
-
wireTestTransport(store);
|
|
165
|
+
await wireTestTransport(store);
|
|
166
166
|
try {
|
|
167
167
|
await store.init();
|
|
168
168
|
const agent = await store.registerAgent({
|
|
@@ -187,7 +187,7 @@ describe("listener policy", () => {
|
|
|
187
187
|
});
|
|
188
188
|
void test("mesh_listen adds listener via CommsTool", async () => {
|
|
189
189
|
const store = new MeshStore(TEST_PORT);
|
|
190
|
-
wireTestTransport(store);
|
|
190
|
+
await wireTestTransport(store);
|
|
191
191
|
try {
|
|
192
192
|
await store.init();
|
|
193
193
|
const agent = await store.registerAgent({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"listener-policy.integration.test.js","sourceRoot":"","sources":["../../src/test/listener-policy.integration.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"listener-policy.integration.test.js","sourceRoot":"","sources":["../../src/test/listener-policy.integration.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,7 +12,7 @@ import { wireTestTransport } from "./test-transport.js";
|
|
|
12
12
|
const E2E_PORT = 19878;
|
|
13
13
|
async function createStore(name, harness) {
|
|
14
14
|
const store = new MeshStore(E2E_PORT);
|
|
15
|
-
wireTestTransport(store);
|
|
15
|
+
await wireTestTransport(store);
|
|
16
16
|
const deliveries = [];
|
|
17
17
|
store.onDelivery = (_agentId, event) => {
|
|
18
18
|
deliveries.push(event);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mesh-e2e.integration.test.js","sourceRoot":"","sources":["../../src/test/mesh-e2e.integration.test.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,OAAO,KAAK,MAAM,MAAM,oBAAoB,CAAC;AAC7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAExD,MAAM,QAAQ,GAAG,KAAK,CAAC;AAEvB,KAAK,UAAU,WAAW,CACxB,IAAY,EACZ,OAAe;IAEf,MAAM,KAAK,GAAG,IAAI,SAAS,CAAC,QAAQ,CAAC,CAAC;IACtC,iBAAiB,CAAC,KAAK,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"mesh-e2e.integration.test.js","sourceRoot":"","sources":["../../src/test/mesh-e2e.integration.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -94,14 +94,21 @@ function buildScript(name, actions) {
|
|
|
94
94
|
`const { MeshStore } = require("./dist/core/mesh-store.js");`,
|
|
95
95
|
`const { CommsTool } = require("./dist/core/tool.js");`,
|
|
96
96
|
`const { WireMeshTransport } = require("./dist/core/wire-mesh-transport.js");`,
|
|
97
|
-
`const {
|
|
97
|
+
`const { loadOrCreateIdentity } = require("./dist/core/identity-store.js");`,
|
|
98
|
+
`const { toIdentityPort } = require("./dist/core/wire-mesh-identity.js");`,
|
|
98
99
|
`const { deviceIdToHex } = require("wire-mesh-core/domain/device-id");`,
|
|
100
|
+
`const { createSystemClock } = require("wire-mesh-core/adapters/system-clock");`,
|
|
101
|
+
`const os = require("node:os");`,
|
|
102
|
+
`const path = require("node:path");`,
|
|
103
|
+
`const fs = require("node:fs");`,
|
|
99
104
|
`function log(msg) { process.stdout.write(JSON.stringify(msg) + "\\n"); }`,
|
|
100
105
|
`(async () => {`,
|
|
101
106
|
` const store = new MeshStore(${String(SMOKE_PORT)});`,
|
|
102
|
-
` const
|
|
107
|
+
` const slot = { harness: "smoke-${name}", cwd: "/test/${name}", dir: fs.mkdtempSync(path.join(os.tmpdir(), "agent-comms-smoke-${name}-")) };`,
|
|
108
|
+
` const identity = loadOrCreateIdentity(slot);`,
|
|
103
109
|
` store.peerId = deviceIdToHex(Uint8Array.from(identity.deviceId));`,
|
|
104
110
|
` store.setTransport(new WireMeshTransport(store.events, identity));`,
|
|
111
|
+
` store.setIdentity({ identity: await toIdentityPort(identity), clock: createSystemClock(), slot });`,
|
|
105
112
|
` const tool = new CommsTool(store);`,
|
|
106
113
|
` const deliveries = [];`,
|
|
107
114
|
` store.onDelivery = (_id, event) => {`,
|
|
@@ -131,20 +138,28 @@ function buildScript(name, actions) {
|
|
|
131
138
|
// -----------------------------------------------------------------------
|
|
132
139
|
// Helpers
|
|
133
140
|
// -----------------------------------------------------------------------
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
141
|
+
const WAIT_FOR_PORT_TIMEOUT_MS = 15_000;
|
|
142
|
+
const WAIT_FOR_PORT_RETRY_MS = 50;
|
|
143
|
+
/** Retries a single connection attempt until the port accepts one or the deadline passes, rather than a single attempt after a flat sleep -- binding the port now waits on real, load-dependent work (identity load/generation, then an async WebCrypto key import for the room-token identity) before the coordinator listener opens, so a fixed pre-sleep is exactly the fragile pattern this codebase's own waitFor helpers already avoid elsewhere. */
|
|
137
144
|
function waitForPort(port, host) {
|
|
145
|
+
const deadline = Date.now() + WAIT_FOR_PORT_TIMEOUT_MS;
|
|
138
146
|
return new Promise((resolve, reject) => {
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
socket.
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
socket.
|
|
146
|
-
|
|
147
|
-
|
|
147
|
+
function attempt() {
|
|
148
|
+
const socket = new net.Socket();
|
|
149
|
+
socket.connect(port, host, () => {
|
|
150
|
+
socket.destroy();
|
|
151
|
+
resolve();
|
|
152
|
+
});
|
|
153
|
+
socket.on("error", () => {
|
|
154
|
+
socket.destroy();
|
|
155
|
+
if (Date.now() >= deadline) {
|
|
156
|
+
reject(new Error(`Port ${String(port)} not listening after ${String(WAIT_FOR_PORT_TIMEOUT_MS)}ms`));
|
|
157
|
+
return;
|
|
158
|
+
}
|
|
159
|
+
setTimeout(attempt, WAIT_FOR_PORT_RETRY_MS);
|
|
160
|
+
});
|
|
161
|
+
}
|
|
162
|
+
attempt();
|
|
148
163
|
});
|
|
149
164
|
}
|
|
150
165
|
function findMsg(messages, type) {
|
|
@@ -167,8 +182,7 @@ async function main() {
|
|
|
167
182
|
`await store.sendRoomMessage(room.id, agent.id, "Hello from A!");`,
|
|
168
183
|
`log({ type: "sent", data: { room: room.id } });`,
|
|
169
184
|
].join("\n "));
|
|
170
|
-
// Wait for A to bind coordinator port
|
|
171
|
-
await sleep(500);
|
|
185
|
+
// Wait for A to bind coordinator port -- waitForPort itself retries until bound or its own timeout, so no fixed pre-sleep is needed.
|
|
172
186
|
await waitForPort(SMOKE_PORT, SMOKE_HOST);
|
|
173
187
|
console.log(" Coordinator bound on port " + String(SMOKE_PORT));
|
|
174
188
|
console.log("Spawning peer B (joins mesh)...");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mesh-smoke.runner.js","sourceRoot":"","sources":["../../src/test/mesh-smoke.runner.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"mesh-smoke.runner.js","sourceRoot":"","sources":["../../src/test/mesh-smoke.runner.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,17 +9,17 @@ import { MeshStore } from "../core/mesh-store.js";
|
|
|
9
9
|
import { ownerNamedRoomPath } from "../core/room-path.js";
|
|
10
10
|
import { wireTestTransport } from "./test-transport.js";
|
|
11
11
|
/** A local-only store: transport is set (registerAgent's own broadcastPatch needs one) but never started, so no ports and no flake -- the stores in these tests never actually connect. */
|
|
12
|
-
function makeStore() {
|
|
12
|
+
async function makeStore() {
|
|
13
13
|
const store = new MeshStore();
|
|
14
|
-
wireTestTransport(store);
|
|
14
|
+
await wireTestTransport(store);
|
|
15
15
|
return store;
|
|
16
16
|
}
|
|
17
17
|
function snapshotOf(store) {
|
|
18
18
|
return structuredClone(store.serialise());
|
|
19
19
|
}
|
|
20
20
|
void test("a stale holder converges when a fresher snapshot arrives", async () => {
|
|
21
|
-
const a = makeStore();
|
|
22
|
-
const b = makeStore();
|
|
21
|
+
const a = await makeStore();
|
|
22
|
+
const b = await makeStore();
|
|
23
23
|
const agent = await a.registerAgent({
|
|
24
24
|
name: "old-name",
|
|
25
25
|
harness: "pi",
|
|
@@ -37,8 +37,8 @@ void test("a stale holder converges when a fresher snapshot arrives", async () =
|
|
|
37
37
|
assert.equal((await b.getAgent(agent.id))?.name, "new-name");
|
|
38
38
|
});
|
|
39
39
|
void test("a current holder rejects a stale snapshot instead of regressing", async () => {
|
|
40
|
-
const a = makeStore();
|
|
41
|
-
const b = makeStore();
|
|
40
|
+
const a = await makeStore();
|
|
41
|
+
const b = await makeStore();
|
|
42
42
|
const agent = await a.registerAgent({
|
|
43
43
|
name: "old-name",
|
|
44
44
|
harness: "pi",
|
|
@@ -62,8 +62,8 @@ void test("a current holder rejects a stale snapshot instead of regressing", asy
|
|
|
62
62
|
assert.equal((await b.getAgent(agent.id))?.name, "new-name");
|
|
63
63
|
});
|
|
64
64
|
void test("room membership changes converge and stale member lists are rejected", async () => {
|
|
65
|
-
const a = makeStore();
|
|
66
|
-
const b = makeStore();
|
|
65
|
+
const a = await makeStore();
|
|
66
|
+
const b = await makeStore();
|
|
67
67
|
const owner = await a.registerAgent({
|
|
68
68
|
name: "owner",
|
|
69
69
|
harness: "pi",
|
|
@@ -109,8 +109,8 @@ void test("room membership changes converge and stale member lists are rejected"
|
|
|
109
109
|
assert.equal((await a.getRoom(roomId))?.members.includes(joiner.id), false);
|
|
110
110
|
});
|
|
111
111
|
void test("history sync adds unseen messages and unions read receipts", async () => {
|
|
112
|
-
const a = makeStore();
|
|
113
|
-
const b = makeStore();
|
|
112
|
+
const a = await makeStore();
|
|
113
|
+
const b = await makeStore();
|
|
114
114
|
const agent = await a.registerAgent({
|
|
115
115
|
name: "sender",
|
|
116
116
|
harness: "pi",
|
|
@@ -145,7 +145,7 @@ void test("a kick racing a concurrent join converges with the kick honoured", as
|
|
|
145
145
|
// other records X joining, both at the same revision because they mutated
|
|
146
146
|
// concurrently from the same base. Both directions of the sync must
|
|
147
147
|
// converge on X being out — the leave wins an exact tie (#27).
|
|
148
|
-
const base = makeStore();
|
|
148
|
+
const base = await makeStore();
|
|
149
149
|
const owner = await base.registerAgent({
|
|
150
150
|
name: "owner",
|
|
151
151
|
harness: "pi",
|
|
@@ -154,7 +154,7 @@ void test("a kick racing a concurrent join converges with the kick honoured", as
|
|
|
154
154
|
visibility: "visible",
|
|
155
155
|
tags: [],
|
|
156
156
|
});
|
|
157
|
-
const member = makeStore();
|
|
157
|
+
const member = await makeStore();
|
|
158
158
|
const x = await member.registerAgent({
|
|
159
159
|
name: "x",
|
|
160
160
|
harness: "claude-code",
|
|
@@ -171,8 +171,8 @@ void test("a kick racing a concurrent join converges with the kick honoured", as
|
|
|
171
171
|
description: "x",
|
|
172
172
|
});
|
|
173
173
|
await base.joinRoom(roomId, x.id);
|
|
174
|
-
const kicker = makeStore();
|
|
175
|
-
const joiner = makeStore();
|
|
174
|
+
const kicker = await makeStore();
|
|
175
|
+
const joiner = await makeStore();
|
|
176
176
|
kicker.applyStateSync(snapshotOf(base));
|
|
177
177
|
joiner.applyStateSync(snapshotOf(base));
|
|
178
178
|
// Concurrent mutations from the same base: a kick on one holder, a re-join of X recorded on the other.
|
|
@@ -190,7 +190,7 @@ void test("concurrent joins of different agents both survive the merge", async (
|
|
|
190
190
|
// The property the old version-tie union existed to protect: two peers
|
|
191
191
|
// each record a different agent joining from the same base, and the
|
|
192
192
|
// merged room holds both.
|
|
193
|
-
const base = makeStore();
|
|
193
|
+
const base = await makeStore();
|
|
194
194
|
const owner = await base.registerAgent({
|
|
195
195
|
name: "owner",
|
|
196
196
|
harness: "pi",
|
|
@@ -199,7 +199,7 @@ void test("concurrent joins of different agents both survive the merge", async (
|
|
|
199
199
|
visibility: "visible",
|
|
200
200
|
tags: [],
|
|
201
201
|
});
|
|
202
|
-
const agents = makeStore();
|
|
202
|
+
const agents = await makeStore();
|
|
203
203
|
const p = await agents.registerAgent({
|
|
204
204
|
name: "p",
|
|
205
205
|
harness: "claude-code",
|
|
@@ -224,8 +224,8 @@ void test("concurrent joins of different agents both survive the merge", async (
|
|
|
224
224
|
description: "x",
|
|
225
225
|
});
|
|
226
226
|
base.applyStateSync(snapshotOf(agents));
|
|
227
|
-
const holderA = makeStore();
|
|
228
|
-
const holderB = makeStore();
|
|
227
|
+
const holderA = await makeStore();
|
|
228
|
+
const holderB = await makeStore();
|
|
229
229
|
holderA.applyStateSync(snapshotOf(base));
|
|
230
230
|
holderB.applyStateSync(snapshotOf(base));
|
|
231
231
|
await holderA.joinRoom(roomId, p.id);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"state-sync-convergence.test.js","sourceRoot":"","sources":["../../src/test/state-sync-convergence.test.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,MAAM,MAAM,oBAAoB,CAAC;AAC7C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAElD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAExD,2LAA2L;AAC3L,
|
|
1
|
+
{"version":3,"file":"state-sync-convergence.test.js","sourceRoot":"","sources":["../../src/test/state-sync-convergence.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
|
-
/** Wires a real WireMeshTransport
|
|
1
|
+
/** Wires a real WireMeshTransport plus a persisted identity slot onto a freshly constructed MeshStore -- the same setTransport()/setIdentity() calls every production bridge makes immediately after construction (via createBridgeMesh). MeshStore has no default transport or identity, so every test that constructs one needs this (or an equivalent explicit wiring) before init(), createRoom(), or any other transport- or identity-using method runs. */
|
|
2
|
+
import type { IdentitySlot } from "../core/identity-store.js";
|
|
2
3
|
import type { MeshStore } from "../core/mesh-store.js";
|
|
3
|
-
|
|
4
|
+
/** Wires store onto a fresh WireMeshTransport and a persisted identity slot, returning the slot so a test can inspect (or reuse) the persisted room tokens directly via loadRoomTokens(). Defaults to a throwaway temp-dir slot per call -- pass an explicit slot when a test needs the same identity to survive across more than one wireTestTransport call (e.g. simulating a restart). */
|
|
5
|
+
export declare function wireTestTransport(store: MeshStore, slot?: Readonly<IdentitySlot>): Promise<IdentitySlot>;
|
|
4
6
|
/**
|
|
5
7
|
* Polls condition() until it returns true or timeoutMs elapses, rather than a fixed sleep() before a single check. A real TLS handshake plus the peer_list -> connectToPeer -> state_sync -> handlePeerConnected round trip genuinely takes variable, load-dependent wall-clock time -- comfortably inside a fixed sleep on a fast local machine, not reliably so under a throttled CI runner. Throws with a descriptive message on timeout rather than letting the caller's own assertion fail with a less specific one.
|
|
6
8
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"test-transport.d.ts","sourceRoot":"","sources":["../../src/test/test-transport.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"test-transport.d.ts","sourceRoot":"","sources":["../../src/test/test-transport.ts"],"names":[],"mappings":"AAAA,icAAic;AASjc,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAG9D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAEvD,6XAA6X;AAC7X,wBAAsB,iBAAiB,CACrC,KAAK,EAAE,SAAS,EAChB,IAAI,CAAC,EAAE,QAAQ,CAAC,YAAY,CAAC,GAC5B,OAAO,CAAC,YAAY,CAAC,CAoBvB;AAMD;;GAEG;AACH,wBAAsB,OAAO,CAC3B,SAAS,EAAE,MAAM,OAAO,EACxB,WAAW,EAAE,MAAM,EACnB,SAAS,SAA8B,GACtC,OAAO,CAAC,IAAI,CAAC,CAYf"}
|
|
@@ -1,16 +1,34 @@
|
|
|
1
|
-
/** Wires a real WireMeshTransport
|
|
1
|
+
/** Wires a real WireMeshTransport plus a persisted identity slot onto a freshly constructed MeshStore -- the same setTransport()/setIdentity() calls every production bridge makes immediately after construction (via createBridgeMesh). MeshStore has no default transport or identity, so every test that constructs one needs this (or an equivalent explicit wiring) before init(), createRoom(), or any other transport- or identity-using method runs. */
|
|
2
|
+
import * as fs from "node:fs";
|
|
3
|
+
import * as path from "node:path";
|
|
4
|
+
import { tmpdir } from "node:os";
|
|
2
5
|
import { WireMeshTransport } from "../core/wire-mesh-transport.js";
|
|
3
|
-
import { generateIdentity } from "../core/identity.js";
|
|
4
6
|
import { deviceIdToHex } from "wire-mesh-core/domain/device-id";
|
|
5
|
-
|
|
6
|
-
|
|
7
|
+
import { createSystemClock } from "wire-mesh-core/adapters/system-clock";
|
|
8
|
+
import { loadOrCreateIdentity } from "../core/identity-store.js";
|
|
9
|
+
import { toIdentityPort } from "../core/wire-mesh-identity.js";
|
|
10
|
+
import { nanoid } from "../core/nanoid.js";
|
|
11
|
+
/** Wires store onto a fresh WireMeshTransport and a persisted identity slot, returning the slot so a test can inspect (or reuse) the persisted room tokens directly via loadRoomTokens(). Defaults to a throwaway temp-dir slot per call -- pass an explicit slot when a test needs the same identity to survive across more than one wireTestTransport call (e.g. simulating a restart). */
|
|
12
|
+
export async function wireTestTransport(store, slot) {
|
|
13
|
+
const resolvedSlot = slot ?? {
|
|
14
|
+
harness: "test",
|
|
15
|
+
cwd: nanoid(8),
|
|
16
|
+
dir: fs.mkdtempSync(path.join(tmpdir(), "agent-comms-test-identity-")),
|
|
17
|
+
};
|
|
18
|
+
const identity = loadOrCreateIdentity(resolvedSlot);
|
|
7
19
|
// Every real bridge sets peerId to deviceIdToHex(identity.deviceId) before wiring the transport (createBridgeMesh) -- WireMeshTransport's own session bookkeeping is keyed by device-id, so a peer's advertised ID and the identity the other side actually authenticates the connection against must be the same value, or introduction/state-sync never recognises the peer as itself.
|
|
8
20
|
store.peerId = deviceIdToHex(Uint8Array.from(identity.deviceId));
|
|
9
21
|
store.setTransport(new WireMeshTransport(store.events, identity));
|
|
22
|
+
store.setIdentity({
|
|
23
|
+
identity: await toIdentityPort(identity),
|
|
24
|
+
clock: createSystemClock(),
|
|
25
|
+
slot: resolvedSlot,
|
|
26
|
+
});
|
|
10
27
|
// Surface transport-level errors instead of leaving them silent — a genuine socket failure during a test run is signal worth seeing even when the test's own assertions still pass, since it can point at a real race the assertions don't happen to catch.
|
|
11
28
|
store.onError = (e) => {
|
|
12
29
|
console.error(`[transport error, peerId=${store.peerId}]`, e.message);
|
|
13
30
|
};
|
|
31
|
+
return resolvedSlot;
|
|
14
32
|
}
|
|
15
33
|
// Generous on purpose: waitFor returns the instant its condition holds, so a long ceiling costs nothing on the happy path (a local run settles in well under a second) and only matters for the worst case -- a loaded CI runner working through a real, sequential chain of TLS handshakes (each one genuine X.509 certificate work, not instant) for the accept-flow's second connection direction, confirmed to need meaningfully more than 5s on at least one real CI run.
|
|
16
34
|
const DEFAULT_WAIT_FOR_TIMEOUT_MS = 20_000;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"test-transport.js","sourceRoot":"","sources":["../../src/test/test-transport.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"test-transport.js","sourceRoot":"","sources":["../../src/test/test-transport.ts"],"names":[],"mappings":"AAAA,icAAic;AAEjc,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACjC,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AACzE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAEjE,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAG3C,6XAA6X;AAC7X,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,KAAgB,EAChB,IAA6B;IAE7B,MAAM,YAAY,GAAiB,IAAI,IAAI;QACzC,OAAO,EAAE,MAAM;QACf,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC;QACd,GAAG,EAAE,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,4BAA4B,CAAC,CAAC;KACvE,CAAC;IACF,MAAM,QAAQ,GAAG,oBAAoB,CAAC,YAAY,CAAC,CAAC;IACpD,yXAAyX;IACzX,KAAK,CAAC,MAAM,GAAG,aAAa,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;IACjE,KAAK,CAAC,YAAY,CAAC,IAAI,iBAAiB,CAAC,KAAK,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;IAClE,KAAK,CAAC,WAAW,CAAC;QAChB,QAAQ,EAAE,MAAM,cAAc,CAAC,QAAQ,CAAC;QACxC,KAAK,EAAE,iBAAiB,EAAE;QAC1B,IAAI,EAAE,YAAY;KACnB,CAAC,CAAC;IACH,4PAA4P;IAC5P,KAAK,CAAC,OAAO,GAAG,CAAC,CAAC,EAAE,EAAE;QACpB,OAAO,CAAC,KAAK,CAAC,4BAA4B,KAAK,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;IACxE,CAAC,CAAC;IACF,OAAO,YAAY,CAAC;AACtB,CAAC;AAED,+cAA+c;AAC/c,MAAM,2BAA2B,GAAG,MAAM,CAAC;AAC3C,MAAM,yBAAyB,GAAG,EAAE,CAAC;AAErC;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,OAAO,CAC3B,SAAwB,EACxB,WAAmB,EACnB,SAAS,GAAG,2BAA2B;IAEvC,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;IACxC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC;QACpB,IAAI,IAAI,CAAC,GAAG,EAAE,IAAI,QAAQ,EAAE,CAAC;YAC3B,MAAM,IAAI,KAAK,CACb,2BAA2B,MAAM,CAAC,SAAS,CAAC,OAAO,WAAW,EAAE,CACjE,CAAC;QACJ,CAAC;QACD,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAC5B,UAAU,CAAC,OAAO,EAAE,yBAAyB,CAAC,CAC/C,CAAC;IACJ,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"token-id.test.d.ts","sourceRoot":"","sources":["../../src/test/token-id.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { describe, it } from "node:test";
|
|
2
|
+
import assert from "node:assert/strict";
|
|
3
|
+
import { randomTokenId } from "../core/token-id.js";
|
|
4
|
+
describe("randomTokenId", () => {
|
|
5
|
+
it("returns 16 bytes", () => {
|
|
6
|
+
const id = randomTokenId();
|
|
7
|
+
assert.equal(id.length, 16);
|
|
8
|
+
});
|
|
9
|
+
it("returns a different value on each call", () => {
|
|
10
|
+
const a = randomTokenId();
|
|
11
|
+
const b = randomTokenId();
|
|
12
|
+
assert.notDeepEqual(a, b);
|
|
13
|
+
});
|
|
14
|
+
});
|
|
15
|
+
//# sourceMappingURL=token-id.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"token-id.test.js","sourceRoot":"","sources":["../../src/test/token-id.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,MAAM,MAAM,oBAAoB,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpD,QAAQ,CAAC,eAAe,EAAE,GAAG,EAAE;IAC7B,EAAE,CAAC,kBAAkB,EAAE,GAAG,EAAE;QAC1B,MAAM,EAAE,GAAG,aAAa,EAAE,CAAC;QAC3B,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAC9B,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wCAAwC,EAAE,GAAG,EAAE;QAChD,MAAM,CAAC,GAAG,aAAa,EAAE,CAAC;QAC1B,MAAM,CAAC,GAAG,aAAa,EAAE,CAAC;QAC1B,MAAM,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC5B,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|