@agentxm/client-core 0.20.1 → 0.21.1
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/src/unstable/auth/auth-client.d.ts +32 -0
- package/dist/src/unstable/auth/auth-client.d.ts.map +1 -1
- package/dist/src/unstable/auth/auth-client.js +78 -0
- package/dist/src/unstable/auth/auth-client.js.map +1 -1
- package/dist/src/unstable/auth/index.d.ts +2 -1
- package/dist/src/unstable/auth/index.d.ts.map +1 -1
- package/dist/src/unstable/auth/index.js +1 -0
- package/dist/src/unstable/auth/index.js.map +1 -1
- package/dist/src/unstable/auth/loopback-login.d.ts.map +1 -1
- package/dist/src/unstable/auth/loopback-login.js +1 -0
- package/dist/src/unstable/auth/loopback-login.js.map +1 -1
- package/dist/src/unstable/auth/loopback-server.d.ts +1 -0
- package/dist/src/unstable/auth/loopback-server.d.ts.map +1 -1
- package/dist/src/unstable/auth/loopback-server.js +20 -5
- package/dist/src/unstable/auth/loopback-server.js.map +1 -1
- package/dist/src/unstable/auth/publish-authorization.d.ts +18 -0
- package/dist/src/unstable/auth/publish-authorization.d.ts.map +1 -0
- package/dist/src/unstable/auth/publish-authorization.js +83 -0
- package/dist/src/unstable/auth/publish-authorization.js.map +1 -0
- package/dist/src/unstable/cli/prompt/autocomplete-multiselect.d.ts +2 -0
- package/dist/src/unstable/cli/prompt/autocomplete-multiselect.d.ts.map +1 -1
- package/dist/src/unstable/cli/prompt/autocomplete-multiselect.js +8 -14
- package/dist/src/unstable/cli/prompt/autocomplete-multiselect.js.map +1 -1
- package/dist/src/unstable/cli-renderer/cli-renderer-interactive.d.ts.map +1 -1
- package/dist/src/unstable/cli-renderer/cli-renderer-interactive.js +7 -0
- package/dist/src/unstable/cli-renderer/cli-renderer-interactive.js.map +1 -1
- package/dist/src/unstable/cli-renderer/cli-renderer-machine.d.ts.map +1 -1
- package/dist/src/unstable/cli-renderer/cli-renderer-machine.js +2 -0
- package/dist/src/unstable/cli-renderer/cli-renderer-machine.js.map +1 -1
- package/dist/src/unstable/cli-renderer/cli-renderer-test.d.ts +1 -0
- package/dist/src/unstable/cli-renderer/cli-renderer-test.d.ts.map +1 -1
- package/dist/src/unstable/cli-renderer/cli-renderer-test.js +11 -0
- package/dist/src/unstable/cli-renderer/cli-renderer-test.js.map +1 -1
- package/dist/src/unstable/cli-renderer/cli-renderer.d.ts +4 -0
- package/dist/src/unstable/cli-renderer/cli-renderer.d.ts.map +1 -1
- package/dist/src/unstable/cli-renderer/cli-renderer.js.map +1 -1
- package/dist/src/unstable/commands/manager.d.ts.map +1 -1
- package/dist/src/unstable/commands/manager.js +1 -0
- package/dist/src/unstable/commands/manager.js.map +1 -1
- package/dist/src/unstable/extensions/operations.d.ts.map +1 -1
- package/dist/src/unstable/extensions/operations.js +9 -2
- package/dist/src/unstable/extensions/operations.js.map +1 -1
- package/dist/src/unstable/extensions/ref-base.d.ts +4 -0
- package/dist/src/unstable/extensions/ref-base.d.ts.map +1 -1
- package/dist/src/unstable/files/manager.d.ts.map +1 -1
- package/dist/src/unstable/files/manager.js +1 -0
- package/dist/src/unstable/files/manager.js.map +1 -1
- package/dist/src/unstable/hooks/manager.d.ts.map +1 -1
- package/dist/src/unstable/hooks/manager.js +1 -0
- package/dist/src/unstable/hooks/manager.js.map +1 -1
- package/dist/src/unstable/lockfile/lockfile.d.ts +16 -0
- package/dist/src/unstable/lockfile/lockfile.d.ts.map +1 -1
- package/dist/src/unstable/lockfile/schema.d.ts +25 -0
- package/dist/src/unstable/lockfile/schema.d.ts.map +1 -1
- package/dist/src/unstable/lockfile/schema.js +2 -0
- package/dist/src/unstable/lockfile/schema.js.map +1 -1
- package/dist/src/unstable/mcps/manager.d.ts.map +1 -1
- package/dist/src/unstable/mcps/manager.js +1 -0
- package/dist/src/unstable/mcps/manager.js.map +1 -1
- package/dist/src/unstable/mcps/operations/install.d.ts.map +1 -1
- package/dist/src/unstable/mcps/operations/install.js +1 -0
- package/dist/src/unstable/mcps/operations/install.js.map +1 -1
- package/dist/src/unstable/packs/manager.d.ts.map +1 -1
- package/dist/src/unstable/packs/manager.js +3 -0
- package/dist/src/unstable/packs/manager.js.map +1 -1
- package/dist/src/unstable/packs/operations/install.d.ts +1 -0
- package/dist/src/unstable/packs/operations/install.d.ts.map +1 -1
- package/dist/src/unstable/packs/operations/install.js +3 -0
- package/dist/src/unstable/packs/operations/install.js.map +1 -1
- package/dist/src/unstable/registry/__generated__/registry-client.d.ts +1414 -1434
- package/dist/src/unstable/registry/__generated__/registry-client.d.ts.map +1 -1
- package/dist/src/unstable/registry/__generated__/registry-client.js +487 -291
- package/dist/src/unstable/registry/__generated__/registry-client.js.map +1 -1
- package/dist/src/unstable/registry/admin-client.d.ts +56 -28
- package/dist/src/unstable/registry/admin-client.d.ts.map +1 -1
- package/dist/src/unstable/registry/admin-client.js +46 -23
- package/dist/src/unstable/registry/admin-client.js.map +1 -1
- package/dist/src/unstable/registry/archive-cache.d.ts +51 -0
- package/dist/src/unstable/registry/archive-cache.d.ts.map +1 -0
- package/dist/src/unstable/registry/archive-cache.js +213 -0
- package/dist/src/unstable/registry/archive-cache.js.map +1 -0
- package/dist/src/unstable/registry/client.d.ts +15 -3
- package/dist/src/unstable/registry/client.d.ts.map +1 -1
- package/dist/src/unstable/registry/client.js +3 -1
- package/dist/src/unstable/registry/client.js.map +1 -1
- package/dist/src/unstable/registry/index.d.ts +5 -3
- package/dist/src/unstable/registry/index.d.ts.map +1 -1
- package/dist/src/unstable/registry/index.js +3 -2
- package/dist/src/unstable/registry/index.js.map +1 -1
- package/dist/src/unstable/registry/local-client.d.ts.map +1 -1
- package/dist/src/unstable/registry/local-client.js +117 -47
- package/dist/src/unstable/registry/local-client.js.map +1 -1
- package/dist/src/unstable/registry/remote-client.d.ts +2 -1
- package/dist/src/unstable/registry/remote-client.d.ts.map +1 -1
- package/dist/src/unstable/registry/remote-client.js +67 -69
- package/dist/src/unstable/registry/remote-client.js.map +1 -1
- package/dist/src/unstable/registry/schema.d.ts +10 -1
- package/dist/src/unstable/registry/schema.d.ts.map +1 -1
- package/dist/src/unstable/registry/schema.js +7 -1
- package/dist/src/unstable/registry/schema.js.map +1 -1
- package/dist/src/unstable/registry/utils.d.ts +2 -1
- package/dist/src/unstable/registry/utils.d.ts.map +1 -1
- package/dist/src/unstable/registry/utils.js +24 -5
- package/dist/src/unstable/registry/utils.js.map +1 -1
- package/dist/src/unstable/rules/manager.d.ts.map +1 -1
- package/dist/src/unstable/rules/manager.js +1 -0
- package/dist/src/unstable/rules/manager.js.map +1 -1
- package/dist/src/unstable/source-resolution/providers/registry/host-provider.d.ts.map +1 -1
- package/dist/src/unstable/source-resolution/providers/registry/host-provider.js +18 -2
- package/dist/src/unstable/source-resolution/providers/registry/host-provider.js.map +1 -1
- package/dist/src/unstable/sources/lock-entry-to-ref.d.ts.map +1 -1
- package/dist/src/unstable/sources/lock-entry-to-ref.js +3 -0
- package/dist/src/unstable/sources/lock-entry-to-ref.js.map +1 -1
- package/dist/src/unstable/sources/source-to-lock-entry.d.ts.map +1 -1
- package/dist/src/unstable/sources/source-to-lock-entry.js +3 -0
- package/dist/src/unstable/sources/source-to-lock-entry.js.map +1 -1
- package/dist/src/unstable/subagents/lock-entry-builder.d.ts.map +1 -1
- package/dist/src/unstable/subagents/lock-entry-builder.js +3 -0
- package/dist/src/unstable/subagents/lock-entry-builder.js.map +1 -1
- package/dist/src/unstable/workspace/index.d.ts +1 -0
- package/dist/src/unstable/workspace/index.d.ts.map +1 -1
- package/dist/src/unstable/workspace/index.js +1 -0
- package/dist/src/unstable/workspace/index.js.map +1 -1
- package/dist/src/unstable/workspace/initialization-interaction.d.ts.map +1 -1
- package/dist/src/unstable/workspace/initialization-interaction.js +16 -9
- package/dist/src/unstable/workspace/initialization-interaction.js.map +1 -1
- package/dist/src/unstable/workspace/read-model/extensions/ignore-patterns.d.ts +1 -0
- package/dist/src/unstable/workspace/read-model/extensions/ignore-patterns.d.ts.map +1 -1
- package/dist/src/unstable/workspace/read-model/extensions/ignore-patterns.js +4 -1
- package/dist/src/unstable/workspace/read-model/extensions/ignore-patterns.js.map +1 -1
- package/dist/src/unstable/workspace/read-model/extensions/index.d.ts +2 -0
- package/dist/src/unstable/workspace/read-model/extensions/index.d.ts.map +1 -1
- package/dist/src/unstable/workspace/read-model/extensions/index.js +2 -0
- package/dist/src/unstable/workspace/read-model/extensions/index.js.map +1 -1
- package/dist/src/unstable/workspace/read-model/extensions/inventory.d.ts +94 -0
- package/dist/src/unstable/workspace/read-model/extensions/inventory.d.ts.map +1 -0
- package/dist/src/unstable/workspace/read-model/extensions/inventory.js +152 -0
- package/dist/src/unstable/workspace/read-model/extensions/inventory.js.map +1 -0
- package/dist/src/unstable/workspace/read-model/service.d.ts +2 -0
- package/dist/src/unstable/workspace/read-model/service.d.ts.map +1 -1
- package/dist/src/unstable/workspace/read-model/service.js +1 -0
- package/dist/src/unstable/workspace/read-model/service.js.map +1 -1
- package/dist/src/unstable/workspace/read-model-record-readers.d.ts +5 -0
- package/dist/src/unstable/workspace/read-model-record-readers.d.ts.map +1 -1
- package/dist/src/unstable/workspace/read-model-record-readers.js +348 -1
- package/dist/src/unstable/workspace/read-model-record-readers.js.map +1 -1
- package/dist/src/unstable/workspace/service-interface.d.ts +9 -0
- package/dist/src/unstable/workspace/service-interface.d.ts.map +1 -1
- package/dist/src/unstable/workspace/service-interface.js.map +1 -1
- package/dist/src/unstable/workspace/service.d.ts +20 -0
- package/dist/src/unstable/workspace/service.d.ts.map +1 -1
- package/dist/src/unstable/workspace/service.js +4 -1
- package/dist/src/unstable/workspace/service.js.map +1 -1
- package/dist/src/unstable/workspace/test-stubs.d.ts +2 -0
- package/dist/src/unstable/workspace/test-stubs.d.ts.map +1 -1
- package/dist/src/unstable/workspace/test-stubs.js +10 -0
- package/dist/src/unstable/workspace/test-stubs.js.map +1 -1
- package/package.json +6 -6
- package/site-content/__generated__/schemas/axm-lock.schema.json +45 -0
|
@@ -8,9 +8,11 @@
|
|
|
8
8
|
* @packageDocumentation
|
|
9
9
|
*/
|
|
10
10
|
import * as Array from "effect/Array";
|
|
11
|
+
import * as Duration from "effect/Duration";
|
|
11
12
|
import * as Effect from "effect/Effect";
|
|
12
13
|
import * as Option from "effect/Option";
|
|
13
14
|
import * as Schema from "effect/Schema";
|
|
15
|
+
import * as Semaphore from "effect/Semaphore";
|
|
14
16
|
import { errPublishConflict, errRegistryPublishRejected, makeAppError, } from "../app-error/index.js";
|
|
15
17
|
import { toAuthor } from "../extensions/index.js";
|
|
16
18
|
import { isExtensionTypePlural, parseExtensionFqnParts, toExtensionTypePlural, } from "../extensions/common.js";
|
|
@@ -21,6 +23,9 @@ import { extensionDir, pluralizeType, resolveVersionEntry, selectVersion } from
|
|
|
21
23
|
const decodeExtensionIndexFromJsonString = Schema.decodeUnknownEffect(Schema.fromJsonString(ExtensionIndexSchema));
|
|
22
24
|
const encodeExtensionIndexToJsonString = Schema.encodeSync(Schema.fromJsonString(ExtensionIndexSchema));
|
|
23
25
|
const encodePackageUrl = Schema.encodeSync(PackageUrlSchema);
|
|
26
|
+
const PUBLISH_LOCK_RETRY_DELAY = Duration.millis(25);
|
|
27
|
+
const PUBLISH_LOCK_STALE_MILLIS = Duration.toMillis(Duration.minutes(5));
|
|
28
|
+
const publishLockSemaphores = new Map();
|
|
24
29
|
// -----------------------------------------------------------------------------
|
|
25
30
|
// Helpers
|
|
26
31
|
// -----------------------------------------------------------------------------
|
|
@@ -36,6 +41,43 @@ const readExtensionIndex = (fs, idxPath) => Effect.gen(function* () {
|
|
|
36
41
|
cause: e,
|
|
37
42
|
})));
|
|
38
43
|
});
|
|
44
|
+
const removeBestEffort = (fs, filePath) => fs.remove(filePath).pipe(Effect.ignore);
|
|
45
|
+
const inProcessPublishSemaphoreFor = (lockPath) => {
|
|
46
|
+
const existing = publishLockSemaphores.get(lockPath);
|
|
47
|
+
if (existing !== undefined)
|
|
48
|
+
return existing;
|
|
49
|
+
const created = Semaphore.makeUnsafe(1);
|
|
50
|
+
publishLockSemaphores.set(lockPath, created);
|
|
51
|
+
return created;
|
|
52
|
+
};
|
|
53
|
+
const acquirePublishLock = (fs, lockPath) => Effect.gen(function* () {
|
|
54
|
+
const result = yield* fs
|
|
55
|
+
.writeFileString(lockPath, `${new Date().toISOString()}\n`, { flag: "wx" })
|
|
56
|
+
.pipe(Effect.result);
|
|
57
|
+
if (result._tag === "Success")
|
|
58
|
+
return;
|
|
59
|
+
if (result.failure.reason._tag !== "AlreadyExists") {
|
|
60
|
+
return yield* makeAppError({
|
|
61
|
+
code: "internal",
|
|
62
|
+
detail: `Failed to acquire local registry publish lock: ${lockPath}`,
|
|
63
|
+
cause: result.failure,
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
const info = yield* fs.stat(lockPath).pipe(Effect.option);
|
|
67
|
+
if (Option.isSome(info) &&
|
|
68
|
+
Option.isSome(info.value.mtime) &&
|
|
69
|
+
Date.now() - info.value.mtime.value.getTime() > PUBLISH_LOCK_STALE_MILLIS) {
|
|
70
|
+
yield* removeBestEffort(fs, lockPath);
|
|
71
|
+
}
|
|
72
|
+
else {
|
|
73
|
+
yield* Effect.sleep(PUBLISH_LOCK_RETRY_DELAY);
|
|
74
|
+
}
|
|
75
|
+
return yield* acquirePublishLock(fs, lockPath);
|
|
76
|
+
});
|
|
77
|
+
const withPublishLock = (fs, lockPath, effect) => inProcessPublishSemaphoreFor(lockPath).withPermits(1)(Effect.scoped(Effect.gen(function* () {
|
|
78
|
+
yield* Effect.acquireRelease(acquirePublishLock(fs, lockPath), () => removeBestEffort(fs, lockPath));
|
|
79
|
+
return yield* effect;
|
|
80
|
+
})));
|
|
39
81
|
const indexToManifest = (index, versionRange) => {
|
|
40
82
|
const selectedVersion = resolveVersionEntry(index.versions, versionRange);
|
|
41
83
|
if (Option.isNone(selectedVersion))
|
|
@@ -45,6 +87,9 @@ const indexToManifest = (index, versionRange) => {
|
|
|
45
87
|
owner: index.owner,
|
|
46
88
|
type: index.type,
|
|
47
89
|
name: index.name,
|
|
90
|
+
...(index.publisherBindingId === undefined
|
|
91
|
+
? {}
|
|
92
|
+
: { publisherBindingId: index.publisherBindingId }),
|
|
48
93
|
description: Option.fromUndefinedOr(index.description),
|
|
49
94
|
repository: Option.fromUndefinedOr(index.repository),
|
|
50
95
|
bugs: Option.fromUndefinedOr(index.bugs),
|
|
@@ -295,55 +340,80 @@ export const createLocalRegistryClient = (registryRoot, fs, path) => ({
|
|
|
295
340
|
})));
|
|
296
341
|
const indexPath = path.join(dir, "index.json");
|
|
297
342
|
const archivePath = path.join(dir, `${args.version}.zip`);
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
343
|
+
const lockPath = path.join(dir, ".publish.lock");
|
|
344
|
+
return yield* withPublishLock(fs, lockPath, Effect.gen(function* () {
|
|
345
|
+
const indexExists = yield* fs.exists(indexPath).pipe(Effect.orElseSucceed(() => false));
|
|
346
|
+
const nextIndex = indexExists
|
|
347
|
+
? yield* Effect.gen(function* () {
|
|
348
|
+
const content = yield* fs.readFileString(indexPath).pipe(Effect.mapError((cause) => errRegistryPublishRejected({
|
|
349
|
+
message: `Registry index could not be read: ${indexPath}`,
|
|
350
|
+
cause,
|
|
351
|
+
})));
|
|
352
|
+
const existingIndex = yield* decodeExtensionIndexFromJsonString(content).pipe(Effect.mapError((cause) => errRegistryPublishRejected({
|
|
353
|
+
message: "Registry index schema is invalid",
|
|
354
|
+
cause,
|
|
355
|
+
})));
|
|
356
|
+
if (existingIndex.versions.some((version) => version.version === args.version)) {
|
|
357
|
+
return yield* errPublishConflict({ version: args.version });
|
|
358
|
+
}
|
|
359
|
+
return {
|
|
360
|
+
...existingIndex,
|
|
361
|
+
versions: [args.metadata, ...existingIndex.versions],
|
|
362
|
+
};
|
|
363
|
+
})
|
|
364
|
+
: {
|
|
365
|
+
name: args.name,
|
|
366
|
+
owner,
|
|
367
|
+
type: args.type,
|
|
368
|
+
versions: [args.metadata],
|
|
369
|
+
};
|
|
370
|
+
const archiveTempPath = yield* fs
|
|
371
|
+
.makeTempFile({
|
|
372
|
+
directory: dir,
|
|
373
|
+
prefix: `.${args.version}.archive-`,
|
|
374
|
+
suffix: ".tmp",
|
|
375
|
+
})
|
|
376
|
+
.pipe(Effect.mapError((cause) => errRegistryPublishRejected({
|
|
377
|
+
message: "Registry archive temp file could not be created",
|
|
378
|
+
cause,
|
|
309
379
|
})));
|
|
310
|
-
const
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
380
|
+
const archiveTempDir = path.dirname(archiveTempPath);
|
|
381
|
+
yield* Effect.ensuring(Effect.gen(function* () {
|
|
382
|
+
yield* fs.writeFile(archiveTempPath, args.archive).pipe(Effect.mapError((cause) => errRegistryPublishRejected({
|
|
383
|
+
message: `Registry archive temp file could not be written: ${archiveTempPath}`,
|
|
384
|
+
cause,
|
|
385
|
+
})));
|
|
386
|
+
yield* removeBestEffort(fs, archivePath);
|
|
387
|
+
yield* fs.rename(archiveTempPath, archivePath).pipe(Effect.mapError((cause) => errRegistryPublishRejected({
|
|
388
|
+
message: `Registry archive could not be committed: ${archivePath}`,
|
|
389
|
+
cause,
|
|
390
|
+
})));
|
|
391
|
+
}), fs.remove(archiveTempDir, { recursive: true }).pipe(Effect.ignore));
|
|
392
|
+
const indexTempPath = yield* fs
|
|
393
|
+
.makeTempFile({
|
|
394
|
+
directory: dir,
|
|
395
|
+
prefix: ".index-",
|
|
396
|
+
suffix: ".tmp",
|
|
397
|
+
})
|
|
398
|
+
.pipe(Effect.mapError((cause) => errRegistryPublishRejected({
|
|
399
|
+
message: "Registry index temp file could not be created",
|
|
400
|
+
cause,
|
|
324
401
|
})));
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
}
|
|
341
|
-
// Write archive
|
|
342
|
-
yield* fs.writeFile(archivePath, args.archive).pipe(Effect.mapError((e) => errRegistryPublishRejected({
|
|
343
|
-
message: `Registry archive could not be written: ${archivePath}`,
|
|
344
|
-
cause: e,
|
|
345
|
-
})));
|
|
346
|
-
return { published: true };
|
|
402
|
+
const indexTempDir = path.dirname(indexTempPath);
|
|
403
|
+
yield* Effect.ensuring(Effect.gen(function* () {
|
|
404
|
+
yield* fs
|
|
405
|
+
.writeFileString(indexTempPath, `${encodeExtensionIndexToJsonString(nextIndex)}\n`)
|
|
406
|
+
.pipe(Effect.mapError((cause) => errRegistryPublishRejected({
|
|
407
|
+
message: `Registry index temp file could not be written: ${indexTempPath}`,
|
|
408
|
+
cause,
|
|
409
|
+
})));
|
|
410
|
+
yield* fs.rename(indexTempPath, indexPath).pipe(Effect.mapError((cause) => errRegistryPublishRejected({
|
|
411
|
+
message: `Registry index could not be committed: ${indexPath}`,
|
|
412
|
+
cause,
|
|
413
|
+
})));
|
|
414
|
+
}), fs.remove(indexTempDir, { recursive: true }).pipe(Effect.ignore));
|
|
415
|
+
return { published: true };
|
|
416
|
+
}));
|
|
347
417
|
}),
|
|
348
418
|
updateExtensionVisibility: (args) => Effect.gen(function* () {
|
|
349
419
|
const dir = extensionDir(registryRoot, args.owner, args.type, args.name, path.join);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"local-client.js","sourceRoot":"","sources":["../../../../src/unstable/registry/local-client.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"local-client.js","sourceRoot":"","sources":["../../../../src/unstable/registry/local-client.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,6 +9,7 @@
|
|
|
9
9
|
*/
|
|
10
10
|
import * as HttpClient from "effect/unstable/http/HttpClient";
|
|
11
11
|
import type { RegistryClient } from "./client.js";
|
|
12
|
+
import type { ArchiveCache } from "./archive-cache.js";
|
|
12
13
|
/**
|
|
13
14
|
* Creates a remote HTTPS registry client.
|
|
14
15
|
*
|
|
@@ -20,5 +21,5 @@ import type { RegistryClient } from "./client.js";
|
|
|
20
21
|
*
|
|
21
22
|
* @experimental This API is unstable and may change without notice.
|
|
22
23
|
*/
|
|
23
|
-
export declare const createRemoteRegistryClient: (baseUrl: string, httpClient: HttpClient.HttpClient) => RegistryClient;
|
|
24
|
+
export declare const createRemoteRegistryClient: (baseUrl: string, httpClient: HttpClient.HttpClient, archiveCache?: ArchiveCache) => RegistryClient;
|
|
24
25
|
//# sourceMappingURL=remote-client.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"remote-client.d.ts","sourceRoot":"","sources":["../../../../src/unstable/registry/remote-client.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,UAAU,MAAM,iCAAiC,CAAC;
|
|
1
|
+
{"version":3,"file":"remote-client.d.ts","sourceRoot":"","sources":["../../../../src/unstable/registry/remote-client.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,UAAU,MAAM,iCAAiC,CAAC;AAuB9D,OAAO,KAAK,EAaV,cAAc,EAIf,MAAM,aAAa,CAAC;AAqBrB,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAoJvD;;;;;;;;;;GAUG;AACH,eAAO,MAAM,0BAA0B,GACrC,SAAS,MAAM,EACf,YAAY,UAAU,CAAC,UAAU,EACjC,eAAe,YAAY,KAC1B,cAomBF,CAAC"}
|
|
@@ -18,9 +18,10 @@ import { parseExtensionFqnParts, toExtensionTypePlural } from "../extensions/com
|
|
|
18
18
|
import { decodeExtensionNameSync, toAuthor, ExtensionTypeSchema, } from "../extensions/index.js";
|
|
19
19
|
import { decodeHandleSync } from "../extensions/handle.js";
|
|
20
20
|
import { PackageUrlSchema } from "../packaging/package-url.js";
|
|
21
|
+
import { decodeVersionSync } from "../version-constraints/version-constraints.js";
|
|
21
22
|
import { packagesToPackageUrlParts, ExtensionIndexSchema } from "./schema.js";
|
|
22
23
|
import { DiscoverPackagesResponseSchema } from "./discover-schema.js";
|
|
23
|
-
import { pluralizeType, resolveVersionEntry } from "./utils.js";
|
|
24
|
+
import { extensionLifecycleWarnings, pluralizeType, resolveVersionEntry } from "./utils.js";
|
|
24
25
|
import { isRegistryClientError, isHttpClientError, isSchemaError, isAnyRegistryClientError, hasTagSuffix, getTag, mapNetworkError, mapResponseSchemaError, mapUnexpectedStatusError, buildNetworkSuggestions, buildNetworkDiagnosis, } from "./error-mapping.js";
|
|
25
26
|
import { registryClientErrorToAppError } from "./translate.js";
|
|
26
27
|
import * as GeneratedRegistryClient from "./__generated__/registry-client.js";
|
|
@@ -43,6 +44,7 @@ const mapToExtensionIndex = (response) => decodeExtensionIndex({
|
|
|
43
44
|
name: response.name,
|
|
44
45
|
owner: response.owner,
|
|
45
46
|
type: narrowExtensionType(response.type),
|
|
47
|
+
publisherBindingId: response.publisher_binding_id,
|
|
46
48
|
description: response.description ?? undefined,
|
|
47
49
|
repository: response.repository ?? undefined,
|
|
48
50
|
license: response.license ?? undefined,
|
|
@@ -53,61 +55,38 @@ const mapToExtensionIndex = (response) => decodeExtensionIndex({
|
|
|
53
55
|
email: a.email ?? undefined,
|
|
54
56
|
url: a.url ?? undefined,
|
|
55
57
|
})),
|
|
58
|
+
visibility: response.visibility ?? undefined,
|
|
59
|
+
deprecatedAt: response.deprecated_at ?? undefined,
|
|
60
|
+
deprecationNotice: response.deprecation_notice ?? undefined,
|
|
56
61
|
versions: response.versions.map((v) => ({
|
|
57
62
|
version: v.version,
|
|
58
63
|
published: v.published,
|
|
59
64
|
integrity: v.integrity,
|
|
60
65
|
dependencies: v.dependencies === null ? undefined : v.dependencies,
|
|
61
66
|
packages: v.packages === null || v.packages === undefined ? undefined : v.packages,
|
|
67
|
+
yankedAt: v.yanked_at ?? undefined,
|
|
68
|
+
yankCategory: v.yank_category ?? undefined,
|
|
69
|
+
yankNotice: v.yank_notice ?? undefined,
|
|
62
70
|
})),
|
|
63
71
|
});
|
|
64
|
-
const mapLibraryMaintainer = (maintainer) => {
|
|
65
|
-
switch (maintainer.kind) {
|
|
66
|
-
case "user":
|
|
67
|
-
return {
|
|
68
|
-
kind: "user",
|
|
69
|
-
userId: maintainer.userId,
|
|
70
|
-
assignedAt: maintainer.assignedAt,
|
|
71
|
-
assignedBy: maintainer.assignedBy,
|
|
72
|
-
};
|
|
73
|
-
case "team":
|
|
74
|
-
return {
|
|
75
|
-
kind: "team",
|
|
76
|
-
teamId: maintainer.teamId,
|
|
77
|
-
assignedAt: maintainer.assignedAt,
|
|
78
|
-
assignedBy: maintainer.assignedBy,
|
|
79
|
-
};
|
|
80
|
-
case "none":
|
|
81
|
-
return {
|
|
82
|
-
kind: "none",
|
|
83
|
-
assignedAt: maintainer.assignedAt,
|
|
84
|
-
assignedBy: maintainer.assignedBy,
|
|
85
|
-
};
|
|
86
|
-
}
|
|
87
|
-
};
|
|
88
|
-
const normalizeHiddenMemberCount = (value) => typeof value === "number" && Number.isFinite(value) ? value : 0;
|
|
89
72
|
const mapToLibraryDetail = (response) => ({
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
visibility: response.library.visibility,
|
|
97
|
-
maintainer: mapLibraryMaintainer(response.library.maintainer),
|
|
98
|
-
createdAt: response.library.createdAt,
|
|
99
|
-
updatedAt: response.library.updatedAt,
|
|
100
|
-
},
|
|
73
|
+
libraryId: response.libraryId,
|
|
74
|
+
reference: response.reference,
|
|
75
|
+
name: decodeExtensionNameSync(response.name),
|
|
76
|
+
updatedAt: response.updatedAt,
|
|
77
|
+
membershipDigest: response.membershipDigest,
|
|
78
|
+
viewerRelative: response.viewerRelative,
|
|
101
79
|
members: response.members.map((member) => ({
|
|
102
|
-
id: member.
|
|
103
|
-
libraryId:
|
|
80
|
+
id: member.memberId,
|
|
81
|
+
libraryId: response.libraryId,
|
|
104
82
|
extensionId: member.extensionId,
|
|
105
|
-
extensionOwner: decodeHandleSync(member.
|
|
106
|
-
extensionType: narrowExtensionType(member.
|
|
107
|
-
extensionName: decodeExtensionNameSync(member.
|
|
83
|
+
extensionOwner: decodeHandleSync(member.owner),
|
|
84
|
+
extensionType: narrowExtensionType(member.type),
|
|
85
|
+
extensionName: decodeExtensionNameSync(member.name),
|
|
86
|
+
resolvedVersion: decodeVersionSync(member.version),
|
|
108
87
|
addedAt: member.addedAt,
|
|
88
|
+
publishedAt: member.publishedAt,
|
|
109
89
|
})),
|
|
110
|
-
hiddenMemberCount: normalizeHiddenMemberCount(response.hiddenMemberCount),
|
|
111
90
|
});
|
|
112
91
|
/**
|
|
113
92
|
* Convert an ExtensionIndex + version constraint to a RegistryExtensionManifest.
|
|
@@ -117,10 +96,14 @@ const toRegistryManifest = (index, versionRange) => {
|
|
|
117
96
|
if (Option.isNone(selected))
|
|
118
97
|
return Option.none();
|
|
119
98
|
const latest = selected.value;
|
|
99
|
+
const lifecycleWarnings = extensionLifecycleWarnings(index, latest);
|
|
120
100
|
return Option.some({
|
|
121
101
|
owner: index.owner,
|
|
122
102
|
type: index.type,
|
|
123
103
|
name: index.name,
|
|
104
|
+
...(index.publisherBindingId === undefined
|
|
105
|
+
? {}
|
|
106
|
+
: { publisherBindingId: index.publisherBindingId }),
|
|
124
107
|
description: Option.fromUndefinedOr(index.description),
|
|
125
108
|
repository: Option.fromUndefinedOr(index.repository),
|
|
126
109
|
bugs: Option.fromUndefinedOr(index.bugs),
|
|
@@ -130,6 +113,7 @@ const toRegistryManifest = (index, versionRange) => {
|
|
|
130
113
|
version: latest.version,
|
|
131
114
|
integrity: latest.integrity,
|
|
132
115
|
packages: packagesToPackageUrlParts(latest.packages),
|
|
116
|
+
...(lifecycleWarnings.length === 0 ? {} : { lifecycleWarnings }),
|
|
133
117
|
});
|
|
134
118
|
};
|
|
135
119
|
// -----------------------------------------------------------------------------
|
|
@@ -177,7 +161,7 @@ const registryRequestMetadata = (method, url) => ({
|
|
|
177
161
|
*
|
|
178
162
|
* @experimental This API is unstable and may change without notice.
|
|
179
163
|
*/
|
|
180
|
-
export const createRemoteRegistryClient = (baseUrl, httpClient) => {
|
|
164
|
+
export const createRemoteRegistryClient = (baseUrl, httpClient, archiveCache) => {
|
|
181
165
|
const remoteHttpClient = httpClient.pipe(HttpClient.mapRequest(HttpClientRequest.prependUrl(baseUrl)));
|
|
182
166
|
const client = GeneratedRegistryClient.make(remoteHttpClient);
|
|
183
167
|
// ---------------------------------------------------------------------------
|
|
@@ -187,7 +171,7 @@ export const createRemoteRegistryClient = (baseUrl, httpClient) => {
|
|
|
187
171
|
// ---------------------------------------------------------------------------
|
|
188
172
|
// getLibrary
|
|
189
173
|
// ---------------------------------------------------------------------------
|
|
190
|
-
const getLibrary = (args) => client.
|
|
174
|
+
const getLibrary = (args) => client.LibrariesGetLibraryResolution(args.owner, args.name, undefined).pipe(Effect.map((response) => Option.some(mapToLibraryDetail(response))), Effect.catch((e) => mapLibraryErrorWithNotFound(e)));
|
|
191
175
|
/**
|
|
192
176
|
* Map discovery errors, treating 404 as Option.none().
|
|
193
177
|
*/
|
|
@@ -199,7 +183,7 @@ export const createRemoteRegistryClient = (baseUrl, httpClient) => {
|
|
|
199
183
|
return Effect.fail(mapDiscoveryError(e, prefix));
|
|
200
184
|
};
|
|
201
185
|
const mapLibraryErrorWithNotFound = (e) => {
|
|
202
|
-
if (isRegistryClientError("
|
|
186
|
+
if (isRegistryClientError("LibrariesGetLibraryResolution404")(e)) {
|
|
203
187
|
return Effect.succeed(Option.none());
|
|
204
188
|
}
|
|
205
189
|
return Effect.fail(mapDiscoveryError(e, "REGISTRY_REMOTE_DISCOVERY"));
|
|
@@ -345,23 +329,35 @@ export const createRemoteRegistryClient = (baseUrl, httpClient) => {
|
|
|
345
329
|
.pipe(Effect.mapError((e) => mapPackageFetchError(e)));
|
|
346
330
|
const index = mapToExtensionIndex(indexResult);
|
|
347
331
|
// Step 2: Resolve version
|
|
348
|
-
const
|
|
349
|
-
|
|
350
|
-
onSome: (requested) => index.versions.some((entry) => entry.version === requested)
|
|
351
|
-
? Option.some(requested)
|
|
352
|
-
: Option.none(),
|
|
353
|
-
});
|
|
354
|
-
if (Option.isNone(resolvedVersion)) {
|
|
332
|
+
const resolvedEntry = resolveVersionEntry(index.versions, args.version);
|
|
333
|
+
if (Option.isNone(resolvedEntry)) {
|
|
355
334
|
return yield* makeAppError({
|
|
356
335
|
code: "not_found",
|
|
357
336
|
detail: "Requested package version is not available in remote index",
|
|
358
337
|
});
|
|
359
338
|
}
|
|
339
|
+
if (archiveCache !== undefined) {
|
|
340
|
+
const cached = yield* archiveCache.read(resolvedEntry.value.integrity);
|
|
341
|
+
if (Option.isSome(cached)) {
|
|
342
|
+
const warnings = extensionLifecycleWarnings(index, resolvedEntry.value);
|
|
343
|
+
return {
|
|
344
|
+
archive: cached.value,
|
|
345
|
+
...(warnings.length === 0 ? {} : { warnings }),
|
|
346
|
+
};
|
|
347
|
+
}
|
|
348
|
+
}
|
|
360
349
|
// Step 3: Download archive
|
|
361
350
|
const archive = yield* client
|
|
362
|
-
.ExtensionsDownloadArchive(args.owner, pluralizeType(args.type), args.name,
|
|
351
|
+
.ExtensionsDownloadArchive(args.owner, pluralizeType(args.type), args.name, resolvedEntry.value.version, undefined)
|
|
363
352
|
.pipe(Effect.mapError((e) => mapArchiveFetchError(e)));
|
|
364
|
-
|
|
353
|
+
if (archiveCache !== undefined) {
|
|
354
|
+
yield* archiveCache.write(resolvedEntry.value.integrity, archive);
|
|
355
|
+
}
|
|
356
|
+
const warnings = extensionLifecycleWarnings(index, resolvedEntry.value);
|
|
357
|
+
return {
|
|
358
|
+
archive,
|
|
359
|
+
...(warnings.length === 0 ? {} : { warnings }),
|
|
360
|
+
};
|
|
365
361
|
});
|
|
366
362
|
/**
|
|
367
363
|
* Map errors from the index fetch step of getExtensionPackage.
|
|
@@ -445,20 +441,22 @@ export const createRemoteRegistryClient = (baseUrl, httpClient) => {
|
|
|
445
441
|
const networkSuggestions = buildNetworkSuggestions(baseUrl);
|
|
446
442
|
const networkDiagnosisDetails = buildNetworkDiagnosis(baseUrl);
|
|
447
443
|
const publishRequest = registryRequestMetadata("PUT", new URL(`/v1/extensions/${args.owner}/${pluralizeType(args.type)}/${args.name}/${args.version}`, baseUrl).href);
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
})
|
|
444
|
+
const contentDigest = args.metadata.integrity.startsWith("sha512-")
|
|
445
|
+
? `sha-512=:${args.metadata.integrity.slice("sha512-".length)}:`
|
|
446
|
+
: args.metadata.integrity;
|
|
447
|
+
const publishClient = GeneratedRegistryClient.make(remoteHttpClient, {
|
|
448
|
+
transformClient: (baseClient) => Effect.succeed(baseClient.pipe(HttpClient.mapRequest((request) => {
|
|
449
|
+
const archiveRequest = request.pipe(HttpClientRequest.bodyUint8Array(args.archive, "application/zip"), HttpClientRequest.setHeaders({
|
|
450
|
+
"content-digest": contentDigest,
|
|
451
|
+
"content-length": String(args.archive.byteLength),
|
|
452
|
+
}));
|
|
453
|
+
return args.accessToken === undefined
|
|
454
|
+
? archiveRequest
|
|
455
|
+
: HttpClientRequest.bearerToken(archiveRequest, args.accessToken);
|
|
456
|
+
}))),
|
|
457
|
+
});
|
|
458
|
+
return publishClient
|
|
459
|
+
.ExtensionsPublishVersion(args.owner, pluralizeType(args.type), args.name, args.version, undefined)
|
|
462
460
|
.pipe(Effect.map((response) => ({ published: true, links: response.links })),
|
|
463
461
|
// Single mapError handler for all error types to avoid error channel narrowing issues
|
|
464
462
|
Effect.mapError((e) => mapPublishError(e, networkSuggestions, networkDiagnosisDetails, publishRequest)));
|