.. meta::
   :description: Procedure documentation for generating MMv3 exhibit pages — template, steps, and remaining work inventory for continuation across sessions.

.. title:: Procedure for MMv3 Exhibit Page Generation


****************************************************************************************************
Procedure for MMv3 Exhibit Page Generation
****************************************************************************************************

*Documented by Claude Opus 4.6 (dv_ClaOp46Max_MMv2_2026m04d02) for continuation across sessions.*


Session 1 Progress (2026-04-02)
================================

**Pages created: 23 exhibit pages + 2 full catalogs (all 253 PDFs) + structural files**

Completed folders:

- **open-letter/** — all 11 letters (OL0--OL10), each with individual exhibit page + folder index
- **supporting-doc/** — all 10 documents (SD1--SD10), each with individual exhibit page + folder index. SD1 was rewritten from an older format to match the current template.
- **about/** — 1 folder-level catalog page covering 6 PDFs
- **dont-panic-guide/** — 1 exhibit page covering 1 PDF
- **mmv3/index.rst** — master gateway page linking all folder indices

Structural files created:

- ``mmv3/index.rst`` — master gateway (VV toctree points here only)
- ``mmv3/open-letter/index.rst`` — folder index for OL0--OL10
- ``mmv3/supporting-doc/index.rst`` — folder index for SD1--SD10
- ``_templates/include-file/footer/cta/gnp-mmv3-review.rst`` — generic review CTA
- ``mmv3/catalog-text.rst`` — Level 1 plain text catalog (all 253 PDFs)
- ``mmv3/catalog-visual.rst`` — Level 2 visual catalog (all 253 PDFs with thumbnails)
- ``mmv3/collection-overview.rst`` — detailed section breakdown with exhibit page status
- ``mmv2/index.rst`` — moved from VV root into its own subfolder (consistent with mmv3)
- ``mmv3/deprecated/catalog-test.rst`` — old template test page (replaced by proper catalogs)

Catalog generation script: ``/tmp/gen-catalogs.py`` (Python, generates both catalogs from filesystem scan).
To regenerate after adding new PDFs: ``python3 /tmp/gen-catalogs.py`` from the repo root.

VV-level toctree: hidden, points only to ``mmv2/index`` and ``mmv3/index``.
MMv2 is linked from the VV table but not visible in the navbar.
MMv3 master index has 3 toctree groups: Core Documents, Catalogs & Overviews, Session Logs (hidden).

Catalog ordering: Don't Panic Guide first, then Supporting Documents, Open Letters, About,
then Extra Good News, Flying Scroll, Dusty Deep Data, and remaining folders.
Each catalog has a prominent tip box pointing to the Don't Panic Guide and SD1-SD3 as entry points.


Remaining Work (~226 PDFs)
===========================

.. list-table::
   :widths: 30 10 60
   :header-rows: 1

   * - Folder
     - Est. PDFs
     - Notes
   * - ``dusty-deep-data/loewe-about-me-science/``
     - 5
     - Academic CV, tenure dossier, grants, teaching — **done** (5 exhibit + catalog, 2026m04d16)
   * - ``dusty-deep-data/loewe-about-me-spirituality/``
     - 2
     - Personal spiritual exhibits — **done** (2 exhibit + catalog, 2026m04d16)
   * - ``dusty-deep-data/loewe-researchcity-key-papers/``
     - 19
     - Published scientific papers (6--444 pages each!) — **done** (19 exhibit + 2 indexes, 2026m04d14)
   * - ``extra-good-news/7track-roles/``
     - 6
     - 7 tribes model, Waldo game
   * - ``extra-good-news/aipto/``
     - 1
     - AIPTO canary rules (20 pages)
   * - ``extra-good-news/biblical-family-values/``
     - 2
     - Sensitive content (sex positivity, Paul study)
   * - ``extra-good-news/`` (root)
     - 4
     - Ketubah (360pg!), Book of Life, anti-Christ, Craftiest Criminal (150pg)
   * - ``flyingscroll/banner/``
     - 4
     - Physical banners (1x6ft, 3x6ft)
   * - ``flyingscroll/flag/``
     - 5
     - ZoE flags (4-state epiocracy) — **done** (catalog, 2026m04d14)
   * - ``flyingscroll/ironrod/``
     - 24
     - Iron Rod views, StayVS diagrams — **done** (6 exhibit + catalog, 2026m04d14)
   * - ``flyingscroll/page/``
     - 22
     - Posters A--Z2 (many wall-sized 3x4ft!)
   * - ``flyingscroll/sticker/``
     - 8
     - Stickers (beast number, David stars, etc.)
   * - ``flyingscroll/talk/``
     - 1
     - Draft talk (69 slides)
   * - ``flyingscroll/transwarpkey/``
     - ~55
     - 12 stadia (sta1--stb12) + overview + evolb samples
   * - ``flyingscroll/wall-street-sized/``
     - 2
     - Wall-sized Flying Scroll combos (5x10m, 12--20MB!)
   * - ``flyingscroll/yahs-3rd-temple-draft/``
     - 10
     - Y3T intro series — **done** (10 exhibit + catalog, 2026m04d16)
   * - ``good-news-sample/``
     - 1
     - 16-page sample
   * - ``open-letter/combo/``
     - 2
     - Combined packs (108pg!)
   * - ``open-letter/files-shared/``
     - 4
     - Shared attachments
   * - ``signature-request/``
     - 8
     - Ketubah signature pages — **done** (catalog, 2026m04d14)
   * - ``supporting-doc/combo/``
     - 1
     - SD1--SD10 combined (14pg)
   * - ``supporting-doc/sd1/fig/``
     - 8
     - SD1 figures (RiskyMAD diagrams) — **done** (catalog, 2026m04d14)
   * - ``supporting-doc/sd3/`` (sub-docs)
     - 2
     - SD3a contract overview, SD3b signature — **done** (2 exhibit, 2026m04d16)
   * - ``supporting-doc/sd5/`` (sub-docs)
     - 1
     - SD5b modeling quality 15 guides — **done** (1 exhibit, 2026m04d16)
   * - ``supporting-doc/sd6/`` (sub-docs)
     - 3
     - 4 horsemen, datageddon prison, datageddon escape — **done** (3 exhibit, 2026m04d16)
   * - ``supporting-doc/sd8/`` (sub-docs)
     - 2
     - SD8a ark hardware, SD8b ark software — **done** (2 exhibit, 2026m04d16)
   * - ``supporting-doc/sd9/`` (sub-docs)
     - 1
     - Hardship explanation — **done** (1 exhibit, 2026m04d16)
   * - Root level
     - 2
     - AHA readme, Jonah License


Per-File Procedure
===================

For each PDF, Claude follows these steps:

1. **Create directory:** ``mkdir -p source/good-news-pack/vv/mmv3/[path]/``
2. **Get file sizes:** ``du -h [pdf] [webp]``
3. **Read PDF:** ``Read tool, pages 1-N`` (max 20 pages per request; chunk if longer)
4. **Write exhibit page** at ``source/good-news-pack/vv/mmv3/[path]/index.rst`` containing:

   - ``.. meta::`` with description, keywords, ``og:card:title``, ``og:card:description``
   - ``.. title::`` with **short** navbar title (e.g., "SD1 — Nuclear Winter", not full title)
   - Full RST title (overline MUST be at least as long as the title text, or Sphinx warns)
   - One-line hook in italics
   - Download admonition (``:class: note``, blue) with:

     - PDF link + size in parentheses
     - Page count + license: ``:doc:`Jonah License with CC0 Public Domain </license/joli/index>```
     - Literal filename with ``.pdf`` extension
     - WebP preview link + size
     - "Also in this folder:" links if the source folder has additional PDFs

   - Full-width WebP preview image (from the matched ``.webp`` in the same source folder)
   - ``--- Overview AI-generated by dv_ClaOp46Max_MMv2_2026m04d02 ---Start---``
   - Abstract
   - Broader Significance (Claude's Assessment)
   - Who This Document Is For (audience table, for major docs)
   - Key Concepts at a Glance (term-definition table)
   - Document Information (metadata table including PDF/WebP sizes)
   - Related documents (links to PDFs; to be updated to ``:doc:`` links once exhibit pages exist)
   - ``--- Overview AI-generated by dv_ClaOp46Max_MMv2_2026m04d02 ---End---``
   - Footer form block:

     - ``.. |content-vvn| replace:: dv_ClaOp46Max_MMv2_2026m04d02``
     - ``.. include:: /_templates/include-file/footer/separator/tidal-gradient.rst``
     - Notes dropdown with ``page-footer-stability.rst`` include
     - ``.. only:: html`` block containing:

       - ``.. include:: /_templates/include-file/footer/cta/gnp-mmv3-review.rst``
       - FF FeedbackFlow dropdown with prelink, page-specific mailto, postlink

5. **Add to folder-level toctree** (NOT the VV-level toctree).
   Each folder has its own ``index.rst`` with a toctree.
   New folders must also be added to ``mmv3/index.rst``.
6. **Periodic build check:** ``make html`` to catch errors (especially title overline warnings)


Folder-Level Catalogs
----------------------

For simple visual assets (logos, stickers, flags, figures):
skip individual PDF reading, create one ``index.rst`` per folder with visual
catalog entries. Each entry is a ``list-table`` row with:

- WebP thumbnail (clickable, linking to PDF)
- Bold title (AI-derived or from filename)
- VVN as-is (do NOT parse into separate fields)
- Page count + license link
- PDF link + size, WebP link + size
- Literal filename with extension
- Warning for large files (>10 MB) or wall-sized documents


Key Conventions
----------------

**License text:** Always lead with "Jonah License" and always link:
``:doc:`Jonah License with CC0 Public Domain </license/joli/index>```
Use ``:doc:`` reference (NOT raw ``<path>`` hyperlink).

**FF slug pattern:** Use the full mmv3 path including filename (drop folders
above ``mmv3/``). Example:
``FF+mmv3-supporting-doc-sd1-nuclear-winter-iv_llol_qqv4_2025m12d03@balospe.com``
Truncate if over 64 characters (email local-part limit).

**Navbar nesting:** The VV-level toctree points ONLY to ``mmv3/index.rst``.
``mmv3/index.rst`` points to folder-level indices (``open-letter/index.rst``,
``supporting-doc/index.rst``, etc.). Folder indices point to individual pages.
Every new folder needs its own ``index.rst`` with a toctree, and must be
registered in ``mmv3/index.rst``.

**Short navbar titles:** Use abbreviations (e.g., "OL1 — to US Presidents & All",
"SD6 — BABL Millstone", "About — Logos & Cards"). Do NOT use full document titles
in toctrees.

**Title overlines:** RST overlines (``****...``) MUST be at least as long as the
title text. Check this before writing — Sphinx emits a warning if too short.

**Download box color:** ``:class: note`` (blue). NOT ``:class: important`` (red).

**Version code:** ``dv_ClaOp46Max_MMv2_2026m04d02`` for all pages in this batch.
Increment on significant rewrites (e.g., ``MMv3_2026m04d03``).

**Related document links:** Currently link to PDF files directly. Once exhibit
pages exist for those documents, update to ``:doc:`` references. This is a
deferred task for a future session.


Context Budget Analysis
========================

**Problem:** Processing 253 PDFs with full AI-generated abstracts consumes
~2.5% of the 1M context window per document (reading PDF + writing RST).
At this rate, one session can process ~25--35 documents before context
pressure becomes critical.

**Current session:** 22 pages written, ~38% context remaining, ~226 PDFs to go.
That requires **7--9 additional sessions** at the current quality level.


Proposed Sustainable Strategy
==============================

**Option A: Multi-session sequential processing (RECOMMENDED)**

Split remaining work into ~8 sessions, each processing one folder group:

1. ``dusty-deep-data/`` (26 PDFs, many are long academic papers)
2. ``extra-good-news/`` (13 PDFs, includes 360-page Ketubah)
3. ``flyingscroll/banner+flag+sticker+talk/`` (18 PDFs, simple visuals)
4. ``flyingscroll/ironrod/`` (21 PDFs, diagrams)
5. ``flyingscroll/page/`` (22 PDFs, wall-sized posters)
6. ``flyingscroll/transwarpkey/ part 1`` (~28 PDFs, stadia 1--6)
7. ``flyingscroll/transwarpkey/ part 2`` (~27 PDFs, stadia 7--12 + evolb)
8. ``flyingscroll/yahs-3rd-temple/ + remaining`` (~20 PDFs)

Each session: read this procedure file, pick up where the previous left,
process the assigned folder group, update this inventory.

**Option B: Tiered processing**

Session 2: Generate Level 1 plain-text catalog for ALL 253 PDFs (no PDF
reading, filenames only, zero garbling risk). This makes everything
immediately accessible. Then do Level 4 exhibit pages in subsequent
sessions for priority documents only.

**Option C: Hybrid (BEST)**

Session 2: Generate Level 1 text catalog + Level 2 visual catalog for
ALL remaining PDFs (from filenames only, ~1 session). Then subsequent
sessions add Level 4 exhibit pages for selected high-priority documents
(e.g., Ketubah, complex posters, Y3T Rosetta, key transwarpkey stadia).

**Key efficiency gains for future sessions:**

- For simple visual assets (flags, stickers, banners), use folder-level
  catalogs instead of individual exhibit pages
- For academic papers in ``dusty-deep-data/``, brief pages with
  bibliographic info extracted from filenames (no full PDF reading)
- Reserve full AI abstracts for the most important/complex documents
- Batch toctree updates (add all pages at end of session, not one by one)
