@adminiumjs/add-on-contracts 0.2.5 → 0.2.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -14,6 +14,7 @@
14
14
  */
15
15
  import { describe, expect, it } from 'vitest';
16
16
  import { artworkRefSchema } from '../artwork-source.js';
17
+ import { documentKindSchema, documentOutlineSchema, isDocumentError, localizedTextSchema, renderedDocumentSchema, } from '../document-render.js';
17
18
  import { personalizationSchema, } from '../product-personalizer.js';
18
19
  import { CarrierError, rateSchema, shipmentSchema, trackEventSchema, } from '../shipping-carrier.js';
19
20
  export function describeArtworkSource(impl, fixtures) {
@@ -88,6 +89,36 @@ export function describeShippingCarrier(impl, fixtures) {
88
89
  expect(carrier.code.trim().length).toBeGreaterThan(0);
89
90
  }
90
91
  });
92
+ /*
93
+ * ── THE INBOUND DIRECTION (31 O4, ruled 2026-09-01) ─────────────────────
94
+ *
95
+ * The contract is direction-agnostic and these two cases are what that
96
+ * sentence means executably. A RETURN — a customer sending a parcel back to
97
+ * the business — is the same contract with the route reversed: `quote(parcel,
98
+ * from, to)` takes two addresses and has no opinion about which one is the
99
+ * shop; `book` buys a prepaid label the SENDER applies, whoever the sender
100
+ * is; `track` follows the parcel toward whoever is receiving it. No member
101
+ * changes shape, which is why this is a conformance amendment and not a
102
+ * version bump.
103
+ *
104
+ * The refusal is symmetric too, and that is a rule rather than a
105
+ * convenience: a label must carry a resolvable address at BOTH ends, so a
106
+ * carrier that would refuse an address as a recipient refuses it as a
107
+ * sender. The case reuses `rejectedTo` deliberately — the fixture is "an
108
+ * address the carrier refuses", and which end it sits at is not part of
109
+ * what makes it refusable.
110
+ */
111
+ it('quote is direction-symmetric — the same route reversed still quotes', async () => {
112
+ const rates = await impl.quote(fixtures.parcel, fixtures.to, fixtures.from);
113
+ expect(rates.length).toBeGreaterThan(0);
114
+ for (const rate of rates) {
115
+ const parsed = rateSchema.safeParse(rate);
116
+ expect(parsed.success, JSON.stringify(parsed.error?.issues)).toBe(true);
117
+ }
118
+ });
119
+ it('refuses an unserviceable sender exactly as it refuses a recipient', async () => {
120
+ await expect(impl.quote(fixtures.parcel, fixtures.rejectedTo, fixtures.to)).rejects.toBeInstanceOf(CarrierError);
121
+ });
91
122
  it('books a shipment of the declared shape', async () => {
92
123
  const [rate] = await impl.quote(fixtures.parcel, fixtures.from, fixtures.to);
93
124
  expect(rate).toBeDefined();
@@ -175,4 +206,356 @@ export function describeProductPersonalizer(impl, fixtures) {
175
206
  });
176
207
  });
177
208
  }
209
+ /** WinAnsi-drawable, and outside ASCII — the boundary a `coverage:'ascii'` kind must refuse. */
210
+ const WINANSI_SAMPLE = 'é ß ø €';
211
+ /** Outside WinAnsi — the boundary a `coverage:'winansi'` kind must refuse. */
212
+ const BEYOND_WINANSI_SAMPLE = 'مرحبا 发票';
213
+ const LATIN1 = new TextDecoder('latin1');
214
+ /** The first slot of `type`, at the top level — collection columns are not mappable on their own. */
215
+ function firstSlotOfType(outline, type) {
216
+ return outline.slots.find((slot) => slot.type === type);
217
+ }
218
+ /**
219
+ * A required slot with NO `default`. A required slot that defaults to
220
+ * `sequence`/`now`/`connection`/`setting` is filled by the ENGINE, so deleting
221
+ * its value proves nothing — the provider is entitled to see it arrive empty.
222
+ */
223
+ function firstUnsuppliedRequiredSlot(outline) {
224
+ return outline.slots.find((slot) => slot.required && slot.default === undefined);
225
+ }
226
+ function withField(subject, id, value) {
227
+ return { ...subject, fields: { ...subject.fields, [id]: value } };
228
+ }
229
+ function withoutField(subject, id) {
230
+ const fields = { ...subject.fields };
231
+ delete fields[id];
232
+ return { ...subject, fields };
233
+ }
234
+ /**
235
+ * `render` answered with documents — asserted, and narrowed in one step.
236
+ *
237
+ * `expect` fails by throwing, but TypeScript cannot see that, so the suite
238
+ * used to follow each assertion with `if (isDocumentError(outcome)) continue;`
239
+ * purely to narrow the union. That guard could never run: by the time it was
240
+ * reached the assertion had either passed or thrown. An assertion signature
241
+ * narrows without leaving an unreachable branch behind.
242
+ */
243
+ function expectRendered(outcome, message) {
244
+ expect(isDocumentError(outcome), message).toBe(false);
245
+ }
246
+ /** `render` refused as data — the other ending, asserted and narrowed the same way. */
247
+ function expectRefused(outcome, message) {
248
+ expect(isDocumentError(outcome), message).toBe(true);
249
+ }
250
+ /**
251
+ * Walk a PDF's cross-reference table back to the objects it points at.
252
+ *
253
+ * This is the assertion that a hand-rolled writer cannot fake. Every offset in
254
+ * the table is a BYTE offset, so a writer that computed them from
255
+ * `String.length` over a stream containing one multi-byte character produces a
256
+ * file every viewer opens and every parser mis-seeks — the exact failure 34's
257
+ * §0.3 trap 8 sends the invoices writer over byte buffers to avoid. Seeking to
258
+ * each offset and requiring `<n> 0 obj` there catches it on the first render.
259
+ *
260
+ * Exported so a writer's own tests can walk its table with the same rules the
261
+ * suite applies, rather than re-deriving a second walker that drifts from
262
+ * this one. Every refusal throws an `Error` naming what it found.
263
+ */
264
+ export function parseXrefBack(bytes) {
265
+ const text = LATIN1.decode(bytes);
266
+ const startxref = text.lastIndexOf('startxref');
267
+ if (startxref < 0)
268
+ throw new Error('no startxref in the file');
269
+ const tail = text.slice(startxref);
270
+ const declared = /startxref\s+(\d+)\s+%%EOF/.exec(tail);
271
+ if (declared === null)
272
+ throw new Error('startxref is not followed by an offset and %%EOF');
273
+ const at = Number(declared[1]);
274
+ if (!text.startsWith('xref', at)) {
275
+ throw new Error(`startxref points at ${String(at)}, which is not the start of an xref table`);
276
+ }
277
+ const header = /^xref\s+(\d+)\s+(\d+)\s+/.exec(text.slice(at));
278
+ if (header === null)
279
+ throw new Error('the xref table has no subsection header');
280
+ const first = Number(header[1]);
281
+ const count = Number(header[2]);
282
+ if (first !== 0)
283
+ throw new Error('the first xref subsection must start at object 0');
284
+ let cursor = at + header[0].length;
285
+ const offsets = [];
286
+ for (let n = 0; n < count; n += 1) {
287
+ // Every entry is exactly twenty bytes: nnnnnnnnnn ggggg (n|f) plus two.
288
+ const entry = text.slice(cursor, cursor + 20);
289
+ if (!/^\d{10} \d{5} [nf][\r\n ][\r\n]$/.test(entry)) {
290
+ throw new Error(`xref entry ${String(n)} is not twenty bytes: ${JSON.stringify(entry)}`);
291
+ }
292
+ const offset = Number(entry.slice(0, 10));
293
+ const free = entry[17] === 'f';
294
+ if (n === 0) {
295
+ if (!free)
296
+ throw new Error('object 0 must be the free-list head');
297
+ }
298
+ else {
299
+ if (free)
300
+ throw new Error(`object ${String(n)} is marked free but is in use`);
301
+ if (!text.startsWith(`${String(n)} 0 obj`, offset)) {
302
+ const found = JSON.stringify(text.slice(offset, offset + 16));
303
+ throw new Error(`xref sends object ${String(n)} to ${String(offset)}, where ${found} is`);
304
+ }
305
+ offsets.push(offset);
306
+ }
307
+ cursor += 20;
308
+ }
309
+ return { objects: count - 1, offsets };
310
+ }
311
+ export function describeDocumentRenderer(impl, fixtures) {
312
+ const kinds = impl.kinds();
313
+ const bodyOf = (kind) => fixtures.body === undefined ? undefined : fixtures.body(kind);
314
+ const drawnTextSlot = (kind) => {
315
+ if (fixtures.textSlot !== undefined)
316
+ return fixtures.textSlot(kind);
317
+ return firstSlotOfType(impl.describe(kind.id), 'text')?.id;
318
+ };
319
+ const renderOf = async (kind, subject, formats = kind.formats) => {
320
+ const body = bodyOf(kind);
321
+ return impl.render({
322
+ kind: kind.id,
323
+ subject,
324
+ formats,
325
+ paper: kind.paper[0],
326
+ settings: fixtures.settings,
327
+ ...(body === undefined ? {} : { body }),
328
+ });
329
+ };
330
+ describe(`document-render@1 conformance — ${impl.key}`, () => {
331
+ it('has a non-empty key', () => {
332
+ expect(impl.key).toMatch(/^[a-z][a-z0-9-]*$/);
333
+ });
334
+ it('lists at least one kind, each of the declared shape', () => {
335
+ expect(kinds.length).toBeGreaterThan(0);
336
+ for (const kind of kinds) {
337
+ const parsed = documentKindSchema.safeParse(kind);
338
+ expect(parsed.success, `${kind.id}: ${JSON.stringify(parsed.error?.issues)}`).toBe(true);
339
+ }
340
+ });
341
+ it('labels every kind in all eight locales, with no locale left out', () => {
342
+ // 0.3 trap 19. A hole here is a raw slot id on somebody's screen in
343
+ // Studio, and `localizedTextSchema` is `.strict()` so a NINTH locale —
344
+ // a provider inventing `es-ES` — fails just as loudly as a missing one.
345
+ for (const kind of kinds) {
346
+ const parsed = localizedTextSchema.safeParse(kind.label);
347
+ expect(parsed.success, `${kind.id} label: ${JSON.stringify(parsed.error?.issues)}`).toBe(true);
348
+ }
349
+ });
350
+ it('describes every kind it lists, labelling every slot in all eight locales', () => {
351
+ for (const kind of kinds) {
352
+ const outline = impl.describe(kind.id);
353
+ const parsed = documentOutlineSchema.safeParse(outline);
354
+ expect(parsed.success, `${kind.id}: ${JSON.stringify(parsed.error?.issues)}`).toBe(true);
355
+ expect(outline.slots.length, `${kind.id} describes no slots`).toBeGreaterThan(0);
356
+ for (const slot of outline.slots) {
357
+ expect(localizedTextSchema.safeParse(slot.label).success, `${kind.id}.${slot.id} label is not complete in eight locales`).toBe(true);
358
+ if (slot.help !== undefined) {
359
+ expect(localizedTextSchema.safeParse(slot.help).success, `${kind.id}.${slot.id} help is not complete in eight locales`).toBe(true);
360
+ }
361
+ if (slot.type === 'collection') {
362
+ expect(slot.columns ?? [], `${kind.id}.${slot.id} is a collection with no columns`)
363
+ .not.toHaveLength(0);
364
+ }
365
+ }
366
+ }
367
+ });
368
+ it('throws when asked to describe a kind it does not list', () => {
369
+ // `describe` returns an outline, not a union: an unknown kind here is a
370
+ // programming error in the CONSUMER, which has `kinds()` in its hand.
371
+ // The data path — a stored profile naming a kind the provider dropped in
372
+ // an upgrade — is `render`, and that one refuses as data. Both below.
373
+ expect(() => impl.describe('no-such-kind')).toThrow();
374
+ });
375
+ it('refuses an unknown kind as data, never as an exception', async () => {
376
+ const outcome = await impl.render({
377
+ kind: 'no-such-kind',
378
+ subject: fixtures.subject(kinds[0]),
379
+ formats: ['html'],
380
+ paper: 'a4',
381
+ settings: fixtures.settings,
382
+ });
383
+ expectRefused(outcome);
384
+ expect(outcome.code).toBe('UNSUPPORTED_KIND');
385
+ });
386
+ it('refuses a subject missing a required slot with MISSING_SLOT that names it', async () => {
387
+ for (const kind of kinds) {
388
+ const outline = impl.describe(kind.id);
389
+ const slot = firstUnsuppliedRequiredSlot(outline);
390
+ if (slot === undefined)
391
+ continue;
392
+ const outcome = await renderOf(kind, withoutField(fixtures.subject(kind), slot.id));
393
+ expectRefused(outcome, `${kind.id} rendered without ${slot.id}`);
394
+ expect(outcome.code).toBe('MISSING_SLOT');
395
+ // The engine puts this in front of an operator, who needs to know
396
+ // WHICH column they did not map.
397
+ expect(outcome.detail ?? '').toContain(slot.id);
398
+ }
399
+ });
400
+ it('is given money as integer minor units and percent as basis points', async () => {
401
+ // The wire law, asserted on the FIXTURE — the provider never sees a
402
+ // decimal, so a fixture carrying 12.5 would be testing a shape the
403
+ // engine does not produce. The invoice rounding law is NOT here: it is
404
+ // the invoices package's own (34 D20), because it is arithmetic a
405
+ // label-sheet renderer has no opinion about.
406
+ for (const kind of kinds) {
407
+ const outline = impl.describe(kind.id);
408
+ const subject = fixtures.subject(kind);
409
+ for (const slot of outline.slots) {
410
+ // A collection's rows live in `subject.collections`, never in
411
+ // `fields`, so this branch must come BEFORE the `fields` read below.
412
+ // Written after it, the `continue` on an undefined field skipped
413
+ // every collection, and a decimal in a line item passed.
414
+ if (slot.type === 'collection') {
415
+ const rows = subject.collections[slot.id] ?? [];
416
+ for (const column of slot.columns ?? []) {
417
+ if (column.type !== 'money' && column.type !== 'percent')
418
+ continue;
419
+ for (const row of rows) {
420
+ const cell = row[column.id];
421
+ if (cell === undefined || cell === null)
422
+ continue;
423
+ expect(Number.isInteger(cell), `${kind.id}.${slot.id}[].${column.id} is ${String(cell)}`).toBe(true);
424
+ }
425
+ }
426
+ continue;
427
+ }
428
+ const value = subject.fields[slot.id];
429
+ if (value === undefined || value === null)
430
+ continue;
431
+ if (slot.type === 'money' || slot.type === 'percent') {
432
+ expect(Number.isInteger(value), `${kind.id}.${slot.id} is ${String(value)}`).toBe(true);
433
+ }
434
+ }
435
+ }
436
+ });
437
+ it('renders every format it declares, and nothing it does not', async () => {
438
+ for (const kind of kinds) {
439
+ const outcome = await renderOf(kind, fixtures.subject(kind));
440
+ expectRendered(outcome, `${kind.id}: ${JSON.stringify(outcome)}`);
441
+ expect(outcome.map((d) => d.format).sort()).toEqual([...kind.formats].sort());
442
+ for (const document of outcome) {
443
+ const parsed = renderedDocumentSchema.safeParse(document);
444
+ expect(parsed.success, JSON.stringify(parsed.error?.issues)).toBe(true);
445
+ expect(document.bytes.byteLength).toBeGreaterThan(0);
446
+ expect(document.filename).not.toContain('/');
447
+ }
448
+ }
449
+ });
450
+ it('renders one subject to the same bytes twice — and so reads no clock of its own', async () => {
451
+ // 25 D12. Two renders separated by real time: identical bytes are the
452
+ // proof that `Date.now()` is not in the code path, which is why this one
453
+ // assertion carries the whole "byte-identical from a pinned clock" claim.
454
+ for (const kind of kinds) {
455
+ const subject = fixtures.subject(kind);
456
+ const first = await renderOf(kind, subject);
457
+ const second = await renderOf(kind, subject);
458
+ expectRendered(first);
459
+ expectRendered(second);
460
+ expect(second).toHaveLength(first.length);
461
+ for (let at = 0; at < first.length; at += 1) {
462
+ expect(Array.from(second[at].bytes), `${kind.id} ${first[at].format} differs between two renders of one subject`).toEqual(Array.from(first[at].bytes));
463
+ expect(second[at].filename).toBe(first[at].filename);
464
+ }
465
+ }
466
+ });
467
+ it('never puts a script into its HTML', async () => {
468
+ // The engine serves these bytes back to a browser and the subject is
469
+ // full of customer-supplied text, so this is an escaping assertion
470
+ // wearing an output-format hat.
471
+ for (const kind of kinds) {
472
+ if (!kind.formats.includes('html'))
473
+ continue;
474
+ const text = drawnTextSlot(kind);
475
+ const subject = text === undefined
476
+ ? fixtures.subject(kind)
477
+ : withField(fixtures.subject(kind), text, '<script>alert(1)</script>');
478
+ const outcome = await renderOf(kind, subject, ['html']);
479
+ expectRendered(outcome, `${kind.id}: ${JSON.stringify(outcome)}`);
480
+ for (const document of outcome) {
481
+ expect(LATIN1.decode(document.bytes).toLowerCase()).not.toContain('<script');
482
+ }
483
+ }
484
+ });
485
+ it('writes a PDF whose cross-reference table parses back to real objects', async () => {
486
+ for (const kind of kinds) {
487
+ if (!kind.formats.includes('pdf'))
488
+ continue;
489
+ const text = drawnTextSlot(kind);
490
+ /*
491
+ * Two subjects, and the SECOND one is the assertion that has teeth.
492
+ *
493
+ * A writer that collects its cross-reference offsets from
494
+ * `String.length` over the document text — 34 §0.3 trap 8, and the
495
+ * shape `barcode-labels`' scaffold is written in (`sheet.ts:441-449`)
496
+ * — produces a perfectly valid file for as long as every character is
497
+ * ASCII, because there one character is one byte. It breaks the first
498
+ * time a customer is called Müller. Parsing the xref back over an
499
+ * ASCII-only subject therefore proves nothing about the class of bug
500
+ * it exists to catch: this assertion passed a deliberate mutation to
501
+ * `String.length` on 2026-09-10 and had to be widened here.
502
+ *
503
+ * So where the kind's own coverage admits accented text, the table is
504
+ * walked over a subject that HAS some.
505
+ */
506
+ const subjects = [fixtures.subject(kind)];
507
+ if (kind.coverage !== 'ascii' && text !== undefined) {
508
+ subjects.push(withField(fixtures.subject(kind), text, `Müller ${WINANSI_SAMPLE}`));
509
+ }
510
+ for (const subject of subjects) {
511
+ const outcome = await renderOf(kind, subject, ['pdf']);
512
+ expectRendered(outcome, `${kind.id}: ${JSON.stringify(outcome)}`);
513
+ for (const document of outcome) {
514
+ const decoded = LATIN1.decode(document.bytes);
515
+ expect(decoded.startsWith('%PDF-1.4'), `${kind.id} is not a PDF 1.4`).toBe(true);
516
+ expect(decoded.endsWith('%%EOF\n')).toBe(true);
517
+ const { objects } = parseXrefBack(document.bytes);
518
+ expect(objects, `${kind.id} declares no objects`).toBeGreaterThan(0);
519
+ expect(document.mediaType).toBe('application/pdf');
520
+ }
521
+ }
522
+ }
523
+ });
524
+ it('draws the glyphs its coverage claims, and refuses the ones it does not — typed', async () => {
525
+ for (const kind of kinds) {
526
+ if (!kind.formats.includes('pdf'))
527
+ continue;
528
+ const text = drawnTextSlot(kind);
529
+ if (text === undefined)
530
+ continue;
531
+ for (const [sample, drawable] of [
532
+ [WINANSI_SAMPLE, kind.coverage !== 'ascii'],
533
+ [BEYOND_WINANSI_SAMPLE, kind.coverage === 'all'],
534
+ ]) {
535
+ const subject = withField(fixtures.subject(kind), text, sample);
536
+ const outcome = await renderOf(kind, subject, ['pdf']);
537
+ if (drawable) {
538
+ expect(isDocumentError(outcome), `${kind.id} claims coverage '${kind.coverage}' but refused ${sample}: ${JSON.stringify(outcome)}`).toBe(false);
539
+ continue;
540
+ }
541
+ // The refusal is the contract's point: a writer that silently
542
+ // dropped the letters would ship an invoice with a customer's name
543
+ // missing characters, and nothing downstream would ever know.
544
+ expectRefused(outcome, `${kind.id} claims coverage '${kind.coverage}' and drew ${sample} anyway`);
545
+ expect(outcome.code).toBe('LATIN_ONLY');
546
+ expect(outcome.dropped ?? [], `${kind.id} refused without naming a glyph`).not.toHaveLength(0);
547
+ for (const glyph of outcome.dropped ?? []) {
548
+ expect(sample, `${kind.id} reported '${glyph}', which is not in the subject`).toContain(glyph);
549
+ }
550
+ // And the refusal belongs to the WRITER, not to the subject: the
551
+ // same text in HTML, which is UTF-8, must render.
552
+ if (kind.formats.includes('html')) {
553
+ const asHtml = await renderOf(kind, subject, ['html']);
554
+ expect(isDocumentError(asHtml), `${kind.id} refused ${sample} in HTML too — the refusal is not the writer's`).toBe(false);
555
+ }
556
+ }
557
+ }
558
+ });
559
+ });
560
+ }
178
561
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/testing/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/testing/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@adminiumjs/add-on-contracts",
3
- "version": "0.2.5",
3
+ "version": "0.2.6",
4
4
  "license": "AGPL-3.0-only",
5
5
  "repository": {
6
6
  "type": "git",