2.1 KiB
Seriatim Transcript JSON
This document is the external input contract for the implemented seriatim
input adapter.
Adapter
- Module key:
seriatim - Source format:
application/vnd.seriatim+json
Accepted Shape
The input must be one JSON object with top-level metadata and segments
fields. This covers the maintained minimal fixture and Seriatim intermediate
output that provides the same required segment fields.
The maintained example is examples/seriatim-minimal-transcript.json.
Required top-level fields:
metadata: an object. Its entries are accepted as source metadata.segments: a non-empty array of segment objects.
Required segment fields:
id: a positive integer JSON number or canonical decimal string without leading zeros or surrounding whitespace;start: a finite, non-negative JSON number or numeric string;end: a finite, non-negative JSON number or numeric string that is not less thanstart;speaker: a non-empty string;text: a non-empty string.
Other top-level and segment fields, such as categories, are ignored.
Multiple top-level JSON values are rejected.
Validation
The adapter rejects empty input, malformed JSON, multiple top-level JSON values, non-object segment values, duplicate segment IDs, and any violation of the shape or field constraints above.
Segment text is preserved as provided, but it must not be empty after trimming.
Derived Identity
Notarius identifies the parsed source in this order:
metadata.id, when it is a non-empty string after trimming;metadata.source_id, when it is a non-empty string after trimming;seriatim:<first-16-hex-chars-of-raw-sha256>.
The source digest recorded in output provenance is sha256:<hex> of the exact
raw input bytes. Segment IDs become the unit IDs used by artifact source
references.
Compatibility Limit
This contract covers only Seriatim transcript JSON with the top-level
metadata object and segments array described here. Broader Seriatim output
schemas are compatible only when they provide these required fields with the
accepted types.