@econ-v1/domain 6.6.0 → 6.10.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.
- package/dist/errors/index.d.ts +96 -25
- package/dist/errors/index.d.ts.map +1 -1
- package/dist/events/index.d.ts +127 -20
- package/dist/events/index.d.ts.map +1 -1
- package/dist/index.d.ts +250 -47
- package/dist/index.d.ts.map +1 -1
- package/dist/models/agent.d.ts +25 -4
- package/dist/models/agent.d.ts.map +1 -1
- package/dist/models/app-data.d.ts +84 -0
- package/dist/models/app-data.d.ts.map +1 -0
- package/dist/models/conversation.d.ts +12 -2
- package/dist/models/conversation.d.ts.map +1 -1
- package/dist/models/delegation.d.ts +12 -3
- package/dist/models/delegation.d.ts.map +1 -1
- package/dist/models/device-boot-state.d.ts +12 -0
- package/dist/models/device-boot-state.d.ts.map +1 -0
- package/dist/models/device-identity.d.ts +11 -3
- package/dist/models/device-identity.d.ts.map +1 -1
- package/dist/models/graph.d.ts +26 -3
- package/dist/models/graph.d.ts.map +1 -1
- package/dist/models/index.d.ts +82 -14
- package/dist/models/index.d.ts.map +1 -1
- package/dist/models/json.d.ts +5 -5
- package/dist/models/json.d.ts.map +1 -1
- package/dist/models/l402.d.ts +4 -5
- package/dist/models/l402.d.ts.map +1 -1
- package/dist/models/live-query-definition.d.ts +15 -16
- package/dist/models/live-query-definition.d.ts.map +1 -1
- package/dist/models/node-app-memory.d.ts +107 -0
- package/dist/models/node-app-memory.d.ts.map +1 -0
- package/dist/models/outbox-intent.d.ts +3 -3
- package/dist/models/outbox-intent.d.ts.map +1 -1
- package/dist/models/outbox.d.ts +67 -15
- package/dist/models/outbox.d.ts.map +1 -1
- package/dist/models/owner-views.d.ts +28 -28
- package/dist/models/owner-views.d.ts.map +1 -1
- package/dist/models/payment.d.ts +28 -9
- package/dist/models/payment.d.ts.map +1 -1
- package/dist/models/query-diff.d.ts +2 -2
- package/dist/models/query-diff.d.ts.map +1 -1
- package/dist/models/release-manifest.d.ts +32 -47
- package/dist/models/release-manifest.d.ts.map +1 -1
- package/dist/models/repository-write.d.ts +3 -3
- package/dist/models/repository-write.d.ts.map +1 -1
- package/dist/models/revisioned-commands.d.ts +66 -13
- package/dist/models/revisioned-commands.d.ts.map +1 -1
- package/dist/models/revisioned.d.ts +50 -10
- package/dist/models/revisioned.d.ts.map +1 -1
- package/dist/models/settings.d.ts +2 -2
- package/dist/models/settings.d.ts.map +1 -1
- package/dist/models/sync.d.ts +18 -18
- package/dist/models/sync.d.ts.map +1 -1
- package/dist/models/wallet.d.ts +16 -16
- package/dist/models/wallet.d.ts.map +1 -1
- package/dist/queries/certificate-trust.d.ts +13 -0
- package/dist/queries/certificate-trust.d.ts.map +1 -0
- package/dist/queries/conversations.d.ts +38 -7
- package/dist/queries/conversations.d.ts.map +1 -1
- package/dist/queries/discovery.d.ts +10 -10
- package/dist/queries/discovery.d.ts.map +1 -1
- package/dist/queries/notifications.d.ts +24 -4
- package/dist/queries/notifications.d.ts.map +1 -1
- package/dist/queries/onboarding-flow.d.ts +25 -0
- package/dist/queries/onboarding-flow.d.ts.map +1 -0
- package/dist/queries/onboarding-lcd-screen.d.ts +56 -0
- package/dist/queries/onboarding-lcd-screen.d.ts.map +1 -0
- package/dist/queries/onboarding-status.d.ts +10 -10
- package/dist/queries/onboarding-status.d.ts.map +1 -1
- package/dist/queries/revisioned.d.ts +47 -13
- package/dist/queries/revisioned.d.ts.map +1 -1
- package/dist/queries/wallet.d.ts +40 -10
- package/dist/queries/wallet.d.ts.map +1 -1
- package/dist/services/abort-signal.d.ts +54 -0
- package/dist/services/abort-signal.d.ts.map +1 -0
- package/dist/services/certificate-trust-service.d.ts +42 -0
- package/dist/services/certificate-trust-service.d.ts.map +1 -0
- package/dist/services/conversation-service.d.ts +103 -15
- package/dist/services/conversation-service.d.ts.map +1 -1
- package/dist/services/conversation-sync.d.ts +9 -5
- package/dist/services/conversation-sync.d.ts.map +1 -1
- package/dist/services/device-boot-state-service.d.ts +17 -0
- package/dist/services/device-boot-state-service.d.ts.map +1 -0
- package/dist/services/device-cleanup-service.d.ts +47 -0
- package/dist/services/device-cleanup-service.d.ts.map +1 -0
- package/dist/services/discovery-probe-service.d.ts +37 -46
- package/dist/services/discovery-probe-service.d.ts.map +1 -1
- package/dist/services/gossip-service.d.ts +28 -13
- package/dist/services/gossip-service.d.ts.map +1 -1
- package/dist/services/invite-redemption-service.d.ts +43 -0
- package/dist/services/invite-redemption-service.d.ts.map +1 -0
- package/dist/services/lan-candidate-refresh-service.d.ts +22 -7
- package/dist/services/lan-candidate-refresh-service.d.ts.map +1 -1
- package/dist/services/lcd-decision-service.d.ts +58 -0
- package/dist/services/lcd-decision-service.d.ts.map +1 -0
- package/dist/services/onboarding-checkpoint-store.d.ts +54 -0
- package/dist/services/onboarding-checkpoint-store.d.ts.map +1 -0
- package/dist/services/onboarding-flow-service.d.ts +180 -0
- package/dist/services/onboarding-flow-service.d.ts.map +1 -0
- package/dist/services/onboarding-status-service.d.ts +21 -38
- package/dist/services/onboarding-status-service.d.ts.map +1 -1
- package/dist/services/outbox-service.d.ts +105 -29
- package/dist/services/outbox-service.d.ts.map +1 -1
- package/dist/services/owner-claim-service.d.ts +187 -0
- package/dist/services/owner-claim-service.d.ts.map +1 -0
- package/dist/services/owner-view-refresh-service.d.ts +40 -0
- package/dist/services/owner-view-refresh-service.d.ts.map +1 -0
- package/dist/services/owner-view-service.d.ts +49 -4
- package/dist/services/owner-view-service.d.ts.map +1 -1
- package/dist/services/peer-directory-service.d.ts +53 -17
- package/dist/services/peer-directory-service.d.ts.map +1 -1
- package/dist/services/release-manifest-verifier.d.ts +18 -20
- package/dist/services/release-manifest-verifier.d.ts.map +1 -1
- package/dist/services/revisioned-domain-service.d.ts +50 -17
- package/dist/services/revisioned-domain-service.d.ts.map +1 -1
- package/dist/services/runtime-globals.d.ts +39 -0
- package/dist/services/runtime-globals.d.ts.map +1 -0
- package/dist/services/session-service.d.ts +23 -3
- package/dist/services/session-service.d.ts.map +1 -1
- package/dist/services/sync/authoritative-mirror.d.ts +88 -15
- package/dist/services/sync/authoritative-mirror.d.ts.map +1 -1
- package/dist/services/sync/index.d.ts +17 -5
- package/dist/services/sync/index.d.ts.map +1 -1
- package/dist/services/sync/log-sync.d.ts +42 -8
- package/dist/services/sync/log-sync.d.ts.map +1 -1
- package/dist/services/sync/revision-merge.d.ts +80 -13
- package/dist/services/sync/revision-merge.d.ts.map +1 -1
- package/dist/services/sync/strategy.d.ts +11 -1
- package/dist/services/sync/strategy.d.ts.map +1 -1
- package/dist/services/transport-manager.d.ts +84 -29
- package/dist/services/transport-manager.d.ts.map +1 -1
- package/dist/services/wallet-mirror-service.d.ts +81 -18
- package/dist/services/wallet-mirror-service.d.ts.map +1 -1
- package/dist/services/wifi-provisioning-service.d.ts +146 -0
- package/dist/services/wifi-provisioning-service.d.ts.map +1 -0
- package/package.json +18 -12
- package/src/errors/index.js +126 -0
- package/src/events/index.js +124 -0
- package/src/index.js +566 -0
- package/src/models/agent.js +43 -0
- package/src/models/app-data.js +122 -0
- package/src/models/conversation.js +36 -0
- package/{dist → src}/models/delegation.js +18 -1
- package/src/models/device-boot-state.js +3 -0
- package/{dist → src}/models/device-identity.js +18 -2
- package/{dist → src}/models/graph.js +30 -3
- package/src/models/index.js +175 -0
- package/src/models/json.js +18 -0
- package/src/models/l402.js +9 -0
- package/src/models/live-query-definition.js +30 -0
- package/src/models/node-app-memory.js +130 -0
- package/src/models/outbox-intent.js +12 -0
- package/{dist → src}/models/outbox.js +102 -3
- package/src/models/owner-views.js +59 -0
- package/src/models/payment.js +24 -0
- package/src/models/query-diff.js +7 -0
- package/src/models/release-manifest.js +160 -0
- package/src/models/repository-write.js +10 -0
- package/src/models/revisioned-commands.js +92 -0
- package/src/models/revisioned.js +41 -0
- package/src/models/settings.js +16 -0
- package/src/models/sync.js +44 -0
- package/src/models/wallet.js +40 -0
- package/src/queries/certificate-trust.js +31 -0
- package/{dist → src}/queries/conversations.js +54 -3
- package/src/queries/discovery.js +34 -0
- package/{dist → src}/queries/notifications.js +25 -2
- package/src/queries/onboarding-flow.js +48 -0
- package/src/queries/onboarding-lcd-screen.js +100 -0
- package/src/queries/onboarding-status.js +34 -0
- package/src/queries/revisioned.js +128 -0
- package/{dist → src}/queries/wallet.js +35 -1
- package/src/services/abort-signal.js +69 -0
- package/src/services/certificate-trust-service.js +119 -0
- package/{dist → src}/services/conversation-service.js +108 -1
- package/src/services/conversation-sync.js +28 -0
- package/src/services/device-boot-state-service.js +45 -0
- package/src/services/device-cleanup-service.js +112 -0
- package/src/services/discovery-probe-service.js +196 -0
- package/{dist → src}/services/gossip-service.js +54 -4
- package/src/services/invite-redemption-service.js +64 -0
- package/src/services/lan-candidate-refresh-service.js +164 -0
- package/src/services/lcd-decision-service.js +93 -0
- package/src/services/onboarding-checkpoint-store.js +155 -0
- package/src/services/onboarding-flow-service.js +1096 -0
- package/src/services/onboarding-status-service.js +64 -0
- package/{dist → src}/services/outbox-service.js +132 -1
- package/src/services/owner-claim-service.js +347 -0
- package/src/services/owner-view-refresh-service.js +208 -0
- package/src/services/owner-view-service.js +87 -0
- package/{dist → src}/services/peer-directory-service.js +72 -3
- package/src/services/release-manifest-verifier.js +108 -0
- package/{dist → src}/services/revisioned-domain-service.js +189 -9
- package/src/services/runtime-globals.js +174 -0
- package/src/services/session-service.js +50 -0
- package/{dist → src}/services/sync/authoritative-mirror.js +90 -1
- package/src/services/sync/index.js +67 -0
- package/src/services/sync/log-sync.js +60 -0
- package/src/services/sync/revision-merge.js +119 -0
- package/src/services/sync/strategy.js +44 -0
- package/src/services/transport-manager.js +478 -0
- package/{dist → src}/services/wallet-mirror-service.js +226 -6
- package/src/services/wifi-provisioning-service.js +278 -0
- package/dist/errors/index.js +0 -45
- package/dist/errors/index.js.map +0 -1
- package/dist/events/index.js +0 -17
- package/dist/events/index.js.map +0 -1
- package/dist/index.js +0 -31
- package/dist/index.js.map +0 -1
- package/dist/models/agent.js +0 -17
- package/dist/models/agent.js.map +0 -1
- package/dist/models/conversation.js +0 -2
- package/dist/models/conversation.js.map +0 -1
- package/dist/models/delegation.js.map +0 -1
- package/dist/models/device-identity.js.map +0 -1
- package/dist/models/graph.js.map +0 -1
- package/dist/models/index.js +0 -8
- package/dist/models/index.js.map +0 -1
- package/dist/models/json.js +0 -2
- package/dist/models/json.js.map +0 -1
- package/dist/models/l402.js +0 -2
- package/dist/models/l402.js.map +0 -1
- package/dist/models/live-query-definition.js +0 -2
- package/dist/models/live-query-definition.js.map +0 -1
- package/dist/models/outbox-intent.js +0 -2
- package/dist/models/outbox-intent.js.map +0 -1
- package/dist/models/outbox.js.map +0 -1
- package/dist/models/owner-views.js +0 -7
- package/dist/models/owner-views.js.map +0 -1
- package/dist/models/payment.js +0 -3
- package/dist/models/payment.js.map +0 -1
- package/dist/models/query-diff.js +0 -2
- package/dist/models/query-diff.js.map +0 -1
- package/dist/models/release-manifest.js +0 -147
- package/dist/models/release-manifest.js.map +0 -1
- package/dist/models/repository-write.js +0 -2
- package/dist/models/repository-write.js.map +0 -1
- package/dist/models/revisioned-commands.js +0 -35
- package/dist/models/revisioned-commands.js.map +0 -1
- package/dist/models/revisioned.js +0 -2
- package/dist/models/revisioned.js.map +0 -1
- package/dist/models/settings.js +0 -2
- package/dist/models/settings.js.map +0 -1
- package/dist/models/sync.js +0 -2
- package/dist/models/sync.js.map +0 -1
- package/dist/models/wallet.js +0 -2
- package/dist/models/wallet.js.map +0 -1
- package/dist/queries/conversations.js.map +0 -1
- package/dist/queries/discovery.js +0 -27
- package/dist/queries/discovery.js.map +0 -1
- package/dist/queries/notifications.js.map +0 -1
- package/dist/queries/onboarding-status.js +0 -27
- package/dist/queries/onboarding-status.js.map +0 -1
- package/dist/queries/revisioned.js +0 -58
- package/dist/queries/revisioned.js.map +0 -1
- package/dist/queries/wallet.js.map +0 -1
- package/dist/services/conversation-service.js.map +0 -1
- package/dist/services/conversation-sync.js +0 -9
- package/dist/services/conversation-sync.js.map +0 -1
- package/dist/services/discovery-probe-service.js +0 -129
- package/dist/services/discovery-probe-service.js.map +0 -1
- package/dist/services/gossip-service.js.map +0 -1
- package/dist/services/lan-candidate-refresh-service.js +0 -79
- package/dist/services/lan-candidate-refresh-service.js.map +0 -1
- package/dist/services/onboarding-status-service.js +0 -32
- package/dist/services/onboarding-status-service.js.map +0 -1
- package/dist/services/outbox-service.js.map +0 -1
- package/dist/services/owner-view-service.js +0 -21
- package/dist/services/owner-view-service.js.map +0 -1
- package/dist/services/peer-directory-service.js.map +0 -1
- package/dist/services/release-manifest-verifier.js +0 -84
- package/dist/services/release-manifest-verifier.js.map +0 -1
- package/dist/services/revisioned-domain-service.js.map +0 -1
- package/dist/services/session-service.js +0 -20
- package/dist/services/session-service.js.map +0 -1
- package/dist/services/sync/authoritative-mirror.js.map +0 -1
- package/dist/services/sync/index.js +0 -4
- package/dist/services/sync/index.js.map +0 -1
- package/dist/services/sync/log-sync.js +0 -20
- package/dist/services/sync/log-sync.js.map +0 -1
- package/dist/services/sync/revision-merge.js +0 -46
- package/dist/services/sync/revision-merge.js.map +0 -1
- package/dist/services/sync/strategy.js +0 -2
- package/dist/services/sync/strategy.js.map +0 -1
- package/dist/services/transport-manager.js +0 -234
- package/dist/services/transport-manager.js.map +0 -1
- package/dist/services/wallet-mirror-service.js.map +0 -1
|
@@ -1,67 +1,67 @@
|
|
|
1
|
-
export
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
}
|
|
1
|
+
export namespace OWNER_VIEW_SYNC_STRATEGIES {
|
|
2
|
+
let feeds: string;
|
|
3
|
+
let home: string;
|
|
4
|
+
let operations: string;
|
|
5
|
+
let peers: string;
|
|
6
|
+
}
|
|
7
7
|
export type OwnerViewSyncStrategy = (typeof OWNER_VIEW_SYNC_STRATEGIES)[keyof typeof OWNER_VIEW_SYNC_STRATEGIES];
|
|
8
8
|
export type HomeStatus = "offline" | "online" | "unknown";
|
|
9
|
-
export
|
|
9
|
+
export type HomeSummary = {
|
|
10
|
+
readonly cachedAt?: string;
|
|
10
11
|
readonly displayName: string;
|
|
11
12
|
readonly homeNodeId: string;
|
|
12
13
|
readonly lastSyncedAt?: string;
|
|
13
14
|
readonly status: HomeStatus;
|
|
14
|
-
}
|
|
15
|
+
};
|
|
15
16
|
export type PeerStatus = "offline" | "online" | "unknown";
|
|
16
|
-
export
|
|
17
|
+
export type PeerDirectoryEntry = {
|
|
17
18
|
readonly displayName: string;
|
|
18
19
|
readonly id: string;
|
|
19
20
|
readonly lastSeenAt?: string;
|
|
20
21
|
readonly status: PeerStatus;
|
|
21
|
-
}
|
|
22
|
-
export
|
|
22
|
+
};
|
|
23
|
+
export type PeerDirectoryQuery = {
|
|
23
24
|
readonly limit?: number;
|
|
24
25
|
readonly status?: PeerStatus;
|
|
25
|
-
}
|
|
26
|
+
};
|
|
26
27
|
export type FeedItemKind = "activity" | "message" | "system";
|
|
27
|
-
export
|
|
28
|
+
export type FeedItem = {
|
|
28
29
|
readonly body: string;
|
|
29
30
|
readonly createdAt: string;
|
|
30
31
|
readonly id: string;
|
|
31
32
|
readonly kind: FeedItemKind;
|
|
32
33
|
readonly read: boolean;
|
|
33
34
|
readonly title: string;
|
|
34
|
-
}
|
|
35
|
-
export
|
|
35
|
+
};
|
|
36
|
+
export type FeedQuery = {
|
|
36
37
|
readonly before?: string;
|
|
37
38
|
readonly limit?: number;
|
|
38
39
|
readonly unreadOnly?: boolean;
|
|
39
|
-
}
|
|
40
|
+
};
|
|
40
41
|
export type StorageStatus = "blocked" | "ready" | "recovering";
|
|
41
42
|
export type SyncStatus = "current" | "stale" | "syncing";
|
|
42
43
|
export type OperationalTransport = "iroh-relay" | "lan-direct" | "lan-webtransport" | "offline" | "wan-direct" | "webrtc-direct";
|
|
43
|
-
export
|
|
44
|
+
export type OperationalSummary = {
|
|
45
|
+
readonly cachedAt?: string;
|
|
44
46
|
readonly outboxDepth: number;
|
|
45
47
|
readonly storage: StorageStatus;
|
|
46
48
|
readonly sync: SyncStatus;
|
|
47
49
|
readonly transport: OperationalTransport;
|
|
48
|
-
}
|
|
50
|
+
};
|
|
49
51
|
/**
|
|
50
52
|
* Owner-facing read views projected from the home node.
|
|
51
53
|
*
|
|
52
|
-
*
|
|
53
|
-
* cache. This port models
|
|
54
|
-
*
|
|
55
|
-
*
|
|
56
|
-
*
|
|
57
|
-
*
|
|
58
|
-
* `LiveQueryDefinition.requiresDurableStorage`. A storage-backed projection belongs
|
|
59
|
-
* behind its own repository port, not here.
|
|
54
|
+
* Implementations MUST NOT depend on the durable, OPFS-backed local SQLite
|
|
55
|
+
* cache. This port models what the home node currently reports, so every
|
|
56
|
+
* method resolves from in-memory state or a home-node round trip. The kernel
|
|
57
|
+
* relies on that prohibition to keep owner-view live queries available in
|
|
58
|
+
* degraded mode when a browser cannot provide OPFS. A storage-backed
|
|
59
|
+
* projection belongs behind its own repository port instead.
|
|
60
60
|
*/
|
|
61
|
-
export
|
|
61
|
+
export type OwnerViewRepository = {
|
|
62
62
|
listFeed(params: FeedQuery): Promise<readonly FeedItem[]>;
|
|
63
63
|
listPeers(params: PeerDirectoryQuery): Promise<readonly PeerDirectoryEntry[]>;
|
|
64
64
|
readHomeSummary(): Promise<HomeSummary | undefined>;
|
|
65
65
|
readOperationalSummary(): Promise<OperationalSummary | undefined>;
|
|
66
|
-
}
|
|
66
|
+
};
|
|
67
67
|
//# sourceMappingURL=owner-views.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"owner-views.d.ts","sourceRoot":"","sources":["../../src/models/owner-views.
|
|
1
|
+
{"version":3,"file":"owner-views.d.ts","sourceRoot":"","sources":["../../src/models/owner-views.js"],"names":[],"mappings":";;;;;;oCAGa,CAAC,OAAO,0BAA0B,EAAE,MAAM,OAAO,0BAA0B,CAAC;yBAG5E,SAAS,GAAG,QAAQ,GAAG,SAAS;0BAGhC;IAAE,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;CAAE;yBAGvJ,SAAS,GAAG,QAAQ,GAAG,SAAS;iCAGhC;IAAE,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;CAAE;iCAGjH;IAAE,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,UAAU,CAAC;CAAE;2BAG1D,UAAU,GAAG,SAAS,GAAG,QAAQ;uBAGjC;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CAAE;wBAGxJ;IAAE,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC;CAAE;4BAGrF,SAAS,GAAG,OAAO,GAAG,YAAY;yBAGlC,SAAS,GAAG,OAAO,GAAG,SAAS;mCAG/B,YAAY,GAAG,YAAY,GAAG,kBAAkB,GAAG,SAAS,GAAG,YAAY,GAAG,eAAe;iCAG7F;IAAE,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAAC,QAAQ,CAAC,SAAS,EAAE,oBAAoB,CAAC;CAAE;;;;;;;;;;;kCAYnK;IAAE,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,SAAS,QAAQ,EAAE,CAAC,CAAC;IAAC,SAAS,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,SAAS,kBAAkB,EAAE,CAAC,CAAC;IAAC,eAAe,IAAI,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC,CAAC;IAAC,sBAAsB,IAAI,OAAO,CAAC,kBAAkB,GAAG,SAAS,CAAC,CAAC;CAAE"}
|
package/dist/models/payment.d.ts
CHANGED
|
@@ -1,9 +1,28 @@
|
|
|
1
|
-
|
|
1
|
+
/**
|
|
2
|
+
* @typedef {(typeof PAYMENT_DIRECTIONS)[number]} PaymentDirection
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* @typedef {(typeof PAYMENT_STATUSES)[number]} PaymentStatus
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* @typedef {{ readonly amountMsat: number; readonly createdAt: string; readonly direction: PaymentDirection; readonly failureCode?: string; readonly id: string; readonly paymentHash?: string; readonly status: PaymentStatus; readonly updatedAt: string; }} PaymentRecord
|
|
9
|
+
*/
|
|
10
|
+
/**
|
|
11
|
+
* @typedef {{ readonly amountMsat: number; readonly invoiceId: string; readonly kind: "invoice-created"; readonly paymentHash?: string; readonly paymentRequest: string; readonly status: "created"; }} InvoiceCreatedResult
|
|
12
|
+
*/
|
|
13
|
+
/**
|
|
14
|
+
* @typedef {{ readonly amountMsat: number; readonly kind: "payment-submitted"; readonly paymentHash?: string; readonly paymentId: string; readonly status: Exclude<PaymentStatus, "expired">; }} PaymentSubmittedResult
|
|
15
|
+
*/
|
|
16
|
+
/**
|
|
17
|
+
* @typedef {InvoiceCreatedResult | PaymentSubmittedResult} WalletCommandResult
|
|
18
|
+
*/
|
|
19
|
+
/** @type {readonly ["incoming", "outgoing"]} */
|
|
20
|
+
export const PAYMENT_DIRECTIONS: readonly ["incoming", "outgoing"];
|
|
21
|
+
/** @type {readonly ["pending", "succeeded", "failed", "expired"]} */
|
|
22
|
+
export const PAYMENT_STATUSES: readonly ["pending", "succeeded", "failed", "expired"];
|
|
2
23
|
export type PaymentDirection = (typeof PAYMENT_DIRECTIONS)[number];
|
|
3
|
-
export declare const PAYMENT_STATUSES: readonly ["pending", "succeeded", "failed", "expired"];
|
|
4
24
|
export type PaymentStatus = (typeof PAYMENT_STATUSES)[number];
|
|
5
|
-
|
|
6
|
-
export interface PaymentRecord {
|
|
25
|
+
export type PaymentRecord = {
|
|
7
26
|
readonly amountMsat: number;
|
|
8
27
|
readonly createdAt: string;
|
|
9
28
|
readonly direction: PaymentDirection;
|
|
@@ -12,21 +31,21 @@ export interface PaymentRecord {
|
|
|
12
31
|
readonly paymentHash?: string;
|
|
13
32
|
readonly status: PaymentStatus;
|
|
14
33
|
readonly updatedAt: string;
|
|
15
|
-
}
|
|
16
|
-
export
|
|
34
|
+
};
|
|
35
|
+
export type InvoiceCreatedResult = {
|
|
17
36
|
readonly amountMsat: number;
|
|
18
37
|
readonly invoiceId: string;
|
|
19
38
|
readonly kind: "invoice-created";
|
|
20
39
|
readonly paymentHash?: string;
|
|
21
40
|
readonly paymentRequest: string;
|
|
22
41
|
readonly status: "created";
|
|
23
|
-
}
|
|
24
|
-
export
|
|
42
|
+
};
|
|
43
|
+
export type PaymentSubmittedResult = {
|
|
25
44
|
readonly amountMsat: number;
|
|
26
45
|
readonly kind: "payment-submitted";
|
|
27
46
|
readonly paymentHash?: string;
|
|
28
47
|
readonly paymentId: string;
|
|
29
48
|
readonly status: Exclude<PaymentStatus, "expired">;
|
|
30
|
-
}
|
|
49
|
+
};
|
|
31
50
|
export type WalletCommandResult = InvoiceCreatedResult | PaymentSubmittedResult;
|
|
32
51
|
//# sourceMappingURL=payment.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"payment.d.ts","sourceRoot":"","sources":["../../src/models/payment.
|
|
1
|
+
{"version":3,"file":"payment.d.ts","sourceRoot":"","sources":["../../src/models/payment.js"],"names":[],"mappings":"AAEA;;GAEG;AACH;;GAEG;AACH;;GAEG;AACH;;GAEG;AACH;;GAEG;AACH;;GAEG;AACH,gDAAgD;AAChD,iCADW,SAAS,CAAC,UAAU,EAAE,UAAU,CAAC,CACe;AAC3D,qEAAqE;AACrE,+BADW,SAAS,CAAC,SAAS,EAAE,WAAW,EAAE,QAAQ,EAAE,SAAS,CAAC,CACa;+BApBjE,CAAC,OAAO,kBAAkB,EAAE,MAAM,CAAC;4BAGnC,CAAC,OAAO,gBAAgB,EAAE,MAAM,CAAC;4BAGjC;IAAE,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,SAAS,EAAE,gBAAgB,CAAC;IAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC;IAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAAE;mCAGjP;IAAE,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,iBAAiB,CAAC;IAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC;CAAE;qCAG1L;IAAE,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,mBAAmB,CAAC;IAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;CAAE;kCAGnL,oBAAoB,GAAG,sBAAsB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query-diff.d.ts","sourceRoot":"","sources":["../../src/models/query-diff.
|
|
1
|
+
{"version":3,"file":"query-diff.d.ts","sourceRoot":"","sources":["../../src/models/query-diff.js"],"names":[],"mappings":"sBAGa,IAAI,IACJ;IAAE,QAAQ,CAAC,KAAK,EAAE,SAAS,IAAI,EAAE,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,SAAS,IAAI,EAAE,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,SAAS,IAAI,EAAE,CAAC;CAAE"}
|
|
@@ -1,40 +1,37 @@
|
|
|
1
|
-
|
|
1
|
+
/** @typedef {{ readonly sha256: string, readonly url: string }} ReleaseManifestAsset */
|
|
2
|
+
/** @typedef {{ readonly max: number, readonly min: number }} ReleaseManifestVersionRange */
|
|
3
|
+
/** @typedef {{ readonly buildId: string, readonly channel: string, readonly issuedAtMs: number, readonly manifestVersion: 1, readonly protocolCompatibility: ReleaseManifestVersionRange, readonly shellAssets: readonly ReleaseManifestAsset[], readonly shellVersion: string, readonly signingKeyId: string, readonly storageSchemaCompatibility: ReleaseManifestVersionRange }} UnsignedReleaseManifest */
|
|
4
|
+
/** @typedef {UnsignedReleaseManifest & { readonly signature: string }} SignedReleaseManifest */
|
|
2
5
|
/**
|
|
3
|
-
*
|
|
4
|
-
*
|
|
5
|
-
* signs (`system/pwa/scripts/build-service-worker.mjs`) and a client verifies
|
|
6
|
-
* (`release-manifest-verifier.ts`) before the existing staged-cache pipeline
|
|
7
|
-
* (`client/adapters-web/src/cache/service-worker-runtime.ts`) is allowed to promote a new
|
|
8
|
-
* shell. Every bound below exists so a malformed/oversized candidate is rejected before any
|
|
9
|
-
* expensive work (signature check, asset download) runs on it.
|
|
6
|
+
* @param {UnsignedReleaseManifest} manifest
|
|
7
|
+
* @returns {JsonObject}
|
|
10
8
|
*/
|
|
11
|
-
export
|
|
12
|
-
/**
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
9
|
+
export function unsignedReleaseManifestToJson(manifest: UnsignedReleaseManifest): JsonObject;
|
|
10
|
+
/**
|
|
11
|
+
* @param {unknown} candidate
|
|
12
|
+
* @returns {SignedReleaseManifest | undefined}
|
|
13
|
+
*/
|
|
14
|
+
export function parseSignedReleaseManifest(candidate: unknown): SignedReleaseManifest | undefined;
|
|
15
|
+
/** @typedef {import("./json.js").JsonObject} JsonObject */
|
|
16
|
+
export const RELEASE_MANIFEST_VERSION: 1;
|
|
17
|
+
export namespace RELEASE_MANIFEST_LIMITS {
|
|
18
|
+
let maxBuildIdLength: number;
|
|
19
|
+
let maxChannelLength: number;
|
|
20
|
+
let maxShellAssetUrlLength: number;
|
|
21
|
+
let maxShellAssets: number;
|
|
22
|
+
let maxShellVersionLength: number;
|
|
23
|
+
let maxSigningKeyIdLength: number;
|
|
24
|
+
let maxVersionValue: number;
|
|
25
|
+
}
|
|
26
|
+
export type ReleaseManifestAsset = {
|
|
23
27
|
readonly sha256: string;
|
|
24
28
|
readonly url: string;
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
* version or storage schema version — both are plain incrementing integers elsewhere in the
|
|
28
|
-
* client, see `client/adapters-web/src/storage/migrator.ts`'s `SqliteMigration.version`). */
|
|
29
|
-
export interface ReleaseManifestVersionRange {
|
|
29
|
+
};
|
|
30
|
+
export type ReleaseManifestVersionRange = {
|
|
30
31
|
readonly max: number;
|
|
31
32
|
readonly min: number;
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
* as its own type (rather than `Omit<SignedReleaseManifest, "signature">` inline everywhere)
|
|
35
|
-
* makes it impossible to accidentally feed the signature itself into the canonicalized
|
|
36
|
-
* payload it is supposed to attest to. */
|
|
37
|
-
export interface UnsignedReleaseManifest {
|
|
33
|
+
};
|
|
34
|
+
export type UnsignedReleaseManifest = {
|
|
38
35
|
readonly buildId: string;
|
|
39
36
|
readonly channel: string;
|
|
40
37
|
readonly issuedAtMs: number;
|
|
@@ -44,21 +41,9 @@ export interface UnsignedReleaseManifest {
|
|
|
44
41
|
readonly shellVersion: string;
|
|
45
42
|
readonly signingKeyId: string;
|
|
46
43
|
readonly storageSchemaCompatibility: ReleaseManifestVersionRange;
|
|
47
|
-
}
|
|
48
|
-
export
|
|
49
|
-
/** Lowercase-hex-encoded 64-byte Ed25519 signature over
|
|
50
|
-
* `canonicalOutboxPayload(unsignedReleaseManifestToJson(this))`. */
|
|
44
|
+
};
|
|
45
|
+
export type SignedReleaseManifest = UnsignedReleaseManifest & {
|
|
51
46
|
readonly signature: string;
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
* `outbox.ts` — the client's one canonical-JSON implementation) can walk. Field order here
|
|
55
|
-
* is irrelevant: `canonicalOutboxPayload` sorts object keys itself. */
|
|
56
|
-
export declare function unsignedReleaseManifestToJson(manifest: UnsignedReleaseManifest): JsonObject;
|
|
57
|
-
/**
|
|
58
|
-
* Bounded, fail-closed structural validation of an `unknown` candidate (JSON-parsed from
|
|
59
|
-
* the network or handed in directly). Returns `undefined` for anything that doesn't match
|
|
60
|
-
* the exact shape/bounds — callers surface that as the `"malformed"` verification reason.
|
|
61
|
-
* Never throws.
|
|
62
|
-
*/
|
|
63
|
-
export declare function parseSignedReleaseManifest(candidate: unknown): SignedReleaseManifest | undefined;
|
|
47
|
+
};
|
|
48
|
+
export type JsonObject = import("./json.js").JsonObject;
|
|
64
49
|
//# sourceMappingURL=release-manifest.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"release-manifest.d.ts","sourceRoot":"","sources":["../../src/models/release-manifest.
|
|
1
|
+
{"version":3,"file":"release-manifest.d.ts","sourceRoot":"","sources":["../../src/models/release-manifest.js"],"names":[],"mappings":"AAgBA,wFAAwF;AACxF,4FAA4F;AAC5F,8YAA8Y;AAC9Y,gGAAgG;AAEhG;;;GAGG;AACH,wDAHW,uBAAuB,GACrB,UAAU,CAoBtB;AAMD;;;GAGG;AACH,sDAHW,OAAO,GACL,qBAAqB,GAAG,SAAS,CAkD7C;AAnGD,2DAA2D;AAE3D,uCAAwC,CAAC,CAAC;;;;;;;;;;mCAY5B;IAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;CAAE;0CACjD;IAAE,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;CAAE;sCAC9C;IAAE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,eAAe,EAAE,CAAC,CAAC;IAAC,QAAQ,CAAC,qBAAqB,EAAE,2BAA2B,CAAC;IAAC,QAAQ,CAAC,WAAW,EAAE,SAAS,oBAAoB,EAAE,CAAC;IAAC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,0BAA0B,EAAE,2BAA2B,CAAA;CAAE;oCACpW,uBAAuB,GAAG;IAAE,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;CAAE;yBAjBxD,OAAO,WAAW,EAAE,UAAU"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
|
|
2
|
-
export
|
|
1
|
+
export type DomainEvent = import("../events/index.js").DomainEvent;
|
|
2
|
+
export type RepositoryWrite<TEvent extends DomainEvent> = {
|
|
3
3
|
commit(): Promise<{
|
|
4
4
|
readonly events: readonly TEvent[];
|
|
5
5
|
}>;
|
|
6
|
-
}
|
|
6
|
+
};
|
|
7
7
|
//# sourceMappingURL=repository-write.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"repository-write.d.ts","sourceRoot":"","sources":["../../src/models/repository-write.
|
|
1
|
+
{"version":3,"file":"repository-write.d.ts","sourceRoot":"","sources":["../../src/models/repository-write.js"],"names":[],"mappings":"0BAGa,OAAO,oBAAoB,EAAE,WAAW;4BAG1B,MAAM,SAAnB,WAAY,IACb;IAAE,MAAM,IAAI,OAAO,CAAC;QAAE,QAAQ,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAA;KAAE,CAAC,CAAC;CAAE"}
|
|
@@ -1,24 +1,77 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
1
|
+
/**
|
|
2
|
+
* @template {JsonValue} TValue
|
|
3
|
+
* @param {RevisionedDomain} domain
|
|
4
|
+
* @param {RevisionCommand<TValue>} payload
|
|
5
|
+
* @returns {RevisionUpdateCommand<TValue>}
|
|
6
|
+
*/
|
|
7
|
+
export function createRevisionedUpdateCommand<TValue extends JsonValue>(domain: RevisionedDomain, payload: RevisionCommand<TValue>): RevisionUpdateCommand<TValue>;
|
|
8
|
+
/**
|
|
9
|
+
* @param {RevisionCommand<AgentValue>} payload
|
|
10
|
+
* @returns {RevisionUpdateCommand<AgentValue>}
|
|
11
|
+
*/
|
|
12
|
+
export function createAgentUpdateCommand(payload: RevisionCommand<AgentValue>): RevisionUpdateCommand<AgentValue>;
|
|
13
|
+
/**
|
|
14
|
+
* @param {RevisionCommand<GraphValue>} payload
|
|
15
|
+
* @returns {RevisionUpdateCommand<GraphValue>}
|
|
16
|
+
*/
|
|
17
|
+
export function createGraphUpdateCommand(payload: RevisionCommand<GraphValue>): RevisionUpdateCommand<GraphValue>;
|
|
18
|
+
/**
|
|
19
|
+
* @param {ResolveRevisionConflictCommand["payload"]} payload
|
|
20
|
+
* @returns {ResolveRevisionConflictCommand}
|
|
21
|
+
*/
|
|
22
|
+
export function createResolveRevisionConflictCommand(payload: ResolveRevisionConflictCommand["payload"]): ResolveRevisionConflictCommand;
|
|
23
|
+
/**
|
|
24
|
+
* @typedef {import("./agent.js").AgentValue} AgentValue
|
|
25
|
+
*/
|
|
26
|
+
/**
|
|
27
|
+
* @typedef {import("./graph.js").GraphValue} GraphValue
|
|
28
|
+
*/
|
|
29
|
+
/**
|
|
30
|
+
* @typedef {import("./json.js").JsonValue} JsonValue
|
|
31
|
+
*/
|
|
32
|
+
/**
|
|
33
|
+
* @template {JsonValue} TValue
|
|
34
|
+
* @typedef {import("./revisioned.js").RevisionCommand<TValue>} RevisionCommand
|
|
35
|
+
*/
|
|
36
|
+
/**
|
|
37
|
+
* @typedef {import("./revisioned.js").RevisionResolution} RevisionResolution
|
|
38
|
+
*/
|
|
39
|
+
/**
|
|
40
|
+
* @typedef {import("./revisioned.js").RevisionedDomain} RevisionedDomain
|
|
41
|
+
*/
|
|
42
|
+
/**
|
|
43
|
+
* @typedef {(typeof REVISIONED_COMMAND_NAMES)[number]} RevisionedCommandName
|
|
44
|
+
*/
|
|
45
|
+
/**
|
|
46
|
+
* @typedef {Exclude<RevisionedCommandName, "sync.revision-conflict.resolve.v1">} RevisionUpdateCommandName
|
|
47
|
+
*/
|
|
48
|
+
/**
|
|
49
|
+
* @template {JsonValue} [TValue=import("./json.js").JsonValue]
|
|
50
|
+
* @typedef {{ readonly name: RevisionUpdateCommandName; readonly payload: RevisionCommand<TValue>; }} RevisionUpdateCommand
|
|
51
|
+
*/
|
|
52
|
+
/**
|
|
53
|
+
* @typedef {{ readonly name: "sync.revision-conflict.resolve.v1"; readonly payload: { readonly conflictId: string; readonly idempotencyKey: string; readonly resolution: RevisionResolution; }; }} ResolveRevisionConflictCommand
|
|
54
|
+
*/
|
|
55
|
+
/** @type {readonly ["agents.update.v1", "graphs.update.v1", "settings.update.v1", "sync.revision-conflict.resolve.v1"]} */
|
|
56
|
+
export const REVISIONED_COMMAND_NAMES: readonly ["agents.update.v1", "graphs.update.v1", "settings.update.v1", "sync.revision-conflict.resolve.v1"];
|
|
57
|
+
export type AgentValue = import("./agent.js").AgentValue;
|
|
58
|
+
export type GraphValue = import("./graph.js").GraphValue;
|
|
59
|
+
export type JsonValue = import("./json.js").JsonValue;
|
|
60
|
+
export type RevisionCommand<TValue extends JsonValue> = import("./revisioned.js").RevisionCommand<TValue>;
|
|
61
|
+
export type RevisionResolution = import("./revisioned.js").RevisionResolution;
|
|
62
|
+
export type RevisionedDomain = import("./revisioned.js").RevisionedDomain;
|
|
6
63
|
export type RevisionedCommandName = (typeof REVISIONED_COMMAND_NAMES)[number];
|
|
7
64
|
export type RevisionUpdateCommandName = Exclude<RevisionedCommandName, "sync.revision-conflict.resolve.v1">;
|
|
8
|
-
export
|
|
65
|
+
export type RevisionUpdateCommand<TValue extends JsonValue = import("./json.js").JsonValue> = {
|
|
9
66
|
readonly name: RevisionUpdateCommandName;
|
|
10
67
|
readonly payload: RevisionCommand<TValue>;
|
|
11
|
-
}
|
|
12
|
-
export
|
|
68
|
+
};
|
|
69
|
+
export type ResolveRevisionConflictCommand = {
|
|
13
70
|
readonly name: "sync.revision-conflict.resolve.v1";
|
|
14
71
|
readonly payload: {
|
|
15
72
|
readonly conflictId: string;
|
|
16
73
|
readonly idempotencyKey: string;
|
|
17
74
|
readonly resolution: RevisionResolution;
|
|
18
75
|
};
|
|
19
|
-
}
|
|
20
|
-
export declare function createRevisionedUpdateCommand<TValue extends JsonValue>(domain: RevisionedDomain, payload: RevisionCommand<TValue>): RevisionUpdateCommand<TValue>;
|
|
21
|
-
export declare function createAgentUpdateCommand(payload: RevisionCommand<AgentValue>): RevisionUpdateCommand<AgentValue>;
|
|
22
|
-
export declare function createGraphUpdateCommand(payload: RevisionCommand<GraphValue>): RevisionUpdateCommand<GraphValue>;
|
|
23
|
-
export declare function createResolveRevisionConflictCommand(payload: ResolveRevisionConflictCommand["payload"]): ResolveRevisionConflictCommand;
|
|
76
|
+
};
|
|
24
77
|
//# sourceMappingURL=revisioned-commands.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"revisioned-commands.d.ts","sourceRoot":"","sources":["../../src/models/revisioned-commands.
|
|
1
|
+
{"version":3,"file":"revisioned-commands.d.ts","sourceRoot":"","sources":["../../src/models/revisioned-commands.js"],"names":[],"mappings":"AAyCA;;;;;GAKG;AACH,8CALyB,MAAM,SAAjB,SAAU,UACb,gBAAgB,WAChB,eAAe,CAAC,MAAM,CAAC,GACrB,qBAAqB,CAAC,MAAM,CAAC,CAOzC;AACD;;;GAGG;AACH,kDAHW,eAAe,CAAC,UAAU,CAAC,GACzB,qBAAqB,CAAC,UAAU,CAAC,CAI7C;AACD;;;GAGG;AACH,kDAHW,eAAe,CAAC,UAAU,CAAC,GACzB,qBAAqB,CAAC,UAAU,CAAC,CAI7C;AACD;;;GAGG;AACH,8DAHW,8BAA8B,CAAC,SAAS,CAAC,GACvC,8BAA8B,CAU1C;AA7ED;;GAEG;AACH;;GAEG;AACH;;GAEG;AACH;;;GAGG;AACH;;GAEG;AACH;;GAEG;AACH;;GAEG;AACH;;GAEG;AACH;;;GAGG;AACH;;GAEG;AACH,2HAA2H;AAC3H,uCADW,SAAS,CAAC,kBAAkB,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,mCAAmC,CAAC,CAMrH;yBArCW,OAAO,YAAY,EAAE,UAAU;yBAG/B,OAAO,YAAY,EAAE,UAAU;wBAG/B,OAAO,WAAW,EAAE,SAAS;4BAGjB,MAAM,SAAjB,SAAU,IACX,OAAO,iBAAiB,EAAE,eAAe,CAAC,MAAM,CAAC;iCAGjD,OAAO,iBAAiB,EAAE,kBAAkB;+BAG5C,OAAO,iBAAiB,EAAE,gBAAgB;oCAG1C,CAAC,OAAO,wBAAwB,EAAE,MAAM,CAAC;wCAGzC,OAAO,CAAC,qBAAqB,EAAE,mCAAmC,CAAC;kCAGtD,MAAM,SAAlB,SAAU,oCACX;IAAE,QAAQ,CAAC,IAAI,EAAE,yBAAyB,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,eAAe,CAAC,MAAM,CAAC,CAAC;CAAE;6CAGxF;IAAE,QAAQ,CAAC,IAAI,EAAE,mCAAmC,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE;QAAE,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,UAAU,EAAE,kBAAkB,CAAC;KAAE,CAAC;CAAE"}
|
|
@@ -1,19 +1,59 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
/**
|
|
2
|
+
* @typedef {import("./json.js").JsonValue} JsonValue
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* @template TValue
|
|
6
|
+
* @typedef {import("./sync.js").RevisionConflict<TValue>} RevisionConflict
|
|
7
|
+
*/
|
|
8
|
+
/**
|
|
9
|
+
* @template TValue
|
|
10
|
+
* @typedef {import("./sync.js").RevisionIntent<TValue>} RevisionIntent
|
|
11
|
+
*/
|
|
12
|
+
/**
|
|
13
|
+
* @typedef {(typeof REVISIONED_DOMAINS)[number]} RevisionedDomain
|
|
14
|
+
*/
|
|
15
|
+
/**
|
|
16
|
+
* @template {JsonValue} TValue
|
|
17
|
+
* @typedef {RevisionIntent<TValue> & { readonly idempotencyKey: string; }} RevisionCommand
|
|
18
|
+
*/
|
|
19
|
+
/**
|
|
20
|
+
* @template {JsonValue} TValue
|
|
21
|
+
* @typedef {RevisionConflict<TValue> & { readonly conflictId: string; readonly createdAt: string; readonly domain: RevisionedDomain; readonly idempotencyKey: string; }} RevisionConflictRecord
|
|
22
|
+
*/
|
|
23
|
+
/**
|
|
24
|
+
* @template {JsonValue} TValue
|
|
25
|
+
* @typedef {RevisionConflictRecord<TValue> & { readonly kind: "revision-conflict.v1"; }} RevisionConflictPayload
|
|
26
|
+
*/
|
|
27
|
+
/**
|
|
28
|
+
* @typedef {"mine" | "theirs"} RevisionResolution
|
|
29
|
+
*/
|
|
30
|
+
/**
|
|
31
|
+
* @template TValue
|
|
32
|
+
* @typedef {import("./sync.js").RevisionCommandResult<TValue>} RevisionCommandResult
|
|
33
|
+
*/
|
|
34
|
+
/**
|
|
35
|
+
* @template TValue
|
|
36
|
+
* @typedef {import("./sync.js").RevisionEntity<TValue>} RevisionEntity
|
|
37
|
+
*/
|
|
38
|
+
/** @type {readonly ["agent", "settings", "graph"]} */
|
|
39
|
+
export const REVISIONED_DOMAINS: readonly ["agent", "settings", "graph"];
|
|
40
|
+
export type JsonValue = import("./json.js").JsonValue;
|
|
41
|
+
export type RevisionConflict<TValue> = import("./sync.js").RevisionConflict<TValue>;
|
|
42
|
+
export type RevisionIntent<TValue> = import("./sync.js").RevisionIntent<TValue>;
|
|
4
43
|
export type RevisionedDomain = (typeof REVISIONED_DOMAINS)[number];
|
|
5
|
-
export
|
|
44
|
+
export type RevisionCommand<TValue extends JsonValue> = RevisionIntent<TValue> & {
|
|
6
45
|
readonly idempotencyKey: string;
|
|
7
|
-
}
|
|
8
|
-
export
|
|
46
|
+
};
|
|
47
|
+
export type RevisionConflictRecord<TValue extends JsonValue> = RevisionConflict<TValue> & {
|
|
9
48
|
readonly conflictId: string;
|
|
10
49
|
readonly createdAt: string;
|
|
11
50
|
readonly domain: RevisionedDomain;
|
|
12
51
|
readonly idempotencyKey: string;
|
|
13
|
-
}
|
|
14
|
-
export
|
|
52
|
+
};
|
|
53
|
+
export type RevisionConflictPayload<TValue extends JsonValue> = RevisionConflictRecord<TValue> & {
|
|
15
54
|
readonly kind: "revision-conflict.v1";
|
|
16
|
-
}
|
|
55
|
+
};
|
|
17
56
|
export type RevisionResolution = "mine" | "theirs";
|
|
18
|
-
export type
|
|
57
|
+
export type RevisionCommandResult<TValue> = import("./sync.js").RevisionCommandResult<TValue>;
|
|
58
|
+
export type RevisionEntity<TValue> = import("./sync.js").RevisionEntity<TValue>;
|
|
19
59
|
//# sourceMappingURL=revisioned.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"revisioned.d.ts","sourceRoot":"","sources":["../../src/models/revisioned.
|
|
1
|
+
{"version":3,"file":"revisioned.d.ts","sourceRoot":"","sources":["../../src/models/revisioned.js"],"names":[],"mappings":"AAEA;;GAEG;AACH;;;GAGG;AACH;;;GAGG;AACH;;GAEG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG;AACH;;GAEG;AACH;;;GAGG;AACH;;;GAGG;AACH,sDAAsD;AACtD,iCADW,SAAS,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,CAAC,CACe;wBArCpD,OAAO,WAAW,EAAE,SAAS;6BAG7B,MAAM,IACN,OAAO,WAAW,EAAE,gBAAgB,CAAC,MAAM,CAAC;2BAG5C,MAAM,IACN,OAAO,WAAW,EAAE,cAAc,CAAC,MAAM,CAAC;+BAG1C,CAAC,OAAO,kBAAkB,EAAE,MAAM,CAAC;4BAGvB,MAAM,SAAjB,SAAU,IACX,cAAc,CAAC,MAAM,CAAC,GAAG;IAAE,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;CAAE;mCAGjD,MAAM,SAAjB,SAAU,IACX,gBAAgB,CAAC,MAAM,CAAC,GAAG;IAAE,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,gBAAgB,CAAC;IAAC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;CAAE;oCAG/I,MAAM,SAAjB,SAAU,IACX,sBAAsB,CAAC,MAAM,CAAC,GAAG;IAAE,QAAQ,CAAC,IAAI,EAAE,sBAAsB,CAAC;CAAE;iCAG3E,MAAM,GAAG,QAAQ;kCAGjB,MAAM,IACN,OAAO,WAAW,EAAE,qBAAqB,CAAC,MAAM,CAAC;2BAGjD,MAAM,IACN,OAAO,WAAW,EAAE,cAAc,CAAC,MAAM,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
export type JsonValue = import("./json.js").JsonValue;
|
|
2
|
+
export type RevisionEntity<TValue> = import("./sync.js").RevisionEntity<TValue>;
|
|
3
3
|
export type SettingValue = JsonValue;
|
|
4
4
|
export type RevisionedSetting = RevisionEntity<SettingValue>;
|
|
5
5
|
//# sourceMappingURL=settings.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"settings.d.ts","sourceRoot":"","sources":["../../src/models/settings.
|
|
1
|
+
{"version":3,"file":"settings.d.ts","sourceRoot":"","sources":["../../src/models/settings.js"],"names":[],"mappings":"wBAGa,OAAO,WAAW,EAAE,SAAS;2BAG7B,MAAM,IACN,OAAO,WAAW,EAAE,cAAc,CAAC,MAAM,CAAC;2BAG1C,SAAS;gCAGT,cAAc,CAAC,YAAY,CAAC"}
|
package/dist/models/sync.d.ts
CHANGED
|
@@ -1,36 +1,36 @@
|
|
|
1
1
|
export type SyncStrategyKind = "authoritative-mirror" | "log" | "revision-merge";
|
|
2
|
-
export
|
|
2
|
+
export type SyncDelta<TPayload> = {
|
|
3
3
|
readonly cursor: string;
|
|
4
4
|
readonly id: string;
|
|
5
5
|
readonly payload: TPayload;
|
|
6
|
-
}
|
|
7
|
-
export
|
|
6
|
+
};
|
|
7
|
+
export type SyncDeltaContext = {
|
|
8
8
|
readonly domain: string;
|
|
9
9
|
readonly now: string;
|
|
10
|
-
}
|
|
11
|
-
export
|
|
10
|
+
};
|
|
11
|
+
export type SyncApplyResult = {
|
|
12
12
|
readonly applied: boolean;
|
|
13
|
-
}
|
|
14
|
-
export
|
|
13
|
+
};
|
|
14
|
+
export type SyncStrategy<TPayload> = {
|
|
15
15
|
readonly kind: SyncStrategyKind;
|
|
16
16
|
applyDelta(delta: SyncDelta<TPayload>, context: SyncDeltaContext): Promise<SyncApplyResult>;
|
|
17
|
-
}
|
|
18
|
-
export
|
|
17
|
+
};
|
|
18
|
+
export type RevisionEntity<TValue> = {
|
|
19
19
|
readonly id: string;
|
|
20
20
|
readonly rev: number;
|
|
21
21
|
readonly value: TValue;
|
|
22
|
-
}
|
|
23
|
-
export
|
|
22
|
+
};
|
|
23
|
+
export type RevisionIntent<TValue> = {
|
|
24
24
|
readonly baseRev: number;
|
|
25
25
|
readonly id: string;
|
|
26
26
|
readonly value: TValue;
|
|
27
|
-
}
|
|
28
|
-
export
|
|
27
|
+
};
|
|
28
|
+
export type RevisionConflict<TValue> = {
|
|
29
29
|
readonly baseRev: number;
|
|
30
30
|
readonly id: string;
|
|
31
31
|
readonly mine: TValue;
|
|
32
32
|
readonly theirs: RevisionEntity<TValue>;
|
|
33
|
-
}
|
|
33
|
+
};
|
|
34
34
|
export type RevisionCommandResult<TValue> = {
|
|
35
35
|
readonly entity: RevisionEntity<TValue>;
|
|
36
36
|
readonly status: "accepted";
|
|
@@ -38,13 +38,13 @@ export type RevisionCommandResult<TValue> = {
|
|
|
38
38
|
readonly status: "conflict";
|
|
39
39
|
readonly theirs: RevisionEntity<TValue>;
|
|
40
40
|
};
|
|
41
|
-
export
|
|
41
|
+
export type AuthoritativeSnapshot<TValue> = {
|
|
42
42
|
readonly observedAt: string;
|
|
43
43
|
readonly staleAt: string;
|
|
44
44
|
readonly value: TValue;
|
|
45
|
-
}
|
|
46
|
-
export
|
|
45
|
+
};
|
|
46
|
+
export type AuthoritativeCommand<TPayload> = {
|
|
47
47
|
readonly idempotencyKey: string;
|
|
48
48
|
readonly payload: TPayload;
|
|
49
|
-
}
|
|
49
|
+
};
|
|
50
50
|
//# sourceMappingURL=sync.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sync.d.ts","sourceRoot":"","sources":["../../src/models/sync.
|
|
1
|
+
{"version":3,"file":"sync.d.ts","sourceRoot":"","sources":["../../src/models/sync.js"],"names":[],"mappings":"+BAGa,sBAAsB,GAAG,KAAK,GAAG,gBAAgB;sBAGjD,QAAQ,IACR;IAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC;CAAE;+BAG7E;IAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;CAAE;8BAGlD;IAAE,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;CAAE;yBAG9B,QAAQ,IACR;IAAE,QAAQ,CAAC,IAAI,EAAE,gBAAgB,CAAC;IAAC,UAAU,CAAC,KAAK,EAAE,SAAS,CAAC,QAAQ,CAAC,EAAE,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;CAAE;2BAGjI,MAAM,IACN;IAAE,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CAAE;2BAGtE,MAAM,IACN;IAAE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CAAE;6BAG1E,MAAM,IACN;IAAE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC;CAAE;kCAGlH,MAAM,IACJ;IAAE,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAA;CAAE,GAAG;IAAE,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC,MAAM,CAAC,CAAA;CAAE;kCAGrJ,MAAM,IACN;IAAE,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CAAE;iCAGlF,QAAQ,IACR;IAAE,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC;CAAE"}
|