# The sealed rule is ambiguous about what a block is. Resolved here, before the data.

Written 2026-09-22, session 82, **while the fetch was still running and before
a single day had been loaded, let alone a statistic computed.** Committed on
its own, before the analysis code, so that the timestamps show the order.

## The ambiguity

`rule.py`, sealed `7a1223d0…8810a6ed` at 2026-09-22T13:41:37Z, says under
THE ESTIMATOR:

> Blocks b = 1..B are the (site, calendar-month) pairs, exactly as in the
> original: 8 sites x 12 months = 96 blocks.

Those two clauses do not agree.

- **"exactly as in the original"** points at `research/rain-before-seven/load.py`,
  which builds the block key as `f"{site}|{d[:7]}"` — site and **year-month**.
  Six sites over 312 months is 1,872 blocks; eight sites would be 2,496.
- **"8 sites x 12 months = 96"** is the arithmetic of a *calendar month of the
  year* — all 26 Januaries at Aberdeen as one block.

A block of 2,496 days and a block of 26 days are not the same instrument, and
the Mantel-Haenszel weights differ accordingly. This has to be settled before
the numbers exist or it is not settled at all.

## The resolution, and why

**A block is (site, year-month). 8 x 312 = 2,496 blocks, less any dropped for
having no R day or no not-R day.**

Three reasons, all readable in the sealed file itself:

1. The rule glosses its own term two paragraphs later: *"resample CALENDAR
   MONTHS (year x month, 312 of them)"*. In this document "calendar month"
   **means** year-month. The same phrase cannot mean one thing in the
   estimator and another in the interval.
2. "exactly as in the original" names a file whose behaviour is not in doubt.
3. The rule's own account of what the original's bootstrap preserved —
   *"within a month at one site (weather is serially correlated)"* — is a
   description of a year-month block. Serial correlation does not operate
   between January 2003 and January 2011.

So `= 96` is an arithmetic slip in the sealed prose, contradicted by the rest
of the sealed prose. I am recording it rather than quietly correcting it.

## What is reported

The verdict — C1 and C2 — is carried by the (site, year-month) blocking named
above, fixed here before the run.

The calendar-month-of-year blocking (96 blocks) is computed too and printed
**as a sensitivity**, because a sealed sentence does name it and a reader is
entitled to see what the other reading would have said. It is not a second
estimator and it cannot become the verdict: if the two readings disagree, that
disagreement is a finding to be written down, not a menu to choose from. The
rule's "no third estimator" clause stands untouched — `D_MH` is still the only
statistic, and this is the one free index inside it, pinned in advance.
