@lesliechan721/aw-plugin-core 0.1.0-beta.61 → 0.1.0-beta.62

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.
@@ -1 +1 @@
1
- {"version":3,"file":"plugin-authoring-capabilities.js","sourceRoot":"","sources":["../src/plugin-authoring-capabilities.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"plugin-authoring-capabilities.js","sourceRoot":"","sources":["../src/plugin-authoring-capabilities.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { PluginConfigDefinition, PluginConfigObjectField, PluginConfigObjectPropertyField, PluginConfigPreset, PluginConfigScalar, PluginConfigScalarField, PluginConfigSchemaField, PluginConfigValidationIssue, PluginConfigValue } from './types.js';
1
+ import type { PluginConfigDefinition, PluginConfigDependencyField, PluginConfigReferenceContext, PluginConfigObjectField, PluginConfigObjectPropertyField, PluginConfigPreset, PluginConfigScalar, PluginConfigScalarField, PluginConfigSchemaField, PluginConfigValidationIssue, PluginConfigValue } from './types.js';
2
2
  export declare const PLUGIN_CONFIG_V3_MAX_DEFINITIONS = 64;
3
3
  export declare const PLUGIN_CONFIG_V3_MAX_FIELDS = 256;
4
4
  /** Count each followed $ref edge, including edges from object properties; inline objects add zero. */
@@ -21,13 +21,17 @@ export interface PluginConfigObjectPropertiesResolution {
21
21
  export declare function resolvePluginConfigObjectProperties(definition: PluginConfigObjectField, value: unknown, field?: string): PluginConfigObjectPropertiesResolution;
22
22
  export declare function validatePluginConfigValue(definition: PluginConfigSchemaField, value: unknown, field?: string): PluginConfigValidationIssue[];
23
23
  export declare function validatePluginConfigValue(field: string, definition: PluginConfigSchemaField, value: unknown): PluginConfigValidationIssue[];
24
- export declare function validatePluginConfigDocument(definition: PluginConfigDefinition, value: unknown): PluginConfigValidationIssue[];
24
+ export declare function validatePluginConfigDocument(definition: PluginConfigDefinition, value: unknown, context?: PluginConfigReferenceContext): PluginConfigValidationIssue[];
25
25
  /** Returns validation dependencies only; callers still project their original allowed keys. */
26
- export declare function getPluginConfigDependencyKeys(definition: PluginConfigDefinition, keys: readonly string[]): string[];
26
+ export declare function getPluginConfigDependencyKeys(definition: PluginConfigDefinition, keys: readonly string[], context?: PluginConfigReferenceContext): string[];
27
+ /** Validation closure only. Returned identities never widen renderer or runtime allowed keys. */
28
+ export declare function getPluginConfigDependencyFields(definition: PluginConfigDefinition, keys: readonly string[], context?: PluginConfigReferenceContext): PluginConfigDependencyField[];
29
+ /** Associate definitions and their defaults. Pass the original config to include unused source definitions. */
30
+ export declare function assertPluginConfigReferenceSchemas(definition: PluginConfigDefinition, context: PluginConfigReferenceContext, sourceConfig?: unknown): void;
27
31
  /** Validate one effective candidate, including complete sources required by selected fields. */
28
- export declare function validatePluginConfigCandidate(definition: PluginConfigDefinition, values: unknown, keys?: readonly string[]): PluginConfigValidationIssue[];
32
+ export declare function validatePluginConfigCandidate(definition: PluginConfigDefinition, values: unknown, keys?: readonly string[], context?: PluginConfigReferenceContext): PluginConfigValidationIssue[];
29
33
  /** Project reference choices from an already resolved scope candidate, using the same validation as writes. */
30
- export declare function getPluginConfigReferenceChoices(definition: PluginConfigDefinition, scalar: PluginConfigScalarField, values: Record<string, unknown>): {
34
+ export declare function getPluginConfigReferenceChoices(definition: PluginConfigDefinition, scalar: PluginConfigScalarField, values: Record<string, unknown>, context?: PluginConfigReferenceContext): {
31
35
  choices: Array<{
32
36
  value: PluginConfigScalar;
33
37
  title: string;
@@ -44,4 +48,7 @@ export declare function redactPluginConfigValue(definition: PluginConfigSchemaFi
44
48
  export declare function formatPluginConfigIssue(issue: PluginConfigValidationIssue): string;
45
49
  /** Decode exactly one local property token, never a traversal path. */
46
50
  export declare function decodePluginConfigSummaryPath(value: string): string;
47
- export declare function normalizePluginConfigDefinition(value: unknown, path?: string): PluginConfigDefinition;
51
+ export declare function normalizePluginConfigDefinition(value: unknown, path?: string, owner?: {
52
+ plugin?: string;
53
+ dependencies?: readonly string[];
54
+ }): PluginConfigDefinition;
@@ -1,5 +1,6 @@
1
1
  import { RE2 } from 're2-wasm';
2
2
  const CONFIG_KEY_PATTERN = /^[A-Za-z][A-Za-z0-9_]*$/u;
3
+ const PLUGIN_NAME_PATTERN = /^[a-z0-9]+(?:-[a-z0-9]+)*$/u;
3
4
  const IDENTIFIER_PATTERN = /^[A-Za-z][A-Za-z0-9_]*$/u;
4
5
  const SLUG_PATTERN = /^[a-z0-9]+(?:-[a-z0-9]+)*$/u;
5
6
  const SEMVER_PATTERN = /^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|(?:[0-9A-Za-z-]*[A-Za-z-][0-9A-Za-z-]*))(?:\.(?:0|[1-9]\d*|(?:[0-9A-Za-z-]*[A-Za-z-][0-9A-Za-z-]*)))*))?(?:\+([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?$/u;
@@ -438,21 +439,12 @@ export function validatePluginConfigValue(first, second, third) {
438
439
  ? validateArrayField(resolved.definition, resolved.value, resolved.field)
439
440
  : validateScalarField(resolved.definition, resolved.value, resolved.field);
440
441
  }
441
- export function validatePluginConfigDocument(definition, value) {
442
+ export function validatePluginConfigDocument(definition, value, context) {
442
443
  if (typeof value !== 'object' || value === null || Array.isArray(value)) {
443
444
  return [createIssue('type', '$document', 'Expected a config object.')];
444
445
  }
445
446
  const input = value;
446
447
  const issues = [];
447
- for (const [field, fieldDefinition] of Object.entries(definition.fields)) {
448
- if (!Object.hasOwn(input, field)) {
449
- if (fieldDefinition.required === true) {
450
- issues.push(createIssue('required', field, 'Required field is missing.'));
451
- }
452
- continue;
453
- }
454
- issues.push(...validatePluginConfigValue(fieldDefinition, input[field], field));
455
- }
456
448
  for (const field of Object.keys(input)) {
457
449
  if (isDangerousConfigKey(field)) {
458
450
  issues.push(createIssue('dangerousKey', field, 'Dangerous config key is not allowed.'));
@@ -462,7 +454,8 @@ export function validatePluginConfigDocument(definition, value) {
462
454
  issues.push(createIssue('unknownField', field, 'Unknown config field.'));
463
455
  }
464
456
  }
465
- return [...issues, ...validatePluginConfigReferences(definition, input, Object.keys(definition.fields))];
457
+ return [...issues,
458
+ ...validateConfigCandidateFields(definition, input, Object.keys(definition.fields), context)];
466
459
  }
467
460
  function scalarSchemas(definition) {
468
461
  if (definition.type === 'array')
@@ -476,7 +469,11 @@ function scalarSchemas(definition) {
476
469
  .flatMap((properties) => Object.values(properties).flatMap((child) => scalarSchemas(child)));
477
470
  }
478
471
  /** Returns validation dependencies only; callers still project their original allowed keys. */
479
- export function getPluginConfigDependencyKeys(definition, keys) {
472
+ export function getPluginConfigDependencyKeys(definition, keys, context) {
473
+ if (context !== undefined) {
474
+ return getPluginConfigDependencyFields(definition, keys, context)
475
+ .filter((entry) => entry.plugin === context.plugin).map((entry) => entry.field);
476
+ }
480
477
  const result = new Set();
481
478
  const visit = (key) => {
482
479
  if (result.has(key))
@@ -486,14 +483,170 @@ export function getPluginConfigDependencyKeys(definition, keys) {
486
483
  throw new Error(`Unknown config key "${key}".`);
487
484
  result.add(key);
488
485
  for (const scalar of scalarSchemas(field)) {
489
- if ('valueRef' in scalar && scalar.valueRef !== undefined)
486
+ if ('valueRef' in scalar && scalar.valueRef !== undefined && scalar.valueRef.plugin === undefined)
490
487
  visit(scalar.valueRef.field);
491
488
  }
492
489
  };
493
490
  keys.forEach(visit);
494
491
  return [...result];
495
492
  }
496
- function validatePluginConfigReferences(definition, input, keys) {
493
+ function referencePlugin(definition, context, plugin) {
494
+ if (plugin === (context?.plugin ?? ''))
495
+ return { definition, dependencies: context?.dependencies ?? [] };
496
+ const provider = ownProperty(context?.plugins, plugin);
497
+ if (provider === undefined)
498
+ throw new Error(`valueRefContext: Missing config provider plugin "${plugin}" in the same source context.`);
499
+ return provider;
500
+ }
501
+ function assertReferenceSource(scalar, source, identity) {
502
+ if (!('valueRef' in scalar) || scalar.valueRef === undefined)
503
+ return;
504
+ const ref = scalar.valueRef;
505
+ if (source?.type !== 'array' || source.items.type !== 'object' || source.items.properties === undefined) {
506
+ throw new Error(`valueRefSchema: ${identity}: expected a declared fixed-object array.`);
507
+ }
508
+ const key = ownProperty(source.items.properties, ref.key);
509
+ if (key === undefined || key.type !== scalar.type || ('sensitive' in key && key.sensitive === true)
510
+ || source.validation?.uniqueBy !== ref.key) {
511
+ throw new Error(`valueRefSchema: ${identity}.${ref.key}: expected a scalar of the same type with matching uniqueBy.`);
512
+ }
513
+ const label = ref.label === undefined ? undefined : ownProperty(source.items.properties, ref.label);
514
+ if (ref.label !== undefined && (label === undefined || label.type === 'array' || label.type === 'object')) {
515
+ throw new Error(`valueRefSchema: ${identity}.${ref.label}: expected a declared scalar property.`);
516
+ }
517
+ }
518
+ class ConfigReferenceSchemaError extends Error {
519
+ field;
520
+ constructor(message, field) {
521
+ super(message);
522
+ this.field = field;
523
+ }
524
+ }
525
+ /** Validation closure only. Returned identities never widen renderer or runtime allowed keys. */
526
+ export function getPluginConfigDependencyFields(definition, keys, context) {
527
+ const result = new Map();
528
+ const visiting = new Set();
529
+ const visit = (plugin, field) => {
530
+ const identity = JSON.stringify([plugin, field]);
531
+ if (visiting.has(identity))
532
+ throw new Error(`valueRefCycle: Circular config reference at "${plugin}/${field}".`);
533
+ if (result.has(identity))
534
+ return;
535
+ const owner = referencePlugin(definition, context, plugin);
536
+ const schema = ownProperty(owner.definition.fields, field);
537
+ if (schema === undefined)
538
+ throw new Error(`valueRefSchema: Unknown config field "${plugin}/${field}".`);
539
+ if ('sensitive' in schema && schema.sensitive === true) {
540
+ // Root fields can be sensitive; a reference dependency cannot.
541
+ if (visiting.size > 0)
542
+ throw new Error(`valueRefSchema: Sensitive config dependency "${plugin}/${field}" is denied.`);
543
+ }
544
+ visiting.add(identity);
545
+ result.set(identity, { plugin, field });
546
+ for (const scalar of scalarSchemas(schema)) {
547
+ if (!('valueRef' in scalar) || scalar.valueRef === undefined)
548
+ continue;
549
+ const ref = scalar.valueRef;
550
+ const provider = ref.plugin ?? plugin;
551
+ if (ref.plugin !== undefined) {
552
+ if (context === undefined)
553
+ throw new Error(`valueRefContext: Config reference "${ref.plugin}/${ref.field}" requires a same-source plugin context.`);
554
+ if (owner.definition.schemaVersion !== 4 || !PLUGIN_NAME_PATTERN.test(ref.plugin)
555
+ || ref.plugin === plugin || !owner.dependencies.includes(ref.plugin)) {
556
+ throw new Error(`valueRefSchema: Plugin "${plugin}" must use Config v4 and declare "${ref.plugin}" as a direct dependency; self references use local fields.`);
557
+ }
558
+ }
559
+ const sourceOwner = referencePlugin(definition, context, provider);
560
+ assertReferenceSource(scalar, ownProperty(sourceOwner.definition.fields, ref.field), `${provider}/${ref.field}`);
561
+ visit(provider, ref.field);
562
+ }
563
+ visiting.delete(identity);
564
+ };
565
+ for (const field of keys) {
566
+ try {
567
+ visit(context?.plugin ?? '', field);
568
+ }
569
+ catch (error) {
570
+ throw new ConfigReferenceSchemaError(error.message, field);
571
+ }
572
+ }
573
+ return [...result.values()];
574
+ }
575
+ /** Associate definitions and their defaults. Pass the original config to include unused source definitions. */
576
+ export function assertPluginConfigReferenceSchemas(definition, context, sourceConfig) {
577
+ getPluginConfigDependencyFields(definition, Object.keys(definition.fields), context);
578
+ const defaults = (config) => Object.fromEntries(Object.entries(config.fields).flatMap(([field, schema]) => schema.default === undefined ? [] : [[field, schema.default]]));
579
+ const defaultValues = defaults(definition);
580
+ const defaultContext = {
581
+ ...context,
582
+ plugins: Object.fromEntries(Object.entries(context.plugins).map(([plugin, entry]) => [plugin, { ...entry, values: defaults(entry.definition) }])),
583
+ };
584
+ const assertDefaults = (config, values, keys) => {
585
+ const issues = validatePluginConfigCandidate(config, values, keys, defaultContext);
586
+ if (issues.length > 0)
587
+ throw new Error(`valueRefDefault: Invalid config.default for plugin "${context.plugin}": ${formatPluginConfigIssue(issues[0])}`);
588
+ };
589
+ assertDefaults(definition, defaultValues, Object.keys(defaultValues));
590
+ if (sourceConfig !== undefined) {
591
+ const source = asObject(sourceConfig, 'config');
592
+ if (source.definitions !== undefined) {
593
+ const definitions = createPropertyMap();
594
+ expandConfigReferences(source, 'config', source.schemaVersion === 4, context, definitions);
595
+ for (const [name, schema] of Object.entries(definitions)) {
596
+ const field = `$definition.${name}`;
597
+ const candidate = { ...definition, fields: { ...definition.fields, [field]: schema } };
598
+ getPluginConfigDependencyFields(candidate, [field], context);
599
+ if (schema.default !== undefined) {
600
+ assertDefaults(candidate, { ...defaultValues, [field]: schema.default }, [field]);
601
+ }
602
+ }
603
+ }
604
+ }
605
+ }
606
+ function validateConfigCandidateFields(definition, values, keys, context) {
607
+ let closure;
608
+ try {
609
+ closure = getPluginConfigDependencyFields(definition, keys, context);
610
+ }
611
+ catch (error) {
612
+ const message = error.message;
613
+ const code = message.startsWith('valueRefContext:') ? 'valueRefContext'
614
+ : message.startsWith('valueRefCycle:') ? 'valueRefCycle' : 'valueRefSchema';
615
+ return [createIssue(code, error instanceof ConfigReferenceSchemaError ? error.field : keys[0] ?? '$document', message)];
616
+ }
617
+ const rootPlugin = context?.plugin ?? '';
618
+ const checked = new Map();
619
+ const inputFor = (plugin) => plugin === rootPlugin
620
+ ? values : referencePlugin(definition, context, plugin).values ?? {};
621
+ const evaluate = (plugin, field) => {
622
+ const identity = JSON.stringify([plugin, field]);
623
+ const previous = checked.get(identity);
624
+ if (previous !== undefined)
625
+ return previous;
626
+ const owner = referencePlugin(definition, context, plugin);
627
+ const schema = owner.definition.fields[field];
628
+ const input = inputFor(plugin);
629
+ const fieldIssues = Object.hasOwn(input, field)
630
+ ? validatePluginConfigValue(schema, input[field], field)
631
+ : schema.required === true ? [createIssue('required', field, 'Required field is missing.')] : [];
632
+ const ownerContext = context === undefined ? undefined : {
633
+ ...context, plugin, dependencies: owner.dependencies,
634
+ plugins: { ...context.plugins, [rootPlugin]: { definition, dependencies: context.dependencies, values } },
635
+ };
636
+ fieldIssues.push(...validatePluginConfigReferences(owner.definition, input, [field], ownerContext, (provider, sourceField) => evaluate(provider, sourceField).length === 0));
637
+ const located = plugin === rootPlugin ? fieldIssues : fieldIssues.map((issue) => ({
638
+ ...issue, path: { ...issue.path, plugin: issue.path.plugin ?? plugin },
639
+ message: `Config "${plugin}/${issue.path.field}": ${issue.message}`,
640
+ }));
641
+ checked.set(identity, located);
642
+ return located;
643
+ };
644
+ closure.forEach(({ plugin, field }) => evaluate(plugin, field));
645
+ // Keep direct value errors before relationship errors, as document validation historically does.
646
+ return closure.flatMap(({ plugin, field }) => checked.get(JSON.stringify([plugin, field])))
647
+ .sort((left, right) => Number(left.code.startsWith('valueRef')) - Number(right.code.startsWith('valueRef')));
648
+ }
649
+ function validatePluginConfigReferences(definition, input, keys, context, sourceValid, localOnly = false) {
497
650
  const issues = [];
498
651
  const reservedPaths = new Set();
499
652
  const sources = new Map();
@@ -502,15 +655,22 @@ function validatePluginConfigReferences(definition, input, keys) {
502
655
  if (!('valueRef' in scalar) || scalar.valueRef === undefined)
503
656
  return;
504
657
  const ref = scalar.valueRef;
505
- let source = sources.get(ref.field);
658
+ if (localOnly && ref.plugin !== undefined)
659
+ return;
660
+ const plugin = ref.plugin ?? context?.plugin ?? '';
661
+ const identity = JSON.stringify([plugin, ref.field]);
662
+ const sourceOwner = ref.plugin === undefined ? { definition, values: input }
663
+ : referencePlugin(definition, context, ref.plugin);
664
+ const sourceInput = sourceOwner.values ?? {};
665
+ let source = sources.get(identity);
506
666
  if (source === undefined) {
507
- const sourceSchema = definition.fields[ref.field];
508
- const sourceValue = ownProperty(input, ref.field);
509
- const valid = sourceValue === undefined
667
+ const sourceSchema = sourceOwner.definition.fields[ref.field];
668
+ const sourceValue = ownProperty(sourceInput, ref.field);
669
+ const valid = sourceValid !== undefined ? sourceValid(plugin, ref.field) : sourceValue === undefined
510
670
  ? sourceSchema.required !== true
511
671
  : validatePluginConfigValue(sourceSchema, sourceValue, ref.field).length === 0;
512
672
  source = { valid, entries: valid ? (sourceValue ?? []) : [] };
513
- sources.set(ref.field, source);
673
+ sources.set(identity, source);
514
674
  }
515
675
  const add = (code, message) => {
516
676
  const property = segments.find((segment) => typeof segment === 'string');
@@ -519,7 +679,7 @@ function validatePluginConfigReferences(definition, input, keys) {
519
679
  ? issue : { ...issue, path: { ...issue.path, segments: [field, ...segments] } });
520
680
  };
521
681
  if (!source.valid) {
522
- add('valueRefSource', `Referenced config "${ref.field}" is invalid; fix its complete array value.`);
682
+ add('valueRefSource', `Referenced config "${ref.plugin === undefined ? '' : `${ref.plugin}/`}${ref.field}" is invalid; fix its complete array value.`);
523
683
  return;
524
684
  }
525
685
  let allowed = allowedValues.get(ref);
@@ -527,10 +687,11 @@ function validatePluginConfigReferences(definition, input, keys) {
527
687
  allowed = new Set(ref.include);
528
688
  for (const [sourceIndex, entry] of source.entries.entries()) {
529
689
  if (ref.include?.includes(entry[ref.key]) === true) {
530
- const pathKey = `${ref.field}\0${sourceIndex}\0${ref.key}`;
690
+ const pathKey = `${identity}\0${sourceIndex}\0${ref.key}`;
531
691
  if (!reservedPaths.has(pathKey)) {
532
692
  reservedPaths.add(pathKey);
533
- issues.push(withArrayPath(createIssue('valueRefReserved', ref.field, 'Referenced property collides with a reserved included value.', ref.key), sourceIndex));
693
+ const issue = withArrayPath(createIssue('valueRefReserved', ref.field, 'Referenced property collides with a reserved included value.', ref.key), sourceIndex);
694
+ issues.push(ref.plugin === undefined ? issue : { ...issue, path: { ...issue.path, plugin: ref.plugin } });
534
695
  }
535
696
  }
536
697
  allowed.add(entry[ref.key]);
@@ -540,7 +701,7 @@ function validatePluginConfigReferences(definition, input, keys) {
540
701
  if (value === undefined || validateScalarField(scalar, value, field).length > 0)
541
702
  return;
542
703
  if (!allowed.has(value)) {
543
- add('valueRef', `Expected an included value or a key from config "${ref.field}". Add that key first, update dependent fields, then remove the old key.`);
704
+ add('valueRef', `Expected an included value or a key from config "${ref.plugin === undefined ? '' : `${ref.plugin}/`}${ref.field}". Add that key first, update dependent fields, then remove the old key.`);
544
705
  }
545
706
  };
546
707
  const walk = (schema, value, field, segments = []) => {
@@ -573,43 +734,43 @@ function validatePluginConfigReferences(definition, input, keys) {
573
734
  };
574
735
  for (const field of keys) {
575
736
  const schema = definition.fields[field];
737
+ if (!scalarSchemas(schema).some((scalar) => 'valueRef' in scalar && scalar.valueRef !== undefined))
738
+ continue;
576
739
  walk(schema, ownProperty(input, field), field);
577
740
  }
578
741
  return issues;
579
742
  }
580
743
  /** Validate one effective candidate, including complete sources required by selected fields. */
581
- export function validatePluginConfigCandidate(definition, values, keys) {
744
+ export function validatePluginConfigCandidate(definition, values, keys, context) {
582
745
  if (!isSafeJsonRecord(values))
583
746
  return [createIssue('type', '$document', 'Expected a config JSON object.')];
584
747
  if (keys === undefined)
585
- return validatePluginConfigDocument(definition, values);
586
- const closure = getPluginConfigDependencyKeys(definition, keys);
587
- const projected = Object.fromEntries(closure.flatMap((key) => Object.hasOwn(values, key) ? [[key, values[key]]] : []));
588
- return validatePluginConfigDocument({ ...definition, fields: Object.fromEntries(closure.map((key) => [key, definition.fields[key]])) }, projected);
748
+ return validatePluginConfigDocument(definition, values, context);
749
+ return validateConfigCandidateFields(definition, values, keys, context);
589
750
  }
590
751
  /** Project reference choices from an already resolved scope candidate, using the same validation as writes. */
591
- export function getPluginConfigReferenceChoices(definition, scalar, values) {
752
+ export function getPluginConfigReferenceChoices(definition, scalar, values, context) {
592
753
  if (!('valueRef' in scalar) || scalar.valueRef === undefined)
593
754
  return { choices: [], issues: [] };
594
755
  const ref = scalar.valueRef;
595
- const sourceIssues = validatePluginConfigCandidate(definition, values, [ref.field]);
756
+ const referenceField = '$reference';
757
+ // Choice projection can run before a required scalar has a selection.
758
+ const referenceDefinition = { ...definition, fields: { ...definition.fields, [referenceField]: { ...scalar, required: false } } };
759
+ const sourceIssues = validatePluginConfigCandidate(referenceDefinition, values, [referenceField], context);
596
760
  if (sourceIssues.length > 0)
597
761
  return { choices: [], issues: sourceIssues };
598
762
  // Other references can reserve values in the same source or its dependencies.
599
763
  // Keep those source errors, but do not block choices on unrelated field errors.
600
- const sourceKeys = new Set(getPluginConfigDependencyKeys(definition, [ref.field]));
601
- const sharedSourceIssues = validatePluginConfigReferences(definition, values, Object.keys(definition.fields))
602
- .filter((issue) => sourceKeys.has(issue.path.field));
764
+ const sourceKeys = new Set(getPluginConfigDependencyFields(referenceDefinition, [referenceField], context)
765
+ .filter((entry) => entry.field !== referenceField).map((entry) => JSON.stringify([entry.plugin, entry.field])));
766
+ const relatedKeys = Object.keys(definition.fields).filter((field) => scalarSchemas(definition.fields[field]).some((child) => 'valueRef' in child && child.valueRef !== undefined
767
+ && sourceKeys.has(JSON.stringify([child.valueRef.plugin ?? context?.plugin ?? '', child.valueRef.field]))));
768
+ const sharedSourceIssues = validatePluginConfigReferences(definition, values, relatedKeys, context)
769
+ .filter((issue) => sourceKeys.has(JSON.stringify([issue.path.plugin ?? context?.plugin ?? '', issue.path.field])));
603
770
  if (sharedSourceIssues.length > 0)
604
771
  return { choices: [], issues: sharedSourceIssues };
605
- // A scalar may be nested in an inactive branch or an empty array. Validate its reference
606
- // independently of the current parent value, without requiring a selection to exist yet.
607
- const referenceField = '$reference';
608
- const referenceDefinition = { ...definition, fields: { ...definition.fields, [referenceField]: scalar } };
609
- const issues = validatePluginConfigReferences(referenceDefinition, { ...values, [referenceField]: undefined }, [referenceField]);
610
- if (issues.length > 0)
611
- return { choices: [], issues };
612
- const entries = (ownProperty(values, ref.field) ?? []);
772
+ const sourceValues = ref.plugin === undefined ? values : ownProperty(context?.plugins, ref.plugin)?.values ?? {};
773
+ const entries = (ownProperty(sourceValues, ref.field) ?? []);
613
774
  const candidates = [
614
775
  ...(ref.include ?? []).map((value) => ({ value, title: String(value) })),
615
776
  ...entries.map((entry) => {
@@ -622,7 +783,7 @@ export function getPluginConfigReferenceChoices(definition, scalar, values) {
622
783
  ];
623
784
  return { choices: candidates.filter(({ value }) => validatePluginConfigValue(scalar, value).length === 0), issues: [] };
624
785
  }
625
- function assertValueReferenceSchemas(fields, definitions, path, allowReferences = true) {
786
+ function assertValueReferenceSchemas(fields, definitions, path, allowReferences = true, allowCrossPlugin = false, owner) {
626
787
  for (const definition of definitions) {
627
788
  for (const scalar of scalarSchemas(definition)) {
628
789
  if (!('valueRef' in scalar) || scalar.valueRef === undefined)
@@ -630,6 +791,18 @@ function assertValueReferenceSchemas(fields, definitions, path, allowReferences
630
791
  if (!allowReferences)
631
792
  throw new Error(`Invalid ${path}: valueRef requires Config Definition v3.`);
632
793
  const ref = scalar.valueRef;
794
+ if (ref.plugin !== undefined) {
795
+ if (!allowCrossPlugin)
796
+ throw new Error(`Invalid ${path}.valueRef.plugin: cross-plugin references require Config Definition v4.`);
797
+ if (!PLUGIN_NAME_PATTERN.test(ref.plugin))
798
+ throw new Error(`Invalid ${path}.valueRef.plugin: expected a plugin name.`);
799
+ if (owner?.plugin === ref.plugin)
800
+ throw new Error(`Invalid ${path}.valueRef.plugin: self references must use a local field.`);
801
+ if (owner !== undefined && !owner.dependencies?.includes(ref.plugin)) {
802
+ throw new Error(`Invalid ${path}.valueRef.plugin: "${ref.plugin}" must be an explicit direct dependency.`);
803
+ }
804
+ continue;
805
+ }
633
806
  const source = ownProperty(fields, ref.field);
634
807
  if (source?.type !== 'array' || source.items.type !== 'object' || source.items.properties === undefined) {
635
808
  throw new Error(`Invalid ${path}.valueRef.field: expected a declared fixed-object array.`);
@@ -759,7 +932,7 @@ function normalizeScalarField(value, path, options) {
759
932
  let valueRef;
760
933
  if (input.valueRef !== undefined) {
761
934
  const rawRef = asObject(input.valueRef, `${path}.valueRef`);
762
- assertAllowedKeys(rawRef, `${path}.valueRef`, ['field', 'key', 'label', 'include']);
935
+ assertAllowedKeys(rawRef, `${path}.valueRef`, ['plugin', 'field', 'key', 'label', 'include']);
763
936
  let include;
764
937
  if (rawRef.include !== undefined) {
765
938
  if (!Array.isArray(rawRef.include) || !isDenseDataArray(rawRef.include)
@@ -780,6 +953,7 @@ function normalizeScalarField(value, path, options) {
780
953
  }
781
954
  }
782
955
  valueRef = {
956
+ ...(rawRef.plugin === undefined ? {} : { plugin: nonEmptyString(rawRef.plugin, `${path}.valueRef.plugin`) }),
783
957
  field: nonEmptyString(rawRef.field, `${path}.valueRef.field`),
784
958
  key: nonEmptyString(rawRef.key, `${path}.valueRef.key`),
785
959
  label: optionalText(rawRef.label, `${path}.valueRef.label`),
@@ -1107,7 +1281,7 @@ export function decodePluginConfigSummaryPath(value) {
1107
1281
  throw new Error('Invalid summary path: dangerous config key.');
1108
1282
  return property;
1109
1283
  }
1110
- function expandConfigReferences(input, path, v4 = false) {
1284
+ function expandConfigReferences(input, path, v4 = false, owner, collectedDefinitions) {
1111
1285
  const definitions = input.definitions === undefined ? {} : asObject(input.definitions, `${path}.definitions`);
1112
1286
  if (Object.keys(definitions).length > PLUGIN_CONFIG_V3_MAX_DEFINITIONS) {
1113
1287
  throw new Error(`Invalid ${path}.definitions: expected at most ${PLUGIN_CONFIG_V3_MAX_DEFINITIONS} definitions.`);
@@ -1178,7 +1352,10 @@ function expandConfigReferences(input, path, v4 = false) {
1178
1352
  // Validate unused definitions too, through the same field/default/choice validator.
1179
1353
  const normalizedDefinitions = [];
1180
1354
  for (const [name, value] of Object.entries(definitions)) {
1181
- normalizedDefinitions.push(normalizeConfigField(expand(value, `${path}.definitions.${name}`, []), `${path}.definitions.${name}`, true, v4));
1355
+ const normalized = normalizeConfigField(expand(value, `${path}.definitions.${name}`, []), `${path}.definitions.${name}`, true, v4);
1356
+ normalizedDefinitions.push(normalized);
1357
+ if (collectedDefinitions !== undefined)
1358
+ collectedDefinitions[name] = normalized;
1182
1359
  }
1183
1360
  const fields = asObject(input.fields, `${path}.fields`);
1184
1361
  if (Object.keys(fields).length > PLUGIN_CONFIG_V3_MAX_FIELDS) {
@@ -1187,7 +1364,7 @@ function expandConfigReferences(input, path, v4 = false) {
1187
1364
  const expanded = Object.fromEntries(Object.entries(fields).map(([key, value]) => [key, expand(value, `${path}.fields.${key}`, [])]));
1188
1365
  if (normalizedDefinitions.some((definition) => scalarSchemas(definition).some((scalar) => 'valueRef' in scalar && scalar.valueRef !== undefined))) {
1189
1366
  const normalizedFields = Object.fromEntries(Object.entries(expanded).map(([key, value]) => [key, normalizeConfigField(value, `${path}.fields.${key}`, true, v4)]));
1190
- assertValueReferenceSchemas(normalizedFields, normalizedDefinitions, `${path}.definitions`);
1367
+ assertValueReferenceSchemas(normalizedFields, normalizedDefinitions, `${path}.definitions`, true, v4, owner);
1191
1368
  }
1192
1369
  return expanded;
1193
1370
  }
@@ -1286,12 +1463,12 @@ function normalizeConfigSummaries(input, fields, path) {
1286
1463
  ...(input.fieldViews === undefined ? {} : { fieldViews }),
1287
1464
  };
1288
1465
  }
1289
- export function normalizePluginConfigDefinition(value, path = 'config') {
1466
+ export function normalizePluginConfigDefinition(value, path = 'config', owner) {
1290
1467
  const input = asObject(value, path);
1291
1468
  const v4 = input.schemaVersion === 4;
1292
1469
  const v3 = input.schemaVersion === 3 || v4;
1293
1470
  assertAllowedKeys(input, path, v3 ? ['schemaVersion', 'definitions', 'fields', 'presentation'] : ['fields', 'presentation']);
1294
- const fieldsInput = v3 ? expandConfigReferences(input, path, v4) : asObject(input.fields, `${path}.fields`);
1471
+ const fieldsInput = v3 ? expandConfigReferences(input, path, v4, owner) : asObject(input.fields, `${path}.fields`);
1295
1472
  const fields = createPropertyMap();
1296
1473
  for (const [field, rawDefinition] of Object.entries(fieldsInput)) {
1297
1474
  if (!CONFIG_KEY_PATTERN.test(field) || isDangerousConfigKey(field)) {
@@ -1299,9 +1476,10 @@ export function normalizePluginConfigDefinition(value, path = 'config') {
1299
1476
  }
1300
1477
  fields[field] = normalizeConfigField(rawDefinition, `${path}.fields.${field}`, v3, v4);
1301
1478
  }
1302
- assertValueReferenceSchemas(fields, Object.values(fields), path, v3);
1479
+ assertValueReferenceSchemas(fields, Object.values(fields), path, v3, v4, owner);
1303
1480
  const defaultValues = Object.fromEntries(Object.entries(fields).flatMap(([field, definition]) => definition.default === undefined ? [] : [[field, definition.default]]));
1304
- const defaultIssues = validatePluginConfigReferences({ schemaVersion: 4, fields }, defaultValues, Object.keys(fields))
1481
+ // Cross-plugin defaults require the caller's complete dependency context.
1482
+ const defaultIssues = validatePluginConfigReferences({ schemaVersion: 4, fields }, defaultValues, Object.keys(fields), undefined, undefined, true)
1305
1483
  .filter((issue) => Object.hasOwn(defaultValues, issue.path.field));
1306
1484
  if (defaultIssues.length > 0) {
1307
1485
  throw new Error(`Invalid ${path}.default: ${formatPluginConfigIssue(defaultIssues[0])}`);