@lesliechan721/aw 0.1.0-beta.4 → 0.1.0-beta.6
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/authoring/scripts/lib/plugin-version-check.d.mts +14 -0
- package/dist/authoring/scripts/lib/plugin-version-check.mjs +10 -224
- package/dist/authoring/scripts/lib/plugin-version-check.mjs.map +1 -1
- package/dist/authoring/scripts/remove-plugin.d.mts +2 -0
- package/dist/authoring/scripts/remove-plugin.mjs +366 -0
- package/dist/authoring/scripts/remove-plugin.mjs.map +1 -0
- package/dist/authoring/scripts/validate-plugin.mjs +9 -46
- package/dist/authoring/scripts/validate-plugin.mjs.map +1 -1
- package/dist/scripts/bundle-plugins.d.ts +0 -2
- package/dist/scripts/bundle-plugins.js +4 -2
- package/dist/scripts/bundle-plugins.js.map +1 -1
- package/dist/scripts/plugin-staging.d.ts +1 -16
- package/dist/scripts/plugin-staging.js +8 -115
- package/dist/scripts/plugin-staging.js.map +1 -1
- package/dist/src/authoring/workspace-commands.d.ts +9 -1
- package/dist/src/authoring/workspace-commands.js +24 -16
- package/dist/src/authoring/workspace-commands.js.map +1 -1
- package/dist/src/commands/catalog-publication-inspection.d.ts +106 -0
- package/dist/src/commands/catalog-publication-inspection.js +444 -0
- package/dist/src/commands/catalog-publication-inspection.js.map +1 -0
- package/dist/src/commands/catalog-publish.d.ts +18 -2
- package/dist/src/commands/catalog-publish.js +261 -316
- package/dist/src/commands/catalog-publish.js.map +1 -1
- package/dist/src/commands/catalog-status.d.ts +60 -0
- package/dist/src/commands/catalog-status.js +251 -0
- package/dist/src/commands/catalog-status.js.map +1 -0
- package/dist/src/commands/plugin-capabilities.d.ts +22 -0
- package/dist/src/commands/plugin-capabilities.js +143 -0
- package/dist/src/commands/plugin-capabilities.js.map +1 -0
- package/dist/src/commands/rebuild-command.d.ts +2 -0
- package/dist/src/commands/rebuild-command.js +37 -6
- package/dist/src/commands/rebuild-command.js.map +1 -1
- package/dist/src/commands/rebuild-integration.d.ts +1 -0
- package/dist/src/commands/rebuild-integration.js +55 -57
- package/dist/src/commands/rebuild-integration.js.map +1 -1
- package/dist/src/commands/status-v4.d.ts +21 -0
- package/dist/src/commands/status-v4.js +63 -2
- package/dist/src/commands/status-v4.js.map +1 -1
- package/dist/src/index.js +79 -18
- package/dist/src/index.js.map +1 -1
- package/dist/src/tui/components.d.ts +70 -0
- package/dist/src/tui/components.js +149 -6
- package/dist/src/tui/components.js.map +1 -1
- package/dist/src/tui/console-app-v4.js +1660 -628
- package/dist/src/tui/console-app-v4.js.map +1 -1
- package/dist/src/tui/controller-runtime.d.ts +5 -1
- package/dist/src/tui/controller-runtime.js +184 -33
- package/dist/src/tui/controller-runtime.js.map +1 -1
- package/dist/src/tui/controller.d.ts +35 -2
- package/dist/src/tui/controller.js +300 -39
- package/dist/src/tui/controller.js.map +1 -1
- package/dist/src/tui/diagnostics.d.ts +31 -0
- package/dist/src/tui/diagnostics.js +71 -0
- package/dist/src/tui/diagnostics.js.map +1 -0
- package/dist/src/tui/index.d.ts +5 -3
- package/dist/src/tui/index.js +3 -1
- package/dist/src/tui/index.js.map +1 -1
- package/dist/src/tui/model.d.ts +33 -4
- package/dist/src/tui/model.js +252 -17
- package/dist/src/tui/model.js.map +1 -1
- package/dist/src/tui/router.d.ts +15 -9
- package/dist/src/tui/router.js +35 -0
- package/dist/src/tui/router.js.map +1 -1
- package/dist/src/tui/theme.d.ts +18 -10
- package/dist/src/tui/theme.js +18 -10
- package/dist/src/tui/theme.js.map +1 -1
- package/dist/src/tui/viewport.d.ts +20 -0
- package/dist/src/tui/viewport.js +29 -0
- package/dist/src/tui/viewport.js.map +1 -0
- package/dist/src/utils/catalog-runtime-projection.d.ts +1 -7
- package/dist/src/utils/catalog-runtime-projection.js +2 -62
- package/dist/src/utils/catalog-runtime-projection.js.map +1 -1
- package/dist/src/utils/catalog-source-cache.d.ts +12 -11
- package/dist/src/utils/catalog-source-cache.js +20 -0
- package/dist/src/utils/catalog-source-cache.js.map +1 -1
- package/dist/src/utils/dynamic-skill-tree.js +1 -1
- package/dist/src/utils/dynamic-skill-tree.js.map +1 -1
- package/dist/src/utils/git-catalog-provider.js +1 -1
- package/dist/src/utils/git-catalog-provider.js.map +1 -1
- package/dist/src/utils/manifest.d.ts +0 -1
- package/dist/src/utils/manifest.js +0 -1
- package/dist/src/utils/manifest.js.map +1 -1
- package/dist/src/utils/plugin-config.js +28 -30
- package/dist/src/utils/plugin-config.js.map +1 -1
- package/dist/src/utils/skill-validation.d.ts +1 -1
- package/dist/src/utils/skill-validation.js +1 -1
- package/dist/src/utils/skill-validation.js.map +1 -1
- package/dist/src/utils/state-paths.d.ts +1 -0
- package/dist/src/utils/state-paths.js +5 -0
- package/dist/src/utils/state-paths.js.map +1 -1
- package/package.json +3 -4
- package/dist/src/utils/plugin-authoring-capabilities.d.ts +0 -23
- package/dist/src/utils/plugin-authoring-capabilities.js +0 -37
- package/dist/src/utils/plugin-authoring-capabilities.js.map +0 -1
- package/dist/src/utils/plugin-authoring-capabilities.json +0 -92
- package/dist/src/utils/skill-frontmatter-capabilities.d.ts +0 -201
- package/dist/src/utils/skill-frontmatter-capabilities.js +0 -5
- package/dist/src/utils/skill-frontmatter-capabilities.js.map +0 -1
- package/dist/src/utils/skill-frontmatter-capabilities.json +0 -200
|
@@ -4,8 +4,6 @@ export interface BundlePluginsOptions {
|
|
|
4
4
|
outputRoot?: string;
|
|
5
5
|
buildMode?: PluginBundleBuildMode;
|
|
6
6
|
stagingRunner?: PluginStagingRunner;
|
|
7
|
-
catalogVersion?: string;
|
|
8
|
-
channel?: import('../src/types.js').CatalogChannel;
|
|
9
7
|
assertPackageVersions?: boolean;
|
|
10
8
|
}
|
|
11
9
|
export declare function bundlePlugins(options?: BundlePluginsOptions): Promise<{
|
|
@@ -39,6 +39,10 @@ async function assertPackageVersions(repoRoot) {
|
|
|
39
39
|
if (Object.hasOwn(rootPackageJson, 'version')) {
|
|
40
40
|
throw new Error('package.json must not declare a version; release/version-targets.json is the release target source.');
|
|
41
41
|
}
|
|
42
|
+
if (targets.schemaVersion !== 2
|
|
43
|
+
|| Object.keys(targets).sort().join('\n') !== ['cli', 'schemaVersion'].join('\n')) {
|
|
44
|
+
throw new Error('release/version-targets.json must use schemaVersion 2 with only the CLI target.');
|
|
45
|
+
}
|
|
42
46
|
const targetVersion = assertStrictSemVer(targets.cli, 'release/version-targets.json cli');
|
|
43
47
|
if (targetVersion.includes('-')) {
|
|
44
48
|
throw new Error('Invalid release/version-targets.json cli: expected a stable SemVer 2.0.0 string.');
|
|
@@ -104,8 +108,6 @@ export async function bundlePlugins(options = {}) {
|
|
|
104
108
|
await stageCatalogArtifacts({
|
|
105
109
|
repoRoot,
|
|
106
110
|
outputRoot,
|
|
107
|
-
catalogVersion: options.catalogVersion ?? sourceMeta.catalog.version,
|
|
108
|
-
...(options.channel ? { channel: options.channel } : {}),
|
|
109
111
|
});
|
|
110
112
|
return {
|
|
111
113
|
outputRoot,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bundle-plugins.js","sourceRoot":"","sources":["../../scripts/bundle-plugins.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,OAAO,EAAE,MAAM,UAAU,CAAC;AAE1B,OAAO,EACL,qBAAqB,EACrB,iBAAiB,GAKlB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,EACL,kBAAkB,EAClB,yBAAyB,EACzB,eAAe,EACf,yBAAyB,GAC1B,MAAM,0BAA0B,CAAC;AAElC,OAAO,EAAE,kCAAkC,EAAE,MAAM,4CAA4C,CAAC;AAChG,OAAO,EAAE,8BAA8B,EAAE,MAAM,qCAAqC,CAAC;
|
|
1
|
+
{"version":3,"file":"bundle-plugins.js","sourceRoot":"","sources":["../../scripts/bundle-plugins.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,31 +10,16 @@ export { scanJavaScriptImportSpecifiers, scanNodeImportContract, } from '../src/
|
|
|
10
10
|
export { formatMarketplaceProductsForError, formatSupportedPlatforms, resolveSupportedPlatforms, } from '../src/utils/platform-support.js';
|
|
11
11
|
export { resolveAwHome, resolveCliPackageRoot, } from '../src/utils/paths.js';
|
|
12
12
|
export { CATALOG_MANIFEST_FILENAME, } from '../src/utils/bundle-layout.js';
|
|
13
|
-
import type {
|
|
13
|
+
import type { CatalogManifestV4 } from '../src/types.js';
|
|
14
14
|
import { CATALOG_SCHEMA_4_CLI_FLOOR } from '../src/utils/catalog-manifest-v4.js';
|
|
15
|
-
import { type PluginReleaseLedger } from '../src/utils/plugin-release.js';
|
|
16
15
|
export type { PlatformName, PluginConfigSchemaField, PluginManifestSource, PluginMeta, Scope, } from '../src/types.js';
|
|
17
16
|
export type { PluginConfigValue } from '../src/utils/plugin-config.js';
|
|
18
17
|
export interface CatalogStageOptions {
|
|
19
18
|
repoRoot?: string;
|
|
20
19
|
outputRoot: string;
|
|
21
|
-
catalogVersion?: string;
|
|
22
|
-
channel?: CatalogChannel;
|
|
23
|
-
phase?: 'development' | 'release';
|
|
24
|
-
previousReleaseLedger?: PluginReleaseLedger;
|
|
25
|
-
pluginVersionOverrides?: Readonly<Record<string, string>>;
|
|
26
|
-
pluginCandidates?: ReadonlyArray<{
|
|
27
|
-
name: string;
|
|
28
|
-
targetVersion: string;
|
|
29
|
-
candidateVersion: string;
|
|
30
|
-
contentDigest: string;
|
|
31
|
-
action: 'publish' | 'skip';
|
|
32
|
-
}>;
|
|
33
|
-
release?: CatalogManifestV4Release;
|
|
34
20
|
}
|
|
35
21
|
export interface CatalogStageResult {
|
|
36
22
|
manifest: CatalogManifestV4;
|
|
37
|
-
releaseLedger: PluginReleaseLedger;
|
|
38
23
|
canonicalManifestPath: string;
|
|
39
24
|
}
|
|
40
25
|
export { CATALOG_SCHEMA_4_CLI_FLOOR };
|
|
@@ -11,14 +11,13 @@ export { formatMarketplaceProductsForError, formatSupportedPlatforms, resolveSup
|
|
|
11
11
|
export { resolveAwHome, resolveCliPackageRoot, } from '../src/utils/paths.js';
|
|
12
12
|
export { CATALOG_MANIFEST_FILENAME, } from '../src/utils/bundle-layout.js';
|
|
13
13
|
import { CATALOG_MANIFEST_FILENAME, } from '../src/utils/bundle-layout.js';
|
|
14
|
-
import {
|
|
15
|
-
import { calculateCatalogEntryContentDigest, } from '../src/utils/catalog-digests.js';
|
|
14
|
+
import { compareStrictSemVer, readMarketplaceSourceMeta, resolvePluginsFromCatalog, } from '../src/utils/manifest.js';
|
|
16
15
|
import { createCatalogManifestV4, createCatalogManifestV4Entry, CATALOG_SCHEMA_4_CLI_FLOOR, validateCatalogManifestV4, } from '../src/utils/catalog-manifest-v4.js';
|
|
17
16
|
import { validateCatalogSnapshot } from '../src/utils/catalog-snapshot.js';
|
|
18
17
|
import { validatePluginMetaDependencyGraph } from '../src/utils/plugin-dependencies.js';
|
|
19
18
|
import { readJsonFile } from '../src/utils/json.js';
|
|
20
19
|
import { resolveCliPackageRoot } from '../src/utils/paths.js';
|
|
21
|
-
import {
|
|
20
|
+
import { assertStablePluginVersion, PLUGIN_RELEASE_LEDGER_FILENAME, } from '../src/utils/plugin-release.js';
|
|
22
21
|
export { CATALOG_SCHEMA_4_CLI_FLOOR };
|
|
23
22
|
export const CATALOG_SCHEMA_3_CLI_FLOOR = CATALOG_SCHEMA_4_CLI_FLOOR;
|
|
24
23
|
function detectCatalogChannel(version) {
|
|
@@ -34,121 +33,25 @@ function resolveCatalogMinAwVersion(plugins) {
|
|
|
34
33
|
}
|
|
35
34
|
return current;
|
|
36
35
|
}
|
|
37
|
-
async function readCliPackageMetadata(repoRoot) {
|
|
38
|
-
const candidatePaths = [
|
|
39
|
-
path.join(repoRoot, 'packages', 'cli', 'package.json'),
|
|
40
|
-
path.join(repoRoot, 'package.json'),
|
|
41
|
-
path.join(resolveCliPackageRoot(), 'package.json'),
|
|
42
|
-
];
|
|
43
|
-
let cliPackageJsonPath = candidatePaths[candidatePaths.length - 1];
|
|
44
|
-
for (const candidatePath of candidatePaths) {
|
|
45
|
-
if (await fs.pathExists(candidatePath)) {
|
|
46
|
-
cliPackageJsonPath = candidatePath;
|
|
47
|
-
break;
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
const packageJson = await readJsonFile(cliPackageJsonPath);
|
|
51
|
-
return {
|
|
52
|
-
version: assertStrictSemVer(packageJson.version, 'packages/cli/package.json version'),
|
|
53
|
-
};
|
|
54
|
-
}
|
|
55
36
|
async function writeCanonicalJsonFile(filePath, value) {
|
|
56
37
|
const content = `${JSON.stringify(value, null, 2)}\n`;
|
|
57
38
|
await fs.ensureDir(path.dirname(filePath));
|
|
58
39
|
await fs.writeFile(filePath, content, 'utf8');
|
|
59
40
|
return content;
|
|
60
41
|
}
|
|
61
|
-
async function rewriteBundledPluginVersions(outputRoot, overrides) {
|
|
62
|
-
for (const [pluginName, requestedVersion] of Object.entries(overrides)) {
|
|
63
|
-
const version = assertStrictSemVer(requestedVersion, `${pluginName} release version`);
|
|
64
|
-
const pluginRoot = path.join(outputRoot, 'plugins', pluginName);
|
|
65
|
-
if (!(await fs.pathExists(pluginRoot))) {
|
|
66
|
-
throw new Error(`Plugin version override refers to unknown plugin ${JSON.stringify(pluginName)}.`);
|
|
67
|
-
}
|
|
68
|
-
for (const relativePath of [
|
|
69
|
-
'.agents-plugin/plugin.json',
|
|
70
|
-
'.claude-plugin/plugin.json',
|
|
71
|
-
'.codex-plugin/plugin.json',
|
|
72
|
-
]) {
|
|
73
|
-
const manifestPath = path.join(pluginRoot, relativePath);
|
|
74
|
-
if (!(await fs.pathExists(manifestPath)))
|
|
75
|
-
continue;
|
|
76
|
-
const manifest = await readJsonFile(manifestPath);
|
|
77
|
-
await writeCanonicalJsonFile(manifestPath, { ...manifest, version });
|
|
78
|
-
}
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
42
|
export async function stageCatalogArtifacts(options) {
|
|
82
43
|
const repoRoot = options.repoRoot ?? path.resolve(resolveCliPackageRoot(), '..', '..');
|
|
83
|
-
const
|
|
84
|
-
|
|
85
|
-
readCliPackageMetadata(repoRoot),
|
|
44
|
+
const [sourceMetadata, sourcePlugins] = await Promise.all([
|
|
45
|
+
readMarketplaceSourceMeta(repoRoot),
|
|
86
46
|
resolvePluginsFromCatalog(options.outputRoot),
|
|
87
47
|
]);
|
|
88
48
|
validatePluginMetaDependencyGraph(sourcePlugins);
|
|
89
|
-
const catalogVersion =
|
|
90
|
-
const
|
|
91
|
-
const channel = options.channel ?? derivedChannel;
|
|
92
|
-
if (channel !== derivedChannel) {
|
|
93
|
-
throw new Error(`Catalog channel ${JSON.stringify(channel)} does not match catalog version ${catalogVersion}.`);
|
|
94
|
-
}
|
|
49
|
+
const catalogVersion = sourceMetadata.catalog.version;
|
|
50
|
+
const channel = detectCatalogChannel(catalogVersion);
|
|
95
51
|
for (const plugin of sourcePlugins) {
|
|
96
52
|
assertStablePluginVersion(plugin.manifest.version, `${plugin.manifest.name} source version`);
|
|
97
53
|
}
|
|
98
|
-
const
|
|
99
|
-
plugin.manifest.name,
|
|
100
|
-
await calculateCatalogEntryContentDigest(path.join(options.outputRoot, 'plugins', plugin.manifest.name)),
|
|
101
|
-
]));
|
|
102
|
-
const contentDigests = new Map(contentDigestEntries);
|
|
103
|
-
const previousReleaseLedger = options.previousReleaseLedger
|
|
104
|
-
?? { schemaVersion: PLUGIN_RELEASE_LEDGER_SCHEMA_VERSION, records: [] };
|
|
105
|
-
if (phase === 'release') {
|
|
106
|
-
const overrides = options.pluginVersionOverrides ?? (channel === 'beta'
|
|
107
|
-
? resolveBetaPluginVersionOverrides({
|
|
108
|
-
plugins: sourcePlugins,
|
|
109
|
-
contentDigests,
|
|
110
|
-
ledger: previousReleaseLedger,
|
|
111
|
-
})
|
|
112
|
-
: Object.fromEntries(sourcePlugins.map((plugin) => [
|
|
113
|
-
plugin.manifest.name, plugin.manifest.version,
|
|
114
|
-
])));
|
|
115
|
-
if (options.pluginVersionOverrides) {
|
|
116
|
-
const expectedNames = sourcePlugins.map((plugin) => plugin.manifest.name).sort();
|
|
117
|
-
const actualNames = Object.keys(overrides).sort();
|
|
118
|
-
if (expectedNames.join('\0') !== actualNames.join('\0')) {
|
|
119
|
-
throw new Error('Plan plugin candidate overrides must cover the complete catalog inventory.');
|
|
120
|
-
}
|
|
121
|
-
for (const plugin of sourcePlugins) {
|
|
122
|
-
const candidateVersion = assertStrictSemVer(overrides[plugin.manifest.name], `${plugin.manifest.name} plan candidate version`);
|
|
123
|
-
const targetVersion = plugin.manifest.version;
|
|
124
|
-
if (candidateVersion !== targetVersion
|
|
125
|
-
&& !candidateVersion.startsWith(`${targetVersion}-beta.`))
|
|
126
|
-
throw new Error(`Plan plugin candidate ${plugin.manifest.name}@${candidateVersion} does not match stable target ${targetVersion}.`);
|
|
127
|
-
const planned = options.pluginCandidates?.find((entry) => entry.name === plugin.manifest.name);
|
|
128
|
-
if (options.pluginCandidates && (!planned
|
|
129
|
-
|| planned.targetVersion !== targetVersion
|
|
130
|
-
|| planned.candidateVersion !== candidateVersion
|
|
131
|
-
|| planned.contentDigest !== contentDigests.get(plugin.manifest.name))) {
|
|
132
|
-
throw new Error(`Plan plugin candidate ${plugin.manifest.name} does not match the staged target or content.`);
|
|
133
|
-
}
|
|
134
|
-
const stableSkipInBeta = channel === 'beta'
|
|
135
|
-
&& candidateVersion === targetVersion
|
|
136
|
-
&& planned?.action === 'skip';
|
|
137
|
-
if (stableSkipInBeta && !previousReleaseLedger.records.some((record) => record.plugin === plugin.manifest.name
|
|
138
|
-
&& record.version === targetVersion
|
|
139
|
-
&& record.contentDigest === contentDigests.get(plugin.manifest.name))) {
|
|
140
|
-
throw new Error(`Stable skip candidate ${plugin.manifest.name}@${targetVersion} is not present in release history with the same content.`);
|
|
141
|
-
}
|
|
142
|
-
if ((channel === 'beta') !== candidateVersion.includes('-beta.') && !stableSkipInBeta) {
|
|
143
|
-
throw new Error(`Plan plugin candidate ${plugin.manifest.name}@${candidateVersion} does not match catalog channel ${channel}.`);
|
|
144
|
-
}
|
|
145
|
-
}
|
|
146
|
-
}
|
|
147
|
-
await rewriteBundledPluginVersions(options.outputRoot, overrides);
|
|
148
|
-
}
|
|
149
|
-
const plugins = phase === 'release'
|
|
150
|
-
? await resolvePluginsFromCatalog(options.outputRoot)
|
|
151
|
-
: sourcePlugins;
|
|
54
|
+
const plugins = sourcePlugins;
|
|
152
55
|
const minAwVersion = resolveCatalogMinAwVersion(plugins);
|
|
153
56
|
const entries = await Promise.all(plugins.map((plugin) => createCatalogManifestV4Entry(plugin, path.join(options.outputRoot, 'plugins', plugin.manifest.name))));
|
|
154
57
|
const marketplace = await readJsonFile(path.join(options.outputRoot, '.agents', 'plugins', 'marketplace.json'));
|
|
@@ -164,14 +67,9 @@ export async function stageCatalogArtifacts(options) {
|
|
|
164
67
|
minVersion: minAwVersion,
|
|
165
68
|
},
|
|
166
69
|
},
|
|
167
|
-
release:
|
|
70
|
+
release: { state: 'development' },
|
|
168
71
|
entries,
|
|
169
72
|
});
|
|
170
|
-
const releaseLedger = appendCatalogToPluginReleaseLedger({
|
|
171
|
-
previous: previousReleaseLedger,
|
|
172
|
-
manifest,
|
|
173
|
-
contentDigests,
|
|
174
|
-
});
|
|
175
73
|
const canonicalManifestPath = path.join(options.outputRoot, CATALOG_MANIFEST_FILENAME);
|
|
176
74
|
const releaseLedgerPath = path.join(options.outputRoot, PLUGIN_RELEASE_LEDGER_FILENAME);
|
|
177
75
|
await Promise.all([
|
|
@@ -179,14 +77,9 @@ export async function stageCatalogArtifacts(options) {
|
|
|
179
77
|
fs.remove(releaseLedgerPath),
|
|
180
78
|
]);
|
|
181
79
|
await writeCanonicalJsonFile(canonicalManifestPath, manifest);
|
|
182
|
-
if (manifest.release.state === 'published') {
|
|
183
|
-
await writeCanonicalJsonFile(releaseLedgerPath, releaseLedger);
|
|
184
|
-
validatePluginReleaseLedgerAgainstManifest(releaseLedger, manifest);
|
|
185
|
-
}
|
|
186
80
|
await validateCatalogSnapshot(options.outputRoot);
|
|
187
81
|
return {
|
|
188
82
|
manifest,
|
|
189
|
-
releaseLedger,
|
|
190
83
|
canonicalManifestPath,
|
|
191
84
|
};
|
|
192
85
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugin-staging.js","sourceRoot":"","sources":["../../scripts/plugin-staging.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAE,MAAM,UAAU,CAAC;AAE1B,OAAO,EACL,iBAAiB,EACjB,8BAA8B,GAC/B,MAAM,mCAAmC,CAAC;AAQ3C,OAAO,EACL,kCAAkC,GACnC,MAAM,4CAA4C,CAAC;AAIpD,OAAO,EACL,sBAAsB,EACtB,mBAAmB,EACnB,kCAAkC,EAClC,wBAAwB,GACzB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EACL,uBAAuB,EACvB,4BAA4B,EAC5B,4BAA4B,GAC7B,MAAM,+BAA+B,CAAC;AACvC,OAAO,EACL,mBAAmB,EACnB,8BAA8B,EAC9B,eAAe,EACf,4BAA4B,EAC5B,kBAAkB,EAClB,yBAAyB,GAC1B,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,kCAAkC,EAClC,yBAAyB,EACzB,yBAAyB,EACzB,8BAA8B,EAC9B,oCAAoC,EACpC,iCAAiC,EACjC,0CAA0C,EAC1C,2BAA2B,GAC5B,MAAM,gCAAgC,CAAC;AACxC,OAAO,EACL,8BAA8B,EAC9B,sBAAsB,GACvB,MAAM,wCAAwC,CAAC;AAChD,OAAO,EACL,iCAAiC,EACjC,wBAAwB,EACxB,yBAAyB,GAC1B,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EACL,aAAa,EACb,qBAAqB,GACtB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,yBAAyB,GAC1B,MAAM,+BAA+B,CAAC;AAEvC,OAAO,EACL,yBAAyB,GAC1B,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"plugin-staging.js","sourceRoot":"","sources":["../../scripts/plugin-staging.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { type CatalogVersionBump } from '@lesliechan721/aw-plugin-core';
|
|
1
2
|
export interface AuthoringCommandIo {
|
|
2
3
|
stdout(text: string): void;
|
|
3
4
|
stderr(text: string): void;
|
|
@@ -15,9 +16,16 @@ export declare function runCatalogInitCommand(options: {
|
|
|
15
16
|
export declare function runCatalogVersionCommand(options: {
|
|
16
17
|
workspaceRoot: string;
|
|
17
18
|
version?: string;
|
|
19
|
+
bump?: CatalogVersionBump;
|
|
18
20
|
json?: boolean;
|
|
19
21
|
io: AuthoringCommandIo;
|
|
20
|
-
}): Promise<
|
|
22
|
+
}): Promise<{
|
|
23
|
+
command: 'catalog:version';
|
|
24
|
+
ok: true;
|
|
25
|
+
workspaceRoot: string;
|
|
26
|
+
catalogVersion: string;
|
|
27
|
+
changed: boolean;
|
|
28
|
+
}>;
|
|
21
29
|
export declare function runCatalogBuildCommand(options: {
|
|
22
30
|
workspaceRoot: string;
|
|
23
31
|
out?: string;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import path from 'node:path';
|
|
2
2
|
import fs from 'fs-extra';
|
|
3
|
-
import {
|
|
3
|
+
import { buildCatalogWorkspace, buildCatalogWorkspacePlugin, initializeCatalogWorkspace, mutateCatalogWorkspaceVersion, readCatalogWorkspace, validateCatalogSnapshot, } from '@lesliechan721/aw-plugin-core';
|
|
4
4
|
import { bundleLocalPlugin, createCatalogRuntimeImportResolver, } from '../../scripts/plugin-staging.js';
|
|
5
5
|
import { runPluginScriptTests } from '../../scripts/test-plugin-scripts.js';
|
|
6
6
|
import { CLI_RESERVED_IMPORTS } from '../utils/manifest.js';
|
|
@@ -24,7 +24,7 @@ function writeJson(io, value) {
|
|
|
24
24
|
io.stdout(`${JSON.stringify(value)}\n`);
|
|
25
25
|
}
|
|
26
26
|
export async function runCatalogInitCommand(options) {
|
|
27
|
-
const result = await
|
|
27
|
+
const result = await initializeCatalogWorkspace(options);
|
|
28
28
|
const receipt = {
|
|
29
29
|
command: 'catalog:init',
|
|
30
30
|
ok: true,
|
|
@@ -35,28 +35,36 @@ export async function runCatalogInitCommand(options) {
|
|
|
35
35
|
if (options.json)
|
|
36
36
|
writeJson(options.io, receipt);
|
|
37
37
|
else
|
|
38
|
-
options.io.stdout(`Catalog
|
|
38
|
+
options.io.stdout(`Catalog Workspace initialized at ${result.workspaceRoot}.\n`);
|
|
39
39
|
}
|
|
40
40
|
export async function runCatalogVersionCommand(options) {
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
41
|
+
if (options.version !== undefined && options.bump !== undefined) {
|
|
42
|
+
throw new Error('Catalog version accepts an exact version or --bump, not both.');
|
|
43
|
+
}
|
|
44
|
+
const current = await readCatalogWorkspace(options.workspaceRoot, {
|
|
45
|
+
reservedImports: CLI_RESERVED_IMPORTS,
|
|
46
|
+
});
|
|
47
|
+
const metadata = options.version === undefined && options.bump === undefined
|
|
48
|
+
? current.metadata
|
|
49
|
+
: await mutateCatalogWorkspaceVersion(options.workspaceRoot, {
|
|
50
|
+
...(options.version === undefined ? {} : { version: options.version }),
|
|
51
|
+
...(options.bump === undefined ? {} : { bump: options.bump }),
|
|
52
|
+
}, { reservedImports: CLI_RESERVED_IMPORTS });
|
|
46
53
|
const receipt = {
|
|
47
54
|
command: 'catalog:version',
|
|
48
55
|
ok: true,
|
|
49
56
|
workspaceRoot: path.resolve(options.workspaceRoot),
|
|
50
57
|
catalogVersion: metadata.catalog.version,
|
|
51
|
-
changed:
|
|
58
|
+
changed: metadata.catalog.version !== current.metadata.catalog.version,
|
|
52
59
|
};
|
|
53
60
|
if (options.json)
|
|
54
61
|
writeJson(options.io, receipt);
|
|
55
62
|
else
|
|
56
63
|
options.io.stdout(`${metadata.catalog.version}\n`);
|
|
64
|
+
return receipt;
|
|
57
65
|
}
|
|
58
66
|
export async function runCatalogBuildCommand(options) {
|
|
59
|
-
const result = await
|
|
67
|
+
const result = await buildCatalogWorkspace({
|
|
60
68
|
workspaceRoot: options.workspaceRoot,
|
|
61
69
|
...(options.out ? { outputPath: options.out } : {}),
|
|
62
70
|
force: options.force,
|
|
@@ -85,7 +93,7 @@ export async function runCatalogValidateCommand(options) {
|
|
|
85
93
|
options.io.stdout(`Catalog snapshot is valid: ${result.rootDir}.\n`);
|
|
86
94
|
}
|
|
87
95
|
export async function runPluginBuildCommand(options) {
|
|
88
|
-
const result = await
|
|
96
|
+
const result = await buildCatalogWorkspacePlugin({
|
|
89
97
|
workspaceRoot: options.workspaceRoot,
|
|
90
98
|
pluginDirectory: options.pluginDirectory,
|
|
91
99
|
...(options.out ? { outputPath: options.out } : {}),
|
|
@@ -100,15 +108,15 @@ export async function runPluginBuildCommand(options) {
|
|
|
100
108
|
options.io.stdout(`Plugin bundle built at ${result.outputRoot}.\n`);
|
|
101
109
|
}
|
|
102
110
|
export async function runPluginTestCommand(options) {
|
|
103
|
-
const
|
|
104
|
-
const pluginRoot = await fs.realpath(path.resolve(
|
|
105
|
-
const plugin =
|
|
111
|
+
const catalogWorkspace = await readCatalogWorkspace(options.workspaceRoot, { reservedImports: CLI_RESERVED_IMPORTS });
|
|
112
|
+
const pluginRoot = await fs.realpath(path.resolve(catalogWorkspace.workspaceRoot, options.pluginDirectory));
|
|
113
|
+
const plugin = catalogWorkspace.plugins.find((entry) => entry.rootDir === pluginRoot);
|
|
106
114
|
if (!plugin)
|
|
107
|
-
throw new Error(`Plugin directory is not part of this
|
|
115
|
+
throw new Error(`Plugin directory is not part of this Catalog Workspace source: ${pluginRoot}`);
|
|
108
116
|
let stdout = '';
|
|
109
117
|
let stderr = '';
|
|
110
118
|
const exitCode = await runPluginScriptTests([plugin.manifest.name], {
|
|
111
|
-
repoRoot:
|
|
119
|
+
repoRoot: catalogWorkspace.workspaceRoot,
|
|
112
120
|
stdout: (text) => { stdout += text; },
|
|
113
121
|
stderr: (text) => { stderr += text; },
|
|
114
122
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspace-commands.js","sourceRoot":"","sources":["../../../src/authoring/workspace-commands.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,MAAM,UAAU,CAAC;AAE1B,OAAO,EACL,qBAAqB,EACrB,
|
|
1
|
+
{"version":3,"file":"workspace-commands.js","sourceRoot":"","sources":["../../../src/authoring/workspace-commands.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
import { validatePublishedCatalogSnapshot, type CatalogWorkspace } from '@lesliechan721/aw-plugin-core';
|
|
2
|
+
export interface CatalogPublicationIssue {
|
|
3
|
+
code: string;
|
|
4
|
+
message: string;
|
|
5
|
+
}
|
|
6
|
+
export declare class CatalogPublicationInspectionError extends Error {
|
|
7
|
+
readonly code: string;
|
|
8
|
+
constructor(code: string, message: string, options?: ErrorOptions);
|
|
9
|
+
}
|
|
10
|
+
export interface CatalogPublicationPreparation {
|
|
11
|
+
temporaryRoot: string;
|
|
12
|
+
repositoryRoot: string;
|
|
13
|
+
archivedCatalogWorkspaceRoot: string;
|
|
14
|
+
catalogWorkspaceRoot: string;
|
|
15
|
+
repoRoot: string;
|
|
16
|
+
sourceHead: string;
|
|
17
|
+
remote: string;
|
|
18
|
+
branch: string;
|
|
19
|
+
branchRef: string;
|
|
20
|
+
tag: string;
|
|
21
|
+
tagRef: string;
|
|
22
|
+
fetchUrl: string;
|
|
23
|
+
pushUrl: string;
|
|
24
|
+
safeFetchUrl: string;
|
|
25
|
+
safePushUrl: string;
|
|
26
|
+
remoteIdentityDigest: string;
|
|
27
|
+
parent: string | null;
|
|
28
|
+
publishedVersion: string | null;
|
|
29
|
+
attemptPath: string;
|
|
30
|
+
attemptAvailable: boolean;
|
|
31
|
+
tagAvailable: boolean;
|
|
32
|
+
catalogWorkspace: CatalogWorkspace;
|
|
33
|
+
prepared: {
|
|
34
|
+
outputRoot: string;
|
|
35
|
+
catalogVersion: string;
|
|
36
|
+
channel: 'latest' | 'beta';
|
|
37
|
+
pluginNames: string[];
|
|
38
|
+
snapshotDigest: string;
|
|
39
|
+
contentDigest: string;
|
|
40
|
+
planId: string;
|
|
41
|
+
};
|
|
42
|
+
descriptor: CatalogPublicationDescriptor;
|
|
43
|
+
env: NodeJS.ProcessEnv;
|
|
44
|
+
}
|
|
45
|
+
export interface CatalogPublicationDescriptor {
|
|
46
|
+
schemaVersion: 1;
|
|
47
|
+
workspaceIdentity: string;
|
|
48
|
+
catalogVersion: string;
|
|
49
|
+
channel: 'latest' | 'beta';
|
|
50
|
+
sourceHead: string;
|
|
51
|
+
remote: {
|
|
52
|
+
name: string | null;
|
|
53
|
+
identityDigest: string;
|
|
54
|
+
};
|
|
55
|
+
branch: string;
|
|
56
|
+
parent: string | null;
|
|
57
|
+
tag: string;
|
|
58
|
+
snapshotDigest: string;
|
|
59
|
+
contentDigest: string;
|
|
60
|
+
planId: string;
|
|
61
|
+
ledgerDigest: string;
|
|
62
|
+
minCliVersion: string;
|
|
63
|
+
pluginNames: string[];
|
|
64
|
+
}
|
|
65
|
+
export declare function sanitizedGitEnvironment(source: NodeJS.ProcessEnv): NodeJS.ProcessEnv;
|
|
66
|
+
export declare function safeRemoteIdentity(value: string): string;
|
|
67
|
+
export declare function catalogAttemptPath(catalogWorkspaceRoot: string, catalogVersion: string): string;
|
|
68
|
+
export declare function publicationGit(cwd: string, args: readonly string[], env: NodeJS.ProcessEnv, code: string, label: string): Promise<string>;
|
|
69
|
+
export declare function publicationGitExit(cwd: string, args: readonly string[], env: NodeJS.ProcessEnv): Promise<boolean>;
|
|
70
|
+
export declare function parseRemoteRefs(output: string): Map<string, string>;
|
|
71
|
+
export declare function materializeSourceHead(options: {
|
|
72
|
+
repoRoot: string;
|
|
73
|
+
sourceHead: string;
|
|
74
|
+
outputRoot: string;
|
|
75
|
+
temporaryRoot: string;
|
|
76
|
+
env: NodeJS.ProcessEnv;
|
|
77
|
+
}): Promise<void>;
|
|
78
|
+
export declare function validateCatalogPublicationPlugins(catalogWorkspace: CatalogWorkspace, env: NodeJS.ProcessEnv): Promise<void>;
|
|
79
|
+
export declare function prepareCatalogPublicationInspection(options: {
|
|
80
|
+
workspaceRoot: string;
|
|
81
|
+
remote?: string;
|
|
82
|
+
remoteUrl?: string;
|
|
83
|
+
branch?: string;
|
|
84
|
+
env: NodeJS.ProcessEnv;
|
|
85
|
+
failOnUnavailable?: boolean;
|
|
86
|
+
}): Promise<CatalogPublicationPreparation>;
|
|
87
|
+
export declare function listCatalogPublicationVersions(options: {
|
|
88
|
+
workspaceRoot: string;
|
|
89
|
+
remote?: string;
|
|
90
|
+
remoteUrl?: string;
|
|
91
|
+
env: NodeJS.ProcessEnv;
|
|
92
|
+
}): Promise<string[]>;
|
|
93
|
+
export declare function readCatalogPublicationBranchState(options: {
|
|
94
|
+
workspaceRoot: string;
|
|
95
|
+
remote?: string;
|
|
96
|
+
remoteUrl?: string;
|
|
97
|
+
branch: string;
|
|
98
|
+
env: NodeJS.ProcessEnv;
|
|
99
|
+
}): Promise<{
|
|
100
|
+
commit: string;
|
|
101
|
+
version: string;
|
|
102
|
+
manifest: Awaited<ReturnType<typeof validatePublishedCatalogSnapshot>>['manifest'];
|
|
103
|
+
ledger: Awaited<ReturnType<typeof validatePublishedCatalogSnapshot>>['ledger'];
|
|
104
|
+
snapshotDigest: string;
|
|
105
|
+
} | null>;
|
|
106
|
+
export declare function disposeCatalogPublicationInspection(preparation: Pick<CatalogPublicationPreparation, 'temporaryRoot'>): Promise<void>;
|