@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 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
- (cold && !this.pump))
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 ? this.pump.terminalProblem : null;
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 (this.pump) {
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, this.pump.readProgress];
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 = this.pump.responseProgress();
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
- if (this.pump)
996
- await Promise.race([this.pump.pump(), aborted]);
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
- !this.pump ||
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 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([]) })));
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;