@clowder-ai/plugin-contract 0.1.0-beta.29 → 0.1.0-beta.37

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 (113) hide show
  1. package/dist/codegen/generate-contract.d.ts.map +1 -1
  2. package/dist/codegen/generate-contract.js +88 -1
  3. package/dist/codegen/generate-contract.js.map +1 -1
  4. package/dist/conformance/fixtures.d.ts +1 -1
  5. package/dist/conformance/fixtures.d.ts.map +1 -1
  6. package/dist/conformance/fixtures.js +1 -1
  7. package/dist/conformance/fixtures.js.map +1 -1
  8. package/dist/conformance/index.d.ts +1 -1
  9. package/dist/conformance/index.d.ts.map +1 -1
  10. package/dist/conformance/index.js +1 -1
  11. package/dist/conformance/index.js.map +1 -1
  12. package/dist/conformance/runner.js +1 -1
  13. package/dist/conformance/runner.js.map +1 -1
  14. package/dist/generated/contract.generated.d.ts +425 -62
  15. package/dist/generated/contract.generated.d.ts.map +1 -1
  16. package/dist/generated/contract.generated.js +63 -2
  17. package/dist/generated/contract.generated.js.map +1 -1
  18. package/dist/index.d.ts +1 -1
  19. package/dist/index.js +1 -1
  20. package/dist/validation/cloud-conversation-host.d.ts +18 -0
  21. package/dist/validation/cloud-conversation-host.d.ts.map +1 -0
  22. package/dist/validation/cloud-conversation-host.js +83 -0
  23. package/dist/validation/cloud-conversation-host.js.map +1 -0
  24. package/dist/validation/index.d.ts +5 -1
  25. package/dist/validation/index.d.ts.map +1 -1
  26. package/dist/validation/index.js +5 -1
  27. package/dist/validation/index.js.map +1 -1
  28. package/dist/validation/manifest.d.ts.map +1 -1
  29. package/dist/validation/manifest.js +113 -0
  30. package/dist/validation/manifest.js.map +1 -1
  31. package/dist/validation/members.d.ts +4 -0
  32. package/dist/validation/members.d.ts.map +1 -0
  33. package/dist/validation/members.js +11 -0
  34. package/dist/validation/members.js.map +1 -0
  35. package/dist/validation/messaging-semantic.d.ts.map +1 -1
  36. package/dist/validation/messaging-semantic.js +52 -3
  37. package/dist/validation/messaging-semantic.js.map +1 -1
  38. package/dist/validation/messaging-wire.d.ts +6 -2
  39. package/dist/validation/messaging-wire.d.ts.map +1 -1
  40. package/dist/validation/messaging-wire.js +22 -2
  41. package/dist/validation/messaging-wire.js.map +1 -1
  42. package/dist/validation/operation-rows.d.ts +25 -0
  43. package/dist/validation/operation-rows.d.ts.map +1 -0
  44. package/dist/validation/operation-rows.js +135 -0
  45. package/dist/validation/operation-rows.js.map +1 -0
  46. package/dist/validation/signals.d.ts +1 -10
  47. package/dist/validation/signals.d.ts.map +1 -1
  48. package/dist/validation/signals.js +0 -174
  49. package/dist/validation/signals.js.map +1 -1
  50. package/dist/wire/constants.d.ts +2 -1
  51. package/dist/wire/constants.d.ts.map +1 -1
  52. package/dist/wire/constants.js +2 -1
  53. package/dist/wire/constants.js.map +1 -1
  54. package/dist/wire/dispatch.d.ts +49 -0
  55. package/dist/wire/dispatch.d.ts.map +1 -0
  56. package/dist/wire/dispatch.js +880 -0
  57. package/dist/wire/dispatch.js.map +1 -0
  58. package/dist/wire/disposition-fixtures.d.ts +0 -2
  59. package/dist/wire/disposition-fixtures.d.ts.map +1 -1
  60. package/dist/wire/disposition-fixtures.js +20 -245
  61. package/dist/wire/disposition-fixtures.js.map +1 -1
  62. package/dist/wire/envelope.d.ts +31 -0
  63. package/dist/wire/envelope.d.ts.map +1 -1
  64. package/dist/wire/envelope.js +48 -1
  65. package/dist/wire/envelope.js.map +1 -1
  66. package/dist/wire/errors.d.ts +31 -1
  67. package/dist/wire/errors.d.ts.map +1 -1
  68. package/dist/wire/errors.js +36 -0
  69. package/dist/wire/errors.js.map +1 -1
  70. package/dist/wire/grants.d.ts +4 -4
  71. package/dist/wire/grants.js +3 -3
  72. package/dist/wire/handshake-byte-bounds.d.ts.map +1 -1
  73. package/dist/wire/handshake-byte-bounds.js +5 -2
  74. package/dist/wire/handshake-byte-bounds.js.map +1 -1
  75. package/dist/wire/handshake.d.ts +6 -0
  76. package/dist/wire/handshake.d.ts.map +1 -1
  77. package/dist/wire/handshake.js +6 -3
  78. package/dist/wire/handshake.js.map +1 -1
  79. package/dist/wire/index.d.ts +11 -11
  80. package/dist/wire/index.d.ts.map +1 -1
  81. package/dist/wire/index.js +20 -7
  82. package/dist/wire/index.js.map +1 -1
  83. package/dist/wire/lifecycle-byte-bounds.d.ts +0 -15
  84. package/dist/wire/lifecycle-byte-bounds.d.ts.map +1 -1
  85. package/dist/wire/lifecycle-byte-bounds.js +2 -62
  86. package/dist/wire/lifecycle-byte-bounds.js.map +1 -1
  87. package/dist/wire/messaging-byte-bounds.d.ts +4 -3
  88. package/dist/wire/messaging-byte-bounds.d.ts.map +1 -1
  89. package/dist/wire/messaging-byte-bounds.js +134 -12
  90. package/dist/wire/messaging-byte-bounds.js.map +1 -1
  91. package/dist/wire/registry.d.ts +15 -62
  92. package/dist/wire/registry.d.ts.map +1 -1
  93. package/dist/wire/registry.js +15 -61
  94. package/dist/wire/registry.js.map +1 -1
  95. package/dist/wire/row-shapes.d.ts +25 -13
  96. package/dist/wire/row-shapes.d.ts.map +1 -1
  97. package/dist/wire/row-shapes.js +11 -0
  98. package/dist/wire/row-shapes.js.map +1 -1
  99. package/fixtures/behavior/messaging/adversarial-invariants.json +7 -2
  100. package/fixtures/manifest/invalid/duplicate-signal-type.json +4 -2
  101. package/package.json +2 -2
  102. package/src/schemas/behavior-fixture.schema.json +711 -184
  103. package/src/schemas/companion-bridge.schema.json +51 -28
  104. package/src/schemas/manifest.schema.json +1954 -306
  105. package/src/schemas/messaging.schema.json +510 -35
  106. package/src/schemas/signal.schema.json +68 -78
  107. package/dist/wire/signal-byte-bounds.d.ts +0 -97
  108. package/dist/wire/signal-byte-bounds.d.ts.map +0 -1
  109. package/dist/wire/signal-byte-bounds.js +0 -229
  110. package/dist/wire/signal-byte-bounds.js.map +0 -1
  111. package/fixtures/signals/invalid/destination-injection.json +0 -15
  112. package/fixtures/signals/invalid/non-utc-occurred-at.json +0 -12
  113. package/fixtures/signals/valid/feishu-meeting-artifact.json +0 -18
@@ -1 +1 @@
1
- {"version":3,"file":"generate-contract.d.ts","sourceRoot":"","sources":["../../src/codegen/generate-contract.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IAC5C,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,CAAC;IAC3C,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IACjD,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACtC,QAAQ,CAAC,KAAK,CAAC,EAAE,UAAU,CAAC;IAC5B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,UAAU,EAAE,CAAC;IACvC,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,UAAU,EAAE,CAAC;IACvC,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,UAAU,EAAE,CAAC;IACvC,QAAQ,CAAC,GAAG,CAAC,EAAE,UAAU,CAAC;IAC1B,QAAQ,CAAC,oBAAoB,CAAC,EAAE,OAAO,GAAG,UAAU,CAAC;IACrD,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACjC;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,cAAc,EAAE,UAAU,CAAC;IACpC,QAAQ,CAAC,QAAQ,EAAE,UAAU,CAAC;IAC9B,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC;IAC7B,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC;IAC7B,QAAQ,CAAC,SAAS,EAAE,UAAU,CAAC;IAC/B,QAAQ,CAAC,YAAY,EAAE,UAAU,CAAC;IAClC,QAAQ,CAAC,mBAAmB,EAAE,UAAU,CAAC;IACzC,QAAQ,CAAC,eAAe,EAAE,UAAU,CAAC;IACrC,QAAQ,CAAC,QAAQ,EAAE,UAAU,CAAC;CAC/B;AAaD,wBAAsB,mBAAmB,IAAI,OAAO,CAAC,eAAe,CAAC,CAoBpE;AAwnBD,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,eAAe,GAAG,MAAM,CA+CvE;AAED,wBAAsB,sBAAsB,IAAI,OAAO,CAAC,IAAI,CAAC,CAI5D;AAED,wBAAsB,sBAAsB,IAAI,OAAO,CAAC,OAAO,CAAC,CAS/D"}
1
+ {"version":3,"file":"generate-contract.d.ts","sourceRoot":"","sources":["../../src/codegen/generate-contract.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IAC5C,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,CAAC;IAC3C,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IACjD,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACtC,QAAQ,CAAC,KAAK,CAAC,EAAE,UAAU,CAAC;IAC5B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,UAAU,EAAE,CAAC;IACvC,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,UAAU,EAAE,CAAC;IACvC,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,UAAU,EAAE,CAAC;IACvC,QAAQ,CAAC,GAAG,CAAC,EAAE,UAAU,CAAC;IAC1B,QAAQ,CAAC,oBAAoB,CAAC,EAAE,OAAO,GAAG,UAAU,CAAC;IACrD,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACjC;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,cAAc,EAAE,UAAU,CAAC;IACpC,QAAQ,CAAC,QAAQ,EAAE,UAAU,CAAC;IAC9B,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC;IAC7B,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC;IAC7B,QAAQ,CAAC,SAAS,EAAE,UAAU,CAAC;IAC/B,QAAQ,CAAC,YAAY,EAAE,UAAU,CAAC;IAClC,QAAQ,CAAC,mBAAmB,EAAE,UAAU,CAAC;IACzC,QAAQ,CAAC,eAAe,EAAE,UAAU,CAAC;IACrC,QAAQ,CAAC,QAAQ,EAAE,UAAU,CAAC;CAC/B;AAcD,wBAAsB,mBAAmB,IAAI,OAAO,CAAC,eAAe,CAAC,CAoBpE;AA6sBD,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,eAAe,GAAG,MAAM,CAwDvE;AAED,wBAAsB,sBAAsB,IAAI,OAAO,CAAC,IAAI,CAAC,CAI5D;AAED,wBAAsB,sBAAsB,IAAI,OAAO,CAAC,OAAO,CAAC,CAS/D"}
@@ -6,6 +6,7 @@ const GENERATED_URL = new URL('../generated/contract.generated.ts', import.meta.
6
6
  const MANIFEST_CAPABILITY_REF = 'https://clowder-ai.dev/schemas/manifest/v0.1#/$defs/Capability';
7
7
  const PLUGIN_METADATA_SCHEMA_PREFIX = 'https://clowder-ai.dev/schemas/plugin-metadata/v1#/$defs/';
8
8
  const SIGNAL_SCHEMA_PREFIX = 'https://clowder-ai.dev/schemas/signals/v0.2#/$defs/';
9
+ const MESSAGING_SCHEMA_PREFIX = 'https://clowder-ai.dev/schemas/messaging/v0.1#/$defs/';
9
10
  async function readSchema(url) {
10
11
  return JSON.parse(await readFile(url, 'utf8'));
11
12
  }
@@ -43,6 +44,9 @@ function refName(ref) {
43
44
  if (ref.startsWith(SIGNAL_SCHEMA_PREFIX)) {
44
45
  return decodeURIComponent(ref.slice(SIGNAL_SCHEMA_PREFIX.length));
45
46
  }
47
+ if (ref.startsWith(MESSAGING_SCHEMA_PREFIX)) {
48
+ return decodeURIComponent(ref.slice(MESSAGING_SCHEMA_PREFIX.length));
49
+ }
46
50
  const marker = '#/$defs/';
47
51
  if (!ref.startsWith(marker)) {
48
52
  throw new Error(`Unsupported schema reference: ${ref}`);
@@ -107,6 +111,12 @@ function renderObject(schema) {
107
111
  }
108
112
  return renderObjectShape(properties, new Set(schema.required ?? []));
109
113
  }
114
+ function renderOpenObject(schema) {
115
+ const structural = renderObject(schema);
116
+ if (structural === 'Readonly<Record<string, unknown>>')
117
+ return structural;
118
+ return structural.replace(/\n\}$/u, '\n readonly [key: string]: unknown;\n}');
119
+ }
110
120
  function schemaAllowsLiteral(schema, value) {
111
121
  if (schema.const !== undefined)
112
122
  return isDeepStrictEqual(schema.const, value);
@@ -328,6 +338,25 @@ function renderDefinition(schema, name, definition) {
328
338
  if (name === 'PackageIcon') {
329
339
  return renderDiscriminatedObject(definition, 'type');
330
340
  }
341
+ if (name === 'MediaRefElementPayload') {
342
+ // The remaining provider-specific metadata is intentionally open, while
343
+ // JSON Schema owns the conditional pmr/hmr relation.
344
+ return renderOpenObject(definition);
345
+ }
346
+ if (name === 'MediaReadResult'
347
+ || name === 'MessageDraft'
348
+ || name === 'MessageSubscriptionContribution'
349
+ || name === 'OperationActionResult') {
350
+ // JSON Schema owns conditional cross-field relations. The TypeScript
351
+ // projection remains structural because these rules depend on nested
352
+ // values (pmr/hmr, done/nextOffset, and whisper media admission).
353
+ // The generated structural projection keeps every declared property while
354
+ // runtime validation enforces the cross-field constraints.
355
+ return renderObject(definition);
356
+ }
357
+ if (name === 'RichBlockElementPayload') {
358
+ return renderOpenObject(definition);
359
+ }
331
360
  if (definition.allOf?.length) {
332
361
  throw new Error(`Unhandled conditional schema definition: ${name}`);
333
362
  }
@@ -446,6 +475,55 @@ function renderMessagingReplayWindowDefault(schema) {
446
475
  `export const MESSAGING_REPLAY_WINDOW_DEFAULT = ${quote(replayWindow)} as const;`,
447
476
  ];
448
477
  }
478
+ /**
479
+ * Deterministic def-name → SCREAMING_SNAKE conversion.
480
+ * Inserts `_` only at lowercase → uppercase word boundaries, so
481
+ * `M0CSubscribeInput` → `M0C_SUBSCRIBE_INPUT` (the `M0C` prefix stays
482
+ * attached; digit→uppercase boundaries are not word starts). All messaging
483
+ * def names are PascalCase words with an optional `M0C` digit-caps prefix,
484
+ * which this rule tokenizes exactly.
485
+ */
486
+ function screamingSnake(name) {
487
+ return name.replace(/([a-z])([A-Z])/g, '$1_$2').toUpperCase();
488
+ }
489
+ /**
490
+ * Runtime key sets and enum value arrays projected from the messaging
491
+ * schema's closed definitions:
492
+ *
493
+ * - every `additionalProperties: false` object def exports
494
+ * `<SCREAMING_SNAKE(defName)>_KEYS` with the def's property keys in
495
+ * schema declaration order (mirrors the same-named generated type);
496
+ * - every string-enum def exports `<SCREAMING_SNAKE(defName)>_VALUES`
497
+ * with the enum members in schema order.
498
+ *
499
+ * The `*_VALUES` suffix (not `*_CODES`) avoids shadowing module-local
500
+ * constants in wire/messaging-byte-bounds.ts.
501
+ */
502
+ function renderClosedKeySets(schema) {
503
+ const lines = [];
504
+ for (const [name, definition] of Object.entries(schema.$defs ?? {})) {
505
+ if (definition.type === 'object' && definition.additionalProperties === false) {
506
+ lines.push(renderConstArray(`${screamingSnake(name)}_KEYS`, Object.keys(definition.properties ?? {})));
507
+ }
508
+ else if (definition.type === 'string' &&
509
+ definition.enum !== undefined &&
510
+ definition.enum.length > 0 &&
511
+ definition.enum.every((value) => typeof value === 'string')) {
512
+ lines.push(renderConstArray(`${screamingSnake(name)}_VALUES`, definition.enum));
513
+ }
514
+ }
515
+ return lines;
516
+ }
517
+ /** Fail closed if the generated source would export two consts with one name. */
518
+ function assertUniqueConstExports(source) {
519
+ const seen = new Set();
520
+ for (const match of source.matchAll(/export const ([A-Za-z0-9_$]+)/g)) {
521
+ if (seen.has(match[1])) {
522
+ throw new Error(`Duplicate generated const export: ${match[1]}`);
523
+ }
524
+ seen.add(match[1]);
525
+ }
526
+ }
449
527
  function schemaProperty(schema, definitionName, property) {
450
528
  const result = schema.$defs?.[definitionName]?.properties?.[property];
451
529
  if (!result)
@@ -523,6 +601,11 @@ function validateDataStrategyMetadata(schema) {
523
601
  }
524
602
  }
525
603
  export function generateContractSource(schemas) {
604
+ const layers = schemas.manifest['x-clowder-capability-layers'];
605
+ const count = Object.values(layers).flat().length;
606
+ const matrix = schemas.behavior.$defs?.PermissionMatrixInput?.properties?.entries;
607
+ if (matrix?.minItems !== count || matrix.maxItems !== count)
608
+ throw new Error('behavior permission matrix bounds must match manifest capabilities');
526
609
  validateDataStrategyMetadata(schemas.manifest);
527
610
  validateMessagingBounds(schemas.messaging);
528
611
  const sections = [
@@ -545,6 +628,8 @@ export function generateContractSource(schemas) {
545
628
  '',
546
629
  ...renderDefinitions(schemas.messaging),
547
630
  '',
631
+ ...renderClosedKeySets(schemas.messaging),
632
+ '',
548
633
  ...renderDefinitions(schemas.physicalLimb),
549
634
  '',
550
635
  ...renderDefinitions(schemas.docxMaterialization),
@@ -569,7 +654,9 @@ export function generateContractSource(schemas) {
569
654
  ...renderMessagingReplayWindowDefault(schemas.messaging),
570
655
  '',
571
656
  ];
572
- return `${sections.join('\n').trimEnd()}\n`;
657
+ const source = `${sections.join('\n').trimEnd()}\n`;
658
+ assertUniqueConstExports(source);
659
+ return source;
573
660
  }
574
661
  export async function writeGeneratedContract() {
575
662
  const source = generateContractSource(await loadContractSchemas());
@@ -1 +1 @@
1
- {"version":3,"file":"generate-contract.js","sourceRoot":"","sources":["../../src/codegen/generate-contract.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generate-contract.js","sourceRoot":"","sources":["../../src/codegen/generate-contract.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,7 @@
4
4
  * These are contract data for conformance runners. They do not implement
5
5
  * Host activation or a handshake codec.
6
6
  */
7
- export { DISPOSITION_FIXTURE_VECTORS, BETA8_HANDSHAKE_VECTOR_IDS, BETA9_EVENTS_PUBLISH_VECTOR_IDS, BETA10_LIFECYCLE_VECTOR_IDS, BETA11_MESSAGING_VECTOR_IDS, CLOSED_ERROR_ARM_NAMES, RESPONSE_CANDIDATE_CASES, NOTIFICATION_PARTITION_CASES, } from '../wire/disposition-fixtures.js';
7
+ export { DISPOSITION_FIXTURE_VECTORS, BETA8_HANDSHAKE_VECTOR_IDS, BETA11_MESSAGING_VECTOR_IDS, CLOSED_ERROR_ARM_NAMES, RESPONSE_CANDIDATE_CASES, NOTIFICATION_PARTITION_CASES, } from '../wire/disposition-fixtures.js';
8
8
  export { M0C_BEHAVIOR_CASE_IDS, M0C_BEHAVIOR_FIXTURE_EXPORT, } from './messaging-behavior-fixture.js';
9
9
  export type { M0CBehaviorCaseId } from './messaging-behavior-fixture.js';
10
10
  export type { ClosedErrorArmName, RequestSnapshot, InFlightRecord, FixturePreState, DispositionFixtureVector, PartitionCase, } from '../wire/disposition-fixtures.js';
@@ -1 +1 @@
1
- {"version":3,"file":"fixtures.d.ts","sourceRoot":"","sources":["../../src/conformance/fixtures.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EACL,2BAA2B,EAC3B,0BAA0B,EAC1B,+BAA+B,EAC/B,2BAA2B,EAC3B,2BAA2B,EAC3B,sBAAsB,EACtB,wBAAwB,EACxB,4BAA4B,GAC7B,MAAM,iCAAiC,CAAC;AAEzC,OAAO,EACL,qBAAqB,EACrB,2BAA2B,GAC5B,MAAM,iCAAiC,CAAC;AAEzC,YAAY,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAEzE,YAAY,EACV,kBAAkB,EAClB,eAAe,EACf,cAAc,EACd,eAAe,EACf,wBAAwB,EACxB,aAAa,GACd,MAAM,iCAAiC,CAAC"}
1
+ {"version":3,"file":"fixtures.d.ts","sourceRoot":"","sources":["../../src/conformance/fixtures.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EACL,2BAA2B,EAC3B,0BAA0B,EAC1B,2BAA2B,EAC3B,sBAAsB,EACtB,wBAAwB,EACxB,4BAA4B,GAC7B,MAAM,iCAAiC,CAAC;AAEzC,OAAO,EACL,qBAAqB,EACrB,2BAA2B,GAC5B,MAAM,iCAAiC,CAAC;AAEzC,YAAY,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAEzE,YAAY,EACV,kBAAkB,EAClB,eAAe,EACf,cAAc,EACd,eAAe,EACf,wBAAwB,EACxB,aAAa,GACd,MAAM,iCAAiC,CAAC"}
@@ -4,6 +4,6 @@
4
4
  * These are contract data for conformance runners. They do not implement
5
5
  * Host activation or a handshake codec.
6
6
  */
7
- export { DISPOSITION_FIXTURE_VECTORS, BETA8_HANDSHAKE_VECTOR_IDS, BETA9_EVENTS_PUBLISH_VECTOR_IDS, BETA10_LIFECYCLE_VECTOR_IDS, BETA11_MESSAGING_VECTOR_IDS, CLOSED_ERROR_ARM_NAMES, RESPONSE_CANDIDATE_CASES, NOTIFICATION_PARTITION_CASES, } from '../wire/disposition-fixtures.js';
7
+ export { DISPOSITION_FIXTURE_VECTORS, BETA8_HANDSHAKE_VECTOR_IDS, BETA11_MESSAGING_VECTOR_IDS, CLOSED_ERROR_ARM_NAMES, RESPONSE_CANDIDATE_CASES, NOTIFICATION_PARTITION_CASES, } from '../wire/disposition-fixtures.js';
8
8
  export { M0C_BEHAVIOR_CASE_IDS, M0C_BEHAVIOR_FIXTURE_EXPORT, } from './messaging-behavior-fixture.js';
9
9
  //# sourceMappingURL=fixtures.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"fixtures.js","sourceRoot":"","sources":["../../src/conformance/fixtures.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EACL,2BAA2B,EAC3B,0BAA0B,EAC1B,+BAA+B,EAC/B,2BAA2B,EAC3B,2BAA2B,EAC3B,sBAAsB,EACtB,wBAAwB,EACxB,4BAA4B,GAC7B,MAAM,iCAAiC,CAAC;AAEzC,OAAO,EACL,qBAAqB,EACrB,2BAA2B,GAC5B,MAAM,iCAAiC,CAAC"}
1
+ {"version":3,"file":"fixtures.js","sourceRoot":"","sources":["../../src/conformance/fixtures.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EACL,2BAA2B,EAC3B,0BAA0B,EAC1B,2BAA2B,EAC3B,sBAAsB,EACtB,wBAAwB,EACxB,4BAA4B,GAC7B,MAAM,iCAAiC,CAAC;AAEzC,OAAO,EACL,qBAAqB,EACrB,2BAA2B,GAC5B,MAAM,iCAAiC,CAAC"}
@@ -12,7 +12,7 @@ export { getCapabilityLayer } from '../types/capability.js';
12
12
  export { executeBehaviorCase, type BehaviorAdapter, type BehaviorCaseReport, type BehaviorTarget, type BehaviorVerdict, } from './behavior-executor.js';
13
13
  export { MessagingLoopbackAdapter } from './messaging-loopback-adapter.js';
14
14
  export { M0C_BEHAVIOR_CASE_IDS, M0C_BEHAVIOR_FIXTURE_EXPORT, type M0CBehaviorCaseId, } from './messaging-behavior-fixture.js';
15
- export { DISPOSITION_FIXTURE_VECTORS, BETA8_HANDSHAKE_VECTOR_IDS, BETA9_EVENTS_PUBLISH_VECTOR_IDS, BETA10_LIFECYCLE_VECTOR_IDS, BETA11_MESSAGING_VECTOR_IDS, CLOSED_ERROR_ARM_NAMES, RESPONSE_CANDIDATE_CASES, NOTIFICATION_PARTITION_CASES, } from './fixtures.js';
15
+ export { DISPOSITION_FIXTURE_VECTORS, BETA8_HANDSHAKE_VECTOR_IDS, BETA11_MESSAGING_VECTOR_IDS, CLOSED_ERROR_ARM_NAMES, RESPONSE_CANDIDATE_CASES, NOTIFICATION_PARTITION_CASES, } from './fixtures.js';
16
16
  export type { ClosedErrorArmName, RequestSnapshot, InFlightRecord, FixturePreState, DispositionFixtureVector, PartitionCase, } from './fixtures.js';
17
17
  export { HarnessChild, HarnessChildExitedError, HarnessCleanupError, HarnessFrameBacklogError, HarnessTimeoutError, MAX_HARNESS_QUEUED_FRAMES, MAX_NDJSON_FRAME_BYTES, MAX_TIMER_MS, NdjsonFrameDecoder, NdjsonFrameError, encodeNdjsonFrame, runDualTransportOracle, runHarnessCase, spawnHarnessChild, type DecodedNdjsonFrame, type DualTransportOracleCase, type DualTransportOracleReport, type HarnessChildExit, type HarnessReceiveOptions, type HarnessWireShape, type JsonObject, type NdjsonFrameErrorCode, type OracleTransport, type RunHarnessCaseOptions, type SpawnHarnessChildOptions, type TransportTranscript, } from './stdio-harness/index.js';
18
18
  export { DATA_CLASS_ALLOWED_STRATEGIES, CAPABILITY_TABLE, L0_CAPABILITIES, L1_CAPABILITIES, L2_CAPABILITIES, } from '../generated/contract.generated.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/conformance/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AAElE,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAE5D,OAAO,EACL,mBAAmB,EACnB,KAAK,eAAe,EACpB,KAAK,kBAAkB,EACvB,KAAK,cAAc,EACnB,KAAK,eAAe,GACrB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAE3E,OAAO,EACL,qBAAqB,EACrB,2BAA2B,EAC3B,KAAK,iBAAiB,GACvB,MAAM,iCAAiC,CAAC;AAEzC,OAAO,EACL,2BAA2B,EAC3B,0BAA0B,EAC1B,+BAA+B,EAC/B,2BAA2B,EAC3B,2BAA2B,EAC3B,sBAAsB,EACtB,wBAAwB,EACxB,4BAA4B,GAC7B,MAAM,eAAe,CAAC;AAEvB,YAAY,EACV,kBAAkB,EAClB,eAAe,EACf,cAAc,EACd,eAAe,EACf,wBAAwB,EACxB,aAAa,GACd,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,YAAY,EACZ,uBAAuB,EACvB,mBAAmB,EACnB,wBAAwB,EACxB,mBAAmB,EACnB,yBAAyB,EACzB,sBAAsB,EACtB,YAAY,EACZ,kBAAkB,EAClB,gBAAgB,EAChB,iBAAiB,EACjB,sBAAsB,EACtB,cAAc,EACd,iBAAiB,EACjB,KAAK,kBAAkB,EACvB,KAAK,uBAAuB,EAC5B,KAAK,yBAAyB,EAC9B,KAAK,gBAAgB,EACrB,KAAK,qBAAqB,EAC1B,KAAK,gBAAgB,EACrB,KAAK,UAAU,EACf,KAAK,oBAAoB,EACzB,KAAK,eAAe,EACpB,KAAK,qBAAqB,EAC1B,KAAK,wBAAwB,EAC7B,KAAK,mBAAmB,GACzB,MAAM,0BAA0B,CAAC;AAElC,OAAO,EACL,6BAA6B,EAC7B,gBAAgB,EAChB,eAAe,EACf,eAAe,EACf,eAAe,GAChB,MAAM,oCAAoC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/conformance/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AAElE,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAE5D,OAAO,EACL,mBAAmB,EACnB,KAAK,eAAe,EACpB,KAAK,kBAAkB,EACvB,KAAK,cAAc,EACnB,KAAK,eAAe,GACrB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAE3E,OAAO,EACL,qBAAqB,EACrB,2BAA2B,EAC3B,KAAK,iBAAiB,GACvB,MAAM,iCAAiC,CAAC;AAEzC,OAAO,EACL,2BAA2B,EAC3B,0BAA0B,EAC1B,2BAA2B,EAC3B,sBAAsB,EACtB,wBAAwB,EACxB,4BAA4B,GAC7B,MAAM,eAAe,CAAC;AAEvB,YAAY,EACV,kBAAkB,EAClB,eAAe,EACf,cAAc,EACd,eAAe,EACf,wBAAwB,EACxB,aAAa,GACd,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,YAAY,EACZ,uBAAuB,EACvB,mBAAmB,EACnB,wBAAwB,EACxB,mBAAmB,EACnB,yBAAyB,EACzB,sBAAsB,EACtB,YAAY,EACZ,kBAAkB,EAClB,gBAAgB,EAChB,iBAAiB,EACjB,sBAAsB,EACtB,cAAc,EACd,iBAAiB,EACjB,KAAK,kBAAkB,EACvB,KAAK,uBAAuB,EAC5B,KAAK,yBAAyB,EAC9B,KAAK,gBAAgB,EACrB,KAAK,qBAAqB,EAC1B,KAAK,gBAAgB,EACrB,KAAK,UAAU,EACf,KAAK,oBAAoB,EACzB,KAAK,eAAe,EACpB,KAAK,qBAAqB,EAC1B,KAAK,wBAAwB,EAC7B,KAAK,mBAAmB,GACzB,MAAM,0BAA0B,CAAC;AAElC,OAAO,EACL,6BAA6B,EAC7B,gBAAgB,EAChB,eAAe,EACf,eAAe,EACf,eAAe,GAChB,MAAM,oCAAoC,CAAC"}
@@ -12,7 +12,7 @@ export { getCapabilityLayer } from '../types/capability.js';
12
12
  export { executeBehaviorCase, } from './behavior-executor.js';
13
13
  export { MessagingLoopbackAdapter } from './messaging-loopback-adapter.js';
14
14
  export { M0C_BEHAVIOR_CASE_IDS, M0C_BEHAVIOR_FIXTURE_EXPORT, } from './messaging-behavior-fixture.js';
15
- export { DISPOSITION_FIXTURE_VECTORS, BETA8_HANDSHAKE_VECTOR_IDS, BETA9_EVENTS_PUBLISH_VECTOR_IDS, BETA10_LIFECYCLE_VECTOR_IDS, BETA11_MESSAGING_VECTOR_IDS, CLOSED_ERROR_ARM_NAMES, RESPONSE_CANDIDATE_CASES, NOTIFICATION_PARTITION_CASES, } from './fixtures.js';
15
+ export { DISPOSITION_FIXTURE_VECTORS, BETA8_HANDSHAKE_VECTOR_IDS, BETA11_MESSAGING_VECTOR_IDS, CLOSED_ERROR_ARM_NAMES, RESPONSE_CANDIDATE_CASES, NOTIFICATION_PARTITION_CASES, } from './fixtures.js';
16
16
  export { HarnessChild, HarnessChildExitedError, HarnessCleanupError, HarnessFrameBacklogError, HarnessTimeoutError, MAX_HARNESS_QUEUED_FRAMES, MAX_NDJSON_FRAME_BYTES, MAX_TIMER_MS, NdjsonFrameDecoder, NdjsonFrameError, encodeNdjsonFrame, runDualTransportOracle, runHarnessCase, spawnHarnessChild, } from './stdio-harness/index.js';
17
17
  export { DATA_CLASS_ALLOWED_STRATEGIES, CAPABILITY_TABLE, L0_CAPABILITIES, L1_CAPABILITIES, L2_CAPABILITIES, } from '../generated/contract.generated.js';
18
18
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/conformance/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AAElE,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAE5D,OAAO,EACL,mBAAmB,GAKpB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAE3E,OAAO,EACL,qBAAqB,EACrB,2BAA2B,GAE5B,MAAM,iCAAiC,CAAC;AAEzC,OAAO,EACL,2BAA2B,EAC3B,0BAA0B,EAC1B,+BAA+B,EAC/B,2BAA2B,EAC3B,2BAA2B,EAC3B,sBAAsB,EACtB,wBAAwB,EACxB,4BAA4B,GAC7B,MAAM,eAAe,CAAC;AAWvB,OAAO,EACL,YAAY,EACZ,uBAAuB,EACvB,mBAAmB,EACnB,wBAAwB,EACxB,mBAAmB,EACnB,yBAAyB,EACzB,sBAAsB,EACtB,YAAY,EACZ,kBAAkB,EAClB,gBAAgB,EAChB,iBAAiB,EACjB,sBAAsB,EACtB,cAAc,EACd,iBAAiB,GAalB,MAAM,0BAA0B,CAAC;AAElC,OAAO,EACL,6BAA6B,EAC7B,gBAAgB,EAChB,eAAe,EACf,eAAe,EACf,eAAe,GAChB,MAAM,oCAAoC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/conformance/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AAElE,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAE5D,OAAO,EACL,mBAAmB,GAKpB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAE3E,OAAO,EACL,qBAAqB,EACrB,2BAA2B,GAE5B,MAAM,iCAAiC,CAAC;AAEzC,OAAO,EACL,2BAA2B,EAC3B,0BAA0B,EAC1B,2BAA2B,EAC3B,sBAAsB,EACtB,wBAAwB,EACxB,4BAA4B,GAC7B,MAAM,eAAe,CAAC;AAWvB,OAAO,EACL,YAAY,EACZ,uBAAuB,EACvB,mBAAmB,EACnB,wBAAwB,EACxB,mBAAmB,EACnB,yBAAyB,EACzB,sBAAsB,EACtB,YAAY,EACZ,kBAAkB,EAClB,gBAAgB,EAChB,iBAAiB,EACjB,sBAAsB,EACtB,cAAc,EACd,iBAAiB,GAalB,MAAM,0BAA0B,CAAC;AAElC,OAAO,EACL,6BAA6B,EAC7B,gBAAgB,EAChB,eAAe,EACf,eAAe,EACf,eAAe,GAChB,MAAM,oCAAoC,CAAC"}
@@ -187,8 +187,8 @@ export async function runConformance(options = {}) {
187
187
  addFormats(ajv);
188
188
  ajv.addSchema(pluginMetadataSchema, pluginMetadataSchema['$id']);
189
189
  ajv.addSchema(signalSchema, signalSchema['$id']);
190
- ajv.addSchema(manifestSchema, manifestSchema['$id']);
191
190
  ajv.addSchema(messagingSchema, messagingSchema['$id']);
191
+ ajv.addSchema(manifestSchema, manifestSchema['$id']);
192
192
  ajv.addSchema(behaviorSchema, behaviorSchema['$id']);
193
193
  // Discover and validate fixtures
194
194
  const fixtures = await discoverFixtures(fixturesDir);
@@ -1 +1 @@
1
- {"version":3,"file":"runner.js","sourceRoot":"","sources":["../../src/conformance/runner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runner.js","sourceRoot":"","sources":["../../src/conformance/runner.ts"],"names":[],"mappings":"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"}