# Generated Files

This repository keeps public site pages, citation exports, data indexes, and QA reports as checked-in generated artifacts so GitHub Pages can serve them statically.

| Artifact | Outputs | Sources | Rebuild command |
| --- | --- | --- | --- |
| Paper folder doc regeneration | `papers/generated-documents.json`<br>`papers/*/README.md`<br>`papers/*/AGENTS.md`<br>`papers/*/SKILL.md` | `papers/paper_metadata.json`<br>`pages/BIBLIOGRAPHY.md`<br>`papers/*/metadata.json`<br>`papers/generated-documents.json` | `uv run python3 code/orchestrators/regenerate_docs.py --apply` |
| Paper CFF DOI-role synchronization | `papers/*/CITATION.cff (canonical top-level DOI/URL and explicit artifact identifiers)` | `papers/*/metadata.json (doi and optional artifact_doi)`<br>`papers/*/CITATION.cff (non-DOI fields and identifiers)`<br>`code/orchestrators/generate_citation_cff.py` | `uv run python3 code/orchestrators/generate_citation_cff.py --apply` |
| Publications HTML sync | `publications.html`<br>`data/publications-ld.json` | `pages/BIBLIOGRAPHY.md`<br>`data/current-counts.json`<br>`papers/*/README.md`<br>`papers/*/AGENTS.md`<br>`papers/*/SKILL.md`<br>`papers/*/full_text.md`<br>`papers/*/images/`<br>`code/src/biblio_table.py`<br>`code/templates/publications.html.tmpl`<br>`code/orchestrators/sync_publications_html.py` | `python3 code/orchestrators/sync_publications_html.py --apply` |
| Metadata enrichment | `papers/*/metadata.json` | `papers/paper_metadata.json`<br>`pages/BIBLIOGRAPHY.md` | `uv run python3 code/orchestrators/batch_enrich_metadata.py --apply` |
| Metadata quality improvement | `papers/*/metadata.json` | `papers/*/metadata.json` | `uv run python3 code/orchestrators/improve_metadata_quality.py --apply` |
| Bibliography exports | `bibliography.bib`<br>`bibliography.csl.json`<br>`bibliography.ris`<br>`data/works.json` | `pages/BIBLIOGRAPHY.md`<br>`papers/*/README.md`<br>`papers/*/AGENTS.md`<br>`papers/*/SKILL.md`<br>`papers/*/full_text.md`<br>`papers/*/images/`<br>`code/src/biblio_table.py` | `python3 code/orchestrators/export_bibliography.py` |
| Scholar metrics sync | `pages/BIBLIOGRAPHY.md (badge)`<br>`index.html (meta/og/stat/li)`<br>`pages/PROFILE.md (prose + metrics table)`<br>`pages/LINKS.md`<br>`publications.html (header metrics pill)` | `data/scholar-snapshot.json`<br>`data/scholar-verification-receipt.json`<br>`code/src/scholar_verification.py`<br>`code/orchestrators/sync_scholar_metrics.py` | `python3 code/orchestrators/sync_scholar_metrics.py` |
| Current count report | `reports/current_counts.md`<br>`data/current-counts.json` | `pages/BIBLIOGRAPHY.md`<br>`papers/README.md`<br>`papers/*/full_text.md`<br>`papers/*/images/*`<br>`pages/SOFTWARE.md`<br>`data/works.json`<br>`data/software.json`<br>`data/github-repositories.json`<br>`reports/public_source_snapshot_*.json`<br>`reports/paired_publications_*.json` | `uv run python3 code/orchestrators/build_current_counts.py` |
| Source coverage exceptions | `data/coverage-exceptions.json`<br>`reports/source_coverage_2026-09-12.json`<br>`reports/source_coverage_2026-09-12.md` | `data/works.json`<br>`code/orchestrators/build_coverage_exceptions.py` | `python3 code/orchestrators/build_coverage_exceptions.py` |
| Repository classification queue | `data/repository-classification.json` | `data/github-repositories.json`<br>`data/software.json`<br>`data/repository-exclusions.json`<br>`code/orchestrators/classify_repositories.py` | `python3 code/orchestrators/classify_repositories.py` |
| Volatile site facts | `index.html`<br>`publications.html`<br>`discovery.html`<br>`pages/DISCOVERY.md`<br>`llms.txt` | `data/current-counts.json`<br>`reports/public_source_snapshot_*.json`<br>`code/orchestrators/sync_site_facts.py` | `python3 code/orchestrators/sync_site_facts.py` |
| Open Graph preview images | `og-*.jpg`<br>`data/og-image-counts.json` | `data/current-counts.json`<br>`code/orchestrators/generate_og_images.py` | `python3 code/orchestrators/generate_og_images.py` |
| Pillar research explainers | `cognitive-security.html`<br>`computational-entomology.html`<br>`insect-cognition.html`<br>`active-inference.html`<br>`neurosymbolic-ai.html` | `data/works.json`<br>`code/orchestrators/generate_pillar_pages.py` | `python3 code/orchestrators/generate_pillar_pages.py` |
| Redirect stubs | `about.html`<br>`agent-verify.html`<br>`blog/index.html`<br>`blog/winged-snowflake-2021/index.html`<br>`meditations.html`<br>`nft.html`<br>`reports.html`<br>`research.html` | `code/src/redirect_stubs.py`<br>`code/orchestrators/generate_redirect_stubs.py` | `python3 code/orchestrators/generate_redirect_stubs.py --apply` |
| Agent data exports | `data/software.json`<br>`data/people.json`<br>`data/organizations.json`<br>`data/claims.json` | `pages/SOFTWARE.md`<br>`code/src/software_table.py`<br>`data/scholar-snapshot.json`<br>`data/works.json`<br>`data/current-counts.json`<br>`papers/`<br>`code/orchestrators/export_agent_data.py` | `python3 code/orchestrators/export_agent_data.py` |
| Agent route manifest | `data/agent-index.json` | `data/current-counts.json`<br>`data/pages-artifact-manifest.json`<br>`data/github-repositories.json`<br>`data/works.json`<br>`data/software.json`<br>`data/claims.json`<br>`data/scholar-verification-receipt.json`<br>`reports/*latest dated reports`<br>`code/orchestrators/build_agent_index.py` | `python3 code/orchestrators/build_agent_index.py` |
| Visible agent navigation | `root public HTML navigation` | `code/src/site_nav.py`<br>`code/orchestrators/ensure_agent_navigation.py` | `python3 code/orchestrators/ensure_agent_navigation.py` |
| GitHub Pages artifact | `bounded _site/ deployment projection`<br>`data/pages-artifact-manifest.json`<br>`reports/pages_artifact_growth_2026-09-12.json` | `tracked repository files`<br>`code/src/release_controls.py`<br>`code/orchestrators/build_pages_artifact.py`<br>`docs/operations/github-pages-artifact.md` | `python3 code/orchestrators/build_pages_artifact.py --write-manifest --output /tmp/docxology-pages --check-size --check-manifest` |
| Release integrity envelope | `data/release-integrity.json` | `data/current-counts.json`<br>`data/agent-index.json`<br>`data/pages-artifact-manifest.json`<br>`code/orchestrators/build_release_integrity.py` | `python3 code/orchestrators/build_release_integrity.py` |
| Post-deploy release attestation | `reports/deployment-attestations/<deployment-sha>.json` | `reports/public_source_snapshot_*.json`<br>`reports/external_links_[0-9]*.json`<br>`reports/browser-smoke/*/manifest.json`<br>`reports/browser-qa/*/manifest.json`<br>`reports/visual-qa/*/manifest.json`<br>`reports/live_site_verification_*.json`<br>`code/orchestrators/attest_release.py` | `python3 code/orchestrators/attest_release.py --apply --commit <deployment-sha>` |
| Resume and CV exports | `data/resume.json`<br>`resume/full.txt`<br>`resume/academic.txt`<br>`resume/software-consulting.txt`<br>`resume/teaching-service.txt`<br>`resume/resume.pdf`<br>`resume/resume.html`<br>`resume/verify.html` | `resume/source.json`<br>`data/works.json`<br>`data/software.json`<br>`data/scholar-snapshot.json`<br>`data/claims.json`<br>`data/github-repositories.json`<br>`code/src/resume_data.py`<br>`code/orchestrators/build_resume.py` | `uv run python3 code/orchestrators/build_resume.py --all` |
| Software catalog HTML sync | `software.html`<br>`data/software-ld.json` | `pages/SOFTWARE.md`<br>`data/github-repositories.json`<br>`code/src/software_table.py`<br>`code/templates/software.html.tmpl`<br>`code/orchestrators/sync_software_html.py` | `python3 code/orchestrators/sync_software_html.py --apply` |
| Full GitHub repository inventory | `data/github-repositories.json` | `GitHub REST API`<br>`data/software.json`<br>`code/orchestrators/build_github_inventory.py` | `python3 code/orchestrators/build_github_inventory.py` |
| Cached GitHub repository inventory pages | `repositories.html`<br>`repositories-forks.html` | `data/github-repositories.json`<br>`code/orchestrators/build_github_inventory.py`<br>`code/orchestrators/render_github_inventory.py` | `python3 code/orchestrators/render_github_inventory.py` |
| Paired publication sync report | `reports/paired_publications_2026-09-11.json` | `GitHub Releases API`<br>`Zenodo Records API`<br>`docs/operations/publication-sync.md`<br>`code/src/publication_pairing.py`<br>`code/orchestrators/sync_paired_publications.py` | `python3 code/orchestrators/sync_paired_publications.py` |
| Paired publication review decisions | `data/paired-publication-decisions.json`<br>`reports/paired_publications_review_queue_2026-06-04.md` | `reports/paired_publications_2026-09-11.json`<br>`manual review decision` | `manual review; update data/paired-publication-decisions.json` |
| Zenodo-only publication backfill | `pages/BIBLIOGRAPHY.md`<br>`papers/<YEAR>_<Slug>/`<br>`papers/paper_metadata.json`<br>`papers/README.md` | `Zenodo Records API`<br>`docs/operations/publication-sync.md`<br>`code/orchestrators/add_zenodo_only.py` | `python3 code/orchestrators/add_zenodo_only.py <record_id>` |
| Domain pages | `domains.html`<br>`domain-*.html`<br>`pages/DOMAINS.md` | `data/works.json`<br>`data/software.json`<br>`code/orchestrators/build_domain_pages.py` | `python3 code/orchestrators/build_domain_pages.py` |
| Domain feeds | `feeds/domain-*.xml` | `data/works.json`<br>`data/videos.json`<br>`code/orchestrators/build_domain_pages.py`<br>`code/orchestrators/build_domain_feeds.py` | `python3 code/orchestrators/build_domain_feeds.py` |
| Work pages | `works/*.html`<br>`data/work-enrichment.json` | `data/works.json`<br>`data/work-enrichment.json`<br>`papers/*/README.md`<br>`papers/*/SKILL.md` | `python3 code/orchestrators/build_work_pages.py` |
| Work authors | `data/work-authors.json` | `pages/BIBLIOGRAPHY.md`<br>`DOI registration agencies (Crossref/DataCite)`<br>`code/orchestrators/fetch_work_authors.py` | `python3 code/orchestrators/fetch_work_authors.py --apply` |
| Video pages | `videos/*.html`<br>`data/videos.json`<br>`data/videos-index.json`<br>`data/video-pages-manifest.json` | `code/data/youtube_personal.json`<br>`code/data/youtube_institute.json`<br>`data/video-transcripts/*.txt`<br>`data/works.json`<br>`data/work-enrichment.json` | `python3 code/orchestrators/build_video_pages.py` |
| Video transcript cache | `data/video-transcripts/*.txt` | `YouTube captions`<br>`code/orchestrators/fetch_video_transcripts.py` | `python3 code/orchestrators/fetch_video_transcripts.py --channel all` |
| Paper folder pages | `papers/*/index.html` | `data/works.json`<br>`papers/*/README.md`<br>`papers/*/AGENTS.md`<br>`papers/*/*.pdf` | `python3 code/orchestrators/build_paper_pages.py` |
| Evidence pages | `evidence.html`<br>`pages/EVIDENCE.md` | `data/claims.json`<br>`code/orchestrators/build_evidence_page.py` | `python3 code/orchestrators/build_evidence_page.py` |
| Reproducibility ledger | `reproducibility.html`<br>`pages/REPRODUCIBILITY.md`<br>`data/reproducibility.json` | `data/works.json`<br>`papers/paper_metadata.json`<br>`code/orchestrators/build_reproducibility_ledger.py` | `python3 code/orchestrators/build_reproducibility_ledger.py` |
| Search index | `search-index.json` | `data/*.json`<br>`data/work-enrichment.json` | `python3 code/orchestrators/build_search_index.py` |
| Data catalog | `catalog.html`<br>`data/catalog.json` | `code/orchestrators/build_catalog.py`<br>`data/*.json` | `python3 code/orchestrators/build_catalog.py` |
| Exports hub | `exports.html` | `code/orchestrators/build_exports_page.py`<br>`data/catalog.json` | `python3 code/orchestrators/build_exports_page.py` |
| Updates page | `updates.html` | `CHANGELOG.md`<br>`code/orchestrators/build_updates_page.py` | `python3 code/orchestrators/build_updates_page.py` |
| External link report | `reports/external_links_2026-09-11.json` | `all root-level public HTML plus site-critical Markdown and JSON-LD surfaces` | `python3 code/orchestrators/check_external_links.py` |
| Public source snapshot | `reports/public_source_snapshot_2026-09-11.json` | `GitHub, ORCID, PubMed, Europe PMC, Crossref, Zenodo public APIs` | `python3 code/orchestrators/refresh_public_sources.py` |
| Public source inventory | `reports/public_source_inventory_2026-09-10.json` | `ORCID, Crossref, PubMed, Europe PMC, Zenodo, Wikidata, Semantic Scholar, GitHub, AII pages` | `python3 code/orchestrators/refresh_public_source_inventory.py` |
| Public-source review record | `reports/public_source_review_2026-09-12.json`<br>`reports/public_source_review_2026-09-12.md` | `reports/public_source_snapshot_*.json`<br>`reports/public_source_inventory_*.json`<br>`reports/paired_publications_*.json`<br>`data/paired-publication-decisions.json`<br>`data/public-source-observation-decisions.json`<br>`data/biographical-claim-decisions.json`<br>`data/claims.json`<br>`data/scholar-snapshot.json`<br>`data/scholar-verification-receipt.json`<br>`code/orchestrators/build_public_source_review.py` | `python3 code/orchestrators/build_public_source_review.py` |
| External link triage | `reports/external_links_triage_2026-09-11.json`<br>`reports/external_links_triage_2026-09-11.md` | `reports/external_links_2026-09-11.json` | `python3 code/orchestrators/build_external_link_triage.py` |
| Asset size audit | `reports/asset_size_2026-09-12.json` | `root HTML pages`<br>`og-*.jpg`<br>`data/*.json`<br>`style.css`<br>`sw.js` | `python3 code/orchestrators/audit_assets.py` |
| Static accessibility report | `reports/accessibility_static_2026-09-12.json` | `root HTML pages`<br>`style.css`<br>`code/orchestrators/accessibility_audit.py` | `python3 code/orchestrators/accessibility_audit.py` |
| Browser smoke checks | `reports/browser-smoke/2026-09-11/*.png`<br>`reports/browser-smoke/2026-09-11/manifest.json` | `root HTML pages`<br>`works/index.html`<br>`search-index.json` | `python3 code/orchestrators/browser_smoke.py` |
| Progressive browser QA | `reports/browser-qa/2026-09-11/manifest.json` | `root HTML pages`<br>`js/*.js`<br>`style.css`<br>`code/orchestrators/browser_qa.py` | `uv run --extra browser-qa python3 code/orchestrators/browser_qa.py` |
| Live site verification | `reports/live_site_verification_2026-09-12.json` | `https://danielarifriedman.com/`<br>`GitHub Pages API` | `python3 code/orchestrators/verify_live_site.py` |
| Feed | `feed.xml` | `data/works.json`<br>`code/orchestrators/generate_feed.py` | `python3 code/orchestrators/generate_feed.py` |
| Sitemap | `sitemap.xml` | `works/*.html`<br>`code/src/sitemap_policy.py`<br>`code/orchestrators/build_sitemap.py` | `python3 code/orchestrators/build_sitemap.py` |
| 404 page | `404.html` | `code/src/site_nav.py`<br>`code/orchestrators/build_404_page.py` | `python3 code/orchestrators/build_404_page.py` |
| Compact artwork gallery index | `data/artworks-index.json` | `data/artworks.json`<br>`code/orchestrators/build_artwork_index.py` | `python3 code/orchestrators/build_artwork_index.py` |
| GitHub-rendered README mirror | `.github/README.md` | `README.md`<br>`code/orchestrators/build_github_readme.py` | `python3 code/orchestrators/build_github_readme.py` |
| Visual QA | `reports/visual-qa/2026-09-11/*.png`<br>`reports/visual-qa/2026-09-11/manifest.json` | `root HTML pages`<br>`style.css` | `python3 code/orchestrators/visual_qa.py` |

## Maintenance & Utility Orchestrators

Scripts under `code/orchestrators/` that do not produce a matrix artifact row: rebuild drivers, gates, audits, network submitters, and completed one-shot migrations. Full source-layer map: `code/README.md`.

| Script | Role | Purpose |
| --- | --- | --- |
| `code/orchestrators/regenerate_all.py` | driver | Dependency-ordered write-mode rebuild of every locally-derived artifact; `--validate` chains validate_repo.py |
| `code/orchestrators/validate_repo.py` | gate | Authoritative generated-layer gate: runs every generator in `--check` mode plus repo invariants |
| `code/orchestrators/build_generated_manifest.py` | meta | Writes GENERATED.md + data/generated-manifest.json from the ARTIFACTS/UTILITIES lists in this file |
| `code/orchestrators/audit_publication_skills.py` | audit | Validates papers/*/SKILL.md against data/works.json docs_path references; runs in validate_repo.py |
| `code/orchestrators/build_reconciliation_report.py` | audit | Builds the public-source reconciliation report from local indexes and the freshness snapshot |
| `code/orchestrators/build_public_source_review.py` | review | Builds dated applied/deferred/rejected review evidence from refresh snapshots without changing curated claims, metrics, classifications, or bibliography data |
| `code/orchestrators/audit_private_reconciliation.py` | audit | Classifies public-main versus private-only changes without merging history and records source ports, derived regeneration, and binary deferrals |
| `code/orchestrators/check_zenodo_uncatalogued.py` | audit | Diffs live Zenodo records under the profile ORCID against the curated bibliography |
| `code/orchestrators/gsc_followup_preflight.py` | audit | Prints the pre-GSC-followup checklist (sitemap, priority URLs, validation rows); see docs/seo/gsc-followup.md |
| `code/orchestrators/indexnow_urls.py` | seo | Emits the IndexNow URL list from the sitemap index-priority policy |
| `code/orchestrators/submit_indexnow.py` | seo | Submits index-priority URLs to IndexNow endpoints (Bing, Yandex, Naver) |
| `code/orchestrators/ensure_social_meta.py` | maintenance | Idempotently adds Twitter Card + og:image:alt tags to the hand-maintained pages |
| `code/orchestrators/prune_old_reports.py` | maintenance | Prunes superseded dated QA screenshot sets only with a reviewed provenance-preserving retention manifest |
| `code/orchestrators/reconcile_paper_dois.py` | maintenance | Builds an approval-bound canonical DOI versus artifact DOI reconciliation receipt; bibliography DOI is canonical |
| `code/orchestrators/attest_release.py` | release | Creates or checks a content-addressed post-deploy deployment-SHA attestation; never deploys |
| `code/orchestrators/generate_redirect_stubs.py` | maintenance | Renders or checks all centrally declared redirect stubs without inline JavaScript |
| `code/orchestrators/extract_paper_texts.py` | maintenance | Extracts full text and images from paper PDFs into the papers/ tree |
| `code/orchestrators/fetch_youtube_data.py` | fetch | Fetches YouTube channel metadata for both channels into code/data/youtube_*.json (network) |
| `code/orchestrators/generate_citation_cff.py` | maintenance | Synchronizes canonical citation DOI and labelled artifact DOI roles in per-paper CFF files while preserving non-DOI identifiers |
| `code/orchestrators/render_github_inventory.py` | generation | Renders the primary and fork GitHub inventory pages deterministically from the reviewed cached JSON inventory |
| `code/orchestrators/deploy_seo_security.py` | maintenance | Deploys/refreshes the CSP and rel="me" head tags across indexable pages; idempotent and re-run on every rebuild (not a one-shot) |
| `code/orchestrators/migrate_inline_handlers.py` | one-shot | One-shot migration: inline event handlers to data-* + addEventListener for CSP (completed; kept for provenance) |
| `code/orchestrators/optimize_font_loading.py` | one-shot | One-shot migration: legacy Google Fonts links to self-hosted loading (completed; kept for provenance) |

## Validation

Run `python3 code/orchestrators/validate_repo.py` before declaring the generated layer current.
