2.2 KiB
Transcript and Glossary Input Files
This document owns accepted input formats. Use the CLI reference for invocation and error exit semantics, operations for artifact handling, and output files for corrected-transcript serialization.
Transcript JSON Contract
Accepted top-level shapes are an array of segments or an object containing a
segments array. The array must contain at least one segment. Unknown object
fields are ignored by the current parser; an input envelope does not require a
schema/version marker.
| Segment field | Type and validation |
|---|---|
id |
Optional integer (or null). Supplied IDs must be unique; missing IDs are accepted. |
speaker |
Non-empty string |
start, end |
Numeric seconds, finite and non-negative; end must be at least start |
text |
Non-empty string |
categories |
Optional array of non-empty strings |
Supply explicit start and end times for meaningful timing. The current decoder uses zero for missing or null timestamps rather than enforcing their presence. String validation checks empty values, not whitespace trimming. Normalization can merge segments and reassign IDs, so source IDs need not match output IDs.
The tiny transcript is a complete copyable input. Invalid JSON, unsupported top-level shapes, empty transcripts, invalid field types, duplicate supplied IDs, and the validation failures above are rejected.
Glossary YAML Contract
The top-level object contains a glossary list with at least one entry.
| Entry field | Type and validation |
|---|---|
name |
Non-empty string |
category |
Non-empty string |
summary |
Non-empty string |
aliases |
Optional list of non-empty strings |
plural |
Optional string |
The parser checks empty strings without trimming them. Unknown YAML fields are ignored by the glossary parser, unlike the stricter configuration-file schema.
The tiny glossary is a complete copyable input. Malformed YAML, an empty/missing glossary, invalid shapes, missing required text, and empty aliases are rejected. These formats describe input acceptance, not additional vocabulary restrictions.