@dxos/echo-pipeline 0.5.8 → 0.5.9-main.2d0a5e6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/lib/browser/{chunk-GANAND63.mjs → chunk-I2J5TTHJ.mjs} +48 -23
- package/dist/lib/browser/{chunk-GANAND63.mjs.map → chunk-I2J5TTHJ.mjs.map} +3 -3
- package/dist/lib/browser/index.mjs +31 -26
- package/dist/lib/browser/index.mjs.map +3 -3
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/browser/testing/index.mjs +99 -4
- package/dist/lib/browser/testing/index.mjs.map +4 -4
- package/dist/lib/node/{chunk-M475BGBI.cjs → chunk-QPCNQ4ZK.cjs} +51 -25
- package/dist/lib/node/chunk-QPCNQ4ZK.cjs.map +7 -0
- package/dist/lib/node/index.cjs +52 -47
- package/dist/lib/node/index.cjs.map +3 -3
- package/dist/lib/node/meta.json +1 -1
- package/dist/lib/node/testing/index.cjs +107 -13
- package/dist/lib/node/testing/index.cjs.map +4 -4
- package/dist/types/src/automerge/automerge-doc-loader.d.ts +7 -3
- package/dist/types/src/automerge/automerge-doc-loader.d.ts.map +1 -1
- package/dist/types/src/automerge/automerge-host.d.ts.map +1 -1
- package/dist/types/src/automerge/migrations.d.ts.map +1 -1
- package/dist/types/src/space/space-manager.d.ts +2 -2
- package/dist/types/src/space/space-manager.d.ts.map +1 -1
- package/dist/types/src/space/space-protocol.d.ts +2 -2
- package/dist/types/src/space/space-protocol.d.ts.map +1 -1
- package/dist/types/src/space/space.d.ts +9 -1
- package/dist/types/src/space/space.d.ts.map +1 -1
- package/dist/types/src/testing/index.d.ts +1 -0
- package/dist/types/src/testing/index.d.ts.map +1 -1
- package/dist/types/src/testing/test-agent-builder.d.ts +2 -2
- package/dist/types/src/testing/test-agent-builder.d.ts.map +1 -1
- package/dist/types/src/testing/test-network-adapter.d.ts +18 -0
- package/dist/types/src/testing/test-network-adapter.d.ts.map +1 -0
- package/package.json +33 -33
- package/src/automerge/automerge-doc-loader.test.ts +5 -2
- package/src/automerge/automerge-doc-loader.ts +6 -4
- package/src/automerge/automerge-host.test.ts +1 -553
- package/src/automerge/automerge-host.ts +12 -5
- package/src/automerge/automerge-repo.test.ts +450 -2
- package/src/automerge/migrations.ts +2 -1
- package/src/automerge/storage-adapter.test.ts +81 -15
- package/src/space/space-manager.ts +6 -4
- package/src/space/space-protocol.test.ts +3 -3
- package/src/space/space-protocol.ts +3 -3
- package/src/space/space.ts +32 -2
- package/src/testing/index.ts +1 -0
- package/src/testing/test-agent-builder.ts +4 -4
- package/src/testing/test-network-adapter.ts +62 -0
- package/dist/lib/node/chunk-M475BGBI.cjs.map +0 -7
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"automerge-host.d.ts","sourceRoot":"","sources":["../../../../src/automerge/automerge-host.ts"],"names":[],"mappings":"AAMA,OAAO,EACL,IAAI,EAGJ,KAAK,UAAU,EAGhB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAGnD,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAGzD,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAGjD,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,QAAQ,EACb,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACtB,MAAM,yCAAyC,CAAC;AACjD,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,6BAA6B,CAAC;AAK7D,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAMxD,YAAY,EAAE,UAAU,EAAE,CAAC;AAE3B,MAAM,MAAM,mBAAmB,GAAG;IAChC,EAAE,EAAE,UAAU,CAAC;IACf;;OAEG;IACH,SAAS,CAAC,EAAE,SAAS,CAAC;IAEtB,kBAAkB,EAAE,kBAAkB,CAAC;CACxC,CAAC;AAEF,qBACa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAqB;IACzD,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAiB;IACtC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAY;IACxC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAa;IACjC,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAEjC;IAEH,OAAO,CAAC,KAAK,CAAQ;IACrB,OAAO,CAAC,cAAc,CAA2B;IACjD,OAAO,CAAC,QAAQ,CAAuC;IAGvD,OAAO,CAAC,OAAO,CAAU;IAElB,cAAc,cAAqB;gBAE9B,EAAE,SAAS,EAAE,EAAE,EAAE,kBAAkB,EAAE,EAAE,mBAAmB;IAMhE,IAAI;
|
|
1
|
+
{"version":3,"file":"automerge-host.d.ts","sourceRoot":"","sources":["../../../../src/automerge/automerge-host.ts"],"names":[],"mappings":"AAMA,OAAO,EACL,IAAI,EAGJ,KAAK,UAAU,EAGhB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAGnD,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAGzD,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAGjD,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,QAAQ,EACb,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACtB,MAAM,yCAAyC,CAAC;AACjD,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,6BAA6B,CAAC;AAK7D,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAMxD,YAAY,EAAE,UAAU,EAAE,CAAC;AAE3B,MAAM,MAAM,mBAAmB,GAAG;IAChC,EAAE,EAAE,UAAU,CAAC;IACf;;OAEG;IACH,SAAS,CAAC,EAAE,SAAS,CAAC;IAEtB,kBAAkB,EAAE,kBAAkB,CAAC;CACxC,CAAC;AAEF,qBACa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAqB;IACzD,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAiB;IACtC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAY;IACxC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAa;IACjC,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAEjC;IAEH,OAAO,CAAC,KAAK,CAAQ;IACrB,OAAO,CAAC,cAAc,CAA2B;IACjD,OAAO,CAAC,QAAQ,CAAuC;IAGvD,OAAO,CAAC,OAAO,CAAU;IAElB,cAAc,cAAqB;gBAE9B,EAAE,SAAS,EAAE,EAAE,EAAE,kBAAkB,EAAE,EAAE,mBAAmB;IAMhE,IAAI;IAoCJ,KAAK;IAOX,IAAI,IAAI,IAAI,IAAI,CAEf;IAEK,aAAa,CAAC,UAAU,EAAE,cAAc;IAIxC,gBAAgB,CAAC,UAAU,EAAE,cAAc;YAQnC,YAAY;YA+BZ,WAAW;IAsBzB;;OAEG;YACW,UAAU;IAKxB,OAAO,CAAC,cAAc;IA0BtB,OAAO,CAAC,eAAe;YAIT,8BAA8B;IAkBtC,KAAK,CAAC,EAAE,MAAM,EAAE,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAapD,QAAQ,CAAC,OAAO,EAAE,eAAe,GAAG,MAAM,CAAC,gBAAgB,CAAC;IAI5D,eAAe,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAIlD,WAAW,IAAI,OAAO,CAAC,QAAQ,CAAC;CAGvC;AAED,eAAO,MAAM,kBAAkB,QAAS,GAAG,KAAG,MAAM,GAAG,IAQtD,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migrations.d.ts","sourceRoot":"","sources":["../../../../src/automerge/migrations.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAEjD,OAAO,EAAe,KAAK,SAAS,EAAE,MAAM,6BAA6B,CAAC;AAK1E,eAAO,MAAM,cAAc,sBAA6B;IAAE,EAAE,EAAE,UAAU,CAAC;IAAC,SAAS,EAAE,SAAS,CAAA;CAAE,
|
|
1
|
+
{"version":3,"file":"migrations.d.ts","sourceRoot":"","sources":["../../../../src/automerge/migrations.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAEjD,OAAO,EAAe,KAAK,SAAS,EAAE,MAAM,6BAA6B,CAAC;AAK1E,eAAO,MAAM,cAAc,sBAA6B;IAAE,EAAE,EAAE,UAAU,CAAC;IAAC,SAAS,EAAE,SAAS,CAAA;CAAE,kBA4B/F,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { type DelegateInvitationCredential, type MemberInfo } from '@dxos/credentials';
|
|
2
2
|
import { type FeedStore } from '@dxos/feed-store';
|
|
3
3
|
import { PublicKey } from '@dxos/keys';
|
|
4
|
-
import { type
|
|
4
|
+
import { type SwarmNetworkManager } from '@dxos/network-manager';
|
|
5
5
|
import type { FeedMessage } from '@dxos/protocols/proto/dxos/echo/feed';
|
|
6
6
|
import { type SpaceMetadata } from '@dxos/protocols/proto/dxos/echo/metadata';
|
|
7
7
|
import { type Teleport } from '@dxos/teleport';
|
|
@@ -13,7 +13,7 @@ import { type SnapshotStore } from '../db-host';
|
|
|
13
13
|
import { type MetadataStore } from '../metadata';
|
|
14
14
|
export type SpaceManagerParams = {
|
|
15
15
|
feedStore: FeedStore<FeedMessage>;
|
|
16
|
-
networkManager:
|
|
16
|
+
networkManager: SwarmNetworkManager;
|
|
17
17
|
metadataStore: MetadataStore;
|
|
18
18
|
/**
|
|
19
19
|
* @deprecated Replaced by BlobStore.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"space-manager.d.ts","sourceRoot":"","sources":["../../../../src/space/space-manager.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,KAAK,4BAA4B,EAAE,KAAK,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAEvF,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAEvC,OAAO,EAAE,KAAK,
|
|
1
|
+
{"version":3,"file":"space-manager.d.ts","sourceRoot":"","sources":["../../../../src/space/space-manager.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,KAAK,4BAA4B,EAAE,KAAK,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAEvF,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAEvC,OAAO,EAAE,KAAK,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAEjE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sCAAsC,CAAC;AACxE,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,0CAA0C,CAAC;AAC9E,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,sCAAsC,CAAC;AACtE,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAExC,OAAO,EAAE,KAAK,EAAwB,MAAM,SAAS,CAAC;AACtD,OAAO,EAAiB,KAAK,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACrE,OAAO,EAAmB,KAAK,aAAa,EAAE,MAAM,YAAY,CAAC;AACjE,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,aAAa,CAAC;AAEjD,MAAM,MAAM,kBAAkB,GAAG;IAC/B,SAAS,EAAE,SAAS,CAAC,WAAW,CAAC,CAAC;IAClC,cAAc,EAAE,mBAAmB,CAAC;IACpC,aAAa,EAAE,aAAa,CAAC;IAE7B;;OAEG;IACH,aAAa,EAAE,aAAa,CAAC;IAE7B,SAAS,EAAE,SAAS,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IACjC,QAAQ,EAAE,aAAa,CAAC;IACxB,aAAa,EAAE,aAAa,CAAC;IAC7B,SAAS,EAAE,SAAS,CAAC;IACrB;;OAEG;IACH,sBAAsB,EAAE,CAAC,OAAO,EAAE,QAAQ,KAAK,IAAI,CAAC;IACpD,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE,QAAQ,KAAK,IAAI,CAAC;IAC5C,iCAAiC,EAAE,CAAC,UAAU,EAAE,4BAA4B,EAAE,QAAQ,EAAE,OAAO,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAClH,oBAAoB,EAAE,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CAC/D,CAAC;AAEF;;GAEG;AACH,qBACa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAoD;IAC5E,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAyB;IACpD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAsB;IACtD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAgB;IAC/C,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAgB;IAC/C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAY;IACvC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA8B;gBAE9C,EAAE,SAAS,EAAE,cAAc,EAAE,aAAa,EAAE,aAAa,EAAE,SAAS,EAAE,EAAE,kBAAkB;IAUtG,IAAI,MAAM,iCAET;IAGK,IAAI;IAGJ,KAAK;IAIL,cAAc,CAAC,EACnB,QAAQ,EACR,aAAa,EACb,sBAAsB,EACtB,aAAa,EACb,iCAAiC,EACjC,oBAAoB,EACpB,SAAS,GACV,EAAE,oBAAoB;CAoCxB"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
import { type Event } from '@dxos/async';
|
|
3
3
|
import { type FeedWrapper } from '@dxos/feed-store';
|
|
4
4
|
import { PublicKey } from '@dxos/keys';
|
|
5
|
-
import { type
|
|
5
|
+
import { type SwarmNetworkManager, type WireProtocol, type WireProtocolParams } from '@dxos/network-manager';
|
|
6
6
|
import type { FeedMessage } from '@dxos/protocols/proto/dxos/echo/feed';
|
|
7
7
|
import { type MuxerStats, Teleport } from '@dxos/teleport';
|
|
8
8
|
import { type BlobStore, BlobSync } from '@dxos/teleport-extension-object-sync';
|
|
@@ -18,7 +18,7 @@ export interface SwarmIdentity {
|
|
|
18
18
|
export type SpaceProtocolOptions = {
|
|
19
19
|
topic: PublicKey;
|
|
20
20
|
swarmIdentity: SwarmIdentity;
|
|
21
|
-
networkManager:
|
|
21
|
+
networkManager: SwarmNetworkManager;
|
|
22
22
|
blobStore: BlobStore;
|
|
23
23
|
/**
|
|
24
24
|
* Called when new session is authenticated.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"space-protocol.d.ts","sourceRoot":"","sources":["../../../../src/space/space-protocol.ts"],"names":[],"mappings":";AAIA,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,aAAa,CAAC;AAEzC,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAEvC,OAAO,EAEL,KAAK,
|
|
1
|
+
{"version":3,"file":"space-protocol.d.ts","sourceRoot":"","sources":["../../../../src/space/space-protocol.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@ import { Event } from '@dxos/async';
|
|
|
2
2
|
import { type Context, Resource } from '@dxos/context';
|
|
3
3
|
import { type DelegateInvitationCredential, type FeedInfo, type MemberInfo } from '@dxos/credentials';
|
|
4
4
|
import { type FeedOptions, type FeedWrapper } from '@dxos/feed-store';
|
|
5
|
-
import {
|
|
5
|
+
import { PublicKey, SpaceId } from '@dxos/keys';
|
|
6
6
|
import type { FeedMessage } from '@dxos/protocols/proto/dxos/echo/feed';
|
|
7
7
|
import { type Credential } from '@dxos/protocols/proto/dxos/halo/credentials';
|
|
8
8
|
import { type Timeframe } from '@dxos/timeframe';
|
|
@@ -13,6 +13,7 @@ import { type MetadataStore } from '../metadata';
|
|
|
13
13
|
import { type PipelineAccessor } from '../pipeline';
|
|
14
14
|
type FeedProvider = (feedKey: PublicKey, opts?: FeedOptions) => Promise<FeedWrapper<FeedMessage>>;
|
|
15
15
|
export type SpaceParams = {
|
|
16
|
+
id: SpaceId;
|
|
16
17
|
spaceKey: PublicKey;
|
|
17
18
|
protocol: SpaceProtocol;
|
|
18
19
|
genesisFeed: FeedWrapper<FeedMessage>;
|
|
@@ -35,6 +36,7 @@ export declare class Space extends Resource {
|
|
|
35
36
|
readonly onCredentialProcessed: Callback<AsyncCallback<Credential>>;
|
|
36
37
|
readonly stateUpdate: Event<void>;
|
|
37
38
|
readonly protocol: SpaceProtocol;
|
|
39
|
+
private readonly _id;
|
|
38
40
|
private readonly _key;
|
|
39
41
|
private readonly _genesisFeedKey;
|
|
40
42
|
private readonly _feedProvider;
|
|
@@ -43,6 +45,7 @@ export declare class Space extends Resource {
|
|
|
43
45
|
private _controlFeed?;
|
|
44
46
|
private _dataFeed?;
|
|
45
47
|
constructor(params: SpaceParams);
|
|
48
|
+
get id(): SpaceId;
|
|
46
49
|
get key(): PublicKey;
|
|
47
50
|
get isOpen(): boolean;
|
|
48
51
|
get genesisFeedKey(): PublicKey;
|
|
@@ -63,5 +66,10 @@ export declare class Space extends Resource {
|
|
|
63
66
|
protected _open(ctx: Context): Promise<void>;
|
|
64
67
|
protected _close(): Promise<void>;
|
|
65
68
|
}
|
|
69
|
+
/**
|
|
70
|
+
* Space keys are generated by creating a keypair, and then taking the first 20 bytes of the SHA-256 hash of the public key and encoding them to multibase RFC4648 base-32 format (prefixed with B, see Multibase Table).
|
|
71
|
+
* Inspired by how ethereum addresses are derived.
|
|
72
|
+
*/
|
|
73
|
+
export declare const createIdFromSpaceKey: (spaceKey: PublicKey) => Promise<SpaceId>;
|
|
66
74
|
export {};
|
|
67
75
|
//# sourceMappingURL=space.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"space.d.ts","sourceRoot":"","sources":["../../../../src/space/space.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,EAAmC,MAAM,aAAa,CAAC;AACrE,OAAO,EAAE,KAAK,OAAO,EAAkB,QAAQ,EAAE,MAAM,eAAe,CAAC;AACvE,OAAO,EAAE,KAAK,4BAA4B,EAAE,KAAK,QAAQ,EAAE,KAAK,UAAU,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"space.d.ts","sourceRoot":"","sources":["../../../../src/space/space.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/testing/index.ts"],"names":[],"mappings":"AAIA,cAAc,mBAAmB,CAAC;AAClC,cAAc,sBAAsB,CAAC;AACrC,cAAc,qBAAqB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/testing/index.ts"],"names":[],"mappings":"AAIA,cAAc,mBAAmB,CAAC;AAClC,cAAc,sBAAsB,CAAC;AACrC,cAAc,qBAAqB,CAAC;AACpC,cAAc,wBAAwB,CAAC"}
|
|
@@ -2,7 +2,7 @@ import { type FeedStore } from '@dxos/feed-store';
|
|
|
2
2
|
import { type Keyring } from '@dxos/keyring';
|
|
3
3
|
import { PublicKey } from '@dxos/keys';
|
|
4
4
|
import { MemorySignalManagerContext } from '@dxos/messaging';
|
|
5
|
-
import {
|
|
5
|
+
import { SwarmNetworkManager } from '@dxos/network-manager';
|
|
6
6
|
import type { FeedMessage } from '@dxos/protocols/proto/dxos/echo/feed';
|
|
7
7
|
import { type Storage } from '@dxos/random-access-storage';
|
|
8
8
|
import { Gossip, Presence } from '@dxos/teleport-extension-gossip';
|
|
@@ -11,7 +11,7 @@ import { TestFeedBuilder } from './test-feed-builder';
|
|
|
11
11
|
import { SnapshotStore } from '../db-host';
|
|
12
12
|
import { MetadataStore } from '../metadata';
|
|
13
13
|
import { SpaceManager, SpaceProtocol, type Space } from '../space';
|
|
14
|
-
export type NetworkManagerProvider = () =>
|
|
14
|
+
export type NetworkManagerProvider = () => SwarmNetworkManager;
|
|
15
15
|
export declare const MemoryNetworkManagerProvider: (signalContext: MemorySignalManagerContext) => NetworkManagerProvider;
|
|
16
16
|
export declare const WebsocketNetworkManagerProvider: (signalUrl: string) => NetworkManagerProvider;
|
|
17
17
|
export type TestAgentBuilderOptions = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"test-agent-builder.d.ts","sourceRoot":"","sources":["../../../../src/testing/test-agent-builder.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AACvC,OAAO,EAAuB,0BAA0B,EAA0B,MAAM,iBAAiB,CAAC;AAC1G,OAAO,EAA0B,
|
|
1
|
+
{"version":3,"file":"test-agent-builder.d.ts","sourceRoot":"","sources":["../../../../src/testing/test-agent-builder.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { Trigger } from '@dxos/async';
|
|
2
|
+
import { type Message, NetworkAdapter, type PeerId } from '@dxos/automerge/automerge-repo';
|
|
3
|
+
export declare class TestAdapter extends NetworkAdapter {
|
|
4
|
+
private readonly _params;
|
|
5
|
+
static createPair(): TestAdapter[];
|
|
6
|
+
onConnect: Trigger<void>;
|
|
7
|
+
constructor(_params: {
|
|
8
|
+
send: (message: Message) => void;
|
|
9
|
+
});
|
|
10
|
+
ready(): void;
|
|
11
|
+
connect(peerId: PeerId): void;
|
|
12
|
+
peerCandidate(peerId: PeerId): void;
|
|
13
|
+
peerDisconnected(peerId: PeerId): void;
|
|
14
|
+
send(message: Message): void;
|
|
15
|
+
disconnect(): void;
|
|
16
|
+
receive(message: Message): void;
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=test-network-adapter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"test-network-adapter.d.ts","sourceRoot":"","sources":["../../../../src/testing/test-network-adapter.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,OAAO,EAAS,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,KAAK,OAAO,EAAE,cAAc,EAAE,KAAK,MAAM,EAAE,MAAM,gCAAgC,CAAC;AAI3F,qBAAa,WAAY,SAAQ,cAAc;IAcjC,OAAO,CAAC,QAAQ,CAAC,OAAO;IAbpC,MAAM,CAAC,UAAU;IAWV,SAAS,gBAAiB;gBAEJ,OAAO,EAAE;QAAE,IAAI,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAA;KAAE;IAM1E,KAAK;IAII,OAAO,CAAC,MAAM,EAAE,MAAM;IAK/B,aAAa,CAAC,MAAM,EAAE,MAAM;IAK5B,gBAAgB,CAAC,MAAM,EAAE,MAAM;IAKtB,IAAI,CAAC,OAAO,EAAE,OAAO;IAKrB,UAAU;IAInB,OAAO,CAAC,OAAO,EAAE,OAAO;CAIzB"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dxos/echo-pipeline",
|
|
3
|
-
"version": "0.5.
|
|
3
|
+
"version": "0.5.9-main.2d0a5e6",
|
|
4
4
|
"description": "ECHO database.",
|
|
5
5
|
"homepage": "https://dxos.org",
|
|
6
6
|
"bugs": "https://github.com/dxos/dxos/issues",
|
|
@@ -39,38 +39,38 @@
|
|
|
39
39
|
"crc-32": "^1.2.2",
|
|
40
40
|
"level": "^8.0.1",
|
|
41
41
|
"level-transcoder": "^1.0.1",
|
|
42
|
-
"@dxos/async": "0.5.
|
|
43
|
-
"@dxos/
|
|
44
|
-
"@dxos/automerge": "0.5.
|
|
45
|
-
"@dxos/
|
|
46
|
-
"@dxos/credentials": "0.5.
|
|
47
|
-
"@dxos/crypto": "0.5.
|
|
48
|
-
"@dxos/debug": "0.5.
|
|
49
|
-
"@dxos/echo-
|
|
50
|
-
"@dxos/echo-
|
|
51
|
-
"@dxos/feed-store": "0.5.
|
|
52
|
-
"@dxos/indexing": "0.5.
|
|
53
|
-
"@dxos/
|
|
54
|
-
"@dxos/keyring": "0.5.
|
|
55
|
-
"@dxos/
|
|
56
|
-
"@dxos/
|
|
57
|
-
"@dxos/
|
|
58
|
-
"@dxos/log": "0.5.
|
|
59
|
-
"@dxos/messaging": "0.5.
|
|
60
|
-
"@dxos/
|
|
61
|
-
"@dxos/
|
|
62
|
-
"@dxos/
|
|
63
|
-
"@dxos/
|
|
64
|
-
"@dxos/rpc": "0.5.
|
|
65
|
-
"@dxos/teleport": "0.5.
|
|
66
|
-
"@dxos/teleport-extension-gossip": "0.5.
|
|
67
|
-
"@dxos/teleport-extension-automerge-replicator": "0.5.
|
|
68
|
-
"@dxos/teleport-extension-object-sync": "0.5.
|
|
69
|
-
"@dxos/teleport-extension-replicator": "0.5.
|
|
70
|
-
"@dxos/timeframe": "0.5.
|
|
71
|
-
"@dxos/
|
|
72
|
-
"@dxos/
|
|
73
|
-
"@dxos/
|
|
42
|
+
"@dxos/async": "0.5.9-main.2d0a5e6",
|
|
43
|
+
"@dxos/context": "0.5.9-main.2d0a5e6",
|
|
44
|
+
"@dxos/automerge": "0.5.9-main.2d0a5e6",
|
|
45
|
+
"@dxos/codec-protobuf": "0.5.9-main.2d0a5e6",
|
|
46
|
+
"@dxos/credentials": "0.5.9-main.2d0a5e6",
|
|
47
|
+
"@dxos/crypto": "0.5.9-main.2d0a5e6",
|
|
48
|
+
"@dxos/debug": "0.5.9-main.2d0a5e6",
|
|
49
|
+
"@dxos/echo-protocol": "0.5.9-main.2d0a5e6",
|
|
50
|
+
"@dxos/echo-schema": "0.5.9-main.2d0a5e6",
|
|
51
|
+
"@dxos/feed-store": "0.5.9-main.2d0a5e6",
|
|
52
|
+
"@dxos/indexing": "0.5.9-main.2d0a5e6",
|
|
53
|
+
"@dxos/hypercore": "0.5.9-main.2d0a5e6",
|
|
54
|
+
"@dxos/keyring": "0.5.9-main.2d0a5e6",
|
|
55
|
+
"@dxos/invariant": "0.5.9-main.2d0a5e6",
|
|
56
|
+
"@dxos/kv-store": "0.5.9-main.2d0a5e6",
|
|
57
|
+
"@dxos/keys": "0.5.9-main.2d0a5e6",
|
|
58
|
+
"@dxos/log": "0.5.9-main.2d0a5e6",
|
|
59
|
+
"@dxos/messaging": "0.5.9-main.2d0a5e6",
|
|
60
|
+
"@dxos/node-std": "0.5.9-main.2d0a5e6",
|
|
61
|
+
"@dxos/network-manager": "0.5.9-main.2d0a5e6",
|
|
62
|
+
"@dxos/protocols": "0.5.9-main.2d0a5e6",
|
|
63
|
+
"@dxos/random-access-storage": "0.5.9-main.2d0a5e6",
|
|
64
|
+
"@dxos/rpc": "0.5.9-main.2d0a5e6",
|
|
65
|
+
"@dxos/teleport": "0.5.9-main.2d0a5e6",
|
|
66
|
+
"@dxos/teleport-extension-gossip": "0.5.9-main.2d0a5e6",
|
|
67
|
+
"@dxos/teleport-extension-automerge-replicator": "0.5.9-main.2d0a5e6",
|
|
68
|
+
"@dxos/teleport-extension-object-sync": "0.5.9-main.2d0a5e6",
|
|
69
|
+
"@dxos/teleport-extension-replicator": "0.5.9-main.2d0a5e6",
|
|
70
|
+
"@dxos/timeframe": "0.5.9-main.2d0a5e6",
|
|
71
|
+
"@dxos/tracing": "0.5.9-main.2d0a5e6",
|
|
72
|
+
"@dxos/typings": "0.5.9-main.2d0a5e6",
|
|
73
|
+
"@dxos/util": "0.5.9-main.2d0a5e6"
|
|
74
74
|
},
|
|
75
75
|
"devDependencies": {
|
|
76
76
|
"fast-check": "^3.19.0",
|
|
@@ -8,6 +8,7 @@ import { sleep } from '@dxos/async';
|
|
|
8
8
|
import { Repo } from '@dxos/automerge/automerge-repo';
|
|
9
9
|
import { Context } from '@dxos/context';
|
|
10
10
|
import { type SpaceDoc } from '@dxos/echo-protocol';
|
|
11
|
+
import { generateEchoId } from '@dxos/echo-schema';
|
|
11
12
|
import { PublicKey } from '@dxos/keys';
|
|
12
13
|
import { describe, test } from '@dxos/test';
|
|
13
14
|
|
|
@@ -16,10 +17,11 @@ import {
|
|
|
16
17
|
AutomergeDocumentLoaderImpl,
|
|
17
18
|
type ObjectDocumentLoaded,
|
|
18
19
|
} from './automerge-doc-loader';
|
|
20
|
+
import { createIdFromSpaceKey } from '../space';
|
|
19
21
|
|
|
20
22
|
const ctx = new Context();
|
|
21
23
|
const SPACE_KEY = PublicKey.random();
|
|
22
|
-
const randomId = () =>
|
|
24
|
+
const randomId = () => generateEchoId();
|
|
23
25
|
describe('AutomergeDocumentLoader', () => {
|
|
24
26
|
test('space access is set on root doc handle and it is accessible', async () => {
|
|
25
27
|
const { loader, spaceRootDocHandle } = await setupTest();
|
|
@@ -71,8 +73,9 @@ describe('AutomergeDocumentLoader', () => {
|
|
|
71
73
|
});
|
|
72
74
|
|
|
73
75
|
const setupTest = async () => {
|
|
76
|
+
const spaceId = await createIdFromSpaceKey(SPACE_KEY);
|
|
74
77
|
const repo = new Repo({ network: [] });
|
|
75
|
-
const loader = new AutomergeDocumentLoaderImpl(
|
|
78
|
+
const loader = new AutomergeDocumentLoaderImpl(spaceId, repo, SPACE_KEY);
|
|
76
79
|
const spaceRootDocHandle = repo.create<SpaceDoc>();
|
|
77
80
|
await loader.loadSpaceRootDocHandle(ctx, {
|
|
78
81
|
rootUrl: spaceRootDocHandle.url,
|
|
@@ -8,7 +8,7 @@ import { cancelWithContext, type Context } from '@dxos/context';
|
|
|
8
8
|
import { warnAfterTimeout } from '@dxos/debug';
|
|
9
9
|
import { type SpaceState, type SpaceDoc } from '@dxos/echo-protocol';
|
|
10
10
|
import { invariant } from '@dxos/invariant';
|
|
11
|
-
import { type PublicKey } from '@dxos/keys';
|
|
11
|
+
import { type PublicKey, type SpaceId } from '@dxos/keys';
|
|
12
12
|
import { log } from '@dxos/log';
|
|
13
13
|
import { trace } from '@dxos/tracing';
|
|
14
14
|
|
|
@@ -51,8 +51,10 @@ export class AutomergeDocumentLoaderImpl implements AutomergeDocumentLoader {
|
|
|
51
51
|
public readonly onObjectDocumentLoaded = new Event<ObjectDocumentLoaded>();
|
|
52
52
|
|
|
53
53
|
constructor(
|
|
54
|
-
private readonly
|
|
54
|
+
private readonly _spaceId: SpaceId,
|
|
55
55
|
private readonly _repo: Repo,
|
|
56
|
+
/** Legacy Id */
|
|
57
|
+
private readonly _spaceKey: PublicKey,
|
|
56
58
|
) {}
|
|
57
59
|
|
|
58
60
|
getAllHandles(): DocHandle<SpaceDoc>[] {
|
|
@@ -67,7 +69,7 @@ export class AutomergeDocumentLoaderImpl implements AutomergeDocumentLoader {
|
|
|
67
69
|
return;
|
|
68
70
|
}
|
|
69
71
|
if (!spaceState.rootUrl) {
|
|
70
|
-
log.error('Database opened with no rootUrl', {
|
|
72
|
+
log.error('Database opened with no rootUrl', { spaceId: this._spaceId });
|
|
71
73
|
this._createContextBoundSpaceRootDocument(ctx);
|
|
72
74
|
} else {
|
|
73
75
|
const existingDocHandle = await this._initDocHandle(ctx, spaceState.rootUrl);
|
|
@@ -173,7 +175,7 @@ export class AutomergeDocumentLoaderImpl implements AutomergeDocumentLoader {
|
|
|
173
175
|
const docHandle = this._repo.find<SpaceDoc>(url as DocumentId);
|
|
174
176
|
while (true) {
|
|
175
177
|
try {
|
|
176
|
-
await warnAfterTimeout(5_000, 'Automerge root doc load timeout (
|
|
178
|
+
await warnAfterTimeout(5_000, 'Automerge root doc load timeout (CoreDatabase)', async () => {
|
|
177
179
|
await cancelWithContext(ctx, docHandle.whenReady()); // TODO(dmaretskyi): Temporary 5s timeout for debugging.
|
|
178
180
|
});
|
|
179
181
|
break;
|