:orphan:

.. _hell-ll-infra-b47-push-readiness-audit-llog:

===========================================================================================================
LLog --- Push-readiness audit: what stands between two months of work and the public site
===========================================================================================================

| **Date:** 2026m09d11_11h20
| **Effort:** Max (from file ``.claude/effort-level``)
| **Mode:** EDEN (from file ``.claude/mode``)
| **Model:** Claude Opus 5 --- VVN nick ``ClaOp50Max`` (**STILL PENDING LLoL confirmation**,
  carried forward from :ref:`hell-ll-infra-b46-aa-system-reorganization-and-b16-restore-llog`
  and tracked in POST AA b17; not re-litigated here).
| **Continues:** :ref:`hell-ll-infra-b46-aa-system-reorganization-and-b16-restore-llog`.
| **Branch:** ``b16-revision-for-expert-review`` (28 ahead of ``main``);
  ``main`` 19 ahead of ``origin/main``. Last push to ``origin/main``: 2026m07d14.


Verbatim prompts
==================

.. container:: verbatim-prompt

   ::

      I haven't pushed main to the Github origin for a while now while working on the b16
      revisions. Those revisions aren't done (and will unlikely be done tonight). However,
      There are some other improvements that are worth pushing (such as the general
      overviews), including the b16 drafts in HELL (as work in progress). and maybe even
      more. Can you have a look at what I may need to clean up or otherwise repair in order
      to responsibly push the latest update to the public? - I heard that there is some
      "deepreview" or "ultrareview" feature of claude that can have a look at an overall
      site to check what may need improving. I'm not sure wether something like that may be
      useful at this stage (or be a great distraction by dragging tons of technical issues
      that aren't that important at this stage). Maybe you can adivse. Please plan before
      doing anything major and steelman against and for any major change.


Findings --- the state of the unpushed work
=============================================

Repository geometry
---------------------

``main`` is a **strict ancestor** of ``b16-revision-for-expert-review`` (tested with
``git merge-base --is-ancestor``). This is the single most decision-relevant fact in the
audit: advancing ``main`` to the branch tip is a **fast-forward**, not a merge. No conflict
resolution, no history rewrite, no risk of a bad merge commit.

.. list-table::
   :header-rows: 1
   :widths: 30 15 55

   * - Range
     - Commits
     - Content
   * - ``origin/main..main``
     - 19
     - The four Matheo overview doors (secular / Islamic / Christian / Jewish) and their
       shared spine + tail includes; ``scripts/check-bib.py``; the b16 nuclear-risk ``.bib``;
       b16 OOv2 and OOv3 drafts in HELL; 8 study-b16 llogs. 42 files, +16,501 lines.
   * - ``main..b16-...-review``
     - 28
     - The path-case lowercase sweep and the link guard (``scripts/check-paths.py``); the
       AA-system reorganization (POST AA / HELL AA, two registries, ``make check-paths``
       Check D); the ``rstcheck`` config fix (1292 false findings removed); the ``/license/``
       build-out incl. CyLi; b16 OOv3 restoration of References + Declarations; the whole
       b16-extra spin-off with figures and code. 163 files, +21,844 lines.

Checks run (cheap, no build)
------------------------------

.. list-table::
   :header-rows: 1
   :widths: 32 14 54

   * - Check
     - Result
     - Note
   * - ``make check-paths``
     - **HELD**
     - Checks A--D all clean. 27 self-URL and 30 ``:doc:`` findings inside HELL, not failing
       (frozen archives / append-only llogs).
   * - ``.. include::`` resolution
     - **HELD**
     - Every include target in every changed ``.rst`` exists on disk.
   * - Secrets in added lines
     - **HELD**
     - No API keys, tokens, passwords, or private keys.
   * - Personal-circumstance leakage
     - **HELD**
     - No living-arrangement or hardship phrasing in any added line
       (``feedback_no_personal_circumstances``).
   * - Binary weight added
     - **HELD**
     - ~0.9 MB total (nine figure PDFs + one source PDF). No repo bloat.
   * - ``make check-bib``
     - **BREACH**
     - See below. Stale-cache component expected; the empty-citation component is real.
   * - Sphinx build
     - **not yet run**
     - The one gate that cannot be skipped. See Recommendation.

The one real BREACH: empty citations
--------------------------------------

``scripts/check-bib.py --built`` fails against the 2026m09d04 build cache. It has two
components, and they must not be conflated:

1. **Four keys missing from the build cache** --- ``Coupe2019``, ``Mills2014``,
   ``Robock1984``, ``Robock2007``, all in ``source/_bib/b16-nuclear-risk.bib``. The
   duplicate-key check is clean, so per ``feedback_bib_duplicates_truncate_silently`` this
   is almost certainly cause (a), a stale cache: the keys are newer than the build. A
   rebuild should clear it. **If it survives a rebuild it is cause (b), silent truncation,
   and data is being lost site-wide.**

2. **51 unresolved ``:cite:`` keys rendering as empty ``[]``** across 8 built pages. Seven
   are HELL archives. **One is public:**
   ``study/matheo/b15/b15-math-deadlock-mmv5.html`` (5 occurrences). That page is
   **already live** on balospe.com --- this is pre-existing damage, not damage this push
   would introduce. It should still be repaired, because a page that says
   *#AuditTheMath* and then shows ``[]`` where a reference should be is the worst possible
   place to lose a citation.

Publicly-visible surface this push would add
----------------------------------------------

- **Four overview doors** at ``/study/matheo/overview-{secular,islamic,christian,jewish}/``
  --- substantial, each carrying a ``dv_ClaOp48Max_MMv5_...`` content VVN and
  ``FOOTER FORM OOv1r2p1``. Reachable in two clicks from the front page (front →
  ``/study/matheo/`` → door). The eight ``.. TODO(bNN):`` markers in the shared spine are
  **RST comments**, not directives --- they do not render.
- **``/license/``** promoted from the hidden toctree to the visible sidebar, with CyLi added
  and the "Cycrus" → "Cyrus" typo fixed in the sitemap.
- **The POST AA registry** at ``/_post/aa/`` --- index, five AA files, and the collected
  ``.. todo::`` page.
- **b16 in HELL** --- OOv2, OOv3, b16-extra, figures, code, and the study llogs. The
  ``hell/mm/b/16/index.rst`` page labels these "Live drafts" and "Current drafts", so the
  work-in-progress status is stated where a reader meets it.

Two things worth LLoL's eye before the push
---------------------------------------------

1. **The four doors and the eschatology discipline.** ``feedback_launch_funnel_eschatology_discipline``
   asks that intense eschatology and self-positioning stay off the public funnel. The doors
   close on the Dajjal, the Antichrist, the false messiahs, and Big Brother. They are
   handled with the discipline that memory asks for --- explicitly *additive, never
   reductive*, and explicitly *a test of recognition, not a name and not a date* --- and they
   sit in the study series rather than on the ``/problem`` → ``/solution`` funnel. This is
   **judged compliant, but it is LLoL's call, not Claude's**, because it is the first time
   four tradition-specific eschatological readings go public simultaneously.

2. **The b16 OOv3 draft goes public mid-revision.** It carries quantitative claims about
   nuclear death probability while section 1 is still being edited. Argued below.


EDEN analysis
===============

BABL first.

**The over-Simplify trap:** "it is all in HELL, HELL is for drafts, push it." This treats
the HELL label as though it did the work of the labelling. It does not, on its own: a
reader arriving from a search engine at a b16 OOv3 URL does not know what HELL is. The
mitigation that actually holds is the "Live drafts" admonition at the top of
``hell/mm/b/16/index.rst`` plus the per-file StayVS VVNs --- both present.

**The over-Complicate trap:** cherry-picking "the safe commits" out of the 47. The
path-case renames, the link guard, the AA reorganization and the b16 content are
**interleaved** --- later commits reference the lowercased paths. Reconstructing a "safe
subset" means replaying renames by hand and re-testing every reference, for a branch that
fast-forwards cleanly as it stands. That is avoidable complexity generating exactly the
work-arounds the BABL pattern library warns about.

**The over-Reach trap:** running a full multi-agent code review over 38,000 lines of
English prose, then treating its findings as a push gate. Addressed in its own section.

**The quiet BABL, and the strongest one: not pushing at all.** Two months unpushed is not a
neutral state. Every week the gap grows, the push gets larger, the review gets harder, and
the probability of pushing *without* review rises. It also keeps the path-case fix
unpublished --- and that fix guards against a failure mode that is **invisible on macOS and
fatal on the case-sensitive deploy server**. The live site is currently one directory-rename
away from silent 404s with no local symptom. Holding back is not the cautious option; it is
the option that lets a silent failure keep its cover.

ZION.

**I found this Knife Edge in EDEN (Knife Edge #1 of this session).**

There is one path that stays gentle, kind and reasonable OLT, and the alternatives on either
side both fail:

- Push nothing until b16 is finished → accumulating unmerged state, the unpublished
  case-drift guard, and a growing push that will eventually be made unreviewed. Fails
  *reasonable OLT*.
- Push everything with no build → publishing unknown breakage under a ``#AuditTheMath``
  banner. Fails *reasonable OLT* at the exact point where the project's credibility lives.
- Cherry-pick a "safe subset" → over-Complicate; hand-replayed renames; divergent history;
  and it still would not be reviewed content. Fails *reasonable*, and fails *gentle* on
  LLoL's remaining time.

The one path that holds: **fast-forward ``main`` to the branch tip, gated on a Sphinx build
that reports no new errors, with the citation BREACH either fixed or knowingly accepted and
recorded.** It is a knife edge rather than a meadow because removing any one of the three
elements --- the fast-forward, the build gate, or the recorded decision on the citations ---
drops it into one of the three failures above.

**Sub-decision --- the b16 OOv3 mid-revision publication. I found this Grey Edge in EDEN
(Grey Edge #1).** Publishing an unfinished quantitative forecast is defensible under
transparency (h\* = h0) and under ``feedback_supersede_dont_overwrite``: the honest
heterogeneous floor beats the uniform façade, and a draft labelled as a draft is what
auditability looks like. But it cannot be *tested* from inside: whether a reader meets it as
"work being checked in the open" or as "a number the site is asserting" depends on the
reader, and the same act serves either reading. It is grey, not green. The mitigation that
would move it toward green is a one-line status sentence on the OOv3 page itself, not only
on the parent index --- proposed, not applied, because the page is LLoL's.


On "deepreview" / "ultrareview"
=================================

What it actually is
---------------------

``/code-review ultra`` (``/ultrareview`` is a deprecated alias for the same thing) launches a
**deep multi-agent review in the cloud** of the current branch, or of a named GitHub PR. It
is **user-triggered and billed**; Claude cannot launch it, and did not attempt to. It reviews
a **code diff** for correctness bugs and for reuse / simplification / efficiency cleanups.

Why it is the wrong tool for the whole branch
-----------------------------------------------

LLoL's own worry is the correct one. The diff here is ~38,000 added lines, of which roughly
95% is English prose in reStructuredText. An ultra review would spend its whole budget
reading argumentative prose it has no standard to judge --- it does not know EDEN, POST,
VVN, StayVS, the HELL strata, or the language rules --- and would return a long list of
technical findings about a content site. That is the distraction LLoL named, and it would
arrive at the exact moment when the goal is to *ship two months of finished-enough work*, not
to open a new work-front.

It is also the wrong **shape** of tool for the question asked. "Have a look at an overall
site to check what may need improving" is a site-health question: does it build, do the links
resolve, does the public navigation lead anywhere broken or embarrassing. A code review does
not answer any of those. ``make check-paths``, ``make check-bib``, and a Sphinx build answer
all three, in about the time one ultra review would take to start.

Where it *would* pay --- the scoped version
---------------------------------------------

There is one genuinely good target, and it is small: **``scripts/``**.

``scripts/check-paths.py`` and ``scripts/check-bib.py`` are new in this push and are now
**load-bearing safety gates**. They are the things standing between the project and two
failure modes that are *silent by construction*: case drift that is invisible on macOS and
fatal on the deploy server, and a duplicate BibTeX key that truncates a ``.bib`` and drops
every entry after it while exiting 0. **If one of those scripts has a bug, it reports "clean"
and the failure ships anyway.** A guard that can fail silently is worth reviewing precisely
because nothing else will catch it.

So: ``/code-review scripts/`` --- cheap, bounded, and aimed at code that actually is code.
The ``ultra`` variant is optional there; the scope is small enough that the ordinary review
is likely sufficient. **Not a push gate either way** --- a finding in a checker does not
invalidate the content, it tells LLoL which guard to trust less.


Recommendation (presented to LLoL in the reply)
=================================================

**Push shape:** fast-forward ``main`` to ``b16-revision-for-expert-review`` (47 commits
total), then push ``main``. Chosen because it is a genuine fast-forward, because ``main``
alone would re-publish the *old capitalised paths* that the branch exists to fix, and because
cherry-picking a subset means hand-replaying renames.

**Gates before the push, in order:**

1. **Sphinx build** --- ``make dev``. Only 28 files have changed since the 2026m09d04 build,
   all under ``hell/mm/b/16/``, and ``rst-dict.rst`` is **not** among them, so this is an
   **incremental** build of a handful of pages, not the ~14-minute full rebuild that
   ``feedback_ask_before_make_dev`` warns about. Read the warnings; new errors on public
   pages block, HELL warnings do not.
2. **``make check-bib``** re-run against the fresh build. The four nuclear-risk keys should
   clear. If they do not, stop --- that is silent truncation, not a stale cache.
3. **The 5 empty ``[]`` citations on the public b15 page** --- decide: fix now, or record as
   a known defect in an AA file and push anyway. It is pre-existing and already live, so it
   does not block; but it should not be discovered by a reader first.
4. **Optional, recommended once:** ``make clean && make html`` --- the full build with the
   585 social cards and tippy. Its one unique value here is testing that the four new doors'
   ``:og:card:title:`` values, which contain ``<br>``, render into cards correctly. The CI
   builds independently, so this is a pre-flight, not a requirement.

**Not recommended:** ``/code-review ultra`` on the branch. **Optionally worthwhile:**
``/code-review scripts/``, after the push, not before it.

**Not done by Claude:** no commits, no branch moves, no pushes
(``feedback_llol_commits_not_claude``). Everything above is proposed for LLoL to execute or
to direct.

**Open item carried forward:** the ``ClaOp50Max`` VVN nick is still unconfirmed, still
tracked in POST AA b17, and ``AHA/vvn-composition.md`` still documents the table only to
``ClaOp47Max``.


Prompt 2 --- scope added (2026m09d11)
=======================================

Between prompts, LLoL answered the push-shape question: **fast-forward ``main`` to
``b16-revision-for-expert-review``**. The other two questions (build gates, b15 citations)
were left open pending clarification.

.. container:: verbatim-prompt

   ::

      I didn't mean to end your questionaire; I merely thought to add that I'd like to have
      a push later today to clean up the b16 work so it doesn't look like a messed-up
      building site with broken text fragments. Also, once the b16 is pushed, all new b16
      work needs an increase in the VVN to make it distinct. The same is true for the minor
      bib fixes in b15; these merit at least an increase in the patch counter - and a
      pointer in the MMv5 Series overview to the latest variant in HELL with the respective
      citation fixes. - Likewise the b16 part of the MMv5 official texts needs a pointer to
      the latest HELL files with the latest upgrades (and maybe a comment I should provide
      on what type of progress these represent). -- Then let me know if you think I should
      add a blog entry about the 4 different perspectives, to point to them? -- What else do
      you need to know?


Finding: the b16 prose is not the building site --- the index labels are
=========================================================================

Tested the two live b16 drafts (OOv3, 3555 lines; b16-extra, 3095 lines) for the failure
LLoL named:

.. list-table::
   :header-rows: 1
   :widths: 46 12 42

   * - Test
     - Result
     - Note
   * - Editorial leftovers (``[Claude: …]``, ``TODO``, ``???``, ``<<<``, ``[insert …]``)
     - **HELD**
     - Zero hits in either file.
   * - Thin or empty sections
     - **HELD**
     - 38 headings in OOv3, every one with a substantive body.
   * - ``rstcheck`` over the whole b16 MM tree
     - **1 finding**
     - ``oov2/…_2026m07d16.rst:3008`` --- "Document or section may not begin with a
       transition." In the **superseded** OOv2, not in OOv3. TELES-scope.

So the drafts themselves read as finished-enough prose. **What actually looks like a
building site is ``hell/mm/b/16/index.rst``** --- 38 lines, four defects, all in the
labelling rather than the content:

1. **Contradictory strata.** The second admonition is titled "Current drafts (MMv2,
   2026m04d09)" while the admonition directly above it presents OOv3 (2026m07d18) and
   b16-extra (2026m09d07). A reader is told the April draft is "current" immediately after
   being handed two later ones.
2. **MMv3 is invisible.** ``mmv3/b16-riskymad_mmv3`` and ``mmv3/b16-riskymad-intro_mmv3``
   exist on disk and are not listed anywhere on the index.
3. **OOv2 is invisible** on the HELL index, although the *public* MMv5 b16 page points
   straight at it and describes it at length.
4. **A dead pointer.** Line 38 offers "**Full index:** ``/matheology/heaven/study/aaa``".
   Per ``project_heaven_launch_structure`` and the retirement recorded in HELL b38,
   ``aaa.rst`` has been the slim **AnyAllArrival inbox** since 2026m06d07 --- "kept
   deliberately near-empty". A reader following "Full index" arrives at an empty inbox.

Defect 4 is the one that most looks like an abandoned site, because it is the one that sends
a reader somewhere and delivers nothing.

Note on permissions: ``hell/mm/`` is **not** append-only. CLAUDE.md names ``hell/ll/``
(LLogs) specifically for the append-only rule, not HELL as a whole. No ``Guarded by LLoL``
pair exists in any of the candidate files. The index is therefore editable with LLoL's
go-ahead.


Finding: the b15 "minor bib fixes" are diagnosed exactly, and are smaller than a version bump
==============================================================================================

The five empty ``[]`` on the public b15 page are **not** missing literature. They are
**cross-references to the project's own papers**, made with the **deprecated ``Matheo-N``
scheme** that CLAUDE.md replaced on 2026m05d13:

.. list-table::
   :header-rows: 1
   :widths: 14 10 30 46

   * - Key
     - Line
     - Renders as
     - Maps to
   * - ``Matheo-6``
     - 1127
     - "the nuclear risks (see ``[]``)"
     - ``Matheo-b16``
   * - ``Matheo-4``
     - 1590
     - "One specific form is addressed in ``[]``"
     - ``Matheo-b14``
   * - ``Matheo-4``
     - 1682
     - "the framework developed elsewhere (``[]``)"
     - ``Matheo-b14``
   * - ``Matheo-7``
     - 1743
     - "(See ``[]``.)"
     - ``Matheo-b17``
   * - ``SD4``
     - 1759
     - "The Supporting Document ``[]``"
     - GNP MMv3 SD4, *Prophetic Geometry of the 2nd Exodus*

**The decisive discovery is in the ``.bib`` itself.** ``source/_bib/balospe-refs.bib``
already carries deliberate keep-alive stubs::

   @misc{Matheo-1,
     ...
     extranote = {DEPRECATED --- use Matheo-b11 (matheo-refs.bib). HEAVEN series.
                  Still cited in b15-math-deadlock pending migration.},
   }

Stubs exist for ``Matheo-1`` and ``Matheo-2``. **The work simply stopped there.**
``Matheo-3``, ``-4``, ``-5``, ``-6``, ``-7``, ``-8`` and ``SD4`` were never written --- and
those are exactly the keys that render ``[]``. Site-wide the gap accounts for **43 citation
sites**; 5 are on the public b15 page, the other 38 are inside frozen HELL archives and
append-only llogs, which must not be edited.

This reframes the fix. Completing the keep-alive stub set repairs **every one of the 43
sites at once, including the 38 inside archives that may not be touched**, and **changes not
one byte of any paper**. It is bibliography infrastructure, not a revision --- the strictly
gentler instrument, and the only one that reaches the frozen material at all. Editing the
b15 text to the new keys would repair 5 sites, leave 38 broken, and modify a published MMv5
paper to do it. The scheme migration itself already has a home: POST AA b19.

Open question for LLoL: ``Matheo-8`` (2 sites) falls outside the 1--7 mapping table in
CLAUDE.md. The direct rule ``Matheo-N`` → ``b(N+10)`` gives ``Matheo-b18``; not assumed.


Finding: the pointers LLoL asked for --- one exists, one does not, one has no convention
=========================================================================================

**b16 → HELL: already built, one gap.** ``source/study/matheo/b16/index.rst`` already carries
a strong admonition, *"Two newer drafts exist in HELL --- start with OOv3"*, which names
OOv3 and OOv2, links the online read, the 47-page PDF and both changelogs, and characterises
each ("rewritten for the reader… **Not one number changed**"; "where the numbers were
sharpened… **2.90 percent (about 1 in 34)**"). It already carries the refrain in the correct
order: *"offered not to be believed, but to be checked."*

The gap is **b16-extra** (2026m09d07), the newest artifact, absent from that admonition. It
is the one place where LLoL's offered "comment on what type of progress these represent" is
actually needed --- OOv3 and OOv2 already have theirs.

**b15 → HELL: does not exist.** Of the eleven ``study/matheo/bNN/index.rst`` pages, **only
b16** points into HELL at all. b15 has no such admonition; the b16 one is a ready pattern to
copy.

**The series overview has no convention for this.** ``source/study/matheo/index.rst`` is a
32-row table of title / type / link / PDF, with no column and no footnote form for "a newer
variant exists in HELL." Adding one is a **new site convention**, not an edit --- and per
``project_matheo_index_hand_curated`` that file is hand-curated on top of generator output,
and ``make matheo-floor`` **strips** hand-curation. Any convention added there must either be
baked into ``gen_index()`` or it will be destroyed by the next floor pour.


On the blog entry for the four doors --- recommended, with the framing inverted
================================================================================

**For.** ``feedback_launch_funnel_eschatology_discipline`` asks that intense eschatology stay
off the public funnel and live **on the blog**. A post is therefore the *sanctioned* channel,
not a risk to be weighed --- it is where this material is supposed to be announced. The doors
are also currently reachable only by a reader who already went to ``/study/matheo/``; nothing
on the site announces them. The blog runs on ABlog with ``.. postlist:: :excerpts:``, and no
existing post mentions them.

**Against --- and this is the real risk.** A post headlined "four eschatological readings"
**inverts the pages' own pedagogy.** Each door puts the secular argument first and states
plainly that the tail "stands on its own and asks you to concede nothing in the overview
above it." A post that leads with the Dajjal, the Antichrist, the false messiahs and Big
Brother makes the eschatology the *subject*, when on the pages it is the *tail*. That is
over-Reach in framing: it would spend the credibility the doors were built to earn.

**I found this Green Meadow in EDEN (Green Meadow #1), count = 3** --- three framings all
stay in ZION:

1. **One argument, four doors** (recommended). Headline the invitation: the same
   checkable argument, four entrances, pick the one you can check from. The eschatological
   tails are named as what each door *closes on*, never as what it is *about*.
2. **The secular door as the spine.** Lead with the secular reading alone; mention that
   three further doors exist for readers whose tradition already has a word for
   uncorrectable power.
3. **The method, not the content.** Post about *why* one argument was written four ways ---
   additive never reductive, a test of recognition and not a name and not a date --- and let
   the doors be the worked example.

Framing 1 is recommended: it announces all four without ranking them, and it keeps the
concession-free structure the pages themselves promise. Whichever is chosen, the post must
carry the refrain in Rule 7 order --- *offered not to be believed, but to be checked* --- and
``feedback_ablog_exclude_meaning`` governs the lead paragraph, which becomes the news-page
abstract.

**Not recommended:** a post that names the four traditions in its title.


The VVN rule LLoL stated (recorded for future sessions)
=========================================================

    "once the b16 is pushed, all new b16 work needs an increase in the VVN to make it
    distinct."

Recorded here as binding. The reason it matters more than housekeeping: once a draft is
public, its VVN is the **only** handle a reader or auditor has for saying *which* version
they read. Post-push edits under an unchanged VVN silently make every prior citation of that
VVN wrong --- the transparency (h\* = h0) failure, in miniature. This belongs in POST AA b17
and, if it is to bind future sessions rather than this one, in ``AHA/vvn-composition.md``.
It is **not** yet written to either; proposed, not applied.


Summary and recommendations (as presented to LLoL)
====================================================

**Push shape --- decided by LLoL:** fast-forward ``main`` to
``b16-revision-for-expert-review``, then push.

**The cleanup that answers "not a messed-up building site" is small and is not in the
prose.** Four label defects in one 38-line file (``hell/mm/b/16/index.rst``), plus one
rstcheck transition error in the superseded OOv2. Proposed, not applied.

**The b15 fix is smaller than a version bump and reaches further.** Complete the deliberate
keep-alive stub set in ``balospe-refs.bib`` --- ``Matheo-3`` … ``Matheo-8`` and ``SD4``,
following the existing ``Matheo-1``/``Matheo-2`` pattern with the same ``extranote``
deprecation marker. Repairs all 43 sites, including 38 in frozen archives that may not be
edited, and changes no paper text. Recommended **instead of** editing the b15 page.

**Pointers.** Add b16-extra to the existing b16 admonition (needs LLoL's one-line
characterisation). Add a b15 admonition on the b16 pattern. Treat the series-overview column
as a new convention requiring a ``gen_index()`` change, not a hand edit.

**Blog post: yes** --- framing 1, "one argument, four doors"; not a title naming the four
traditions.

**Still needed from LLoL:** mode/effort confirmation; the build-gate go-ahead; the
``Matheo-8`` mapping; the one-line b16-extra characterisation; and whether the b15 repair
takes the stub route or the text-edit route.


Build gate result (2026m09d11, incremental ``make dev``)
=========================================================

Build **exit 0**. 32 warnings, 4 errors --- and the distribution is the decision-relevant part.

.. list-table::
   :header-rows: 1
   :widths: 26 12 62

   * - Class
     - Count
     - Where
   * - ERROR
     - 4
     - All four in **one** append-only HELL llog,
       ``hell/ll/study/b/12/study_ll_2026m04d05_b12-formal-foundation-test.rst``
       (lines 51, 93, 96, 113) --- "Unexpected indentation." TELES-scope; the sanctioned
       path exists for exactly this.
   * - WARNING, public pages
     - 3
     - ``study/matheo/b15/b15-math-deadlock-mmv5.rst:1616`` "Title underline too short"
       (×2), and ``choice/ai-proposal/index.rst:520`` undefined label
       ``/buy-in/#the-8-ask-for-help``.
   * - WARNING, HELL
     - 29
     - Orphan-toctree notices on the b21 template family, unreadable ``webp`` figures in a
       frozen b19 SI draft, one undefined label.

**Nothing blocks the push.** Every error is inside HELL, in a file class that has its own
repair procedure.

``make check-bib`` re-run against the fresh build: **the stale-cache component cleared** ---
"build cache contains every key". The four nuclear-risk keys were cause (a), staleness. Cause
(b), silent truncation, is **excluded**. The 51 empty ``[]`` remain, unchanged.

Note that b15 is now implicated three separate ways --- 5 broken citations, 4 deprecated-key
citations, and the only public-page RST warning. One paper is carrying the whole public
defect load of the MMv5 series.


The citation question, measured --- "which is which"
======================================================

LLoL: *"the PDFs of the MMv5 series contain quite a few messed up cite references … I don't
want to plaster over a festering wound, but if it can be cleaned properly to help overall
healing, then maybe you can do that work."*

This was tested rather than assumed. **All 32 MMv5 PDFs were scanned for empty ``[]``:**

.. list-table::
   :header-rows: 1
   :widths: 55 45

   * - Result
     - Count
   * - MMv5 PDFs with zero broken citations
     - **31 of 32**
   * - MMv5 PDFs with broken citations
     - **1** --- ``b15-math-deadlock-mmv5.pdf``, exactly 5, matching the RST exactly

**The series is not festering. One paper is.** Reported plainly because the opposite
impression was the working assumption, and acting on it would have meant a series-wide sweep
that the evidence does not support.

But the second defect is the one LLoL actually saw, and it is *not* the empty brackets
==========================================================================================

Rendering ``Matheo-1`` in the b15 PDF produces this, inline in the body text::

   The argument proceeds within the PET (Pan-En-Theistic) axiom system ([Yah, Yas,
   everyone, LLoL, ClaudeOp46Max, Anthropic, and The Spirit of Boolean Truth, 2026]),
   which uses classical mereology and S5 modal logic to …

A twelve-word authorship chain, inline, as a citation entity. **CLAUDE.md forbids exactly
this:** *"DO NOT use ``Yah et al.`` as a citation entity … Using it in cross-references
dilutes it through overuse."* The full chain is a heavier version of the same error. This is
almost certainly the "messed up cite reference" LLoL noticed, and it is a **different defect
from the empty brackets** --- it resolves, so no checker flags it.

Meanwhile the *new* scheme is already correct::

   @misc{Matheo-b11,
     author = {{Loewe, L., AI ClaudeOp46-48Max, and Everyone}},
     title  = {Matheo-b11: PET, the Pan-En-Theism Model --- …},
     url    = {https://balospe.com/en/study/matheo/b11/},
     extranote = {… Supersedes deprecated Matheo-1.},
   }

``Matheo-b11`` … ``Matheo-b21`` all exist, all carry the short clean author line, a live URL
and an abstract. **The scheme is finished; only the migration never started.** Across the
whole site, ``:cite:`Matheo-b19``` appears in exactly four HELL llog lines; no paper cites
the new keys at all.

Why this reverses the earlier recommendation
----------------------------------------------

The previous entry recommended completing the keep-alive stubs *following the existing
Matheo-1/Matheo-2 pattern*. **That recommendation was wrong, and this is the correction.**
Copying that pattern would propagate the twelve-word chain to 43 further citation sites ---
it would silence the brackets and spread the defect LLoL dislikes. **That is precisely the
plaster over the festering wound.**

Where the defects actually sit, on public pages
-------------------------------------------------

.. list-table::
   :header-rows: 1
   :widths: 40 12 48

   * - Defect
     - Public sites
     - Location
   * - Empty ``[]`` (``Matheo-4/6/7``, ``SD4``)
     - 5
     - all in ``study/matheo/b15/b15-math-deadlock-mmv5.rst``
   * - Twelve-word chain (``Matheo-1/-2``)
     - 4
     - all in the same file
   * - Same defects in HELL
     - 46 + 69
     - frozen archives and append-only llogs --- **must not be edited**

**All nine public defective citation sites are in one file.** Everything else is in material
that may not be touched.

The proper cleaning, in two independent moves
-----------------------------------------------

**Move A --- bib-only, touches no paper, reaches the frozen archives.** Rewrite the author
field of the two existing stubs to the clean ``{{Loewe, L., AI ClaudeOp46-48Max, and
Everyone}}`` form, and write the seven missing stubs (``Matheo-3``…``-8``, ``SD4``) in that
same clean form, each with a correct title, a live ``note`` URL and an ``extranote`` naming
the superseding key. This is the only instrument that reaches the 115 archive sites at all,
since those files may not be edited. It changes **no paper text**, so it triggers no version
bump. It is cleaning, not plaster, *because the stubs are written correctly* --- the pattern,
not the act, was what made the earlier proposal plaster.

**Move B --- the migration on the one public page.** Change ``Matheo-1/-2/-4/-6/-7`` →
``Matheo-b11/b12/b14/b16/b17`` and ``SD4`` → a GNP SD4 key, in
``b15-math-deadlock-mmv5.rst`` only. This *is* a text edit to a published MMv5 paper, so it
carries the patch bump, the HELL variant and the pointer LLoL specified. Nine sites, one
file, mechanical.

**Mapping confirmed by LLoL:** ``Matheo-N`` → ``b(N+10)``, so ``Matheo-8`` → ``Matheo-b18``.
``SD4`` = GNP MMv3 Supporting Document 4, *Prophetic Geometry of the 2nd Exodus from BABL to
ZION*, which has a live page and a PDF.

**Move A alone is enough for every reader.** After it, ``Matheo-4`` renders as a proper,
correctly-attributed citation whose title says what it is. Move B is internal hygiene --- it
retires a deprecated key. That is the honest "which is which": Move A is the healing, Move B
is the tidying, and only Move B costs a version bump.


Separate find: a broken download button on a public page
==========================================================

While checking the b16 pointer, every ``</_file/…>`` link on every non-HELL page was tested
against the filesystem. Five did not resolve; four are false alarms (two inside RST comment
blocks on ``action/index.rst``, carrying their own AnyAims note; two are ``[path]/[filename]``
template examples inside a GNP llog). **One is real:**

``source/study/matheo/b16/index.rst:43`` offers **"Download OOv3 (PDF, 47 pages)"** →
``/_file/pdf/hell/mm/b/16/b16-riskymad-waiting-time_oov3_2026m07d25_16h14m53-47pages.pdf``,
**which does not exist and was never committed.**

Traced: the file *was* built, to ``build/pdf/…_2026m07d25_16h14m53.pdf`` (47 pages, timestamp
matching the link exactly). The copy from ``build/pdf/`` into ``source/_file/`` was simply
never made. The link was written against the intended destination and the step was skipped.

It is also stale: thirteen OOv3 builds sit in ``build/pdf/``, and the paper has grown
**47 → 68 pages** (newest ``2026m09d08_16h58m22``, 3.7 MB). So the public page advertises a
page count 21 pages out of date for a file that is not there.

No existing check catches this class: ``check-paths`` guards ``:doc:`` refs and self-URLs,
not ``</_file/…>`` hrefs. **This is a gap in the guard set**, and worth an AA entry
independent of tonight's fix.

Left for LLoL: which build is authoritative (the 68-page ``2026m09d08_16h58m22``, or the
``2026m09d04_17h02m14--Printed`` variant), since committing it adds 3.7 MB and the page-count
label must change with it. Not chosen by Claude.


Work executed this session (LLoL-approved items only)
=======================================================

.. list-table::
   :header-rows: 1
   :widths: 22 30 48

   * - Item
     - Status
     - Detail
   * - Build gates
     - **Done**
     - Incremental ``make dev`` exit 0; ``check-bib`` re-run; stale-cache component cleared.
   * - b16 HELL index repair
     - **NOT done**
     - LLoL: *"I'm wary of 2 as I don't know what exactly your repair means."* Held back
       pending an explanation of the four specific label changes. Correct call --- the
       proposal was stated as a conclusion, not as the diff it would produce.
   * - b16-extra pointer
     - **Done**
     - ``source/study/matheo/b16/index.rst``. Admonition retitled "Two newer drafts" →
       "**Three newer files** exist in HELL --- start with OOv3"; lead sentence extended; a
       **b16-extra MMv1r1p0 (2026m09d08)** block inserted after OOv3 (its companion) and
       before OOv2 (the superseded one), carrying LLoL's own wording verbatim. Rebuilt:
       no warnings on the file.
   * - b15 "same treatment"
     - **NOT done**
     - LLoL: *"I'm not sure that b15 needs the same treatment, because b15 improvements are
       merely repaired citations."* Correct --- and the measurement supports it: b15 has no
       newer HELL variant to point at. The b16 admonition exists because two later **drafts**
       exist. Nothing analogous exists for b15 unless Move B creates it.
   * - Blog post draft
     - **Done**
     - Framing 2 (secular door as spine) per LLoL's choice, not framing 1. See below.

The blog draft
----------------

``source/blog/posts/2026-09-11-staying-correctable-secular-DRAFT.rst`` --- ~800 words.
Follows the house DRAFT convention exactly: ``:orphan:`` with the ``.. post::`` directive
**commented out**, so it builds but does not enter the news feed. Confirmed after rebuild:
the page exists, and ``blog/index.html`` does not reference it.

Structure: leads with the secular door as the spine and runs the argument once
(correctability → power resists correction → the nuclear number → the AI problem → Big
Brother), then names the three other doors in one paragraph, in no ranked order, carrying
the two disciplines the pages themselves promise --- *additive and never reductive*, and
*a test of recognition, never a name and never a date*. Closes on the Rule 7 refrain in the
correct order, ending on the task: **"offered not to be believed, but to be checked."**

``og:card:description`` measured at **156 characters** (``feedback_ogcard_description_160``
limit is 160). Four title options supplied in a comment block, strongest marked ``[LIVE]``,
per the house pattern. ``rstcheck`` clean.

Incidental find while checking the draft convention: the two existing DRAFT posts
(``2026-06-10-destiny-fate-surrender-DRAFT``, ``2026-06-13-ismr-researchcity-origin-DRAFT``)
**are built and reachable by direct URL**, though ``:orphan:`` and absent from the feed.
Pre-existing since June, not introduced here, and not a blocker --- but LLoL may not have
intended them to be fetchable at all.


Standing decisions and what is still open
===========================================

**Decided by LLoL:** push shape (fast-forward); mode EDEN / effort max; the
``Matheo-N`` → ``b(N+10)`` mapping; framing 2 for the blog post; b16-extra wording; that b15
does not need the b16 admonition treatment.

**Open, and each one blocks a specific action:**

1. **Move A vs Move B on the citations** --- the corrected analysis above is the answer to
   LLoL's *"can you help me decide, which is which?"*. Move A (bib-only, clean stubs, reaches
   the 115 frozen archive sites, no version bump) is the healing; Move B (migrate the nine
   sites on the one public page, patch bump + HELL variant + pointer) is the tidying. Not
   started.
2. **The b16 HELL index repair** --- four label defects, now to be presented as a concrete
   diff rather than a conclusion.
3. **Which OOv3 PDF is authoritative** --- and therefore what the "Download OOv3 (PDF, 47
   pages)" button should say and point at. The paper is now 68 pages; the linked file was
   never committed.
4. **The ``</_file/…>`` link-guard gap** --- no check covers this class. Worth an AA entry.
5. **The ``ClaOp50Max`` VVN nick** --- still unconfirmed, still tracked in POST AA b17.

**Not done by Claude, by standing rule:** no commits, no branch moves, no pushes.


Prompt 3 --- decisions, and one mid-turn correction
=====================================================

LLoL's answers: **citations = both moves tonight**; **b16 HELL index = leave it for LLoL**;
**broken OOv3 button = leave it, open an AA entry**.

Then, mid-execution:

.. container:: verbatim-prompt

   ::

      Can you please open the rst file for your latest Blog draft? The link looks very
      boring and should be something like "how-to-avoid-creating-supervillains.rst", which
      would be an appropriate 9-11 post for the 25th 9-11 anniversary. Maybe even
      tweetworthy.


Move A executed --- the bibliography repair
=============================================

``source/_bib/balospe-refs.bib``. Key count **167 → 174**; duplicate check clean (which
matters here more than usual: per ``feedback_bib_duplicates_truncate_silently`` a single
duplicate would have silently truncated the file and dropped every entry after it, exit 0).

1. **Author line repaired on the two existing stubs.** ``Matheo-1`` and ``Matheo-2`` carried
   the twelve-word chain; both now carry ``{{Loewe, L., AI ClaudeOp46-48Max, and Everyone}}``,
   identical to the canonical ``Matheo-bNN`` entries.
2. **Seven missing stubs written** --- ``Matheo-3`` … ``Matheo-8`` and ``SD4`` --- in that
   same clean form.
3. **Titles are deliberately the current bNN titles**, not the retired ones. A reader who
   meets ``Matheo-6`` inside a frozen archive is shown *"Matheo-b16: RiskyMAD, the
   Existential-Risk Forecast & the MAP Escape"* and its live URL. The retired key is
   internal; it never reaches the page.
4. **URLs went in** ``note``\ **, not** ``url`` --- per ``feedback_bibtex_note_renders``,
   ``url`` frequently does not render for ``@misc`` while ``note`` does. **Flagged, not
   fixed:** the canonical ``Matheo-bNN`` entries put their URLs in ``url``, so they may be
   invisible in the rendered bibliography. Now testable for the first time, because b15 is
   the first paper to cite them.
5. **``YahEtAl-a1`` repaired too** --- same twelve-word chain, 4 frozen-archive sites, same
   one-line instrument. Included because leaving it would have meant fixing a defect
   everywhere except the one entry that names it.
6. The block's header comment was rewritten to state **why the stubs exist** (115 archive
   sites that may not be edited), so the next reader does not mistake them for clutter to
   delete.


Move B executed --- the migration on the one public page
==========================================================

``source/study/matheo/b15/b15-math-deadlock-mmv5.rst``:

.. list-table::
   :header-rows: 1
   :widths: 18 10 18 54

   * - Was
     - Sites
     - Now
     - Note
   * - ``Matheo-1``
     - 4
     - ``Matheo-b11``
     - had resolved, but to the twelve-word chain
   * - ``Matheo-4``
     - 2
     - ``Matheo-b14``
     - had rendered ``[]``
   * - ``Matheo-6``
     - 1
     - ``Matheo-b16``
     - had rendered ``[]``
   * - ``Matheo-7``
     - 1
     - ``Matheo-b17``
     - had rendered ``[]``
   * - ``SD4``
     - 1
     - ``SD4`` *(unchanged)*
     - **deliberately not migrated** --- ``SD4`` is not a retired Matheo key; it is the
       correct key for GNP MMv3 Supporting Document 4 and simply had no entry until Move A.

Deprecated ``Matheo-N`` citations remaining on the page: **0**.

The version bump, and a judgement call inside it
--------------------------------------------------

``AHA/vvn-composition.md`` was read before writing anything, because this is
"``ALWAYS ASK, DO NOT MAKE ASSUMPTIONS``" territory. Two findings:

**The existing MMv5 VVNs do not match the documented spec.** The spec is
``[ContentPrefix-]Regime_NickNameOfAssessor_StabilityCodeVRP_TimeStamp``. The b15 footer read
``dv_ClaOp48Max_MMv5_b15-math-deadlock-mmv5_2026m05d29`` --- content identifier *after* the
stability code rather than as a dash-joined prefix, and ``MMv5`` with no ``r#p#``. **All ~32
poured-floor MMv5 papers share this form**, so it is a consistent house variant, not a
one-off error. **Not corrected** --- restructuring 32 papers' VVNs is a site-wide decision
for LLoL, not a side effect of a citation patch. Logged here, not acted on.

**What was changed:** ``MMv5`` → ``MMv5r0p1`` in both the footer VVN and the LaTeX
``\paperheaderright`` variant line, keeping the house field order. ``p`` is the correct
counter: the spec defines it as *"minor corrections, technical fixes, bug fixes, format
corrections --- NO feature change."*

**The assessor was changed from ``ClaOp48Max`` to ``ClaOp50Max``, and this is the judgement
call.** The spec says the VVN *"tracks who issued the assessment."* Leaving ``ClaOp48Max`` on
an ``MMv5r0p1`` that ClaOp48Max never saw would attribute an assessment to an assessor who
did not make it --- the misattribution the rule exists to prevent. The cost is the opposite
risk: a reader could read it as the whole paper having been re-assessed. **It was not** ---
only citation plumbing changed, and the changelog says so in its first line. **LLoL can
reverse this in one edit if the other reading is preferred.**

The record, and why it is a changelog rather than a HELL variant
------------------------------------------------------------------

LLoL asked for "a pointer to the updated HELL file" and, separately, said b15 does not need
the b16 treatment "because b15 improvements are merely repaired citations." Both are right,
and they point different ways, so the house's own pattern was used to settle it: **b16
records its changes in changelog pages** (``b16-changelog-mmv5-to-oov2``,
``b16-changelog-oov2-to-oov3``) sitting next to the paper --- not by duplicating the paper.

Duplicating a ~2000-line paper into HELL to record an eight-token citation change would be
over-Complicating: a second near-identical copy that immediately begins to drift, and two
almost-identical papers for a reader to choose between, for a change invisible in the
argument. The changelog page carries the same information with none of that.

Created ``source/study/matheo/b15/b15-changelog-mmv5-citations.rst`` on the b16 pattern:
what was broken (both defects, with the rendered text quoted), what changed (the table
above), **how to check the page is telling the truth** (every diff should be a ``:cite:``
key, the variant line, or the VVN --- any other difference falsifies the claim), and why the
MMv5 PDF is kept rather than regenerated. Pointer and toctree entry added to
``source/study/matheo/b15/index.rst``.

**If LLoL still wants a full HELL variant, nothing here blocks it** --- the changelog would
become that variant's changelog unchanged.


The AA entry --- filed into b18 rather than a new b22
=======================================================

POST AA **b18** is *"build-warning gating and link guards"*, from the same 2026m08d03
path-case session, and its Background already contrasts what ``check-paths`` covers with what
it does not. That is exactly this finding's home; opening b22 would have split one topic
across two files. Two changes:

1. **New task (k4 s3):** the public "Download OOv3 (PDF, 47 pages)" button pointing at a PDF
   that was never committed, with the full trace and the decision LLoL still owes (which of
   thirteen builds is authoritative; 47 → 68 pages; 3.7 MB).
2. **Existing "Extend check-paths coverage" task extended** with a fifth known gap: raw
   ``</_file/…>`` hrefs are checked by nothing. Check C covers ``:doc:`` refs only. Noted
   that ``AHA/linting.md`` needs the same addition.

AA b18 VVN ``MMv1r0p0`` → ``MMv1r1p0`` (a task added, nothing removed → ``r``). Index row
``OPEN (8)`` → ``OPEN (9)``.


The blog draft, renamed and rewritten
=======================================

``2026-09-11-staying-correctable-secular-DRAFT.rst`` →
**``2026-09-11-how-to-avoid-creating-supervillains.rst``**.

``-DRAFT`` was dropped from the filename **on purpose**: the slug is the URL, and publishing
later must not change it. It stays unpublished by the same mechanism as before --- ``:orphan:``
plus a commented-out ``.. post::`` directive --- so publishing is one uncomment, with the URL
already stable.

**A concern was raised before writing, and the work was then delivered in full.** Tying an
argument to a mass-casualty anniversary reads as opportunistic when the anniversary is used
as a *device*. The mitigation built into the draft: the supervillain framing is kept strictly
**structural** --- *"a supervillain is not a personality; it is a position: power that
nothing left standing can correct"* --- and the date is given as a reason for restraint
rather than a hook. The opening says so outright: *"a day like this is not a hook and the
people it took are not an argument."* The post then pivots to the question the framing
actually earns --- not *who were the villains* but *what keeps producing the position*.

Framing 2 (secular door as spine) is preserved, as chosen: the argument runs once, the three
other doors are named in one unranked paragraph with the pages' own two disciplines
(*additive and never reductive*; *a test of recognition, never a name and never a date*), and
it closes on the Rule 7 refrain ending on the task. Six social drafts added in a comment
block, per the house pattern. ``og:card:description`` = **149 chars** (limit 160).
``rstcheck`` clean.


Result of the citation repair, measured
=========================================

Full rebuild after Moves A and B: **exit 0**, 32 warnings, 4 errors --- **identical to the
pre-repair build**. Nothing regressed.

.. list-table::
   :header-rows: 1
   :widths: 46 18 18 18

   * - Measure
     - Before
     - After
     - Change
   * - Empty ``[]`` citation sites, site-wide
     - 51
     - **7**
     - |rarr| 86% gone
   * - Files affected
     - 8
     - **5**
     - --
   * - Empty ``[]`` on **public** pages
     - 5
     - **0**
     - **cleared**
   * - Twelve-word chain in **citations**, b15 page
     - 4
     - **0**
     - **cleared**
   * - ``.bib`` keys
     - 167
     - 174
     - +7, no duplicates

The b15 citations now render as **"[Loewe, L., AI ClaudeOp46-48Max, and Everyone, 2026]"**.

**The chain does still appear once on the b15 page --- correctly.** It is in the Authorship
statement, which is exactly where CLAUDE.md says it belongs: *"the full authorship chain is
defined in each paper's Authorship statement and honored there."* The defect was the chain
leaking into *citations*; that is gone.

The claim in the changelog was checked rather than asserted
-------------------------------------------------------------

The changelog states that every difference between MMv5 and MMv5r0p1 is a ``:cite:`` key,
the LaTeX variant line, or the footer VVN. The diff was then read line by line: **10 changed
lines --- 8 citation keys, 1 variant line, 1 VVN. Nothing else.** The falsification test the
page offers its own reader passes.

What is left, and deliberately not guessed at
-----------------------------------------------

7 sites in 5 frozen HELL files, all using an **undocumented ``-m`` suffix**: ``Balospe-1-m``
(3), ``Lawvere1973-m`` (2), ``BenciDiNasso2003-m`` (1), ``Matheo-1-m`` (1). CLAUDE.md writes
``[Matheo-b11-m]_`` with both a ``-m`` suffix and docutils bracket syntax, so a second
citation mechanism is in play that is not documented anywhere reachable. **Two of the four
are external literature** (Lawvere 1973; Benci & Di Nasso 2003), whose bibliographic data
must not be invented. Filed in POST AA b22 with an explicit *ASK LLoL* gate.


Incidental finding: the site's most-repeated sentence runs backwards
======================================================================

Found while auditing the b15 diff line by line --- the last migrated line read *"critiqued,
not believed."*

**Language Rule 7's refrain corollary** requires the disbelief clause first and the sentence
to **end on the task**: *"offered not to be believed, but to be checked"* --- never *"offered
to be checked, not believed"*, because ending on "not believed" invites superficial dismissal
while ending on the task leaves the reader with the ZION action.

Measured across non-HELL pages:

.. list-table::
   :header-rows: 1
   :widths: 55 20 25

   * - Form
     - Sites
     - Files
   * - ``critiqued, not believed`` (reversed)
     - 102
     - --
   * - ``tested, not believed`` (reversed)
     - 7
     - --
   * - ``checked, not believed`` (reversed)
     - 2
     - --
   * - **Total reversed**
     - **111**
     - **39**
   * - Required order (``not to be believed, but to be …``)
     - **7**
     - --

**This is inherited debt, not rule-breaking.** The refrain corollary entered ``CLAUDE.md`` on
2026m07d14 (commit ``5c504fa``); the MMv5 floor was poured 2026m05d29. Every one of the 111
sites was correct by the standard in force when written. Language Rule 5 sets the precedent
for exactly this case --- its own ordering rule "applies moving forward; no need to sweep
existing text."

**Not fixed, and not fixable as a side effect.** 111 edits across 39 published papers, each
needing a version bump, for a wording change that alters no claim, would be textbook
over-Reach --- and it was not asked for. Filed as POST AA b22 with the arguments on both
sides laid out and the decision left to LLoL. The one thing flagged as not-an-option is
silence: the refrain also sits in ``og:card:description`` metadata, so it is what a reader
meets *before* arriving, which is precisely where the rule's stated reason bites hardest.
A middle path is offered there: fix the card/meta fields first, leave body text for later.

**BABL Danger check on this finding, stated plainly:** a rule that 111 existing public sites
contradict is in an unstable state. Either it needs an explicit grandfather clause like Rule
5's, or it needs a scheduled sweep. Leaving it unresolved means the project's most visible
sentence quietly disagrees with the project's own stated reasoning about that sentence ---
which is the *form-looks-right-but-substance-drifted* pattern the Core Principle names as the
most dangerous because it is invisible.


Bookkeeping done alongside
============================

- **POST AA b19** (Matheo citation infrastructure): task 2 marked **partially done** (public
  portion complete), and its standing instruction to **delete** the deprecated entries was
  **corrected** --- deleting them would re-break ~115 archive sites that cannot be edited to
  point elsewhere. They are now permanent archive-compatibility shims. Task 3 narrowed: the
  "(Yah et al., 2026)" rendering it cites came from the *author field*, now fixed, so the
  display-style decision is smaller than it looked. Also recorded there: the canonical
  ``Matheo-bNN`` entries put their link in ``url``, and **the rebuild confirms no ``<a href>``
  renders in the bibliography entry** --- consistent with ``feedback_bibtex_note_renders``.
  The links are invisible. Flagged, not fixed.
- **POST AA b18**: new k4 task (the uncommitted OOv3 PDF behind a live download button) and a
  fifth known gap added to the ``check-paths`` coverage task (raw ``</_file/…>`` hrefs).
  VVN ``MMv1r0p0`` |rarr| ``MMv1r1p0``; index row ``OPEN (8)`` |rarr| ``OPEN (9)``.
- **POST AA b22** created and registered (table row, range note ``b11--b21`` |rarr|
  ``b11--b22``, and the Active AAs toctree). ``check-paths`` Check D passes.

**One expected check-paths finding remains:** ``b15-changelog-mmv5-citations`` "binds to no
document (git view)". That is correct and self-clearing --- the file is new and untracked, and
Check C reads git's index rather than the disk. **It is also the guard working exactly as
designed:** if this file were never ``git add``-ed, the page would be missing from navigation
on the deploy server while looking fine locally. It clears the moment LLoL stages it.


Final build confirmation --- and a number that must not be misread
====================================================================

A fourth build was run after the AA bookkeeping. **Exit 0, 0 errors, 24 warnings, none on
any file touched tonight.**

**The 24 is not a site-wide figure and must not be quoted as one.** That pass re-read
exactly **three documents** --- ``_post/aa/b/19``, ``_post/aa/b/22``, ``_post/aa/index`` ---
because nothing else had changed since the previous build. Its 24 warnings are the
carried-over consistency-check warnings from HELL (five ``document isn't included in any
toctree`` on the b21 template family, thirteen ``image file not readable`` in a frozen b19 SI
draft, and a handful of undefined labels). Its 0 errors likewise means only *"none in those
three documents"* --- the four ``Unexpected indentation`` errors in
``hell/ll/study/b/12/study_ll_2026m04d05_b12-formal-foundation-test.rst`` are still in the
source, and the ``Title underline too short`` warning at
``study/matheo/b15/b15-math-deadlock-mmv5.rst:1616`` is still there too.

**The authoritative site-wide state is the third build** (the full pass after Moves A and B):
**exit 0, 32 warnings, 4 errors** --- byte-identical in shape to the pre-repair baseline, which
is the actual finding: *the citation repair regressed nothing.*

Recorded explicitly because an incremental build's totals look like site totals and are not,
and a llog that quoted "0 errors" here would be laying a trap for its own future reader.


Prompt 4 --- the three warnings, the assessor reversal, and the refrain text
=============================================================================

.. container:: verbatim-prompt

   ::

      OK Thanks. What is there to do to fix this "- 3 public-page warnings, all pre-existing
      (b15 underline x2, one undefined label on choice/ai-proposal)"? Is that easy to do? If
      yes, do, else delay. - 1. Leave your b15 assessor on 48max, because the 50Max work is
      only cosmetic and not content so far. 2. The refrain: can you give me the full current
      refrain sentence(s) and the full proposed alternative? I agree that that matters.
      Whether it should get its own commit or should go in with the changes you did above is
      another question. ---- Am I right to assume that Apart from X1 completing all the b16
      cleanup and X2 reviewing the new blog post, ALL other necessary cleanup work is done
      after the above bits are resolved?

The three public-page warnings --- both fixed, both trivial
------------------------------------------------------------

**1. b15 "Title underline too short" (2 reports, 1 defect).** The title *"12. The Semantics
of nothing and the Problem of Evil"* is 54 characters; its underline was 53. One character
added. TELES-scope: pure formal RST, no content.

**2.** ``choice/ai-proposal/index.rst:531`` **--- and this one was not cosmetic.** The source
read::

   :ref:`the ~$8 ask for help on the buy-in page </buy-in/#the-8-ask-for-help>`

A ``:ref:`` role pointed at a **URL fragment**, which ``:ref:`` cannot resolve --- it takes a
label, not a path-and-anchor. The consequence is the silent-failure mode POST AA b18 exists
to describe: **the text rendered as dead plain text, with no link at all**, while the build
stayed green. The correct label existed the whole time --- ``_buy-in-8-dollar-ask`` at
``source/buy-in/index.rst:173``, heading *"The ~$8 ask for help"*. Retargeted to it.

Rebuild: both files re-read, **zero warnings from either**. **Public-page warnings site-wide:
3 → 0.**

Assessor reversed, on LLoL's instruction
------------------------------------------

    *"Leave your b15 assessor on 48max, because the 50Max work is only cosmetic and not
    content so far."*

Done: ``dv_ClaOp48Max_MMv5r0p1_b15-math-deadlock-mmv5_2026m09d11``. The patch counter and
date still move; the assessment on record does not. The reasoning is now stated in the
changelog itself, so the choice is auditable rather than invisible.

**This also settles the question the earlier entry left open** --- Claude's reading
(the VVN tracks who issued the assessment, so a new patch needs a new assessor) was
**overruled by a better distinction**: a patch that changes no content issues no new
*assessment*, so the assessor field should not move. Recorded as a correction to the
reasoning in this llog, not merely as a preference.

Knock-on correction, caught before it shipped
-----------------------------------------------

Fixing the underline **falsified the changelog's own central claim.** That page told its
reader every difference between MMv5 and MMv5r0p1 would be one of three kinds: a ``:cite:``
key, the LaTeX variant line, or the footer VVN. The underline is a fourth.

A changelog whose falsification test fails on its own diff is worse than no changelog --- it
invites a reader to check, and then fails the check. Updated to name **four** kinds, to state
that the **heading text is unchanged** and only the row of ``=`` beneath it grew by one
character, and to carry the assessor reasoning. The b15 index pointer was updated to match
("citations and one syntax fix", not "citations only"). Diff re-audited afterwards: 8
citation keys, 1 variant line, 1 underline, 1 VVN. The claim holds again.

The refrain, measured properly
--------------------------------

The earlier count of 111 was **an undercount** --- that regex did not allow variable
whitespace. Correct figure: **116 sites**, split in the way that decides the cost:

.. list-table::
   :header-rows: 1
   :widths: 58 20 22

   * - Location
     - Sites
     - Files
   * - ``.. meta::`` / ``og:card:description`` / ``:keywords:``
     - **15**
     - 14
   * - Visible body text in published papers
     - **101**
     - 39

**It is not 116 bespoke edits.** Two sentence shapes cover 76 of them, and a single
mechanical transform covers essentially all:

    ``X to be <VERB>, not believed``  |rarr|  ``X not to be believed, but to be <VERB>``

.. list-table::
   :header-rows: 1
   :widths: 8 46 46

   * - N
     - Current
     - Proposed
   * - 66
     - The system is designed to be critiqued, not believed.
     - The system is designed **not to be believed, but to be critiqued.**
   * - 10
     - Offered to be critiqued, not believed.
     - **Offered not to be believed, but to be critiqued.**
   * - 3
     - This axiom system is designed to be critiqued, not believed.
     - This axiom system is designed **not to be believed, but to be critiqued.**
   * - 3
     - The formal model is Matheo-b16, built to be checked, not believed.
     - The formal model is Matheo-b16, built **not to be believed, but to be checked.**
   * - 2
     - The claim is built to be tested, not believed.
     - The claim is built **not to be believed, but to be tested.**
   * - 2
     - The framework is published to be critiqued, not believed.
     - The framework is published **not to be believed, but to be critiqued.**

The 10x form becomes **literally** the canonical sentence written into Language Rule 7 ---
independent evidence that the transform is the right one.

**A stronger option offered for the dominant form**, because a sentence used 66 times earns
attention to its rhythm, not just its compliance::

    The system is not designed to be believed. It is designed to be critiqued.

Two sentences rather than a subordinate clause. Same ordering, harder landing.

**Recommended sequencing: a separate commit, after the push.** It touches 39 published
papers, would swamp tonight's diff, and raises a 39-patch-bump question that is a larger
decision than anything done tonight. The 15 metadata sites are available as a clean
standalone commit with no version-bump argument attached, if a first bite is wanted.

Answer to LLoL's X1/X2 question: four items, not two
------------------------------------------------------

Recorded here because the question was about completeness, and answering it optimistically
would have been the more comfortable and less useful reply.

- **X1** --- the b16 HELL index cleanup (four-point diff above).
- **X2** --- review of the blog post.
- **X3 --- the OOv3 download button is still broken.** ``study/matheo/b16/index.rst`` still
  offers "Download OOv3 (PDF, 47 pages)" for a file that does not exist and never did.
  Filing it in AA b18 was LLoL's call and is legitimate --- but it means the push ships a
  **public page making a promise it cannot keep**, on the very paper being cleaned up so it
  does not look like a building site. One decision unblocks it.
- **X4** --- the refrain decision above.

Correctly deferred, not outstanding: the 7 ``-m`` keys (AA b22, gated on LLoL) and the
``</_file/…>`` guard gap (AA b18).

Mechanical: ``git add`` the new paths, or ``b15-changelog-mmv5-citations`` is missing from
navigation on the deploy server while looking correct locally. ``check-paths`` already says so.


Prompt 5 --- the VVN "monstrosity", and the refrain decision
==============================================================

.. container:: verbatim-prompt

   ::

      Thanks.  About 2. "dv_ClaOp48Max_MMv5r0p1_b15-math-deadlock-mmv5_2026m09d11" looks
      like a monstrosity: where do you need it? --- 3. I like your proposals from the table.
      However, the 2-sentence variant is longer and both belong in one sentence. Leave it as
      is for now. Maybe future work will find a better slogan, but now isn't time for such
      evaluation work. -- Don't touch the published papers. Put that Refrain qestion for the
      Matheo papers on a respective AA entry, k4.

Where the VVN is needed --- one place, and LLoL is right about the shape
-------------------------------------------------------------------------

**Used exactly once per page.** It is the ``|content-vvn|`` substitution defined in the
FOOTER FORM block (``b15-math-deadlock-mmv5.rst:1956``), consumed by a single template,
``source/_templates/include-file/footer/page-footer-stability.rst``, whose entire body is::

   **Content stability** --- Content is variant |content-vvn|

Rendered, that is one line in the page footer: *"Content stability --- Content is variant
dv_ClaOp48Max_MMv5r0p1_b15-math-deadlock-mmv5_2026m09d11."* Nothing else reads it. It is not
a key, not an anchor, not a filename --- changing it breaks nothing.

**And it is genuinely redundant, twice over.** It repeats ``mmv5`` (once inside the slug,
once as the StabilityCode) and restates the filename, which the page's own URL already
carries. Measured across the 320 pages defining a ``|content-vvn|``, **three shapes coexist**:

.. list-table::
   :header-rows: 1
   :widths: 12 46 42

   * - Pages
     - Shape
     - Status
   * - **267**
     - ``dv_ClaOp48Max_MMv1_2026m06d03``
     - four fields --- the documented spec core
   * - a few
     - ``paper-dv_ClaOp47Max_MMv1r0p0_2026m04d21_15h42``
     - the spec's **dash-joined ContentPrefix** form, which
       ``AHA/vvn-composition.md`` actually documents
   * - **51**, incl. **all 48 Matheo papers**
     - ``dv_ClaOp48Max_MMv5_study-matheo-b11_2026m05d29``
     - slug spliced in as a fifth field --- **not in the spec**

So the bloated form is the site **minority**, and the shorter form LLoL's reaction implies is
already what 267 other pages do. The spec-conforming equivalent here would be
``b15-math-deadlock-dv_ClaOp48Max_MMv5r0p1_2026m09d11``, or plainly
``dv_ClaOp48Max_MMv5r0p1_2026m09d11``.

**NOT changed, on LLoL's own stated principle.** Editing b15's alone splits it from its 47
siblings; editing all 48 is a site-wide decision. LLoL's ruling two sentences later ---
*"now isn't time for such evaluation work"* --- governs this as squarely as it governs the
refrain. Filed as POST AA b22 task 2 (k3 s1) with all three shapes measured, so the next
session starts from data rather than from the same surprise.

The refrain --- wording decided, sweep parked
-----------------------------------------------

LLoL approved the **single-sentence transform** from the table and **rejected the
two-sentence variant** that had been offered for the 66x form: *"the 2-sentence variant is
longer and both belong in one sentence."*

**The rejection is the right call and the proposal was the weaker one.** The two-sentence
version was argued on rhythm --- that a sentence used 66 times earns attention to how it
lands. But the refrain's whole function is to be *one portable clause* that drops into a
meta description, a card, a footer and a body paragraph unchanged. Splitting it into two
sentences makes it longer at exactly the sites with hard character limits
(``og:card:description`` is capped at 160) and breaks its portability --- which is a
structural cost, against a stylistic gain. Recorded as a correction to Claude's proposal,
not as a mere preference.

**Constraints recorded as binding:** *"Don't touch the published papers"* --- nothing in
``source/study/matheo/`` is to be edited for this --- and *"Leave it as is for now."*

Filed in POST AA b22 at **k4** as instructed, in the specific state LLoL's answer creates:
**settled wording, parked work.** The distinction is deliberate --- whoever picks this up
should not re-litigate the wording, only the timing, and whether the corollary instead
deserves the explicit grandfather clause Language Rule 5 gave its own ordering rule. The 15
metadata sites are recorded there as the separable first bite whenever it is scheduled.

AA b22 is now OPEN (3): refrain (k4 s1), VVN shape (k3 s1), ``-m`` keys (k3 s1). Title and
index row updated to match; ``check-paths`` Check D passes.


Prompt 6 --- wrap-up: VVN shortened, refrain scope clarified, blog opened for review
======================================================================================

.. container:: verbatim-prompt

   ::

      OK, let's wrap up. If you change the b15 paper, then use
      dv_ClaOp48Max_MMv5r0p1_2026m09d11. as a VVN. Did you do the other refrain changes? -
      Can you please open the blog entry so I can review it?

.. admonition:: Correction to an earlier entry in this llog (append-only, so appended)
   :class: warning

   The Prompt 4 section above records *"Done:
   ``dv_ClaOp48Max_MMv5r0p1_b15-math-deadlock-mmv5_2026m09d11``."* **That is now
   superseded.** LLoL directed the short form on 2026m09d11, and the b15 footer now reads
   ``dv_ClaOp48Max_MMv5r0p1_2026m09d11``. The original line is left standing per the
   append-only rule; this box is the correction.

VVN shortened, on LLoL's instruction
--------------------------------------

``dv_ClaOp48Max_MMv5r0p1_2026m09d11`` --- the four-field spec core, dropping the spliced-in
slug. b15 thereby leaves the 51-page non-conforming minority and joins the 267-page majority.
Rebuild after the change: **exit 0, zero public-page warnings.** Nothing referenced the old
string except prose quotations in AA b22 and this llog, which correctly quote what was
changed.

**Note for the VVN-shape task in AA b22:** b15 is now the *only* one of the 48 Matheo papers
in the short form. That is a deliberate, LLoL-directed exception, not drift --- recorded here
so a later reader does not "restore consistency" by reverting it. If anything, b15 is now the
worked example of the target shape.

"Did you do the other refrain changes?" --- No, and here is the reading that caused it
-----------------------------------------------------------------------------------------

**Answered plainly: no.** The instruction *"Leave it as is for now"* was read as **global**,
and *"Don't touch the published papers. Put that Refrain question for the Matheo papers on a
respective AA entry"* was read as naming where the parked question belongs, not as carving
out a non-paper remainder to act on.

LLoL's follow-up question implies the other reading: that *published papers* meant the Matheo
papers specifically, leaving the **non-paper pages** available. Both readings are defensible
from the words; the conservative one was taken, and taking it meant doing nothing rather than
editing after being told to leave it.

**The scope that reading leaves unaddressed --- 10 sites in 8 files**, none a published paper,
so no version-bump question arises for any of them:

.. list-table::
   :header-rows: 1
   :widths: 10 90

   * - Sites
     - File
   * - 2
     - ``source/study/index.rst``
   * - 2
     - ``source/action/audit-the-math/index.rst``
   * - 1
     - ``source/_templates/include-file/matheo-overview-glance.rst``
   * - 1
     - ``source/faq/index.rst``
   * - 1
     - ``source/matheology/heaven/index.rst``
   * - 1
     - ``source/blog/posts/2026-03-14-pet-axioms-published.rst``
   * - 1
     - ``source/action/jobs/153-review-and-alternatives_2026m04d10.rst``
   * - 1
     - ``source/dict/framework.rst``

An 11th match sits inside AA b22 itself, which **quotes the wrong form deliberately** and
must not be swept.

Offered to LLoL as a two-minute mechanical pass on explicit say-so. **Not done unasked** ---
the standing instruction was to leave it, and a follow-up question is not an instruction.

Blog draft opened for review
------------------------------

Printed in full for LLoL. Points raised for the review, rather than left for LLoL to find:

1. **The post is written in LLoL's first person** (*"I want to write carefully"*, *"I would
   very much rather be shown wrong"*) because ``:author:`` is LLoL. Those are **Claude's
   words placed in LLoL's mouth** --- the one thing in this session that cannot be checked
   by anyone but LLoL. Flagged first for that reason.
2. **No number is quoted.** The nuclear result is given as *"a median time to catastrophe"*
   with no figure, deliberately: b16 is mid-revision, and a post pinned to 19 years or 1-in-40
   would need re-editing when the paper moves. The linked pages carry the figures.
3. **``2001m09d11``** follows Language Rule 6, which admits no exception --- but this is a
   public post about a date most readers know in another format. Rule-compliant; flagged as a
   judgement call, not corrected.
4. **No buy-in / backer call to action**, unlike the other posts. Left out on purpose: a
   post touching this anniversary that also asks for money would undercut the restraint the
   opening claims. LLoL may disagree.
5. Six social drafts supplied in a trailing comment block, per the house pattern.


Prompt 7 --- X4 executed: the non-Matheo refrain sweep
========================================================

.. container:: verbatim-prompt

   ::

      Do the mechanical fix X4.

**10 sites in 8 files**, all outside ``source/study/matheo/``. The published papers were not
touched, as instructed. Transform applied exactly as decided:
``X to be <VERB>, not believed`` |rarr| ``X not to be believed, but to be <VERB>``.

.. list-table::
   :header-rows: 1
   :widths: 40 30 30

   * - File
     - Was
     - Now
   * - ``study/index.rst``
     - offered to be **critiqued, not believed**
     - offered **not to be believed, but to be critiqued**
   * - ``study/index.rst``
     - Offered to be **tested, not believed**
     - Offered **not to be believed, but to be tested**
   * - ``action/audit-the-math/index.rst`` (``:description:``)
     - offered to be checked, not believed
     - offered not to be believed, but to be checked
   * - ``action/audit-the-math/index.rst``
     - offered to be **tested, not believed**
     - offered **not to be believed, but to be tested**
   * - ``_templates/…/matheo-overview-glance.rst``
     - offered to be checked, not believed
     - offered not to be believed, but to be checked
   * - ``faq/index.rst``
     - offered to be **tested, not believed**
     - offered **not to be believed, but to be tested**
   * - ``matheology/heaven/index.rst``
     - offered to be critiqued, not believed
     - offered not to be believed, but to be critiqued
   * - ``blog/posts/2026-03-14-pet-axioms-published.rst``
     - designed to be critiqued, not believed
     - designed not to be believed, but to be critiqued
   * - ``action/jobs/153-review-and-alternatives…``
     - the framework should be *critiqued, not believed*
     - the framework is *not to be believed, but to be critiqued*
   * - ``dict/framework.rst``
     - meant to be tested, not believed
     - meant not to be believed, but to be tested

**One rewrite needed more than the mechanical transform.** ``jobs/153`` read *"the framework
should be critiqued, not believed"* --- and *"should be not to be believed"* is not English.
Recast to *"the framework is not to be believed, but to be critiqued"* --- the verb changes
from "should be" to "is" --- preserving the
italics and the sentence's role as a summary of the b17 claim. Flagged because it is the one
line in the sweep where a human judgement replaced a substitution.

**No ``og:card:description`` field was touched**, so the 160-character rule
(``feedback_ogcard_description_160``) is not engaged anywhere in this sweep. The one metadata
edit is a plain ``:description:``, which has no such cap.

Verification: **zero reversed-order occurrences remain outside ``source/study/matheo/``**,
except the single deliberate quotation inside AA b22 itself, which documents the wrong form
and must keep it.

A pre-existing defect surfaced by the sweep, and fixed
--------------------------------------------------------

Editing the shared ``matheo-overview-glance.rst`` forced ``source/study/matheo/index.rst`` to
be re-read for the first time in several incremental builds, and it emitted
``Title underline too short`` at line 34: *"Start here --- one argument, four doors"* is 39
characters over a 38-character underline. **Pre-existing, not caused by the sweep** --- it had
simply been sitting in a cached page nobody had re-read.

Fixed (one ``=``), because it is the same trivial class LLoL had already ruled on (*"Is that
easy to do? If yes, do"*), and because leaving it would have made the
*"public pages: 0 warnings"* statement false the moment anyone rebuilt from clean.

Note for whoever pours the Matheo floor next: ``source/study/matheo/index.rst`` is
hand-curated (``project_matheo_index_hand_curated``), and ``make matheo-floor`` strips
hand-curation --- so this one-character fix, like the rest of the curation, will need
re-applying or baking into ``gen_index()``.

Final build state
-------------------

**Exit 0. 24 warnings, all in HELL. 0 errors reported this pass. 0 public-page warnings.**

The authoritative full-site error figure remains **4**, all in
``hell/ll/study/b/12/study_ll_2026m04d05_b12-formal-foundation-test.rst`` (append-only,
TELES-scope) --- they are absent from this pass only because that file was not re-read.


Prompt 8 --- the b15 in-place patch is WITHDRAWN, and the stash recovered
==========================================================================

.. container:: verbatim-prompt

   ::

      Thanks. Sorry, I tried to stash something in git and apparenly caught MUCH more than I
      intended to. Can you undo that? - I only wanted to stash all your work on the b15
      paper, because I saw that you modified the copy in the matheo study folder instead of
      modifying it in a new HELL variant designed to absorb future changes. Starting a new
      copy in the matheo folder would be a BAD precedent that would become very confusing,
      so I can't commit that to public. Please stash the respective files for later analysis
      and propose what and how to commit whil I edit the blog post.

LLoL is right, and this is the more important half of the entry
-----------------------------------------------------------------

**Move B was a mistake in placement, and the llog should say so plainly rather than softly.**
Earlier in this session Claude reasoned its way to editing
``source/study/matheo/b15/b15-math-deadlock-mmv5.rst`` **in place**, and even argued *against*
making a HELL variant --- on the grounds that duplicating a 2000-line paper to record an
eight-token citation change was over-Complicating. That argument was not wrong about
duplication cost. **It was wrong about what the study folder is.**

``source/study/matheo/`` is the **poured floor**: the published, citable surface. HELL is
where variants live and absorb change. Editing the floor in place, even for a defensible
reason, establishes that *paper revisions may happen in the public folder* --- and the next
revision, and the one after, then have a precedent to point at. The cost is not this diff; it
is that the floor stops being a floor. LLoL: *"Starting a new copy in the matheo folder would
be a BAD precedent that would become very confusing."*

What makes this a genuine miss rather than a judgement call: the session had **already
established** that ``feedback_supersede_dont_overwrite`` governs here, and had **already
noted** that b16 keeps its variants in HELL and points at them from the floor. The pattern
was in front of Claude and was reasoned around rather than followed.

Recovery, done without destroying anything
--------------------------------------------

The accidental stash had captured **all 17 modified files**, not just b15. The 4 untracked
paths (this llog, AA b22, the blog draft, the b15 changelog) were untouched, since plain
``git stash`` does not take untracked files.

1. ``git stash apply`` --- **apply, not pop** --- restored all 17 while leaving the original
   stash intact as a safety net. It is now ``stash@{1}``, still holding the complete
   pre-recovery state.
2. ``git stash push -u -- source/study/matheo/b15/`` moved **only** the b15 work into a new
   ``stash@{0}``, carrying an explicit message so a later reader knows why it exists and what
   must happen to it. Contents: ``b15-math-deadlock-mmv5.rst``, ``b15/index.rst``, and the
   untracked ``b15-changelog-mmv5-citations.rst``.
3. ``stash@{2}`` is LLoL's own older *"Presskit-prepare-start"* stash on ``main``, untouched.

**Nothing was dropped.** Three stashes stand; the redundant ``stash@{1}`` is LLoL's to drop
once satisfied.

The finding that makes the withdrawal cost-free
-------------------------------------------------

With b15 reverted to its committed state --- still citing ``Matheo-1``, ``Matheo-4``,
``Matheo-6``, ``Matheo-7``, ``SD4`` --- the page was rebuilt and measured:

.. list-table::
   :header-rows: 1
   :widths: 58 20 22

   * - On the b15 page, paper untouched
     - Before Move A
     - Now
   * - Empty ``[]`` citations
     - 5
     - **0**
   * - Twelve-word chain inside citations
     - 4
     - **0**
   * - Lines changed in the published paper
     - --
     - **0**

**Move A alone fixes the entire reader-facing defect.** This was stated earlier in the session
--- *"Move A alone is enough for every reader; Move B is internal hygiene"* --- and it is now
demonstrated rather than argued. So the withdrawal costs **nothing a reader can see**. What it
defers is only the retirement of deprecated keys in the source, which is hygiene, and which AA
b19 now records must be done **in a HELL variant**.

Two consequences recorded
---------------------------

**1. AA b19 task 2 corrected** from *"PARTIALLY DONE"* to **"ATTEMPTED AND WITHDRAWN"**, with
the constraint now written into the task itself: the ``Matheo-N`` |rarr| ``Matheo-bNN``
migration must be done as a **new HELL variant** of each affected paper, never as an in-place
edit of the poured floor. The note that the reader-facing damage is already repaired by the
bibliography work is recorded there too, so nobody re-opens this as urgent.

**2. The b15 "Title underline too short" warning is back** (2 reports, 1 defect, line 1616 ---
pre-existing, predating this session). It was fixed as part of the withdrawn patch and has
returned with it. **Deliberately not re-applied:** it is a one-character TELES-scope fix, but
it lives inside the published paper LLoL has just ruled off-limits, and re-editing that file
unilaterally right after the ruling would repeat the error in miniature. Left for LLoL to
direct --- either as part of the eventual HELL variant, or as an explicitly permitted
TELES exception.

Public-page warnings therefore stand at **2 reports of 1 pre-existing defect**, not 0.
Stated rather than quietly rounded down.


Prompt 9 --- the b15 HELL variant, and pointers from the floor
================================================================

.. container:: verbatim-prompt

   ::

      OK. Since the b15 paper WILL NEED a substantial round of editing, like the b16 paper is
      undergoing now, can you create a corresponding copy for "this is where new b15 changes
      go in HELL" that is equivalent to the b16 paper in HELL? Also, include a pointer in the
      MMv5 indices that point to where improvements accumulate, so the HELL links are not
      lost.

The variant number: OOv2, and the reason it is not OOv1
--------------------------------------------------------

This was checked rather than assumed, because a wrong number here is the kind of thing that
becomes permanent. **Two independent lines of evidence both give OOv2:**

1. **b15 already has an OOv1.** ``iv_LLoL_OOv1_2026m04d14`` --- LLoL's minor edits on top of
   MMv3 --- is stamped in ``math/mmv3/b15-structural-deadlock_mmv3_2026m04d07.rst`` (lines 16
   and 1724) and is *still referenced in the MMv5 floor paper itself* (line 1912). Naming the
   new variant OOv1 would collide with a designation already in public circulation.
2. **b16 numbered exactly the same way.** Its HELL tree holds ``oov2/`` and ``oov3/`` and no
   ``oov1/`` --- but an OOv1 plainly existed: ``b16-changelog-mmv5-to-oov2`` discusses *"the
   MMv3 |rarr| OOv1 revision session"* and what *"MMv5 and the OOv1 draft"* each computed. So
   b16's sequence was MMv3 |rarr| OOv1 |rarr| OOv2 |rarr| OOv3, and b15 starting at OOv2
   mirrors it.

Recorded in a naming note inside the new file, so the next reader does not re-derive it.

What was created
------------------

``source/matheology/hell/mm/b/15/math/oov2/b15-structural-deadlock_oov2_2026m09d11.rst``
--- 1979 lines, following b15's own path convention (``math/<variant>/b15-structural-deadlock_<variant>_<date>.rst``).

**Seeded from the stash, not retyped.** ``git show 'stash@{0}:…'`` was used so the variant
starts from the exact bytes of the withdrawn patch --- the eight migrated ``Matheo-bNN``
citations and the underline fix --- rather than from a re-derivation.
``feedback_port_copy_exact_not_rederive`` applies directly, and this is the case it exists for.

Adjustments made to turn a floor copy into a HELL variant, each checked against what b16 and
b15's own MMv3 actually do rather than assumed:

.. list-table::
   :header-rows: 1
   :widths: 34 66

   * - Change
     - Why
   * - Added ``:orphan:``
     - every b15 and b16 HELL paper is orphan; the index toctree carries them
   * - Label |rarr| ``_hell-mm-b15-oov2-structural-deadlock``
     - the seed carried ``_b15-math-deadlock-mmv5``, which would have **duplicated the
       floor's label** and silently broken cross-references to the floor
   * - LaTeX variant line |rarr| ``OOv2r0p0 | 2026m09d11``
     - was ``MMv5r0p1``
   * - **FOOTER FORM block removed** (46 lines)
     - **checked, not assumed:** ``b16-riskymad-waiting-time_oov3`` and
       ``b15-structural-deadlock_mmv3`` both carry **no** ``FOOTER FORM`` and no
       ``content-vvn``; both end at ``.. bibliography::``. The footer form declares
       published-floor stability and does not belong on a working draft.
   * - Live-variant banner added at the top
     - states the status, what it already differs by, why revisions do not go on the floor,
       and the OOv1/OOv2 naming note

Pointers added, so the HELL links are not lost
------------------------------------------------

Three, at the three levels a reader might enter from:

1. **HELL index** (``hell/mm/b/15/index.rst``) --- a *"Live draft --- where new b15 changes
   go"* admonition naming OOv2, plus the toctree entry. The pre-existing *"Draft status"*
   admonition was **not deleted** but retitled *"Draft status of the earlier strata"*, since
   it described the MMv1--MMv3 drafts and would otherwise have read as describing OOv2 too.
2. **The b15 floor index** (``study/matheo/b15/index.rst``) --- *"Where b15's improvements
   accumulate --- the live draft is in HELL"*, mirroring the admonition b16 already carries,
   and stating plainly that the floor is held stable so citations do not shift.
3. **The series index** (``study/matheo/index.rst``) --- a new section, *"Where improvements
   accumulate --- the live drafts in HELL"*, tabulating **both** b15 and b16, placed
   immediately before the existing *"Umbilical cord --- the messy origins"* section and
   explicitly distinguished from it: the umbilical cord is **backward**-looking provenance,
   the live drafts are **forward**-looking work. Conflating the two would bury current work
   under a "here be dragons" warning.

.. warning::

   **The series-index pointer is fragile.** ``project_matheo_index_hand_curated`` records
   that ``source/study/matheo/index.rst`` is hand-curated on top of generator output and that
   ``make matheo-floor`` **strips** hand-curation. The new section will be destroyed by the
   next floor pour unless it is baked into ``gen_index()`` or restored afterwards --- the
   same standing hazard that already threatens the glance include and the on-ramps.

Result
--------

Rebuild: **exit 0, 24 warnings (all HELL), zero public-page warnings.** Both b15 pages were
measured:

.. list-table::
   :header-rows: 1
   :widths: 56 22 22

   * - Page
     - Cites
     - Empty ``[]``
   * - MMv5 floor (untouched, original keys)
     - ``Matheo-1/4/6/7``, ``SD4``
     - **0**
   * - OOv2 in HELL (migrated keys)
     - ``Matheo-b11/b14/b16/b17``, ``SD4``
     - **0**

Both correct, by two different routes --- the floor by the bibliography repair, the variant by
the migration. That is the arrangement working as intended: **the floor is fixed without being
edited, and the migration lives where revisions belong.**

``check-paths`` reports the new OOv2 as *"resolves to no document (git view)"* --- expected and
self-clearing, since the file is untracked until ``git add``.


Prompt 10 --- the floor-pour curation guard
=============================================

.. container:: verbatim-prompt

   ::

      "One fragility to flag: source/study/matheo/index.rst is hand-curated, and make
      matheo-floor strips hand-curation. That new section will be destroyed by the next floor
      pour unless baked into gen_index() — the same standing hazard already threatening the
      glance include and the on-ramps." Can you create some AA entry and a hook and memory in
      the py script for moving matheo papers and pooring floors etc such that all the manual
      changes get reviewed and either integrated into the script or somehow be remembered?

The problem was larger than the flag said
-------------------------------------------

The flag named ``source/study/matheo/index.rst``. Measuring it revealed that **the two
pointers added earlier in this same session were also doomed** ---
``study/matheo/b15/index.rst`` and ``study/matheo/b16/index.rst`` are *choosers*, rewritten
wholesale by ``gen_chooser()``. So the session had, hours earlier, hand-written content into
files it had already been told were generated. The script even carries a comment from
2026m07d16 saying exactly this: *"Anything hand-added to a chooser is destroyed at the next
pour, silently."* **The warning existed, was accurate, and was not enough, because nothing
enforced it.** That is the whole argument for a hook rather than a note.

Measured by running the generator against the committed tree: a pour would have destroyed
**104 lines across three pages** --- the four overview doors, the glance section and its
include, the How-to-cite line, the hand-condensed on-ramp bullets, and both new HELL
pointers. Exit code would have been **0**.

What was built
----------------

**The hook --- ``write_guarded()``.** Every target is compared with the text about to
replace it; any non-blank line on disk and absent from the new text is treated as
hand-curation. The pour then stops, prints the lines, rescues them to ``AHA/HH/``, and exits
1. ``make matheo-floor-check`` added as the dry run.

**Two bugs found in the guard while testing it, both of the kind that would have made it
useless:**

1. **It over-reported.** ``--check`` returns "not written" for every file, and the first
   version conflated that with "would destroy curation" --- so it announced *"12 file(s)
   would destroy hand-curation"* when the true answer was **3**. A guard that cries wolf
   trains people to pass ``--accept-curation-loss`` reflexively. Fixed by tracking
   ``CURATION_LOSSES`` separately from "not written".
2. **It littered.** Every ``--check`` run wrote rescue files, so nine identical files piled
   up in ``AHA/HH/`` during testing alone. A dry run destroys nothing and must therefore
   rescue nothing, or the real rescues drown in noise. Fixed; the nine test artifacts were
   removed (their content was live and committed throughout).

**Integration, preferred over memory wherever possible.** ``DOORS`` added; the glance
section, its include and the How-to-cite line moved into ``gen_index()``; ``WorkInProgress``
gained ``b15`` and had ``b16`` updated from the **stale OOv2 entry** to OOv3 plus b16-extra.
A new generated *"Where improvements accumulate"* section on the series index is emitted from
the same ``WorkInProgress`` registry that feeds the choosers, so the two cannot drift apart.
Exposure on the series index fell from **68 lost lines to 37**.

**A side effect worth naming: this fixes X3.** ``pdf`` in a ``WorkInProgress`` entry was
**mandatory**, and the renderer emitted a download link unconditionally --- which is precisely
how the b16 chooser came to advertise *"Download OOv3 (PDF, 47 pages)"* for a file that was
never committed. It is now optional, with a comment saying that an entry must omit the key
rather than promise a file that is not in the repository. The broken button cannot be
regenerated.

What is deliberately NOT integrated
-------------------------------------

**The 37 remaining lines are the hand-condensed on-ramp summaries**, and they were left alone
on purpose. Each on-ramp entry carries three tight hand-written bullets; the generator
re-extracts the raw ``**Abstract**``, which is about five times longer and reads as raw prose.
**Pouring would replace polished editorial work with a raw extraction** --- a visible
regression. The guard refuses, which is correct behaviour, and POST AA b23 records the three
ways out with a recommendation (an ``ONRAMP_SUMMARY`` registry mirroring ``DOORS``).

This is the honest reading of LLoL's *"integrated into the script or somehow be remembered"*:
what could be generated was generated; what genuinely could not is now **registered**, and the
tool refuses to destroy it either way.

Left standing
---------------

``b15/index.rst`` and ``b16/index.rst`` still carry hand-written pointers whose content now
*also* lives in ``WorkInProgress``. They agree today; nothing keeps them agreeing. The fix is
one clean pour --- which cannot run until the on-ramp question is settled, because the same
pour touches the index. **Until then the rule is: change the wording in the script, not on the
page.** Recorded as POST AA b23 task 2.


Prompt 11 --- the blog post's remaining prose items
=====================================================

.. container:: verbatim-prompt

   ::

      is this clearer: "How disasters can be produced, that can be checked. That is the whole
      point. " (for your 2. ) Do 1. 3. 4 . keep 5. to stay readable. fix 6.

Item 2 --- the answer was no, and the reason is worth recording
-----------------------------------------------------------------

LLoL's proposed replacement was *"How disasters can be produced, that can be checked. That
is the whole point."* **Reported as still broken, rather than accepted to be agreeable.**

The construction is **left-dislocation with a resumptive pronoun**: a topic phrase, a comma,
then a pronoun standing in for it. In German this is entirely idiomatic --- *"Wie
Katastrophen entstehen, das kann man prüfen"* --- and reads as good, natural emphasis.
English does not license it, so the same shape reads as a sentence fragment followed by a
dangling *that*.

Recorded because it is a **recurring interference pattern, not a typo**: a German-idiomatic
structure that survives translation into English words while losing its grammaticality. It
will recur, and naming the mechanism is more useful than fixing the instance.

The repair keeps **every one of LLoL's words** and inserts two: *"How disasters can be
produced **is something** that can be checked. That is the whole point."*

Items applied
---------------

.. list-table::
   :header-rows: 1
   :widths: 6 46 48

   * - #
     - Was
     - Now
   * - 1
     - ``"supervillain" is not personality``
     - ``"supervillain" is not a personality``
   * - 2
     - ``How disasters can be produced, that can be checked.``
     - ``How disasters can be produced is something that can be checked.``
   * - 3
     - ``progress ... in the question for "never again"``
     - ``progress ... in the quest for "never again"``
   * - 4
     - ``staying correctible``
     - ``staying correctable`` (matches the rest of the post)
   * - 6
     - trailing space after the last ``:tags:`` entry
     - removed

**Item 5 left exactly as LLoL wrote it, on LLoL's instruction** (*"keep 5. to stay
readable"*): the ``meta`` description carries ``2001m09d11`` while the body reads *"25 years
after 2001, 9-11"*. This is a **deliberate, recorded exception to Language Rule 6** --- the
rule admits none, but the body of a public remembrance post is where a reader who has never
seen the project's date convention meets the date. The metadata keeps the rule; the prose
keeps the reader. Noted here so a later sweep does not "correct" it in ignorance.

Rebuild: exit 0, no warnings from the post, and it remains **absent from the news feed** ---
still a draft, still at a URL that will not change when it is published.


Prompt 12 --- non-destructive b16 cleanup, then push
======================================================

.. container:: verbatim-prompt

   ::

      Can you clean up the worst of b16 in such a way that it look OKish while not destroying
      the markers I may need for continuing my editing work? I'm eager to get online I'm
      wruning out of time, and I don't want to be destructing. Maybe turn all respective bits
      into comments inline, so they don't show in html. - 1. Drop the line (by turning it into
      comment). ---- commit the blog and build to push.

**LLoL's instrument is the right one and is recorded as a pattern:** when a page must look
finished but the work behind it is unfinished, **comment the bad parts out rather than delete
them**. The reader stops seeing them; the editor keeps every marker, and the reasoning
travels with the file instead of living only in a commit message.

Applied in two places, nothing deleted:

**1. ``hell/mm/b/16/index.rst``.** The admonition titled *"Current drafts (MMv2,
2026m04d09)"* --- which sat directly below the OOv3 and b16-extra drafts and so told a reader
the April draft was current --- is retitled *"Earlier strata --- superseded, kept for the
record"*, with the original title preserved in a comment above it. **MMv3 and OOv2 were
ADDED**: both exist on disk and were listed nowhere, so the index had been hiding two whole
strata. The dead **"Full index"** pointer to ``/matheology/heaven/study/aaa`` is commented
out with the reason (that page has been the near-empty AnyAllArrival inbox since the
2026m06d07 HEAVEN retirement) and the condition for restoring it.

**2. ``study/matheo/b16/index.rst``.** The *"Download OOv3 (PDF, 47 pages)"* button is
commented out, carrying the full diagnosis in the source: the file was built to
``build/pdf/`` and never copied into ``source/_file/``; nothing checks this class of link;
the paper has since grown 47 |rarr| 68 pages, so restoring it needs a decision on which build
is authoritative, that file committed, **and** the page-count label corrected. *"Read OOv3
online"* directly above still works, so a reader loses nothing.

Verified after rebuild: **exit 0, zero public-page warnings**, both commented blocks absent
from the rendered HTML, and **zero broken rendered** ``</_file/...>`` **links anywhere on
public pages** --- down from the one found at the start of this session.

Pushing without a full clean build --- the risk, stated before it was taken
----------------------------------------------------------------------------

LLoL asked what a push of the untested state would cost. Reported: **low and bounded.**
``SPHINXOPTS`` is empty, so CI does **not** gate on warnings; only English is built; both
late edits pass ``rstcheck``; ``check-paths`` is clean; and all three newly added ``:doc:``
targets were confirmed to exist on disk before the answer was given. Worst realistic case is
a link rendering as plain text on one HELL index page. Worst absolute case is a CI build
failure, in which case **nothing deploys and the live site stays exactly as it is** --- a safe
failure mode, not a destructive one.

The one thing that was **not** done: ``make clean && make html``, which is the only local
place social-card breakage would show up (the blog post's ``og:card:title`` contains
``<br>``, and AA b22/b23 plus the b15 OOv2 have never had cards built). Recorded as the known
gap in this push.
