@elaraai/e3-cloud-files 1.0.93 → 1.0.97
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 +129 -23
- package/dist/src/authoring.d.ts +61 -24
- package/dist/src/authoring.d.ts.map +1 -1
- package/dist/src/authoring.js +92 -48
- package/dist/src/authoring.js.map +1 -1
- package/dist/src/check/index.d.ts +3 -4
- package/dist/src/check/index.d.ts.map +1 -1
- package/dist/src/check/index.js +3 -4
- package/dist/src/check/index.js.map +1 -1
- package/dist/src/check.d.ts +44 -9
- package/dist/src/check.d.ts.map +1 -1
- package/dist/src/check.js +130 -53
- package/dist/src/check.js.map +1 -1
- package/dist/src/compat.d.ts +384 -0
- package/dist/src/compat.d.ts.map +1 -0
- package/dist/src/compat.js +258 -0
- package/dist/src/compat.js.map +1 -0
- package/dist/src/index.d.ts +12 -9
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +12 -9
- package/dist/src/index.js.map +1 -1
- package/dist/src/s3/index.d.ts.map +1 -1
- package/dist/src/s3/index.js +34 -12
- package/dist/src/s3/index.js.map +1 -1
- package/dist/src/storage/index.d.ts +72 -3
- package/dist/src/storage/index.d.ts.map +1 -1
- package/dist/src/storage/index.js +258 -13
- package/dist/src/storage/index.js.map +1 -1
- package/dist/src/sync/engine.d.ts +282 -49
- package/dist/src/sync/engine.d.ts.map +1 -1
- package/dist/src/sync/engine.js +599 -110
- package/dist/src/sync/engine.js.map +1 -1
- package/dist/src/sync/index.d.ts +3 -2
- package/dist/src/sync/index.d.ts.map +1 -1
- package/dist/src/sync/index.js +3 -2
- package/dist/src/sync/index.js.map +1 -1
- package/dist/src/sync/memory.d.ts +67 -12
- package/dist/src/sync/memory.d.ts.map +1 -1
- package/dist/src/sync/memory.js +248 -18
- package/dist/src/sync/memory.js.map +1 -1
- package/dist/src/sync/push.d.ts +56 -0
- package/dist/src/sync/push.d.ts.map +1 -0
- package/dist/src/sync/push.js +205 -0
- package/dist/src/sync/push.js.map +1 -0
- package/dist/test/typed.examples.d.ts +49 -0
- package/dist/test/typed.examples.d.ts.map +1 -0
- package/dist/test/typed.examples.js +58 -0
- package/dist/test/typed.examples.js.map +1 -0
- package/package.json +10 -6
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/storage/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACjF,OAAO,EACL,eAAe,EACf,gBAAgB,EAChB,eAAe,EACf,uBAAuB,EACvB,mBAAmB,GAGpB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,gBAAgB,EAAwB,MAAM,yBAAyB,CAAC;AAGjH,0CAA0C;AAC1C,SAAS,SAAS,CAAC,KAAa;IAC9B,OAAO,CAAC,OAAO,CAAC,OAAO,EAAE,QAAQ,CAAC,EAAE,OAAO,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC;AAC/D,CAAC;AAED,MAAM,WAAW,GAAG,UAAU,CAAC,UAAU,CAAC,CAAC;AAC3C,MAAM,YAAY,GAAG,eAAe,CAAC,eAAe,CAAC,CAAC;AAEtD,iCAAiC;AACjC,SAAS,OAAO,CAAC,OAAgD;IAC/D,OAAO,CAAC,GAAG,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAwB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AAC1G,CAAC;AAED;;;;GAIG;AACH,KAAK,UAAU,aAAa,CAAC,OAAuB,EAAE,IAAY,EAAE,IAAY,EAAE,OAAsB;IACtG,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IAC/D,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC5E,MAAM,OAAO,GAAG,IAAI,GAAG,EAA6D,CAAC;IACrF,MAAM,EAAE,GAAG,KAAK,EAAE,IAAY,EAAE,EAAE;QAChC,MAAM,CAAC,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QACxC,IAAI,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QAC5B,IAAI,MAAM,KAAK,SAAS;YAAE,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC;QAC3E,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;IACF,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,OAAO,CAAC,GAAG;QAAE,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;IAClF,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,MAAM;QAAE,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAEtE,MAAM,OAAO,GAAuB,EAAE,CAAC;IACvC,IAAI,IAAI,GAAG,CAAC,CAAC;IACb,KAAK,MAAM,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;QAC1D,IAAI,CAAC,GAAG,IAAI;YAAE,OAAO,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;QACvE,MAAM,OAAO,GAAG,IAAI,GAAG,CAAqB,YAAY,CAAC,MAAM,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACnF,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAE,CAAC;QAC/B,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,MAAM;YAAE,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACvD,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,GAAG;YAAE,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACjE,OAAO,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAC7C,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;IACf,CAAC;IACD,IAAI,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM;QAAE,OAAO,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;IAC7G,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,aAAa,CAAC,OAAuB,EAAE,IAAY,EAAE,EAAU;IAC7E,MAAM,OAAO,GAAG,KAAK,EAAE,KAAa,EAA0B,EAAE,CAC9D,CAAC,MAAM,uBAAuB,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC5E,MAAM,OAAO,GAAG,KAAK,EAAE,KAAa,EAAmB,EAAE;QACvD,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,KAAK,CAAC,CAAC;QAClC,IAAI,IAAI,KAAK,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,SAAS,KAAK,qCAAqC,CAAC,CAAC;QACxF,OAAO,IAAI,CAAC;IACd,CAAC,CAAC;IACF,OAAO;QACL,OAAO;QACP,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK;YACxB,MAAM,mBAAmB,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,SAAS,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,aAAa,CAAC,CAAC;YACrF,OAAO,OAAO,CAAC,KAAK,CAAC,CAAC;QACxB,CAAC;QACD,KAAK,CAAC,UAAU,CAAC,KAAK,EAAE,IAA0C;YAChE,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;YACvE,MAAM,mBAAmB,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,SAAS,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,gBAAgB,CAAC,CAAC;YACxF,OAAO,OAAO,CAAC,KAAK,CAAC,CAAC;QACxB,CAAC;QACD,KAAK,CAAC,YAAY,CAAC,KAAK,EAAE,OAAO;YAC/B,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,OAAO,CAAC,KAAK,CAAC,CAAC;YACzD,MAAM,OAAO,GAAG,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,aAAa,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;YACzH,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,OAAO,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,CAAC,CAAC;YAC9E,qEAAqE;YACrE,uEAAuE;YACvE,OAAO,CAAC,MAAM,gBAAgB,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,SAAS,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;QACpF,CAAC;KACF,CAAC;AACJ,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/storage/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,63 @@
|
|
|
2
2
|
* Copyright (c) 2025 Elara AI Pty Ltd
|
|
3
3
|
* Licensed under BSL 1.1. See LICENSE for details.
|
|
4
4
|
*/
|
|
5
|
-
|
|
5
|
+
/**
|
|
6
|
+
* The sync: what a source's files fill, brought up to date.
|
|
7
|
+
*
|
|
8
|
+
* One algorithm for a local repository and a deployed workspace alike: what
|
|
9
|
+
* reads a bucket, what writes a workspace's inputs and records, and what
|
|
10
|
+
* remembers the files each target took are given to it ({@link FilesReader},
|
|
11
|
+
* {@link FilesWriter}, {@link FilesLedger}), so both behave the same.
|
|
12
|
+
*
|
|
13
|
+
* For each mapping: list the source, compare each file with what the target
|
|
14
|
+
* took last (its ETag and size), read what is new or changed, write the
|
|
15
|
+
* target, and remember what it took and the value it wrote or the commit it
|
|
16
|
+
* made. A file the same as before is never read again, so a sync with
|
|
17
|
+
* nothing new reads nothing; a target whose files are as they were is not
|
|
18
|
+
* written. A file over its limit is refused, named in the report, and never
|
|
19
|
+
* truncated; so is a file its reader cannot read (archived, changed since it
|
|
20
|
+
* was listed, or closed to the reader's access: {@link FilesUnreadableError}),
|
|
21
|
+
* the sync going on with the rest, and the next sync trying it again. A
|
|
22
|
+
* target is remembered only once it is written, so a sync that stops part
|
|
23
|
+
* way takes the rest next time.
|
|
24
|
+
*
|
|
25
|
+
* A `file` or `latest` mapping with a type takes its file in as the beast2
|
|
26
|
+
* value it holds: the file's header is read first, through a ranged read,
|
|
27
|
+
* and a file of another type, or no beast2, is refused before any other
|
|
28
|
+
* byte of it is read; then the writer takes the file in from a stream of its
|
|
29
|
+
* bytes ({@link FilesWriter.takeTyped}: never held whole, a collection by
|
|
30
|
+
* pieces), which may outlast a round and resume in the next, the file it was
|
|
31
|
+
* taking remembered by its key and ETag so no other file is resumed as it.
|
|
32
|
+
* A record's mapping seeds the record ({@link FilesWriter.seed}: its file is
|
|
33
|
+
* the record's first state, or its state again while nothing has mutated it
|
|
34
|
+
* since, or when the sync is asked to reset it); a mutation's feeds it
|
|
35
|
+
* ({@link FilesWriter.feed}): every new file under its prefix, in key order,
|
|
36
|
+
* each applied once, by the file's hash, and never again under another name.
|
|
37
|
+
*
|
|
38
|
+
* A folder's new and changed files are taken in batches of at most 256 MiB
|
|
39
|
+
* ({@link FOLDER_BATCH_BYTES}): each batch is read, written and remembered
|
|
40
|
+
* before the next is read, so a sync holds one batch of files, however large
|
|
41
|
+
* the folder. A sync can stop between targets, between a folder's batches,
|
|
42
|
+
* between a feed's files and within a typed intake when asked
|
|
43
|
+
* ({@link syncFilesRound}, a cloud round handing over), and the next takes
|
|
44
|
+
* the rest.
|
|
45
|
+
*
|
|
46
|
+
* What a target took is trusted only while its mapping and its source's
|
|
47
|
+
* binding are those it was taken under ({@link LedgerState}'s `under`) and,
|
|
48
|
+
* for an input, while the input still holds the value the sync wrote: a
|
|
49
|
+
* deploy that resets the workspace's inputs, anyone setting one by hand, a
|
|
50
|
+
* changed declaration or a source bound elsewhere, and the next sync takes
|
|
51
|
+
* all of its files again, even when a sync under the old declarations wrote
|
|
52
|
+
* its ledger after the change. A record's or mutation's ledger stays
|
|
53
|
+
* trusted as the record moves on: the record itself says what a seed may do.
|
|
54
|
+
*
|
|
55
|
+
* Mappings that share a source and a prefix list it once a round; a glob that
|
|
56
|
+
* matches only the prefix's own folder lists that folder alone.
|
|
57
|
+
*
|
|
58
|
+
* @packageDocumentation
|
|
59
|
+
*/
|
|
60
|
+
import { type EastTypeValue } from '@elaraai/east';
|
|
61
|
+
import { type FilesBinding, type FilesLedgerValue, type FilesListingRow, type FilesManifest, type FilesMapping, type FilesProblem, type FilesRefusalReason, type FilesSyncReport, type FilesTaken, type FilesTarget } from '@elaraai/e3-cloud-types';
|
|
6
62
|
/** A file of a source, as a listing gives it. */
|
|
7
63
|
export interface FilesObject {
|
|
8
64
|
/** Its key, relative to where the workspace binds the source */
|
|
@@ -19,39 +75,153 @@ export interface FilesListOptions {
|
|
|
19
75
|
/** Only the files in the prefix's own folder, none in a folder under it */
|
|
20
76
|
readonly topFolderOnly?: boolean;
|
|
21
77
|
}
|
|
78
|
+
/** How a reader opens a file's bytes. */
|
|
79
|
+
export interface FilesOpenOptions {
|
|
80
|
+
/** The byte to start at: a typed intake resumed where its staging stood */
|
|
81
|
+
readonly start?: number;
|
|
82
|
+
}
|
|
22
83
|
/** Reads one bound source: a bucket, under the prefix the binding names. */
|
|
23
84
|
export interface FilesReader {
|
|
24
|
-
/**
|
|
25
|
-
list(prefix: string, options?: FilesListOptions): AsyncIterable<FilesObject>;
|
|
26
|
-
/** One file
|
|
85
|
+
/** The files under a prefix, in key order; a prefix's own folder alone when asked */
|
|
86
|
+
list(prefix: string, options?: FilesListOptions): AsyncIterable<FilesObject> | Iterable<FilesObject>;
|
|
87
|
+
/** One file, or null when there is none at the key */
|
|
27
88
|
stat(key: string): Promise<FilesObject | null>;
|
|
28
89
|
/**
|
|
29
|
-
*
|
|
30
|
-
*
|
|
90
|
+
* A file's bytes, whole, at the version its listing gave.
|
|
91
|
+
*
|
|
92
|
+
* @throws {FilesUnreadableError} When the file cannot be read: archived, changed since it was listed, gone, or closed to the reader
|
|
31
93
|
*/
|
|
32
|
-
read(
|
|
94
|
+
read(object: FilesObject): Promise<Uint8Array>;
|
|
95
|
+
/**
|
|
96
|
+
* A range of a file's bytes, `[start, end)`: a typed file's header, read
|
|
97
|
+
* before any other byte of it.
|
|
98
|
+
*
|
|
99
|
+
* @throws {FilesUnreadableError} As `read`
|
|
100
|
+
*/
|
|
101
|
+
readRange(object: FilesObject, start: number, end: number): Promise<Uint8Array>;
|
|
102
|
+
/**
|
|
103
|
+
* A file's bytes as a stream, from a byte on, for a typed file taken in
|
|
104
|
+
* without being held whole.
|
|
105
|
+
*
|
|
106
|
+
* @throws {FilesUnreadableError} As `read`
|
|
107
|
+
*/
|
|
108
|
+
open(object: FilesObject, options?: FilesOpenOptions): Promise<AsyncIterable<Uint8Array>>;
|
|
33
109
|
}
|
|
34
110
|
/**
|
|
35
|
-
*
|
|
36
|
-
*
|
|
37
|
-
*
|
|
38
|
-
* archived, changed or gone since it was listed, or closed to the reader's
|
|
39
|
-
* access. Any other error ends the round, which is tried again.
|
|
111
|
+
* Thrown by a reader for a file it cannot read, which the sync refuses and
|
|
112
|
+
* goes on past: archived, changed since it was listed, gone, or closed to
|
|
113
|
+
* the reader's access. Anything else a reader throws stops the sync.
|
|
40
114
|
*/
|
|
41
115
|
export declare class FilesUnreadableError extends Error {
|
|
116
|
+
/** The file's key */
|
|
42
117
|
readonly key: string;
|
|
118
|
+
/** Why, as the refusal says it */
|
|
43
119
|
readonly reason: string;
|
|
44
|
-
/**
|
|
45
|
-
* @param key - The file's key, relative to the binding
|
|
46
|
-
* @param reason - Why, completing "'<key>' …"
|
|
47
|
-
*/
|
|
48
120
|
constructor(key: string, reason: string);
|
|
49
121
|
}
|
|
50
|
-
/**
|
|
122
|
+
/**
|
|
123
|
+
* A typed intake under way across rounds: the file it takes (its key and
|
|
124
|
+
* ETag, so no other file is resumed as it), its SHA-256 once its bytes are
|
|
125
|
+
* placed in the store, else where its staging stood (the writer's own
|
|
126
|
+
* progress, as text).
|
|
127
|
+
*/
|
|
128
|
+
export interface TypedIntakeProgress {
|
|
129
|
+
readonly key: string;
|
|
130
|
+
readonly etag: string;
|
|
131
|
+
readonly sha256: string | null;
|
|
132
|
+
readonly staging: string | null;
|
|
133
|
+
}
|
|
134
|
+
/** What a typed intake is given. */
|
|
135
|
+
export interface TypedIntakeOptions {
|
|
136
|
+
/** The file's SHA-256, where the caller knows it (a push) */
|
|
137
|
+
readonly sha256?: string;
|
|
138
|
+
/** The intake of this same file an earlier round left under way, to resume */
|
|
139
|
+
readonly resume?: TypedIntakeProgress;
|
|
140
|
+
/** Stops the intake where it can resume: a round's deadline */
|
|
141
|
+
readonly signal?: AbortSignal;
|
|
142
|
+
}
|
|
143
|
+
/**
|
|
144
|
+
* What a typed intake did: took the file; stopped at the round's deadline,
|
|
145
|
+
* where the next round resumes it (`taking`), or before anything was kept,
|
|
146
|
+
* so the next round starts the file again (`taking` null); or refused it.
|
|
147
|
+
*/
|
|
148
|
+
export type TypedIntakeResult = {
|
|
149
|
+
readonly status: 'taken';
|
|
150
|
+
readonly hash: string;
|
|
151
|
+
readonly sha256: string;
|
|
152
|
+
readonly taken: FilesTaken;
|
|
153
|
+
} | {
|
|
154
|
+
readonly status: 'yielded';
|
|
155
|
+
readonly taking: TypedIntakeProgress | null;
|
|
156
|
+
} | {
|
|
157
|
+
readonly status: 'refused';
|
|
158
|
+
readonly reason: FilesRefusalReason;
|
|
159
|
+
};
|
|
160
|
+
/**
|
|
161
|
+
* A record, as a seed reads it: pending (no state yet, its file its genesis),
|
|
162
|
+
* or its head commit, with how many commits have been made since its last
|
|
163
|
+
* seed (`$init` or `$seed`); null when its history was not walked to a seed.
|
|
164
|
+
*/
|
|
165
|
+
export type RecordSeedState = {
|
|
166
|
+
readonly pending: true;
|
|
167
|
+
} | {
|
|
168
|
+
readonly pending: false;
|
|
169
|
+
readonly head: string;
|
|
170
|
+
readonly sinceSeed: number | null;
|
|
171
|
+
};
|
|
172
|
+
/** What a seed is given. */
|
|
173
|
+
export interface SeedOptions {
|
|
174
|
+
/** Whether the record is pending, so the file is its genesis (`$init`); else its state again (`$seed`) */
|
|
175
|
+
readonly genesis: boolean;
|
|
176
|
+
/** The file's SHA-256, where the caller knows it */
|
|
177
|
+
readonly sha256?: string;
|
|
178
|
+
readonly signal?: AbortSignal;
|
|
179
|
+
}
|
|
180
|
+
/** What a seed did. */
|
|
181
|
+
export type SeedResult = {
|
|
182
|
+
readonly status: 'committed';
|
|
183
|
+
readonly commit: string;
|
|
184
|
+
readonly rows: bigint | null;
|
|
185
|
+
readonly sha256: string;
|
|
186
|
+
} | {
|
|
187
|
+
readonly status: 'refused';
|
|
188
|
+
readonly reason: FilesRefusalReason;
|
|
189
|
+
};
|
|
190
|
+
/** What a feed is given. */
|
|
191
|
+
export interface FeedOptions {
|
|
192
|
+
/** The file's SHA-256, where the caller knows it: the feed's idempotency key */
|
|
193
|
+
readonly sha256?: string;
|
|
194
|
+
/** The SHA-256 of every file the mutation has applied already: one of them is applied again under no name */
|
|
195
|
+
readonly applied?: ReadonlySet<string>;
|
|
196
|
+
readonly signal?: AbortSignal;
|
|
197
|
+
}
|
|
198
|
+
/**
|
|
199
|
+
* What a feed did: committed through the mutation; applied before, so
|
|
200
|
+
* nothing more; waits (for the record's first state, or for a round the
|
|
201
|
+
* deadline or a busy record cut short: tried again by the next sync); or
|
|
202
|
+
* was refused by the mutation, which the file's bytes must change to be
|
|
203
|
+
* tried again.
|
|
204
|
+
*/
|
|
205
|
+
export type FeedResult = {
|
|
206
|
+
readonly status: 'committed';
|
|
207
|
+
readonly commit: string;
|
|
208
|
+
readonly sha256: string;
|
|
209
|
+
} | {
|
|
210
|
+
readonly status: 'applied';
|
|
211
|
+
readonly sha256: string;
|
|
212
|
+
} | {
|
|
213
|
+
readonly status: 'waiting';
|
|
214
|
+
readonly reason: string;
|
|
215
|
+
} | {
|
|
216
|
+
readonly status: 'refused';
|
|
217
|
+
readonly reason: FilesRefusalReason;
|
|
218
|
+
readonly sha256: string;
|
|
219
|
+
};
|
|
220
|
+
/** Writes one workspace's inputs and records, as a sync fills them. */
|
|
51
221
|
export interface FilesWriter {
|
|
52
222
|
/** The value an input holds now, its hash; `null` while it is unassigned */
|
|
53
223
|
current(input: string): Promise<string | null>;
|
|
54
|
-
/** Sets a `file` or `latest` input to a file's bytes */
|
|
224
|
+
/** Sets a `file` or `latest` input with no type to a file's bytes */
|
|
55
225
|
setFile(input: string, bytes: Uint8Array): Promise<string>;
|
|
56
226
|
/**
|
|
57
227
|
* Updates a `folder` input: each file in `set` added or replaced, each path
|
|
@@ -61,6 +231,18 @@ export interface FilesWriter {
|
|
|
61
231
|
updateFolder(input: string, changes: FolderChanges): Promise<string>;
|
|
62
232
|
/** Sets a `listing` input */
|
|
63
233
|
setListing(input: string, rows: ReadonlyMap<string, FilesListingRow>): Promise<string>;
|
|
234
|
+
/**
|
|
235
|
+
* Takes a typed file in as an input's value, from a stream of its bytes:
|
|
236
|
+
* never held whole, a collection by pieces. The file's header has been
|
|
237
|
+
* checked against `type` already.
|
|
238
|
+
*/
|
|
239
|
+
takeTyped(input: string, file: FilesObject, type: EastTypeValue, source: FilesReader, options: TypedIntakeOptions): Promise<TypedIntakeResult>;
|
|
240
|
+
/** A record, as a seed reads it; absent where records cannot be seeded */
|
|
241
|
+
recordState?(record: string): Promise<RecordSeedState>;
|
|
242
|
+
/** Seeds a record from a typed file: its first state, or its state again */
|
|
243
|
+
seed?(record: string, file: FilesObject, type: EastTypeValue, source: FilesReader, options: SeedOptions): Promise<SeedResult>;
|
|
244
|
+
/** Feeds a record's mutation a typed file's value, once */
|
|
245
|
+
feed?(record: string, mutation: string, file: FilesObject, type: EastTypeValue, source: FilesReader, options: FeedOptions): Promise<FeedResult>;
|
|
64
246
|
}
|
|
65
247
|
/** What a sync changes in a `folder` input. */
|
|
66
248
|
export interface FolderChanges {
|
|
@@ -71,55 +253,76 @@ export interface FolderChanges {
|
|
|
71
253
|
/** Whether the folder is `set` alone, whatever the input holds now */
|
|
72
254
|
readonly fresh: boolean;
|
|
73
255
|
}
|
|
74
|
-
/** What
|
|
256
|
+
/** What a target took of one file. */
|
|
75
257
|
export interface LedgerEntry {
|
|
76
258
|
readonly etag: string;
|
|
77
259
|
readonly size: number;
|
|
260
|
+
/** The file's SHA-256, where the sync hashed it */
|
|
261
|
+
readonly sha256?: string;
|
|
262
|
+
/** When the file was last written, as its listing said */
|
|
263
|
+
readonly modified?: Date;
|
|
78
264
|
}
|
|
79
|
-
/** What
|
|
265
|
+
/** What a target took last: each file, the value the sync wrote or the commit it made, and what it was taken under. */
|
|
80
266
|
export interface LedgerState {
|
|
81
|
-
/** Each file it took, by key */
|
|
267
|
+
/** Each file it took, by key; a feed's, every file applied */
|
|
82
268
|
readonly entries: ReadonlyMap<string, LedgerEntry>;
|
|
83
|
-
/** The value the sync wrote, its hash; `null` before its first sync */
|
|
269
|
+
/** The value the sync wrote, its hash: an input's; `null` before its first sync */
|
|
84
270
|
readonly value: string | null;
|
|
85
271
|
/**
|
|
86
272
|
* The mapping's shape and its source's binding it was taken under, as one
|
|
87
273
|
* text ({@link takenUnder}); `null` before its first sync
|
|
88
274
|
*/
|
|
89
275
|
readonly under: string | null;
|
|
276
|
+
/** The commit the sync made: a record's seed, a mutation's last feed; `null` for an input, or before any */
|
|
277
|
+
readonly commit: string | null;
|
|
278
|
+
/** The SHA-256 of a feed the mutation refused, not tried again until the file changes */
|
|
279
|
+
readonly tried: string | null;
|
|
280
|
+
/** A typed intake under way across rounds */
|
|
281
|
+
readonly taking: TypedIntakeProgress | null;
|
|
90
282
|
}
|
|
91
|
-
/** What
|
|
283
|
+
/** What a target took before its first sync: nothing. */
|
|
92
284
|
export declare const NO_LEDGER: LedgerState;
|
|
93
285
|
/**
|
|
94
|
-
* What
|
|
286
|
+
* What a target took, as a store keeps it (e3-cloud-types' `FilesLedgerType`).
|
|
95
287
|
*
|
|
96
288
|
* @param state - What it took
|
|
97
289
|
* @returns Its East value
|
|
98
290
|
*/
|
|
99
291
|
export declare function ledgerValueOf(state: LedgerState): FilesLedgerValue;
|
|
100
292
|
/**
|
|
101
|
-
* What
|
|
293
|
+
* What a target took, from what a store keeps.
|
|
102
294
|
*
|
|
103
295
|
* @param value - Its East value
|
|
104
296
|
* @returns What it took
|
|
105
297
|
*/
|
|
106
298
|
export declare function ledgerStateOf(value: FilesLedgerValue): LedgerState;
|
|
107
299
|
/**
|
|
108
|
-
*
|
|
300
|
+
* The key a target's ledger is kept under: an input's name, as the first
|
|
301
|
+
* version kept it; a record's under `records/`; a mutation's under
|
|
302
|
+
* `mutations/{record}/{mutation}` (two segments: a name may hold a dot).
|
|
303
|
+
*
|
|
304
|
+
* @param target - The target
|
|
305
|
+
* @returns Its ledger's key
|
|
306
|
+
*/
|
|
307
|
+
export declare function ledgerKeyOf(target: FilesTarget): string;
|
|
308
|
+
/**
|
|
309
|
+
* What a target's files are taken under: its mapping's shape and where its
|
|
109
310
|
* source is bound, as one text. A ledger taken under another is not trusted:
|
|
110
|
-
* its keys may name other files, and its paths another folder's.
|
|
311
|
+
* its keys may name other files, and its paths another folder's. A shape
|
|
312
|
+
* that names no type prints as the first version printed it, so a ledger it
|
|
313
|
+
* wrote stays trusted.
|
|
111
314
|
*
|
|
112
315
|
* @param mapping - The mapping
|
|
113
316
|
* @param binding - Its source's binding
|
|
114
317
|
* @returns The text
|
|
115
318
|
*/
|
|
116
319
|
export declare function takenUnder(mapping: FilesMapping, binding: FilesBinding): string;
|
|
117
|
-
/** Remembers, for each
|
|
320
|
+
/** Remembers, for each target, what it took last. */
|
|
118
321
|
export interface FilesLedger {
|
|
119
|
-
/** What
|
|
120
|
-
read(
|
|
121
|
-
/** Remembers what
|
|
122
|
-
write(
|
|
322
|
+
/** What a target took last, by its ledger's key ({@link ledgerKeyOf}); nothing before its first sync */
|
|
323
|
+
read(key: string): Promise<LedgerState>;
|
|
324
|
+
/** Remembers what a target took */
|
|
325
|
+
write(key: string, state: LedgerState): Promise<void>;
|
|
123
326
|
}
|
|
124
327
|
/** What a sync is given. */
|
|
125
328
|
export interface SyncOptions {
|
|
@@ -129,33 +332,37 @@ export interface SyncOptions {
|
|
|
129
332
|
readonly bindings: readonly FilesBinding[];
|
|
130
333
|
/** Reads a bound source */
|
|
131
334
|
readonly reader: (binding: FilesBinding) => FilesReader;
|
|
132
|
-
/** Writes the workspace's inputs */
|
|
335
|
+
/** Writes the workspace's inputs and records */
|
|
133
336
|
readonly writer: FilesWriter;
|
|
134
|
-
/** Remembers what each
|
|
337
|
+
/** Remembers what each target took */
|
|
135
338
|
readonly ledger: FilesLedger;
|
|
136
339
|
/** List what a sync would take, and take nothing */
|
|
137
340
|
readonly dryRun?: boolean;
|
|
138
|
-
/** Only these
|
|
139
|
-
readonly
|
|
341
|
+
/** Only these targets; every mapping when absent */
|
|
342
|
+
readonly targets?: readonly FilesTarget[];
|
|
343
|
+
/** Records whose file is taken as their state again, whatever has mutated them since their seed */
|
|
344
|
+
readonly reset?: readonly string[];
|
|
140
345
|
/** The time, for the report */
|
|
141
346
|
readonly now?: () => Date;
|
|
142
347
|
/** The most bytes of a folder's files held before they are written: {@link FOLDER_BATCH_BYTES} when absent */
|
|
143
348
|
readonly batchBytes?: number;
|
|
349
|
+
/** Stops a typed intake, a seed or a feed where it can resume: a round's deadline */
|
|
350
|
+
readonly signal?: AbortSignal;
|
|
144
351
|
}
|
|
145
352
|
/** What one round of a sync is given: a sync's options, and when to stop. */
|
|
146
353
|
export interface SyncRoundOptions extends SyncOptions {
|
|
147
354
|
/**
|
|
148
|
-
* Asked between
|
|
149
|
-
* written something: `true` stops the round
|
|
150
|
-
* last written and remembered
|
|
355
|
+
* Asked between targets, between a folder's batches and between a feed's
|
|
356
|
+
* files, once the round has written something: `true` stops the round
|
|
357
|
+
* there, every target as it was last written and remembered
|
|
151
358
|
*/
|
|
152
359
|
readonly shouldYield?: () => boolean;
|
|
153
360
|
}
|
|
154
361
|
/** What a round did, and whether it stopped before the end. */
|
|
155
362
|
export interface FilesSyncRound {
|
|
156
|
-
/** What it did: each
|
|
363
|
+
/** What it did: each target it reached, with what it took */
|
|
157
364
|
readonly report: FilesSyncReport;
|
|
158
|
-
/** Whether it stopped when asked, with
|
|
365
|
+
/** Whether it stopped when asked, with targets, a folder's files, a feed's files or an intake left for the next */
|
|
159
366
|
readonly yielded: boolean;
|
|
160
367
|
}
|
|
161
368
|
/** The most bytes of a folder's files a sync holds before it writes them, when not told: 256 MiB. */
|
|
@@ -166,26 +373,52 @@ export declare class FilesSyncError extends Error {
|
|
|
166
373
|
constructor(problems: readonly FilesProblem[]);
|
|
167
374
|
}
|
|
168
375
|
/**
|
|
169
|
-
*
|
|
170
|
-
*
|
|
171
|
-
*
|
|
172
|
-
*
|
|
376
|
+
* The root type a beast2 file's header declares, read through its head:
|
|
377
|
+
* 64 KiB, then wider only for a wide type section, never the file. Refused
|
|
378
|
+
* as no beast2 when the header is malformed, or wider than any type section
|
|
379
|
+
* is. What the sync and a push's reading of a file on disk share.
|
|
380
|
+
*
|
|
381
|
+
* @param size - The file's size
|
|
382
|
+
* @param readHead - Reads the file's first bytes, as many as asked
|
|
383
|
+
* @returns The declared root type, or why the file is no beast2
|
|
384
|
+
*/
|
|
385
|
+
export declare function beast2HeaderTypeOf(size: number, readHead: (bytes: number) => Promise<Uint8Array>): Promise<{
|
|
386
|
+
type: EastTypeValue;
|
|
387
|
+
} | {
|
|
388
|
+
reason: FilesRefusalReason;
|
|
389
|
+
}>;
|
|
390
|
+
/**
|
|
391
|
+
* Whether a type is a collection's: an Array, Set or Dict root, which beast2
|
|
392
|
+
* stores in segments and e3 takes in by pieces, of any size.
|
|
393
|
+
*
|
|
394
|
+
* @param type - The type
|
|
395
|
+
* @returns Whether it is a collection
|
|
396
|
+
*/
|
|
397
|
+
export declare function isCollectionType(type: EastTypeValue): boolean;
|
|
398
|
+
/**
|
|
399
|
+
* Brings each mapping's target up to date with its source's files, stopping
|
|
400
|
+
* when asked between targets, between a folder's batches, between a feed's
|
|
401
|
+
* files or within a typed intake: one round of a sync that hands over, as
|
|
402
|
+
* the platform's do. What it stopped before, the next round takes. Records
|
|
403
|
+
* are seeded before mutations are fed, so a record seeded and fed in one
|
|
404
|
+
* sync takes both, in that order.
|
|
173
405
|
*
|
|
174
406
|
* @param options - The declarations, the bindings, what reads, writes and remembers, and when to stop
|
|
175
|
-
* @returns What it did, per
|
|
407
|
+
* @returns What it did, per target it reached, and whether it stopped before the end
|
|
176
408
|
* @throws {FilesSyncError} When a mapping's source is not bound, before
|
|
177
409
|
* anything is read
|
|
178
|
-
* @throws {Error} When
|
|
410
|
+
* @throws {Error} When a target named is not one a declaration fills
|
|
179
411
|
*/
|
|
180
412
|
export declare function syncFilesRound(options: SyncRoundOptions): Promise<FilesSyncRound>;
|
|
181
413
|
/**
|
|
182
|
-
* Brings each mapping's
|
|
414
|
+
* Brings each mapping's target up to date with its source's files, to the
|
|
415
|
+
* end.
|
|
183
416
|
*
|
|
184
417
|
* @param options - The declarations, the bindings, and what reads, writes and remembers
|
|
185
418
|
* @returns What it did, per mapping
|
|
186
419
|
* @throws {FilesSyncError} When a mapping's source is not bound, before
|
|
187
420
|
* anything is read
|
|
188
|
-
* @throws {Error} When
|
|
421
|
+
* @throws {Error} When a target named is not one a declaration fills
|
|
189
422
|
*/
|
|
190
423
|
export declare function syncFiles(options: SyncOptions): Promise<FilesSyncReport>;
|
|
191
424
|
//# sourceMappingURL=engine.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../../../src/sync/engine.ts"],"names":[],"mappings":"AAAA;;;GAGG;
|
|
1
|
+
{"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../../../src/sync/engine.ts"],"names":[],"mappings":"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"}
|