@mdbase-dev/sdk 0.1.0-beta.178 → 0.1.0-beta.180
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/README.md +52 -0
- package/dist/app-host/cloud-copy-host.d.ts +13 -0
- package/dist/app-host/cloud-copy-host.js +43 -11
- package/dist/app-host/cloud-copy-host.js.map +1 -1
- package/dist/app-host/installation-sign-in.d.ts +7 -0
- package/dist/app-host/installation-sign-in.js +20 -1
- package/dist/app-host/installation-sign-in.js.map +1 -1
- package/dist/app-host/scoped-sign-in-session.d.ts +2 -0
- package/dist/app-host/scoped-sign-in-session.js +4 -0
- package/dist/app-host/scoped-sign-in-session.js.map +1 -1
- package/dist/app-host/web-collection.js +206 -60
- package/dist/app-host/web-collection.js.map +1 -1
- package/dist/app-host/web-sign-in-session.d.ts +15 -0
- package/dist/app-host/web-sign-in-session.js +90 -7
- package/dist/app-host/web-sign-in-session.js.map +1 -1
- package/dist/application/asset-pins.json +4 -4
- package/dist/application/worker-host.d.ts +10 -0
- package/dist/application/worker-host.js +65 -9
- package/dist/application/worker-host.js.map +1 -1
- package/dist/application/worker.js +359 -80
- package/dist/browser/mdbase-sdk.js +14398 -14053
- package/dist/browser/mdbase-sdk.min.js +63 -63
- package/dist/native/provenance.json +5 -5
- package/dist/native/runtime.wasm +0 -0
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -276,6 +276,58 @@ failed keyring recovery and non-retryable native errors still refuse. This remai
|
|
|
276
276
|
state, with explicit retry after a terminal failure: no new migration state,
|
|
277
277
|
write/setup replay, legacy fallback or application retry loop is needed.
|
|
278
278
|
|
|
279
|
+
## Reopening a cloud copy from this device
|
|
280
|
+
|
|
281
|
+
A cloud copy whose join ledger records a completed first sync opens from the
|
|
282
|
+
replica on this device before the log is reached. The log-token request starts
|
|
283
|
+
in the background, a verified read is answered by the replica as it stands, and
|
|
284
|
+
the collection is handed to the app. The first drive turn then binds the log,
|
|
285
|
+
sends edits captured meanwhile and brings in what changed elsewhere. What the
|
|
286
|
+
app shows first is therefore the collection as of this device's last sync, and
|
|
287
|
+
it updates when the first turn lands. Saved views read in that window as well:
|
|
288
|
+
the replica serves them while it re-derives its keys from the log.
|
|
289
|
+
|
|
290
|
+
The ledger and the replica are stored separately. A replica that holds nothing
|
|
291
|
+
from the log (`holdsLog()` is false: its storage was lost after that sync) is
|
|
292
|
+
not opened this way. It binds the log first and catches up like a first open.
|
|
293
|
+
|
|
294
|
+
A bind that fails is sorted once:
|
|
295
|
+
|
|
296
|
+
- offline, unreachable, 5xx and 429 leave the collection open with `health`
|
|
297
|
+
set, and the drive loop retries with its usual backoff and on foreground. A
|
|
298
|
+
reply that is not Connect's, such as the sign-in page of a network the device
|
|
299
|
+
has just joined, counts as unreachable;
|
|
300
|
+
- a server outcome with its own copy (migrating, suspended, update required,
|
|
301
|
+
not yet migrated) shows as the connection's `problem` and is retried slowly;
|
|
302
|
+
- any other answer from Connect (401/403, other 4xx) sets the connection's
|
|
303
|
+
`failure`. The sign-in session then blocks the collection with the same
|
|
304
|
+
problem a failed open reports and closes it. It reads `failure` when the open
|
|
305
|
+
returns as well as on later changes, so a refusal that arrived before the
|
|
306
|
+
handoff never shows as ready.
|
|
307
|
+
|
|
308
|
+
Once bound, the replica checks its stored policy against the log while it
|
|
309
|
+
re-derives its keys. A replica that fails that check sets `failure` with
|
|
310
|
+
`recovery_required`, which is what a waited open refuses it with.
|
|
311
|
+
|
|
312
|
+
An edit made before the bind is an offline edit and is treated as one: kept
|
|
313
|
+
pending and sent once the log is bound. Nothing here changes what the log does
|
|
314
|
+
with an edit from a device whose access was removed while the app was closed.
|
|
315
|
+
A log token is valid for up to 16 minutes, so such a device can still bind
|
|
316
|
+
with a token it kept; refusing its entries is the log's job, as it was before.
|
|
317
|
+
|
|
318
|
+
The local read has five seconds. If the replica cannot answer it, the open
|
|
319
|
+
takes the ordinary path above. Private collections and cold replicas always
|
|
320
|
+
take that path.
|
|
321
|
+
|
|
322
|
+
A signed-in start likewise publishes the collection list this installation kept
|
|
323
|
+
from its last listing, with no request. That list carries no file actions and a
|
|
324
|
+
collection missing from it is not treated as removed. The Worker host then reads
|
|
325
|
+
Connect's list: straight after a start that already holds a collection,
|
|
326
|
+
otherwise after the page's next request, or after two seconds. A read that did
|
|
327
|
+
not happen (the session was busy, or the request failed) is tried again two
|
|
328
|
+
seconds later, three times in all; after that the next show or reconnect reads
|
|
329
|
+
it. `collectionListCached()` on the session says which list is showing.
|
|
330
|
+
|
|
279
331
|
## Private collections from web apps
|
|
280
332
|
|
|
281
333
|
`@mdbase-dev/sdk/app-grant` lets a signed-in web app open a Private collection
|
|
@@ -232,8 +232,16 @@ export declare class AppWebCloudCopyHost {
|
|
|
232
232
|
/** What the replica still waits for before it holds everything up to the
|
|
233
233
|
* known log head, or null once it does (native sync status). */
|
|
234
234
|
initialSync(): AppInitialSyncWait | null;
|
|
235
|
+
/** Whether the replica on this device holds anything from the log. Every
|
|
236
|
+
* log starts with the entries that admitted this device, so a replica
|
|
237
|
+
* that knows no head is empty (its storage was lost), not up to date. */
|
|
238
|
+
holdsLog(): boolean;
|
|
235
239
|
/** Diagnostics while waiting for a key (native sync status), else null. */
|
|
236
240
|
keyWaitDetail(): Record<string, string | number> | null;
|
|
241
|
+
/** For a collection opened before its log: has the reopened replica its
|
|
242
|
+
* keys back from the log's control prefix? `failed` is what a waited open
|
|
243
|
+
* refuses as `recovery_required`. */
|
|
244
|
+
keyringSettled(): "pending" | "failed" | "settled";
|
|
237
245
|
/** Local writes not yet confirmed by the log (native sync status). */
|
|
238
246
|
pendingWrites(): number;
|
|
239
247
|
/** Feed one push frame to the native replica (current log session only). */
|
|
@@ -264,6 +272,11 @@ export declare class AppWebCloudCopyHost {
|
|
|
264
272
|
/** SDK join ledger has never completed this local replica's first sync.
|
|
265
273
|
* The budget then bounds inactivity, not total collection catch-up. */
|
|
266
274
|
cold?: boolean;
|
|
275
|
+
/** Answer from the replica as it is on this device: the log is not
|
|
276
|
+
* driven, whether or not it is bound yet. Fails where a read would
|
|
277
|
+
* need the log; the caller then takes the ordinary path. Not for a
|
|
278
|
+
* cold replica: one that holds nothing from the log is refused. */
|
|
279
|
+
local?: boolean;
|
|
267
280
|
}): Promise<void>;
|
|
268
281
|
private verifyRead;
|
|
269
282
|
/** True for an adopted Private (e2e) collection. */
|
|
@@ -745,6 +745,20 @@ export class AppWebCloudCopyHost {
|
|
|
745
745
|
return "unavailable";
|
|
746
746
|
}
|
|
747
747
|
}
|
|
748
|
+
/** Whether the replica on this device holds anything from the log. Every
|
|
749
|
+
* log starts with the entries that admitted this device, so a replica
|
|
750
|
+
* that knows no head is empty (its storage was lost), not up to date. */
|
|
751
|
+
holdsLog() {
|
|
752
|
+
try {
|
|
753
|
+
if (!this.native)
|
|
754
|
+
return false;
|
|
755
|
+
const status = this.native.observations().status;
|
|
756
|
+
return status.mode === "local_only" || status.headKnown > 0;
|
|
757
|
+
}
|
|
758
|
+
catch {
|
|
759
|
+
return false;
|
|
760
|
+
}
|
|
761
|
+
}
|
|
748
762
|
/** Diagnostics while waiting for a key (native sync status), else null. */
|
|
749
763
|
keyWaitDetail() {
|
|
750
764
|
try {
|
|
@@ -754,6 +768,17 @@ export class AppWebCloudCopyHost {
|
|
|
754
768
|
return null;
|
|
755
769
|
}
|
|
756
770
|
}
|
|
771
|
+
/** For a collection opened before its log: has the reopened replica its
|
|
772
|
+
* keys back from the log's control prefix? `failed` is what a waited open
|
|
773
|
+
* refuses as `recovery_required`. */
|
|
774
|
+
keyringSettled() {
|
|
775
|
+
if (!this.native)
|
|
776
|
+
throw fail("binding");
|
|
777
|
+
const observation = this.native.observations();
|
|
778
|
+
if (observation.requiresReopen || observation.keyringRebuildFailed)
|
|
779
|
+
return "failed";
|
|
780
|
+
return observation.keyringRebuilding ? "pending" : "settled";
|
|
781
|
+
}
|
|
757
782
|
/** Local writes not yet confirmed by the log (native sync status). */
|
|
758
783
|
pendingWrites() {
|
|
759
784
|
try {
|
|
@@ -849,7 +874,7 @@ export class AppWebCloudCopyHost {
|
|
|
849
874
|
* behind can finish its catch-up turn; without a pump it is fixed.
|
|
850
875
|
* No status-based admission, write retry, key override or private grant. */
|
|
851
876
|
waitForVerifiedRead(options) {
|
|
852
|
-
const { timeoutMs = 15000, cold = false } = options;
|
|
877
|
+
const { timeoutMs = 15000, cold = false, local = false } = options;
|
|
853
878
|
const signal = this.operationSignal(options.signal);
|
|
854
879
|
this.checkCollection(signal);
|
|
855
880
|
if (!this.native ||
|
|
@@ -859,13 +884,17 @@ export class AppWebCloudCopyHost {
|
|
|
859
884
|
timeoutMs < 1 ||
|
|
860
885
|
timeoutMs > 15000 ||
|
|
861
886
|
typeof cold !== "boolean" ||
|
|
862
|
-
|
|
887
|
+
typeof local !== "boolean" ||
|
|
888
|
+
(cold && (local || !this.pump)))
|
|
863
889
|
throw fail("binding");
|
|
890
|
+
// An empty replica would answer a read with no records at all.
|
|
891
|
+
if (local && !this.holdsLog())
|
|
892
|
+
return Promise.reject(fail("unavailable"));
|
|
864
893
|
if (this.readWork)
|
|
865
894
|
return this.readWork.then(() => {
|
|
866
895
|
this.checkCollection(signal);
|
|
867
896
|
});
|
|
868
|
-
const work = this.verifyRead(signal, timeoutMs, cold, options.onProgress);
|
|
897
|
+
const work = this.verifyRead(signal, timeoutMs, cold, local, options.onProgress);
|
|
869
898
|
this.readWork = work;
|
|
870
899
|
void work
|
|
871
900
|
.finally(() => {
|
|
@@ -875,8 +904,10 @@ export class AppWebCloudCopyHost {
|
|
|
875
904
|
.catch(() => { });
|
|
876
905
|
return work;
|
|
877
906
|
}
|
|
878
|
-
async verifyRead(signal, timeoutMs, cold, onProgress) {
|
|
907
|
+
async verifyRead(signal, timeoutMs, cold, local, onProgress) {
|
|
879
908
|
const ctrl = new AbortController(), abort = () => ctrl.abort();
|
|
909
|
+
// A local read never drives the log, even one bound while it runs.
|
|
910
|
+
const pump = () => (local ? null : this.pump);
|
|
880
911
|
this.readAbort = ctrl;
|
|
881
912
|
signal.addEventListener("abort", abort, { once: true });
|
|
882
913
|
let timer = null;
|
|
@@ -899,7 +930,7 @@ export class AppWebCloudCopyHost {
|
|
|
899
930
|
};
|
|
900
931
|
const observe = () => {
|
|
901
932
|
this.checkCollection(signal);
|
|
902
|
-
const refusal = cold ?
|
|
933
|
+
const refusal = cold ? pump().terminalProblem : null;
|
|
903
934
|
if (isAppServerProblem(refusal))
|
|
904
935
|
throw new AppHttpLogError(appServerOutcome(refusal) ?? "unavailable", refusal);
|
|
905
936
|
const observation = this.native.observations();
|
|
@@ -911,7 +942,7 @@ export class AppWebCloudCopyHost {
|
|
|
911
942
|
};
|
|
912
943
|
this.readVerified = false;
|
|
913
944
|
try {
|
|
914
|
-
if (
|
|
945
|
+
if (pump()) {
|
|
915
946
|
// Only native accepted prefix/READ-cursor/snapshot positions count.
|
|
916
947
|
// Requests sent, accepted heartbeats, head growth and status
|
|
917
948
|
// flicker cannot keep a stuck replica alive. Observe DURING a
|
|
@@ -919,7 +950,7 @@ export class AppWebCloudCopyHost {
|
|
|
919
950
|
const progress = () => {
|
|
920
951
|
const observation = observe();
|
|
921
952
|
return [observation.status.confirmedThrough, observation.status.installing?.done ?? 0,
|
|
922
|
-
observation.status.installing?.total ?? 0,
|
|
953
|
+
observation.status.installing?.total ?? 0, pump().readProgress];
|
|
923
954
|
};
|
|
924
955
|
let high = progress(), lastProgress = Date.now();
|
|
925
956
|
const bodies = new Map();
|
|
@@ -932,7 +963,7 @@ export class AppWebCloudCopyHost {
|
|
|
932
963
|
deferred = null;
|
|
933
964
|
}
|
|
934
965
|
high = next.map((value, i) => Math.max(value, high[i]));
|
|
935
|
-
const active =
|
|
966
|
+
const active = pump().responseProgress();
|
|
936
967
|
const ids = new Set(active.map(body => body.id));
|
|
937
968
|
for (const id of bodies.keys())
|
|
938
969
|
if (!ids.has(id))
|
|
@@ -992,8 +1023,9 @@ export class AppWebCloudCopyHost {
|
|
|
992
1023
|
let delay = 250;
|
|
993
1024
|
while (!ctrl.signal.aborted) {
|
|
994
1025
|
this.native.tick();
|
|
995
|
-
|
|
996
|
-
|
|
1026
|
+
const turn = pump();
|
|
1027
|
+
if (turn)
|
|
1028
|
+
await Promise.race([turn.pump(), aborted]);
|
|
997
1029
|
this.checkCollection(signal);
|
|
998
1030
|
const observation = observe();
|
|
999
1031
|
// Cold catch-up owns its progress clock until the complete
|
|
@@ -1019,7 +1051,7 @@ export class AppWebCloudCopyHost {
|
|
|
1019
1051
|
this.checkCollection(signal);
|
|
1020
1052
|
if (!(error instanceof MdbaseError) ||
|
|
1021
1053
|
error.code !== "unavailable" ||
|
|
1022
|
-
!
|
|
1054
|
+
!pump() ||
|
|
1023
1055
|
ctrl.signal.aborted)
|
|
1024
1056
|
throw error;
|
|
1025
1057
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cloud-copy-host.js","sourceRoot":"","sources":["../../src/app-host/cloud-copy-host.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cloud-copy-host.js","sourceRoot":"","sources":["../../src/app-host/cloud-copy-host.ts"],"names":[],"mappings":"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"}
|
|
@@ -238,6 +238,13 @@ export declare class AppProtectedInstallationSignIn {
|
|
|
238
238
|
exchangeCollectionConsent(installation: AppInstallationCustodyAuthority): Promise<AppInstallationCollectionConsentView>;
|
|
239
239
|
/** Current approved/member cloud-copy metadata only; never readiness, keying,
|
|
240
240
|
* or permission inferred from this response or retained consent snapshots. */
|
|
241
|
+
/** The kept listing narrowed to this installation's consent. File actions
|
|
242
|
+
* are never kept, so every row has none until the next read. */
|
|
243
|
+
private keptCollections;
|
|
244
|
+
/** The approved collections as this installation last read them, or null
|
|
245
|
+
* when no listing is kept. No request. It can be out of date in every way a
|
|
246
|
+
* list can; `listApprovedCollections` is still the authority. */
|
|
247
|
+
cachedApprovedCollections(installation: AppInstallationCustodyAuthority): readonly AppInstallationCollection[] | null;
|
|
241
248
|
listApprovedCollections(installation: AppInstallationCustodyAuthority): Promise<readonly AppInstallationCollection[]>;
|
|
242
249
|
/** Protected references to retired scopes. Each non-null value identifies a
|
|
243
250
|
* separate original installation ledger, never a replacement credential. */
|
|
@@ -911,6 +911,25 @@ export class AppProtectedInstallationSignIn {
|
|
|
911
911
|
}
|
|
912
912
|
/** Current approved/member cloud-copy metadata only; never readiness, keying,
|
|
913
913
|
* or permission inferred from this response or retained consent snapshots. */
|
|
914
|
+
/** The kept listing narrowed to this installation's consent. File actions
|
|
915
|
+
* are never kept, so every row has none until the next read. */
|
|
916
|
+
keptCollections() {
|
|
917
|
+
if (this.state.collectionListing === undefined)
|
|
918
|
+
return null;
|
|
919
|
+
return Object.freeze(collectionListing(this.state.collectionListing).filter(c => this.state.collectionIds.includes(c.collectionId) && this.modeConsented(c)).map(c => Object.freeze({ ...c, fileActions: Object.freeze([]) })));
|
|
920
|
+
}
|
|
921
|
+
/** The approved collections as this installation last read them, or null
|
|
922
|
+
* when no listing is kept. No request. It can be out of date in every way a
|
|
923
|
+
* list can; `listApprovedCollections` is still the authority. */
|
|
924
|
+
cachedApprovedCollections(installation) {
|
|
925
|
+
this.consentGuard(installation)();
|
|
926
|
+
try {
|
|
927
|
+
return this.keptCollections();
|
|
928
|
+
}
|
|
929
|
+
catch {
|
|
930
|
+
return null;
|
|
931
|
+
}
|
|
932
|
+
}
|
|
914
933
|
listApprovedCollections(installation) {
|
|
915
934
|
const check = this.consentGuard(installation);
|
|
916
935
|
return this.exclusive(async () => {
|
|
@@ -938,7 +957,7 @@ export class AppProtectedInstallationSignIn {
|
|
|
938
957
|
catch (error) {
|
|
939
958
|
check();
|
|
940
959
|
if (error instanceof AppInstallationSignInError && error.reason === "unavailable" && !error.server && !nonOkResponses.has(error) && this.state.collectionListing !== undefined)
|
|
941
|
-
return
|
|
960
|
+
return this.keptCollections();
|
|
942
961
|
if (error instanceof AppInstallationSignInError && (error.server || nonOkResponses.has(error)) && this.state.collectionListing !== undefined) {
|
|
943
962
|
const state = { ...this.state };
|
|
944
963
|
delete state.collectionListing;
|