@pkcprotocol/pkc-js 0.0.95 → 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 (25) hide show
  1. package/dist/browser/community/remote-community.js +13 -0
  2. package/dist/browser/community/remote-community.js.map +1 -1
  3. package/dist/browser/generated-version.d.ts +1 -1
  4. package/dist/browser/generated-version.js +1 -1
  5. package/dist/browser/test/test-util.d.ts +8 -1
  6. package/dist/browser/test/test-util.js +101 -20
  7. package/dist/browser/test/test-util.js.map +1 -1
  8. package/dist/bundled/bundle-manifest.json +25 -25
  9. package/dist/bundled/chunks/{helia-for-pkc-gnrYOd9S.js → helia-for-pkc-CmSUHQVn.js} +2 -2
  10. package/dist/bundled/chunks/{local-community-B2tgEzEC.js → local-community-DK5HhKZf.js} +2 -2
  11. package/dist/bundled/chunks/{local-community-C-EhIxnP.js → local-community-DVG9tyIW.js} +1 -1
  12. package/dist/bundled/chunks/{node-BgrW8YM1.js → node-CyXajPvJ.js} +5 -5
  13. package/dist/bundled/chunks/{rpc-local-community-1IZANITv.js → rpc-local-community-CdG4JLzO.js} +8 -1
  14. package/dist/bundled/chunks/{schema-r1qeoNNd.js → schema-BIik7LGj.js} +1 -1
  15. package/dist/bundled/chunks/{util-Dng2qrAF.js → util-y_hIxyCS.js} +1 -1
  16. package/dist/bundled/index.js +1 -1
  17. package/dist/bundled/rpc/src/index.js +4 -4
  18. package/dist/node/community/remote-community.js +13 -0
  19. package/dist/node/community/remote-community.js.map +1 -1
  20. package/dist/node/generated-version.d.ts +1 -1
  21. package/dist/node/generated-version.js +1 -1
  22. package/dist/node/test/test-util.d.ts +8 -1
  23. package/dist/node/test/test-util.js +101 -20
  24. package/dist/node/test/test-util.js.map +1 -1
  25. package/package.json +1 -1
@@ -644,6 +644,19 @@ export class RemoteCommunity extends TypedEmitter {
644
644
  .startUpdatingLoop()
645
645
  .catch((err) => log.error("Failed to start update loop of community", err));
646
646
  }
647
+ // The construction-time warm start only sees a migration when the tracked instance holds a
648
+ // record, but a key migration clears the record and re-fetches, so a joiner attaching in
649
+ // that migrated-but-recordless window (or constructed before the instance existed at all)
650
+ // reaches this point still keyed to its stale publicKey with no announcement pending. The
651
+ // recordless instance emits nothing until the new key's record lands — silently adopted by
652
+ // the mirror, never announced — leaving the joiner without the migration error forever
653
+ // (issue #332, the remainder of #197/#289). Announce it here, the first point where the
654
+ // mismatch is visible on this path, with the same observable sequence as the first loader:
655
+ // cleared update, then the error, then the replayed record below if one already landed.
656
+ if (this.publicKey && communityInstance.publicKey && this.publicKey !== communityInstance.publicKey) {
657
+ this._pendingWarmStartKeyMigration = { previousPublicKey: this.publicKey, newPublicKey: communityInstance.publicKey };
658
+ this._announcePendingWarmStartKeyMigrationIfAny();
659
+ }
647
660
  // Replay the updating instance's current record through the mirror's own update handler.
648
661
  // Listener attach alone has a gap: an instance that already holds a newer record than ours
649
662
  // (e.g. it settled a key migration before we joined, #197) emits nothing until its NEXT
@@ -1 +1 @@
1
- {"version":3,"file":"remote-community.js","sourceRoot":"","sources":["../../../src/community/remote-community.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"remote-community.js","sourceRoot":"","sources":["../../../src/community/remote-community.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- export declare const version = "0.0.95";
1
+ export declare const version = "0.0.96";
@@ -1,3 +1,3 @@
1
1
  // Auto-generated by config/generate-version.js — do not edit
2
- export const version = "0.0.95";
2
+ export const version = "0.0.96";
3
3
  //# sourceMappingURL=generated-version.js.map
@@ -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;
@@ -14,7 +14,8 @@ import pTimeout from "p-timeout";
14
14
  import { signComment, _signJson, signCommentEdit, cleanUpBeforePublishing, _signPubsubMsg, signChallengeVerification, signCommentUpdate, signCommunity } from "../signer/signatures.js";
15
15
  import { findCommentInHierarchicalPageIpfsRecursively, findCommentInPageInstance, mapPageIpfsCommentToPageJsonComment, TIMEFRAMES_TO_SECONDS } from "../pages/util.js";
16
16
  import { importSignerIntoKuboNode } from "../runtime/browser/util.js";
17
- import { getIpfsKeyFromPrivateKey, getPKCAddressFromPublicKeySync } from "../signer/util.js";
17
+ import { convertBase58IpnsNameToBase36Cid, getIpfsKeyFromPrivateKey, getPKCAddressFromPublicKeySync } from "../signer/util.js";
18
+ import { peerIdFromString } from "@libp2p/peer-id";
18
19
  import { Buffer } from "buffer";
19
20
  import { encryptEd25519AesGcm, encryptEd25519AesGcmPublicKeyBuffer } from "../signer/encryption.js";
20
21
  import env from "../version.js";
@@ -41,6 +42,26 @@ function getMockResolverRecord(records, name) {
41
42
  return { found: true, value: records[name] };
42
43
  return { found: false, value: undefined };
43
44
  }
45
+ // A "self-resolving" mock domain: `<ipns name in CIDv1 base36>.bso`, e.g. `k51qzi5uqu5d....bso`.
46
+ // The label is the address's own IPNS name in kubo's base36 form (all lowercase, so it survives
47
+ // domain-name handling), and the default mock resolver maps it back to the base58 peer id with
48
+ // peerIdFromString, which accepts both encodings. This lets a test publish a community under a
49
+ // FRESH key and still load it through a domain name, including over RPC, where the server's mock
50
+ // resolver is fixed at startup and cannot learn a record the test just minted (issue #323).
51
+ export function selfResolvingMockNameForAddress(address) {
52
+ return `${convertBase58IpnsNameToBase36Cid(address)}.bso`;
53
+ }
54
+ function resolveSelfResolvingMockName(name) {
55
+ const match = /^(k[a-z0-9]{40,})\.(bso|eth)$/.exec(name);
56
+ if (!match)
57
+ return undefined;
58
+ try {
59
+ return peerIdFromString(match[1]).toString();
60
+ }
61
+ catch {
62
+ return undefined;
63
+ }
64
+ }
44
65
  export function createMockNameResolver({ records, includeDefaultRecords = false, key = `mock-resolver-${uuidv4()}`, provider = "mock", canResolve, resolveFunction } = {}) {
45
66
  return {
46
67
  key,
@@ -54,6 +75,9 @@ export function createMockNameResolver({ records, includeDefaultRecords = false,
54
75
  const defaultRecord = includeDefaultRecords ? getMockResolverRecord(defaultMockResolverRecords, name) : undefined;
55
76
  if (defaultRecord?.found)
56
77
  return defaultRecord.value ? { publicKey: defaultRecord.value } : undefined;
78
+ const selfResolvedPublicKey = resolveSelfResolvingMockName(name);
79
+ if (selfResolvedPublicKey)
80
+ return { publicKey: selfResolvedPublicKey };
57
81
  return undefined;
58
82
  }),
59
83
  provider
@@ -1446,24 +1470,50 @@ export async function createStaticCommunityRecordForComment(opts) {
1446
1470
  // <folderCid>/<postCid>/update. The record is published exactly once and nothing ever publishes
1447
1471
  // to this key again, so an update loop watching it is deterministic: no gossip arrivals from
1448
1472
  // concurrent suites, no new records — the literal "community is not publishing new community
1449
- // records" scenario the state-order suites pin. Built for those suites (PR #311 flake class):
1450
- // the shared live communities (signers[0]) receive publishes from every concurrently-running
1451
- // suite, and since the update loop became arrival-driven each of those publishes starts a fetch
1452
- // cycle at a random moment, racing any exact state-sequence assertion.
1453
- export async function publishStaticCommunityWithPostInPages() {
1473
+ // records" scenario the state-order suites pin. Built for those suites (PR #311 flake class,
1474
+ // issue #323): the shared live communities (signers[0]) receive publishes from every
1475
+ // concurrently-running suite, and since the update loop became arrival-driven each of those
1476
+ // publishes starts a fetch cycle at a random moment, racing any exact state-sequence assertion.
1477
+ //
1478
+ // Options:
1479
+ // - withReplyInPostPages: also embed one depth-1 reply (its own author-signed CommentIpfs plus a
1480
+ // community-signed CommentUpdate) in the post CommentUpdate's preloaded `replies.pages.best`,
1481
+ // with no `pageCids`, i.e. the "post has a single preloaded page" shape. Returned as `replyCid`.
1482
+ // - withSelfResolvingName: give the record a `name` that the default mock resolver maps back to
1483
+ // this fresh key (see selfResolvingMockNameForAddress), returned as `communityName`, so the
1484
+ // community can be loaded by domain name, including through an RPC server whose mock resolver
1485
+ // records were fixed at startup.
1486
+ // updateInterval for the PKC instance an exact-state test attaches to a static community. The
1487
+ // static fixture removes arrival-driven cycles, but the community update loop also re-runs on a
1488
+ // timer: the libp2p-js path parks for updateInterval * (0.75..1.25) between cycles (the #311
1489
+ // safety net), gateways poll every updateInterval. The test-wide default of 500ms leaves a
1490
+ // 375-625ms window between the community record landing and the comment's CommentUpdate fetch
1491
+ // finishing; on a slow runner (Firefox CI) that fetch outlasted the window and the timer cycle's
1492
+ // fetching-ipns was mirrored into the comment's clients as an extra fetching-community-ipns.
1493
+ // A static community never needs a second cycle, so make the timer unreachable inside the test.
1494
+ export const updateIntervalForExactStateTests = 60_000;
1495
+ export async function publishStaticCommunityWithPostInPages(opts) {
1454
1496
  const ipnsObj = await createNewIpns();
1455
1497
  const communityAddress = ipnsObj.signer.address;
1456
- const commentPKC = await mockPKCNoDataPathWithOnlyKuboClient();
1457
- try {
1498
+ // ipnsObj.pkc is handed to the caller on success (it is the caller's to destroy). On any
1499
+ // failure before that nobody else holds it, so destroy it here instead of leaking it.
1500
+ const destroyIpnsPkcAndRethrow = async (e) => {
1501
+ await ipnsObj.pkc.destroy();
1502
+ throw e;
1503
+ };
1504
+ const commentPKC = await mockPKCNoDataPathWithOnlyKuboClient().catch(destroyIpnsPkcAndRethrow);
1505
+ // Author-sign a comment against the in-memory community identity (no network fetch of the
1506
+ // community record, same trick as createStaticCommunityRecordForComment), add the exact
1507
+ // CommentIpfs serialization to IPFS, and sign a minimal CommentUpdate with the community key.
1508
+ // The SAME serialization is added to IPFS and embedded in the page, so the cid the page
1509
+ // verifier recomputes from the embedded comment matches commentUpdate.cid.
1510
+ const createStaticPageComment = async (createOptions, depth) => {
1458
1511
  const commentToPublish = await commentPKC.createComment({
1512
+ ...createOptions,
1459
1513
  signer: await commentPKC.createSigner(),
1460
- communityAddress,
1461
- title: `Static post in pages - ${Date.now()}`,
1462
- content: `Static content - ${Date.now()}`
1514
+ communityAddress
1463
1515
  });
1464
1516
  if (!commentToPublish.raw.pubsubMessageToPublish) {
1465
- // Directly set _community from in-memory data so signing doesn't fetch the community
1466
- // record over the network (same trick as createStaticCommunityRecordForComment).
1467
1517
  commentToPublish["_community"] = {
1468
1518
  address: communityAddress,
1469
1519
  publicKey: communityAddress,
@@ -1472,9 +1522,7 @@ export async function publishStaticCommunityWithPostInPages() {
1472
1522
  };
1473
1523
  await commentToPublish._signPublicationWithCommunityFields();
1474
1524
  }
1475
- // The SAME serialization is added to IPFS and embedded in the page, so the cid the page
1476
- // verifier recomputes from the embedded comment matches commentUpdate.cid.
1477
- const commentIpfs = { ...commentToPublish.raw.pubsubMessageToPublish, depth: 0 };
1525
+ const commentIpfs = { ...commentToPublish.raw.pubsubMessageToPublish, depth };
1478
1526
  if (!commentIpfs.protocolVersion)
1479
1527
  throw Error("The comment to embed in the static community must carry a protocolVersion");
1480
1528
  const commentIpfsJson = JSON.stringify(commentIpfs);
@@ -1487,9 +1535,34 @@ export async function publishStaticCommunityWithPostInPages() {
1487
1535
  updatedAt: timestamp(),
1488
1536
  protocolVersion: commentIpfs.protocolVersion
1489
1537
  };
1538
+ return { commentIpfs, commentIpfsJson, commentCid, commentUpdateWithoutSignature };
1539
+ };
1540
+ try {
1541
+ const post = await createStaticPageComment({ title: `Static post in pages - ${Date.now()}`, content: `Static content - ${Date.now()}` }, 0);
1542
+ const commentCid = post.commentCid;
1543
+ let replyCid;
1544
+ let postCommentUpdateWithoutSignature = post.commentUpdateWithoutSignature;
1545
+ if (opts?.withReplyInPostPages) {
1546
+ const reply = await createStaticPageComment({ parentCid: commentCid, postCid: commentCid, content: `Static reply in post pages - ${Date.now()}` }, 1);
1547
+ replyCid = reply.commentCid;
1548
+ const replyCommentUpdate = {
1549
+ ...reply.commentUpdateWithoutSignature,
1550
+ signature: await signCommentUpdate({ update: reply.commentUpdateWithoutSignature, signer: ipnsObj.signer })
1551
+ };
1552
+ postCommentUpdateWithoutSignature = {
1553
+ ...post.commentUpdateWithoutSignature,
1554
+ replyCount: 1,
1555
+ childCount: 1,
1556
+ lastChildCid: replyCid,
1557
+ lastReplyTimestamp: reply.commentIpfs.timestamp,
1558
+ replies: {
1559
+ pages: { best: { comments: [{ comment: JSON.parse(reply.commentIpfsJson), commentUpdate: replyCommentUpdate }] } }
1560
+ }
1561
+ };
1562
+ }
1490
1563
  const commentUpdate = {
1491
- ...commentUpdateWithoutSignature,
1492
- signature: await signCommentUpdate({ update: commentUpdateWithoutSignature, signer: ipnsObj.signer })
1564
+ ...postCommentUpdateWithoutSignature,
1565
+ signature: await signCommentUpdate({ update: postCommentUpdateWithoutSignature, signer: ipnsObj.signer })
1493
1566
  };
1494
1567
  // postUpdates folder on the test Kubo: <folderCid>/<postCid>/update.
1495
1568
  const kuboClient = ipnsObj.pkc._clientsManager.getDefaultKuboRpcClient()._client;
@@ -1501,17 +1574,25 @@ export async function publishStaticCommunityWithPostInPages() {
1501
1574
  folderCid = addedEntry.cid.toString();
1502
1575
  if (!folderCid)
1503
1576
  throw Error("Failed to derive the postUpdates folder cid from the wrapped kubo add");
1577
+ const communityName = opts?.withSelfResolvingName ? selfResolvingMockNameForAddress(communityAddress) : undefined;
1504
1578
  const communityRecord = {
1505
1579
  ...(await getTemplateCommunityRecord(ipnsObj.pkc)),
1506
- posts: { pages: { hot: { comments: [{ comment: JSON.parse(commentIpfsJson), commentUpdate }] } } },
1580
+ posts: { pages: { hot: { comments: [{ comment: JSON.parse(post.commentIpfsJson), commentUpdate }] } } },
1507
1581
  postUpdates: { "86400": folderCid },
1508
1582
  pubsubTopic: communityAddress,
1509
1583
  encryption: encryptionForSigner(ipnsObj.signer),
1510
1584
  updatedAt: timestamp()
1511
1585
  };
1586
+ if (communityName)
1587
+ communityRecord.name = communityName;
1588
+ else
1589
+ delete communityRecord.name;
1512
1590
  communityRecord.signature = await signCommunity({ community: communityRecord, signer: ipnsObj.signer });
1513
1591
  await ipnsObj.publishToIpns(JSON.stringify(communityRecord));
1514
- return { communityAddress, commentCid, communityRecord, ipnsObj };
1592
+ return { communityAddress, communityName, commentCid, replyCid, communityRecord, ipnsObj };
1593
+ }
1594
+ catch (e) {
1595
+ return destroyIpnsPkcAndRethrow(e);
1515
1596
  }
1516
1597
  finally {
1517
1598
  await commentPKC.destroy();