Nothing gets dropped
Four additive content sections so a CV keeps everything it should — the fix for the real dogfood gap where a senior profile silently lost half its credentials:
certifications.yaml,publications.yaml,languages.yaml- a generalized
links:array inpersonal.yaml(blog, portfolio, GitHub — alongside the existing LinkedIn/Facebook)
All render in both the designed two-column CV and the ATS variant. Absent files, single-item sections, and omitted optional fields all render cleanly.
cvx build --all
Validate, then produce both the designed and ATS PDFs in one command. Each variant renders in its own process, fixing a font-subset state leak in the PDF engine that could corrupt the ATS variant's text layer — invisible on screen, but exactly what ATS parsers read.
Compatibility
Fully additive under the schemaVersion: 1 promise — existing cv-content/ folders keep working unchanged. All local, no accounts, byte-reproducible.