@mieweb/pulsevault 0.4.1 → 0.5.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/CHANGELOG.md +102 -1
- package/OPERATIONS.md +24 -10
- package/PROTOCOL.md +38 -1
- package/README.md +168 -29
- package/assets/README.md +33 -0
- package/assets/badge-app-store.svg +46 -0
- package/assets/badge-google-play.png +0 -0
- package/assets/pulse-logo-mono.svg +10 -0
- package/assets/pulse-logo.svg +14 -0
- package/dist/app.d.ts +24 -0
- package/dist/app.d.ts.map +1 -1
- package/dist/app.js +20 -2
- package/dist/app.js.map +1 -1
- package/dist/augment.d.ts +3 -0
- package/dist/augment.d.ts.map +1 -1
- package/dist/augment.js.map +1 -1
- package/dist/core.d.ts +89 -4
- package/dist/core.d.ts.map +1 -1
- package/dist/core.js +301 -40
- package/dist/core.js.map +1 -1
- package/dist/lib/authorize.d.ts +28 -6
- package/dist/lib/authorize.d.ts.map +1 -1
- package/dist/lib/capability-token.d.ts +26 -0
- package/dist/lib/capability-token.d.ts.map +1 -1
- package/dist/lib/capability-token.js +73 -5
- package/dist/lib/capability-token.js.map +1 -1
- package/dist/lib/completion.d.ts +135 -0
- package/dist/lib/completion.d.ts.map +1 -0
- package/dist/lib/completion.js +288 -0
- package/dist/lib/completion.js.map +1 -0
- package/dist/lib/options.d.ts.map +1 -1
- package/dist/lib/options.js +2 -0
- package/dist/lib/options.js.map +1 -1
- package/dist/lib/protocol-version.gen.js +1 -1
- package/dist/lib/pulsevaultTus.d.ts +28 -26
- package/dist/lib/pulsevaultTus.d.ts.map +1 -1
- package/dist/lib/pulsevaultTus.js +114 -31
- package/dist/lib/pulsevaultTus.js.map +1 -1
- package/dist/routes/pulsevault.d.ts +12 -1
- package/dist/routes/pulsevault.d.ts.map +1 -1
- package/dist/routes/pulsevault.js +92 -1
- package/dist/routes/pulsevault.js.map +1 -1
- package/dist/storage/local.d.ts +7 -1
- package/dist/storage/local.d.ts.map +1 -1
- package/dist/storage/local.js +173 -8
- package/dist/storage/local.js.map +1 -1
- package/dist/storage/s3.d.ts +7 -1
- package/dist/storage/s3.d.ts.map +1 -1
- package/dist/storage/s3.js +236 -14
- package/dist/storage/s3.js.map +1 -1
- package/dist/storage/types.d.ts +73 -0
- package/dist/storage/types.d.ts.map +1 -1
- package/package.json +6 -4
- package/protocol/openapi.json +247 -1
- package/protocol/schemas/artifact-status.schema.json +49 -0
- package/protocol/schemas/capability-token.schema.json +3 -0
package/dist/storage/s3.js
CHANGED
|
@@ -4,6 +4,11 @@ import { isUuid } from '../lib/uuid.js';
|
|
|
4
4
|
const SIDECAR_VERSION = 1;
|
|
5
5
|
/** Key prefix inside the bucket that holds the per-upload sidecar objects. */
|
|
6
6
|
const PULSEVAULT_META_PREFIX = '.pulsevault';
|
|
7
|
+
/**
|
|
8
|
+
* Relation index: `.pulsevault/related/<anchorId>/<artifactId>` is an empty object for every
|
|
9
|
+
* artifact that declared `relatedTo` the anchor, so a pulse's files are one prefix listing away.
|
|
10
|
+
*/
|
|
11
|
+
const RELATED_PREFIX = `${PULSEVAULT_META_PREFIX}/related`;
|
|
7
12
|
/** Default presigned playback URL lifetime (15 minutes). */
|
|
8
13
|
const DEFAULT_PRESIGN_TTL_SECONDS = 900;
|
|
9
14
|
/** Default cap on the in-memory metadata cache before evicting the oldest entry. */
|
|
@@ -17,6 +22,15 @@ function extToContentType(ext) {
|
|
|
17
22
|
return 'application/zip';
|
|
18
23
|
case '.vtt':
|
|
19
24
|
return 'text/vtt';
|
|
25
|
+
case '.mov':
|
|
26
|
+
return 'video/quicktime';
|
|
27
|
+
case '.m4v':
|
|
28
|
+
return 'video/x-m4v';
|
|
29
|
+
case '.srt':
|
|
30
|
+
return 'application/x-subrip';
|
|
31
|
+
case '.pulse':
|
|
32
|
+
// The beat manifest (PROTOCOL.md §8) is JSON.
|
|
33
|
+
return 'application/json';
|
|
20
34
|
case '.jpg':
|
|
21
35
|
case '.jpeg':
|
|
22
36
|
return 'image/jpeg';
|
|
@@ -70,7 +84,7 @@ export async function createS3Storage(opts) {
|
|
|
70
84
|
' npm install @aws-sdk/client-s3 @aws-sdk/s3-request-presigner @tus/s3-store\n' +
|
|
71
85
|
`(original error: ${err instanceof Error ? err.message : String(err)})`);
|
|
72
86
|
}
|
|
73
|
-
const { S3Client, GetObjectCommand, PutObjectCommand, DeleteObjectCommand, ListObjectsV2Command, } = s3;
|
|
87
|
+
const { S3Client, GetObjectCommand, PutObjectCommand, DeleteObjectCommand, HeadObjectCommand, ListObjectsV2Command, ListPartsCommand, } = s3;
|
|
74
88
|
const { getSignedUrl } = presigner;
|
|
75
89
|
const { S3Store } = s3store;
|
|
76
90
|
const bucket = opts.bucket;
|
|
@@ -114,25 +128,36 @@ export async function createS3Storage(opts) {
|
|
|
114
128
|
const sidecarKey = (artifactId) => `${PULSEVAULT_META_PREFIX}/${artifactId}.json`;
|
|
115
129
|
/** Object key for the artifact bytes — also the TUS file id / multipart key. */
|
|
116
130
|
const artifactKey = (artifactId, kind, ext) => `${kind}/${artifactId}${ext}`;
|
|
117
|
-
const writeSidecar = async (artifactId, sidecar
|
|
131
|
+
const writeSidecar = async (artifactId, sidecar,
|
|
132
|
+
/** Only replace the version with this ETag (a read-modify-write that must not lose a concurrent one). */
|
|
133
|
+
ifMatch) => {
|
|
118
134
|
await client.send(new PutObjectCommand({
|
|
119
135
|
Bucket: bucket,
|
|
120
136
|
Key: sidecarKey(artifactId),
|
|
121
137
|
Body: JSON.stringify(sidecar),
|
|
122
138
|
ContentType: 'application/json',
|
|
139
|
+
...(ifMatch ? { IfMatch: ifMatch } : {}),
|
|
123
140
|
}));
|
|
124
141
|
};
|
|
125
|
-
|
|
142
|
+
/** The sidecar and the ETag of the version read, for a conditional rewrite. */
|
|
143
|
+
const readSidecarVersioned = async (artifactId) => {
|
|
126
144
|
let raw;
|
|
145
|
+
let etag;
|
|
127
146
|
try {
|
|
128
147
|
const res = await client.send(new GetObjectCommand({ Bucket: bucket, Key: sidecarKey(artifactId) }));
|
|
129
148
|
raw = (await bodyToBuffer(res.Body)).toString('utf8');
|
|
149
|
+
etag = res.ETag;
|
|
130
150
|
}
|
|
131
151
|
catch (err) {
|
|
132
152
|
if (isNotFound(err))
|
|
133
153
|
return null;
|
|
134
154
|
throw err;
|
|
135
155
|
}
|
|
156
|
+
const sidecar = parseSidecar(raw);
|
|
157
|
+
return sidecar ? { sidecar, ...(etag ? { etag } : {}) } : null;
|
|
158
|
+
};
|
|
159
|
+
const readSidecar = async (artifactId) => (await readSidecarVersioned(artifactId))?.sidecar ?? null;
|
|
160
|
+
const parseSidecar = (raw) => {
|
|
136
161
|
try {
|
|
137
162
|
const parsed = JSON.parse(raw);
|
|
138
163
|
if (typeof parsed.ext !== 'string')
|
|
@@ -151,6 +176,13 @@ export async function createS3Storage(opts) {
|
|
|
151
176
|
checksum: typeof parsed.checksum === 'string' ? parsed.checksum : undefined,
|
|
152
177
|
name: typeof parsed.name === 'string' ? parsed.name : undefined,
|
|
153
178
|
appVersion: typeof parsed.appVersion === 'string' ? parsed.appVersion : undefined,
|
|
179
|
+
...(parsed.context !== undefined ? { context: parsed.context } : {}),
|
|
180
|
+
// A sidecar from before the flag existed: finished means nothing to replay; still
|
|
181
|
+
// uploading means its completion hasn't happened yet.
|
|
182
|
+
acknowledged: parsed.acknowledged ?? status === 'ready',
|
|
183
|
+
converted: parsed.converted ?? status === 'ready',
|
|
184
|
+
...(parsed.outcome !== undefined ? { outcome: parsed.outcome } : {}),
|
|
185
|
+
...(typeof parsed.readyAt === 'number' ? { readyAt: parsed.readyAt } : {}),
|
|
154
186
|
};
|
|
155
187
|
}
|
|
156
188
|
catch {
|
|
@@ -158,6 +190,86 @@ export async function createS3Storage(opts) {
|
|
|
158
190
|
return null;
|
|
159
191
|
}
|
|
160
192
|
};
|
|
193
|
+
/** `LastModified` of one object, 0 when absent or unknown. */
|
|
194
|
+
const objectModifiedAt = async (key) => {
|
|
195
|
+
try {
|
|
196
|
+
const head = await client.send(new HeadObjectCommand({ Bucket: bucket, Key: key }));
|
|
197
|
+
return head.LastModified?.getTime() ?? 0;
|
|
198
|
+
}
|
|
199
|
+
catch (err) {
|
|
200
|
+
if (isNotFound(err))
|
|
201
|
+
return 0;
|
|
202
|
+
throw err;
|
|
203
|
+
}
|
|
204
|
+
};
|
|
205
|
+
/**
|
|
206
|
+
* When an unfinished upload last received bytes, as far as the bucket can tell: the newest of
|
|
207
|
+
* its multipart parts (listed through the upload id @tus/s3-store keeps on its `.info` object)
|
|
208
|
+
* and the incomplete part it parks between PATCHes. 0 when nothing has arrived yet. A PATCH
|
|
209
|
+
* leaves a trace here as soon as it lands, unlike the sidecar, which is written at reserve.
|
|
210
|
+
*/
|
|
211
|
+
const lastUploadActivity = async (key) => {
|
|
212
|
+
let latest = await objectModifiedAt(`${key}.part`);
|
|
213
|
+
try {
|
|
214
|
+
const info = await client.send(new HeadObjectCommand({ Bucket: bucket, Key: `${key}.info` }));
|
|
215
|
+
latest = Math.max(latest, info.LastModified?.getTime() ?? 0);
|
|
216
|
+
const uploadId = info.Metadata?.['upload-id'];
|
|
217
|
+
if (uploadId) {
|
|
218
|
+
// Pages of at most 1,000 parts: a long upload's newest parts are on the last page.
|
|
219
|
+
let marker;
|
|
220
|
+
do {
|
|
221
|
+
const page = await client.send(new ListPartsCommand({
|
|
222
|
+
Bucket: bucket,
|
|
223
|
+
Key: key,
|
|
224
|
+
UploadId: uploadId,
|
|
225
|
+
...(marker ? { PartNumberMarker: marker } : {}),
|
|
226
|
+
}));
|
|
227
|
+
for (const part of page.Parts ?? []) {
|
|
228
|
+
latest = Math.max(latest, part.LastModified?.getTime() ?? 0);
|
|
229
|
+
}
|
|
230
|
+
marker = page.IsTruncated ? page.NextPartNumberMarker : undefined;
|
|
231
|
+
} while (marker);
|
|
232
|
+
}
|
|
233
|
+
}
|
|
234
|
+
catch (err) {
|
|
235
|
+
// No `.info` yet, or the multipart upload is gone: nothing more to learn. Anything else
|
|
236
|
+
// (permissions, a transient failure) must not read as "idle".
|
|
237
|
+
if (!isNotFound(err) && !isNoSuchUpload(err))
|
|
238
|
+
throw err;
|
|
239
|
+
}
|
|
240
|
+
return latest;
|
|
241
|
+
};
|
|
242
|
+
/** Relation index key for one related artifact under its anchor. */
|
|
243
|
+
const relatedKey = (anchorId, artifactId) => `${RELATED_PREFIX}/${anchorId}/${artifactId}`;
|
|
244
|
+
/** When the sidecar was last written — when the upload started, or when it finished. */
|
|
245
|
+
const sidecarModifiedAt = async (artifactId) => {
|
|
246
|
+
try {
|
|
247
|
+
const head = await client.send(new HeadObjectCommand({ Bucket: bucket, Key: sidecarKey(artifactId) }));
|
|
248
|
+
return head.LastModified?.getTime() ?? 0;
|
|
249
|
+
}
|
|
250
|
+
catch (err) {
|
|
251
|
+
if (isNotFound(err))
|
|
252
|
+
return 0;
|
|
253
|
+
throw err;
|
|
254
|
+
}
|
|
255
|
+
};
|
|
256
|
+
const sidecarToMeta = (artifactId, sidecar, updatedAt) => ({
|
|
257
|
+
artifactId,
|
|
258
|
+
kind: sidecar.kind ?? 'video',
|
|
259
|
+
ext: sidecar.ext,
|
|
260
|
+
filename: sidecar.filename,
|
|
261
|
+
...(sidecar.relatedTo ? { relatedTo: sidecar.relatedTo } : {}),
|
|
262
|
+
...(sidecar.checksum ? { checksum: sidecar.checksum } : {}),
|
|
263
|
+
...(sidecar.name ? { name: sidecar.name } : {}),
|
|
264
|
+
...(sidecar.appVersion ? { appVersion: sidecar.appVersion } : {}),
|
|
265
|
+
...(sidecar.context !== undefined ? { context: sidecar.context } : {}),
|
|
266
|
+
ready: sidecar.status === 'ready',
|
|
267
|
+
acknowledged: sidecar.acknowledged !== false,
|
|
268
|
+
converted: sidecar.converted !== false,
|
|
269
|
+
...(sidecar.outcome !== undefined ? { outcome: sidecar.outcome } : {}),
|
|
270
|
+
updatedAt,
|
|
271
|
+
...(sidecar.readyAt !== undefined ? { readyAt: sidecar.readyAt } : {}),
|
|
272
|
+
});
|
|
161
273
|
const loadMeta = async (artifactId) => {
|
|
162
274
|
const cached = metaCache.get(artifactId);
|
|
163
275
|
if (cached)
|
|
@@ -169,7 +281,7 @@ export async function createS3Storage(opts) {
|
|
|
169
281
|
cacheSet(artifactId, meta);
|
|
170
282
|
return meta;
|
|
171
283
|
};
|
|
172
|
-
const reserveUpload = async ({ artifactId, filename, ext, kind, relatedTo, checksum, name, appVersion, }) => {
|
|
284
|
+
const reserveUpload = async ({ artifactId, filename, ext, kind, relatedTo, checksum, name, appVersion, context, }) => {
|
|
173
285
|
const sidecar = {
|
|
174
286
|
version: SIDECAR_VERSION,
|
|
175
287
|
ext,
|
|
@@ -180,6 +292,9 @@ export async function createS3Storage(opts) {
|
|
|
180
292
|
checksum,
|
|
181
293
|
name,
|
|
182
294
|
appVersion,
|
|
295
|
+
...(context !== undefined ? { context } : {}),
|
|
296
|
+
acknowledged: false,
|
|
297
|
+
converted: false,
|
|
183
298
|
};
|
|
184
299
|
// Fast-path rejection for the common case. Not atomic by itself (two concurrent
|
|
185
300
|
// requests can both observe no existing meta before either writes) — the conditional
|
|
@@ -230,6 +345,11 @@ export async function createS3Storage(opts) {
|
|
|
230
345
|
}
|
|
231
346
|
await writeSidecar(artifactId, sidecar);
|
|
232
347
|
}
|
|
348
|
+
if (relatedTo) {
|
|
349
|
+
// The relation index entry, written after the sidecar so a failure between the two
|
|
350
|
+
// leaves an unlisted artifact, never an entry without one.
|
|
351
|
+
await client.send(new PutObjectCommand({ Bucket: bucket, Key: relatedKey(relatedTo, artifactId), Body: '' }));
|
|
352
|
+
}
|
|
233
353
|
cacheSet(artifactId, { ext, ready: false, kind, relatedTo, checksum, name });
|
|
234
354
|
// @tus/s3-store uses this as the object key for the multipart upload, so
|
|
235
355
|
// the finished object lands at `<kind>/<artifactId><ext>`.
|
|
@@ -251,19 +371,44 @@ export async function createS3Storage(opts) {
|
|
|
251
371
|
}), { expiresIn: presignTtl });
|
|
252
372
|
return { kind: 'redirect', url, statusCode: 302 };
|
|
253
373
|
};
|
|
374
|
+
/**
|
|
375
|
+
* A read-modify-write of the sidecar that must not lose a concurrent one (an instance
|
|
376
|
+
* acknowledging a completion while another records its outcome, or finishes the upload): the
|
|
377
|
+
* rewrite is conditional on the ETag that was read, and retried from a fresh read when the
|
|
378
|
+
* object changed meanwhile. On a backend that doesn't support `IfMatch`, the write is
|
|
379
|
+
* unconditional — the same degraded mode as reserve. Resolves `null` for an unknown id.
|
|
380
|
+
*/
|
|
381
|
+
const rewriteSidecar = async (artifactId, mutate) => {
|
|
382
|
+
for (let attempt = 0;; attempt++) {
|
|
383
|
+
const current = await readSidecarVersioned(artifactId);
|
|
384
|
+
if (!current)
|
|
385
|
+
return null;
|
|
386
|
+
const next = mutate(current.sidecar);
|
|
387
|
+
if (next === null)
|
|
388
|
+
return current.sidecar; // nothing to change
|
|
389
|
+
try {
|
|
390
|
+
await writeSidecar(artifactId, next, current.etag);
|
|
391
|
+
}
|
|
392
|
+
catch (err) {
|
|
393
|
+
if (isPreconditionFailed(err) && attempt < 5)
|
|
394
|
+
continue; // changed under us: re-read, retry
|
|
395
|
+
if (!isConditionalWriteUnsupported(err))
|
|
396
|
+
throw err;
|
|
397
|
+
warnAboutConditionalWriteFallbackOnce();
|
|
398
|
+
await writeSidecar(artifactId, next);
|
|
399
|
+
}
|
|
400
|
+
cacheSet(artifactId, sidecarToCachedMeta(next, next.status === 'ready'));
|
|
401
|
+
return next;
|
|
402
|
+
}
|
|
403
|
+
};
|
|
254
404
|
const markReady = async (artifactId) => {
|
|
255
|
-
const
|
|
256
|
-
|
|
405
|
+
const result = await rewriteSidecar(artifactId, (sidecar) =>
|
|
406
|
+
// Idempotent: already ready leaves the sidecar alone.
|
|
407
|
+
sidecar.status === 'ready' ? null : { ...sidecar, status: 'ready', readyAt: Date.now() });
|
|
408
|
+
if (!result) {
|
|
257
409
|
throw new Error(`markReady: no sidecar for artifactId ${artifactId} (was reserveUpload called?)`);
|
|
258
410
|
}
|
|
259
|
-
|
|
260
|
-
if (sidecar.status === 'ready') {
|
|
261
|
-
// Idempotent: already ready, just keep the cache consistent.
|
|
262
|
-
cacheSet(artifactId, next);
|
|
263
|
-
return;
|
|
264
|
-
}
|
|
265
|
-
await writeSidecar(artifactId, { ...sidecar, status: 'ready' });
|
|
266
|
-
cacheSet(artifactId, next);
|
|
411
|
+
cacheSet(artifactId, sidecarToCachedMeta(result, true));
|
|
267
412
|
};
|
|
268
413
|
const remove = async (artifactId) => {
|
|
269
414
|
const meta = await loadMeta(artifactId);
|
|
@@ -290,6 +435,11 @@ export async function createS3Storage(opts) {
|
|
|
290
435
|
client.send(new DeleteObjectCommand({ Bucket: bucket, Key: `${key}.info` })),
|
|
291
436
|
client.send(new DeleteObjectCommand({ Bucket: bucket, Key: `${key}.part` })),
|
|
292
437
|
client.send(new DeleteObjectCommand({ Bucket: bucket, Key: sidecarKey(artifactId) })),
|
|
438
|
+
...(meta.relatedTo
|
|
439
|
+
? [
|
|
440
|
+
client.send(new DeleteObjectCommand({ Bucket: bucket, Key: relatedKey(meta.relatedTo, artifactId) })),
|
|
441
|
+
]
|
|
442
|
+
: []),
|
|
293
443
|
]);
|
|
294
444
|
return true;
|
|
295
445
|
};
|
|
@@ -358,6 +508,70 @@ export async function createS3Storage(opts) {
|
|
|
358
508
|
const meta = await loadMeta(artifactId);
|
|
359
509
|
return meta?.name ?? null;
|
|
360
510
|
};
|
|
511
|
+
/** Straight from the bucket, never the cache: the flags change after the cache was filled. */
|
|
512
|
+
const describeArtifact = async (artifactId) => {
|
|
513
|
+
if (!isUuid(artifactId))
|
|
514
|
+
return null;
|
|
515
|
+
const sidecar = await readSidecar(artifactId);
|
|
516
|
+
if (!sidecar)
|
|
517
|
+
return null;
|
|
518
|
+
let updatedAt = await sidecarModifiedAt(artifactId);
|
|
519
|
+
if (sidecar.status === 'uploading') {
|
|
520
|
+
// An upload in flight counts from its last byte, not from when it was reserved — so a
|
|
521
|
+
// long upload that's still moving is never taken for an idle one.
|
|
522
|
+
const key = artifactKey(artifactId, sidecar.kind ?? 'video', sidecar.ext);
|
|
523
|
+
updatedAt = Math.max(updatedAt, await lastUploadActivity(key));
|
|
524
|
+
}
|
|
525
|
+
return sidecarToMeta(artifactId, sidecar, updatedAt);
|
|
526
|
+
};
|
|
527
|
+
const patchArtifact = async (artifactId, patch) => {
|
|
528
|
+
if (!isUuid(artifactId))
|
|
529
|
+
return false;
|
|
530
|
+
const result = await rewriteSidecar(artifactId, (sidecar) => {
|
|
531
|
+
const next = { ...sidecar };
|
|
532
|
+
if (patch.acknowledged !== undefined)
|
|
533
|
+
next.acknowledged = patch.acknowledged;
|
|
534
|
+
if (patch.converted !== undefined)
|
|
535
|
+
next.converted = patch.converted;
|
|
536
|
+
if (patch.outcome !== undefined) {
|
|
537
|
+
if (patch.outcome === null)
|
|
538
|
+
delete next.outcome;
|
|
539
|
+
else
|
|
540
|
+
next.outcome = patch.outcome;
|
|
541
|
+
}
|
|
542
|
+
return next;
|
|
543
|
+
});
|
|
544
|
+
return result !== null;
|
|
545
|
+
};
|
|
546
|
+
async function* listRelated(artifactId) {
|
|
547
|
+
if (!isUuid(artifactId))
|
|
548
|
+
return;
|
|
549
|
+
const prefix = `${RELATED_PREFIX}/${artifactId}/`;
|
|
550
|
+
let continuationToken;
|
|
551
|
+
do {
|
|
552
|
+
const page = await client.send(new ListObjectsV2Command({
|
|
553
|
+
Bucket: bucket,
|
|
554
|
+
Prefix: prefix,
|
|
555
|
+
...(continuationToken ? { ContinuationToken: continuationToken } : {}),
|
|
556
|
+
}));
|
|
557
|
+
for (const object of page.Contents ?? []) {
|
|
558
|
+
const relatedId = object.Key?.slice(prefix.length) ?? '';
|
|
559
|
+
if (!isUuid(relatedId))
|
|
560
|
+
continue;
|
|
561
|
+
const sidecar = await readSidecar(relatedId);
|
|
562
|
+
if (!sidecar || sidecar.relatedTo !== artifactId)
|
|
563
|
+
continue; // An entry whose artifact is gone.
|
|
564
|
+
yield {
|
|
565
|
+
artifactId: relatedId,
|
|
566
|
+
kind: sidecar.kind ?? 'video',
|
|
567
|
+
relatedTo: artifactId,
|
|
568
|
+
ready: sidecar.status === 'ready',
|
|
569
|
+
updatedAt: await sidecarModifiedAt(relatedId),
|
|
570
|
+
};
|
|
571
|
+
}
|
|
572
|
+
continuationToken = page.IsTruncated ? page.NextContinuationToken : undefined;
|
|
573
|
+
} while (continuationToken);
|
|
574
|
+
}
|
|
361
575
|
/**
|
|
362
576
|
* Walk the sidecar objects. A sidecar is rewritten only when its upload finishes, so its
|
|
363
577
|
* `LastModified` is when the upload started (still uploading) or when it finished (ready).
|
|
@@ -413,6 +627,9 @@ export async function createS3Storage(opts) {
|
|
|
413
627
|
getChecksum,
|
|
414
628
|
getName,
|
|
415
629
|
listArtifacts,
|
|
630
|
+
describeArtifact,
|
|
631
|
+
patchArtifact,
|
|
632
|
+
listRelated,
|
|
416
633
|
shutdown,
|
|
417
634
|
};
|
|
418
635
|
}
|
|
@@ -448,6 +665,11 @@ async function digestBody(body, algorithm) {
|
|
|
448
665
|
return hash.digest('hex');
|
|
449
666
|
}
|
|
450
667
|
/** Whether an AWS SDK error represents a missing key/object (404-ish). */
|
|
668
|
+
/** Whether `ListParts` answered that the multipart upload no longer exists (completed or aborted). */
|
|
669
|
+
function isNoSuchUpload(err) {
|
|
670
|
+
const e = err;
|
|
671
|
+
return e?.name === 'NoSuchUpload' || e?.Code === 'NoSuchUpload';
|
|
672
|
+
}
|
|
451
673
|
function isNotFound(err) {
|
|
452
674
|
const e = err;
|
|
453
675
|
return (e?.name === 'NoSuchKey' ||
|
package/dist/storage/s3.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"s3.js","sourceRoot":"","sources":["../../src/storage/s3.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"s3.js","sourceRoot":"","sources":["../../src/storage/s3.ts"],"names":[],"mappings":"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"}
|
package/dist/storage/types.d.ts
CHANGED
|
@@ -82,6 +82,61 @@ export type ReserveUploadParams = {
|
|
|
82
82
|
* an operator can tell which app build produced a file. Display metadata only, like `name`.
|
|
83
83
|
*/
|
|
84
84
|
appVersion?: string;
|
|
85
|
+
/**
|
|
86
|
+
* Opaque host data the capability token carried (`issueCapabilityToken`'s `context`: an owner,
|
|
87
|
+
* a destination), as the `authorize` hook returned it for this create. Persisted verbatim so
|
|
88
|
+
* every later hook, status read and completion replay gets it back without a host lookup.
|
|
89
|
+
* JSON only; never interpreted by PulseVault.
|
|
90
|
+
*/
|
|
91
|
+
context?: unknown;
|
|
92
|
+
};
|
|
93
|
+
/** Everything an adapter knows about one artifact, from `describeArtifact`. */
|
|
94
|
+
export type PulseVaultArtifactMeta = {
|
|
95
|
+
artifactId: string;
|
|
96
|
+
kind: UploadKind;
|
|
97
|
+
/** Lowercase extension including the leading dot. */
|
|
98
|
+
ext: string;
|
|
99
|
+
/** Original filename from `Upload-Metadata.filename`. */
|
|
100
|
+
filename: string;
|
|
101
|
+
relatedTo?: string;
|
|
102
|
+
checksum?: string;
|
|
103
|
+
name?: string;
|
|
104
|
+
appVersion?: string;
|
|
105
|
+
/** See `ReserveUploadParams.context`. */
|
|
106
|
+
context?: unknown;
|
|
107
|
+
/** `true` once the upload finished and is served. */
|
|
108
|
+
ready: boolean;
|
|
109
|
+
/**
|
|
110
|
+
* Whether the host's `onUploadComplete` has returned for this artifact: `false` from reserve,
|
|
111
|
+
* `true` once the core recorded the hook's return. A completion the host never recorded (a
|
|
112
|
+
* throw, a restart) is replayed from this flag. A sidecar written before the flag existed reads
|
|
113
|
+
* as `true` when finished (an upgrade replays nothing) and `false` while still uploading (its
|
|
114
|
+
* completion is still to come).
|
|
115
|
+
*/
|
|
116
|
+
acknowledged: boolean;
|
|
117
|
+
/**
|
|
118
|
+
* Whether the web-ready conversion has finished for this artifact: `false` from reserve, `true`
|
|
119
|
+
* once the core recorded it. Only meaningful for a video on a server with `webReady`; the core
|
|
120
|
+
* derives the `processing` status from it. Legacy sidecars read as `true` when finished.
|
|
121
|
+
*/
|
|
122
|
+
converted: boolean;
|
|
123
|
+
/** Whatever the host recorded with `recordOutcome` (where the upload went, why it was kept). */
|
|
124
|
+
outcome?: unknown;
|
|
125
|
+
/** Same meaning as `PulseVaultArtifactRecord.updatedAt`. */
|
|
126
|
+
updatedAt: number;
|
|
127
|
+
/**
|
|
128
|
+
* When the upload finished (ms since the epoch), recorded by `markReady` and never changed
|
|
129
|
+
* after — a stable order for "the newest related file", which `updatedAt` isn't (a later
|
|
130
|
+
* acknowledgement or outcome moves it). Absent on sidecars written before it was recorded.
|
|
131
|
+
*/
|
|
132
|
+
readyAt?: number;
|
|
133
|
+
};
|
|
134
|
+
/** The fields `patchArtifact` may change. Each is optional; absent means unchanged. */
|
|
135
|
+
export type PulseVaultArtifactPatch = {
|
|
136
|
+
acknowledged?: boolean;
|
|
137
|
+
converted?: boolean;
|
|
138
|
+
/** `null` clears a recorded outcome. */
|
|
139
|
+
outcome?: unknown;
|
|
85
140
|
};
|
|
86
141
|
/** One artifact as `listArtifacts` reports it. */
|
|
87
142
|
export type PulseVaultArtifactRecord = {
|
|
@@ -176,5 +231,23 @@ export interface PulseVaultStorage {
|
|
|
176
231
|
listArtifacts?(opts?: {
|
|
177
232
|
changedBefore?: number;
|
|
178
233
|
}): AsyncIterable<PulseVaultArtifactRecord>;
|
|
234
|
+
/**
|
|
235
|
+
* Everything stored about one artifact, or `null` if the artifactId is unknown. Optional —
|
|
236
|
+
* the richer hook context, `getStatus`, `getPulse`, reclaiming idle uploads and replaying
|
|
237
|
+
* completions all need it (both built-in adapters have it).
|
|
238
|
+
*/
|
|
239
|
+
describeArtifact?(artifactId: string): Promise<PulseVaultArtifactMeta | null>;
|
|
240
|
+
/**
|
|
241
|
+
* Change the bookkeeping flags of one artifact (`acknowledged`, `converted`, `outcome`).
|
|
242
|
+
* Resolves `false` if the artifactId is unknown. Optional — completion replay, background
|
|
243
|
+
* web-ready and `recordOutcome` need it.
|
|
244
|
+
*/
|
|
245
|
+
patchArtifact?(artifactId: string, patch: PulseVaultArtifactPatch): Promise<boolean>;
|
|
246
|
+
/**
|
|
247
|
+
* The artifacts that declared `relatedTo` this one (a pulse's captions, beat manifest and
|
|
248
|
+
* thumbnail), in flight or finished. Optional — `getPulse` and the poster route need it. Built
|
|
249
|
+
* from an index the adapter keeps at reserve time, so it never scans every artifact.
|
|
250
|
+
*/
|
|
251
|
+
listRelated?(artifactId: string): AsyncIterable<PulseVaultArtifactRecord>;
|
|
179
252
|
}
|
|
180
253
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/storage/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAE7C;;;;GAIG;AACH,MAAM,MAAM,oBAAoB,GAC5B;IACE,IAAI,EAAE,QAAQ,CAAC;IACf,qDAAqD;IACrD,IAAI,EAAE,MAAM,CAAC;IACb,mCAAmC;IACnC,QAAQ,EAAE,MAAM,CAAC;IACjB;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,GACD;IACE,IAAI,EAAE,UAAU,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;IACZ,uBAAuB;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAEN;;uCAEuC;AACvC,eAAO,MAAM,YAAY,wDAAyD,CAAC;AAEnF,MAAM,MAAM,UAAU,GAAG,CAAC,OAAO,YAAY,CAAC,CAAC,MAAM,CAAC,CAAC;AAEvD;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,UAAU,CAG1E;AAED,MAAM,MAAM,mBAAmB,GAAG;IAChC,4FAA4F;IAC5F,UAAU,EAAE,MAAM,CAAC;IACnB,oDAAoD;IACpD,QAAQ,EAAE,MAAM,CAAC;IACjB,yEAAyE;IACzE,GAAG,EAAE,MAAM,CAAC;IACZ,gFAAgF;IAChF,IAAI,EAAE,UAAU,CAAC;IACjB;;;;;;;;;;;;;;OAcG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;;;OAMG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;;;;;OAQG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/storage/types.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mieweb/pulsevault",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.5.0",
|
|
4
4
|
"description": "Resumable video uploads via TUS for Fastify (plugin) or any Node backend (framework-agnostic core), with a pluggable storage adapter and a filesystem-first local-storage default.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/app.js",
|
|
@@ -20,7 +20,8 @@
|
|
|
20
20
|
"types": "./dist/core.d.ts",
|
|
21
21
|
"import": "./dist/core.js",
|
|
22
22
|
"default": "./dist/core.js"
|
|
23
|
-
}
|
|
23
|
+
},
|
|
24
|
+
"./assets/*": "./assets/*"
|
|
24
25
|
},
|
|
25
26
|
"files": [
|
|
26
27
|
"dist",
|
|
@@ -34,7 +35,8 @@
|
|
|
34
35
|
"PROTOCOL.md",
|
|
35
36
|
"OPERATIONS.md",
|
|
36
37
|
"scripts/web-ready-migrate.mjs",
|
|
37
|
-
"protocol"
|
|
38
|
+
"protocol",
|
|
39
|
+
"assets"
|
|
38
40
|
],
|
|
39
41
|
"scripts": {
|
|
40
42
|
"build": "node scripts/gen-protocol-version.mjs && tsc",
|
|
@@ -103,7 +105,7 @@
|
|
|
103
105
|
"@tus/s3-store": "^2.0.6"
|
|
104
106
|
},
|
|
105
107
|
"pulseProtocol": {
|
|
106
|
-
"version": "2.
|
|
108
|
+
"version": "2.3",
|
|
107
109
|
"min": 2,
|
|
108
110
|
"max": 2
|
|
109
111
|
}
|