@skaile/workspaces 0.38.0 → 0.40.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 +125 -0
- package/dist/{asset-feeds-W6JNAGNQ.js → asset-feeds-NOHUJ4XZ.js} +24 -6
- package/dist/asset-feeds-NOHUJ4XZ.js.map +1 -0
- package/dist/asset-manager/index.js +1 -1
- package/dist/{chunk-GL3MUJ5L.js → chunk-22Q5R7SM.js} +2 -2
- package/dist/{chunk-GL3MUJ5L.js.map → chunk-22Q5R7SM.js.map} +1 -1
- package/dist/{chunk-DQLRTCA2.js → chunk-3P7HBSSD.js} +43 -14
- package/dist/chunk-3P7HBSSD.js.map +1 -0
- package/dist/{chunk-6LW7Q53Z.js → chunk-6BEGKO2Q.js} +3 -3
- package/dist/{chunk-6LW7Q53Z.js.map → chunk-6BEGKO2Q.js.map} +1 -1
- package/dist/{chunk-KM6IWBDN.js → chunk-B5LHVPE2.js} +2 -2
- package/dist/{chunk-KM6IWBDN.js.map → chunk-B5LHVPE2.js.map} +1 -1
- package/dist/{chunk-A26MZ2GW.js → chunk-BGVQKQCP.js} +3 -3
- package/dist/{chunk-A26MZ2GW.js.map → chunk-BGVQKQCP.js.map} +1 -1
- package/dist/{chunk-P7CIT445.js → chunk-C5UK3JK7.js} +21 -14
- package/dist/chunk-C5UK3JK7.js.map +1 -0
- package/dist/{chunk-ZDKJHQY2.js → chunk-JXT46QFC.js} +2 -2
- package/dist/{chunk-ZDKJHQY2.js.map → chunk-JXT46QFC.js.map} +1 -1
- package/dist/{chunk-UAYAK7N4.js → chunk-O66LT7UI.js} +49 -3
- package/dist/chunk-O66LT7UI.js.map +1 -0
- package/dist/{chunk-OW32SQU3.js → chunk-RM2KAMGD.js} +243 -80
- package/dist/chunk-RM2KAMGD.js.map +1 -0
- package/dist/{chunk-O4PANZI2.js → chunk-XNMABEHH.js} +3 -3
- package/dist/{chunk-O4PANZI2.js.map → chunk-XNMABEHH.js.map} +1 -1
- package/dist/{chunk-6KKNROBU.js → chunk-XZNPKJXU.js} +4 -4
- package/dist/{chunk-6KKNROBU.js.map → chunk-XZNPKJXU.js.map} +1 -1
- package/dist/cli/index.js +30 -26
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/src/asset-feeds.d.ts +8 -5
- package/dist/cli/src/asset-feeds.d.ts.map +1 -1
- package/dist/cli/src/commands/manage.d.ts +6 -5
- package/dist/cli/src/commands/manage.d.ts.map +1 -1
- package/dist/cli/src/commands/source.d.ts +8 -0
- package/dist/cli/src/commands/source.d.ts.map +1 -1
- package/dist/connectors/index.js +2 -2
- package/dist/connectors/rclone.js +1 -1
- package/dist/connectors/src/connector-manager.d.ts +1 -1
- package/dist/connectors/src/connector-manager.d.ts.map +1 -1
- package/dist/connectors/src/connector-types.d.ts +5 -1
- package/dist/connectors/src/connector-types.d.ts.map +1 -1
- package/dist/connectors/src/rclone-process-manager.d.ts +9 -0
- package/dist/connectors/src/rclone-process-manager.d.ts.map +1 -1
- package/dist/discovery/index.js +2 -2
- package/dist/{ensure-sources-AGORTKJC.js → ensure-sources-XITKRBLU.js} +5 -5
- package/dist/{ensure-sources-AGORTKJC.js.map → ensure-sources-XITKRBLU.js.map} +1 -1
- package/dist/factory-assets/connectors/deploy.js +2 -2
- package/dist/factory-assets/connectors/devserver.js +2 -2
- package/dist/factory-assets/connectors/flow/adapter.js +2 -2
- package/dist/factory-assets/connectors/flow/run-flow.js +3 -3
- package/dist/factory-assets/connectors/flow.js +2 -2
- package/dist/factory-assets/connectors/git/driver.d.ts +3 -0
- package/dist/factory-assets/connectors/git/driver.d.ts.map +1 -1
- package/dist/factory-assets/connectors/git.js +2 -2
- package/dist/factory-assets/connectors/gmail.js +2 -2
- package/dist/factory-assets/connectors/googledrive.js +2 -2
- package/dist/factory-assets/connectors/local.js +2 -2
- package/dist/factory-assets/connectors/mattermost.js +2 -2
- package/dist/factory-assets/connectors/memory.js +2 -2
- package/dist/factory-assets/connectors/minio.js +2 -2
- package/dist/factory-assets/connectors/postgres/adapter.d.ts.map +1 -1
- package/dist/factory-assets/connectors/postgres.js +2 -2
- package/dist/factory-assets/connectors/s3.js +2 -2
- package/dist/factory-assets/connectors/sharepoint.js +2 -2
- package/dist/factory-assets/connectors/sqlite.js +2 -2
- package/dist/factory-assets/connectors/static-server.js +2 -2
- package/dist/factory-assets/connectors/tunnel.js +2 -2
- package/dist/factory-assets/connectors/webdav.js +2 -2
- package/dist/factory-assets/connectors/xstate-store.js +2 -2
- package/dist/factory-assets/connectors/xstate.js +2 -2
- package/dist/library/index.js +3 -3
- package/dist/library/src/remote/remote-catalog-source.d.ts +11 -1
- package/dist/library/src/remote/remote-catalog-source.d.ts.map +1 -1
- package/dist/{open-library-WTN7QLN7.js → open-library-5KJOZHG7.js} +6 -6
- package/dist/{open-library-WTN7QLN7.js.map → open-library-5KJOZHG7.js.map} +1 -1
- package/dist/plugins/index.js +1 -1
- package/dist/plugins/src/catalog-source.d.ts +52 -0
- package/dist/plugins/src/catalog-source.d.ts.map +1 -1
- package/dist/plugins/src/index.d.ts +1 -1
- package/dist/plugins/src/index.d.ts.map +1 -1
- package/dist/runner/index.js +4 -4
- package/dist/runner/src/ai-credential-refresh.d.ts +55 -23
- package/dist/runner/src/ai-credential-refresh.d.ts.map +1 -1
- package/dist/runner/src/ai-credential-retry.d.ts +79 -0
- package/dist/runner/src/ai-credential-retry.d.ts.map +1 -0
- package/dist/runner/src/credential-rotated.d.ts +33 -0
- package/dist/runner/src/credential-rotated.d.ts.map +1 -0
- package/dist/runner/src/resource-handler.d.ts +6 -0
- package/dist/runner/src/resource-handler.d.ts.map +1 -1
- package/dist/runner/src/runner-capabilities.d.ts +8 -0
- package/dist/runner/src/runner-capabilities.d.ts.map +1 -1
- package/dist/runner/src/serve-credentials.d.ts +14 -0
- package/dist/runner/src/serve-credentials.d.ts.map +1 -1
- package/dist/runner/src/serve.d.ts.map +1 -1
- package/dist/runner/src/session-resource-handlers.d.ts +4 -1
- package/dist/runner/src/session-resource-handlers.d.ts.map +1 -1
- package/dist/sdk/asset-manager.js +1 -1
- package/dist/sdk/index.js +4 -4
- package/dist/sdk/runner.js +4 -4
- package/dist/secrets/index.js +2 -2
- package/dist/tui/index.js +4 -4
- package/dist/workspace-plugin/index.js +1 -1
- package/package.json +1 -1
- package/dist/asset-feeds-W6JNAGNQ.js.map +0 -1
- package/dist/chunk-DQLRTCA2.js.map +0 -1
- package/dist/chunk-OW32SQU3.js.map +0 -1
- package/dist/chunk-P7CIT445.js.map +0 -1
- package/dist/chunk-UAYAK7N4.js.map +0 -1
package/dist/library/index.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
export { AssignmentNotFoundError, CatalogCache, CatalogConfigSchema, CatalogHttpError, DuplicateAssignmentError, DuplicateLibraryNameError, GitSyncDriver, InstanceHasConsumersError, InstanceNotFoundError, InterpolationError, KNOWN_ASSET_KINDS, KnowledgeManifestSchema, LIBRARY_BACKENDS, LIBRARY_OWNERSHIPS, LIBRARY_STRUCTURES, LOCAL_CATALOG_URL, LibraryConfigSchema, LibraryError, LibraryInstanceRefSchema, LibraryManager, LibrarySectionSchema, LibrarySyncError, LocalCatalogSource, LocalIndex, LocalSyncDriver, LockAssignmentSchema, LockFileSchema, OfflineError, OperationNotPermittedError, PIN_POLICIES, PinPolicySchema, PresetAppliedSchema, PresetExpandedSchema, RemoteCatalogSource, RequiresEdgeSchema, RestCatalogSource, SidecarGit, SkaileConfigSchema, SourceNotFoundError, TarballHashMismatchError, UserLibraryNotFoundError, WorkspaceConfigV2Schema, applyNonStructuralUpgrade, applyPreset, applyPresetFromData, classifyRef, createEmptyLockFile, deriveSlug, detectChanges, detectNestedPresetRefs, detectWorkspaceVersion, evaluateUpgrade, extractLibraryInstanceId, extractReferencedKeys, filterKey, getConfigDefaults, getDefaultValue, getSidecarRoot, getStoreManifestsDir, getStoreRoot, hasInterpolationTokens, interpolate, isLocalCatalogUrl, isSecretPlaceholder, knowledgeKindProvider, listSidecarSlugsOnDisk, loadLockFile, loadWorkspaceV2, migrateSidecarsToStoreIfNeeded, migrateWorkspaceConfig, parsePreset, parsePresetYaml, parseWorkspaceV2, projectConfigPath, queryInstancePickerChoices, resolveAllItems, resolveConfig, resolveIndexPath, resolveItem, resolveLibraryDir, resolvePin, resolveSidecarPaths, saveConfig, saveLockFile, saveWorkspaceV2, sha256Hex, skaileHomeDir, storeSecrets, trpcGetUrl, userConfigPath, validateAllPlaceholders, validateKnowledge, validateNestingDepth, validatePlaceholder, writeManifestIfMissing } from '../chunk-
|
|
2
|
-
import '../chunk-
|
|
1
|
+
export { AssignmentNotFoundError, CatalogCache, CatalogConfigSchema, CatalogHttpError, DuplicateAssignmentError, DuplicateLibraryNameError, GitSyncDriver, InstanceHasConsumersError, InstanceNotFoundError, InterpolationError, KNOWN_ASSET_KINDS, KnowledgeManifestSchema, LIBRARY_BACKENDS, LIBRARY_OWNERSHIPS, LIBRARY_STRUCTURES, LOCAL_CATALOG_URL, LibraryConfigSchema, LibraryError, LibraryInstanceRefSchema, LibraryManager, LibrarySectionSchema, LibrarySyncError, LocalCatalogSource, LocalIndex, LocalSyncDriver, LockAssignmentSchema, LockFileSchema, OfflineError, OperationNotPermittedError, PIN_POLICIES, PinPolicySchema, PresetAppliedSchema, PresetExpandedSchema, RemoteCatalogSource, RequiresEdgeSchema, RestCatalogSource, SidecarGit, SkaileConfigSchema, SourceNotFoundError, TarballHashMismatchError, UserLibraryNotFoundError, WorkspaceConfigV2Schema, applyNonStructuralUpgrade, applyPreset, applyPresetFromData, classifyRef, createEmptyLockFile, deriveSlug, detectChanges, detectNestedPresetRefs, detectWorkspaceVersion, evaluateUpgrade, extractLibraryInstanceId, extractReferencedKeys, filterKey, getConfigDefaults, getDefaultValue, getSidecarRoot, getStoreManifestsDir, getStoreRoot, hasInterpolationTokens, interpolate, isLocalCatalogUrl, isSecretPlaceholder, knowledgeKindProvider, listSidecarSlugsOnDisk, loadLockFile, loadWorkspaceV2, migrateSidecarsToStoreIfNeeded, migrateWorkspaceConfig, parsePreset, parsePresetYaml, parseWorkspaceV2, projectConfigPath, queryInstancePickerChoices, resolveAllItems, resolveConfig, resolveIndexPath, resolveItem, resolveLibraryDir, resolvePin, resolveSidecarPaths, saveConfig, saveLockFile, saveWorkspaceV2, sha256Hex, skaileHomeDir, storeSecrets, trpcGetUrl, userConfigPath, validateAllPlaceholders, validateKnowledge, validateNestingDepth, validatePlaceholder, writeManifestIfMissing } from '../chunk-O66LT7UI.js';
|
|
2
|
+
import '../chunk-XNMABEHH.js';
|
|
3
3
|
export { installFromManifest } from '../chunk-KYC6JH75.js';
|
|
4
4
|
export { GITHUB_PAT_ENV, fetchAssetFilesFromGitHub } from '../chunk-R7FOF242.js';
|
|
5
|
-
import '../chunk-
|
|
5
|
+
import '../chunk-JXT46QFC.js';
|
|
6
6
|
import '../chunk-FBIQ4QPF.js';
|
|
7
7
|
import '../chunk-CFCSDZYF.js';
|
|
8
8
|
import '../chunk-HL66R2P2.js';
|
|
@@ -33,7 +33,7 @@
|
|
|
33
33
|
*
|
|
34
34
|
* @docLink packages/library/api-reference#remote-catalog-source
|
|
35
35
|
*/
|
|
36
|
-
import type { CatalogAsset, CatalogAssetFilter, CatalogSourceInfo, ICatalogSource } from "@skaile/workspaces/plugins";
|
|
36
|
+
import type { CatalogAsset, CatalogAssetFilter, CatalogDomain, CatalogDomainFilter, CatalogSourceInfo, ICatalogSource } from "@skaile/workspaces/plugins";
|
|
37
37
|
import type { InstallManifest } from "@skaile/workspaces/types";
|
|
38
38
|
import { CatalogCache } from "./cache.js";
|
|
39
39
|
/**
|
|
@@ -164,6 +164,16 @@ export declare class RemoteCatalogSource implements ICatalogSource {
|
|
|
164
164
|
* is single-Source per spec; multi-source federation is Phase 4.8.
|
|
165
165
|
*/
|
|
166
166
|
listSources(): Promise<CatalogSourceInfo[]>;
|
|
167
|
+
/**
|
|
168
|
+
* List navigational domains via `GET /trpc/catalog.listDomains`. Display-only,
|
|
169
|
+
* so this **never throws**: a missing endpoint (older store → 404), a transport
|
|
170
|
+
* error, or a malformed payload all degrade to `[]` rather than jeopardize the
|
|
171
|
+
* asset feed this call accompanies. Air-gapped mode returns `[]` (domains are
|
|
172
|
+
* not part of the offline cache in v1).
|
|
173
|
+
*
|
|
174
|
+
* Not cached — domains are read once per `skaile manage` open and are cheap.
|
|
175
|
+
*/
|
|
176
|
+
listDomains(filter?: CatalogDomainFilter): Promise<CatalogDomain[]>;
|
|
167
177
|
/**
|
|
168
178
|
* Force a metadata-cache refresh. Wipes all resolve/list entries and
|
|
169
179
|
* re-fetches `listAssets()` (no filter) to pre-warm the canonical query.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"remote-catalog-source.d.ts","sourceRoot":"","sources":["../../../../library/src/remote/remote-catalog-source.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AAGH,OAAO,KAAK,EACV,YAAY,EACZ,kBAAkB,EAClB,iBAAiB,
|
|
1
|
+
{"version":3,"file":"remote-catalog-source.d.ts","sourceRoot":"","sources":["../../../../library/src/remote/remote-catalog-source.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AAGH,OAAO,KAAK,EACV,YAAY,EACZ,kBAAkB,EAClB,aAAa,EACb,mBAAmB,EACnB,iBAAiB,EAEjB,cAAc,EACf,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAEhE,OAAO,EAAE,YAAY,EAAuC,MAAM,YAAY,CAAC;AAM/E;;;;GAIG;AACH,MAAM,MAAM,UAAU,GAAG,CACvB,GAAG,EAAE,MAAM,EACX,IAAI,CAAC,EAAE;IACL,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,QAAQ,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,OAAO,CAAC;CAC1C,KACE,OAAO,CAAC,QAAQ,CAAC,CAAC;AAEvB;;;;GAIG;AACH,MAAM,WAAW,0BAA0B;IACzC,oGAAoG;IACpG,OAAO,EAAE,MAAM,CAAC;IAChB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,kCAAkC;IAClC,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,2EAA2E;IAC3E,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,gCAAgC;IAChC,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;IACnB,2GAA2G;IAC3G,KAAK,CAAC,EAAE,YAAY,CAAC;IACrB;;;OAGG;IACH,sBAAsB,CAAC,EAAE,OAAO,CAAC;CAClC;AAED;;;;;;GAMG;AACH,qBAAa,wBAAyB,SAAQ,KAAK;aAE/B,QAAQ,EAAE,MAAM;aAChB,MAAM,EAAE,MAAM;gBADd,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM;CAKjC;AAED;;;;;;GAMG;AACH,qBAAa,YAAa,SAAQ,KAAK;gBACzB,OAAO,EAAE,MAAM;CAI5B;AAED;;;;;GAKG;AACH,qBAAa,gBAAiB,SAAQ,KAAK;aAGvB,MAAM,EAAE,MAAM;aACd,GAAG,CAAC,EAAE,MAAM;gBAF5B,OAAO,EAAE,MAAM,EACC,MAAM,EAAE,MAAM,EACd,GAAG,CAAC,EAAE,MAAM,YAAA;CAK/B;AAQD;;;;;GAKG;AACH,qBAAa,mBAAoB,YAAW,cAAc;IACxD,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,KAAK,EAAE,YAAY,CAAC;IAC7B,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAa;IACxC,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAAU;IACjD,sFAAsF;IACtF,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAoC;gBAEjD,IAAI,EAAE,0BAA0B;IAiB5C;;;;;;;OAOG;IACG,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;IAoBxD;;;;;;;OAOG;IACG,UAAU,CAAC,MAAM,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAoBtE;;;;;;;;;;OAUG;IACG,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IAkCrE;;;;;OAKG;IACG,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAgBlD;;;OAGG;IACG,WAAW,IAAI,OAAO,CAAC,iBAAiB,EAAE,CAAC;IAIjD;;;;;;;;OAQG;IACG,WAAW,CAAC,MAAM,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;IAoBzE;;;;;;;;;OASG;IACG,OAAO,IAAI,OAAO,CAAC;QAAE,YAAY,EAAE,MAAM,CAAA;KAAE,CAAC;IAYlD;;;;;;;;;;;;;;;;;;;OAmBG;IACG,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC;IAwB/D;;;;;;;;;;;;;OAaG;IACG,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAiCzE;;;OAGG;IACG,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC;IAQxC,OAAO,CAAC,kBAAkB;YAkBZ,oBAAoB;YAMpB,iBAAiB;IAM/B,gEAAgE;YAClD,mBAAmB;IAkBjC,iEAAiE;YACnD,gBAAgB;CAwB/B;AAMD;;;;;;;;;;;;GAYG;AACH,wBAAgB,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,MAAM,CAGrF"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
export { openCatalogSource, openLibrary, openLibraryManager, resolveCatalogSource } from './chunk-
|
|
1
|
+
export { openCatalogSource, openLibrary, openLibraryManager, resolveCatalogSource } from './chunk-XZNPKJXU.js';
|
|
2
2
|
import './chunk-GYPA2Q7F.js';
|
|
3
|
-
import './chunk-
|
|
4
|
-
import './chunk-
|
|
3
|
+
import './chunk-O66LT7UI.js';
|
|
4
|
+
import './chunk-XNMABEHH.js';
|
|
5
5
|
import './chunk-KYC6JH75.js';
|
|
6
6
|
import './chunk-R7FOF242.js';
|
|
7
|
-
import './chunk-
|
|
7
|
+
import './chunk-JXT46QFC.js';
|
|
8
8
|
import './chunk-X46FY45B.js';
|
|
9
9
|
import './chunk-FBIQ4QPF.js';
|
|
10
10
|
import './chunk-CFCSDZYF.js';
|
|
@@ -19,5 +19,5 @@ import './chunk-ZAP2BDHG.js';
|
|
|
19
19
|
import './chunk-JB35MVBN.js';
|
|
20
20
|
import './chunk-HRKB2ATT.js';
|
|
21
21
|
import './chunk-NSBPE2FW.js';
|
|
22
|
-
//# sourceMappingURL=open-library-
|
|
23
|
-
//# sourceMappingURL=open-library-
|
|
22
|
+
//# sourceMappingURL=open-library-5KJOZHG7.js.map
|
|
23
|
+
//# sourceMappingURL=open-library-5KJOZHG7.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":[],"names":[],"mappings":"","file":"open-library-
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"open-library-5KJOZHG7.js"}
|
package/dist/plugins/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { AssetKindConflictError, AssetKindPathAmbiguityError, AssetKindPatternConflictError, AssetKindRegistryFrozenError, ProviderUnavailableError, SecretAccessDeniedError, SecretExpiredError, SecretNotFoundError, SecretsError, VERSION } from '../chunk-
|
|
1
|
+
export { AssetKindConflictError, AssetKindPathAmbiguityError, AssetKindPatternConflictError, AssetKindRegistryFrozenError, ProviderUnavailableError, SecretAccessDeniedError, SecretExpiredError, SecretNotFoundError, SecretsError, VERSION } from '../chunk-JXT46QFC.js';
|
|
2
2
|
import '../chunk-NSBPE2FW.js';
|
|
3
3
|
//# sourceMappingURL=index.js.map
|
|
4
4
|
//# sourceMappingURL=index.js.map
|
|
@@ -53,6 +53,47 @@ export interface CatalogAssetFilter {
|
|
|
53
53
|
/** Prefix match on the full `<publisher>/<name>` ref. */
|
|
54
54
|
prefix?: string;
|
|
55
55
|
}
|
|
56
|
+
/**
|
|
57
|
+
* How the members of a navigational domain relate. Display-only hint — never an
|
|
58
|
+
* install-all bundle. Mirrors the discovery library's `DomainRelation`.
|
|
59
|
+
*/
|
|
60
|
+
export type DomainRelation = "additions" | "alternatives" | "sequence";
|
|
61
|
+
/**
|
|
62
|
+
* Display-only metadata for a navigational domain (from a sidecar `DOMAIN.md`,
|
|
63
|
+
* surfaced by the store's `catalog.listDomains`). Joined to assets via
|
|
64
|
+
* {@link CatalogAsset.domainSlug}. A domain groups assets for co-discovery; it
|
|
65
|
+
* is never part of asset identity and never bulk-installs.
|
|
66
|
+
*
|
|
67
|
+
* Defined inline (structurally compatible with `core`'s `CatalogDomain`) to keep
|
|
68
|
+
* `plugins` a zero-dependency leaf package.
|
|
69
|
+
*/
|
|
70
|
+
export interface CatalogDomain {
|
|
71
|
+
/** Stable slug — the join key to {@link CatalogAsset.domainSlug}. */
|
|
72
|
+
slug: string;
|
|
73
|
+
/** Human-readable title (may change without breaking the slug join). */
|
|
74
|
+
title: string;
|
|
75
|
+
/** Free-text description from the `DOMAIN.md` body. */
|
|
76
|
+
description?: string;
|
|
77
|
+
/** How members relate — drives sort + per-asset glyph, not installs. */
|
|
78
|
+
relation?: DomainRelation;
|
|
79
|
+
/** Display order among a publisher's domains (ascending). */
|
|
80
|
+
order?: number;
|
|
81
|
+
/** `kind:name` ref of the recommended member (alternatives domains). */
|
|
82
|
+
recommendedRef?: string;
|
|
83
|
+
/** Sidecar provenance — `"<org>/<repo>"` the `DOMAIN.md` was authored in. */
|
|
84
|
+
sidecarSource?: string;
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* Optional filter passed to {@link ICatalogSource.listDomains}.
|
|
88
|
+
*
|
|
89
|
+
* @docLink packages/workspace-plugin/index#plugin-interfaces
|
|
90
|
+
*/
|
|
91
|
+
export interface CatalogDomainFilter {
|
|
92
|
+
/** Restrict to domains whose Source has a published asset under this publisher. */
|
|
93
|
+
publisher?: string;
|
|
94
|
+
/** Restrict to a single Source id. */
|
|
95
|
+
source?: string;
|
|
96
|
+
}
|
|
56
97
|
/**
|
|
57
98
|
* Descriptor returned by {@link ICatalogSource.listSources}.
|
|
58
99
|
*
|
|
@@ -106,5 +147,16 @@ export interface ICatalogSource {
|
|
|
106
147
|
fetchTarball(ref: string, sha256: string): Promise<Uint8Array>;
|
|
107
148
|
/** List registered sources. */
|
|
108
149
|
listSources(): Promise<CatalogSourceInfo[]>;
|
|
150
|
+
/**
|
|
151
|
+
* List navigational domains (display-only groupings from sidecar `DOMAIN.md`),
|
|
152
|
+
* optionally narrowed by publisher and/or source id.
|
|
153
|
+
*
|
|
154
|
+
* **Optional** — sources that don't model domains (local libraries, older
|
|
155
|
+
* stores, REST framings without the endpoint) omit it; consumers treat its
|
|
156
|
+
* absence (or `[]`) identically as "no domains". Display-only, so an
|
|
157
|
+
* implementation should degrade to `[]` on transport error rather than throw,
|
|
158
|
+
* to never jeopardize the asset feed it accompanies.
|
|
159
|
+
*/
|
|
160
|
+
listDomains?(filter?: CatalogDomainFilter): Promise<CatalogDomain[]>;
|
|
109
161
|
}
|
|
110
162
|
//# sourceMappingURL=catalog-source.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"catalog-source.d.ts","sourceRoot":"","sources":["../../../plugins/src/catalog-source.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAMH;;;;;;;;GAQG;AACH,MAAM,WAAW,YAAY;IAC3B,qDAAqD;IACrD,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gDAAgD;IAChD,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAED;;;;;;GAMG;AACH,MAAM,WAAW,kBAAkB;IACjC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,yDAAyD;IACzD,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;CACb;AAMD;;;;;;;;;GASG;AACH,MAAM,WAAW,cAAc;IAC7B,sEAAsE;IACtE,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IAEpB,gFAAgF;IAChF,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC;IAEnD,+CAA+C;IAC/C,UAAU,CAAC,MAAM,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;IAEjE;;;;;;;;;;;OAWG;IACH,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAE7C;;;;;;;OAOG;IACH,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IAE/D,+BAA+B;IAC/B,WAAW,IAAI,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"catalog-source.d.ts","sourceRoot":"","sources":["../../../plugins/src/catalog-source.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAMH;;;;;;;;GAQG;AACH,MAAM,WAAW,YAAY;IAC3B,qDAAqD;IACrD,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gDAAgD;IAChD,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAED;;;;;;GAMG;AACH,MAAM,WAAW,kBAAkB;IACjC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,yDAAyD;IACzD,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;GAGG;AACH,MAAM,MAAM,cAAc,GAAG,WAAW,GAAG,cAAc,GAAG,UAAU,CAAC;AAEvE;;;;;;;;GAQG;AACH,MAAM,WAAW,aAAa;IAC5B,qEAAqE;IACrE,IAAI,EAAE,MAAM,CAAC;IACb,wEAAwE;IACxE,KAAK,EAAE,MAAM,CAAC;IACd,uDAAuD;IACvD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,wEAAwE;IACxE,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,6DAA6D;IAC7D,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,wEAAwE;IACxE,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,6EAA6E;IAC7E,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;;;GAIG;AACH,MAAM,WAAW,mBAAmB;IAClC,mFAAmF;IACnF,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,sCAAsC;IACtC,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;CACb;AAMD;;;;;;;;;GASG;AACH,MAAM,WAAW,cAAc;IAC7B,sEAAsE;IACtE,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IAEpB,gFAAgF;IAChF,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC;IAEnD,+CAA+C;IAC/C,UAAU,CAAC,MAAM,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;IAEjE;;;;;;;;;;;OAWG;IACH,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAE7C;;;;;;;OAOG;IACH,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IAE/D,+BAA+B;IAC/B,WAAW,IAAI,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAAC;IAE5C;;;;;;;;;OASG;IACH,WAAW,CAAC,CAAC,MAAM,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC,CAAC;CACtE"}
|
|
@@ -2,7 +2,7 @@ export declare const VERSION = "0.0.0";
|
|
|
2
2
|
export type { AssetKindFileFilter, AssetKindRequiresEdge, IAssetKindProvider, } from "./asset-kind-provider.js";
|
|
3
3
|
export type { IAssetKindRegistry } from "./asset-kind-registry.js";
|
|
4
4
|
export { AssetKindConflictError, AssetKindPathAmbiguityError, AssetKindPatternConflictError, AssetKindRegistryFrozenError, } from "./asset-kind-registry.js";
|
|
5
|
-
export type { CatalogAsset, CatalogAssetFilter, CatalogSourceInfo, ICatalogSource, } from "./catalog-source.js";
|
|
5
|
+
export type { CatalogAsset, CatalogAssetFilter, CatalogDomain, CatalogDomainFilter, CatalogSourceInfo, DomainRelation, ICatalogSource, } from "./catalog-source.js";
|
|
6
6
|
export type { ISecretsProvider, ListFilter, ProviderCapabilities, SecretMetadata, SetSecretOptions, } from "./secrets-provider.js";
|
|
7
7
|
export { ProviderUnavailableError, SecretAccessDeniedError, SecretExpiredError, SecretNotFoundError, SecretsError, } from "./secrets-provider.js";
|
|
8
8
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../plugins/src/index.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,OAAO,UAAU,CAAC;AAG/B,YAAY,EACV,mBAAmB,EACnB,qBAAqB,EACrB,kBAAkB,GACnB,MAAM,0BAA0B,CAAC;AAClC,YAAY,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAEnE,OAAO,EACL,sBAAsB,EACtB,2BAA2B,EAC3B,6BAA6B,EAC7B,4BAA4B,GAC7B,MAAM,0BAA0B,CAAC;AAElC,YAAY,EACV,YAAY,EACZ,kBAAkB,EAClB,iBAAiB,EACjB,cAAc,GACf,MAAM,qBAAqB,CAAC;AAE7B,YAAY,EACV,gBAAgB,EAChB,UAAU,EACV,oBAAoB,EACpB,cAAc,EACd,gBAAgB,GACjB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EACL,wBAAwB,EACxB,uBAAuB,EACvB,kBAAkB,EAClB,mBAAmB,EACnB,YAAY,GACb,MAAM,uBAAuB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../plugins/src/index.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,OAAO,UAAU,CAAC;AAG/B,YAAY,EACV,mBAAmB,EACnB,qBAAqB,EACrB,kBAAkB,GACnB,MAAM,0BAA0B,CAAC;AAClC,YAAY,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAEnE,OAAO,EACL,sBAAsB,EACtB,2BAA2B,EAC3B,6BAA6B,EAC7B,4BAA4B,GAC7B,MAAM,0BAA0B,CAAC;AAElC,YAAY,EACV,YAAY,EACZ,kBAAkB,EAClB,aAAa,EACb,mBAAmB,EACnB,iBAAiB,EACjB,cAAc,EACd,cAAc,GACf,MAAM,qBAAqB,CAAC;AAE7B,YAAY,EACV,gBAAgB,EAChB,UAAU,EACV,oBAAoB,EACpB,cAAc,EACd,gBAAgB,GACjB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EACL,wBAAwB,EACxB,uBAAuB,EACvB,kBAAkB,EAClB,mBAAmB,EACnB,YAAY,GACb,MAAM,uBAAuB,CAAC"}
|
package/dist/runner/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
export { CLAUDE_CODE_CREDENTIALS_KEY, COMPILE_MANIFEST_FILENAME, CapabilityRegistry, DEFAULT_CAPABILITY_CALL_TIMEOUT_MS, DEFAULT_COALESCE_MS, MarkdownStreamer, PreInitRingSink, agentDefinitionExists, bootstrapCapabilityRegistry, bootstrapRunnerLogStore, buildAgentResources, buildClientCapabilityHandler, buildContextSection, buildEnvironmentSection, buildResourcesAvailablePayload, builtinCapabilities, clearPreInitRingSink, clearSession, compileComposition, computeCapabilitySignature, createAgentSession, createSessionStimulusBus, defineCapability, deleteSession, dispatchRunnerCapabilityInvocation, emitSystemPromptComposed, ensureGitConfigInclude, extractClaudeAiOauthExpiresAt, getPreInitRingSink, handleMountResourceRequest, handleResourceRequest, installPreInitRingSink, listSessions, loadAgentManifest, loadCompileManifest, loadCompileManifestFromDir, loadSession, loadSessionById, mcpAuthSecretKey, newSession, registerCompositionCapabilities, rejectCapabilityOnApprovalDeny, resetRunnerLogStore, resolveAgentComposition, resolveAgentMixins, resolveBinding, resolveCapabilityCallTimeoutMs, resolveCapabilityResult, resolveComposition, resolveMixin, runAgentChat, saveSession, setCurrentSession, startAgentServer, touchSession, writeClaudeCodeCredentialsFile } from '../chunk-
|
|
2
|
-
import '../chunk-
|
|
1
|
+
export { CLAUDE_CODE_CREDENTIALS_KEY, COMPILE_MANIFEST_FILENAME, CapabilityRegistry, DEFAULT_CAPABILITY_CALL_TIMEOUT_MS, DEFAULT_COALESCE_MS, MarkdownStreamer, PreInitRingSink, agentDefinitionExists, bootstrapCapabilityRegistry, bootstrapRunnerLogStore, buildAgentResources, buildClientCapabilityHandler, buildContextSection, buildEnvironmentSection, buildResourcesAvailablePayload, builtinCapabilities, clearPreInitRingSink, clearSession, compileComposition, computeCapabilitySignature, createAgentSession, createSessionStimulusBus, defineCapability, deleteSession, dispatchRunnerCapabilityInvocation, emitSystemPromptComposed, ensureGitConfigInclude, extractClaudeAiOauthExpiresAt, getPreInitRingSink, handleMountResourceRequest, handleResourceRequest, installPreInitRingSink, listSessions, loadAgentManifest, loadCompileManifest, loadCompileManifestFromDir, loadSession, loadSessionById, mcpAuthSecretKey, newSession, registerCompositionCapabilities, rejectCapabilityOnApprovalDeny, resetRunnerLogStore, resolveAgentComposition, resolveAgentMixins, resolveBinding, resolveCapabilityCallTimeoutMs, resolveCapabilityResult, resolveComposition, resolveMixin, runAgentChat, saveSession, setCurrentSession, startAgentServer, stripStaleHtmlTail, touchSession, writeClaudeCodeCredentialsFile } from '../chunk-RM2KAMGD.js';
|
|
2
|
+
import '../chunk-22Q5R7SM.js';
|
|
3
3
|
import '../chunk-X5YPJV4N.js';
|
|
4
4
|
import '../chunk-O7SG5PC2.js';
|
|
5
5
|
import '../chunk-7QBNJTTQ.js';
|
|
@@ -14,10 +14,10 @@ import '../chunk-BMQKMOQY.js';
|
|
|
14
14
|
import '../chunk-GAH4YRCI.js';
|
|
15
15
|
import '../chunk-KM6DCR7A.js';
|
|
16
16
|
import '../chunk-LV2HPH3C.js';
|
|
17
|
-
import '../chunk-
|
|
17
|
+
import '../chunk-3P7HBSSD.js';
|
|
18
18
|
import '../chunk-OVRSNIKJ.js';
|
|
19
19
|
import '../chunk-WLWHOA3S.js';
|
|
20
|
-
import '../chunk-
|
|
20
|
+
import '../chunk-C5UK3JK7.js';
|
|
21
21
|
import '../chunk-6E6PKKAD.js';
|
|
22
22
|
import '../chunk-X46FY45B.js';
|
|
23
23
|
import '../chunk-DEYYRFQU.js';
|
|
@@ -1,20 +1,10 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Proactive AI-credential refresh scheduler.
|
|
3
|
-
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
* `host.refresh_credential` itself; the caller threads that side-effect
|
|
9
|
-
* through `refresh`.
|
|
10
|
-
*
|
|
11
|
-
* Pairs with the bridge-side `failTurn` deferral that suppresses
|
|
12
|
-
* downstream auth-error events when a self-heal is about to run: the
|
|
13
|
-
* proactive timer is the primary prevention of in-container 401s, the
|
|
14
|
-
* reactive 401 path is the safety net.
|
|
15
|
-
*
|
|
16
|
-
* Spec: `_devlog/specs/2026-05-07-unified-credential-mediation.md`
|
|
17
|
-
* § "Proactive refresh" (added 2026-05-20).
|
|
2
|
+
* Proactive AI-credential refresh scheduler. Holds a single timer that fires
|
|
3
|
+
* `PROACTIVE_AI_REFRESH_MARGIN_MS` before the token expires and re-arms against
|
|
4
|
+
* the new expiry via the caller-supplied `refresh`. Pure logic — the caller
|
|
5
|
+
* threads the `host.refresh_credential` side-effect. Resilience model
|
|
6
|
+
* (transient bounded-retry, terminal stop, stale-guard, non-amplification on a
|
|
7
|
+
* shared seat) is documented in `runner/CLAUDE.md` § AI Credential Mediation.
|
|
18
8
|
*
|
|
19
9
|
* @docLink packages/runner/dev-guide#ai-credential-mediation
|
|
20
10
|
*/
|
|
@@ -25,21 +15,52 @@
|
|
|
25
15
|
* skew of a few seconds does not push the fire-time past expiry.
|
|
26
16
|
*/
|
|
27
17
|
export declare const PROACTIVE_AI_REFRESH_MARGIN_MS: number;
|
|
18
|
+
/**
|
|
19
|
+
* Stale-schedule guard window. After the bounded transient retries are
|
|
20
|
+
* exhausted the scheduler arms a single long timer this far out so a blip
|
|
21
|
+
* during a proactive fire cannot leave refresh idle indefinitely — the
|
|
22
|
+
* worst case becomes one degraded window, after which a fresh refresh is
|
|
23
|
+
* attempted. Also the threshold {@link AiCredentialRefreshScheduler.ensureArmed}
|
|
24
|
+
* uses to decide a previously-armed scheduler has gone stale.
|
|
25
|
+
*/
|
|
26
|
+
export declare const STALE_REARM_MS: number;
|
|
27
|
+
/**
|
|
28
|
+
* Outcome of a proactive refresh attempt, returned by the caller-supplied
|
|
29
|
+
* {@link AiCredentialRefreshDeps.refresh}:
|
|
30
|
+
*
|
|
31
|
+
* - `ok` — a fresh credential was minted; `expiresAt` is its ISO expiry, or
|
|
32
|
+
* `null` for a static token (no further refresh needed).
|
|
33
|
+
* - `transient` — a mediator/transport blip; the scheduler re-arms a bounded
|
|
34
|
+
* retry and ultimately a stale-schedule guard.
|
|
35
|
+
* - `terminal` — the credential/account is genuinely unusable; the scheduler
|
|
36
|
+
* stops re-arming and leaves the reactive 401 path as the safety net.
|
|
37
|
+
*/
|
|
38
|
+
export type AiRefreshOutcome = {
|
|
39
|
+
status: "ok";
|
|
40
|
+
expiresAt: string | null;
|
|
41
|
+
} | {
|
|
42
|
+
status: "transient";
|
|
43
|
+
} | {
|
|
44
|
+
status: "terminal";
|
|
45
|
+
};
|
|
28
46
|
/**
|
|
29
47
|
* Caller-supplied side effects the scheduler invokes.
|
|
30
48
|
*
|
|
31
|
-
* - `refresh()` runs the actual mint round-trip
|
|
32
|
-
*
|
|
33
|
-
*
|
|
34
|
-
* - `
|
|
49
|
+
* - `refresh()` runs the actual mint round-trip and classifies the result
|
|
50
|
+
* into an {@link AiRefreshOutcome}.
|
|
51
|
+
* - `log()` receives operator-facing single-line strings (info level).
|
|
52
|
+
* - `logError()` receives failure strings that MUST surface at error level
|
|
53
|
+
* (visible in `skaile session logs` and the debug panel). Defaults to
|
|
54
|
+
* `log` when omitted.
|
|
35
55
|
* - `now()` is dependency-injected for deterministic timer tests; defaults
|
|
36
56
|
* to `Date.now`.
|
|
37
57
|
* - `setTimeoutImpl` / `clearTimeoutImpl` are injected for fake-timer
|
|
38
58
|
* tests; default to the host's `setTimeout` / `clearTimeout`.
|
|
39
59
|
*/
|
|
40
60
|
export interface AiCredentialRefreshDeps {
|
|
41
|
-
refresh: () => Promise<
|
|
61
|
+
refresh: () => Promise<AiRefreshOutcome>;
|
|
42
62
|
log: (line: string) => void;
|
|
63
|
+
logError?: (line: string) => void;
|
|
43
64
|
now?: () => number;
|
|
44
65
|
setTimeoutImpl?: (handler: () => void, ms: number) => {
|
|
45
66
|
unref?: () => void;
|
|
@@ -53,10 +74,21 @@ export interface AiCredentialRefreshScheduler {
|
|
|
53
74
|
/**
|
|
54
75
|
* Arm the timer for `expiresAtIso - marginMs`. Cancels any prior pending
|
|
55
76
|
* fire. `null` / `undefined` cancels without re-arming (static PAT
|
|
56
|
-
* semantics). If the fire-time has
|
|
57
|
-
* the next tick.
|
|
77
|
+
* semantics) and marks the credential static. If the fire-time has
|
|
78
|
+
* already passed, runs `refresh()` on the next tick. Records the
|
|
79
|
+
* credential as healthy (resets the transient-retry counter and the
|
|
80
|
+
* stale clock).
|
|
58
81
|
*/
|
|
59
82
|
schedule(expiresAtIso: string | null | undefined): void;
|
|
83
|
+
/**
|
|
84
|
+
* Re-arm hook for the configure/wake path. Kicks a fresh refresh on the next
|
|
85
|
+
* tick when the scheduler is idle (prior terminal failure), stale (no
|
|
86
|
+
* successful fire in {@link STALE_REARM_MS}), or currently parked on the long
|
|
87
|
+
* stale-schedule guard — so a container waking during a degraded window
|
|
88
|
+
* recovers eagerly instead of waiting out the guard. No-op when a healthy
|
|
89
|
+
* refresh timer is already pending or the credential is a static PAT.
|
|
90
|
+
*/
|
|
91
|
+
ensureArmed(): void;
|
|
60
92
|
/** Cancel any pending fire. Idempotent. */
|
|
61
93
|
cancel(): void;
|
|
62
94
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ai-credential-refresh.d.ts","sourceRoot":"","sources":["../../../runner/src/ai-credential-refresh.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"ai-credential-refresh.d.ts","sourceRoot":"","sources":["../../../runner/src/ai-credential-refresh.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAIH;;;;;GAKG;AACH,eAAO,MAAM,8BAA8B,QAAgB,CAAC;AAE5D;;;;;;;GAOG;AACH,eAAO,MAAM,cAAc,QAAqB,CAAC;AAEjD;;;;;;;;;;GAUG;AACH,MAAM,MAAM,gBAAgB,GACxB;IAAE,MAAM,EAAE,IAAI,CAAC;IAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,GAC1C;IAAE,MAAM,EAAE,WAAW,CAAA;CAAE,GACvB;IAAE,MAAM,EAAE,UAAU,CAAA;CAAE,CAAC;AAE3B;;;;;;;;;;;;;GAaG;AACH,MAAM,WAAW,uBAAuB;IACtC,OAAO,EAAE,MAAM,OAAO,CAAC,gBAAgB,CAAC,CAAC;IACzC,GAAG,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAC5B,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,IAAI,EAAE,EAAE,EAAE,MAAM,KAAK;QAAE,KAAK,CAAC,EAAE,MAAM,IAAI,CAAA;KAAE,CAAC;IAC7E,gBAAgB,CAAC,EAAE,CAAC,MAAM,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,IAAI,CAAA;KAAE,KAAK,IAAI,CAAC;IAC5D,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,4BAA4B;IAC3C;;;;;;;OAOG;IACH,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,IAAI,CAAC;IACxD;;;;;;;OAOG;IACH,WAAW,IAAI,IAAI,CAAC;IACpB,2CAA2C;IAC3C,MAAM,IAAI,IAAI,CAAC;IACf;;;OAGG;IACH,SAAS,IAAI,OAAO,CAAC;CACtB;AAED;;;;GAIG;AACH,wBAAgB,kCAAkC,CAChD,IAAI,EAAE,uBAAuB,GAC5B,4BAA4B,CAgJ9B"}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared classification + bounded-retry policy for AI-credential mint failures.
|
|
3
|
+
* The single place that decides transient (`backend-error`) vs terminal
|
|
4
|
+
* (`revoked` / `not-configured` / `provider-error`), consumed by both the
|
|
5
|
+
* reactive 401 path and the proactive scheduler so they never drift. Rationale
|
|
6
|
+
* (shared-seat non-amplification) in `runner/CLAUDE.md` § AI Credential Mediation.
|
|
7
|
+
*
|
|
8
|
+
* @docLink packages/runner/dev-guide#ai-credential-mediation
|
|
9
|
+
*/
|
|
10
|
+
import type { CredentialMint } from "@skaile/workspaces/types";
|
|
11
|
+
/** The discriminated failure codes a {@link CredentialMint} can carry. */
|
|
12
|
+
export type MintFailureCode = Extract<CredentialMint, {
|
|
13
|
+
ok: false;
|
|
14
|
+
}>["code"];
|
|
15
|
+
/**
|
|
16
|
+
* Maximum total mint attempts (initial try + retries) on the transient path.
|
|
17
|
+
* Three attempts spanning the backoff below ride out a ~7s backend redeploy.
|
|
18
|
+
*/
|
|
19
|
+
export declare const MINT_RETRY_MAX_ATTEMPTS = 3;
|
|
20
|
+
/**
|
|
21
|
+
* Whether a failed mint should be retried. Only `backend-error` (internal
|
|
22
|
+
* mediator outage) is transient; `not-configured`, `revoked`, and
|
|
23
|
+
* `provider-error` are terminal credential/account states where a retry
|
|
24
|
+
* cannot help.
|
|
25
|
+
*/
|
|
26
|
+
export declare function isTransientMintFailure(code: MintFailureCode): boolean;
|
|
27
|
+
/**
|
|
28
|
+
* Backoff before the Nth retry (`retryNumber = 1` is the delay before the 2nd
|
|
29
|
+
* attempt). Exponential from a 2s base, capped at 5s, so three attempts span
|
|
30
|
+
* roughly 6s — enough to ride a backend redeploy without unbounded waiting.
|
|
31
|
+
*/
|
|
32
|
+
export declare function mintRetryDelayMs(retryNumber: number): number;
|
|
33
|
+
/**
|
|
34
|
+
* Run `attempt` up to {@link MINT_RETRY_MAX_ATTEMPTS} times, sleeping
|
|
35
|
+
* {@link mintRetryDelayMs} between tries, stopping early on success or a
|
|
36
|
+
* terminal failure. Returns the final mint: ok, a terminal failure, or the
|
|
37
|
+
* last transient failure once the cap is reached. `sleep` is injected so tests
|
|
38
|
+
* stay deterministic.
|
|
39
|
+
*/
|
|
40
|
+
export declare function retryTransientMint(attempt: () => Promise<CredentialMint>, deps: {
|
|
41
|
+
sleep: (ms: number) => Promise<void>;
|
|
42
|
+
maxAttempts?: number;
|
|
43
|
+
onRetry?: (info: {
|
|
44
|
+
attempt: number;
|
|
45
|
+
nextDelayMs: number;
|
|
46
|
+
code: MintFailureCode;
|
|
47
|
+
}) => void;
|
|
48
|
+
}): Promise<CredentialMint>;
|
|
49
|
+
/**
|
|
50
|
+
* Truncated SHA-256 of the just-rejected access token. Sent as the OPTIONAL
|
|
51
|
+
* `rejectedFingerprint` on a retry-401 `host.refresh_credential` so the platform
|
|
52
|
+
* can coalesce concurrent rotations of the same dead token (single-flight). It
|
|
53
|
+
* is non-reversible and carries no secret material (16 hex chars = 64 bits,
|
|
54
|
+
* collision-safe for coalescing). Returns `undefined` for an empty/missing
|
|
55
|
+
* token so the field is simply omitted.
|
|
56
|
+
*/
|
|
57
|
+
export declare function computeRejectedFingerprint(accessToken: string | null | undefined): string | undefined;
|
|
58
|
+
/** The wire input for a `host.refresh_credential` invocation (ai-credentials). */
|
|
59
|
+
export interface RefreshCredentialInput {
|
|
60
|
+
kind: "ai-credentials";
|
|
61
|
+
id: string;
|
|
62
|
+
reason: "refresh" | "retry-401";
|
|
63
|
+
/** Truncated fingerprint of the just-rejected token; only on retry-401. */
|
|
64
|
+
rejectedFingerprint?: string;
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Build the `host.refresh_credential` input. The optional
|
|
68
|
+
* `rejectedFingerprint` is attached ONLY on a `retry-401` (where a token was
|
|
69
|
+
* just rejected) and ONLY when a current token is on disk to fingerprint — on a
|
|
70
|
+
* proactive `refresh` there is no rejected token, so the field is omitted.
|
|
71
|
+
* Today's platform ignores the unknown field; the single-flight mediator uses
|
|
72
|
+
* it to coalesce concurrent rotations of the same dead token.
|
|
73
|
+
*/
|
|
74
|
+
export declare function buildRefreshCredentialInput(args: {
|
|
75
|
+
configId: string;
|
|
76
|
+
reason: "refresh" | "retry-401";
|
|
77
|
+
rejectedToken?: string | null;
|
|
78
|
+
}): RefreshCredentialInput;
|
|
79
|
+
//# sourceMappingURL=ai-credential-retry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ai-credential-retry.d.ts","sourceRoot":"","sources":["../../../runner/src/ai-credential-retry.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAE/D,0EAA0E;AAC1E,MAAM,MAAM,eAAe,GAAG,OAAO,CAAC,cAAc,EAAE;IAAE,EAAE,EAAE,KAAK,CAAA;CAAE,CAAC,CAAC,MAAM,CAAC,CAAC;AAE7E;;;GAGG;AACH,eAAO,MAAM,uBAAuB,IAAI,CAAC;AAKzC;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO,CAErE;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAG5D;AAED;;;;;;GAMG;AACH,wBAAsB,kBAAkB,CACtC,OAAO,EAAE,MAAM,OAAO,CAAC,cAAc,CAAC,EACtC,IAAI,EAAE;IACJ,KAAK,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACrC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,eAAe,CAAA;KAAE,KAAK,IAAI,CAAC;CAC3F,GACA,OAAO,CAAC,cAAc,CAAC,CAWzB;AAED;;;;;;;GAOG;AACH,wBAAgB,0BAA0B,CACxC,WAAW,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GACrC,MAAM,GAAG,SAAS,CAGpB;AAED,kFAAkF;AAClF,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,gBAAgB,CAAC;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,SAAS,GAAG,WAAW,CAAC;IAChC,2EAA2E;IAC3E,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED;;;;;;;GAOG;AACH,wBAAgB,2BAA2B,CAAC,IAAI,EAAE;IAChD,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,SAAS,GAAG,WAAW,CAAC;IAChC,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC/B,GAAG,sBAAsB,CASzB"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Inbound `credentialRotated` broadcast handler — the runner's receive side of
|
|
3
|
+
* the platform single-flight mediator's rotation broadcast (re-pull instead of
|
|
4
|
+
* each container force-refreshing). Dormant until the platform ships it. Wire
|
|
5
|
+
* shape + delivery-channel contract in root `MIGRATION.md`.
|
|
6
|
+
* @docLink packages/runner/dev-guide#ai-credential-mediation
|
|
7
|
+
*/
|
|
8
|
+
import type { CredentialMint } from "@skaile/workspaces/types";
|
|
9
|
+
/** `LogSource.subkind` the platform tags its credential-rotation broadcast with. */
|
|
10
|
+
export declare const AI_PROVIDER_CREDENTIAL_SUBKIND = "ai-provider-credential";
|
|
11
|
+
/**
|
|
12
|
+
* Whether an inbound message is the platform's credential-rotation broadcast.
|
|
13
|
+
* Pure predicate — tolerant of unknown shapes so a malformed message is simply
|
|
14
|
+
* not matched rather than throwing on the command ingress path.
|
|
15
|
+
*/
|
|
16
|
+
export declare function isCredentialRotatedSignal(msg: unknown): boolean;
|
|
17
|
+
/**
|
|
18
|
+
* Handle a credential-rotation broadcast: re-pull the fresh token through the
|
|
19
|
+
* supplied `repull` (a `host.refresh_credential { reason: 'refresh' }` round
|
|
20
|
+
* trip that rewrites `.credentials.json`). Idempotent and best-effort — a
|
|
21
|
+
* failed re-pull is logged at error level and the reactive 401 path remains the
|
|
22
|
+
* safety net; it never throws to the caller.
|
|
23
|
+
*
|
|
24
|
+
* The serve.ts wiring passes `mintAndPersistAiCredential` as `repull`, whose
|
|
25
|
+
* success path also re-arms the proactive refresh scheduler against the fresh
|
|
26
|
+
* expiry — so a re-pull both rewrites the file and re-schedules in one step.
|
|
27
|
+
*/
|
|
28
|
+
export declare function handleCredentialRotatedSignal(deps: {
|
|
29
|
+
repull: () => Promise<CredentialMint>;
|
|
30
|
+
log: (line: string) => void;
|
|
31
|
+
logError: (line: string) => void;
|
|
32
|
+
}): Promise<void>;
|
|
33
|
+
//# sourceMappingURL=credential-rotated.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"credential-rotated.d.ts","sourceRoot":"","sources":["../../../runner/src/credential-rotated.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAE/D,oFAAoF;AACpF,eAAO,MAAM,8BAA8B,2BAA2B,CAAC;AAEvE;;;;GAIG;AACH,wBAAgB,yBAAyB,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAa/D;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,6BAA6B,CAAC,IAAI,EAAE;IACxD,MAAM,EAAE,MAAM,OAAO,CAAC,cAAc,CAAC,CAAC;IACtC,GAAG,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAC5B,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CAClC,GAAG,OAAO,CAAC,IAAI,CAAC,CAchB"}
|
|
@@ -15,6 +15,12 @@ import type { AgentEvent, ConnectorRequestCommand } from "@skaile/workspaces/typ
|
|
|
15
15
|
* @docLink packages/runner/dev-guide#flow-execution-turn-based-model
|
|
16
16
|
*/
|
|
17
17
|
export declare function handleResourceRequest(command: ConnectorRequestCommand, manager: ConnectorManager, emit: (event: AgentEvent) => void): Promise<void>;
|
|
18
|
+
/**
|
|
19
|
+
* Drop everything after the FIRST `</html>` from rclone-mounted HTML content.
|
|
20
|
+
* FIRST not last: a non-truncated VFS cache item appends an older version's tail
|
|
21
|
+
* that ends in its own `</html>`, so a last-match cut would keep the garbage.
|
|
22
|
+
*/
|
|
23
|
+
export declare function stripStaleHtmlTail(content: string, contentType: string): string;
|
|
18
24
|
/**
|
|
19
25
|
* Handle a resource request against a filesystem-face (mountable) connector.
|
|
20
26
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resource-handler.d.ts","sourceRoot":"","sources":["../../../runner/src/resource-handler.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;
|
|
1
|
+
{"version":3,"file":"resource-handler.d.ts","sourceRoot":"","sources":["../../../runner/src/resource-handler.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAeH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,KAAK,EACV,UAAU,EAEV,uBAAuB,EACxB,MAAM,0BAA0B,CAAC;AAOlC;;;;GAIG;AACH,wBAAsB,qBAAqB,CACzC,OAAO,EAAE,uBAAuB,EAChC,OAAO,EAAE,gBAAgB,EACzB,IAAI,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,GAChC,OAAO,CAAC,IAAI,CAAC,CAyCf;AAcD;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,CAI/E;AAuBD;;;;GAIG;AACH,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,uBAAuB,EAChC,OAAO,EAAE,gBAAgB,EACzB,IAAI,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,GAChC,IAAI,CAiHN"}
|
|
@@ -160,6 +160,10 @@ export interface RunnerCapabilityHandlers {
|
|
|
160
160
|
attachInstance?: (input: {
|
|
161
161
|
kind: string;
|
|
162
162
|
name: string;
|
|
163
|
+
preMintedToken?: {
|
|
164
|
+
token: string;
|
|
165
|
+
expiresAt?: string | null;
|
|
166
|
+
};
|
|
163
167
|
}) => Promise<{
|
|
164
168
|
ok: true;
|
|
165
169
|
id: string;
|
|
@@ -189,6 +193,10 @@ export declare const addMcpServerInputSchema: z.ZodObject<{
|
|
|
189
193
|
export declare const attachInstanceInputSchema: z.ZodObject<{
|
|
190
194
|
kind: z.ZodString;
|
|
191
195
|
name: z.ZodString;
|
|
196
|
+
preMintedToken: z.ZodOptional<z.ZodObject<{
|
|
197
|
+
token: z.ZodString;
|
|
198
|
+
expiresAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
199
|
+
}, z.core.$strip>>;
|
|
192
200
|
}, z.core.$strict>;
|
|
193
201
|
/**
|
|
194
202
|
* Build the seven `runner.*` capabilities. Caller registers each with
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runner-capabilities.d.ts","sourceRoot":"","sources":["../../../runner/src/runner-capabilities.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"runner-capabilities.d.ts","sourceRoot":"","sources":["../../../runner/src/runner-capabilities.ts"],"names":[],"mappings":"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"}
|
|
@@ -68,4 +68,18 @@ export declare function mergeAndRewriteCredentialsFile(home: string, accessToken
|
|
|
68
68
|
* @docLink packages/runner/dev-guide#ai-credential-mediation
|
|
69
69
|
*/
|
|
70
70
|
export declare function extractClaudeAiOauthExpiresAt(json: string): string | null;
|
|
71
|
+
/**
|
|
72
|
+
* Read the current access token from the on-disk credentials file at
|
|
73
|
+
* `<home>/.claude/.credentials.json`. Supports both the nested
|
|
74
|
+
* `claudeAiOauth.accessToken` shape the platform writes and the flat
|
|
75
|
+
* top-level `accessToken` some SDK builds use.
|
|
76
|
+
*
|
|
77
|
+
* Used by the 401-mediation path to fingerprint the just-rejected token (the
|
|
78
|
+
* one currently on disk) before asking the platform to rotate it, so the
|
|
79
|
+
* platform can coalesce concurrent rotations of the same dead token. Returns
|
|
80
|
+
* `null` when the file is absent, unreadable, or carries no token.
|
|
81
|
+
*
|
|
82
|
+
* @docLink packages/runner/dev-guide#ai-credential-mediation
|
|
83
|
+
*/
|
|
84
|
+
export declare function readCurrentClaudeAccessToken(home: string): string | null;
|
|
71
85
|
//# sourceMappingURL=serve-credentials.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"serve-credentials.d.ts","sourceRoot":"","sources":["../../../runner/src/serve-credentials.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAMH;;;;;;;GAOG;AACH,eAAO,MAAM,2BAA2B,iCAAiC,CAAC;AAE1E;;;;;;;;;;GAUG;AACH,wBAAsB,8BAA8B,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAQhG;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAsB,8BAA8B,CAClD,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,MAAM,EACnB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,GACxB,OAAO,CAAC,MAAM,CAAC,CAkBjB;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,6BAA6B,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAqBzE"}
|
|
1
|
+
{"version":3,"file":"serve-credentials.d.ts","sourceRoot":"","sources":["../../../runner/src/serve-credentials.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAMH;;;;;;;GAOG;AACH,eAAO,MAAM,2BAA2B,iCAAiC,CAAC;AAE1E;;;;;;;;;;GAUG;AACH,wBAAsB,8BAA8B,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAQhG;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAsB,8BAA8B,CAClD,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,MAAM,EACnB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,GACxB,OAAO,CAAC,MAAM,CAAC,CAkBjB;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,6BAA6B,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAqBzE;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,4BAA4B,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAaxE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"serve.d.ts","sourceRoot":"","sources":["../../../runner/src/serve.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AAkBH,OAAO,EAGL,gBAAgB,EAKjB,MAAM,+BAA+B,CAAC;AAkBvC,OAAO,KAAK,EAEV,UAAU,EAEV,wBAAwB,EAGxB,eAAe,EAChB,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"serve.d.ts","sourceRoot":"","sources":["../../../runner/src/serve.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AAkBH,OAAO,EAGL,gBAAgB,EAKjB,MAAM,+BAA+B,CAAC;AAkBvC,OAAO,KAAK,EAEV,UAAU,EAEV,wBAAwB,EAGxB,eAAe,EAChB,MAAM,0BAA0B,CAAC;AAkClC,OAAO,EACL,2BAA2B,EAC3B,6BAA6B,EAG7B,8BAA8B,EAC/B,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,KAAK,YAAY,EAGlB,MAAM,sBAAsB,CAAC;AAkB9B;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,wBAAwB,CACtC,YAAY,EAAE,YAAY,EAC1B,SAAS,EAAE,CAAC,CAAC,EAAE,UAAU,KAAK,IAAI,GACjC,IAAI,CAMN;AAkFD,8EAA8E;AAC9E,MAAM,MAAM,eAAe,GAAG;IAC5B,WAAW,IAAI,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,OAAO,GAAG,KAAK,GAAG,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAC9F,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,8BAA8B,CAC5C,OAAO,EAAE,gBAAgB,GAAG,IAAI,EAChC,UAAU,EAAE,eAAe,GAAG,IAAI,EAClC,UAAU,EAAE,OAAO,GAClB,wBAAwB,CAI1B;AAaD;;;;;;;;;GASG;AACH,OAAO,EACL,2BAA2B,EAC3B,6BAA6B,EAC7B,8BAA8B,GAC/B,CAAC;AAEF;;;;;;;;GAQG;AACH,wBAAgB,sBAAsB,CAAC,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAoCzE;AA0CD;;;GAGG;AACH,MAAM,WAAW,YAAY;IAC3B;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,sDAAsD;IACtD,UAAU,EAAE,MAAM,CAAC;IACnB;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,oEAAoE;IACpE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,+BAA+B;IAC/B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,kEAAkE;IAClE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,gFAAgF;IAChF,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,wEAAwE;IACxE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,sEAAsE;IACtE,KAAK,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/B;;;;OAIG;IACH,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B;;;;;OAKG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAMD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAs8ExE"}
|
|
@@ -31,7 +31,10 @@ export declare function toPreMinted(token: {
|
|
|
31
31
|
expiresAt?: string | null;
|
|
32
32
|
}): PreMintedCredential;
|
|
33
33
|
export declare function buildSessionResourceHandlers(deps: SessionResourceHandlerDeps): Pick<RunnerCapabilityHandlers, "addConnector" | "addMount" | "removeResource" | "updateCredential"> & {
|
|
34
|
-
attachConnectorInstance: (name: string
|
|
34
|
+
attachConnectorInstance: (name: string, preMintedToken?: {
|
|
35
|
+
token: string;
|
|
36
|
+
expiresAt?: string | null;
|
|
37
|
+
}) => Promise<AttachResult>;
|
|
35
38
|
};
|
|
36
39
|
export {};
|
|
37
40
|
//# sourceMappingURL=session-resource-handlers.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-resource-handlers.d.ts","sourceRoot":"","sources":["../../../runner/src/session-resource-handlers.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"session-resource-handlers.d.ts","sourceRoot":"","sources":["../../../runner/src/session-resource-handlers.ts"],"names":[],"mappings":"AAWA,OAAO,EAEL,KAAK,gBAAgB,EAErB,KAAK,mBAAmB,EACxB,KAAK,uBAAuB,EAC7B,MAAM,+BAA+B,CAAC;AACvC,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,0BAA0B,CAAC;AAEzE,MAAM,WAAW,0BAA0B;IACzC,+EAA+E;IAC/E,kBAAkB,EAAE,MAAM,gBAAgB,GAAG,IAAI,CAAC;IAClD,4EAA4E;IAC5E,mBAAmB,EAAE,MAAM,uBAAuB,GAAG,SAAS,CAAC;IAC/D,8EAA8E;IAC9E,sBAAsB,EAAE,MAAM,IAAI,CAAC;IACnC,GAAG,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3B;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,MAAM,CAAC;CAC9B;AAKD,gFAAgF;AAChF,KAAK,YAAY,GACb;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,OAAO,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,GAC1D;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAejD,wBAAgB,WAAW,CAAC,KAAK,EAAE;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B,GAAG,mBAAmB,CAEtB;AAED,wBAAgB,4BAA4B,CAAC,IAAI,EAAE,0BAA0B,GAAG,IAAI,CAClF,wBAAwB,EACxB,cAAc,GAAG,UAAU,GAAG,gBAAgB,GAAG,kBAAkB,CACpE,GAAG;IACF,uBAAuB,EAAE,CACvB,IAAI,EAAE,MAAM,EACZ,cAAc,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,KAC1D,OAAO,CAAC,YAAY,CAAC,CAAC;CAC5B,CAwJA"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { AssetManager, parseCanonicalLockKey } from '../chunk-
|
|
1
|
+
export { AssetManager, parseCanonicalLockKey } from '../chunk-B5LHVPE2.js';
|
|
2
2
|
export { createScaffold, deployAll, installAgent, removeAsset } from '../chunk-4A2LAEX6.js';
|
|
3
3
|
import '../chunk-FBIQ4QPF.js';
|
|
4
4
|
import '../chunk-CFCSDZYF.js';
|
package/dist/sdk/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { AgentClient } from '../chunk-SZ3SIVZQ.js';
|
|
2
|
-
import { startAgentServer } from '../chunk-
|
|
3
|
-
import '../chunk-
|
|
2
|
+
import { startAgentServer } from '../chunk-RM2KAMGD.js';
|
|
3
|
+
import '../chunk-22Q5R7SM.js';
|
|
4
4
|
import '../chunk-X5YPJV4N.js';
|
|
5
5
|
import '../chunk-O7SG5PC2.js';
|
|
6
6
|
import '../chunk-7QBNJTTQ.js';
|
|
@@ -15,10 +15,10 @@ import '../chunk-BMQKMOQY.js';
|
|
|
15
15
|
import '../chunk-GAH4YRCI.js';
|
|
16
16
|
import '../chunk-KM6DCR7A.js';
|
|
17
17
|
import '../chunk-LV2HPH3C.js';
|
|
18
|
-
import '../chunk-
|
|
18
|
+
import '../chunk-3P7HBSSD.js';
|
|
19
19
|
import '../chunk-OVRSNIKJ.js';
|
|
20
20
|
import '../chunk-WLWHOA3S.js';
|
|
21
|
-
import '../chunk-
|
|
21
|
+
import '../chunk-C5UK3JK7.js';
|
|
22
22
|
import '../chunk-6E6PKKAD.js';
|
|
23
23
|
import '../chunk-X46FY45B.js';
|
|
24
24
|
import '../chunk-DEYYRFQU.js';
|