@lesliechan721/aw 0.1.0-beta.54 → 0.1.0-beta.55

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 (109) hide show
  1. package/dist/authoring/scripts/lib/plugin-version-check.mjs +1 -1
  2. package/dist/authoring/scripts/validate-plugin.mjs +208 -31
  3. package/dist/authoring/scripts/validate-plugin.mjs.map +1 -1
  4. package/dist/scripts/bundle-plugins.js +8 -3
  5. package/dist/scripts/bundle-plugins.js.map +1 -1
  6. package/dist/src/adapters/helpers.d.ts +7 -0
  7. package/dist/src/adapters/helpers.js.map +1 -1
  8. package/dist/src/commands/aw-capabilities.d.ts +1 -1
  9. package/dist/src/commands/aw-capabilities.js +2 -0
  10. package/dist/src/commands/aw-capabilities.js.map +1 -1
  11. package/dist/src/commands/managed-commands.d.ts +26 -0
  12. package/dist/src/commands/managed-commands.js +277 -0
  13. package/dist/src/commands/managed-commands.js.map +1 -0
  14. package/dist/src/commands/operation-plan.d.ts +30 -1
  15. package/dist/src/commands/operation-plan.js.map +1 -1
  16. package/dist/src/commands/operation-planner.d.ts +1 -0
  17. package/dist/src/commands/operation-planner.js +1 -0
  18. package/dist/src/commands/operation-planner.js.map +1 -1
  19. package/dist/src/commands/plugin-capabilities.js +29 -1
  20. package/dist/src/commands/plugin-capabilities.js.map +1 -1
  21. package/dist/src/commands/rebuild-command.d.ts +2 -1
  22. package/dist/src/commands/rebuild-command.js +66 -26
  23. package/dist/src/commands/rebuild-command.js.map +1 -1
  24. package/dist/src/commands/rebuild-integration.d.ts +13 -1
  25. package/dist/src/commands/rebuild-integration.js +516 -61
  26. package/dist/src/commands/rebuild-integration.js.map +1 -1
  27. package/dist/src/commands/rebuild-operations.d.ts +3 -1
  28. package/dist/src/commands/rebuild-operations.js +9 -5
  29. package/dist/src/commands/rebuild-operations.js.map +1 -1
  30. package/dist/src/generators/local-plugin.js +16 -0
  31. package/dist/src/generators/local-plugin.js.map +1 -1
  32. package/dist/src/generators/permissions.d.ts +5 -2
  33. package/dist/src/generators/permissions.js +28 -15
  34. package/dist/src/generators/permissions.js.map +1 -1
  35. package/dist/src/index.js +11 -0
  36. package/dist/src/index.js.map +1 -1
  37. package/dist/src/output/command-receipt.d.ts +3 -1
  38. package/dist/src/output/command-receipt.js +30 -9
  39. package/dist/src/output/command-receipt.js.map +1 -1
  40. package/dist/src/output/rebuild-progress.js +14 -0
  41. package/dist/src/output/rebuild-progress.js.map +1 -1
  42. package/dist/src/portable/materializer.js +3 -0
  43. package/dist/src/portable/materializer.js.map +1 -1
  44. package/dist/src/review/skill-materialization.d.ts +14 -1
  45. package/dist/src/review/skill-materialization.js +138 -0
  46. package/dist/src/review/skill-materialization.js.map +1 -1
  47. package/dist/src/tui/console-app-v4.js +19 -7
  48. package/dist/src/tui/console-app-v4.js.map +1 -1
  49. package/dist/src/tui/controller-runtime.js +23 -9
  50. package/dist/src/tui/controller-runtime.js.map +1 -1
  51. package/dist/src/tui/controller.d.ts +5 -1
  52. package/dist/src/tui/controller.js +24 -3
  53. package/dist/src/tui/controller.js.map +1 -1
  54. package/dist/src/tui/diagnostic-projection.js +34 -6
  55. package/dist/src/tui/diagnostic-projection.js.map +1 -1
  56. package/dist/src/tui/operation-review-planner.js +102 -16
  57. package/dist/src/tui/operation-review-planner.js.map +1 -1
  58. package/dist/src/types.d.ts +22 -2
  59. package/dist/src/types.js.map +1 -1
  60. package/dist/src/utils/artifact-plan.d.ts +4 -3
  61. package/dist/src/utils/artifact-plan.js +50 -7
  62. package/dist/src/utils/artifact-plan.js.map +1 -1
  63. package/dist/src/utils/artifact-renderer.d.ts +7 -3
  64. package/dist/src/utils/artifact-renderer.js +19 -6
  65. package/dist/src/utils/artifact-renderer.js.map +1 -1
  66. package/dist/src/utils/artifact-request.d.ts +16 -5
  67. package/dist/src/utils/artifact-request.js +27 -15
  68. package/dist/src/utils/artifact-request.js.map +1 -1
  69. package/dist/src/utils/artifact-sources.d.ts +4 -0
  70. package/dist/src/utils/artifact-sources.js +17 -0
  71. package/dist/src/utils/artifact-sources.js.map +1 -1
  72. package/dist/src/utils/bundle-layout.js +7 -0
  73. package/dist/src/utils/bundle-layout.js.map +1 -1
  74. package/dist/src/utils/claude-skills-root.d.ts +8 -0
  75. package/dist/src/utils/claude-skills-root.js +76 -0
  76. package/dist/src/utils/claude-skills-root.js.map +1 -0
  77. package/dist/src/utils/codex-skills-root.d.ts +4 -0
  78. package/dist/src/utils/codex-skills-root.js +25 -0
  79. package/dist/src/utils/codex-skills-root.js.map +1 -0
  80. package/dist/src/utils/dynamic-skill-tree.d.ts +1 -0
  81. package/dist/src/utils/dynamic-skill-tree.js +25 -6
  82. package/dist/src/utils/dynamic-skill-tree.js.map +1 -1
  83. package/dist/src/utils/local-marketplace.d.ts +9 -0
  84. package/dist/src/utils/local-marketplace.js +170 -90
  85. package/dist/src/utils/local-marketplace.js.map +1 -1
  86. package/dist/src/utils/managed-command-closure.d.ts +3 -0
  87. package/dist/src/utils/managed-command-closure.js +35 -0
  88. package/dist/src/utils/managed-command-closure.js.map +1 -0
  89. package/dist/src/utils/managed-command-evidence.d.ts +7 -0
  90. package/dist/src/utils/managed-command-evidence.js +86 -0
  91. package/dist/src/utils/managed-command-evidence.js.map +1 -0
  92. package/dist/src/utils/managed-command-materialization.d.ts +106 -0
  93. package/dist/src/utils/managed-command-materialization.js +307 -0
  94. package/dist/src/utils/managed-command-materialization.js.map +1 -0
  95. package/dist/src/utils/managed-command-runtime.d.ts +32 -0
  96. package/dist/src/utils/managed-command-runtime.js +110 -0
  97. package/dist/src/utils/managed-command-runtime.js.map +1 -0
  98. package/dist/src/utils/managed-command-store.d.ts +120 -0
  99. package/dist/src/utils/managed-command-store.js +563 -0
  100. package/dist/src/utils/managed-command-store.js.map +1 -0
  101. package/dist/src/utils/ownership.d.ts +2 -0
  102. package/dist/src/utils/plugin-config-impact.d.ts +8 -1
  103. package/dist/src/utils/plugin-config-impact.js +101 -26
  104. package/dist/src/utils/plugin-config-impact.js.map +1 -1
  105. package/dist/src/utils/plugin-config-write.js +142 -60
  106. package/dist/src/utils/plugin-config-write.js.map +1 -1
  107. package/dist/src/utils/rendered-contract.js +18 -1
  108. package/dist/src/utils/rendered-contract.js.map +1 -1
  109. package/package.json +3 -3
@@ -1 +1 @@
1
- {"version":3,"file":"operation-review-planner.js","sourceRoot":"","sources":["../../../src/tui/operation-review-planner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"operation-review-planner.js","sourceRoot":"","sources":["../../../src/tui/operation-review-planner.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,28 @@
1
1
  export type * from '@lesliechan721/aw-plugin-core/manifest';
2
- import type { ArtifactState, ArtifactTarget, CatalogChannel, CatalogManifestV7, CatalogSourceId, CliVersion, DistributionName, DynamicArtifactKind, ManagedArtifactId, PlatformName, PluginId, PluginVersion, Scope, SourceIdentity, TrackedHookGroupIdentity } from '@lesliechan721/aw-plugin-core/manifest';
2
+ import type { ArtifactState, ArtifactTarget, CatalogChannel, CatalogManifestV7, CatalogSourceId, CliVersion, DistributionName, DynamicArtifactKind, ManagedArtifactId, PlatformName, ProducerIdentity, PluginId, PluginVersion, Scope, SourceIdentity, TrackedHookGroupIdentity } from '@lesliechan721/aw-plugin-core/manifest';
3
3
  export type ArtifactSurface = {
4
4
  kind: 'platform';
5
5
  name: PlatformName;
6
6
  } | {
7
7
  kind: 'distribution';
8
8
  name: DistributionName;
9
+ } | {
10
+ kind: 'aw';
11
+ name: 'managed-commands';
9
12
  };
13
+ export type ArtifactRenderSurfaceName = PlatformName | DistributionName | 'managed-commands';
14
+ export interface CommandProducerResult {
15
+ producer: ProducerIdentity;
16
+ state: 'completed' | 'partial' | 'failed';
17
+ commandIds: string[];
18
+ removedCommandIds: string[];
19
+ errors: Array<{
20
+ code: string;
21
+ message: string;
22
+ subject?: string;
23
+ }>;
24
+ recoveryActions: string[];
25
+ }
10
26
  export type PlatformSelection = PlatformName | 'both';
11
27
  export type CommandAction = 'install' | 'uninstall' | 'reinstall' | 'cleanup' | 'config' | 'status';
12
28
  export type RebuildCommand = 'install' | 'sync' | 'cleanup' | 'reinstall' | 'uninstall';
@@ -283,18 +299,22 @@ export type ConfigApplyResult = {
283
299
  state: 'skipped';
284
300
  reason: 'notRequested' | 'noConfigChange' | 'noEffectiveConfigChange' | 'noVisibleTarget';
285
301
  targetResults: [];
302
+ commandResults?: [];
286
303
  } | {
287
304
  state: 'unavailable';
288
305
  reason: 'invalidConfig' | 'schemaUnavailable' | 'sourceUnavailable' | 'effectiveConfigUnavailable' | 'targetDiscoveryFailed';
289
306
  targetResults: ConfigApplyTargetResult[];
290
307
  error?: ConfigApplyError;
308
+ commandResults?: CommandProducerResult[];
291
309
  } | {
292
310
  state: 'succeeded';
293
311
  targetResults: ConfigApplyTargetResult[];
312
+ commandResults?: CommandProducerResult[];
294
313
  } | {
295
314
  state: 'partial';
296
315
  targetResults: ConfigApplyTargetResult[];
297
316
  errors?: ConfigApplyError[];
317
+ commandResults?: CommandProducerResult[];
298
318
  };
299
319
  export interface ConfigFieldEntry {
300
320
  key: string;
@@ -429,7 +449,7 @@ export interface AgentSkillsSkillArtifact extends ArtifactPlanArtifactBase {
429
449
  files?: Record<string, string>;
430
450
  };
431
451
  }
432
- export type ArtifactPlanArtifact = DeveloperInstructionsBlockArtifact | CodexAgentRoleArtifact | CodexSkillArtifact | ClaudeSkillArtifact | AgentSkillsSkillArtifact;
452
+ export type ArtifactPlanArtifact = DeveloperInstructionsBlockArtifact | CodexAgentRoleArtifact | CodexSkillArtifact | ClaudeSkillArtifact | AgentSkillsSkillArtifact | import('@lesliechan721/aw-plugin-core/manifest').CommandSetArtifact | import('@lesliechan721/aw-plugin-core/manifest').CommandPackageArtifact;
433
453
  export interface GeneratedArtifact {
434
454
  path: string;
435
455
  paths?: string[];
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AA6aA,MAAM,CAAC,MAAM,sCAAsC,GAAG,CAAC,CAAC;AA+MxD,MAAM,OAAO,mBAAoB,SAAQ,KAAK;IACnC,QAAQ,CAAW;IACnB,QAAQ,CAAS;IAE1B,YACE,OAAe,EACf,UAGI,EAAE;QAEN,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,qBAAqB,CAAC;QAClC,IAAI,CAAC,QAAQ,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC;QACrD,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,CAAC,CAAC;IACxC,CAAC;CACF;AAED,MAAM,UAAU,qBAAqB,CAAC,KAAc;IAClD,OAAO,CACL,KAAK,YAAY,KAAK;QACtB,KAAK,CAAC,IAAI,KAAK,qBAAqB;QACpC,KAAK,CAAC,OAAO,CAAE,KAA6B,CAAC,QAAQ,CAAC;QACtD,OAAQ,KAA6B,CAAC,QAAQ,KAAK,QAAQ,CAC5D,CAAC;AACJ,CAAC;AAED,MAAM,OAAO,qBAAsB,SAAQ,KAAK;IACrC,IAAI,GAAG,2BAA2B,CAAC;IACnC,OAAO,CAA+B;IAE/C,YACE,OAAe,EACf,OAAqC;QAErC,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,uBAAuB,CAAC;QACpC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;CACF;AAED,MAAM,UAAU,uBAAuB,CAAC,KAAc;IACpD,OAAO,CACL,KAAK,YAAY,KAAK;QACtB,KAAK,CAAC,IAAI,KAAK,uBAAuB;QACtC,OAAQ,KAA+B,CAAC,IAAI,KAAK,QAAQ;QACzD,OAAQ,KAA+B,CAAC,OAAO,KAAK,QAAQ;QAC5D,KAAK,CAAC,OAAO,CAAE,KAA+B,CAAC,OAAO,CAAC,QAAQ,CAAC,CACjE,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AA6bA,MAAM,CAAC,MAAM,sCAAsC,GAAG,CAAC,CAAC;AAiNxD,MAAM,OAAO,mBAAoB,SAAQ,KAAK;IACnC,QAAQ,CAAW;IACnB,QAAQ,CAAS;IAE1B,YACE,OAAe,EACf,UAGI,EAAE;QAEN,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,qBAAqB,CAAC;QAClC,IAAI,CAAC,QAAQ,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC;QACrD,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,CAAC,CAAC;IACxC,CAAC;CACF;AAED,MAAM,UAAU,qBAAqB,CAAC,KAAc;IAClD,OAAO,CACL,KAAK,YAAY,KAAK;QACtB,KAAK,CAAC,IAAI,KAAK,qBAAqB;QACpC,KAAK,CAAC,OAAO,CAAE,KAA6B,CAAC,QAAQ,CAAC;QACtD,OAAQ,KAA6B,CAAC,QAAQ,KAAK,QAAQ,CAC5D,CAAC;AACJ,CAAC;AAED,MAAM,OAAO,qBAAsB,SAAQ,KAAK;IACrC,IAAI,GAAG,2BAA2B,CAAC;IACnC,OAAO,CAA+B;IAE/C,YACE,OAAe,EACf,OAAqC;QAErC,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,uBAAuB,CAAC;QACpC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;CACF;AAED,MAAM,UAAU,uBAAuB,CAAC,KAAc;IACpD,OAAO,CACL,KAAK,YAAY,KAAK;QACtB,KAAK,CAAC,IAAI,KAAK,uBAAuB;QACtC,OAAQ,KAA+B,CAAC,IAAI,KAAK,QAAQ;QACzD,OAAQ,KAA+B,CAAC,OAAO,KAAK,QAAQ;QAC5D,KAAK,CAAC,OAAO,CAAE,KAA+B,CAAC,OAAO,CAAC,QAAQ,CAAC,CACjE,CAAC;AACJ,CAAC"}
@@ -1,7 +1,8 @@
1
- import type { ArtifactPlanArtifact, PlatformName, DistributionName, NormalizedPluginManifest, PluginArtifactTargetDefinition, Scope } from '../types.js';
1
+ import type { ArtifactPlanArtifact, ArtifactRenderSurfaceName, NormalizedPluginManifest, Scope } from '../types.js';
2
2
  import type { ResolvedArtifactRenderConfig } from './artifact-renderer.js';
3
+ import { type ArtifactRequestDeclaration } from './artifact-request.js';
3
4
  export type ValidatedArtifactPlanArtifact = ArtifactPlanArtifact & {
4
- declaration: PluginArtifactTargetDefinition;
5
+ declaration: ArtifactRequestDeclaration;
5
6
  logicalIdentity: string;
6
7
  configDigest: string;
7
8
  };
@@ -18,7 +19,7 @@ export declare function validateArtifactPlan(options: {
18
19
  pluginName?: string;
19
20
  manifest: NormalizedPluginManifest;
20
21
  plan: unknown;
21
- platform: PlatformName | DistributionName;
22
+ platform: ArtifactRenderSurfaceName;
22
23
  scope: Scope;
23
24
  requestedArtifactIds: readonly string[];
24
25
  renderConfig: Pick<ResolvedArtifactRenderConfig, 'values' | 'sources' | 'issues'>;
@@ -2,13 +2,16 @@ import crypto from 'node:crypto';
2
2
  import path from 'node:path';
3
3
  import { assertPlatformFieldSupported } from './manifest.js';
4
4
  import { validatePortableSkillName } from './dynamic-skill-tree.js';
5
- import { resolveArtifactRequest } from './artifact-request.js';
5
+ import { artifactDeclarationSurface, artifactRequestDeclarations, resolveArtifactRequest } from './artifact-request.js';
6
+ import { normalizeCommandDefinitions, normalizeCommandRelativeFile } from '@lesliechan721/aw-plugin-core/manifest';
6
7
  const SUPPORTED_ARTIFACT_TARGETS = new Set([
7
8
  'codex.developerInstructionsBlock',
8
9
  'codex.agentRole',
9
10
  'codex.skill',
10
11
  'claude.skill',
11
12
  'agent-skills.skill',
13
+ 'aw.command-set',
14
+ 'aw.command-package',
12
15
  ]);
13
16
  const SUPPORTED_ARTIFACT_STATES = new Set(['present', 'disabled']);
14
17
  const TARGET_ORDER = [
@@ -24,6 +27,8 @@ const ARTIFACT_KIND_BY_TARGET = {
24
27
  'codex.skill': 'skill',
25
28
  'claude.skill': 'skill',
26
29
  'agent-skills.skill': 'skill',
30
+ 'aw.command-set': 'commandSet',
31
+ 'aw.command-package': 'commandPackage',
27
32
  };
28
33
  function isRecord(value) {
29
34
  return typeof value === 'object' && value !== null && !Array.isArray(value);
@@ -87,7 +92,7 @@ function resolvePlanObject(plan) {
87
92
  }
88
93
  function getDeclaredTargets(options) {
89
94
  const output = new Map();
90
- for (const [index, target] of (options.manifest.artifacts?.targets ?? []).entries()) {
95
+ for (const [index, target] of artifactRequestDeclarations(options.manifest).entries()) {
91
96
  if (target.platform) {
92
97
  assertPlatformFieldSupported({
93
98
  pluginName: options.manifest.name,
@@ -96,7 +101,7 @@ function getDeclaredTargets(options) {
96
101
  requiredPlatform: target.platform,
97
102
  });
98
103
  }
99
- if ((target.platform ?? target.distribution) !== options.platform || !target.scopes.includes(options.scope)) {
104
+ if (artifactDeclarationSurface(target) !== options.platform || !target.scopes.includes(options.scope)) {
100
105
  continue;
101
106
  }
102
107
  if (options.scope === 'project' &&
@@ -242,15 +247,53 @@ function normalizeArtifact(options) {
242
247
  if (!SUPPORTED_ARTIFACT_TARGETS.has(target)) {
243
248
  throw new Error(`Invalid ${fieldName}.target: unsupported target "${target}".`);
244
249
  }
250
+ const declaration = options.declarationMap.get(`${id}:${target}`);
251
+ if (!declaration) {
252
+ throw new Error(`Invalid ${fieldName}: artifact "${id}" target "${target}" is not declared for this surface/scope.`);
253
+ }
254
+ if (target === 'aw.command-set' || target === 'aw.command-package') {
255
+ assertAllowedObjectKeys(options.artifact, fieldName, target === 'aw.command-set'
256
+ ? ['id', 'target', 'kind', 'platform', 'state', 'refreshKeys', 'entries', 'disabledReason']
257
+ : ['id', 'target', 'kind', 'state', 'refreshKeys', 'files']);
258
+ if (options.artifact.kind !== (target === 'aw.command-set' ? 'commandSet' : 'commandPackage')) {
259
+ throw new Error(`Invalid ${fieldName}.kind: unexpected command target kind.`);
260
+ }
261
+ if (declaration.platform ? options.artifact.platform !== declaration.platform : Object.hasOwn(options.artifact, 'platform')) {
262
+ throw new Error(`Invalid ${fieldName}.platform: command target must preserve its declared surface.`);
263
+ }
264
+ const state = options.artifact.state;
265
+ if ((state !== 'present' && state !== 'disabled') || !declaration.states.includes(state)) {
266
+ throw new Error(`Invalid ${fieldName}.state: state is not declared.`);
267
+ }
268
+ const refreshKeys = normalizeRefreshKeys({ value: options.artifact.refreshKeys, fieldName: `${fieldName}.refreshKeys`, declaration });
269
+ let normalized;
270
+ if (target === 'aw.command-set') {
271
+ const entries = normalizeCommandDefinitions(options.artifact.entries, `${fieldName}.entries`);
272
+ if (state === 'disabled' && entries.length !== 0)
273
+ throw new Error(`Invalid ${fieldName}.entries: disabled sets must be empty.`);
274
+ if (state === 'present' && Object.hasOwn(options.artifact, 'disabledReason'))
275
+ throw new Error(`Invalid ${fieldName}.disabledReason: only disabled sets may include this field.`);
276
+ const disabledReason = validateDisabledReason(options.artifact.disabledReason, `${fieldName}.disabledReason`);
277
+ normalized = { id, target, kind: 'commandSet', ...(declaration.platform ? { platform: declaration.platform } : {}), state, refreshKeys, entries, ...(disabledReason ? { disabledReason } : {}) };
278
+ }
279
+ else {
280
+ if (state !== 'present')
281
+ throw new Error(`Invalid ${fieldName}.state: command packages must be present.`);
282
+ const content = validateSkillArtifactContent({ files: options.artifact.files }, fieldName);
283
+ for (const [file, text] of Object.entries(content?.files ?? {})) {
284
+ normalizeCommandRelativeFile(file, `${fieldName}.files`);
285
+ if (text.includes('\0') || Buffer.from(text, 'utf8').toString('utf8') !== text)
286
+ throw new Error(`Invalid ${fieldName}.files: generated configuration must be Unicode text without NUL.`);
287
+ }
288
+ normalized = { id, target, kind: 'commandPackage', state: 'present', refreshKeys, files: content?.files ?? {} };
289
+ }
290
+ return { ...normalized, declaration, logicalIdentity: `${options.pluginName}:${id}:${target}`, configDigest: createArtifactConfigDigest({ artifact: normalized, renderConfig: options.renderConfig, digestSalt: options.digestSalt }) };
291
+ }
245
292
  assertAllowedObjectKeys(options.artifact, fieldName, target === 'codex.developerInstructionsBlock'
246
293
  ? ['id', 'platform', 'target', 'kind', 'state', 'refreshKeys', 'disabledReason', 'content']
247
294
  : target === 'codex.agentRole'
248
295
  ? ['id', 'platform', 'target', 'kind', 'state', 'refreshKeys', 'disabledReason', 'roleKey', 'content']
249
296
  : ['id', target === 'agent-skills.skill' ? 'distribution' : 'platform', 'target', 'kind', 'state', 'refreshKeys', 'disabledReason', 'skillKey', 'content']);
250
- const declaration = options.declarationMap.get(`${id}:${target}`);
251
- if (!declaration) {
252
- throw new Error(`Invalid ${fieldName}: artifact "${id}" target "${target}" is not declared for this platform/scope.`);
253
- }
254
297
  const surfaceField = target === 'agent-skills.skill' ? 'distribution' : 'platform';
255
298
  const surface = ensureNonEmptyString(options.artifact[surfaceField], `${fieldName}.${surfaceField}`);
256
299
  if (surface !== options.platform) {
@@ -1 +1 @@
1
- {"version":3,"file":"artifact-plan.js","sourceRoot":"","sources":["../../../src/utils/artifact-plan.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"artifact-plan.js","sourceRoot":"","sources":["../../../src/utils/artifact-plan.ts"],"names":[],"mappings":"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"}