@pkcprotocol/pkc-js 0.0.94 → 0.0.96

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 (51) hide show
  1. package/dist/browser/community/community-client-manager.d.ts +1 -0
  2. package/dist/browser/community/community-client-manager.js +27 -6
  3. package/dist/browser/community/community-client-manager.js.map +1 -1
  4. package/dist/browser/community/remote-community.js +13 -0
  5. package/dist/browser/community/remote-community.js.map +1 -1
  6. package/dist/browser/generated-version.d.ts +1 -1
  7. package/dist/browser/generated-version.js +1 -1
  8. package/dist/browser/helia/helia-for-pkc.d.ts +1 -0
  9. package/dist/browser/helia/helia-for-pkc.js +101 -7
  10. package/dist/browser/helia/helia-for-pkc.js.map +1 -1
  11. package/dist/browser/helia/libp2pjsClient.d.ts +3 -1
  12. package/dist/browser/helia/libp2pjsClient.js +1 -0
  13. package/dist/browser/helia/libp2pjsClient.js.map +1 -1
  14. package/dist/browser/helia/types.d.ts +9 -0
  15. package/dist/browser/helia/util.d.ts +2 -1
  16. package/dist/browser/helia/util.js +12 -1
  17. package/dist/browser/helia/util.js.map +1 -1
  18. package/dist/browser/test/test-util.d.ts +8 -1
  19. package/dist/browser/test/test-util.js +101 -20
  20. package/dist/browser/test/test-util.js.map +1 -1
  21. package/dist/bundled/bundle-manifest.json +31 -31
  22. package/dist/bundled/chunks/{helia-for-pkc-Bj-Zb4JN.js → helia-for-pkc-CmSUHQVn.js} +70 -37
  23. package/dist/bundled/chunks/{local-community-Ce7303vY.js → local-community-DK5HhKZf.js} +30 -30
  24. package/dist/bundled/chunks/{local-community-BrMLMEmt.js → local-community-DVG9tyIW.js} +1 -1
  25. package/dist/bundled/chunks/{node-C37nDOa8.js → node-CyXajPvJ.js} +5 -5
  26. package/dist/bundled/chunks/{rpc-local-community-Dr_-Lb8I.js → rpc-local-community-CdG4JLzO.js} +16 -2
  27. package/dist/bundled/chunks/{schema-5-rYJ-bC.js → schema-BIik7LGj.js} +1 -1
  28. package/dist/bundled/chunks/{util-_-fNQNIV.js → util-y_hIxyCS.js} +3 -2
  29. package/dist/bundled/index.js +1 -1
  30. package/dist/bundled/rpc/src/index.js +4 -4
  31. package/dist/node/community/community-client-manager.d.ts +1 -0
  32. package/dist/node/community/community-client-manager.js +27 -6
  33. package/dist/node/community/community-client-manager.js.map +1 -1
  34. package/dist/node/community/remote-community.js +13 -0
  35. package/dist/node/community/remote-community.js.map +1 -1
  36. package/dist/node/generated-version.d.ts +1 -1
  37. package/dist/node/generated-version.js +1 -1
  38. package/dist/node/helia/helia-for-pkc.d.ts +1 -0
  39. package/dist/node/helia/helia-for-pkc.js +101 -7
  40. package/dist/node/helia/helia-for-pkc.js.map +1 -1
  41. package/dist/node/helia/libp2pjsClient.d.ts +3 -1
  42. package/dist/node/helia/libp2pjsClient.js +1 -0
  43. package/dist/node/helia/libp2pjsClient.js.map +1 -1
  44. package/dist/node/helia/types.d.ts +9 -0
  45. package/dist/node/helia/util.d.ts +2 -1
  46. package/dist/node/helia/util.js +12 -1
  47. package/dist/node/helia/util.js.map +1 -1
  48. package/dist/node/test/test-util.d.ts +8 -1
  49. package/dist/node/test/test-util.js +101 -20
  50. package/dist/node/test/test-util.js.map +1 -1
  51. package/package.json +1 -1
@@ -96,6 +96,14 @@ export function ipnsRouterTag(router) {
96
96
  export function isLocalStoreIpnsRouter(router) {
97
97
  return ipnsRouterTag(router) === "LocalStoreRouting()";
98
98
  }
99
+ // How long a name's push channel is trusted after the last signature-valid record was obtained
100
+ // from the network (issue #330). kubo's go-libp2p-pubsub-router rebroadcasts its best record on
101
+ // every subscribed topic every 10 minutes and fetches from every peer that joins a topic, so a
102
+ // topic with a live mesh delivers a valid record at least once per rebroadcast interval even
103
+ // when nothing changes. 1.5x that interval means one missed rebroadcast is tolerated; silence
104
+ // beyond it can only mean the push channel is broken, and cache serving falls back to the
105
+ // per-ttl revalidation of issues #301/#307 (which also re-warms the mesh via the network path).
106
+ export const IPNS_PUSH_CHANNEL_WATCHDOG_MS = 15 * 60_000;
99
107
  export async function createLibp2pJsClientOrUseExistingOne(pkcOptions) {
100
108
  if (!pkcOptions.httpRoutersOptions?.length)
101
109
  throw Error("You need to have pkc.httpRouterOptions to set up helia");
@@ -375,6 +383,65 @@ export async function createLibp2pJsClientOrUseExistingOne(pkcOptions) {
375
383
  // would re-fetch on every resolve once its record's ttl first expired. Bounded by the set
376
384
  // of IPNS names this helia instance resolves (communities the app follows).
377
385
  const ipnsRecordNetworkValidatedAtMs = new Map();
386
+ // Push-channel health state for IPNS resolution (issue #330). A topic's push channel is
387
+ // HEALTHY when it has at least one gossipsub subscriber AND a signature-valid,
388
+ // sequence-current record for it was obtained from the network within `watchdogMs` — via
389
+ // a gossiped message (identical rebroadcast bytes included, see the raw-message listener
390
+ // below), an accepted-newer localStore write from any path, or a validated fetch (direct
391
+ // fast path or fallback router.get()). While healthy, name.resolve serves the cached
392
+ // record PAST its ttl (the ipns-pubsub-router spec's model: pushes, rebroadcasts, and
393
+ // fetch-on-join keep a subscribed node current, so timer-driven revalidation buys
394
+ // nothing); while unhealthy it falls back to the exact per-ttl revalidation of issues
395
+ // #301/#307. `routingKeyByTopic` scopes the raw-message listener to IPNS topics this
396
+ // resolver registered and gives it the key to validate against. Exposed on the client as
397
+ // `_ipnsPushChannel` so tests can shrink the watchdog window and inspect arrivals; all
398
+ // three maps are bounded by the set of IPNS names this helia instance resolves.
399
+ const ipnsPushChannel = {
400
+ watchdogMs: IPNS_PUSH_CHANNEL_WATCHDOG_MS,
401
+ lastValidRecordArrivalMs: new Map(),
402
+ routingKeyByTopic: new Map(),
403
+ highestKnownSequenceByTopic: new Map()
404
+ };
405
+ const isIpnsPushChannelHealthy = (pubsubTopic) => helia.libp2p.services.pubsub.getSubscribers(pubsubTopic).length > 0 &&
406
+ Date.now() - (ipnsPushChannel.lastValidRecordArrivalMs.get(pubsubTopic) ?? 0) < ipnsPushChannel.watchdogMs;
407
+ // The single stamping path for every watchdog heartbeat, and the stale-replay guard:
408
+ // `ipnsValidator` checks the signature and EOL but NOT sequence order, so without this
409
+ // comparison a signature-valid but strictly OLDER (still unexpired) record — a lagging
410
+ // peer rebroadcasting its stale best, or an adversarial subscriber replaying an old one —
411
+ // would hold the watchdog open indefinitely (up to the replayed record's validity) and
412
+ // keep the resolver from the revalidation that would find the newer record. A heartbeat
413
+ // must attest that the channel delivers records at least as new as the best we hold:
414
+ // only a sequence >= the highest we've seen from any validated source advances the
415
+ // stamp (identical rebroadcasts pass, which is the point of the raw-message listener).
416
+ const stampIpnsPushChannelArrival = (pubsubTopic, sequence) => {
417
+ const highestKnown = ipnsPushChannel.highestKnownSequenceByTopic.get(pubsubTopic);
418
+ if (highestKnown !== undefined && sequence < highestKnown) {
419
+ log.trace("Ignoring a stale-replay push-channel heartbeat on IPNS topic", pubsubTopic, sequence, "<", highestKnown);
420
+ return;
421
+ }
422
+ ipnsPushChannel.highestKnownSequenceByTopic.set(pubsubTopic, sequence);
423
+ ipnsPushChannel.lastValidRecordArrivalMs.set(pubsubTopic, Date.now());
424
+ };
425
+ // The watchdog's heartbeat source (issue #330): kubo rebroadcasts the CURRENT record
426
+ // every 10 minutes, and the pubsub router's #handleRecord returns before localStore.put
427
+ // when the gossiped bytes are identical to the cache — so the put wrap below never sees
428
+ // the very messages that prove the channel is alive. Listen to raw gossip instead, gated
429
+ // on the topics this resolver registered, and stamp an arrival only after the record
430
+ // validates against the topic's routing key (a garbage or forged message must not feed
431
+ // the watchdog) AND clears the stamp helper's sequence guard (a valid-but-older replay
432
+ // must not either). Validation failures are dropped quietly: gossip is an open channel
433
+ // and the router logs its own rejections. This validation duplicates the one
434
+ // #handleRecord runs on the same bytes; at rebroadcast cadence (one message per topic
435
+ // per 10 minutes) the doubled crypto is negligible, and deduping would mean reaching
436
+ // into the router's internals.
437
+ helia.libp2p.services.pubsub.addEventListener("message", (evt) => {
438
+ const gossipRoutingKey = ipnsPushChannel.routingKeyByTopic.get(evt.detail.topic);
439
+ if (!gossipRoutingKey)
440
+ return;
441
+ ipnsValidator(gossipRoutingKey, evt.detail.data)
442
+ .then(() => stampIpnsPushChannelArrival(evt.detail.topic, unmarshalIPNSRecord(evt.detail.data).sequence))
443
+ .catch((err) => log.trace("Ignoring an invalid record gossiped on IPNS topic", evt.detail.topic, err));
444
+ });
378
445
  // Push signal for IPNS names (issue #308): every accepted-newer record converges on the
379
446
  // pubsub router's localStore.put — gossipsub delivery (handleRecord), the direct-fetch
380
447
  // cache write (cacheIpnsRecordInPubsubLocalStore), and the fallback router.get() fetch
@@ -392,9 +459,6 @@ export async function createLibp2pJsClientOrUseExistingOne(pkcOptions) {
392
459
  ipnsPubsubLocalStore.put = async (routingKey, marshalledRecord, options) => {
393
460
  await originalLocalStorePut(routingKey, marshalledRecord, options);
394
461
  const pubsubTopic = binaryKeyToPubsubTopic(routingKey);
395
- const listeners = ipnsRecordArrivalListeners.get(pubsubTopic);
396
- if (!listeners || listeners.size === 0)
397
- return;
398
462
  let record;
399
463
  try {
400
464
  record = unmarshalIPNSRecord(marshalledRecord);
@@ -403,6 +467,13 @@ export async function createLibp2pJsClientOrUseExistingOne(pkcOptions) {
403
467
  log.error("Failed to unmarshal a cached IPNS record for the arrival listeners of topic", pubsubTopic, e);
404
468
  return;
405
469
  }
470
+ // Every accepted-newer record is also a push-channel heartbeat (issue #330); the
471
+ // helper's sequence guard is a no-op here since accepted writes are newer-only, but
472
+ // it must still learn the sequence so gossip replays are compared against it.
473
+ stampIpnsPushChannelArrival(pubsubTopic, record.sequence);
474
+ const listeners = ipnsRecordArrivalListeners.get(pubsubTopic);
475
+ if (!listeners || listeners.size === 0)
476
+ return;
406
477
  for (const listener of [...listeners]) {
407
478
  try {
408
479
  listener({ pubsubTopic, record });
@@ -464,7 +535,13 @@ export async function createLibp2pJsClientOrUseExistingOne(pkcOptions) {
464
535
  // cached record is inside its ttl window — not a fresh multi-peer fetch
465
536
  // race per call. This is what turns the update loop's 1s cadence from
466
537
  // ~150 fetch streams/s at 64 communities into pushes plus one
467
- // revalidation per name per ttl. Gated on the topic being subscribed
538
+ // revalidation per name per ttl. And while the push channel is HEALTHY
539
+ // (subscribers present, a valid record arrived within the watchdog
540
+ // window), even the per-ttl revalidation is skipped (issue #330): the
541
+ // ipns-pubsub-router spec keeps a subscribed node current via pushes,
542
+ // rebroadcasts, and fetch-on-join, so the cached record serves for as
543
+ // long as it stays signature-valid — the steady-state network cost of an
544
+ // updating name drops to zero. Gated on the topic being subscribed
468
545
  // because freshness relies on the push channel this resolver set up on a
469
546
  // previous call; nocache: true bypasses the cache entirely (explicit
470
547
  // refresh, kubo semantics). A cache read failure must never fail the
@@ -474,7 +551,8 @@ export async function createLibp2pJsClientOrUseExistingOne(pkcOptions) {
474
551
  const cachedRecord = await readFreshCachedIpnsRecordFromPubsubLocalStore({
475
552
  localStore: ipnsPubsubLocalStore,
476
553
  routingKey,
477
- lastNetworkValidatedAtMs: ipnsRecordNetworkValidatedAtMs.get(ipnsPubsubTopic)
554
+ lastNetworkValidatedAtMs: ipnsRecordNetworkValidatedAtMs.get(ipnsPubsubTopic),
555
+ pushChannelHealthy: isIpnsPushChannelHealthy(ipnsPubsubTopic)
478
556
  });
479
557
  if (cachedRecord) {
480
558
  log.trace("Serving IPNS record for", currentName, "from the routing-layer cache");
@@ -500,6 +578,10 @@ export async function createLibp2pJsClientOrUseExistingOne(pkcOptions) {
500
578
  // router.get() (which since @helia/ipns 10 skips this add when the
501
579
  // topic is already libp2p-subscribed).
502
580
  ipnsPubsubRouterSubscriptions.add(ipnsPubsubTopic);
581
+ // Arm the push-channel watchdog's raw-message listener for this
582
+ // topic (issue #330) — it needs the routing key to validate gossiped
583
+ // records before stamping arrivals.
584
+ ipnsPushChannel.routingKeyByTopic.set(ipnsPubsubTopic, routingKey);
503
585
  void warmupForTopic(ipnsPubsubTopic, options).catch((e) => log.trace("Fire-and-forget warmup failed for", ipnsPubsubTopic, e));
504
586
  const directStart = Date.now();
505
587
  try {
@@ -529,6 +611,12 @@ export async function createLibp2pJsClientOrUseExistingOne(pkcOptions) {
529
611
  // this stamp is what lets an idle name serve from cache for
530
612
  // another ttl window after a revalidation.
531
613
  ipnsRecordNetworkValidatedAtMs.set(ipnsPubsubTopic, Date.now());
614
+ // A validated fetch also opens the push-channel trust window
615
+ // (issue #330): staleness is zero right now, and the channel
616
+ // has watchdogMs to prove itself before the next refetch.
617
+ // (Sequence-guarded like every heartbeat: a lagging provider
618
+ // serving an older record than we hold must not extend it.)
619
+ stampIpnsPushChannelArrival(ipnsPubsubTopic, record.sequence);
532
620
  // Direct fetch bypasses the pubsub router's handleRecord, which is
533
621
  // where gossipsub-delivered records get cached at the routing layer.
534
622
  // Persist the record there ourselves (newer-only, issue #210) so
@@ -649,8 +737,9 @@ export async function createLibp2pJsClientOrUseExistingOne(pkcOptions) {
649
737
  // Validate the record's signature against its routing key before trusting its value.
650
738
  await ipnsValidator(routingKey, recordBytes);
651
739
  const record = unmarshalIPNSRecord(recordBytes);
652
- // Same freshness stamp as the direct-fetch hit above (issue #301).
740
+ // Same freshness stamps as the direct-fetch hit above (issues #301/#330).
653
741
  ipnsRecordNetworkValidatedAtMs.set(ipnsPubsubTopic, Date.now());
742
+ stampIpnsPushChannelArrival(ipnsPubsubTopic, record.sequence);
654
743
  yield record.value;
655
744
  }
656
745
  return generator();
@@ -836,6 +925,7 @@ export async function createLibp2pJsClientOrUseExistingOne(pkcOptions) {
836
925
  ipnsRecordArrivalListeners.delete(pubsubTopic);
837
926
  }
838
927
  },
928
+ isIpnsPushChannelHealthy: ({ pubsubTopic }) => isIpnsPushChannelHealthy(pubsubTopic),
839
929
  async stop(options) {
840
930
  const clientFromMap = libp2pJsClients[pkcOptions.key];
841
931
  if (!clientFromMap)
@@ -850,6 +940,9 @@ export async function createLibp2pJsClientOrUseExistingOne(pkcOptions) {
850
940
  // Update loops unsubscribe their own arrival listeners on stop; clearing here
851
941
  // covers loops torn down after the shared client's final release.
852
942
  ipnsRecordArrivalListeners.clear();
943
+ ipnsPushChannel.lastValidRecordArrivalMs.clear();
944
+ ipnsPushChannel.routingKeyByTopic.clear();
945
+ ipnsPushChannel.highestKnownSequenceByTopic.clear();
853
946
  // Tear down the IPNS pubsub router's internal subscription state.
854
947
  // PubSubIPNSRouting (@helia/ipns) implements Startable and tracks its own
855
948
  // subscriptions list and fetch topology — without stop() those leak past helia.
@@ -919,7 +1012,8 @@ export async function createLibp2pJsClientOrUseExistingOne(pkcOptions) {
919
1012
  mergedHeliaOptions: mergedHeliaInit,
920
1013
  countOfUsesOfInstance: 1,
921
1014
  libp2pJsClientsOptions: pkcOptions,
922
- key: pkcOptions.key
1015
+ key: pkcOptions.key,
1016
+ ipnsPushChannel
923
1017
  };
924
1018
  const client = new Libp2pJsClient(fullInstanceWithOptions);
925
1019
  log("Helia/libp2p-js started with key", pkcOptions.key, "and peer id", helia.libp2p.peerId.toString());
@@ -1 +1 @@
1
- {"version":3,"file":"helia-for-pkc.js","sourceRoot":"","sources":["../../../src/helia/helia-for-pkc.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"helia-for-pkc.js","sourceRoot":"","sources":["../../../src/helia/helia-for-pkc.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import type { createHelia } from "helia";
2
- import type { HeliaWithKuboRpcClientFunctions, HeliaWithLibp2pPubsub } from "./types.js";
2
+ import type { HeliaWithKuboRpcClientFunctions, HeliaWithLibp2pPubsub, IpnsPushChannelState } from "./types.js";
3
3
  import type { unixfs } from "@helia/unixfs";
4
4
  import type { ipns } from "@helia/ipns";
5
5
  import type { ParsedPKCOptions } from "../types.js";
@@ -12,6 +12,7 @@ type Libp2pJsClientInit = {
12
12
  mergedHeliaOptions: Parameters<typeof createHelia>[0];
13
13
  key: string;
14
14
  countOfUsesOfInstance: number;
15
+ ipnsPushChannel: IpnsPushChannelState;
15
16
  };
16
17
  export declare class Libp2pJsClient {
17
18
  _helia: HeliaWithLibp2pPubsub;
@@ -22,6 +23,7 @@ export declare class Libp2pJsClient {
22
23
  _mergedHeliaOptions: Omit<NonNullable<Parameters<typeof createHelia>[0]>, "http"> | undefined;
23
24
  key: Libp2pJsClientInit["key"];
24
25
  countOfUsesOfInstance: number;
26
+ _ipnsPushChannel: IpnsPushChannelState;
25
27
  /**
26
28
  * The running Helia node backing this libp2p-js client — the public, semver-covered way for
27
29
  * consumers that share the node (e.g. @bitsocial/pubsub-voting, bitsocial-seeder) to reach it,
@@ -25,6 +25,7 @@ export class Libp2pJsClient {
25
25
  this._mergedHeliaOptions = libp2pJsClientOptions.mergedHeliaOptions;
26
26
  this.key = libp2pJsClientOptions.key;
27
27
  this.countOfUsesOfInstance = libp2pJsClientOptions.countOfUsesOfInstance;
28
+ this._ipnsPushChannel = libp2pJsClientOptions.ipnsPushChannel;
28
29
  hideClassPrivateProps(this);
29
30
  }
30
31
  }
@@ -1 +1 @@
1
- {"version":3,"file":"libp2pjsClient.js","sourceRoot":"","sources":["../../../src/helia/libp2pjsClient.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAenD,MAAM,OAAO,cAAc;IAUvB;;;;;;;;;;;;OAYG;IACH,IAAI,SAAS;QACT,OAAO,IAAI,CAAC,MAAM,CAAC;IACvB,CAAC;IAED,YAAY,qBAAyC;QACjD,IAAI,CAAC,MAAM,GAAG,qBAAqB,CAAC,KAAK,CAAC;QAC1C,IAAI,CAAC,YAAY,GAAG,qBAAqB,CAAC,WAAW,CAAC;QACtD,IAAI,CAAC,gBAAgB,GAAG,qBAAqB,CAAC,eAAe,CAAC;QAC9D,IAAI,CAAC,+BAA+B,GAAG,qBAAqB,CAAC,+BAA+B,CAAC;QAC7F,IAAI,CAAC,uBAAuB,GAAG,qBAAqB,CAAC,sBAAsB,CAAC;QAC5E,IAAI,CAAC,mBAAmB,GAAG,qBAAqB,CAAC,kBAAkB,CAAC;QACpE,IAAI,CAAC,GAAG,GAAG,qBAAqB,CAAC,GAAG,CAAC;QACrC,IAAI,CAAC,qBAAqB,GAAG,qBAAqB,CAAC,qBAAqB,CAAC;QAEzE,qBAAqB,CAAC,IAAI,CAAC,CAAC;IAChC,CAAC;CACJ"}
1
+ {"version":3,"file":"libp2pjsClient.js","sourceRoot":"","sources":["../../../src/helia/libp2pjsClient.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAgBnD,MAAM,OAAO,cAAc;IAavB;;;;;;;;;;;;OAYG;IACH,IAAI,SAAS;QACT,OAAO,IAAI,CAAC,MAAM,CAAC;IACvB,CAAC;IAED,YAAY,qBAAyC;QACjD,IAAI,CAAC,MAAM,GAAG,qBAAqB,CAAC,KAAK,CAAC;QAC1C,IAAI,CAAC,YAAY,GAAG,qBAAqB,CAAC,WAAW,CAAC;QACtD,IAAI,CAAC,gBAAgB,GAAG,qBAAqB,CAAC,eAAe,CAAC;QAC9D,IAAI,CAAC,+BAA+B,GAAG,qBAAqB,CAAC,+BAA+B,CAAC;QAC7F,IAAI,CAAC,uBAAuB,GAAG,qBAAqB,CAAC,sBAAsB,CAAC;QAC5E,IAAI,CAAC,mBAAmB,GAAG,qBAAqB,CAAC,kBAAkB,CAAC;QACpE,IAAI,CAAC,GAAG,GAAG,qBAAqB,CAAC,GAAG,CAAC;QACrC,IAAI,CAAC,qBAAqB,GAAG,qBAAqB,CAAC,qBAAqB,CAAC;QACzE,IAAI,CAAC,gBAAgB,GAAG,qBAAqB,CAAC,eAAe,CAAC;QAE9D,qBAAqB,CAAC,IAAI,CAAC,CAAC;IAChC,CAAC;CACJ"}
@@ -12,6 +12,12 @@ export interface IpnsRecordArrival {
12
12
  record: IPNSRecord;
13
13
  }
14
14
  export type IpnsRecordArrivalListener = (arrival: IpnsRecordArrival) => void;
15
+ export interface IpnsPushChannelState {
16
+ watchdogMs: number;
17
+ lastValidRecordArrivalMs: Map<string, number>;
18
+ highestKnownSequenceByTopic: Map<string, bigint>;
19
+ routingKeyByTopic: Map<string, Uint8Array>;
20
+ }
15
21
  export interface HeliaWithKuboRpcClientFunctions extends Pick<NonNullable<KuboRpcClient["_client"]>, "add" | "cat" | "pubsub" | "stop"> {
16
22
  add: KuboRpcClient["_client"]["add"];
17
23
  name: Pick<KuboRpcClient["_client"]["name"], "resolve">;
@@ -30,6 +36,9 @@ export interface HeliaWithKuboRpcClientFunctions extends Pick<NonNullable<KuboRp
30
36
  listener: IpnsRecordArrivalListener;
31
37
  }): void;
32
38
  };
39
+ isIpnsPushChannelHealthy(args: {
40
+ pubsubTopic: string;
41
+ }): boolean;
33
42
  _bitswapSessionStalledGetFailoverMs?: number;
34
43
  }
35
44
  type GossipSubWithMeshPeers = GossipSub & {
@@ -85,9 +85,10 @@ export declare function cacheIpnsRecordInPubsubLocalStore({ localStore, routingK
85
85
  marshalledRecord: Uint8Array;
86
86
  }): Promise<void>;
87
87
  export declare function ipnsCacheTtlJitterFactor(routingKey: Uint8Array): number;
88
- export declare function readFreshCachedIpnsRecordFromPubsubLocalStore({ localStore, routingKey, lastNetworkValidatedAtMs }: {
88
+ export declare function readFreshCachedIpnsRecordFromPubsubLocalStore({ localStore, routingKey, lastNetworkValidatedAtMs, pushChannelHealthy }: {
89
89
  localStore: IpnsPubsubLocalStore;
90
90
  routingKey: Uint8Array;
91
91
  lastNetworkValidatedAtMs?: number;
92
+ pushChannelHealthy?: boolean;
92
93
  }): Promise<IPNSRecord | undefined>;
93
94
  export {};
@@ -763,7 +763,16 @@ export function ipnsCacheTtlJitterFactor(routingKey) {
763
763
  // The record's signature and validity window are re-checked on every read (a cached record can
764
764
  // pass its EOL while sitting in the store); an invalid, expired, or stale record yields
765
765
  // undefined so the caller falls through to the network path.
766
- export async function readFreshCachedIpnsRecordFromPubsubLocalStore({ localStore, routingKey, lastNetworkValidatedAtMs }) {
766
+ //
767
+ // `pushChannelHealthy` (issue #330) widens the serve window past the record's ttl: when the
768
+ // caller can attest that the name's push channel is demonstrably alive (the topic has gossipsub
769
+ // subscribers and a signature-valid record arrived within the watchdog window), the
770
+ // ipns-pubsub-router spec's model applies — the network keeps a subscribed node current via
771
+ // pushes, rebroadcasts, and fetch-on-join, so a timer-driven revalidation buys nothing — and the
772
+ // cached record is served for as long as it stays signature-valid and inside its EOL. The ttl
773
+ // check below is the DEGRADED mode, exactly the pre-#330 behavior, for a name whose push channel
774
+ // is unhealthy (no subscribers, or the watchdog tripped).
775
+ export async function readFreshCachedIpnsRecordFromPubsubLocalStore({ localStore, routingKey, lastNetworkValidatedAtMs, pushChannelHealthy }) {
767
776
  if (!(await localStore.has(routingKey)))
768
777
  return undefined;
769
778
  const { record: recordBytes, created } = await localStore.get(routingKey);
@@ -775,6 +784,8 @@ export async function readFreshCachedIpnsRecordFromPubsubLocalStore({ localStore
775
784
  return undefined;
776
785
  }
777
786
  const record = unmarshalIPNSRecord(recordBytes);
787
+ if (pushChannelHealthy === true)
788
+ return record; // issue #330: freshness is the push channel's job
778
789
  const ttlMs = record.ttl !== undefined ? Number(record.ttl / 1000000n) : DEFAULT_CACHED_IPNS_RECORD_TTL_MS;
779
790
  // Effective ttl is jittered per name (issue #307) so names cached together don't all miss
780
791
  // the cache together; the factor only ever shortens the window, never extends it.
@@ -1 +1 @@
1
- {"version":3,"file":"util.js","sourceRoot":"","sources":["../../../src/helia/util.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"util.js","sourceRoot":"","sources":["../../../src/helia/util.ts"],"names":[],"mappings":"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"}
@@ -25,6 +25,7 @@ interface MockPKCOptions {
25
25
  remotePKC?: boolean;
26
26
  }
27
27
  type MockResolverRecords = Map<string, string | undefined> | Record<string, string | undefined>;
28
+ export declare function selfResolvingMockNameForAddress(address: string): string;
28
29
  export declare function createMockNameResolver({ records, includeDefaultRecords, key, provider, canResolve, resolveFunction }?: {
29
30
  records?: MockResolverRecords;
30
31
  includeDefaultRecords?: boolean;
@@ -907,9 +908,15 @@ export declare function createStaticCommunityRecordForComment(opts?: {
907
908
  commentCid: string;
908
909
  communityAddress: string;
909
910
  }>;
910
- export declare function publishStaticCommunityWithPostInPages(): Promise<{
911
+ export declare const updateIntervalForExactStateTests = 60000;
912
+ export declare function publishStaticCommunityWithPostInPages(opts?: {
913
+ withReplyInPostPages?: boolean;
914
+ withSelfResolvingName?: boolean;
915
+ }): Promise<{
911
916
  communityAddress: string;
917
+ communityName: string | undefined;
912
918
  commentCid: string;
919
+ replyCid: string | undefined;
913
920
  communityRecord: {
914
921
  challenges: {
915
922
  [x: string]: unknown;