Target language code
Best description from manifest/editorial/template
Artifact-derived headline and summary
Readonlyheadline: stringArtifact-derived headline
Readonlysummary: stringArtifact-derived summary
ISO article date
Extended description ≥180 chars when feasible, otherwise ''
Build a per-article
extendedDescription(used forog:description, Twitter cards, and AI-overview surfaces) that is always ≥ DESCRIPTION_MAX_LENGTH characters whenever the editorial source paragraph is too short to satisfy truncateExtendedDescription on its own.This is the only code path that surfaces the localized
labels.readerframing — the short<meta description>no longer carries it (see comment in composeContextualDescription). The structure is:<base> <Date: YYYY-MM-DD.> <Context: …> <reader>, passed through truncateExtendedDescription (300-char max with a 200-char min) so it occupies the Open Graph / Discover budget without exceeding it.