@lesliechan721/aw-plugin-core 0.1.0-beta.1 → 0.1.0-beta.10

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.
Files changed (43) hide show
  1. package/dist/aw-capabilities.d.ts +27 -0
  2. package/dist/aw-capabilities.js +106 -0
  3. package/dist/aw-capabilities.js.map +1 -0
  4. package/dist/catalog-workspace-resolution.d.ts +3 -0
  5. package/dist/catalog-workspace-resolution.js +34 -0
  6. package/dist/catalog-workspace-resolution.js.map +1 -0
  7. package/dist/generated/plugin-manifest-v3.d.ts +658 -0
  8. package/dist/generated/{plugin-manifest-v1.js → plugin-manifest-v3.js} +1 -1
  9. package/dist/generated/plugin-manifest-v3.js.map +1 -0
  10. package/dist/index.d.ts +2 -2
  11. package/dist/index.js +1 -1
  12. package/dist/index.js.map +1 -1
  13. package/dist/manifest-contract.d.ts +3 -6
  14. package/dist/manifest-contract.js +135 -405
  15. package/dist/manifest-contract.js.map +1 -1
  16. package/dist/manifest-type-contract.d.ts +2 -2
  17. package/dist/manifest.d.ts +10 -8
  18. package/dist/manifest.js +11 -7
  19. package/dist/manifest.js.map +1 -1
  20. package/dist/plugin-authoring-capabilities.d.ts +21 -0
  21. package/dist/plugin-authoring-capabilities.js +183 -0
  22. package/dist/plugin-authoring-capabilities.js.map +1 -0
  23. package/dist/plugin-config.d.ts +13 -0
  24. package/dist/plugin-config.js +619 -0
  25. package/dist/plugin-config.js.map +1 -0
  26. package/dist/plugin-requirements.d.ts +34 -0
  27. package/dist/plugin-requirements.js +248 -0
  28. package/dist/plugin-requirements.js.map +1 -0
  29. package/dist/plugin-script-contract.d.ts +8 -10
  30. package/dist/plugin-script-contract.js +32 -62
  31. package/dist/plugin-script-contract.js.map +1 -1
  32. package/dist/types.d.ts +126 -61
  33. package/dist/workspace.d.ts +54 -29
  34. package/dist/workspace.js +497 -269
  35. package/dist/workspace.js.map +1 -1
  36. package/package.json +5 -4
  37. package/schemas/plugin-manifest-v3.json +574 -0
  38. package/dist/generated/plugin-manifest-v1.d.ts +0 -368
  39. package/dist/generated/plugin-manifest-v1.js.map +0 -1
  40. package/dist/plugin-release.d.ts +0 -30
  41. package/dist/plugin-release.js +0 -187
  42. package/dist/plugin-release.js.map +0 -1
  43. package/schemas/plugin-manifest-v1.json +0 -329
package/dist/types.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import type { PluginManifestSourceV1 } from './generated/plugin-manifest-v1.js';
1
+ import type { PluginManifestSourceV3 } from './generated/plugin-manifest-v3.js';
2
2
  export type PlatformName = 'codex' | 'claude';
3
3
  export type DistributionName = 'agent-skills';
4
4
  export type Scope = 'project' | 'user';
@@ -10,7 +10,7 @@ export type CatalogSourceId = string;
10
10
  export type SourceIdentity = string;
11
11
  export type SupportedPlatformSet = ReadonlySet<PlatformName>;
12
12
  export type CodexProjectManagedKind = 'skill' | 'mcpServer' | 'instruction' | 'permission' | 'hook' | 'agent';
13
- export type PluginInterfaceMeta = NonNullable<PluginManifestSourceV1['interface']>;
13
+ export type PluginInterfaceMeta = NonNullable<PluginManifestSourceV3['interface']>;
14
14
  export interface MarketplaceOwner {
15
15
  name: string;
16
16
  url: string;
@@ -25,9 +25,9 @@ export interface MarketplaceSourceMeta {
25
25
  version: string;
26
26
  };
27
27
  }
28
- export type MarketplacePolicy = PluginManifestSourceV1['marketplace']['policy'];
28
+ export type MarketplacePolicy = PluginManifestSourceV3['marketplace']['policy'];
29
29
  export type MarketplaceAuthenticationPolicy = MarketplacePolicy['authentication'];
30
- export type PluginMarketplaceMeta = PluginManifestSourceV1['marketplace'];
30
+ export type PluginMarketplaceMeta = PluginManifestSourceV3['marketplace'];
31
31
  export type TemplateValue = string | boolean;
32
32
  export interface TemplateVarByPlatform {
33
33
  claude: TemplateValue;
@@ -55,6 +55,11 @@ export interface BuildConfigManifestOverrides {
55
55
  export interface BuildConfigRuntimeExport {
56
56
  name: string;
57
57
  source: string;
58
+ requires: {
59
+ aw: {
60
+ capabilities: string[];
61
+ };
62
+ };
58
63
  }
59
64
  export interface BuildConfigImportReference {
60
65
  plugin: string;
@@ -86,18 +91,10 @@ export interface BuildConfig {
86
91
  skillRuntimeFiles?: BuildConfigSkillRuntimeFile[];
87
92
  generatedSkillRuntimeFiles?: BuildConfigGeneratedSkillRuntimeFile[];
88
93
  }
89
- export type PluginLifecycleEvent = 'install' | 'upgrade' | 'uninstall';
90
- export type PluginLifecycleOsSelector = 'default' | 'unix' | 'windows' | 'linux' | 'darwin' | 'win32';
91
- export type PluginLifecycleRuntimeOs = 'linux' | 'darwin' | 'win32';
92
- export type PluginLifecycleScriptRunner = 'node' | 'sh' | 'bash' | 'pwsh' | 'powershell' | 'cmd' | 'auto';
93
- export interface PluginLifecycleScriptEntry {
94
- runner: PluginLifecycleScriptRunner;
94
+ export interface PluginPostApplyScript {
95
95
  path: string;
96
- args?: string[];
96
+ timeoutMs?: number;
97
97
  }
98
- export type PluginLifecycleScriptSelector = Partial<Record<PluginLifecycleOsSelector, PluginLifecycleScriptEntry>>;
99
- export type PluginLifecycleScriptDefinition = string | PluginLifecycleScriptSelector;
100
- export type PluginLifecycleScripts = Partial<Record<PluginLifecycleEvent, PluginLifecycleScriptSelector>>;
101
98
  export interface PluginScriptHelpersConfig {
102
99
  config: string;
103
100
  }
@@ -122,26 +119,85 @@ export interface PluginArtifactScriptsConfig {
122
119
  render?: PluginArtifactRenderScriptEntry;
123
120
  }
124
121
  export interface PluginScriptsConfig {
125
- timeoutMs?: number;
126
- lifecycle?: PluginLifecycleScripts;
122
+ postApply?: PluginPostApplyScript;
127
123
  helpers?: PluginScriptHelpersConfig;
128
124
  node?: PluginNodeScriptsConfig;
129
125
  artifacts?: PluginArtifactScriptsConfig;
130
126
  tests?: PluginScriptTestsConfig;
131
127
  }
132
- export type PluginConfigFieldType = 'string' | 'number' | 'boolean' | 'enum' | 'file' | 'directory';
133
- export interface PluginConfigSchemaField {
134
- type: PluginConfigFieldType;
128
+ export type PluginConfigScalar = string | number | boolean;
129
+ export type PluginConfigObject = Record<string, PluginConfigScalar>;
130
+ export type PluginConfigValue = PluginConfigScalar | PluginConfigObject;
131
+ export type PluginConfigFieldType = 'string' | 'number' | 'boolean' | 'object';
132
+ export type PluginConfigStringFormat = 'identifier' | 'slug' | 'semver' | 'url' | 'hostname' | 'email';
133
+ export interface PluginConfigPreset<Value extends PluginConfigValue = PluginConfigValue> {
134
+ id: string;
135
+ title: string;
136
+ description?: string;
137
+ value: Value;
138
+ recommended?: true;
139
+ }
140
+ export interface PluginConfigChoices<Value extends PluginConfigValue = PluginConfigValue> {
141
+ allowCustom: boolean;
142
+ presets: PluginConfigPreset<Value>[];
143
+ }
144
+ export interface PluginConfigStringValidation {
145
+ minLength?: number;
146
+ maxLength?: number;
147
+ pattern?: string;
148
+ format?: PluginConfigStringFormat;
149
+ }
150
+ export interface PluginConfigNumberValidation {
151
+ integer?: boolean;
152
+ minimum?: number;
153
+ maximum?: number;
154
+ multipleOf?: number;
155
+ }
156
+ export interface PluginConfigObjectValidation {
157
+ minProperties?: number;
158
+ maxProperties?: number;
159
+ key?: PluginConfigStringValidation;
160
+ }
161
+ export interface PluginConfigFieldBase<Value extends PluginConfigValue> {
135
162
  title?: string;
136
163
  description?: string;
137
- default?: string | number | boolean;
164
+ default?: Value;
138
165
  required?: boolean;
139
166
  sensitive?: boolean;
140
- values?: string[];
141
- min?: number;
142
- max?: number;
143
167
  }
144
- export type PluginConfigPresentationValue = string | number | boolean;
168
+ export interface PluginConfigStringField extends PluginConfigFieldBase<string> {
169
+ type: 'string';
170
+ choices?: PluginConfigChoices<string>;
171
+ validation?: PluginConfigStringValidation;
172
+ }
173
+ export interface PluginConfigNumberField extends PluginConfigFieldBase<number> {
174
+ type: 'number';
175
+ choices?: PluginConfigChoices<number>;
176
+ validation?: PluginConfigNumberValidation;
177
+ }
178
+ export interface PluginConfigBooleanField extends PluginConfigFieldBase<boolean> {
179
+ type: 'boolean';
180
+ choices?: PluginConfigChoices<boolean>;
181
+ }
182
+ export type PluginConfigScalarField = PluginConfigStringField | PluginConfigNumberField | PluginConfigBooleanField;
183
+ type DistributiveOmit<Value, Key extends PropertyKey> = Value extends unknown ? Omit<Value, Key> : never;
184
+ export type PluginConfigObjectPropertyField = DistributiveOmit<PluginConfigScalarField, 'default'>;
185
+ export type PluginConfigAdditionalPropertiesField = DistributiveOmit<PluginConfigScalarField, 'default' | 'required'>;
186
+ interface PluginConfigObjectFieldBase extends PluginConfigFieldBase<PluginConfigObject> {
187
+ type: 'object';
188
+ choices?: PluginConfigChoices<PluginConfigObject>;
189
+ validation?: PluginConfigObjectValidation;
190
+ }
191
+ export interface PluginConfigFixedObjectField extends PluginConfigObjectFieldBase {
192
+ properties: Record<string, PluginConfigObjectPropertyField>;
193
+ additionalProperties?: false;
194
+ }
195
+ export interface PluginConfigKeyValueObjectField extends PluginConfigObjectFieldBase {
196
+ properties?: never;
197
+ additionalProperties: PluginConfigAdditionalPropertiesField;
198
+ }
199
+ export type PluginConfigObjectField = PluginConfigFixedObjectField | PluginConfigKeyValueObjectField;
200
+ export type PluginConfigSchemaField = PluginConfigScalarField | PluginConfigObjectField;
145
201
  export interface PluginConfigPresentationGroup {
146
202
  id: string;
147
203
  title: string;
@@ -149,28 +205,23 @@ export interface PluginConfigPresentationGroup {
149
205
  fields: string[];
150
206
  advanced?: boolean;
151
207
  }
152
- export interface PluginConfigPresentationField {
153
- valueLabels?: Record<string, string>;
154
- recommendedValue?: PluginConfigPresentationValue;
155
- placeholder?: string;
156
- unit?: string;
157
- advanced?: boolean;
158
- }
159
- export interface PluginConfigPresentationPreset {
160
- id: string;
161
- title: string;
162
- description?: string;
163
- values: Record<string, PluginConfigPresentationValue>;
164
- }
165
208
  export interface PluginConfigPresentation {
166
209
  groups?: PluginConfigPresentationGroup[];
167
- fields?: Record<string, PluginConfigPresentationField>;
168
- presets?: PluginConfigPresentationPreset[];
169
210
  }
170
- export interface PluginConfigSchema {
171
- schema: Record<string, PluginConfigSchemaField>;
211
+ export interface PluginConfigDefinition {
212
+ fields: Record<string, PluginConfigSchemaField>;
172
213
  presentation?: PluginConfigPresentation;
173
214
  }
215
+ export type PluginConfigSchema = PluginConfigDefinition;
216
+ export interface PluginConfigValidationIssue {
217
+ code: string;
218
+ path: {
219
+ field: string;
220
+ property?: string;
221
+ };
222
+ message: string;
223
+ recoverable: true;
224
+ }
174
225
  export interface PlatformAgentOverrides<T> {
175
226
  claude?: Partial<T> | null;
176
227
  codex?: Partial<T> | null;
@@ -239,6 +290,15 @@ export interface PluginExtensions {
239
290
  agents?: AgentDefinition[];
240
291
  }
241
292
  export type ArtifactState = 'present' | 'disabled';
293
+ export interface CodexNativeSkillDelivery {
294
+ mode: 'codex-native';
295
+ identity: 'shared';
296
+ renderProfile: 'user';
297
+ }
298
+ export interface AwExtensionSkillDelivery {
299
+ mode: 'aw-extension';
300
+ }
301
+ export type CodexSkillDelivery = CodexNativeSkillDelivery | AwExtensionSkillDelivery;
242
302
  export type ArtifactTarget = 'codex.developerInstructionsBlock' | 'codex.agentRole' | 'codex.skill' | 'claude.skill' | 'agent-skills.skill';
243
303
  export type DynamicArtifactKind = 'instruction' | 'codexRole' | 'skill';
244
304
  export type ManagedArtifactId = string;
@@ -250,14 +310,15 @@ export interface ArtifactRuntimeImportDefinition extends BuildConfigImportRefere
250
310
  providerPluginId: PluginId;
251
311
  providerVersion: PluginVersion;
252
312
  source: string;
313
+ requiredCapabilities: string[];
314
+ capabilitySetDigest: string;
253
315
  };
254
316
  }
255
- export interface PluginArtifactTargetDefinition {
317
+ interface PluginArtifactTargetDefinitionBase {
256
318
  id: string;
257
319
  platform?: PlatformName;
258
320
  distribution?: DistributionName;
259
321
  scopes: Scope[];
260
- target: ArtifactTarget;
261
322
  kind?: DynamicArtifactKind;
262
323
  projectManagedKind?: CodexProjectManagedKind;
263
324
  states: ArtifactState[];
@@ -268,6 +329,13 @@ export interface PluginArtifactTargetDefinition {
268
329
  sourceDirs?: string[];
269
330
  runtimeImports?: ArtifactRuntimeImportDefinition[];
270
331
  }
332
+ export type PluginArtifactTargetDefinition = PluginArtifactTargetDefinitionBase & {
333
+ target: 'codex.skill';
334
+ delivery: CodexSkillDelivery;
335
+ } | PluginArtifactTargetDefinitionBase & {
336
+ target: Exclude<ArtifactTarget, 'codex.skill'>;
337
+ delivery?: never;
338
+ };
271
339
  export interface PluginArtifactsConfig {
272
340
  targets?: PluginArtifactTargetDefinition[];
273
341
  }
@@ -277,15 +345,14 @@ export interface PluginAgentSkillsDistribution {
277
345
  export interface PluginDistributionsConfig {
278
346
  agentSkills?: PluginAgentSkillsDistribution;
279
347
  }
280
- export interface PluginCompatibility {
348
+ export interface PluginRequirements {
281
349
  aw: {
282
- minVersion: CliVersion;
350
+ capabilities?: string[];
283
351
  };
284
352
  }
285
- export type PluginManifestSource = PluginManifestSourceV1;
286
- export type NormalizedPluginManifest = Omit<PluginManifestSourceV1, 'schemaVersion' | 'compatibility' | 'extensions' | 'artifacts' | 'buildConfig' | 'scripts' | 'config'> & {
287
- schemaVersion: 1;
288
- compatibility: PluginCompatibility;
353
+ export type PluginManifestSource = PluginManifestSourceV3;
354
+ export type NormalizedPluginManifest = Omit<PluginManifestSourceV3, 'requires' | 'extensions' | 'artifacts' | 'buildConfig' | 'scripts' | 'config'> & {
355
+ requires?: PluginRequirements;
289
356
  extensions?: PluginExtensions;
290
357
  artifacts?: PluginArtifactsConfig;
291
358
  buildConfig?: BuildConfig;
@@ -326,12 +393,13 @@ export interface CatalogManifestEntry {
326
393
  tags?: string[];
327
394
  strict: boolean;
328
395
  policy: MarketplacePolicy;
329
- compatibility: PluginCompatibility;
396
+ dependencies: PluginId[];
397
+ requires: PluginRequirements;
330
398
  source: string;
331
399
  artifactDigest: string;
332
400
  manifestDigest: string;
333
401
  }
334
- export interface CatalogManifestV4Entry extends CatalogManifestEntry {
402
+ export interface CatalogManifestV7Entry extends CatalogManifestEntry {
335
403
  name: PluginId;
336
404
  contentDigest: string;
337
405
  }
@@ -339,29 +407,25 @@ export interface CatalogMarketplaceIdentity {
339
407
  owner: MarketplaceOwner;
340
408
  interface: MarketplaceInterfaceMeta;
341
409
  }
342
- export type CatalogManifestV4Release = {
410
+ export type CatalogManifestV7Release = {
343
411
  state: 'development';
344
412
  } | {
345
413
  state: 'published';
346
- targetVersion: string;
347
- planId: string;
348
414
  sourceHead: string;
349
- contentDigest: string;
350
415
  };
351
- export interface CatalogManifestV4 {
352
- schemaVersion: 4;
416
+ export interface CatalogManifestV7 {
417
+ schemaVersion: 7;
353
418
  catalogVersion: string;
354
419
  channel: CatalogChannel;
355
- compatibility: PluginCompatibility;
420
+ requires: PluginRequirements;
356
421
  marketplace: CatalogMarketplaceIdentity;
357
- release: CatalogManifestV4Release;
358
- entries: CatalogManifestV4Entry[];
422
+ release: CatalogManifestV7Release;
423
+ entries: CatalogManifestV7Entry[];
359
424
  }
360
425
  export interface PlatformPluginManifest {
361
426
  name: string;
362
427
  version: PluginVersion;
363
428
  description: string;
364
- compatibility: PluginCompatibility;
365
429
  skills?: string;
366
430
  mcpServers?: string;
367
431
  apps?: string;
@@ -426,3 +490,4 @@ export interface ClaudeSkillArtifact extends ArtifactPlanArtifactBase {
426
490
  files?: Record<string, string>;
427
491
  };
428
492
  }
493
+ export {};
@@ -1,14 +1,13 @@
1
- import { type PluginReleaseLedger } from './plugin-release.js';
2
1
  import type { ReservedImportRegistry } from './manifest-contract.js';
3
- import type { CatalogChannel, CatalogManifestV4, MarketplaceSourceMeta, PluginMeta } from './types.js';
4
- export declare const DEFAULT_WORKSPACE_CATALOG_VERSION = "0.1.0";
2
+ import type { CatalogChannel, CatalogManifestV7, CatalogManifestV7Entry, MarketplaceSourceMeta, PluginMeta } from './types.js';
3
+ export declare const DEFAULT_CATALOG_WORKSPACE_VERSION = "0.1.0";
5
4
  export declare const DEFAULT_CATALOG_OUTPUT_PATH: string;
6
5
  export declare const DEFAULT_PUBLISHED_CATALOG_OUTPUT_PATH: string;
7
6
  export declare const DEFAULT_PLUGIN_OUTPUT_PATH: string;
8
7
  export declare const CATALOG_MANIFEST_FILENAME = "catalog-manifest.json";
9
8
  export declare const GENERATED_OUTPUT_MARKER_FILENAME = ".aw-generated.json";
10
- export declare const WORKSPACE_MARKER_FILENAME = ".aw-workspace.json";
11
- export interface WorkspaceCatalogInitOptions {
9
+ export declare const CATALOG_WORKSPACE_MARKER_FILENAME = ".aw-workspace.json";
10
+ export interface CatalogWorkspaceInitOptions {
12
11
  workspaceRoot: string;
13
12
  ownerName?: string;
14
13
  ownerUrl?: string;
@@ -16,7 +15,7 @@ export interface WorkspaceCatalogInitOptions {
16
15
  catalogVersion?: string;
17
16
  force?: boolean;
18
17
  }
19
- export interface WorkspacePluginBuildAdapter {
18
+ export interface CatalogWorkspacePluginBuildAdapter {
20
19
  build(options: {
21
20
  workspaceRoot: string;
22
21
  plugin: PluginMeta;
@@ -25,11 +24,24 @@ export interface WorkspacePluginBuildAdapter {
25
24
  outputRoot: string;
26
25
  }): Promise<void>;
27
26
  }
28
- export type WorkspaceCatalogBuildAdapter = WorkspacePluginBuildAdapter;
29
- export interface WorkspaceSourceOptions {
27
+ export type CatalogWorkspaceBuildAdapter = CatalogWorkspacePluginBuildAdapter;
28
+ export interface CatalogWorkspaceSourceOptions {
30
29
  reservedImports?: ReservedImportRegistry;
31
30
  }
32
- export declare function resolveWorkspaceOutputPath(options: {
31
+ export type CatalogVersionBump = 'major' | 'minor' | 'patch';
32
+ export interface CatalogVersionMutation {
33
+ version?: string;
34
+ bump?: CatalogVersionBump;
35
+ }
36
+ export interface CatalogWorkspace {
37
+ workspaceRoot: string;
38
+ markerPath: string;
39
+ workspaceIdentity: string;
40
+ metadataPath: string;
41
+ metadata: MarketplaceSourceMeta;
42
+ plugins: PluginMeta[];
43
+ }
44
+ export declare function resolveCatalogWorkspaceOutputPath(options: {
33
45
  workspaceRoot: string;
34
46
  outputPath: string;
35
47
  kind?: 'catalog' | 'plugin';
@@ -37,24 +49,27 @@ export declare function resolveWorkspaceOutputPath(options: {
37
49
  workspaceRoot: string;
38
50
  outputRoot: string;
39
51
  }>;
40
- export declare function initializePluginWorkspace(options: WorkspaceCatalogInitOptions): Promise<{
41
- workspaceRoot: string;
42
- metadataPath: string;
43
- metadata: MarketplaceSourceMeta;
52
+ export declare function readCatalogWorkspaceMarker(workspaceRoot: string): Promise<{
53
+ markerPath: string;
54
+ workspaceIdentity: string;
44
55
  }>;
45
- export declare function readPluginWorkspace(workspaceRoot: string, options?: WorkspaceSourceOptions): Promise<{
56
+ export declare function initializeCatalogWorkspace(options: CatalogWorkspaceInitOptions): Promise<{
46
57
  workspaceRoot: string;
58
+ markerPath: string;
59
+ workspaceIdentity: string;
47
60
  metadataPath: string;
48
61
  metadata: MarketplaceSourceMeta;
49
- plugins: PluginMeta[];
50
62
  }>;
51
- export declare function setWorkspaceCatalogVersion(workspaceRoot: string, version: string, options?: WorkspaceSourceOptions): Promise<MarketplaceSourceMeta>;
63
+ export declare function readCatalogWorkspace(workspaceRoot: string, options?: CatalogWorkspaceSourceOptions): Promise<CatalogWorkspace>;
64
+ export declare function resolveCatalogVersionMutation(currentVersion: string, mutation: CatalogVersionMutation): string;
65
+ export declare function mutateCatalogWorkspaceVersion(workspaceRoot: string, mutation: CatalogVersionMutation, options?: CatalogWorkspaceSourceOptions): Promise<MarketplaceSourceMeta>;
52
66
  export declare function deriveCatalogChannel(version: string): CatalogChannel;
53
- export declare function buildWorkspaceCatalog(options: {
67
+ export declare function calculateCatalogWorkspaceSourceIdentity(workspace: Pick<CatalogWorkspace, 'workspaceRoot' | 'metadataPath' | 'plugins'>): Promise<string>;
68
+ export declare function buildCatalogWorkspace(options: {
54
69
  workspaceRoot: string;
55
70
  outputPath?: string;
56
71
  force?: boolean;
57
- adapter: WorkspaceCatalogBuildAdapter;
72
+ adapter: CatalogWorkspaceBuildAdapter;
58
73
  reservedImports?: ReservedImportRegistry;
59
74
  }): Promise<{
60
75
  outputRoot: string;
@@ -64,16 +79,16 @@ export declare function buildWorkspaceCatalog(options: {
64
79
  }>;
65
80
  export declare function validatePublishedCatalogSnapshot(snapshotDirectory: string): Promise<{
66
81
  rootDir: string;
67
- manifest: CatalogManifestV4;
68
- ledger: PluginReleaseLedger;
82
+ manifest: CatalogManifestV7;
69
83
  snapshotDigest: string;
70
84
  }>;
71
- export declare function preparePublishedWorkspaceCatalog(options: {
85
+ export declare function preparePublishedCatalogWorkspace(options: {
72
86
  workspaceRoot: string;
73
87
  sourceHead: string;
74
88
  outputPath?: string;
75
89
  previousSnapshotRoot?: string;
76
- adapter: WorkspaceCatalogBuildAdapter;
90
+ historicalPluginEntries?: readonly CatalogManifestV7Entry[];
91
+ adapter: CatalogWorkspaceBuildAdapter;
77
92
  reservedImports?: ReservedImportRegistry;
78
93
  }): Promise<{
79
94
  outputRoot: string;
@@ -81,15 +96,13 @@ export declare function preparePublishedWorkspaceCatalog(options: {
81
96
  channel: CatalogChannel;
82
97
  pluginNames: string[];
83
98
  snapshotDigest: string;
84
- contentDigest: string;
85
- planId: string;
86
99
  }>;
87
- export declare function buildWorkspacePlugin(options: {
100
+ export declare function buildCatalogWorkspacePlugin(options: {
88
101
  workspaceRoot: string;
89
102
  pluginDirectory: string;
90
103
  outputPath?: string;
91
104
  force?: boolean;
92
- adapter: WorkspacePluginBuildAdapter;
105
+ adapter: CatalogWorkspacePluginBuildAdapter;
93
106
  reservedImports?: ReservedImportRegistry;
94
107
  }): Promise<{
95
108
  outputRoot: string;
@@ -97,9 +110,21 @@ export declare function buildWorkspacePlugin(options: {
97
110
  dependencies: string[];
98
111
  digest: string;
99
112
  }>;
100
- export declare function validateCatalogSnapshot(snapshotDirectory: string): Promise<{
113
+ export declare function validatePublishedCatalogSnapshotMetadata(snapshotDirectory: string): Promise<{
101
114
  rootDir: string;
102
- manifest: CatalogManifestV4;
103
- ledger?: PluginReleaseLedger;
115
+ workspaceIdentity: string;
116
+ manifest: CatalogManifestV7;
117
+ }>;
118
+ export declare function validateCatalogSnapshotTransport(snapshotDirectory: string): Promise<{
119
+ rootDir: string;
120
+ manifest: CatalogManifestV7;
104
121
  snapshotDigest: string;
105
122
  }>;
123
+ type CatalogSnapshotValidationResult = {
124
+ rootDir: string;
125
+ manifest: CatalogManifestV7;
126
+ snapshotDigest: string;
127
+ };
128
+ export declare function validateCatalogSnapshotPluginEntriesComplete(snapshotDirectory: string, pluginNames: readonly string[]): Promise<CatalogSnapshotValidationResult>;
129
+ export declare function validateCatalogSnapshotComplete(snapshotDirectory: string): Promise<CatalogSnapshotValidationResult>;
130
+ export {};