:orphan:

.. include:: /_templates/include-file/page-prefix.rst

.. note:: **Prompt K: MMv3 navigation improvements --- 2026m04d16.**
   Three tasks: (1) add :doc: links in catalogs to RST exhibit pages,
   (2) create missing folder index.rst files, (3) restructure mmv3/index.rst
   to use intermediate landing pages. Estimated: 1 session. Prepared by Claude Opus 4.6.

****************************************************************************************************
Prompt K: MMv3 Navigation Improvements --- Catalogs, Folder Indexes, Navbar
****************************************************************************************************

| **VVN:** ``dv_ClaOp46_NavK_2026m04d16``
| **Scope:** ``source/good-news-pack/vv/mmv3/`` --- navigation layer only (no new PDF reads)
| **Session estimate:** 1 session (all work is RST editing; no large PDFs to read)


Purpose
=========

The MMv3 collection currently has three navigation gaps:

1. **Catalog linkage gap:** ``catalog-text.rst`` and ``catalog-visual.rst`` list
   every PDF with a download link but do NOT link to the corresponding RST
   exhibit page, even where one exists. A reader browsing the catalog can
   download the PDF but cannot discover the in-depth AI summary page.

2. **Missing folder index.rst files:** Several sections lack a folder-level
   ``index.rst``. Sphinx cannot create intermediate landing pages for these
   sections, and the navbar skips directly to leaf pages. Missing indexes:
   - ``flyingscroll/`` (has 8 sub-sections, each with index.rst, but no parent)
   - ``flyingscroll/page/`` (24 individual poster RST files, no index)
   - ``flyingscroll/talk/`` (1 draft RST file, no index)
   - ``extra-good-news/`` (has 5 sub-sections with index.rst, but no parent)
   - ``extra-good-news/7track-roles/`` (6 RST files, no index)
   - ``extra-good-news/biblical-family-values/`` (2 RST files, no index)

3. **Flat navbar for flyingscroll and extra-good-news:** ``mmv3/index.rst``
   directly lists all flying-scroll and extra-good-news sub-pages under a
   caption. Once folder index.rst files exist, the toctrees in ``mmv3/index.rst``
   can point to those landing pages, giving the navbar a proper hierarchy.


Step 1: Read Context Files
============================

Read these files in order:

1. ``.claude/CLAUDE.md`` --- Language Rules, EDEN, date format, all conventions.

2. ``source/good-news-pack/vv/mmv3/index.rst`` --- the current master gateway;
   understand its toctree structure before changing it.

3. ``source/good-news-pack/vv/mmv3/catalog-text.rst`` --- read the first 120
   lines to understand the entry format (bullet + PDF download link).
   Each entry looks like::

      - ``section/filename.pdf`` --- `PDF (XK) <...pdf>`__ · `WebP (YK) <...webp>`__

   The goal is to add a ``:doc:`` cross-reference at the end of each bullet
   where an RST exhibit page exists.

4. ``source/good-news-pack/vv/mmv3/flyingscroll/ironrod/index.rst`` --- a
   well-structured folder index.rst to use as a quality reference for writing
   new index.rst files.

5. One existing exhibit page for tone reference:
   ``source/good-news-pack/vv/mmv3/about/loewe-bizcard-4page.rst``


Step 2: Audit Exhibit Pages vs Catalog Entries
================================================

Before editing anything, build the mapping of PDF paths to their RST exhibit pages.
Run this command::

   grep -r "^Abstract$" source/good-news-pack/vv/mmv3/ --include="*.rst" -l

This gives the list of all RST files with a full in-depth summary (the ``Abstract``
heading is the distinguishing mark). Also check for AI-generated overview markers::

   grep -r "Overview AI-generated" source/good-news-pack/vv/mmv3/ --include="*.rst" -l

Cross-reference the two lists. The union is the set of all pages eligible to
receive a ``:doc:`` link from the catalogs.

Then, for each found RST page, determine the corresponding PDF entry in
``catalog-text.rst`` by matching the RST file's folder/basename to the PDF
entries in that same subfolder section. For example:
- ``flyingscroll/ironrod/ironrod-aha.rst`` links from the PDF entries in the
  ``flyingscroll/ironrod/`` section of ``catalog-text.rst``.

Record the full mapping before editing.


Step 3: Update catalog-text.rst --- Add Exhibit Page Links
============================================================

For each PDF entry in ``catalog-text.rst`` that has a corresponding RST exhibit
page (from Step 2), append a ``:doc:`` cross-reference to that bullet line.

The amended entry format should be::

   - ``section/filename.pdf`` --- `PDF (XK) <...pdf>`__ · `WebP (YK) <...webp>`__
     · :doc:`Exhibit page <section/exhibit-page-rst-name>`

Use relative paths from ``catalog-text.rst`` (which lives at
``source/good-news-pack/vv/mmv3/catalog-text.rst``), so the path
would be e.g. ``flyingscroll/ironrod/ironrod-aha``.

**Important:** Only add links where an RST exhibit page actually exists. Do not
add placeholder links. If a PDF has no RST page yet, leave its catalog entry
unchanged.

**Scope:** Update ``catalog-text.rst`` only in this step. The visual catalog
(``catalog-visual.rst``) is enormous (61 MB of WebP previews); update only if
time permits as a stretch goal, following the same pattern.


Step 4: Create flyingscroll/index.rst
========================================

Create ``source/good-news-pack/vv/mmv3/flyingscroll/index.rst``.

This is the landing page for the entire Flying Scroll section. It should:

- Open with ``.. include:: /_templates/include-file/page-prefix.rst``
- Have a short title: ``Flying Scroll — Visual Exhibits``
- Have a brief 2--3 sentence description of what the Flying Scroll is
  (inspired by Zechariah 5:1--4; the poster exhibit collection)
- Have a ``.. toctree::`` pointing to all 8 sub-sections in this order::

     Banners — 1x6ft & 3x6ft <banner/index>
     Stickers — Visual Assets <sticker/index>
     Wall-Street-Sized — 5x10m Combos <wall-street-sized/index>
     ZoE Flags — 4-State Epiocracy <flag/index>
     Iron Rod Collection <ironrod/index>
     Transwarp Key — 12 Stadia <transwarpkey/index>
     Y3T Drafts <yahs-3rd-temple-draft/index>
     Individual Posters <page/index>
     Draft Talk <talk/draft-talk>

- Footer: use the minimal open-std footer form with
  ``|content-vvn|`` replaced by ``dv_ClaOp46_NavK_2026m04d16``.

For the FF email slug use ``mmv3-flyingscroll`` as the page slug.


Step 5: Create flyingscroll/page/index.rst
============================================

Create ``source/good-news-pack/vv/mmv3/flyingscroll/page/index.rst``.

This is the landing page for the 24 individual poster exhibit pages. It should:

- Brief title: ``Individual Poster Exhibits``
- 1--2 sentence description: these are individual exhibit pages for
  Flying Scroll posters, each with an in-depth AI summary.
- A ``.. toctree::`` listing all 24 existing RST files in this folder
  in the same order they currently appear in ``mmv3/index.rst`` (the
  hidden Session Logs toctree). The files are:
  ``poster-0``, ``poster-0b``, ``poster-1-sd4``, ``poster-a`` through ``poster-h``,
  ``poster-e2``, ``poster-m``, ``poster-m2``, ``poster-r``, ``poster-sci-giraffe``,
  ``poster-sci-love``, ``poster-sd1``, ``poster-sd3``, ``poster-t``, ``poster-x``,
  ``poster-z``, ``poster-z2``, ``blue-marble``.
- Footer: same pattern; slug ``mmv3-flyingscroll-page``.


Step 6: Create extra-good-news/index.rst
==========================================

Create ``source/good-news-pack/vv/mmv3/extra-good-news/index.rst``.

This is the landing page for the Extra Good News section. It should:

- Brief title: ``Extra Good News``
- 2--3 sentence description of what Extra Good News contains
  (additional thematic studies: AIPTO Canary, anti-Christ confusion matrix,
  book-of-life ketubah draft, craftiest criminal, sexual ethics, 7-track roles)
- A ``.. toctree::`` in this order::

     AIPTO CAN <aipto/index>
     antiChrist Confusion Matrix <anti-christ/index>
     Biblical Family Values <biblical-family-values/index>
     Book of Life — Draft Ketubah <book-of-life/index>
     Craftiest Criminal <craftiest-criminal/index>
     Ketubah Wager <ketubah/index>
     7Track Roles <7track-roles/index>

- Footer: slug ``mmv3-extra-good-news``.


Step 7: Create extra-good-news/7track-roles/index.rst
=======================================================

Create ``source/good-news-pack/vv/mmv3/extra-good-news/7track-roles/index.rst``.

List the 6 existing RST files::

   7Tribes Intro — Yom Kippur <7tribes-intro-yom-kippur>
   WaldoGame Cards <waldogame-cards>
   WaldoGame — Cosmic Joke <waldogame-cosmic-joke>
   Iron Rod — 7Tr Integration <ironrod-7tr>
   7Tribes Model — 3-Page Extract <7tribes-model>
   7Tribes Study — Full Report <7tribes-study>

Brief description: studies and tools for the 7-TrackRoles framework --- WaldoGame,
7-tribe typology, and Iron Rod integration.
Footer slug: ``mmv3-7track-roles``.


Step 8: Create extra-good-news/biblical-family-values/index.rst
=================================================================

Create ``source/good-news-pack/vv/mmv3/extra-good-news/biblical-family-values/index.rst``.

List the 2 existing RST files::

   10 BEGs Sex Positivity <sex-positivity>
   Paul Study — Marriage and Homosexuality <paul-study>

Brief description: exegetical studies on sexual ethics and family values from
a Jonah-license perspective.
Footer slug: ``mmv3-biblical-family-values``.


Step 9: Update mmv3/index.rst --- Use New Intermediate Landing Pages
======================================================================

Now that ``flyingscroll/index.rst`` and ``extra-good-news/index.rst`` exist,
update ``source/good-news-pack/vv/mmv3/index.rst`` to point to them.

**Flying Scroll toctree:** Replace the current expanded list of sub-sections
(7 entries pointing to sub-index files) with a single entry::

   .. toctree::
      :caption: Flying Scroll

      Flying Scroll <flyingscroll/index>

**Extra Good News toctree:** Replace the current expanded list (10 entries
pointing directly to individual pages) with a single entry::

   .. toctree::
      :caption: Extra Good News

      Extra Good News <extra-good-news/index>

**Session Logs / hidden toctree:** Remove the 24 individual ``flyingscroll/page/``
entries from the hidden toctree (they are now reached via
``flyingscroll/index`` → ``page/index``). Keep the llog and prompt entries.

After editing ``mmv3/index.rst``, also remove the ``Draft Talk`` direct entry
(``flyingscroll/talk/draft-talk``) from the Flying Scroll toctree caption, as
it is now reached via ``flyingscroll/index``.


Step 10: Run make dev and Fix Warnings
=========================================

Run ``make dev`` from the repository root. Fix any warnings about:

- Missing toctree entries (orphaned pages)
- Broken ``:doc:`` cross-references
- Duplicate labels

Common issue to watch for: pages that were in the hidden toctree of
``mmv3/index.rst`` but are now ONLY reachable via a sub-toctree may generate
warnings if Sphinx does not find them in the primary toctree chain. Confirm
each new index.rst is included (directly or transitively) from ``mmv3/index.rst``.


Step 11: Create LLog
======================

Create:
``source/good-news-pack/vv/mmv3/llog/llog_2026m04d16_mmv3-navigation-improvements.rst``

Record:
- How many ``:doc:`` links were added to ``catalog-text.rst`` (count)
- Which folder index.rst files were created (list all 5)
- How ``mmv3/index.rst`` was restructured
- Any warnings found and fixed by ``make dev``
- Concluding summary: the MMv3 collection is now navigable via both the
  catalog layer (cross-references from PDF entries to exhibit pages) and the
  navbar layer (hierarchical toctrees mirroring folder structure)

Then update ``source/good-news-pack/vv/mmv3/index.rst`` Session Logs hidden
toctree to add:

- ``Prompt K: MMv3 Navigation <llog/prompt-K_2026m04d16_mmv3-navigation-improvements>``
- ``LLog: MMv3 Navigation <llog/llog_2026m04d16_mmv3-navigation-improvements>``
