agent-comms 8.4.1 → 8.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.
Files changed (189) hide show
  1. package/.claude-plugin/marketplace.json +1 -1
  2. package/.claude-plugin/plugin.json +1 -1
  3. package/README.md +13 -3
  4. package/dist/bridges/user/web/dist/mesh-worker.js +1 -1
  5. package/dist/bridges/user/web/dist/sw.js +1 -1
  6. package/dist/core/agent-registry.d.ts.map +1 -1
  7. package/dist/core/agent-registry.js +2 -0
  8. package/dist/core/agent-registry.js.map +1 -1
  9. package/dist/core/atomic-file.d.ts +12 -0
  10. package/dist/core/atomic-file.d.ts.map +1 -0
  11. package/dist/core/atomic-file.js +37 -0
  12. package/dist/core/atomic-file.js.map +1 -0
  13. package/dist/core/bridge-mesh.d.ts.map +1 -1
  14. package/dist/core/bridge-mesh.js +4 -0
  15. package/dist/core/bridge-mesh.js.map +1 -1
  16. package/dist/core/bridge.d.ts +1 -0
  17. package/dist/core/bridge.d.ts.map +1 -1
  18. package/dist/core/bridge.js +4 -0
  19. package/dist/core/bridge.js.map +1 -1
  20. package/dist/core/device-membership-verification.d.ts +23 -9
  21. package/dist/core/device-membership-verification.d.ts.map +1 -1
  22. package/dist/core/device-membership-verification.js +38 -11
  23. package/dist/core/device-membership-verification.js.map +1 -1
  24. package/dist/core/device-membership.d.ts +12 -3
  25. package/dist/core/device-membership.d.ts.map +1 -1
  26. package/dist/core/device-membership.js +10 -7
  27. package/dist/core/device-membership.js.map +1 -1
  28. package/dist/core/directory-admission.d.ts +5 -3
  29. package/dist/core/directory-admission.d.ts.map +1 -1
  30. package/dist/core/directory-admission.js +55 -32
  31. package/dist/core/directory-admission.js.map +1 -1
  32. package/dist/core/gateway-trust-actions.d.ts +5 -8
  33. package/dist/core/gateway-trust-actions.d.ts.map +1 -1
  34. package/dist/core/gateway-trust-actions.js +79 -15
  35. package/dist/core/gateway-trust-actions.js.map +1 -1
  36. package/dist/core/gateway-trust.d.ts +38 -17
  37. package/dist/core/gateway-trust.d.ts.map +1 -1
  38. package/dist/core/gateway-trust.js +86 -37
  39. package/dist/core/gateway-trust.js.map +1 -1
  40. package/dist/core/gossip-directory.d.ts +23 -3
  41. package/dist/core/gossip-directory.d.ts.map +1 -1
  42. package/dist/core/gossip-directory.js +45 -6
  43. package/dist/core/gossip-directory.js.map +1 -1
  44. package/dist/core/gossip-extensions.d.ts +2 -0
  45. package/dist/core/gossip-extensions.d.ts.map +1 -1
  46. package/dist/core/gossip-extensions.js +1 -0
  47. package/dist/core/gossip-extensions.js.map +1 -1
  48. package/dist/core/group-proofs.d.ts +43 -0
  49. package/dist/core/group-proofs.d.ts.map +1 -0
  50. package/dist/core/group-proofs.js +69 -0
  51. package/dist/core/group-proofs.js.map +1 -0
  52. package/dist/core/identity-store.d.ts +5 -4
  53. package/dist/core/identity-store.d.ts.map +1 -1
  54. package/dist/core/identity-store.js +13 -16
  55. package/dist/core/identity-store.js.map +1 -1
  56. package/dist/core/issuer-identity-file.d.ts +25 -0
  57. package/dist/core/issuer-identity-file.d.ts.map +1 -0
  58. package/dist/core/issuer-identity-file.js +124 -0
  59. package/dist/core/issuer-identity-file.js.map +1 -0
  60. package/dist/core/machine-grouping.d.ts +34 -0
  61. package/dist/core/machine-grouping.d.ts.map +1 -0
  62. package/dist/core/machine-grouping.js +66 -0
  63. package/dist/core/machine-grouping.js.map +1 -0
  64. package/dist/core/machine-identity.d.ts +15 -0
  65. package/dist/core/machine-identity.d.ts.map +1 -0
  66. package/dist/core/machine-identity.js +18 -0
  67. package/dist/core/machine-identity.js.map +1 -0
  68. package/dist/core/machine-list-groups.d.ts +12 -0
  69. package/dist/core/machine-list-groups.d.ts.map +1 -0
  70. package/dist/core/machine-list-groups.js +41 -0
  71. package/dist/core/machine-list-groups.js.map +1 -0
  72. package/dist/core/membership-proof.d.ts +20 -9
  73. package/dist/core/membership-proof.d.ts.map +1 -1
  74. package/dist/core/membership-proof.js +41 -15
  75. package/dist/core/membership-proof.js.map +1 -1
  76. package/dist/core/membership-proofs.d.ts +14 -8
  77. package/dist/core/membership-proofs.d.ts.map +1 -1
  78. package/dist/core/membership-proofs.js +21 -10
  79. package/dist/core/membership-proofs.js.map +1 -1
  80. package/dist/core/mesh-store-shared.d.ts +2 -1
  81. package/dist/core/mesh-store-shared.d.ts.map +1 -1
  82. package/dist/core/mesh-store-shared.js.map +1 -1
  83. package/dist/core/mesh-store.d.ts +17 -10
  84. package/dist/core/mesh-store.d.ts.map +1 -1
  85. package/dist/core/mesh-store.js +35 -38
  86. package/dist/core/mesh-store.js.map +1 -1
  87. package/dist/core/network-interfaces.d.ts +7 -0
  88. package/dist/core/network-interfaces.d.ts.map +1 -0
  89. package/dist/core/network-interfaces.js +23 -0
  90. package/dist/core/network-interfaces.js.map +1 -0
  91. package/dist/core/peer-versions.d.ts +6 -0
  92. package/dist/core/peer-versions.d.ts.map +1 -1
  93. package/dist/core/peer-versions.js +17 -0
  94. package/dist/core/peer-versions.js.map +1 -1
  95. package/dist/core/room-path.d.ts +2 -0
  96. package/dist/core/room-path.d.ts.map +1 -1
  97. package/dist/core/room-path.js +5 -1
  98. package/dist/core/room-path.js.map +1 -1
  99. package/dist/core/tool.d.ts +10 -5
  100. package/dist/core/tool.d.ts.map +1 -1
  101. package/dist/core/tool.js +16 -3
  102. package/dist/core/tool.js.map +1 -1
  103. package/dist/core/types.d.ts +4 -0
  104. package/dist/core/types.d.ts.map +1 -1
  105. package/dist/core/types.js +4 -0
  106. package/dist/core/types.js.map +1 -1
  107. package/dist/core/user-identity.d.ts +4 -6
  108. package/dist/core/user-identity.d.ts.map +1 -1
  109. package/dist/core/user-identity.js +9 -113
  110. package/dist/core/user-identity.js.map +1 -1
  111. package/dist/core/wire-mesh-transport-options.d.ts +2 -2
  112. package/dist/core/wire-mesh-transport-options.d.ts.map +1 -1
  113. package/dist/core/wire-mesh-transport.d.ts.map +1 -1
  114. package/dist/core/wire-mesh-transport.js +7 -7
  115. package/dist/core/wire-mesh-transport.js.map +1 -1
  116. package/dist/test/delivery-engine-delivery.unit.test.js +1 -0
  117. package/dist/test/delivery-engine-delivery.unit.test.js.map +1 -1
  118. package/dist/test/delivery-engine-directed-notify.unit.test.js +1 -0
  119. package/dist/test/delivery-engine-directed-notify.unit.test.js.map +1 -1
  120. package/dist/test/delivery-engine-own-agent.unit.test.js +1 -0
  121. package/dist/test/delivery-engine-own-agent.unit.test.js.map +1 -1
  122. package/dist/test/delivery-engine.unit.test.js +1 -0
  123. package/dist/test/delivery-engine.unit.test.js.map +1 -1
  124. package/dist/test/device-membership-verification.unit.test.js +25 -25
  125. package/dist/test/device-membership-verification.unit.test.js.map +1 -1
  126. package/dist/test/device-membership.unit.test.js +6 -6
  127. package/dist/test/device-membership.unit.test.js.map +1 -1
  128. package/dist/test/directory-admission.unit.test.js +103 -7
  129. package/dist/test/directory-admission.unit.test.js.map +1 -1
  130. package/dist/test/gateway-trust-tool.integration.test.js +115 -3
  131. package/dist/test/gateway-trust-tool.integration.test.js.map +1 -1
  132. package/dist/test/gateway-trust.unit.test.js +62 -13
  133. package/dist/test/gateway-trust.unit.test.js.map +1 -1
  134. package/dist/test/gossip-directory.unit.test.js +14 -1
  135. package/dist/test/gossip-directory.unit.test.js.map +1 -1
  136. package/dist/test/hub-exposure.integration.test.js +1 -1
  137. package/dist/test/hub-exposure.integration.test.js.map +1 -1
  138. package/dist/test/identity-restart.integration.test.js +2 -0
  139. package/dist/test/identity-restart.integration.test.js.map +1 -1
  140. package/dist/test/identity-store.integration.test.js +64 -14
  141. package/dist/test/identity-store.integration.test.js.map +1 -1
  142. package/dist/test/machine-grouping.unit.test.d.ts +2 -0
  143. package/dist/test/machine-grouping.unit.test.d.ts.map +1 -0
  144. package/dist/test/machine-grouping.unit.test.js +61 -0
  145. package/dist/test/machine-grouping.unit.test.js.map +1 -0
  146. package/dist/test/machine-identity.unit.test.d.ts +5 -0
  147. package/dist/test/machine-identity.unit.test.d.ts.map +1 -0
  148. package/dist/test/machine-identity.unit.test.js +65 -0
  149. package/dist/test/machine-identity.unit.test.js.map +1 -0
  150. package/dist/test/machine-list-groups.unit.test.d.ts +5 -0
  151. package/dist/test/machine-list-groups.unit.test.d.ts.map +1 -0
  152. package/dist/test/machine-list-groups.unit.test.js +57 -0
  153. package/dist/test/machine-list-groups.unit.test.js.map +1 -0
  154. package/dist/test/machine-membership-trust.integration.test.d.ts +5 -0
  155. package/dist/test/machine-membership-trust.integration.test.d.ts.map +1 -0
  156. package/dist/test/machine-membership-trust.integration.test.js +151 -0
  157. package/dist/test/machine-membership-trust.integration.test.js.map +1 -0
  158. package/dist/test/membership-proof.unit.test.js +105 -13
  159. package/dist/test/membership-proof.unit.test.js.map +1 -1
  160. package/dist/test/principal-membership-trust.integration.test.js +2 -1
  161. package/dist/test/principal-membership-trust.integration.test.js.map +1 -1
  162. package/dist/test/room-join-admission.integration.test.js +2 -0
  163. package/dist/test/room-join-admission.integration.test.js.map +1 -1
  164. package/dist/test/room-lifecycle-bare-name.unit.test.js +1 -0
  165. package/dist/test/room-lifecycle-bare-name.unit.test.js.map +1 -1
  166. package/dist/test/room-lifecycle-membership.unit.test.js +1 -0
  167. package/dist/test/room-lifecycle-membership.unit.test.js.map +1 -1
  168. package/dist/test/room-lifecycle-remote.unit.test.js +1 -0
  169. package/dist/test/room-lifecycle-remote.unit.test.js.map +1 -1
  170. package/dist/test/room-lifecycle.unit.test.js +1 -0
  171. package/dist/test/room-lifecycle.unit.test.js.map +1 -1
  172. package/dist/test/room-messaging-durable-send.unit.test.js +1 -0
  173. package/dist/test/room-messaging-durable-send.unit.test.js.map +1 -1
  174. package/dist/test/room-messaging.unit.test.js +1 -0
  175. package/dist/test/room-messaging.unit.test.js.map +1 -1
  176. package/dist/test/room-protocol-notify.unit.test.js +1 -0
  177. package/dist/test/room-protocol-notify.unit.test.js.map +1 -1
  178. package/dist/test/room-protocol.helper.d.ts.map +1 -1
  179. package/dist/test/room-protocol.helper.js +1 -0
  180. package/dist/test/room-protocol.helper.js.map +1 -1
  181. package/dist/test/room-send-retry.integration.test.js +2 -0
  182. package/dist/test/room-send-retry.integration.test.js.map +1 -1
  183. package/dist/test/test-transport.d.ts +3 -0
  184. package/dist/test/test-transport.d.ts.map +1 -1
  185. package/dist/test/test-transport.js +6 -1
  186. package/dist/test/test-transport.js.map +1 -1
  187. package/dist/test/user-identity.unit.test.js +40 -14
  188. package/dist/test/user-identity.unit.test.js.map +1 -1
  189. package/package.json +1 -1
@@ -1,8 +1,8 @@
1
1
  /**
2
- * A device's own membership proof, kept fresh, and the check for other devices' proofs (agent-comms#266). Split out of MeshStore, which hands it its identity, peer id and error sink.
2
+ * A device's own membership proof under one grouping issuer, kept fresh, and the checks for other devices' proofs (agent-comms#266, agent-comms#343). MeshStore holds one instance per issuer, its user principal and its machine, and hands each its identity, peer id and error sink. The checks do not depend on which issuer an instance mints under, so either instance can verify or identify any proof.
3
3
  */
4
4
  import { deviceIdFromHex } from "wire-mesh-core/domain/device-id";
5
- import { MEMBERSHIP_PROOF_LIFETIME_MS, mintMembershipProof, verifyMembershipProof, } from "./membership-proof.js";
5
+ import { MEMBERSHIP_PROOF_LIFETIME_MS, identifyMembershipProofIssuer, mintMembershipProof, verifyMembershipProof, } from "./membership-proof.js";
6
6
  /** How many times per proof lifetime the proof is re-minted, so a missed tick or two never lets the advertised proof lapse. */
7
7
  const REFRESHES_PER_LIFETIME = 3;
8
8
  const REFRESH_INTERVAL_MS = MEMBERSHIP_PROOF_LIFETIME_MS / REFRESHES_PER_LIFETIME;
@@ -14,9 +14,9 @@ export class MembershipProofs {
14
14
  constructor(deps) {
15
15
  this.deps = deps;
16
16
  }
17
- /** The agent/self advert field carrying this device's current proof, empty until the first has been minted. */
18
- advertField() {
19
- return this.proof === undefined ? {} : { membership: this.proof };
17
+ /** This device's current proof, undefined until the first has been minted. */
18
+ current() {
19
+ return this.proof;
20
20
  }
21
21
  /** Mints a proof now and again on an interval. A failed mint is reported and retried on the next tick; the previous proof stays until it lapses. */
22
22
  start() {
@@ -31,13 +31,24 @@ export class MembershipProofs {
31
31
  clearInterval(this.timer);
32
32
  this.timer = undefined;
33
33
  }
34
- /** Whether a gossiped proof shows that principalHex vouches for deviceHex, as this node sees it: its own identity, clock and revocation view. */
34
+ /** Whether a gossiped proof shows that issuerHex vouches for deviceHex, as this node sees it: its own identity, clock and revocation view. */
35
35
  async verify(claim) {
36
36
  const { identity, clock, revocation } = this.deps.getIdentity();
37
37
  return verifyMembershipProof({
38
38
  proof: claim.proof,
39
39
  deviceId: deviceIdFromHex(claim.deviceHex),
40
- principalId: deviceIdFromHex(claim.principalHex),
40
+ issuerId: deviceIdFromHex(claim.issuerHex),
41
+ identity,
42
+ clock,
43
+ revocation,
44
+ });
45
+ }
46
+ /** Which issuer a gossiped proof shows vouching for deviceHex, as this node sees it. */
47
+ async identify(claim) {
48
+ const { identity, clock, revocation } = this.deps.getIdentity();
49
+ return identifyMembershipProofIssuer({
50
+ proof: claim.proof,
51
+ deviceId: deviceIdFromHex(claim.deviceHex),
41
52
  identity,
42
53
  clock,
43
54
  revocation,
@@ -47,10 +58,10 @@ export class MembershipProofs {
47
58
  if (this.minting)
48
59
  return;
49
60
  this.minting = true;
50
- const { userIdentity, clock } = this.deps.getIdentity();
61
+ const storeIdentity = this.deps.getIdentity();
51
62
  mintMembershipProof({
52
- userIdentity,
53
- clock,
63
+ issuer: this.deps.issuerOf(storeIdentity),
64
+ clock: storeIdentity.clock,
54
65
  deviceId: deviceIdFromHex(this.deps.getPeerId()),
55
66
  })
56
67
  .then((proof) => {
@@ -1 +1 @@
1
- {"version":3,"file":"membership-proofs.js","sourceRoot":"","sources":["../../src/core/membership-proofs.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAElE,OAAO,EACL,4BAA4B,EAC5B,mBAAmB,EACnB,qBAAqB,GAEtB,MAAM,uBAAuB,CAAC;AAE/B,+HAA+H;AAC/H,MAAM,sBAAsB,GAAG,CAAC,CAAC;AACjC,MAAM,mBAAmB,GACvB,4BAA4B,GAAG,sBAAsB,CAAC;AAUxD,MAAM,OAAO,gBAAgB;IAKE;IAJrB,KAAK,CAAqB;IAC1B,OAAO,GAAG,KAAK,CAAC;IAChB,KAAK,CAA6C;IAE1D,YAA6B,IAAoC;QAApC,SAAI,GAAJ,IAAI,CAAgC;IAAG,CAAC;IAErE,+GAA+G;IAC/G,WAAW;QACT,OAAO,IAAI,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC;IACpE,CAAC;IAED,oJAAoJ;IACpJ,KAAK;QACH,IAAI,CAAC,IAAI,EAAE,CAAC;QACZ,IAAI,CAAC,OAAO,EAAE,CAAC;QACf,IAAI,CAAC,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE;YAC5B,IAAI,CAAC,OAAO,EAAE,CAAC;QACjB,CAAC,EAAE,mBAAmB,CAAC,CAAC;QACxB,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;IACrB,CAAC;IAED,IAAI;QACF,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC1B,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC;IACzB,CAAC;IAED,iJAAiJ;IACjJ,KAAK,CAAC,MAAM,CACV,KAA2E;QAE3E,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;QAChE,OAAO,qBAAqB,CAAC;YAC3B,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,QAAQ,EAAE,eAAe,CAAC,KAAK,CAAC,SAAS,CAAC;YAC1C,WAAW,EAAE,eAAe,CAAC,KAAK,CAAC,YAAY,CAAC;YAChD,QAAQ;YACR,KAAK;YACL,UAAU;SACX,CAAC,CAAC;IACL,CAAC;IAEO,OAAO;QACb,IAAI,IAAI,CAAC,OAAO;YAAE,OAAO;QACzB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,MAAM,EAAE,YAAY,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;QACxD,mBAAmB,CAAC;YAClB,YAAY;YACZ,KAAK;YACL,QAAQ,EAAE,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;SACjD,CAAC;aACC,IAAI,CACH,CAAC,KAAK,EAAE,EAAE;YACR,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACrB,CAAC,EACD,CAAC,KAAc,EAAE,EAAE;YACjB,IAAI,CAAC,IAAI,CAAC,OAAO,CACf,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAC1D,CAAC;QACJ,CAAC,CACF;aACA,OAAO,CAAC,GAAG,EAAE;YACZ,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACvB,CAAC,CAAC,CAAC;IACP,CAAC;CACF"}
1
+ {"version":3,"file":"membership-proofs.js","sourceRoot":"","sources":["../../src/core/membership-proofs.ts"],"names":[],"mappings":"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"}
@@ -7,7 +7,7 @@ import type { RevocationView } from "wire-mesh-core/domain/revocation-view";
7
7
  import type { KeyValueStorage } from "wire-mesh-core/ports/storage";
8
8
  import type { IdentitySlot } from "./identity-store.js";
9
9
  import type { UserIdentityOptions } from "./user-identity.js";
10
- /** The identity/clock/persistence collaborators MeshStore mints and persists room-membership grants against. Set via setIdentity(), mirroring the transport's own setTransport() contract. dataStorage backs this device's own room-notice oplog (P5, agent-comms#50) -- the same KeyValueStorage instance WireMeshTransport's own dataStorage constructor parameter is wired with, so a durable sendRoomMessage and the transport's own data-domain responder read and write the identical log. userIdentity/userIdentityOptions are the user-principal identity (user-identity.ts, agent-comms#160) this store's own bridge slot shares with every other bridge on this machine account -- distinct from `identity` above, which is this specific bridge's own per-slot device identity; userIdentity is what a dm:send grant (agent-comms#162) is minted and verified against. userIdentityOptions is threaded through purely so RoomLifecycle's own admit/revoke methods can find the same on-disk record userIdentity was loaded from, to persist issued-grant bookkeeping against it. */
10
+ /** The identity/clock/persistence collaborators MeshStore mints and persists room-membership grants against. Set via setIdentity(), mirroring the transport's own setTransport() contract. dataStorage backs this device's own room-notice oplog (P5, agent-comms#50): the same KeyValueStorage instance WireMeshTransport's own dataStorage constructor parameter is wired with, so a durable sendRoomMessage and the transport's own data-domain responder read and write the identical log. userIdentity/userIdentityOptions are the user-principal identity (user-identity.ts, agent-comms#160) this store's own bridge slot shares with every other bridge of this account, distinct from `identity`, which is this specific bridge's own per-slot device identity; userIdentity is what a dm:send grant (agent-comms#162) is minted and verified against. userIdentityOptions is threaded through purely so RoomLifecycle's own admit/revoke methods can find the same on-disk record userIdentity was loaded from, to persist issued-grant bookkeeping against it. machineIdentity is this account's machine identity for the host (machine-identity.ts, agent-comms#343), shared by every bridge the account runs there: the second grouping issuer this store's device is vouched for by. */
11
11
  export interface MeshStoreIdentity {
12
12
  identity: IdentityPort;
13
13
  clock: Clock;
@@ -16,6 +16,7 @@ export interface MeshStoreIdentity {
16
16
  dataStorage: KeyValueStorage;
17
17
  userIdentity: IdentityPort;
18
18
  userIdentityOptions: Readonly<UserIdentityOptions>;
19
+ machineIdentity: IdentityPort;
19
20
  }
20
21
  export declare const ROOM_TOKEN_LIFETIME_MS: number;
21
22
  export declare const DM_SEND_GRANT_LIFETIME_MS: number;
@@ -1 +1 @@
1
- {"version":3,"file":"mesh-store-shared.d.ts","sourceRoot":"","sources":["../../src/core/mesh-store-shared.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAC;AACxD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uCAAuC,CAAC;AAC5E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAE9D,+hCAA+hC;AAC/hC,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,YAAY,CAAC;IACvB,KAAK,EAAE,KAAK,CAAC;IACb,IAAI,EAAE,YAAY,CAAC;IACnB,UAAU,EAAE,cAAc,CAAC;IAC3B,WAAW,EAAE,eAAe,CAAC;IAC7B,YAAY,EAAE,YAAY,CAAC;IAC3B,mBAAmB,EAAE,QAAQ,CAAC,mBAAmB,CAAC,CAAC;CACpD;AAUD,eAAO,MAAM,sBAAsB,QAKpB,CAAC;AAIhB,eAAO,MAAM,yBAAyB,QAKvB,CAAC;AAEhB,mPAAmP;AACnP,MAAM,MAAM,gBAAgB,GACxB;IAAE,IAAI,EAAE,QAAQ,CAAA;CAAE,GAClB;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,GACnC;IAAE,IAAI,EAAE,SAAS,CAAA;CAAE,CAAC;AAExB;;GAEG;AACH,eAAO,MAAM,+BAA+B,MAAM,CAAC;AAEnD,2QAA2Q;AAC3Q,eAAO,MAAM,oCAAoC,MAAM,CAAC;AAIxD,eAAO,MAAM,2BAA2B,QAIzB,CAAC;AAEhB,yPAAyP;AACzP,eAAO,MAAM,gBAAgB,cAAc,CAAC;AAE5C,4TAA4T;AAC5T,eAAO,MAAM,eAAe,0BAA0B,CAAC;AAOvD;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,CAAC,SAAS;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,EAC1C,KAAK,EAAE,SAAS,CAAC,EAAE,EAAE,QAAQ,EAAE,SAAS,CAAC,EAAE,GAAG,CAAC,EAAE,CAgBlD"}
1
+ {"version":3,"file":"mesh-store-shared.d.ts","sourceRoot":"","sources":["../../src/core/mesh-store-shared.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAC;AACxD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uCAAuC,CAAC;AAC5E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAE9D,suCAAsuC;AACtuC,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,YAAY,CAAC;IACvB,KAAK,EAAE,KAAK,CAAC;IACb,IAAI,EAAE,YAAY,CAAC;IACnB,UAAU,EAAE,cAAc,CAAC;IAC3B,WAAW,EAAE,eAAe,CAAC;IAC7B,YAAY,EAAE,YAAY,CAAC;IAC3B,mBAAmB,EAAE,QAAQ,CAAC,mBAAmB,CAAC,CAAC;IACnD,eAAe,EAAE,YAAY,CAAC;CAC/B;AAUD,eAAO,MAAM,sBAAsB,QAKpB,CAAC;AAIhB,eAAO,MAAM,yBAAyB,QAKvB,CAAC;AAEhB,mPAAmP;AACnP,MAAM,MAAM,gBAAgB,GACxB;IAAE,IAAI,EAAE,QAAQ,CAAA;CAAE,GAClB;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,GACnC;IAAE,IAAI,EAAE,SAAS,CAAA;CAAE,CAAC;AAExB;;GAEG;AACH,eAAO,MAAM,+BAA+B,MAAM,CAAC;AAEnD,2QAA2Q;AAC3Q,eAAO,MAAM,oCAAoC,MAAM,CAAC;AAIxD,eAAO,MAAM,2BAA2B,QAIzB,CAAC;AAEhB,yPAAyP;AACzP,eAAO,MAAM,gBAAgB,cAAc,CAAC;AAE5C,4TAA4T;AAC5T,eAAO,MAAM,eAAe,0BAA0B,CAAC;AAOvD;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,CAAC,SAAS;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,EAC1C,KAAK,EAAE,SAAS,CAAC,EAAE,EAAE,QAAQ,EAAE,SAAS,CAAC,EAAE,GAAG,CAAC,EAAE,CAgBlD"}
@@ -1 +1 @@
1
- {"version":3,"file":"mesh-store-shared.js","sourceRoot":"","sources":["../../src/core/mesh-store-shared.ts"],"names":[],"mappings":"AAAA;;GAEG;AAoBH;;GAEG;AACH,MAAM,wBAAwB,GAAG,EAAE,CAAC;AACpC,MAAM,aAAa,GAAG,EAAE,CAAC;AACzB,MAAM,gBAAgB,GAAG,EAAE,CAAC;AAC5B,MAAM,kBAAkB,GAAG,EAAE,CAAC;AAC9B,MAAM,aAAa,GAAG,IAAI,CAAC;AAC3B,MAAM,CAAC,MAAM,sBAAsB,GACjC,wBAAwB;IACxB,aAAa;IACb,gBAAgB;IAChB,kBAAkB;IAClB,aAAa,CAAC;AAEhB,iUAAiU;AACjU,MAAM,2BAA2B,GAAG,EAAE,CAAC;AACvC,MAAM,CAAC,MAAM,yBAAyB,GACpC,2BAA2B;IAC3B,aAAa;IACb,gBAAgB;IAChB,kBAAkB;IAClB,aAAa,CAAC;AAQhB;;GAEG;AACH,MAAM,CAAC,MAAM,+BAA+B,GAAG,GAAG,CAAC;AAEnD,2QAA2Q;AAC3Q,MAAM,CAAC,MAAM,oCAAoC,GAAG,GAAG,CAAC;AAExD,uXAAuX;AACvX,MAAM,8BAA8B,GAAG,EAAE,CAAC;AAC1C,MAAM,CAAC,MAAM,2BAA2B,GACtC,8BAA8B;IAC9B,gBAAgB;IAChB,kBAAkB;IAClB,aAAa,CAAC;AAEhB,yPAAyP;AACzP,MAAM,CAAC,MAAM,gBAAgB,GAAG,WAAW,CAAC;AAE5C,4TAA4T;AAC5T,MAAM,CAAC,MAAM,eAAe,GAAG,uBAAuB,CAAC;AAEvD,mKAAmK;AACnK,SAAS,eAAe,CAAiC,KAAQ;IAC/D,OAAO,EAAE,GAAG,KAAK,EAAE,MAAM,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;AACjD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,qBAAqB,CAEnC,KAAmB,EAAE,QAAsB;IAC3C,MAAM,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC;IACpD,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IACnD,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;QAC3B,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAClC,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3B,MAAM,IAAI,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC;YAClC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAClB,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;YACvB,SAAS;QACX,CAAC;QACD,KAAK,MAAM,MAAM,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;YAChC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC;gBAAE,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACtE,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC"}
1
+ {"version":3,"file":"mesh-store-shared.js","sourceRoot":"","sources":["../../src/core/mesh-store-shared.ts"],"names":[],"mappings":"AAAA;;GAEG;AAqBH;;GAEG;AACH,MAAM,wBAAwB,GAAG,EAAE,CAAC;AACpC,MAAM,aAAa,GAAG,EAAE,CAAC;AACzB,MAAM,gBAAgB,GAAG,EAAE,CAAC;AAC5B,MAAM,kBAAkB,GAAG,EAAE,CAAC;AAC9B,MAAM,aAAa,GAAG,IAAI,CAAC;AAC3B,MAAM,CAAC,MAAM,sBAAsB,GACjC,wBAAwB;IACxB,aAAa;IACb,gBAAgB;IAChB,kBAAkB;IAClB,aAAa,CAAC;AAEhB,iUAAiU;AACjU,MAAM,2BAA2B,GAAG,EAAE,CAAC;AACvC,MAAM,CAAC,MAAM,yBAAyB,GACpC,2BAA2B;IAC3B,aAAa;IACb,gBAAgB;IAChB,kBAAkB;IAClB,aAAa,CAAC;AAQhB;;GAEG;AACH,MAAM,CAAC,MAAM,+BAA+B,GAAG,GAAG,CAAC;AAEnD,2QAA2Q;AAC3Q,MAAM,CAAC,MAAM,oCAAoC,GAAG,GAAG,CAAC;AAExD,uXAAuX;AACvX,MAAM,8BAA8B,GAAG,EAAE,CAAC;AAC1C,MAAM,CAAC,MAAM,2BAA2B,GACtC,8BAA8B;IAC9B,gBAAgB;IAChB,kBAAkB;IAClB,aAAa,CAAC;AAEhB,yPAAyP;AACzP,MAAM,CAAC,MAAM,gBAAgB,GAAG,WAAW,CAAC;AAE5C,4TAA4T;AAC5T,MAAM,CAAC,MAAM,eAAe,GAAG,uBAAuB,CAAC;AAEvD,mKAAmK;AACnK,SAAS,eAAe,CAAiC,KAAQ;IAC/D,OAAO,EAAE,GAAG,KAAK,EAAE,MAAM,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;AACjD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,qBAAqB,CAEnC,KAAmB,EAAE,QAAsB;IAC3C,MAAM,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC;IACpD,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IACnD,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;QAC3B,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAClC,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3B,MAAM,IAAI,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC;YAClC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAClB,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;YACvB,SAAS;QACX,CAAC;QACD,KAAK,MAAM,MAAM,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;YAChC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC;gBAAE,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACtE,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -7,10 +7,10 @@
7
7
  *
8
8
  * MeshStore itself is an orchestrator: it owns the shared state (the core agents/rooms/messages/dms/deliveryQueues Maps and a handful of smaller fields) and constructs the collaborators that implement almost every behaviour against direct references into that state -- DeliveryEngine, RoomProtocol, RoomMessaging, RoomLifecycle, AgentRegistry, ConnectionApproval, StaleAgentChecker, and PeerLifecycle. Every public method below that isn't inherently a MeshStore-level concern (transport/identity wiring, init/shutdown lifecycle, the events getter, mesh visibility, listener management) is a thin delegating wrapper to whichever collaborator now owns the real implementation, kept here only because CommsStore/MeshOnlyFeatures and a handful of concrete-only call sites (tests, bridge-mesh.ts, the web server, etc.) reach these names directly on a MeshStore-typed value.
9
9
  */
10
- import { MembershipProofs } from "./membership-proofs.js";
10
+ import { GroupProofs } from "./group-proofs.js";
11
11
  import { DiscoveryManager } from "./discovery.js";
12
12
  import type { MeshStoreIdentity } from "./mesh-store-shared.js";
13
- import { GatewayTrust } from "./gateway-trust.js";
13
+ import { GatewayTrust, type VerifiedMember } from "./gateway-trust.js";
14
14
  import { type GenerateConnectionCodeOptions, type RedeemConnectionCodeOptions, type RedeemConnectionCodeResult } from "./connection-code.js";
15
15
  import type { MeshStoreOptions } from "./mesh-store-options.js";
16
16
  import type { IncomingManageRequest } from "wire-mesh-core/domain/mesh-session";
@@ -32,8 +32,8 @@ export declare class MeshStore implements CommsStore {
32
32
  readonly roomJoinApprovalTimeoutMs: number;
33
33
  /** Forwards a collaborator's failure to this store's own error channel, normalising a non-Error rejection on the way so a bridge always sees one shape. An arrow field rather than a method, so every collaborator can take it as a bare callback reference. */
34
34
  private readonly reportError;
35
- /** This device's own membership proof and the check for other devices' proofs (agent-comms#266). */
36
- readonly membership: MembershipProofs;
35
+ /** This device's own membership proofs under its user principal and its machine, and the checks for other devices' proofs (agent-comms#266, agent-comms#343). */
36
+ readonly membership: GroupProofs;
37
37
  private readonly agents;
38
38
  private readonly rooms;
39
39
  private readonly messages;
@@ -75,7 +75,7 @@ export declare class MeshStore implements CommsStore {
75
75
  /** This store's own gossip-safe agent-identity advert, synchronously, in the shape WireMeshTransport's own gossip re-advertisement timer reads on every tick -- the write half of P3.8's eventual agent register/update/offline retirement (agent-comms#48). undefined before registerAgent has ever run (nothing to advertise yet), or when this agent's own visibility isn't "visible" -- gossip already reaches every connected peer regardless of mesh-approval status (see wire-mesh-transport.ts's own allSessions/quarantine comments), so advertising a hidden or ghost agent's identity this way would leak exactly what those visibility levels exist to withhold. */
76
76
  get selfAgentAdvert(): AgentSelfAdvert | undefined;
77
77
  /**
78
- * Whether this store should hold a hub session right now. It has something to say to another machine only when it has an agent that is not a ghost and its machine trusts at least one remote device or principal. Until then, holding a session would put its device id on a public hub for nobody's benefit, and a ghost agent is by definition not reachable from anywhere. A hidden agent does hold one, and advertises only the device advert every session opens with, which is what lets it be reached by device id.
78
+ * Whether this store should hold a hub session right now. It has something to say to another machine only when it has an agent that is not a ghost and its machine trusts at least one remote device, principal or machine. Until then, holding a session would put its device id on a public hub for nobody's benefit, and a ghost agent is by definition not reachable from anywhere. A hidden agent does hold one, and advertises only the device advert every session opens with, which is what lets it be reached by device id.
79
79
  */
80
80
  private wantsHubSession;
81
81
  /** Has the hub session re-evaluate wantsHubSession now, after a change to the agent or to the trust that it reads. Changes made by another process reach it within the link's poll interval instead. */
@@ -114,11 +114,10 @@ export declare class MeshStore implements CommsStore {
114
114
  private requireTransport;
115
115
  /** Sets the identity/clock/slot this store mints and persists room-membership grants against. Must be called before createRoom() or any other identity-using method, mirroring setTransport()'s own contract. */
116
116
  setIdentity(identity: MeshStoreIdentity): void;
117
- /** Every device this side trusts only because a trusted principal vouches for it, with that principal. */
118
- listVerifiedMembers(): {
119
- device: string;
120
- principal: string;
121
- }[];
117
+ /** Every device this side trusts only because a trusted principal or machine vouches for it, with that issuer. */
118
+ listVerifiedMembers(): VerifiedMember[];
119
+ /** The machine (hex) of each device this side can place on one, keyed by device id (agent-comms#343): this device's own, and every gossiped device carrying a valid machine proof. Empty before this store's identity is attached. */
120
+ listAgentMachines(): Promise<Map<string, string>>;
122
121
  /** The set identity, or throws if setIdentity() hasn't been called yet -- the single place every identity-using method reads through, mirroring requireTransport() above. */
123
122
  private requireIdentity;
124
123
  init(): Promise<void>;
@@ -160,6 +159,8 @@ export declare class MeshStore implements CommsStore {
160
159
  presentDmGrant(counterpart: string, grant: CapabilityToken): Promise<void>;
161
160
  /** This user's own principal id (hex): the identity every device on this account shares, and the thing another user names to admit or trust this whole user rather than one device. Undefined until this store's identity is attached. */
162
161
  getUserPrincipalId(): string | undefined;
162
+ /** This store's machine id (hex, agent-comms#343): the identity every bridge this OS account runs on the host shares, and the thing another machine names to trust or revoke all of them at once. Undefined until this store's identity is attached. */
163
+ getMachineId(): string | undefined;
163
164
  /** Admits bearerId into this user's own DM-communication scope (agent-comms#162): mints and persists a dm:send grant, self-signed by this store's own user principal. Returns the minted token for the caller to deliver to bearerId out of band. Deliberately outside the CommsStore interface, like requestDmAccess above. Concrete-only -- reached directly by tests. delegationsRemaining defaults to 0 (non-delegable, the original behaviour); a positive value admits bearerId as a user principal capable of sub-delegating to its own devices (agent-comms#187) -- see RoomLifecycle.admitAgentForDm's own doc comment. */
164
165
  admitAgentForDm(bearerId: string, delegationsRemaining?: number): Promise<CapabilityToken>;
165
166
  /** Revokes bearerId's own dm:send grant for real (agent-comms#162), the DM-scope counterpart to kickFromRoom. A no-op if bearerId was never admitted. Deliberately outside the CommsStore interface, like requestDmAccess above. Concrete-only -- reached directly by tests. */
@@ -242,6 +243,12 @@ export declare class MeshStore implements CommsStore {
242
243
  removeTrustedGatewayPrincipal(deviceHex: string): void;
243
244
  /** Every currently trusted remote user-principal device-id (hex). */
244
245
  listTrustedGatewayPrincipals(): string[];
246
+ /** Trusts a remote machine device-id (hex, agent-comms#343): every device whose gossiped proof that machine vouches for becomes reachable without being trusted individually. */
247
+ addTrustedGatewayMachine(deviceHex: string): void;
248
+ /** Withdraws trust from a remote machine device-id (hex), and with it every device reachable only through that machine: revoking every bridge that machine key vouches for in one act. A no-op if it was never trusted. */
249
+ removeTrustedGatewayMachine(deviceHex: string): void;
250
+ /** Every currently trusted remote machine device-id (hex). */
251
+ listTrustedGatewayMachines(): string[];
245
252
  /** Generates a fresh single-use ConnectionCode vouching for this store's own device-id (peerId), for the operator to relay to a counterpart out of band. See ConnectionCodeLedger.generate's own doc comment for what options does. */
246
253
  generateConnectionCode(options?: Readonly<GenerateConnectionCodeOptions>): Promise<ConnectionCode>;
247
254
  /** Validates a candidate ConnectionCode (see ConnectionCodeLedger.redeem for the checks performed) and, only once it passes every check, trusts the device-id it vouches for via gatewayTrust.add -- the actual point of this whole bootstrap. A rejected candidate never reaches gatewayTrust at all. */
@@ -1 +1 @@
1
- {"version":3,"file":"mesh-store.d.ts","sourceRoot":"","sources":["../../src/core/mesh-store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mesh-store.d.ts","sourceRoot":"","sources":["../../src/core/mesh-store.ts"],"names":[],"mappings":"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"}
@@ -8,8 +8,7 @@
8
8
  * MeshStore itself is an orchestrator: it owns the shared state (the core agents/rooms/messages/dms/deliveryQueues Maps and a handful of smaller fields) and constructs the collaborators that implement almost every behaviour against direct references into that state -- DeliveryEngine, RoomProtocol, RoomMessaging, RoomLifecycle, AgentRegistry, ConnectionApproval, StaleAgentChecker, and PeerLifecycle. Every public method below that isn't inherently a MeshStore-level concern (transport/identity wiring, init/shutdown lifecycle, the events getter, mesh visibility, listener management) is a thin delegating wrapper to whichever collaborator now owns the real implementation, kept here only because CommsStore/MeshOnlyFeatures and a handful of concrete-only call sites (tests, bridge-mesh.ts, the web server, etc.) reach these names directly on a MeshStore-typed value.
9
9
  */
10
10
  import { bytesToHex, deviceIdToHex } from "wire-mesh-core/domain/device-id";
11
- import * as os from "node:os";
12
- import { MembershipProofs } from "./membership-proofs.js";
11
+ import { GroupProofs } from "./group-proofs.js";
13
12
  import { ROOM_JOIN_APPROVAL_TIMEOUT_MS, ROOM_REQUEST_TIMEOUT_MS, } from "./request-timeouts.js";
14
13
  import { CommsError } from "./store.js";
15
14
  import { DiscoveryManager } from "./discovery.js";
@@ -29,7 +28,8 @@ import { StaleAgentChecker } from "./stale-agent-checker.js";
29
28
  import { PeerLifecycle } from "./peer-lifecycle.js";
30
29
  import { CoordinatorRole, } from "./coordinator-role.js";
31
30
  import { DEFAULT_PRESENCE_STALE_AFTER_MS } from "./gossip-extensions.js";
32
- import { getPeerAgentCommsVersions, getPeerWireMeshCoreVersion, } from "./peer-versions.js";
31
+ import { getPeerAgentCommsVersions, getPeerWireMeshCoreVersion, queryPeerVersion, } from "./peer-versions.js";
32
+ import { listNetworkInterfaces } from "./network-interfaces.js";
33
33
  import { createTransportEvents } from "./transport-events.js";
34
34
  // ---------------------------------------------------------------------------
35
35
  // Constants
@@ -51,10 +51,12 @@ export class MeshStore {
51
51
  reportError = (error) => {
52
52
  this.onError?.(error instanceof Error ? error : new Error(String(error)));
53
53
  };
54
- /** This device's own membership proof and the check for other devices' proofs (agent-comms#266). */
55
- membership = new MembershipProofs({
54
+ /** This device's own membership proofs under its user principal and its machine, and the checks for other devices' proofs (agent-comms#266, agent-comms#343). */
55
+ membership = new GroupProofs({
56
56
  getIdentity: () => this.requireIdentity(),
57
+ peekIdentity: () => this.storeIdentity,
57
58
  getPeerId: () => this.peerId,
59
+ requireTransport: () => this.requireTransport(),
58
60
  onError: this.reportError,
59
61
  });
60
62
  agents = new Map();
@@ -129,11 +131,11 @@ export class MeshStore {
129
131
  startedAt: agent.startedAt,
130
132
  tags: agent.tags,
131
133
  subscribedRooms: agent.subscribedRooms,
132
- ...this.membership.advertField(),
134
+ ...this.membership.advertFields(),
133
135
  };
134
136
  }
135
137
  /**
136
- * Whether this store should hold a hub session right now. It has something to say to another machine only when it has an agent that is not a ghost and its machine trusts at least one remote device or principal. Until then, holding a session would put its device id on a public hub for nobody's benefit, and a ghost agent is by definition not reachable from anywhere. A hidden agent does hold one, and advertises only the device advert every session opens with, which is what lets it be reached by device id.
138
+ * Whether this store should hold a hub session right now. It has something to say to another machine only when it has an agent that is not a ghost and its machine trusts at least one remote device, principal or machine. Until then, holding a session would put its device id on a public hub for nobody's benefit, and a ghost agent is by definition not reachable from anywhere. A hidden agent does hold one, and advertises only the device advert every session opens with, which is what lets it be reached by device id.
137
139
  */
138
140
  wantsHubSession() {
139
141
  const self = this.agents.get(this.peerId);
@@ -336,10 +338,14 @@ export class MeshStore {
336
338
  this.storeIdentity = identity;
337
339
  this.membership.start();
338
340
  }
339
- /** Every device this side trusts only because a trusted principal vouches for it, with that principal. */
341
+ /** Every device this side trusts only because a trusted principal or machine vouches for it, with that issuer. */
340
342
  listVerifiedMembers() {
341
343
  return this.gatewayTrust.listVerifiedMembers();
342
344
  }
345
+ /** The machine (hex) of each device this side can place on one, keyed by device id (agent-comms#343): this device's own, and every gossiped device carrying a valid machine proof. Empty before this store's identity is attached. */
346
+ async listAgentMachines() {
347
+ return this.membership.machinesByDevice();
348
+ }
343
349
  /** The set identity, or throws if setIdentity() hasn't been called yet -- the single place every identity-using method reads through, mirroring requireTransport() above. */
344
350
  requireIdentity() {
345
351
  if (this.storeIdentity === undefined) {
@@ -449,6 +455,11 @@ export class MeshStore {
449
455
  const user = this.storeIdentity?.userIdentity;
450
456
  return user === undefined ? undefined : deviceIdToHex(user.deviceId);
451
457
  }
458
+ /** This store's machine id (hex, agent-comms#343): the identity every bridge this OS account runs on the host shares, and the thing another machine names to trust or revoke all of them at once. Undefined until this store's identity is attached. */
459
+ getMachineId() {
460
+ const machine = this.storeIdentity?.machineIdentity;
461
+ return machine === undefined ? undefined : deviceIdToHex(machine.deviceId);
462
+ }
452
463
  /** Admits bearerId into this user's own DM-communication scope (agent-comms#162): mints and persists a dm:send grant, self-signed by this store's own user principal. Returns the minted token for the caller to deliver to bearerId out of band. Deliberately outside the CommsStore interface, like requestDmAccess above. Concrete-only -- reached directly by tests. delegationsRemaining defaults to 0 (non-delegable, the original behaviour); a positive value admits bearerId as a user principal capable of sub-delegating to its own devices (agent-comms#187) -- see RoomLifecycle.admitAgentForDm's own doc comment. */
453
464
  async admitAgentForDm(bearerId, delegationsRemaining = 0) {
454
465
  return this.roomLifecycle.admitAgentForDm(bearerId, delegationsRemaining);
@@ -617,6 +628,20 @@ export class MeshStore {
617
628
  listTrustedGatewayPrincipals() {
618
629
  return this.gatewayTrust.listPrincipals();
619
630
  }
631
+ /** Trusts a remote machine device-id (hex, agent-comms#343): every device whose gossiped proof that machine vouches for becomes reachable without being trusted individually. */
632
+ addTrustedGatewayMachine(deviceHex) {
633
+ this.gatewayTrust.addMachine(deviceHex);
634
+ this.reconsiderHub();
635
+ }
636
+ /** Withdraws trust from a remote machine device-id (hex), and with it every device reachable only through that machine: revoking every bridge that machine key vouches for in one act. A no-op if it was never trusted. */
637
+ removeTrustedGatewayMachine(deviceHex) {
638
+ this.gatewayTrust.removeMachine(deviceHex);
639
+ this.reconsiderHub();
640
+ }
641
+ /** Every currently trusted remote machine device-id (hex). */
642
+ listTrustedGatewayMachines() {
643
+ return this.gatewayTrust.listMachines();
644
+ }
620
645
  // -----------------------------------------------------------------------
621
646
  // Connection codes (agent-comms#188) -- bootstrapping gateway trust with no existing mesh connection between the two devices
622
647
  // -----------------------------------------------------------------------
@@ -666,21 +691,7 @@ export class MeshStore {
666
691
  return transport.meshTrace(target, timeoutMs);
667
692
  }
668
693
  getNetworkInterfaces() {
669
- const interfaces = os.networkInterfaces();
670
- const result = [];
671
- for (const [name, addrs] of Object.entries(interfaces)) {
672
- if (addrs === undefined)
673
- continue;
674
- for (const addr of addrs) {
675
- result.push({
676
- name,
677
- address: addr.address,
678
- family: addr.family,
679
- internal: addr.internal,
680
- });
681
- }
682
- }
683
- return result;
694
+ return listNetworkInterfaces();
684
695
  }
685
696
  // -----------------------------------------------------------------------
686
697
  // Peer versions (agent-comms#198) -- the cached, gossip-backed path
@@ -703,21 +714,7 @@ export class MeshStore {
703
714
  // -----------------------------------------------------------------------
704
715
  /** Asks deviceId for its own, currently-running wire-mesh-core version live, right now, rather than trusting whatever it last gossiped -- the query_version action's own backing call. Resolves to a plain, provider-neutral result rather than leaking wire-mesh-core's own ManageOutcome type up to CommsTool, which has no other reason to know that type exists. */
705
716
  async queryVersion(deviceId) {
706
- const transport = this.requireTransport();
707
- if (transport.queryVersion === undefined) {
708
- return {
709
- error: "this transport does not support querying a peer's version",
710
- };
711
- }
712
- const outcome = await transport.queryVersion(deviceId);
713
- if (outcome.result === "error") {
714
- return { error: outcome.message ?? outcome.code };
715
- }
716
- const version = outcome.version;
717
- if (typeof version !== "string") {
718
- return { error: "peer answered version.get with no version string" };
719
- }
720
- return { version };
717
+ return queryPeerVersion(this.requireTransport(), deviceId);
721
718
  }
722
719
  // -----------------------------------------------------------------------
723
720
  // Shutdown
@@ -1 +1 @@
1
- {"version":3,"file":"mesh-store.js","sourceRoot":"","sources":["../../src/core/mesh-store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mesh-store.js","sourceRoot":"","sources":["../../src/core/mesh-store.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * This host's network interfaces in the provider-neutral shape the mesh_interfaces action reports (MeshStore.getNetworkInterfaces's body, split out to keep mesh-store.ts under the repo's max-lines cap).
3
+ */
4
+ import type { NetworkInterface } from "./types.js";
5
+ /** Every address on every interface of this host, as os.networkInterfaces reports them. */
6
+ export declare function listNetworkInterfaces(): NetworkInterface[];
7
+ //# sourceMappingURL=network-interfaces.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"network-interfaces.d.ts","sourceRoot":"","sources":["../../src/core/network-interfaces.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAEnD,2FAA2F;AAC3F,wBAAgB,qBAAqB,IAAI,gBAAgB,EAAE,CAe1D"}
@@ -0,0 +1,23 @@
1
+ /**
2
+ * This host's network interfaces in the provider-neutral shape the mesh_interfaces action reports (MeshStore.getNetworkInterfaces's body, split out to keep mesh-store.ts under the repo's max-lines cap).
3
+ */
4
+ import * as os from "node:os";
5
+ /** Every address on every interface of this host, as os.networkInterfaces reports them. */
6
+ export function listNetworkInterfaces() {
7
+ const interfaces = os.networkInterfaces();
8
+ const result = [];
9
+ for (const [name, addrs] of Object.entries(interfaces)) {
10
+ if (addrs === undefined)
11
+ continue;
12
+ for (const addr of addrs) {
13
+ result.push({
14
+ name,
15
+ address: addr.address,
16
+ family: addr.family,
17
+ internal: addr.internal,
18
+ });
19
+ }
20
+ }
21
+ return result;
22
+ }
23
+ //# sourceMappingURL=network-interfaces.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"network-interfaces.js","sourceRoot":"","sources":["../../src/core/network-interfaces.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAG9B,2FAA2F;AAC3F,MAAM,UAAU,qBAAqB;IACnC,MAAM,UAAU,GAAG,EAAE,CAAC,iBAAiB,EAAE,CAAC;IAC1C,MAAM,MAAM,GAAuB,EAAE,CAAC;IACtC,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;QACvD,IAAI,KAAK,KAAK,SAAS;YAAE,SAAS;QAClC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,MAAM,CAAC,IAAI,CAAC;gBACV,IAAI;gBACJ,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,QAAQ,EAAE,IAAI,CAAC,QAAQ;aACxB,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -13,4 +13,10 @@ export interface AgentCommsVersionsAdvert {
13
13
  export declare function getPeerWireMeshCoreVersion(transport: Readonly<Pick<MeshTransport, "listKnownDevices">>, deviceId: string): string | undefined;
14
14
  /** This device's own gossiped agent-comms/cc-peer versions, if this side has heard it advertise any -- undefined under the same conditions getPeerWireMeshCoreVersion documents, or when the device gossiped something that doesn't conform to AgentCommsVersionsAdvert's own shape. */
15
15
  export declare function getPeerAgentCommsVersions(transport: Readonly<Pick<MeshTransport, "listKnownDevices">>, deviceId: string): AgentCommsVersionsAdvert | undefined;
16
+ /** Asks deviceId over transport for its own, currently-running wire-mesh-core version, live (MeshStore.queryVersion's body, split out to keep mesh-store.ts under the repo's max-lines cap). Resolves to a plain, provider-neutral result rather than wire-mesh-core's own ManageOutcome type. */
17
+ export declare function queryPeerVersion(transport: Readonly<MeshTransport>, deviceId: string): Promise<{
18
+ version: string;
19
+ } | {
20
+ error: string;
21
+ }>;
16
22
  //# sourceMappingURL=peer-versions.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"peer-versions.d.ts","sourceRoot":"","sources":["../../src/core/peer-versions.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAEpD,wlBAAwlB;AACxlB,eAAO,MAAM,8BAA8B,wBAAwB,CAAC;AAEpE,gYAAgY;AAChY,MAAM,WAAW,wBAAwB;IACvC,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAgBD,mQAAmQ;AACnQ,wBAAgB,0BAA0B,CACxC,SAAS,EAAE,QAAQ,CAAC,IAAI,CAAC,aAAa,EAAE,kBAAkB,CAAC,CAAC,EAC5D,QAAQ,EAAE,MAAM,GACf,MAAM,GAAG,SAAS,CAQpB;AAED,wRAAwR;AACxR,wBAAgB,yBAAyB,CACvC,SAAS,EAAE,QAAQ,CAAC,IAAI,CAAC,aAAa,EAAE,kBAAkB,CAAC,CAAC,EAC5D,QAAQ,EAAE,MAAM,GACf,wBAAwB,GAAG,SAAS,CAQtC"}
1
+ {"version":3,"file":"peer-versions.d.ts","sourceRoot":"","sources":["../../src/core/peer-versions.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAEpD,wlBAAwlB;AACxlB,eAAO,MAAM,8BAA8B,wBAAwB,CAAC;AAEpE,gYAAgY;AAChY,MAAM,WAAW,wBAAwB;IACvC,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAgBD,mQAAmQ;AACnQ,wBAAgB,0BAA0B,CACxC,SAAS,EAAE,QAAQ,CAAC,IAAI,CAAC,aAAa,EAAE,kBAAkB,CAAC,CAAC,EAC5D,QAAQ,EAAE,MAAM,GACf,MAAM,GAAG,SAAS,CAQpB;AAED,wRAAwR;AACxR,wBAAgB,yBAAyB,CACvC,SAAS,EAAE,QAAQ,CAAC,IAAI,CAAC,aAAa,EAAE,kBAAkB,CAAC,CAAC,EAC5D,QAAQ,EAAE,MAAM,GACf,wBAAwB,GAAG,SAAS,CAQtC;AAED,kSAAkS;AAClS,wBAAsB,gBAAgB,CACpC,SAAS,EAAE,QAAQ,CAAC,aAAa,CAAC,EAClC,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC;IAAE,OAAO,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC,CAelD"}
@@ -39,4 +39,21 @@ export function getPeerAgentCommsVersions(transport, deviceId) {
39
39
  }
40
40
  return undefined;
41
41
  }
42
+ /** Asks deviceId over transport for its own, currently-running wire-mesh-core version, live (MeshStore.queryVersion's body, split out to keep mesh-store.ts under the repo's max-lines cap). Resolves to a plain, provider-neutral result rather than wire-mesh-core's own ManageOutcome type. */
43
+ export async function queryPeerVersion(transport, deviceId) {
44
+ if (transport.queryVersion === undefined) {
45
+ return {
46
+ error: "this transport does not support querying a peer's version",
47
+ };
48
+ }
49
+ const outcome = await transport.queryVersion(deviceId);
50
+ if (outcome.result === "error") {
51
+ return { error: outcome.message ?? outcome.code };
52
+ }
53
+ const version = outcome.version;
54
+ if (typeof version !== "string") {
55
+ return { error: "peer answered version.get with no version string" };
56
+ }
57
+ return { version };
58
+ }
42
59
  //# sourceMappingURL=peer-versions.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"peer-versions.js","sourceRoot":"","sources":["../../src/core/peer-versions.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,wlBAAwlB;AACxlB,MAAM,CAAC,MAAM,8BAA8B,GAAG,qBAAqB,CAAC;AAQpE,8TAA8T;AAC9T,MAAM,iCAAiC,GAAG,mBAAmB,CAAC;AAE9D,kWAAkW;AAClW,SAAS,0BAA0B,CACjC,KAAc;IAEd,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IAC9D,IAAI,CAAC,CAAC,YAAY,IAAI,KAAK,CAAC,IAAI,OAAO,KAAK,CAAC,UAAU,KAAK,QAAQ;QAClE,OAAO,KAAK,CAAC;IACf,IAAI,QAAQ,IAAI,KAAK,IAAI,OAAO,KAAK,CAAC,MAAM,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IACxE,OAAO,IAAI,CAAC;AACd,CAAC;AAED,mQAAmQ;AACnQ,MAAM,UAAU,0BAA0B,CACxC,SAA4D,EAC5D,QAAgB;IAEhB,IAAI,SAAS,CAAC,gBAAgB,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAC/D,KAAK,MAAM,KAAK,IAAI,SAAS,CAAC,gBAAgB,EAAE,EAAE,CAAC;QACjD,IAAI,KAAK,CAAC,QAAQ,KAAK,QAAQ;YAAE,SAAS;QAC1C,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,iCAAiC,CAAC,CAAC;QAChE,OAAO,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;IAC3D,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,wRAAwR;AACxR,MAAM,UAAU,yBAAyB,CACvC,SAA4D,EAC5D,QAAgB;IAEhB,IAAI,SAAS,CAAC,gBAAgB,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAC/D,KAAK,MAAM,KAAK,IAAI,SAAS,CAAC,gBAAgB,EAAE,EAAE,CAAC;QACjD,IAAI,KAAK,CAAC,QAAQ,KAAK,QAAQ;YAAE,SAAS;QAC1C,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,8BAA8B,CAAC,CAAC;QAC/D,OAAO,0BAA0B,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;IACvE,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC"}
1
+ {"version":3,"file":"peer-versions.js","sourceRoot":"","sources":["../../src/core/peer-versions.ts"],"names":[],"mappings":"AAAA;;GAEG;AAKH,wlBAAwlB;AACxlB,MAAM,CAAC,MAAM,8BAA8B,GAAG,qBAAqB,CAAC;AAQpE,8TAA8T;AAC9T,MAAM,iCAAiC,GAAG,mBAAmB,CAAC;AAE9D,kWAAkW;AAClW,SAAS,0BAA0B,CACjC,KAAc;IAEd,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IAC9D,IAAI,CAAC,CAAC,YAAY,IAAI,KAAK,CAAC,IAAI,OAAO,KAAK,CAAC,UAAU,KAAK,QAAQ;QAClE,OAAO,KAAK,CAAC;IACf,IAAI,QAAQ,IAAI,KAAK,IAAI,OAAO,KAAK,CAAC,MAAM,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IACxE,OAAO,IAAI,CAAC;AACd,CAAC;AAED,mQAAmQ;AACnQ,MAAM,UAAU,0BAA0B,CACxC,SAA4D,EAC5D,QAAgB;IAEhB,IAAI,SAAS,CAAC,gBAAgB,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAC/D,KAAK,MAAM,KAAK,IAAI,SAAS,CAAC,gBAAgB,EAAE,EAAE,CAAC;QACjD,IAAI,KAAK,CAAC,QAAQ,KAAK,QAAQ;YAAE,SAAS;QAC1C,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,iCAAiC,CAAC,CAAC;QAChE,OAAO,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;IAC3D,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,wRAAwR;AACxR,MAAM,UAAU,yBAAyB,CACvC,SAA4D,EAC5D,QAAgB;IAEhB,IAAI,SAAS,CAAC,gBAAgB,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAC/D,KAAK,MAAM,KAAK,IAAI,SAAS,CAAC,gBAAgB,EAAE,EAAE,CAAC;QACjD,IAAI,KAAK,CAAC,QAAQ,KAAK,QAAQ;YAAE,SAAS;QAC1C,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,8BAA8B,CAAC,CAAC;QAC/D,OAAO,0BAA0B,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;IACvE,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,kSAAkS;AAClS,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,SAAkC,EAClC,QAAgB;IAEhB,IAAI,SAAS,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;QACzC,OAAO;YACL,KAAK,EAAE,2DAA2D;SACnE,CAAC;IACJ,CAAC;IACD,MAAM,OAAO,GAAkB,MAAM,SAAS,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;IACtE,IAAI,OAAO,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;QAC/B,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;IACpD,CAAC;IACD,MAAM,OAAO,GAAY,OAAO,CAAC,OAAO,CAAC;IACzC,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;QAChC,OAAO,EAAE,KAAK,EAAE,kDAAkD,EAAE,CAAC;IACvE,CAAC;IACD,OAAO,EAAE,OAAO,EAAE,CAAC;AACrB,CAAC"}