build-bog-v2

Build BoG v2 deck PDF via typst (polylux/touying)

Metadata

Statusabandoned ‖ paused
Created2026-05-06T01:16:40.783159761+00:00
Tagsbog-this-week, bog-deck, render
Failure reasonrewriting with brainstorm-deck framing per lead author

Description

GOAL: Render slides/v2/slide_NN_*.md (15 slides) into a single PDF deck via typst. Lead author Erik Garrison gives this talk at Biology of Genomes THIS WEEK; he wants a viewable PDF.

INPUTS:

  • slides/v2/slide_01_title.md … slide_15_concerted_evolution_thesis.md (15 markdown briefs with bullets / figure / speaker notes)
  • slides/v2/SLIDES_v2_PLAN.md (consolidated plan including time budget + narrative arc)
  • slides/v2/figure_manifest.md (every figure path + status; READY-TO-RENDER R scripts called out)
  • slides/v2/coherence_check.md (cross-slide flags)
  • slides/20260204_Subtelomics_overview_EG.pdf (now-tracked v1 deck — slides 02/03/09 may pull pages from this for diagrams)
  • paper_prep/figures/ (existing manuscript figures used by slides 04/07/10/11/12)
  • paper_prep/figures/nj_tree_arms/nj_tree_annotated.{pdf,png} (slide 07 NJ tree from upstream task)
  • /moosefs/guarracino/HPRCv2/PHR_III/similarity/ (off-tree alternates listed in figure_manifest)

PIPELINE — strict order:

  1. Render any READY-TO-RENDER figures called out in figure_manifest.md whose source R script is embedded in the slide markdown. Specifically (per the manifest):

    • slide 03 ER-callout (n=18,827, p* ≈ 5.21e-4, 230× threshold) → slides/v2/slide_03_er_callout.{pdf,png}
    • slide 06 clade callouts → slides/v2/slide_06_clade_callouts.{pdf,png}
    • slide 09 clade legend → slides/v2/slide_09_clade_legend.{pdf,png}
    • slide 12 stage trajectory inset (lepto/zygo/pachy/diplo Mantel ρ) → slides/v2/slide_12_stage_trajectory.{pdf,png}
    • Optional composites (slide 07/08/10/11) — render if time permits, otherwise use the per-panel originals. For each script: extract from the slide MD, execute with R, save outputs in slides/v2/. Log any failures with 'wg log' and continue (use the upstream panel as fallback).
  2. Install typst presentation framework. Recommended: polylux (https://polylux.dev/) which has 'simple-slides' template — battle-tested, single-import. Alternative: touying (newer, more flexible). Install via: typst init @preview/polylux:0.4.0 into a working dir slides/v2/_typst/. typst is already on disk at ~/.local/bin/typst (0.13.1) per render-manuscript-draft-4 task log.

  3. Generate the deck source slides/v2/_typst/deck.typ by integrating the 15 slide MDs. Mapping: each slide MD's '## Title' → polylux slide title; '## Bullets' → bullet list; '## Primary figure' → figure include (use the figure path from the slide MD or figure_manifest.md); '## Speaker notes' → polylux speaker-notes block (these don't appear in the rendered PDF but are preserved in the .typ source for Erik); '## Time budget' → as a comment at the top of the slide block.

  4. Compile: 'typst compile slides/v2/_typst/deck.typ slides/v2/BoG_2026.pdf' — log to slides/v2/_typst/render.log.

  5. MANDATORY VERIFICATION (these come from the lessons of render-manuscript-draft-4): a. 'file slides/v2/BoG_2026.pdf' must report 'PDF document' b. 'pdfinfo slides/v2/BoG_2026.pdf' must show 15 pages (one per slide; no overflow, no underflow) c. 'pdfimages -list slides/v2/BoG_2026.pdf | wc -l' must show at least 12 image XObjects (slides 4,5,6,7,8,9,10,11,12,13,14 — 11 figure-bearing slides; allow some overcount for composites). If <12, fail with the actual count and which slide is missing its figure. d. Run 'pdftoppm -r 100 slides/v2/BoG_2026.pdf slides/v2/_typst/page' to dump per-page screenshots; commit those as well so Erik / evaluator can spot-check that figures ARE visible (not just embedded).

  6. Record slides/v2/BoG_2026.pdf as a wg artifact. Single commit message: 'feat: BoG v2 deck PDF via typst polylux'.

ACCEPTANCE:

  • slides/v2/BoG_2026.pdf exists; file reports PDF; 15 pages; ≥12 embedded images; per-page screenshots present in slides/v2/_typst/; wg artifact recorded.
  • If anything breaks irrecoverably (typst compile error, missing critical figure, etc.) — 'wg fail' with the SPECIFIC error from the failing pipeline step. Do NOT silently produce a figureless PDF (the original sin from render-manuscript-draft-2).

DO NOT in this task:

  • Modify any slide_NN_*.md file (read-only inputs)
  • Modify any figure under paper_prep/figures/ (read-only)
  • Touch any file outside slides/v2/
  • Run heavy compute (no SBATCH; everything here is light R/ggplot2 + typst compile)
  • Build anything other than the deck (no .pptx, no beamer, no .key)

Depends on

Required by

Log