@amalgm/shell 0.1.164-main.39179203712 → 0.1.164-main.39182422024
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/content-cache-host.js +6 -4
- package/dist/content-cache-host.js.map +1 -1
- package/dist/content-cache-retention.d.ts +12 -4
- package/dist/content-cache-retention.js +82 -46
- package/dist/content-cache-retention.js.map +1 -1
- package/dist/native/fsevents-stream.node +0 -0
- package/dist/user-ground-host.d.ts +11 -0
- package/dist/user-ground-host.js +7 -0
- package/dist/user-ground-host.js.map +1 -1
- package/dist/watching/fsevents.d.ts +17 -4
- package/dist/watching/fsevents.js +18 -4
- package/dist/watching/fsevents.js.map +1 -1
- package/dist/watching/host.d.ts +32 -2
- package/dist/watching/host.js +88 -14
- package/dist/watching/host.js.map +1 -1
- package/npm-shrinkwrap.json +7 -16
- package/package.json +5 -5
|
@@ -334,16 +334,18 @@ export async function captureContentBlocks(source, sink) {
|
|
|
334
334
|
if (!Number.isSafeInteger(source.bytes) || source.bytes < 0) {
|
|
335
335
|
throw new Error("captured file byte count is invalid");
|
|
336
336
|
}
|
|
337
|
-
const
|
|
337
|
+
const sizes = chunkSizes(source.bytes);
|
|
338
|
+
// A single block is the whole file, so its hash is the content hash.
|
|
339
|
+
const wholeHash = sizes.length > 1 ? createHash("sha256") : null;
|
|
338
340
|
const chunks = [];
|
|
339
341
|
let binary = false;
|
|
340
342
|
let offset = 0;
|
|
341
|
-
for (const bytes of
|
|
343
|
+
for (const bytes of sizes) {
|
|
342
344
|
const block = await source.read(offset, bytes);
|
|
343
345
|
if (!(block instanceof Uint8Array) || block.byteLength !== bytes) {
|
|
344
346
|
throw new Error(`captured file returned the wrong byte count at offset ${offset}`);
|
|
345
347
|
}
|
|
346
|
-
wholeHash
|
|
348
|
+
wholeHash?.update(block);
|
|
347
349
|
chunks.push({ sha256: sha256Hex(block), bytes: block.byteLength });
|
|
348
350
|
if (!binary) {
|
|
349
351
|
binary = Buffer.from(block.buffer, block.byteOffset, block.byteLength).includes(0);
|
|
@@ -352,7 +354,7 @@ export async function captureContentBlocks(source, sink) {
|
|
|
352
354
|
await sink.write(offset, block);
|
|
353
355
|
offset += block.byteLength;
|
|
354
356
|
}
|
|
355
|
-
const contentHash = wholeHash
|
|
357
|
+
const contentHash = wholeHash?.digest("hex") ?? chunks[0]?.sha256 ?? sha256Hex("");
|
|
356
358
|
const checked = manifestFromChunks(contentHash, chunks);
|
|
357
359
|
if (!checked.ok)
|
|
358
360
|
throw new Error(checked.error);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"content-cache-host.js","sourceRoot":"","sources":["../src/content-cache-host.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"content-cache-host.js","sourceRoot":"","sources":["../src/content-cache-host.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,10 +4,18 @@ export interface CacheRoot {
|
|
|
4
4
|
readonly repository: boolean;
|
|
5
5
|
readonly requiredLocal: boolean;
|
|
6
6
|
}
|
|
7
|
-
/**
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
7
|
+
/** The record owners: constructs, and every pending Outbox and unresolved
|
|
8
|
+
* Inbox row. Each is read once per proof, a page per turn, never again per
|
|
9
|
+
* cached chunk: every writer of a new record owner holds the cache fence, so
|
|
10
|
+
* a proof that outlives one is invalidated, and an acknowledgment or a
|
|
11
|
+
* resolution only loosens a promise already read. A pending record is an
|
|
12
|
+
* unpublished promise: it requires its result content and its declared
|
|
13
|
+
* cargo locally. Constructs and accepted records retain a cached copy without
|
|
14
|
+
* requiring one. False: the fence moved. */
|
|
15
|
+
export declare function readRecordRoots(database: Database.Database, roots: Map<string, CacheRoot>, current: () => boolean): Promise<boolean>;
|
|
16
|
+
/** The notebook's owners of these cached objects, in one coherent read.
|
|
17
|
+
* Recovery owners whose full dependency set cannot yet be enumerated refuse
|
|
18
|
+
* pruning (null) rather than borrowing current O. */
|
|
11
19
|
export declare function readCacheRoots(database: Database.Database, cached: readonly string[]): readonly CacheRoot[] | null;
|
|
12
20
|
/** Only dependency facts survive a visit. Verification streams pack bytes;
|
|
13
21
|
* metadata inspection never reconstructs an identity map or opens Git. */
|
|
@@ -10,7 +10,7 @@ import { decodeAcceptedEntityRecord, decodeLocalEntityRecord } from "@amalgm/liv
|
|
|
10
10
|
import { hashContentFile, listCachedContent } from "./content-cache-host.js";
|
|
11
11
|
import { inspectRepositoryTransportFile } from "./git-repository-host.js";
|
|
12
12
|
import { awaitTurn } from "./turns.js";
|
|
13
|
-
/** Cached objects asked about in one short read
|
|
13
|
+
/** Cached objects asked about, or record owners decoded, in one short read. */
|
|
14
14
|
const CHUNK = 256;
|
|
15
15
|
const PAYLOAD_TYPES = ["file.text", "file.binary", "link", "agent", "automation", "app", "tool"];
|
|
16
16
|
/** One owner more for a root: either role, once, is enough. */
|
|
@@ -19,6 +19,27 @@ const retain = (roots, hash, repository, requiredLocal) => {
|
|
|
19
19
|
roots.set(hash, { hash, repository: repository || previous?.repository === true,
|
|
20
20
|
requiredLocal: requiredLocal || previous?.requiredLocal === true });
|
|
21
21
|
};
|
|
22
|
+
/** Each owner names its roots by its transport head, its payload, or the
|
|
23
|
+
* cargo it declares. A former repository keeps its last package as its
|
|
24
|
+
* transport head, so any container may carry one; only a repository's own
|
|
25
|
+
* package, or a file's payload, is the content an owner can require. */
|
|
26
|
+
function owners(roots) {
|
|
27
|
+
const add = (hash, repository, requiredLocal) => {
|
|
28
|
+
if (!hash || hash.startsWith("git:"))
|
|
29
|
+
return; // a member object belongs to its repository parcel
|
|
30
|
+
if (!/^[0-9a-f]{64}$/.test(hash))
|
|
31
|
+
throw new Error("Cache owner has an invalid content head");
|
|
32
|
+
retain(roots, hash, repository, requiredLocal);
|
|
33
|
+
};
|
|
34
|
+
const record = (row, required) => {
|
|
35
|
+
if (row.status === "deleted")
|
|
36
|
+
return;
|
|
37
|
+
add(row.transportVersion, true, required && row.type === "repo.git");
|
|
38
|
+
if (PAYLOAD_TYPES.includes(row.type))
|
|
39
|
+
add(row.payloadVersion, false, required);
|
|
40
|
+
};
|
|
41
|
+
return { add, record };
|
|
42
|
+
}
|
|
22
43
|
const prepared = new WeakMap();
|
|
23
44
|
const statements = (database) => {
|
|
24
45
|
let found = prepared.get(database);
|
|
@@ -27,11 +48,15 @@ const statements = (database) => {
|
|
|
27
48
|
recovery: database.prepare(`SELECT EXISTS(SELECT 1 FROM entity_apply_intents)
|
|
28
49
|
OR EXISTS(SELECT 1 FROM workspace_add_intents)
|
|
29
50
|
OR EXISTS(SELECT 1 FROM snapshot_publications WHERE status = 'pending') AS waiting`),
|
|
30
|
-
constructs: database.prepare(
|
|
31
|
-
|
|
32
|
-
|
|
51
|
+
constructs: database.prepare(`SELECT uuid, type, status, payload_version AS payloadVersion FROM constructs
|
|
52
|
+
WHERE uuid > ? ORDER BY uuid LIMIT ${CHUNK}`),
|
|
53
|
+
pending: database.prepare(`SELECT local_sequence AS after, record_json AS recordJson FROM record_outbox
|
|
54
|
+
WHERE status = 'pending' AND local_sequence > ? ORDER BY local_sequence LIMIT ${CHUNK}`),
|
|
55
|
+
unresolved: database.prepare(`SELECT authority_id AS authority, delivery_sequence AS after, record_json AS recordJson
|
|
56
|
+
FROM record_inbox WHERE resolved_at IS NULL AND (authority_id, delivery_sequence) > (?, ?)
|
|
57
|
+
ORDER BY authority_id, delivery_sequence LIMIT ${CHUNK}`),
|
|
33
58
|
transport: database.prepare(`SELECT 1 FROM detection_notebook
|
|
34
|
-
WHERE transport_version = ? AND
|
|
59
|
+
WHERE transport_version = ? AND status <> 'deleted' LIMIT 1`),
|
|
35
60
|
payload: database.prepare(`SELECT parent_uuid AS parentUUID FROM detection_notebook
|
|
36
61
|
WHERE payload_version = ? AND status <> 'deleted'
|
|
37
62
|
AND type IN (${PAYLOAD_TYPES.map(type => `'${type}'`).join(", ")})`),
|
|
@@ -39,51 +64,58 @@ const statements = (database) => {
|
|
|
39
64
|
});
|
|
40
65
|
return found;
|
|
41
66
|
};
|
|
42
|
-
/**
|
|
43
|
-
*
|
|
44
|
-
*
|
|
45
|
-
*
|
|
67
|
+
/** The record owners: constructs, and every pending Outbox and unresolved
|
|
68
|
+
* Inbox row. Each is read once per proof, a page per turn, never again per
|
|
69
|
+
* cached chunk: every writer of a new record owner holds the cache fence, so
|
|
70
|
+
* a proof that outlives one is invalidated, and an acknowledgment or a
|
|
71
|
+
* resolution only loosens a promise already read. A pending record is an
|
|
72
|
+
* unpublished promise: it requires its result content and its declared
|
|
73
|
+
* cargo locally. Constructs and accepted records retain a cached copy without
|
|
74
|
+
* requiring one. False: the fence moved. */
|
|
75
|
+
export async function readRecordRoots(database, roots, current) {
|
|
76
|
+
const sql = statements(database), { add, record } = owners(roots);
|
|
77
|
+
return await paged(last => sql.constructs.all(last?.uuid ?? ""), row => record({ ...row, transportVersion: null }, false), current)
|
|
78
|
+
&& await paged(last => sql.pending.all(last?.after ?? 0), row => {
|
|
79
|
+
const { change } = decodeLocalEntityRecord(row.recordJson);
|
|
80
|
+
record(change.result, true);
|
|
81
|
+
for (const cargo of change.cargo)
|
|
82
|
+
add(cargo.contentHash, cargo.kind === "git", true);
|
|
83
|
+
}, current)
|
|
84
|
+
&& await paged(last => sql.unresolved.all(last?.authority ?? "", last?.after ?? 0), row => {
|
|
85
|
+
const { change } = decodeAcceptedEntityRecord(row.recordJson);
|
|
86
|
+
record(change.result, false);
|
|
87
|
+
for (const cargo of change.cargo)
|
|
88
|
+
add(cargo.contentHash, cargo.kind === "git", false);
|
|
89
|
+
}, current);
|
|
90
|
+
}
|
|
91
|
+
/** One owner family a page at a time, after the last row read, a turn before
|
|
92
|
+
* each page. False: the fence moved. */
|
|
93
|
+
async function paged(read, visit, current) {
|
|
94
|
+
for (let last;;) {
|
|
95
|
+
await awaitTurn();
|
|
96
|
+
if (!current())
|
|
97
|
+
return false;
|
|
98
|
+
const page = read(last);
|
|
99
|
+
for (const row of page)
|
|
100
|
+
visit(row);
|
|
101
|
+
if (page.length < CHUNK)
|
|
102
|
+
return true;
|
|
103
|
+
last = page[page.length - 1];
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
/** The notebook's owners of these cached objects, in one coherent read.
|
|
107
|
+
* Recovery owners whose full dependency set cannot yet be enumerated refuse
|
|
108
|
+
* pruning (null) rather than borrowing current O. */
|
|
46
109
|
export function readCacheRoots(database, cached) {
|
|
47
110
|
const sql = statements(database);
|
|
48
111
|
return database.transaction(() => {
|
|
49
112
|
if (sql.recovery.get().waiting)
|
|
50
113
|
return null;
|
|
51
|
-
const roots = new Map();
|
|
52
|
-
const add = (hash, repository, requiredLocal) => {
|
|
53
|
-
if (!hash || hash.startsWith("git:"))
|
|
54
|
-
return; // a member object belongs to its repository parcel
|
|
55
|
-
if (!/^[0-9a-f]{64}$/.test(hash))
|
|
56
|
-
throw new Error("Cache owner has an invalid content head");
|
|
57
|
-
retain(roots, hash, repository, requiredLocal);
|
|
58
|
-
};
|
|
59
|
-
const record = (row, required) => {
|
|
60
|
-
if (row.status === "deleted")
|
|
61
|
-
return;
|
|
62
|
-
if (row.type === "repo.git")
|
|
63
|
-
add(row.transportVersion, true, required);
|
|
64
|
-
else if (PAYLOAD_TYPES.includes(row.type))
|
|
65
|
-
add(row.payloadVersion, false, required);
|
|
66
|
-
};
|
|
67
|
-
for (const row of sql.constructs.iterate()) {
|
|
68
|
-
record({ ...row, transportVersion: null }, false);
|
|
69
|
-
}
|
|
70
|
-
for (const row of sql.pending.iterate()) {
|
|
71
|
-
const pending = decodeLocalEntityRecord(row.recordJson);
|
|
72
|
-
record(pending.change.result, true);
|
|
73
|
-
for (const cargo of pending.change.cargo)
|
|
74
|
-
add(cargo.contentHash, cargo.kind === "git", true);
|
|
75
|
-
}
|
|
76
|
-
for (const row of sql.unresolved.iterate()) {
|
|
77
|
-
const accepted = decodeAcceptedEntityRecord(row.recordJson);
|
|
78
|
-
record(accepted.change.result, false);
|
|
79
|
-
for (const cargo of accepted.change.cargo)
|
|
80
|
-
add(cargo.contentHash, cargo.kind === "git", false);
|
|
81
|
-
}
|
|
114
|
+
const roots = new Map(), { add } = owners(roots);
|
|
82
115
|
// A durable baseline may have arrived through cold materialization,
|
|
83
116
|
// which does not promise a second local cache copy. Keep any cached
|
|
84
|
-
// copy
|
|
85
|
-
//
|
|
86
|
-
// repository, whose parcel carries its members.
|
|
117
|
+
// copy. A transport head is its own container's; a payload counts only
|
|
118
|
+
// outside every repository, whose parcel carries its members.
|
|
87
119
|
const territorial = repositoryTerritory(sql.parent);
|
|
88
120
|
for (const hash of cached) {
|
|
89
121
|
if (sql.transport.get(hash)) {
|
|
@@ -164,9 +196,10 @@ export async function retainCacheClosure(roots, inspect, current = () => true) {
|
|
|
164
196
|
export async function unownedCache(database, cacheDir, current) {
|
|
165
197
|
const cached = [...await listCachedContent(cacheDir)];
|
|
166
198
|
const roots = new Map();
|
|
199
|
+
if (!await readRecordRoots(database, roots, current))
|
|
200
|
+
return null;
|
|
167
201
|
for (let start = 0; start === 0 || start < cached.length; start += CHUNK) {
|
|
168
|
-
|
|
169
|
-
await awaitTurn();
|
|
202
|
+
await awaitTurn();
|
|
170
203
|
if (!current())
|
|
171
204
|
return null;
|
|
172
205
|
const found = readCacheRoots(database, cached.slice(start, start + CHUNK));
|
|
@@ -175,8 +208,11 @@ export async function unownedCache(database, cacheDir, current) {
|
|
|
175
208
|
for (const root of found)
|
|
176
209
|
retain(roots, root.hash, root.repository, root.requiredLocal);
|
|
177
210
|
}
|
|
211
|
+
// A required root was sealed before its row existed, and the fence held
|
|
212
|
+
// since the listing, so the listing answers whether it is cached.
|
|
213
|
+
const listed = new Set(cached);
|
|
178
214
|
for (const root of roots.values())
|
|
179
|
-
if (root.requiredLocal && !
|
|
215
|
+
if (root.requiredLocal && !listed.has(root.hash)) {
|
|
180
216
|
throw new Error(`Required local content ${root.hash} is absent; cache cleanup refused`);
|
|
181
217
|
}
|
|
182
218
|
const retained = await retainCacheClosure([...roots.values()], async (hash, required) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"content-cache-retention.js","sourceRoot":"","sources":["../src/content-cache-retention.ts"],"names":[],"mappings":"AAAA;;;;;8EAK8E;AAC9E,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,OAAO,EAAE,0BAA0B,EAAE,uBAAuB,EAA2C,MAAM,cAAc,CAAC;AAC5H,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC7E,OAAO,EAAE,8BAA8B,EAAE,MAAM,0BAA0B,CAAC;AAC1E,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAQvC
|
|
1
|
+
{"version":3,"file":"content-cache-retention.js","sourceRoot":"","sources":["../src/content-cache-retention.ts"],"names":[],"mappings":"AAAA;;;;;8EAK8E;AAC9E,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,OAAO,EAAE,0BAA0B,EAAE,uBAAuB,EAA2C,MAAM,cAAc,CAAC;AAC5H,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC7E,OAAO,EAAE,8BAA8B,EAAE,MAAM,0BAA0B,CAAC;AAC1E,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAQvC,+EAA+E;AAC/E,MAAM,KAAK,GAAG,GAAG,CAAC;AAClB,MAAM,aAAa,GAAG,CAAC,WAAW,EAAE,aAAa,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;AAEjG,+DAA+D;AAC/D,MAAM,MAAM,GAAG,CAAC,KAA6B,EAAE,IAAY,EAAE,UAAmB,EAAE,aAAsB,EAAQ,EAAE;IAChH,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACjC,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,UAAU,IAAI,QAAQ,EAAE,UAAU,KAAK,IAAI;QAC7E,aAAa,EAAE,aAAa,IAAI,QAAQ,EAAE,aAAa,KAAK,IAAI,EAAE,CAAC,CAAC;AACxE,CAAC,CAAC;AAIF;;;wEAGwE;AACxE,SAAS,MAAM,CAAC,KAA6B;IAC3C,MAAM,GAAG,GAAG,CAAC,IAAmB,EAAE,UAAmB,EAAE,aAAsB,EAAQ,EAAE;QACrF,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;YAAE,OAAO,CAAC,mDAAmD;QACjG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;QAC7F,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,aAAa,CAAC,CAAC;IACjD,CAAC,CAAC;IACF,MAAM,MAAM,GAAG,CAAC,GAAa,EAAE,QAAiB,EAAQ,EAAE;QACxD,IAAI,GAAG,CAAC,MAAM,KAAK,SAAS;YAAE,OAAO;QACrC,GAAG,CAAC,GAAG,CAAC,gBAAgB,EAAE,IAAI,EAAE,QAAQ,IAAI,GAAG,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC;QACrE,IAAI,aAAa,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC;YAAE,GAAG,CAAC,GAAG,CAAC,cAAc,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;IACjF,CAAC,CAAC;IACF,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC;AACzB,CAAC;AAYD,MAAM,QAAQ,GAAG,IAAI,OAAO,EAAiC,CAAC;AAC9D,MAAM,UAAU,GAAG,CAAC,QAA2B,EAAc,EAAE;IAC7D,IAAI,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACnC,IAAI,CAAC,KAAK;QAAE,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,GAAG;YACzC,QAAQ,EAAE,QAAQ,CAAC,OAAO,CAAC;;yFAE0D,CAAC;YACtF,UAAU,EAAE,QAAQ,CAAC,OAAO,CAAC;2CACU,KAAK,EAAE,CAAC;YAC/C,OAAO,EAAE,QAAQ,CAAC,OAAO,CAAC;sFACwD,KAAK,EAAE,CAAC;YAC1F,UAAU,EAAE,QAAQ,CAAC,OAAO,CAAC;;uDAEsB,KAAK,EAAE,CAAC;YAC3D,SAAS,EAAE,QAAQ,CAAC,OAAO,CAAC;kEACkC,CAAC;YAC/D,OAAO,EAAE,QAAQ,CAAC,OAAO,CAAC;;uBAEP,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;YACxE,MAAM,EAAE,QAAQ,CAAC,OAAO,CAAC,+EAA+E,CAAC;SAC1G,CAAC,CAAC;IACH,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAMF;;;;;;;4CAO4C;AAC5C,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,QAA2B,EAAE,KAA6B,EAAE,OAAsB;IAElF,MAAM,GAAG,GAAG,UAAU,CAAC,QAAQ,CAAC,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAClE,OAAO,MAAM,KAAK,CAAe,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,IAAI,EAAE,CAAC,EAC3E,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,GAAG,GAAG,EAAE,gBAAgB,EAAE,IAAI,EAAE,EAAE,KAAK,CAAC,EAAE,OAAO,CAAC;WAC/D,MAAM,KAAK,CAAa,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,IAAI,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE;YAC1E,MAAM,EAAE,MAAM,EAAE,GAAG,uBAAuB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YAC3D,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;YAC5B,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,KAAK;gBAAE,GAAG,CAAC,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,IAAI,KAAK,KAAK,EAAE,IAAI,CAAC,CAAC;QACvF,CAAC,EAAE,OAAO,CAAC;WACR,MAAM,KAAK,CAAW,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,EAAE,SAAS,IAAI,EAAE,EAAE,IAAI,EAAE,KAAK,IAAI,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE;YAClG,MAAM,EAAE,MAAM,EAAE,GAAG,0BAA0B,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YAC9D,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;YAC7B,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,KAAK;gBAAE,GAAG,CAAC,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,IAAI,KAAK,KAAK,EAAE,KAAK,CAAC,CAAC;QACxF,CAAC,EAAE,OAAO,CAAC,CAAC;AAChB,CAAC;AAED;wCACwC;AACxC,KAAK,UAAU,KAAK,CAClB,IAA0C,EAAE,KAAyB,EAAE,OAAsB;IAE7F,KAAK,IAAI,IAAqB,IAAK,CAAC;QAClC,MAAM,SAAS,EAAE,CAAC;QAClB,IAAI,CAAC,OAAO,EAAE;YAAE,OAAO,KAAK,CAAC;QAC7B,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAU,CAAC;QACjC,KAAK,MAAM,GAAG,IAAI,IAAI;YAAE,KAAK,CAAC,GAAG,CAAC,CAAC;QACnC,IAAI,IAAI,CAAC,MAAM,GAAG,KAAK;YAAE,OAAO,IAAI,CAAC;QACrC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAC/B,CAAC;AACH,CAAC;AAED;;qDAEqD;AACrD,MAAM,UAAU,cAAc,CAAC,QAA2B,EAAE,MAAyB;IACnF,MAAM,GAAG,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;IACjC,OAAO,QAAQ,CAAC,WAAW,CAAC,GAAG,EAAE;QAC/B,IAAK,GAAG,CAAC,QAAQ,CAAC,GAAG,EAA0B,CAAC,OAAO;YAAE,OAAO,IAAI,CAAC;QACrE,MAAM,KAAK,GAAG,IAAI,GAAG,EAAqB,EAAE,EAAE,GAAG,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;QACpE,oEAAoE;QACpE,oEAAoE;QACpE,uEAAuE;QACvE,8DAA8D;QAC9D,MAAM,WAAW,GAAG,mBAAmB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACpD,KAAK,MAAM,IAAI,IAAI,MAAM,EAAE,CAAC;YAC1B,IAAI,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;gBAAC,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;gBAAC,SAAS;YAAC,CAAC;YAClE,KAAK,MAAM,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC5C,IAAI,CAAC,WAAW,CAAE,GAAqC,CAAC,UAAU,CAAC,EAAE,CAAC;oBAAC,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;oBAAC,MAAM;gBAAC,CAAC;YAC1G,CAAC;QACH,CAAC;QACD,OAAO,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;IAC7B,CAAC,CAAC,EAAE,CAAC;AACP,CAAC;AAED;;yDAEyD;AACzD,SAAS,mBAAmB,CAAC,MAA0B;IACrD,MAAM,KAAK,GAAG,IAAI,GAAG,EAAmB,CAAC;IACzC,OAAO,CAAC,KAAK,EAAE,EAAE;QACf,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;QAC/B,IAAI,MAAM,GAAG,KAAK,CAAC;QACnB,KAAK,IAAI,IAAI,GAAG,KAAK,EAAE,IAAI,KAAK,IAAI,GAAG,CAAC;YACtC,MAAM,UAAU,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACnC,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;gBAAC,MAAM,GAAG,UAAU,CAAC;gBAAC,MAAM;YAAC,CAAC;YAC7D,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC;gBAAE,MAAM,IAAI,KAAK,CAAC,8CAA8C,IAAI,EAAE,CAAC,CAAC;YAC1F,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,CAAgE,CAAC;YAC7F,IAAI,CAAC,IAAI;gBAAE,MAAM;YACjB,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACf,IAAI,IAAI,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;gBAAC,MAAM,GAAG,IAAI,CAAC;gBAAC,MAAM;YAAC,CAAC;YACvD,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC;QACzB,CAAC;QACD,KAAK,MAAM,IAAI,IAAI,IAAI;YAAE,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACjD,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;AACJ,CAAC;AAED;0EAC0E;AAC1E,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,KAA2B,EAC3B,OAAqG,EACrG,UAAyB,GAAG,EAAE,CAAC,IAAI;IAEnC,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IACvD,MAAM,SAAS,GAAG,IAAI,GAAG,EAAU,CAAC;IACpC,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,aAAa,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC;QAC3H,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;QAC/B,IAAI,IAAI,GAAkB,IAAI,CAAC,IAAI,CAAC;QACpC,OAAO,IAAI,KAAK,IAAI,EAAE,CAAC;YACrB,IAAI,CAAC,OAAO,EAAE;gBAAE,OAAO,IAAI,CAAC;YAC5B,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC;gBAAE,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;YACxF,IAAI,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC;gBAAE,MAAM;YAC/B,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACnC,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;YACzD,IAAI,CAAC,QAAQ;gBAAE,MAAM,CAAC,gEAAgE;YACtF,IAAI,GAAG,QAAQ,CAAC,MAAM,CAAC;QACzB,CAAC;QACD,KAAK,MAAM,OAAO,IAAI,IAAI;YAAE,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACrD,CAAC;IACD,OAAO,OAAO,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC;AACrC,CAAC;AAED;;6EAE6E;AAC7E,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,QAA2B,EAAE,QAAgB,EAAE,OAAsB;IAErE,MAAM,MAAM,GAAG,CAAC,GAAG,MAAM,iBAAiB,CAAC,QAAQ,CAAC,CAAC,CAAC;IACtD,MAAM,KAAK,GAAG,IAAI,GAAG,EAAqB,CAAC;IAC3C,IAAI,CAAC,MAAM,eAAe,CAAC,QAAQ,EAAE,KAAK,EAAE,OAAO,CAAC;QAAE,OAAO,IAAI,CAAC;IAClE,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,KAAK,CAAC,IAAI,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,IAAI,KAAK,EAAE,CAAC;QACzE,MAAM,SAAS,EAAE,CAAC;QAClB,IAAI,CAAC,OAAO,EAAE;YAAE,OAAO,IAAI,CAAC;QAC5B,MAAM,KAAK,GAAG,cAAc,CAAC,QAAQ,EAAE,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC;QAC3E,IAAI,KAAK,KAAK,IAAI;YAAE,OAAO,IAAI,CAAC;QAChC,KAAK,MAAM,IAAI,IAAI,KAAK;YAAE,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;IAC1F,CAAC;IACD,wEAAwE;IACxE,kEAAkE;IAClE,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC;IAC/B,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,MAAM,EAAE;QAAE,IAAI,IAAI,CAAC,aAAa,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YACpF,MAAM,IAAI,KAAK,CAAC,0BAA0B,IAAI,CAAC,IAAI,mCAAmC,CAAC,CAAC;QAC1F,CAAC;IACD,MAAM,QAAQ,GAAG,MAAM,kBAAkB,CAAC,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;QACtF,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,EAAE,GAAG,IAAI,MAAM,CAAC,CAAC;QAC3C,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YACtB,IAAI,QAAQ;gBAAE,MAAM,IAAI,KAAK,CAAC,+BAA+B,IAAI,mCAAmC,CAAC,CAAC;YACtG,OAAO,IAAI,CAAC;QACd,CAAC;QACD,IAAI,MAAM,eAAe,CAAC,IAAI,CAAC,KAAK,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;QACpH,OAAO,EAAE,MAAM,EAAE,CAAC,MAAM,8BAA8B,CAAC,IAAI,CAAC,CAAC,CAAC,sBAAsB,EAAE,CAAC;IACzF,CAAC,EAAE,OAAO,CAAC,CAAC;IACZ,OAAO,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;AACrH,CAAC"}
|
|
Binary file
|
|
@@ -125,6 +125,13 @@ export interface UserGroundHostOptions {
|
|
|
125
125
|
* the type's own lane reports an unselected product and no other type is
|
|
126
126
|
* affected. */
|
|
127
127
|
readonly constructProduct?: EntityApplyHostOptions["constructProduct"];
|
|
128
|
+
/** How much Files work this runtime still holds: records the cloud has not
|
|
129
|
+
* accepted, and disk changes not yet recorded. Each reaches zero only when
|
|
130
|
+
* nothing of its kind could be lost if the disk were destroyed now. */
|
|
131
|
+
readonly activity?: {
|
|
132
|
+
readonly unsent: (count: number) => void;
|
|
133
|
+
readonly unsettled: (count: number) => void;
|
|
134
|
+
};
|
|
128
135
|
/** A failed background pass (a Send or Receive attempt, an Apply lane, a
|
|
129
136
|
* resumed Add intent, or granted-channel following) remains durable and
|
|
130
137
|
* retries after this report; it never blocks readiness. */
|
|
@@ -284,6 +291,10 @@ export declare class UserGroundHost {
|
|
|
284
291
|
databasePath(): string;
|
|
285
292
|
rows(identity: UserGroundIdentity): GroundRow[];
|
|
286
293
|
watchHealth(): WatchHealth;
|
|
294
|
+
/** Resolves once what the OS has handed Watch has reached it, already
|
|
295
|
+
* counted in `activity.unsettled`. On Linux that is every change made
|
|
296
|
+
* before the call. */
|
|
297
|
+
flushWatch(): Promise<void>;
|
|
287
298
|
/** Read-only reasons owned by the running Apply coordinator. */
|
|
288
299
|
applyWaiting(): ReturnType<EntityApplyRail["waiting"]>;
|
|
289
300
|
private wakeObservedApply;
|
package/dist/user-ground-host.js
CHANGED
|
@@ -341,6 +341,7 @@ export class UserGroundHost {
|
|
|
341
341
|
} : {}),
|
|
342
342
|
},
|
|
343
343
|
}) } : {}),
|
|
344
|
+
...(options.activity ? { onUnsettled: options.activity.unsettled } : {}),
|
|
344
345
|
onHealth: (health) => {
|
|
345
346
|
options.onWatchHealth?.(health);
|
|
346
347
|
this.stage({
|
|
@@ -515,6 +516,12 @@ export class UserGroundHost {
|
|
|
515
516
|
watchHealth() {
|
|
516
517
|
return this.watchHost.health();
|
|
517
518
|
}
|
|
519
|
+
/** Resolves once what the OS has handed Watch has reached it, already
|
|
520
|
+
* counted in `activity.unsettled`. On Linux that is every change made
|
|
521
|
+
* before the call. */
|
|
522
|
+
flushWatch() {
|
|
523
|
+
return this.watchHost.flush();
|
|
524
|
+
}
|
|
518
525
|
/** Read-only reasons owned by the running Apply coordinator. */
|
|
519
526
|
applyWaiting() {
|
|
520
527
|
return this.applyRail?.waiting() ?? [];
|