@cello-protocol/transport 0.0.65 → 0.0.66

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.
@@ -51,9 +51,17 @@ export declare class TestDirectoryChallengeVerifier implements IDirectoryChallen
51
51
  * 4. Call ed25519.verify(sigBytes, tbsBytes, pubkeyBytes).
52
52
  * 5. Return the result; catch all errors and return false.
53
53
  */
54
+ /**
55
+ * ⚠️ NOT A STUB, despite the filename. Wired in production twice by `manifest-deps.ts`. Anyone
56
+ * reading `manifest-stubs.ts` and assuming test-only is wrong about this one class.
57
+ */
54
58
  export declare class ManifestDirectoryChallengeVerifier implements IDirectoryChallengeVerifier {
55
59
  #private;
56
- constructor(manifestProvider: IManifestProvider);
60
+ constructor(manifestProvider: IManifestProvider, onExpiredManifest?: (info: {
61
+ nodeId: string;
62
+ version: number;
63
+ expires: string;
64
+ }) => void);
57
65
  verifyChallenge(nodeId: string, tbsBytes: Uint8Array, signatureHex: string): ChallengeVerifyResult;
58
66
  }
59
67
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"manifest-stubs.d.ts","sourceRoot":"","sources":["../src/manifest-stubs.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACzE,OAAO,KAAK,EACV,qBAAqB,EACrB,iBAAiB,EACjB,2BAA2B,EAC3B,qBAAqB,EACrB,sBAAsB,EACtB,oBAAoB,EACpB,sBAAsB,EACvB,MAAM,0BAA0B,CAAC;AAIlC;;;;GAIG;AACH,qBAAa,4BAA6B,YAAW,qBAAqB;;IAGlE,kBAAkB,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAI5C,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAGrD;AAID;;;;GAIG;AACH,qBAAa,oBAAqB,YAAW,iBAAiB;;gBAIhD,QAAQ,EAAE,kBAAkB;IAIlC,aAAa,CAAC,SAAS,EAAE,SAAS,MAAM,EAAE,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAKlG,kBAAkB,IAAI,kBAAkB,GAAG,IAAI;IAI/C,cAAc,CAAC,QAAQ,EAAE,kBAAkB,GAAG,IAAI;CAInD;AAID;;;GAGG;AACH,qBAAa,8BAA+B,YAAW,2BAA2B;;IAIhF,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAIlC,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAInC,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,GAAG,qBAAqB;CASrG;AAED;;;;;;;;;;GAUG;AACH,qBAAa,kCAAmC,YAAW,2BAA2B;;gBAGxE,gBAAgB,EAAE,iBAAiB;IAI/C,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,GAAG,qBAAqB;CA2BnG;AAID;;GAEG;AACH,qBAAa,sBAAuB,YAAW,sBAAsB;;gBAIvD,OAAO,SAAI;IAIvB,YAAY,CAAC,UAAU,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI;IAWnD,MAAM,IAAI,IAAI;CAMf;AAID;;;;GAIG;AACH,qBAAa,wBAAyB,YAAW,oBAAoB;;gBAIvD,IAAI,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,aAAa,EAAE,MAAM,CAAA;KAAE;IAQ3D,SAAS,IAAI,MAAM;IAInB,qFAAqF;IAC/E,IAAI,CAAC,QAAQ,EAAE,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;IAIrD,sEAAsE;IACtE,eAAe,IAAI,MAAM;CAG1B;AAID;;GAEG;AACH,qBAAa,0BAA2B,YAAW,sBAAsB;;gBAG3D,QAAQ,EAAE,kBAAkB;IAIxC,kBAAkB,IAAI,kBAAkB;CAGzC"}
1
+ {"version":3,"file":"manifest-stubs.d.ts","sourceRoot":"","sources":["../src/manifest-stubs.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACzE,OAAO,KAAK,EACV,qBAAqB,EACrB,iBAAiB,EACjB,2BAA2B,EAC3B,qBAAqB,EACrB,sBAAsB,EACtB,oBAAoB,EACpB,sBAAsB,EACvB,MAAM,0BAA0B,CAAC;AAIlC;;;;GAIG;AACH,qBAAa,4BAA6B,YAAW,qBAAqB;;IAGlE,kBAAkB,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAI5C,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAGrD;AAID;;;;GAIG;AACH,qBAAa,oBAAqB,YAAW,iBAAiB;;gBAIhD,QAAQ,EAAE,kBAAkB;IAIlC,aAAa,CAAC,SAAS,EAAE,SAAS,MAAM,EAAE,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAKlG,kBAAkB,IAAI,kBAAkB,GAAG,IAAI;IAI/C,cAAc,CAAC,QAAQ,EAAE,kBAAkB,GAAG,IAAI;CAInD;AAID;;;GAGG;AACH,qBAAa,8BAA+B,YAAW,2BAA2B;;IAIhF,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAIlC,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAInC,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,GAAG,qBAAqB;CASrG;AAED;;;;;;;;;;GAUG;AACH;;;GAGG;AACH,qBAAa,kCAAmC,YAAW,2BAA2B;;gBAgBlF,gBAAgB,EAAE,iBAAiB,EACnC,iBAAiB,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI;IAM1F,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,GAAG,qBAAqB;CAkFnG;AAID;;GAEG;AACH,qBAAa,sBAAuB,YAAW,sBAAsB;;gBAIvD,OAAO,SAAI;IAIvB,YAAY,CAAC,UAAU,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI;IAWnD,MAAM,IAAI,IAAI;CAMf;AAID;;;;GAIG;AACH,qBAAa,wBAAyB,YAAW,oBAAoB;;gBAIvD,IAAI,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,aAAa,EAAE,MAAM,CAAA;KAAE;IAQ3D,SAAS,IAAI,MAAM;IAInB,qFAAqF;IAC/E,IAAI,CAAC,QAAQ,EAAE,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;IAIrD,sEAAsE;IACtE,eAAe,IAAI,MAAM;CAG1B;AAID;;GAEG;AACH,qBAAa,0BAA2B,YAAW,sBAAsB;;gBAG3D,QAAQ,EAAE,kBAAkB;IAIxC,kBAAkB,IAAI,kBAAkB;CAGzC"}
@@ -81,10 +81,27 @@ export class TestDirectoryChallengeVerifier {
81
81
  * 4. Call ed25519.verify(sigBytes, tbsBytes, pubkeyBytes).
82
82
  * 5. Return the result; catch all errors and return false.
83
83
  */
84
+ /**
85
+ * ⚠️ NOT A STUB, despite the filename. Wired in production twice by `manifest-deps.ts`. Anyone
86
+ * reading `manifest-stubs.ts` and assuming test-only is wrong about this one class.
87
+ */
84
88
  export class ManifestDirectoryChallengeVerifier {
85
89
  #manifestProvider;
86
- constructor(manifestProvider) {
90
+ /**
91
+ * DOD-M15-EXPIRY-CONSUMER-POLICY-1. Called once per (manifest version, nodeId) when a directory
92
+ * has been SUCCESSFULLY authenticated against a manifest whose validity window has closed — so
93
+ * `nodeId` is a verified identity, never the peer's unchecked claim.
94
+ *
95
+ * Optional only because seven existing test constructions do not pass it; every production wiring
96
+ * does. **Absent means silence**, which is the old defect — so a new caller that omits it is
97
+ * choosing that, and should not.
98
+ */
99
+ #onExpiredManifest;
100
+ /** `${version}\u001f${nodeId}` already reported — per challenge would flood; per node does not. */
101
+ #reportedLapsed = new Set();
102
+ constructor(manifestProvider, onExpiredManifest) {
87
103
  this.#manifestProvider = manifestProvider;
104
+ this.#onExpiredManifest = onExpiredManifest;
88
105
  }
89
106
  verifyChallenge(nodeId, tbsBytes, signatureHex) {
90
107
  try {
@@ -106,7 +123,63 @@ export class ManifestDirectoryChallengeVerifier {
106
123
  const sigBytes = hexToBytes(signatureHex);
107
124
  // RFC 8032: ed25519.verify(signature, message, publicKey)
108
125
  const ok = ed25519.verify(sigBytes, tbsBytes, pubkeyBytes);
109
- return ok ? { valid: true } : { valid: false, reason: "signature_invalid" };
126
+ if (!ok)
127
+ return { valid: false, reason: "signature_invalid" };
128
+ /**
129
+ * DOD-M15-EXPIRY-CONSUMER-POLICY-1 — this consumer PERMITS on a lapsed manifest, deliberately,
130
+ * and now says so instead of being silent about it.
131
+ *
132
+ * **Why not refuse.** This authenticates a directory node on the signaling path. Refuse here
133
+ * and a long-running daemon whose manifest lapsed cannot authenticate ANY directory — it goes
134
+ * effectively offline, every agent with it, for a manifest that was valid when the process
135
+ * started. The residual risk needs a node REMOVED or ROTATED since the lapse.
136
+ *
137
+ * ─── WHY THIS SITS AFTER THE VERIFY, AND NOT WHERE I FIRST PUT IT ────────────────────────
138
+ *
139
+ * The first version ran BEFORE the node lookup and the signature check, and all three
140
+ * consequences were wrong:
141
+ * 1. **The message was false in the failure case.** It says a directory *was authenticated*;
142
+ * from up there the very next line can return `key_not_in_manifest`.
143
+ * 2. **`nodeId` was unauthenticated remote input** — the peer's own claim, verified after.
144
+ * 3. **The once-per-version budget was BURNABLE BY THE ADVERSARY.** A rogue directory — the
145
+ * exact threat this check exists for — sends any `nodeId`, spends the budget, and every
146
+ * genuine authentication against the lapsed anchor is silent for that manifest version.
147
+ * A security signal an attacker can switch off is worse than none, because its absence
148
+ * reads as safety.
149
+ * On the success path all three vanish: the text is true, `nodeId` is a verified identity, and
150
+ * only a real directory can spend the budget.
151
+ *
152
+ * Keyed on (version, nodeId): a per-manifest condition, reported once per node rather than per
153
+ * challenge. Challenges are continuous; N nodes give N events per manifest lifetime, not a
154
+ * flood.
155
+ */
156
+ const expiresMs = Date.parse(manifest.expires);
157
+ if (!Number.isFinite(expiresMs) || expiresMs <= Date.now()) {
158
+ const seen = `${manifest.version}\u001f${nodeId}`;
159
+ if (!this.#reportedLapsed.has(seen)) {
160
+ /**
161
+ * ─── The inner catch is what holds the property, not this block's POSITION ────────────
162
+ *
163
+ * This code is lexically INSIDE the outer `try`, whose handler returns `signature_invalid`
164
+ * — so without the catch below, a throwing logger would report that this directory FORGED
165
+ * ITS IDENTITY PROOF. A reporting failure must never fail an authentication, and must
166
+ * never be described as one. (Said precisely because an earlier version of this comment
167
+ * claimed the position did the work; it does not.)
168
+ *
169
+ * ⚠️ AND THE BUDGET IS SPENT ONLY IF THE REPORT ACTUALLY LANDED — pass 2. `add(seen)` used
170
+ * to run BEFORE the call, so one transient sink failure burned the key for the process
171
+ * lifetime and the signal went permanently silent for that (version, node). That is the
172
+ * same "absence reads as safety" argument accepted for the adversary, with a flaky logger
173
+ * as the actor instead.
174
+ */
175
+ try {
176
+ this.#onExpiredManifest?.({ nodeId, version: manifest.version, expires: manifest.expires });
177
+ this.#reportedLapsed.add(seen);
178
+ }
179
+ catch { /* a report is not a verdict — and a failed one does not count as reported */ }
180
+ }
181
+ }
182
+ return { valid: true };
110
183
  }
111
184
  catch {
112
185
  return { valid: false, reason: "signature_invalid" };
@@ -1 +1 @@
1
- {"version":3,"file":"manifest-stubs.js","sourceRoot":"","sources":["../src/manifest-stubs.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"manifest-stubs.js","sourceRoot":"","sources":["../src/manifest-stubs.ts"],"names":[],"mappings":"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"}
package/dist/node.d.ts CHANGED
@@ -58,10 +58,16 @@ export declare function isValidMultiaddr(addr: string): boolean;
58
58
  * receiver) it probes connected directory nodes for dial-back to determine
59
59
  * dialability; on directory nodes it serves the responder role, answering
60
60
  * dial-back requests. Protocol: /libp2p/autonat/1.0.0.
61
- * - dcutr() is included on EVERY node type (DOD-NAT-REACHABILITY-1). The
61
+ * - dcutr() is included on every node type BY DEFAULT (DOD-NAT-REACHABILITY-1). The
62
62
  * protocol's inbound peer is the one that STARTS the hole-punch upgrade
63
63
  * (@libp2p/dcutr ignores connections with direction !== 'inbound'), and the
64
64
  * inbound peer of a relayed connection is precisely the standing receiver.
65
+ * ⚠️ `opts.holePunch: { enabled: false }` OMITS it (DOD-M15-RELAYONLY-1), and the sentence
66
+ * directly above is the reason it had to become optional: if the inbound side starts the
67
+ * upgrade, a node whose operator asked never to be directly reachable would hole-punch itself
68
+ * into exactly the direct connection they switched the setting on to avoid. Suppressing the
69
+ * published address does not cover this — the address a peer cannot be TOLD, a hole-punch
70
+ * still REVEALS.
65
71
  * - circuitRelayServer (HOP) is a SERVICE-node capability: included when
66
72
  * nodeType is undefined (directory, relay) or when opts.relayServer.enabled
67
73
  * is set. Client nodes (session / standing_receiver) no longer advertise
@@ -1 +1 @@
1
- {"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../src/node.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../src/node.ts"],"names":[],"mappings":"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"}
package/dist/node.js CHANGED
@@ -543,6 +543,46 @@ class CelloNodeImpl {
543
543
  * connection may already be gone, and throwing there would turn a recoverable stale handle into
544
544
  * a failure of the repair itself.
545
545
  */
546
+ /**
547
+ * DOD-M15-RELAYSLOTS-1 — release the circuit reservation held for `peerId`. See the interface
548
+ * declaration for why `hangUp` is not enough and what it cost.
549
+ *
550
+ * Reached through the relay service's PUBLIC `reservations` getter (a `PeerMap`), not through the
551
+ * private reservation store — no cast through a private field, so a libp2p upgrade that changes
552
+ * the internals cannot silently turn this into a no-op; it would fail to compile.
553
+ */
554
+ releaseRelayReservation(peerIdStr) {
555
+ let peerId;
556
+ try {
557
+ peerId = peerIdFromString(peerIdStr);
558
+ }
559
+ catch {
560
+ // Same reasoning as hangUp: name it rather than letting a parse error read as a relay fault.
561
+ return false;
562
+ }
563
+ const relay = this.#libp2p.services["relay"];
564
+ const reservations = relay?.reservations;
565
+ // A node with no relay service (every client node) holds no reservations to release.
566
+ if (!reservations)
567
+ return false;
568
+ if (!reservations.has(peerId))
569
+ return false;
570
+ /**
571
+ * ⚠️ **ABORT THE EXPIRY SIGNAL, NOT JUST THE MAP ENTRY.** libp2p keeps a per-reservation timer
572
+ * whose abort listener deletes the entry, and deleting the entry does not cancel the timer. Left
573
+ * running, it fires later and deletes whatever reservation that peer holds AT THAT MOMENT — so
574
+ * a peer that reconnects and reserves again silently loses the NEW slot mid-TTL, and its client
575
+ * does not notice until it refreshes against an expiry that no longer exists.
576
+ */
577
+ try {
578
+ reservations.get(peerId)?.signal?.abort?.();
579
+ }
580
+ catch {
581
+ // An older shape with no signal: the delete below is still correct, there is just no orphan.
582
+ }
583
+ reservations.delete(peerId);
584
+ return true;
585
+ }
546
586
  async hangUp(peerIdStr) {
547
587
  let peerId;
548
588
  try {
@@ -679,10 +719,16 @@ function mapStreamError(err, peerId, protocolId) {
679
719
  * receiver) it probes connected directory nodes for dial-back to determine
680
720
  * dialability; on directory nodes it serves the responder role, answering
681
721
  * dial-back requests. Protocol: /libp2p/autonat/1.0.0.
682
- * - dcutr() is included on EVERY node type (DOD-NAT-REACHABILITY-1). The
722
+ * - dcutr() is included on every node type BY DEFAULT (DOD-NAT-REACHABILITY-1). The
683
723
  * protocol's inbound peer is the one that STARTS the hole-punch upgrade
684
724
  * (@libp2p/dcutr ignores connections with direction !== 'inbound'), and the
685
725
  * inbound peer of a relayed connection is precisely the standing receiver.
726
+ * ⚠️ `opts.holePunch: { enabled: false }` OMITS it (DOD-M15-RELAYONLY-1), and the sentence
727
+ * directly above is the reason it had to become optional: if the inbound side starts the
728
+ * upgrade, a node whose operator asked never to be directly reachable would hole-punch itself
729
+ * into exactly the direct connection they switched the setting on to avoid. Suppressing the
730
+ * published address does not cover this — the address a peer cannot be TOLD, a hole-punch
731
+ * still REVEALS.
686
732
  * - circuitRelayServer (HOP) is a SERVICE-node capability: included when
687
733
  * nodeType is undefined (directory, relay) or when opts.relayServer.enabled
688
734
  * is set. Client nodes (session / standing_receiver) no longer advertise
@@ -890,12 +936,25 @@ export async function createNode(opts) {
890
936
  addresses: {
891
937
  listen: opts.listenAddresses,
892
938
  ...(opts.announceAddresses?.length ? { announce: opts.announceAddresses } : {}),
939
+ // ⚠️ DOD-M15-RELAYONLY-1: THE OTHER HALF OF THE HOLE-PUNCH FIX, and without it the whole
940
+ // control is theatre. Turning dcutr off stops us UPGRADING to a direct connection; it does
941
+ // nothing about `identify`, which hands a peer our full listen-address set on the FIRST
942
+ // relayed connection — LAN addresses always, and the AutoNAT-confirmed public one once it is
943
+ // promoted. So the counterparty would simply be TOLD the address they could not reach by
944
+ // punching.
945
+ //
946
+ // `announceFilter` is libp2p's own seam for this: it decides what we advertise. Under
947
+ // relay-only we advertise circuit addresses and nothing else, which is exactly what
948
+ // `publishableEndpoint` does for the directory — the same rule applied on the peer-to-peer
949
+ // side, where the directory's filter has no reach.
950
+ ...(opts.holePunch?.enabled === false
951
+ ? { announceFilter: (addrs) => addrs.filter((a) => a.toString().split("/").includes("p2p-circuit")) }
952
+ : {}),
893
953
  },
894
954
  ...(hasCircuitListen ? { transportManager: { faultTolerance: FaultTolerance.NO_FATAL } } : {}),
895
955
  transports: [
896
956
  tcp(),
897
957
  webSockets(),
898
- // Circuit relay transport enables dialing via relay addresses
899
958
  circuitRelayTransport(),
900
959
  ],
901
960
  connectionEncrypters: [
@@ -933,7 +992,13 @@ export async function createNode(opts) {
933
992
  // DOD-NAT-REACHABILITY-1: dcutr on every node — the standing receiver is
934
993
  // the inbound side of a relayed connection, and the inbound side starts
935
994
  // the upgrade. See the header note.
936
- dcutr: dcutr(),
995
+ //
996
+ // ⚠️ DOD-M15-RELAYONLY-1 made this OPTIONAL, and the reason is the sentence directly above:
997
+ // if the inbound side starts the upgrade, then a node that must never be directly reachable
998
+ // will hole-punch itself into exactly the direct connection its operator switched a privacy
999
+ // setting on to avoid. Suppressing the published address does not help — the address a peer
1000
+ // cannot be TOLD, a hole-punch still REVEALS. Default stays enabled for every other caller.
1001
+ ...(opts.holePunch?.enabled === false ? {} : { dcutr: dcutr() }),
937
1002
  },
938
1003
  ...(opts.connectionGater ? { connectionGater: opts.connectionGater } : {}),
939
1004
  // DOD-M15-IDLE-CONNS-1: declared, not inherited. Same object the node reports.
package/dist/node.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"node.js","sourceRoot":"","sources":["../src/node.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"node.js","sourceRoot":"","sources":["../src/node.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -64,6 +64,25 @@ export interface CreateNodeOptions {
64
64
  autonatResponder?: {
65
65
  enabled: boolean;
66
66
  };
67
+ /**
68
+ * DOD-M15-RELAYONLY-1: NAT hole-punching (dcutr). Defaults to ENABLED, which is every existing
69
+ * caller's behaviour and the right default — a direct connection is faster and cheaper than a
70
+ * relayed one.
71
+ *
72
+ * ⚠️ Set `{ enabled: false }` on a node whose whole purpose is NOT to be directly reachable.
73
+ * dcutr's job is to UPGRADE a relayed connection to a direct one, and the note beside its
74
+ * registration says the standing receiver is *"the inbound side of a relayed connection, and the
75
+ * inbound side starts the upgrade"*. So a relay-only agent would route its session over the relay
76
+ * exactly as asked, and then hole-punch its way to a direct connection anyway — **disclosing the
77
+ * very address the setting exists to hide, with no test able to see it, because nothing observes a
78
+ * live upgrade.**
79
+ *
80
+ * Suppressing the published address is therefore not sufficient on its own: the address a peer
81
+ * cannot be told, a hole-punch can still reveal.
82
+ */
83
+ holePunch?: {
84
+ enabled: boolean;
85
+ };
67
86
  /**
68
87
  * CELLO-M7-TRANSPORT-001 / DOD-NAT-REACHABILITY-1: the role of this node,
69
88
  * which tunes the libp2p service set:
@@ -321,6 +340,24 @@ export interface CelloNode {
321
340
  * Fails with { reason: 'invalid_peer_id' } if peerId does not parse.
322
341
  */
323
342
  hangUp(peerId: string): Promise<void>;
343
+ /**
344
+ * DOD-M15-RELAYSLOTS-1 — release the circuit RESERVATION this relay is holding for `peerId`.
345
+ * Returns true if one was held and is now gone.
346
+ *
347
+ * ⚠️ **`hangUp` DOES NOT DO THIS, AND THAT IS THE WHOLE REASON THIS EXISTS.** Verified against
348
+ * `@libp2p/circuit-relay-v2@4.2.3`: the server's `removeReservation` is called from exactly one
349
+ * place — the catch when writing the confirmation frame fails — and there is no connection-close
350
+ * or disconnect listener anywhere in its server. A reservation therefore survives its holder's
351
+ * disconnect for the full `reservationTtl`, which defaults to TWO HOURS.
352
+ *
353
+ * The consequence, measured rather than assumed: a relay could evict a peer, watch its own ledger
354
+ * drop, report itself well under capacity, and still be holding that reservation against libp2p's
355
+ * 4096 limit for two hours. Every reclaim path the relay has — the grace-window revoke, the
356
+ * reaper, the unproven-budget eviction — was freeing bookkeeping and not capacity.
357
+ *
358
+ * No-op on a node with no relay service, and on a peer holding no reservation.
359
+ */
360
+ releaseRelayReservation(peerId: string): boolean;
324
361
  /**
325
362
  * CELLO-M7-TRANSPORT-001: true if there is at least one OPEN, non-relayed
326
363
  * (direct) connection to peerId. Used by the transport selector's dcutr path to
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cello-protocol/transport",
3
- "version": "0.0.65",
3
+ "version": "0.0.66",
4
4
  "private": false,
5
5
  "type": "module",
6
6
  "engines": {
@@ -39,8 +39,8 @@
39
39
  "it-pipe": "^3.0.1",
40
40
  "libp2p": "^3.2.3",
41
41
  "uint8arrays": "^5.1.1",
42
- "@cello-protocol/crypto": "0.0.59",
43
- "@cello-protocol/protocol-types": "0.0.63"
42
+ "@cello-protocol/crypto": "0.0.60",
43
+ "@cello-protocol/protocol-types": "0.0.64"
44
44
  },
45
45
  "devDependencies": {
46
46
  "@claude-flow/testing": "3.0.0-alpha.6",