@lesliechan721/aw-plugin-core 0.1.0-beta.3 → 0.1.0-beta.31
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/aw-capabilities.d.ts +27 -0
- package/dist/aw-capabilities.js +108 -0
- package/dist/aw-capabilities.js.map +1 -0
- package/dist/catalog-workspace-resolution.d.ts +3 -0
- package/dist/catalog-workspace-resolution.js +34 -0
- package/dist/catalog-workspace-resolution.js.map +1 -0
- package/dist/generated/plugin-manifest-v3.d.ts +675 -0
- package/dist/generated/{plugin-manifest-v1.js → plugin-manifest-v3.js} +1 -1
- package/dist/generated/plugin-manifest-v3.js.map +1 -0
- package/dist/index.d.ts +2 -2
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/manifest-contract.d.ts +3 -6
- package/dist/manifest-contract.js +209 -406
- package/dist/manifest-contract.js.map +1 -1
- package/dist/manifest-type-contract.d.ts +2 -2
- package/dist/manifest.d.ts +10 -8
- package/dist/manifest.js +11 -7
- package/dist/manifest.js.map +1 -1
- package/dist/plugin-authoring-capabilities.d.ts +21 -0
- package/dist/plugin-authoring-capabilities.js +187 -0
- package/dist/plugin-authoring-capabilities.js.map +1 -0
- package/dist/plugin-config.d.ts +13 -0
- package/dist/plugin-config.js +645 -0
- package/dist/plugin-config.js.map +1 -0
- package/dist/plugin-requirements.d.ts +34 -0
- package/dist/plugin-requirements.js +250 -0
- package/dist/plugin-requirements.js.map +1 -0
- package/dist/plugin-script-contract.d.ts +10 -12
- package/dist/plugin-script-contract.js +34 -64
- package/dist/plugin-script-contract.js.map +1 -1
- package/dist/types.d.ts +142 -62
- package/dist/workspace.d.ts +54 -29
- package/dist/workspace.js +497 -269
- package/dist/workspace.js.map +1 -1
- package/package.json +8 -4
- package/schemas/plugin-manifest-v3.json +590 -0
- package/dist/generated/plugin-manifest-v1.d.ts +0 -368
- package/dist/generated/plugin-manifest-v1.js.map +0 -1
- package/dist/plugin-release.d.ts +0 -30
- package/dist/plugin-release.js +0 -187
- package/dist/plugin-release.js.map +0 -1
- package/schemas/plugin-manifest-v1.json +0 -329
package/dist/types.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type {
|
|
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<
|
|
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 =
|
|
28
|
+
export type MarketplacePolicy = PluginManifestSourceV3['marketplace']['policy'];
|
|
29
29
|
export type MarketplaceAuthenticationPolicy = MarketplacePolicy['authentication'];
|
|
30
|
-
export type PluginMarketplaceMeta =
|
|
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
|
|
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 PluginPreApplyScript {
|
|
95
95
|
path: string;
|
|
96
|
-
|
|
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,99 @@ export interface PluginArtifactScriptsConfig {
|
|
|
122
119
|
render?: PluginArtifactRenderScriptEntry;
|
|
123
120
|
}
|
|
124
121
|
export interface PluginScriptsConfig {
|
|
125
|
-
|
|
126
|
-
lifecycle?: PluginLifecycleScripts;
|
|
122
|
+
preApply?: PluginPreApplyScript;
|
|
127
123
|
helpers?: PluginScriptHelpersConfig;
|
|
128
124
|
node?: PluginNodeScriptsConfig;
|
|
129
125
|
artifacts?: PluginArtifactScriptsConfig;
|
|
130
126
|
tests?: PluginScriptTestsConfig;
|
|
131
127
|
}
|
|
132
|
-
export type
|
|
133
|
-
export
|
|
134
|
-
|
|
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?:
|
|
164
|
+
default?: Value;
|
|
138
165
|
required?: boolean;
|
|
139
|
-
sensitive?:
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
166
|
+
sensitive?: never;
|
|
167
|
+
}
|
|
168
|
+
interface PluginConfigPlainStringField extends Omit<PluginConfigFieldBase<string>, 'sensitive'> {
|
|
169
|
+
type: 'string';
|
|
170
|
+
sensitive?: false;
|
|
171
|
+
choices?: PluginConfigChoices<string>;
|
|
172
|
+
validation?: PluginConfigStringValidation;
|
|
173
|
+
}
|
|
174
|
+
interface PluginConfigSensitiveStringField extends Omit<PluginConfigFieldBase<string>, 'default' | 'sensitive'> {
|
|
175
|
+
type: 'string';
|
|
176
|
+
sensitive: true;
|
|
177
|
+
default?: never;
|
|
178
|
+
choices?: never;
|
|
179
|
+
validation?: PluginConfigStringValidation;
|
|
180
|
+
}
|
|
181
|
+
export type PluginConfigStringField = PluginConfigPlainStringField | PluginConfigSensitiveStringField;
|
|
182
|
+
export interface PluginConfigNumberField extends PluginConfigFieldBase<number> {
|
|
183
|
+
type: 'number';
|
|
184
|
+
choices?: PluginConfigChoices<number>;
|
|
185
|
+
validation?: PluginConfigNumberValidation;
|
|
186
|
+
}
|
|
187
|
+
export interface PluginConfigBooleanField extends PluginConfigFieldBase<boolean> {
|
|
188
|
+
type: 'boolean';
|
|
189
|
+
choices?: PluginConfigChoices<boolean>;
|
|
190
|
+
}
|
|
191
|
+
export type PluginConfigScalarField = PluginConfigStringField | PluginConfigNumberField | PluginConfigBooleanField;
|
|
192
|
+
type DistributiveOmit<Value, Key extends PropertyKey> = Value extends unknown ? Omit<Value, Key> : never;
|
|
193
|
+
type PluginConfigNonSensitiveScalarField = PluginConfigPlainStringField | PluginConfigNumberField | PluginConfigBooleanField;
|
|
194
|
+
export type PluginConfigObjectPropertyField = DistributiveOmit<PluginConfigNonSensitiveScalarField, 'default' | 'sensitive'> & {
|
|
195
|
+
sensitive?: never;
|
|
196
|
+
};
|
|
197
|
+
export type PluginConfigAdditionalPropertiesField = DistributiveOmit<PluginConfigNonSensitiveScalarField, 'default' | 'required' | 'sensitive'> & {
|
|
198
|
+
sensitive?: never;
|
|
199
|
+
};
|
|
200
|
+
interface PluginConfigObjectFieldBase extends PluginConfigFieldBase<PluginConfigObject> {
|
|
201
|
+
type: 'object';
|
|
202
|
+
choices?: PluginConfigChoices<PluginConfigObject>;
|
|
203
|
+
validation?: PluginConfigObjectValidation;
|
|
204
|
+
}
|
|
205
|
+
export interface PluginConfigFixedObjectField extends PluginConfigObjectFieldBase {
|
|
206
|
+
properties: Record<string, PluginConfigObjectPropertyField>;
|
|
207
|
+
additionalProperties?: false;
|
|
143
208
|
}
|
|
144
|
-
export
|
|
209
|
+
export interface PluginConfigKeyValueObjectField extends PluginConfigObjectFieldBase {
|
|
210
|
+
properties?: never;
|
|
211
|
+
additionalProperties: PluginConfigAdditionalPropertiesField;
|
|
212
|
+
}
|
|
213
|
+
export type PluginConfigObjectField = PluginConfigFixedObjectField | PluginConfigKeyValueObjectField;
|
|
214
|
+
export type PluginConfigSchemaField = PluginConfigScalarField | PluginConfigObjectField;
|
|
145
215
|
export interface PluginConfigPresentationGroup {
|
|
146
216
|
id: string;
|
|
147
217
|
title: string;
|
|
@@ -149,28 +219,23 @@ export interface PluginConfigPresentationGroup {
|
|
|
149
219
|
fields: string[];
|
|
150
220
|
advanced?: boolean;
|
|
151
221
|
}
|
|
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
222
|
export interface PluginConfigPresentation {
|
|
166
223
|
groups?: PluginConfigPresentationGroup[];
|
|
167
|
-
fields?: Record<string, PluginConfigPresentationField>;
|
|
168
|
-
presets?: PluginConfigPresentationPreset[];
|
|
169
224
|
}
|
|
170
|
-
export interface
|
|
171
|
-
|
|
225
|
+
export interface PluginConfigDefinition {
|
|
226
|
+
fields: Record<string, PluginConfigSchemaField>;
|
|
172
227
|
presentation?: PluginConfigPresentation;
|
|
173
228
|
}
|
|
229
|
+
export type PluginConfigSchema = PluginConfigDefinition;
|
|
230
|
+
export interface PluginConfigValidationIssue {
|
|
231
|
+
code: string;
|
|
232
|
+
path: {
|
|
233
|
+
field: string;
|
|
234
|
+
property?: string;
|
|
235
|
+
};
|
|
236
|
+
message: string;
|
|
237
|
+
recoverable: true;
|
|
238
|
+
}
|
|
174
239
|
export interface PlatformAgentOverrides<T> {
|
|
175
240
|
claude?: Partial<T> | null;
|
|
176
241
|
codex?: Partial<T> | null;
|
|
@@ -239,6 +304,15 @@ export interface PluginExtensions {
|
|
|
239
304
|
agents?: AgentDefinition[];
|
|
240
305
|
}
|
|
241
306
|
export type ArtifactState = 'present' | 'disabled';
|
|
307
|
+
export interface CodexNativeSkillDelivery {
|
|
308
|
+
mode: 'codex-native';
|
|
309
|
+
identity: 'shared';
|
|
310
|
+
renderProfile: 'user';
|
|
311
|
+
}
|
|
312
|
+
export interface AwExtensionSkillDelivery {
|
|
313
|
+
mode: 'aw-extension';
|
|
314
|
+
}
|
|
315
|
+
export type CodexSkillDelivery = CodexNativeSkillDelivery | AwExtensionSkillDelivery;
|
|
242
316
|
export type ArtifactTarget = 'codex.developerInstructionsBlock' | 'codex.agentRole' | 'codex.skill' | 'claude.skill' | 'agent-skills.skill';
|
|
243
317
|
export type DynamicArtifactKind = 'instruction' | 'codexRole' | 'skill';
|
|
244
318
|
export type ManagedArtifactId = string;
|
|
@@ -250,14 +324,15 @@ export interface ArtifactRuntimeImportDefinition extends BuildConfigImportRefere
|
|
|
250
324
|
providerPluginId: PluginId;
|
|
251
325
|
providerVersion: PluginVersion;
|
|
252
326
|
source: string;
|
|
327
|
+
requiredCapabilities: string[];
|
|
328
|
+
capabilitySetDigest: string;
|
|
253
329
|
};
|
|
254
330
|
}
|
|
255
|
-
|
|
331
|
+
interface PluginArtifactTargetDefinitionBase {
|
|
256
332
|
id: string;
|
|
257
333
|
platform?: PlatformName;
|
|
258
334
|
distribution?: DistributionName;
|
|
259
335
|
scopes: Scope[];
|
|
260
|
-
target: ArtifactTarget;
|
|
261
336
|
kind?: DynamicArtifactKind;
|
|
262
337
|
projectManagedKind?: CodexProjectManagedKind;
|
|
263
338
|
states: ArtifactState[];
|
|
@@ -268,6 +343,13 @@ export interface PluginArtifactTargetDefinition {
|
|
|
268
343
|
sourceDirs?: string[];
|
|
269
344
|
runtimeImports?: ArtifactRuntimeImportDefinition[];
|
|
270
345
|
}
|
|
346
|
+
export type PluginArtifactTargetDefinition = PluginArtifactTargetDefinitionBase & {
|
|
347
|
+
target: 'codex.skill';
|
|
348
|
+
delivery: CodexSkillDelivery;
|
|
349
|
+
} | PluginArtifactTargetDefinitionBase & {
|
|
350
|
+
target: Exclude<ArtifactTarget, 'codex.skill'>;
|
|
351
|
+
delivery?: never;
|
|
352
|
+
};
|
|
271
353
|
export interface PluginArtifactsConfig {
|
|
272
354
|
targets?: PluginArtifactTargetDefinition[];
|
|
273
355
|
}
|
|
@@ -277,15 +359,14 @@ export interface PluginAgentSkillsDistribution {
|
|
|
277
359
|
export interface PluginDistributionsConfig {
|
|
278
360
|
agentSkills?: PluginAgentSkillsDistribution;
|
|
279
361
|
}
|
|
280
|
-
export interface
|
|
362
|
+
export interface PluginRequirements {
|
|
281
363
|
aw: {
|
|
282
|
-
|
|
364
|
+
capabilities?: string[];
|
|
283
365
|
};
|
|
284
366
|
}
|
|
285
|
-
export type PluginManifestSource =
|
|
286
|
-
export type NormalizedPluginManifest = Omit<
|
|
287
|
-
|
|
288
|
-
compatibility: PluginCompatibility;
|
|
367
|
+
export type PluginManifestSource = PluginManifestSourceV3;
|
|
368
|
+
export type NormalizedPluginManifest = Omit<PluginManifestSourceV3, 'requires' | 'extensions' | 'artifacts' | 'buildConfig' | 'scripts' | 'config'> & {
|
|
369
|
+
requires?: PluginRequirements;
|
|
289
370
|
extensions?: PluginExtensions;
|
|
290
371
|
artifacts?: PluginArtifactsConfig;
|
|
291
372
|
buildConfig?: BuildConfig;
|
|
@@ -295,6 +376,7 @@ export type NormalizedPluginManifest = Omit<PluginManifestSourceV1, 'schemaVersi
|
|
|
295
376
|
export interface PluginMeta {
|
|
296
377
|
sourceId?: CatalogSourceId;
|
|
297
378
|
sourceIdentity?: SourceIdentity;
|
|
379
|
+
catalogLogicalIdentity?: string;
|
|
298
380
|
pluginId?: PluginId;
|
|
299
381
|
marketplaceName?: string;
|
|
300
382
|
rootDir: string;
|
|
@@ -326,12 +408,13 @@ export interface CatalogManifestEntry {
|
|
|
326
408
|
tags?: string[];
|
|
327
409
|
strict: boolean;
|
|
328
410
|
policy: MarketplacePolicy;
|
|
329
|
-
|
|
411
|
+
dependencies: PluginId[];
|
|
412
|
+
requires: PluginRequirements;
|
|
330
413
|
source: string;
|
|
331
414
|
artifactDigest: string;
|
|
332
415
|
manifestDigest: string;
|
|
333
416
|
}
|
|
334
|
-
export interface
|
|
417
|
+
export interface CatalogManifestV7Entry extends CatalogManifestEntry {
|
|
335
418
|
name: PluginId;
|
|
336
419
|
contentDigest: string;
|
|
337
420
|
}
|
|
@@ -339,29 +422,25 @@ export interface CatalogMarketplaceIdentity {
|
|
|
339
422
|
owner: MarketplaceOwner;
|
|
340
423
|
interface: MarketplaceInterfaceMeta;
|
|
341
424
|
}
|
|
342
|
-
export type
|
|
425
|
+
export type CatalogManifestV7Release = {
|
|
343
426
|
state: 'development';
|
|
344
427
|
} | {
|
|
345
428
|
state: 'published';
|
|
346
|
-
targetVersion: string;
|
|
347
|
-
planId: string;
|
|
348
429
|
sourceHead: string;
|
|
349
|
-
contentDigest: string;
|
|
350
430
|
};
|
|
351
|
-
export interface
|
|
352
|
-
schemaVersion:
|
|
431
|
+
export interface CatalogManifestV7 {
|
|
432
|
+
schemaVersion: 7;
|
|
353
433
|
catalogVersion: string;
|
|
354
434
|
channel: CatalogChannel;
|
|
355
|
-
|
|
435
|
+
requires: PluginRequirements;
|
|
356
436
|
marketplace: CatalogMarketplaceIdentity;
|
|
357
|
-
release:
|
|
358
|
-
entries:
|
|
437
|
+
release: CatalogManifestV7Release;
|
|
438
|
+
entries: CatalogManifestV7Entry[];
|
|
359
439
|
}
|
|
360
440
|
export interface PlatformPluginManifest {
|
|
361
441
|
name: string;
|
|
362
442
|
version: PluginVersion;
|
|
363
443
|
description: string;
|
|
364
|
-
compatibility: PluginCompatibility;
|
|
365
444
|
skills?: string;
|
|
366
445
|
mcpServers?: string;
|
|
367
446
|
apps?: string;
|
|
@@ -426,3 +505,4 @@ export interface ClaudeSkillArtifact extends ArtifactPlanArtifactBase {
|
|
|
426
505
|
files?: Record<string, string>;
|
|
427
506
|
};
|
|
428
507
|
}
|
|
508
|
+
export {};
|
package/dist/workspace.d.ts
CHANGED
|
@@ -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,
|
|
4
|
-
export declare const
|
|
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
|
|
11
|
-
export interface
|
|
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
|
|
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
|
|
29
|
-
export interface
|
|
27
|
+
export type CatalogWorkspaceBuildAdapter = CatalogWorkspacePluginBuildAdapter;
|
|
28
|
+
export interface CatalogWorkspaceSourceOptions {
|
|
30
29
|
reservedImports?: ReservedImportRegistry;
|
|
31
30
|
}
|
|
32
|
-
export
|
|
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
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
metadata: MarketplaceSourceMeta;
|
|
52
|
+
export declare function readCatalogWorkspaceMarker(workspaceRoot: string): Promise<{
|
|
53
|
+
markerPath: string;
|
|
54
|
+
workspaceIdentity: string;
|
|
44
55
|
}>;
|
|
45
|
-
export declare function
|
|
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
|
|
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
|
|
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:
|
|
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:
|
|
68
|
-
ledger: PluginReleaseLedger;
|
|
82
|
+
manifest: CatalogManifestV7;
|
|
69
83
|
snapshotDigest: string;
|
|
70
84
|
}>;
|
|
71
|
-
export declare function
|
|
85
|
+
export declare function preparePublishedCatalogWorkspace(options: {
|
|
72
86
|
workspaceRoot: string;
|
|
73
87
|
sourceHead: string;
|
|
74
88
|
outputPath?: string;
|
|
75
89
|
previousSnapshotRoot?: string;
|
|
76
|
-
|
|
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
|
|
100
|
+
export declare function buildCatalogWorkspacePlugin(options: {
|
|
88
101
|
workspaceRoot: string;
|
|
89
102
|
pluginDirectory: string;
|
|
90
103
|
outputPath?: string;
|
|
91
104
|
force?: boolean;
|
|
92
|
-
adapter:
|
|
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
|
|
113
|
+
export declare function validatePublishedCatalogSnapshotMetadata(snapshotDirectory: string): Promise<{
|
|
101
114
|
rootDir: string;
|
|
102
|
-
|
|
103
|
-
|
|
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 {};
|