@clowder-ai/plugin-contract 0.1.0-beta.1 → 0.1.0-beta.10

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 (157) hide show
  1. package/dist/codegen/generate-contract.d.ts +5 -0
  2. package/dist/codegen/generate-contract.d.ts.map +1 -1
  3. package/dist/codegen/generate-contract.js +45 -4
  4. package/dist/codegen/generate-contract.js.map +1 -1
  5. package/dist/conformance/behavior-executor.d.ts +18 -0
  6. package/dist/conformance/behavior-executor.d.ts.map +1 -0
  7. package/dist/conformance/behavior-executor.js +52 -0
  8. package/dist/conformance/behavior-executor.js.map +1 -0
  9. package/dist/conformance/fixtures.d.ts +9 -0
  10. package/dist/conformance/fixtures.d.ts.map +1 -0
  11. package/dist/conformance/fixtures.js +8 -0
  12. package/dist/conformance/fixtures.js.map +1 -0
  13. package/dist/conformance/index.d.ts +5 -0
  14. package/dist/conformance/index.d.ts.map +1 -1
  15. package/dist/conformance/index.js +4 -0
  16. package/dist/conformance/index.js.map +1 -1
  17. package/dist/conformance/messaging-loopback-adapter.d.ts +23 -0
  18. package/dist/conformance/messaging-loopback-adapter.d.ts.map +1 -0
  19. package/dist/conformance/messaging-loopback-adapter.js +389 -0
  20. package/dist/conformance/messaging-loopback-adapter.js.map +1 -0
  21. package/dist/conformance/messaging-loopback-state.d.ts +22 -0
  22. package/dist/conformance/messaging-loopback-state.d.ts.map +1 -0
  23. package/dist/conformance/messaging-loopback-state.js +101 -0
  24. package/dist/conformance/messaging-loopback-state.js.map +1 -0
  25. package/dist/conformance/runner.d.ts +18 -1
  26. package/dist/conformance/runner.d.ts.map +1 -1
  27. package/dist/conformance/runner.js +153 -66
  28. package/dist/conformance/runner.js.map +1 -1
  29. package/dist/conformance/stdio-harness/child-process-harness.d.ts +65 -0
  30. package/dist/conformance/stdio-harness/child-process-harness.d.ts.map +1 -0
  31. package/dist/conformance/stdio-harness/child-process-harness.js +296 -0
  32. package/dist/conformance/stdio-harness/child-process-harness.js.map +1 -0
  33. package/dist/conformance/stdio-harness/dual-transport-oracle.d.ts +26 -0
  34. package/dist/conformance/stdio-harness/dual-transport-oracle.d.ts.map +1 -0
  35. package/dist/conformance/stdio-harness/dual-transport-oracle.js +32 -0
  36. package/dist/conformance/stdio-harness/dual-transport-oracle.js.map +1 -0
  37. package/dist/conformance/stdio-harness/harness-process-spawn.d.ts +27 -0
  38. package/dist/conformance/stdio-harness/harness-process-spawn.d.ts.map +1 -0
  39. package/dist/conformance/stdio-harness/harness-process-spawn.js +43 -0
  40. package/dist/conformance/stdio-harness/harness-process-spawn.js.map +1 -0
  41. package/dist/conformance/stdio-harness/index.d.ts +5 -0
  42. package/dist/conformance/stdio-harness/index.d.ts.map +1 -0
  43. package/dist/conformance/stdio-harness/index.js +4 -0
  44. package/dist/conformance/stdio-harness/index.js.map +1 -0
  45. package/dist/conformance/stdio-harness/ndjson-frame.d.ts +31 -0
  46. package/dist/conformance/stdio-harness/ndjson-frame.d.ts.map +1 -0
  47. package/dist/conformance/stdio-harness/ndjson-frame.js +125 -0
  48. package/dist/conformance/stdio-harness/ndjson-frame.js.map +1 -0
  49. package/dist/conformance/stdio-harness/node-process-tree-runtime.d.ts +15 -0
  50. package/dist/conformance/stdio-harness/node-process-tree-runtime.d.ts.map +1 -0
  51. package/dist/conformance/stdio-harness/node-process-tree-runtime.js +78 -0
  52. package/dist/conformance/stdio-harness/node-process-tree-runtime.js.map +1 -0
  53. package/dist/conformance/stdio-harness/process-tree-controller.d.ts +51 -0
  54. package/dist/conformance/stdio-harness/process-tree-controller.d.ts.map +1 -0
  55. package/dist/conformance/stdio-harness/process-tree-controller.js +162 -0
  56. package/dist/conformance/stdio-harness/process-tree-controller.js.map +1 -0
  57. package/dist/conformance/stdio-harness/windows-sentinel.d.ts +15 -0
  58. package/dist/conformance/stdio-harness/windows-sentinel.d.ts.map +1 -0
  59. package/dist/conformance/stdio-harness/windows-sentinel.js +160 -0
  60. package/dist/conformance/stdio-harness/windows-sentinel.js.map +1 -0
  61. package/dist/conformance/stdio-harness/wire-shape.d.ts +18 -0
  62. package/dist/conformance/stdio-harness/wire-shape.d.ts.map +1 -0
  63. package/dist/conformance/stdio-harness/wire-shape.js +2 -0
  64. package/dist/conformance/stdio-harness/wire-shape.js.map +1 -0
  65. package/dist/generated/contract.generated.d.ts +305 -1
  66. package/dist/generated/contract.generated.d.ts.map +1 -1
  67. package/dist/generated/contract.generated.js +1 -1
  68. package/dist/generated/contract.generated.js.map +1 -1
  69. package/dist/index.d.ts +3 -1
  70. package/dist/index.d.ts.map +1 -1
  71. package/dist/index.js +5 -1
  72. package/dist/index.js.map +1 -1
  73. package/dist/validation/index.d.ts +2 -0
  74. package/dist/validation/index.d.ts.map +1 -1
  75. package/dist/validation/index.js +2 -0
  76. package/dist/validation/index.js.map +1 -1
  77. package/dist/validation/manifest.d.ts +23 -0
  78. package/dist/validation/manifest.d.ts.map +1 -0
  79. package/dist/validation/manifest.js +53 -0
  80. package/dist/validation/manifest.js.map +1 -0
  81. package/dist/validation/signals.d.ts +26 -0
  82. package/dist/validation/signals.d.ts.map +1 -0
  83. package/dist/validation/signals.js +206 -0
  84. package/dist/validation/signals.js.map +1 -0
  85. package/dist/wire/constants.d.ts +36 -0
  86. package/dist/wire/constants.d.ts.map +1 -0
  87. package/dist/wire/constants.js +36 -0
  88. package/dist/wire/constants.js.map +1 -0
  89. package/dist/wire/disposition-fixtures.d.ts +110 -0
  90. package/dist/wire/disposition-fixtures.d.ts.map +1 -0
  91. package/dist/wire/disposition-fixtures.js +1462 -0
  92. package/dist/wire/disposition-fixtures.js.map +1 -0
  93. package/dist/wire/disposition.d.ts +102 -0
  94. package/dist/wire/disposition.d.ts.map +1 -0
  95. package/dist/wire/disposition.js +217 -0
  96. package/dist/wire/disposition.js.map +1 -0
  97. package/dist/wire/envelope.d.ts +253 -0
  98. package/dist/wire/envelope.d.ts.map +1 -0
  99. package/dist/wire/envelope.js +19 -0
  100. package/dist/wire/envelope.js.map +1 -0
  101. package/dist/wire/errors.d.ts +222 -0
  102. package/dist/wire/errors.d.ts.map +1 -0
  103. package/dist/wire/errors.js +153 -0
  104. package/dist/wire/errors.js.map +1 -0
  105. package/dist/wire/grants.d.ts +57 -0
  106. package/dist/wire/grants.d.ts.map +1 -0
  107. package/dist/wire/grants.js +59 -0
  108. package/dist/wire/grants.js.map +1 -0
  109. package/dist/wire/handshake-byte-bounds.d.ts +69 -0
  110. package/dist/wire/handshake-byte-bounds.d.ts.map +1 -0
  111. package/dist/wire/handshake-byte-bounds.js +173 -0
  112. package/dist/wire/handshake-byte-bounds.js.map +1 -0
  113. package/dist/wire/handshake.d.ts +146 -0
  114. package/dist/wire/handshake.d.ts.map +1 -0
  115. package/dist/wire/handshake.js +189 -0
  116. package/dist/wire/handshake.js.map +1 -0
  117. package/dist/wire/index.d.ts +35 -0
  118. package/dist/wire/index.d.ts.map +1 -0
  119. package/dist/wire/index.js +53 -0
  120. package/dist/wire/index.js.map +1 -0
  121. package/dist/wire/lifecycle-byte-bounds.d.ts +55 -0
  122. package/dist/wire/lifecycle-byte-bounds.d.ts.map +1 -0
  123. package/dist/wire/lifecycle-byte-bounds.js +209 -0
  124. package/dist/wire/lifecycle-byte-bounds.js.map +1 -0
  125. package/dist/wire/registry.d.ts +283 -0
  126. package/dist/wire/registry.d.ts.map +1 -0
  127. package/dist/wire/registry.js +258 -0
  128. package/dist/wire/registry.js.map +1 -0
  129. package/dist/wire/request-id.d.ts +34 -0
  130. package/dist/wire/request-id.d.ts.map +1 -0
  131. package/dist/wire/request-id.js +40 -0
  132. package/dist/wire/request-id.js.map +1 -0
  133. package/dist/wire/row-shapes.d.ts +212 -0
  134. package/dist/wire/row-shapes.d.ts.map +1 -0
  135. package/dist/wire/row-shapes.js +59 -0
  136. package/dist/wire/row-shapes.js.map +1 -0
  137. package/dist/wire/signal-byte-bounds.d.ts +97 -0
  138. package/dist/wire/signal-byte-bounds.d.ts.map +1 -0
  139. package/dist/wire/signal-byte-bounds.js +229 -0
  140. package/dist/wire/signal-byte-bounds.js.map +1 -0
  141. package/dist/wire/wire-uint53.d.ts +26 -0
  142. package/dist/wire/wire-uint53.d.ts.map +1 -0
  143. package/dist/wire/wire-uint53.js +32 -0
  144. package/dist/wire/wire-uint53.js.map +1 -0
  145. package/fixtures/behavior/messaging/adversarial-invariants.json +56 -5
  146. package/fixtures/manifest/invalid/duplicate-signal-type.json +33 -0
  147. package/fixtures/signals/invalid/destination-injection.json +15 -0
  148. package/fixtures/signals/invalid/dynamic-schema-url.json +10 -0
  149. package/fixtures/signals/invalid/forbidden-raw-privacy.json +10 -0
  150. package/fixtures/signals/invalid/non-utc-occurred-at.json +12 -0
  151. package/fixtures/signals/valid/feishu-meeting-artifact.json +18 -0
  152. package/fixtures/signals/valid/remote-service-declaration.json +10 -0
  153. package/package.json +13 -5
  154. package/src/schemas/manifest.schema.json +5 -2
  155. package/src/schemas/messaging.schema.json +1 -0
  156. package/src/schemas/physical-limb.schema.json +319 -0
  157. package/src/schemas/signal.schema.json +129 -0
@@ -16,9 +16,12 @@
16
16
  */
17
17
  import { readdir, readFile } from 'node:fs/promises';
18
18
  import { createRequire } from 'node:module';
19
- import { join, relative } from 'node:path';
19
+ import { join, relative, resolve } from 'node:path';
20
20
  import { fileURLToPath } from 'node:url';
21
+ import { validateManifest } from '../validation/manifest.js';
21
22
  import { validateMessagingSemantics } from '../validation/messaging-semantic.js';
23
+ import { executeBehaviorCase, } from './behavior-executor.js';
24
+ import { MessagingLoopbackAdapter } from './messaging-loopback-adapter.js';
22
25
  // Ajv is CJS — use createRequire for clean interop with ESM + verbatimModuleSyntax
23
26
  // Use ajv/dist/2020 for JSON Schema 2020-12 ($defs, etc.)
24
27
  const require = createRequire(import.meta.url);
@@ -35,7 +38,7 @@ async function loadSchema(schemaPath) {
35
38
  }
36
39
  async function discoverFixtures(fixturesDir) {
37
40
  const fixtures = [];
38
- const domains = ['manifest', 'messaging'];
41
+ const domains = ['manifest', 'messaging', 'signals'];
39
42
  for (const domain of domains) {
40
43
  for (const validity of ['valid', 'invalid']) {
41
44
  const dir = join(fixturesDir, domain, validity);
@@ -65,6 +68,7 @@ function getDefaultSchemaId(domain) {
65
68
  const ids = {
66
69
  manifest: 'https://clowder-ai.dev/schemas/manifest/v0.1',
67
70
  messaging: 'https://clowder-ai.dev/schemas/messaging/v0.1',
71
+ signals: 'https://clowder-ai.dev/schemas/signals/v0.2',
68
72
  };
69
73
  return ids[domain] ?? '';
70
74
  }
@@ -110,7 +114,20 @@ async function validateFixture(ajv, fixture, schemas) {
110
114
  const isSchemaValid = validate(data);
111
115
  const semanticResult = fixture.domain === 'messaging' && isSchemaValid
112
116
  ? validateMessagingSemantics(meta?.schemaRef ?? 'root', data)
113
- : { valid: true, errors: [] };
117
+ : fixture.domain === 'manifest' && isSchemaValid
118
+ ? (() => {
119
+ const result = validateManifest(data);
120
+ return result.valid
121
+ ? { valid: true, errors: [] }
122
+ : {
123
+ valid: false,
124
+ errors: result.errors.map(({ instancePath, message }) => ({
125
+ path: instancePath,
126
+ message,
127
+ })),
128
+ };
129
+ })()
130
+ : { valid: true, errors: [] };
114
131
  const isValid = isSchemaValid && semanticResult.valid;
115
132
  if (fixture.validity === 'valid') {
116
133
  // Valid fixtures MUST pass structural and semantic validation.
@@ -136,117 +153,187 @@ async function validateFixture(ajv, fixture, schemas) {
136
153
  };
137
154
  }
138
155
  }
139
- // ---------------------------------------------------------------------------
140
- // Main
141
- // ---------------------------------------------------------------------------
142
- async function main() {
143
- const fixturesDir = join(PKG_ROOT, 'fixtures');
156
+ const defaultBehaviorAdapters = {
157
+ loopback: () => new MessagingLoopbackAdapter(),
158
+ };
159
+ function isMissingDirectory(error) {
160
+ return (typeof error === 'object' &&
161
+ error !== null &&
162
+ 'code' in error &&
163
+ error.code === 'ENOENT');
164
+ }
165
+ export async function runConformance(options = {}) {
166
+ const fixturesDir = options.fixturesDir ?? join(PKG_ROOT, 'fixtures');
144
167
  const schemasDir = join(PKG_ROOT, 'src', 'schemas');
145
- console.log('🔍 Conformance runner — @clowder-ai/plugin-contract');
146
- console.log(` Fixtures: ${fixturesDir}`);
147
- console.log(` Schemas: ${schemasDir}`);
148
- console.log();
168
+ const write = options.write ?? console.log;
169
+ const behaviorAdapters = options.behaviorAdapters ?? defaultBehaviorAdapters;
170
+ const failures = [];
171
+ write('🔍 Conformance runner — @clowder-ai/plugin-contract');
172
+ write(` Fixtures: ${fixturesDir}`);
173
+ write(` Schemas: ${schemasDir}`);
174
+ write('');
149
175
  // Load schemas
150
176
  const schemas = new Map();
151
177
  const manifestSchema = await loadSchema(join(schemasDir, 'manifest.schema.json'));
152
178
  const messagingSchema = await loadSchema(join(schemasDir, 'messaging.schema.json'));
179
+ const signalSchema = await loadSchema(join(schemasDir, 'signal.schema.json'));
153
180
  const behaviorSchema = await loadSchema(join(schemasDir, 'behavior-fixture.schema.json'));
154
181
  schemas.set('manifest', manifestSchema);
155
182
  schemas.set('messaging', messagingSchema);
183
+ schemas.set('signals', signalSchema);
156
184
  // Set up Ajv with format validation (date-time, uri, email, etc.)
157
185
  const ajv = new Ajv({ allErrors: true, strict: false });
158
186
  addFormats(ajv);
187
+ ajv.addSchema(signalSchema, signalSchema['$id']);
159
188
  ajv.addSchema(manifestSchema, manifestSchema['$id']);
160
189
  ajv.addSchema(messagingSchema, messagingSchema['$id']);
161
190
  ajv.addSchema(behaviorSchema, behaviorSchema['$id']);
162
191
  // Discover and validate fixtures
163
192
  const fixtures = await discoverFixtures(fixturesDir);
164
- if (fixtures.length === 0) {
165
- console.log('📭 No fixtures found — runner OK (empty run).');
166
- console.log(' Fixtures will be added by sol per the three-tier fixture plan.');
167
- process.exit(0);
168
- }
169
193
  const results = [];
170
194
  for (const fixture of fixtures) {
171
195
  results.push(await validateFixture(ajv, fixture, schemas));
172
196
  }
173
197
  // Report schema fixtures
174
- let schemaFailures = 0;
175
198
  for (const result of results) {
176
199
  const icon = result.passed ? '✅' : '❌';
177
200
  const expect = result.fixture.validity === 'valid' ? 'should pass' : 'should fail';
178
- console.log(`${icon} ${result.fixture.relativePath} (${expect})`);
179
- if (result.errors) {
201
+ write(`${icon} ${result.fixture.relativePath} (${expect})`);
202
+ if (!result.passed) {
203
+ const errors = result.errors ?? ['fixture did not meet its expected validity'];
204
+ failures.push(...errors.map((message) => `${result.fixture.relativePath}: ${message}`));
205
+ }
206
+ if (result.errors && !result.passed) {
180
207
  for (const err of result.errors) {
181
- console.log(` → ${err}`);
208
+ write(` → ${err}`);
182
209
  }
183
- schemaFailures++;
184
210
  }
185
211
  }
186
- // Validate and report behavioral fixtures before deferring their execution.
212
+ // Validate and execute behavioral fixtures through registered adapters.
187
213
  const behaviorDir = join(fixturesDir, 'behavior');
188
- let behaviorCount = 0;
214
+ let behaviorTotal = 0;
215
+ let behaviorPassed = 0;
189
216
  let behaviorFileCount = 0;
190
- let behaviorFailures = 0;
191
217
  const validateBehavior = ajv.getSchema(behaviorSchema['$id']);
192
218
  if (!validateBehavior) {
193
219
  throw new Error('Behavior fixture schema was not registered');
194
220
  }
221
+ let behaviorDomains = [];
195
222
  try {
196
- const behaviorDomains = await readdir(behaviorDir);
197
- for (const domain of behaviorDomains) {
198
- const domainDir = join(behaviorDir, domain);
199
- let entries;
223
+ behaviorDomains = await readdir(behaviorDir);
224
+ }
225
+ catch (error) {
226
+ if (!isMissingDirectory(error)) {
227
+ throw error;
228
+ }
229
+ }
230
+ for (const domain of behaviorDomains) {
231
+ const domainDir = join(behaviorDir, domain);
232
+ let entries;
233
+ try {
234
+ entries = await readdir(domainDir);
235
+ }
236
+ catch (error) {
237
+ if (isMissingDirectory(error)) {
238
+ continue;
239
+ }
240
+ throw error;
241
+ }
242
+ for (const entry of entries) {
243
+ if (!entry.endsWith('.json'))
244
+ continue;
245
+ const path = join(domainDir, entry);
246
+ const fixturePath = relative(fixturesDir, path);
247
+ let parsed;
200
248
  try {
201
- entries = await readdir(domainDir);
249
+ parsed = JSON.parse(await readFile(path, 'utf-8'));
202
250
  }
203
- catch {
251
+ catch (error) {
252
+ const message = error instanceof Error ? error.message : String(error);
253
+ write(`❌ ${fixturePath} (invalid JSON)`);
254
+ write(` → ${message}`);
255
+ failures.push(`${fixturePath}: invalid JSON: ${message}`);
204
256
  continue;
205
257
  }
206
- for (const entry of entries) {
207
- if (!entry.endsWith('.json'))
208
- continue;
209
- const path = join(domainDir, entry);
210
- const fixturePath = relative(fixturesDir, path);
211
- let data;
212
- try {
213
- data = JSON.parse(await readFile(path, 'utf-8'));
258
+ if (!validateBehavior(parsed)) {
259
+ write(`❌ ${fixturePath} (malformed behavior fixture)`);
260
+ const errors = validateBehavior.errors ?? [];
261
+ for (const validationError of errors) {
262
+ const message = `${validationError.instancePath}: ${validationError.message}`;
263
+ write(` → ${message}`);
264
+ failures.push(`${fixturePath}: ${message}`);
214
265
  }
215
- catch (error) {
216
- console.log(`❌ ${fixturePath} (invalid JSON)`);
217
- console.log(` → ${error instanceof Error ? error.message : String(error)}`);
218
- behaviorFailures++;
219
- continue;
266
+ if (errors.length === 0) {
267
+ failures.push(`${fixturePath}: malformed behavior fixture`);
220
268
  }
221
- if (!validateBehavior(data)) {
222
- console.log(`❌ ${fixturePath} (malformed behavior fixture)`);
223
- for (const error of validateBehavior.errors ?? []) {
224
- console.log(` → ${error.instancePath}: ${error.message}`);
269
+ continue;
270
+ }
271
+ const data = parsed;
272
+ const caseCount = data.cases.length;
273
+ behaviorTotal += caseCount;
274
+ behaviorFileCount++;
275
+ const createAdapter = behaviorAdapters[data._meta.executor];
276
+ if (!createAdapter) {
277
+ const message = `unsupported behavior executor ${data._meta.executor}`;
278
+ write(`❌ ${fixturePath} (${message})`);
279
+ failures.push(`${fixturePath}: ${message}`);
280
+ continue;
281
+ }
282
+ let filePassed = 0;
283
+ for (const behaviorCase of data.cases) {
284
+ try {
285
+ const report = await executeBehaviorCase(behaviorCase, createAdapter());
286
+ if (report.passed) {
287
+ behaviorPassed++;
288
+ filePassed++;
225
289
  }
226
- behaviorFailures++;
227
- continue;
290
+ else {
291
+ failures.push(...report.failures.map((failure) => `${fixturePath}/${report.id}: ${failure}`));
292
+ }
293
+ }
294
+ catch (error) {
295
+ const message = error instanceof Error ? error.message : String(error);
296
+ failures.push(`${fixturePath}/${behaviorCase.id}: adapter threw: ${message}`);
228
297
  }
229
- const caseCount = data.cases.length;
230
- behaviorCount += caseCount;
231
- behaviorFileCount++;
232
- console.log(`✅ ${fixturePath} (${caseCount} validated cases, executor: ${data._meta.executor}; execution skipped — requires P-2)`);
233
298
  }
299
+ write(`${filePassed === caseCount ? '✅' : '❌'} ${fixturePath}`);
300
+ write(` ${filePassed}/${caseCount} ${data._meta.executor} behavior cases executed`);
234
301
  }
235
302
  }
236
- catch {
237
- // No behavior directory yet — that's fine
303
+ const contractPassed = results.filter(({ passed }) => passed).length;
304
+ write('');
305
+ write(`Results: ${contractPassed}/${results.length} contract fixtures passed`);
306
+ if (behaviorTotal > 0) {
307
+ write(` ${behaviorPassed}/${behaviorTotal} behavior cases executed across ${behaviorFileCount} file(s)`);
238
308
  }
239
- console.log();
240
- console.log(`Results: ${results.length - schemaFailures}/${results.length} contract fixtures passed`);
241
- if (behaviorCount > 0) {
242
- console.log(`⏭️ ${behaviorCount} validated behavioral cases across ${behaviorFileCount} file(s); loopback execution requires P-2`);
309
+ if (results.length === 0) {
310
+ const message = 'no contract fixtures discovered';
311
+ failures.push(message);
312
+ write(`❌ ${message}`);
243
313
  }
244
- if (schemaFailures + behaviorFailures > 0) {
245
- process.exit(1);
314
+ if (behaviorTotal === 0) {
315
+ const message = 'no behavior cases discovered';
316
+ failures.push(message);
317
+ write(`❌ ${message}`);
246
318
  }
319
+ return {
320
+ contractFixtures: { passed: contractPassed, total: results.length },
321
+ behaviorCases: { passed: behaviorPassed, total: behaviorTotal },
322
+ failures,
323
+ };
324
+ }
325
+ const isMain = process.argv[1] !== undefined &&
326
+ resolve(process.argv[1]) === fileURLToPath(import.meta.url);
327
+ if (isMain) {
328
+ runConformance()
329
+ .then((report) => {
330
+ if (report.failures.length > 0) {
331
+ process.exitCode = 1;
332
+ }
333
+ })
334
+ .catch((err) => {
335
+ console.error('Conformance runner crashed:', err);
336
+ process.exitCode = 1;
337
+ });
247
338
  }
248
- main().catch((err) => {
249
- console.error('Conformance runner crashed:', err);
250
- process.exit(1);
251
- });
252
339
  //# sourceMappingURL=runner.js.map
@@ -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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"}
@@ -0,0 +1,65 @@
1
+ import { type ChildProcessWithoutNullStreams } from 'node:child_process';
2
+ import { type HarnessPlatformAdapter, type HarnessTargetLifecycle, type SpawnHarnessChildOptions } from './harness-process-spawn.js';
3
+ import { type DecodedNdjsonFrame, type JsonObject } from './ndjson-frame.js';
4
+ import { type ProcessTreeRuntime } from './process-tree-controller.js';
5
+ export { HarnessCleanupError } from './process-tree-controller.js';
6
+ export type { HarnessPlatformAdapter, SpawnHarnessChildOptions, } from './harness-process-spawn.js';
7
+ export declare const MAX_HARNESS_QUEUED_FRAMES = 16;
8
+ /**
9
+ * Node.js setTimeout uses a 32-bit signed integer internally.
10
+ * Values above 2^31-1 (2_147_483_647) are silently clamped to 1ms,
11
+ * making the timer fire immediately — a correctness hazard.
12
+ */
13
+ export declare const MAX_TIMER_MS = 2147483647;
14
+ export interface HarnessReceiveOptions {
15
+ readonly timeoutMs: number;
16
+ }
17
+ export interface HarnessChildExit {
18
+ readonly code: number | null;
19
+ readonly signal: NodeJS.Signals | null;
20
+ }
21
+ export interface RunHarnessCaseOptions extends SpawnHarnessChildOptions {
22
+ readonly timeoutMs: number;
23
+ readonly terminateGraceMs?: number;
24
+ }
25
+ export declare class HarnessTimeoutError extends Error {
26
+ constructor(message: string);
27
+ }
28
+ export declare class HarnessChildExitedError extends Error {
29
+ readonly exit: HarnessChildExit;
30
+ constructor(exit: HarnessChildExit);
31
+ }
32
+ export declare class HarnessFrameBacklogError extends Error {
33
+ readonly maxQueuedFrames: number;
34
+ constructor(maxQueuedFrames?: number);
35
+ }
36
+ export declare class HarnessChild {
37
+ private readonly child;
38
+ readonly pid: number | undefined;
39
+ private readonly decoder;
40
+ private readonly frames;
41
+ private readonly waiters;
42
+ private readonly exitPromise;
43
+ private readonly processTree;
44
+ private resolveExit;
45
+ private exit;
46
+ private streamsClosed;
47
+ private stopPromise;
48
+ constructor(child: ChildProcessWithoutNullStreams, target?: HarnessTargetLifecycle, runtime?: ProcessTreeRuntime);
49
+ send(frame: JsonObject): Promise<void>;
50
+ receive(options: HarnessReceiveOptions): Promise<DecodedNdjsonFrame>;
51
+ kill(signal?: NodeJS.Signals): void;
52
+ waitForExit(): Promise<HarnessChildExit>;
53
+ stop(terminateGraceMs?: number): Promise<HarnessChildExit>;
54
+ private stopOnce;
55
+ private assertRunning;
56
+ private enqueue;
57
+ private fail;
58
+ private rejectWaiters;
59
+ private failAndKill;
60
+ private startReap;
61
+ }
62
+ export declare function spawnHarnessChild(options: SpawnHarnessChildOptions): HarnessChild;
63
+ export declare function spawnHarnessChildWithAdapter(options: SpawnHarnessChildOptions, adapter: HarnessPlatformAdapter): HarnessChild;
64
+ export declare function runHarnessCase<T>(options: RunHarnessCaseOptions, execute: (child: HarnessChild) => Promise<T>): Promise<T>;
65
+ //# sourceMappingURL=child-process-harness.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"child-process-harness.d.ts","sourceRoot":"","sources":["../../../src/conformance/stdio-harness/child-process-harness.ts"],"names":[],"mappings":"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"}