This document describes the core workflows for maintaining the site data, building the archive, and performing deployments.
The site is built with Jekyll but is primarily data-driven.
_data/: Canonical YAML files for interviews, video assets, resumes, and taxonomy.bin/: Generator scripts that transform YAML data into Jekyll-readable HTML files._site/: The rendered static site (historically committed to Git, but planned to be ignored in the modernization phase).Resume content is stored in _data/resume/.
timeline.yml: Controls the order of positions.positions/*.yml: Contains detailed role descriptions._data/interviews.yml._data/video_assets.yml._data/transcripts/../bin/pipeline build to generate the new pages.The canonical entry point for all operations is ./bin/pipeline.
# Full local CI build and validation
./bin/pipeline ci
# Run smoke tests
./bin/pipeline smoke
Data integrity is enforced by multiple scripts in the CI pipeline.
validate_data_integrity.rb: Checks for required fields and cross-references.validate_data_uniqueness.rb: Ensures IDs and slugs are unique.audit_transcripts.rb: Checks for missing or malformed transcripts.The project is currently transitioning to a more automated and robust architecture: