\documentclass[11pt]{article}
\usepackage[margin=0.82in]{geometry}
\usepackage{amsmath,amssymb}
\usepackage{booktabs,array}
\usepackage{enumitem}
\usepackage{xcolor}
\usepackage{hyperref}
\usepackage{url}
\usepackage[T1]{fontenc}
\hypersetup{colorlinks=true,linkcolor=blue!45!black,urlcolor=blue!45!black}
\setlist{nosep,leftmargin=1.4em}
\setlength{\parindent}{0pt}
\setlength{\parskip}{0.55em}
\setlength{\emergencystretch}{3em}
\newcommand{\FV}{\textsc{Frostyverse}}
\newcommand{\code}[1]{\texttt{#1}}
\newcommand{\statusbox}[1]{\noindent\fbox{\begin{minipage}{0.94\linewidth}\small #1\end{minipage}}}

\begin{document}
\title{Two-Body Mass Homogeneity\\\large H2-089 Effective Pair-Domain Bookkeeping Stress Test}
\author{Frostyverse Laboratory}
\date{Website Laboratory v1.0.48}
\maketitle

\statusbox{\textbf{Scientific status.} This is an FV-only structural/software audit inside the intentionally speculative Frostyverse model. H2-089 selected the working rule $M_{\rm pair}=M_1+M_2$ for both effective field scale and relative-orbit scale because it survives a predeclared mass-ratio homogeneity stress through $q=M_2/M_1=1$. General Relativity (GR) is not used to select the winning lane. The result is effective two-domain bookkeeping; it is not a microscopic derivation of literal self-force, two-separated-source superposition, or evidence that nature uses Frostyverse mechanics.}

\begin{abstract}
This note exposes the mathematics executed by the public Two-Body Python Test so that a reviewer can inspect the H2-089 bookkeeping decision without reverse-engineering the historical source. Three universal mass-handling lanes are applied to the same inherited FrostField/profile/secular-response calculation. For each lane the observable is the FV precession response $P(q)$ at body/source mass ratio $q$, normalized by the pair-mass factor $1+q$ and compared with that lane's own $q=0$ baseline. The public quick reference uses $q=1$ at $R=20$ and calls the unchanged H2-089 functions \code{build\_compact\_field $\rightarrow$ build\_compact\_profile $\rightarrow$ secular\_deg}. Pair Total Everywhere stays at numerical zero drift, while Source Only and Split do not. The unchanged historical package contains the heavier R20/R40/R80 publication run and real-pair cross-checks.
\end{abstract}

\section{Question under attack}
The sidequest arose when the precession machinery was transferred away from the test-particle limit. If a source body has mass $M_1$ and the carried/orbiting body has mass $M_2$, which mass scale should the already-existing FV field/orbit calculation use?

Define
\[
\boxed{q=\frac{M_2}{M_1}},
\qquad
M_{\rm pair}=M_1+M_2=M_1(1+q).
\]
H2-089 does not introduce a special formula for the Moon, an equal-mass pair, or any other object. It predeclares three universal lanes and asks which one preserves the pair-normalized FV response as $q$ is increased away from zero.

\section{The three bookkeeping lanes}
The public wrapper uses the frozen source-scale normalization
\[
\mu_{s0}=0.050997919561249605.
\]
For a synthetic mass ratio $q$, define
\[
\mu_{\rm pair}=\mu_{s0}(1+q).
\]
The three lanes are then
\begin{center}
\small
\begin{tabular}{p{0.32\linewidth}p{0.25\linewidth}p{0.25\linewidth}}
\toprule
Lane & Effective field scale $\mu_f$ & Relative-orbit scale $\mu_o$ \\
\midrule
Source Only (legacy) & $\mu_{s0}$ & $\mu_{s0}$ \\
Pair Total Everywhere & $\mu_{\rm pair}$ & $\mu_{\rm pair}$ \\
Split: source field / pair orbit & $\mu_{s0}$ & $\mu_{\rm pair}$ \\
\bottomrule
\end{tabular}
\end{center}
At $q=0$ all three lanes reduce to the same scales. No fitted coefficient is introduced as $q$ changes.

\section{The actual H2-089 calculation called by the public wrapper}
\subsection{Step 1: build the inherited compact FrostField}
The public test does not replace H2-089 with a closed-form approximation. It verifies the SHA-256 of the bundled historical archive, extracts it into a temporary directory, imports the historical H2-089 source, and calls its numerical functions directly.

For a chosen even resolution $R$, the frozen source radius is
\[
r_s=0.5R
\]
in grid cells. H2-089 constructs a fractional spherical occupancy, symmetrizes and normalizes the source, then calls the inherited reduced spectral solver to produce the compact field. The public wrapper therefore begins with the same function used by the historical test:
\[
\boxed{\code{build\_compact\_field}(R)}.
\]

\subsection{Step 2: construct the radial completed-state profile}
H2-089 next derives the flat-clock exponent $\alpha$ through the inherited H-117 routine rather than supplying a fitted two-body exponent. Along the positive radial axis it samples current-cell convergence and the H-116 three-axis clock coupling. The raw radial envelope is
\[
A_{\rm raw}(r)
=K R^2\sqrt{C_{\rm cell}(r)},
\]
with the previously frozen
\[
K=8.681626541587185\times10^{-5}.
\]
Writing the inherited three-axis factor as $C_{3D}(r)$, the clock-weighted envelope is
\[
A_{\rm clock}(r)=C_{3D}(r)A_{\rm raw}(r).
\]
The integrated potential-like quantity is
\[
\Phi(r)=\int_r^{r_0}A_{\rm clock}(s)\,ds,
\]
and the completed-state profile used by the H2-089 sidequest is
\[
\boxed{N(r)=\exp[-\alpha\Phi(r)]}.
\]
This sequence is executed by
\[
\boxed{\code{build\_compact\_profile}(\text{field},R,\alpha)}.
\]
The profile object also retains local radial/tangential frame stretches for other H2-089 diagnostics. The mass-homogeneity calculation below uses the inherited $N(r)$ profile directly.

\subsection{Step 3: orbit sampling at fixed shape}
The synthetic homogeneity stress deliberately holds the orbit shape fixed while changing only $q$ and the declared mass scales:
\[
\boxed{a=2.0,\qquad e=0.20563593}.
\]
For $N_s$ midpoint samples of eccentric anomaly,
\[
E_j=\left(j+\frac12\right)\frac{2\pi}{N_s},
\qquad
r_j=a(1-e\cos E_j).
\]
The field-side perturbation variable is
\[
\boxed{n_j=\mu_f\ln N(r_j)}.
\]
For the orbit side, with the inherited normalization $\mu_0$ internal to H2-089,
\[
\mu=\mu_0\mu_o,
\qquad
L=\sqrt{\mu a(1-e^2)},
\]
\[
p_r=\frac{\sqrt{\mu a}\,e\sin E}{r},
\qquad
v_t^2=\frac{L^2}{r^2},
\qquad
q_0=p_r^2+v_t^2.
\]

\subsection{Step 4: the two inherited secular families}
The same H2-089 routine evaluates two already-defined secular Hamiltonian-like families. The stable family is
\[
\boxed{
h_{\rm stable}
=\frac12 n^2+\frac12 n q_0-\frac18 q_0^2
},
\]
while the D family is
\[
\boxed{h_D=-\frac18q_0^2}.
\]
Their orbit averages are evaluated with the eccentric-anomaly measure
\[
\boxed{
\overline H_f
=\frac1{N_s}\sum_{j=0}^{N_s-1}
 h_f(E_j)\,(1-e\cos E_j)
},
\qquad
f\in\{\text{stable},D\}.
\]

\subsection{Step 5: convert the averaged family into secular precession}
The historical function \code{secular\_deg} differentiates $\overline H_f$ with respect to
\[
s=e^2
\]
using a four-point centered finite-difference stencil. With
\[
L_d=\sqrt{\mu a},
\qquad
n_{\rm orb}=\sqrt{\frac{\mu}{a^3}},
\]
the returned secular response is
\[
\boxed{
\Delta\varpi_f
=\operatorname{deg}\!\left[
-\frac{4\pi}{n_{\rm orb}}
\frac{\sqrt{1-e^2}}{L_d}
\frac{\partial\overline H_f}{\partial(e^2)}
\right]
}.
\]
This is the calculation behind the public wrapper's third historical call,
\[
\boxed{\code{secular\_deg}}.
\]

\subsection{Step 6: measured release multiplicity and total FV response}
The public wrapper also calls H2-089's inherited H-019/H-021 release-mode audit and re-measures the local six-support multiplicity instead of inserting it as a fitted two-body parameter. The reference gives
\[
\boxed{C_{\rm release}=4}.
\]
For each bookkeeping lane, the total candidate response used by the mass-homogeneity stress is therefore
\[
\boxed{
P(q)=\Delta\varpi_{\rm stable}(q)
+C_{\rm release}\,\Delta\varpi_D(q)
}.
\]
This four is a response-context multiplicity inherited from the H2 mechanics. It must not be reinterpreted as four independent copies of conserved energy.

\section{FV-only homogeneity metric}
If the effective response belongs to the pair-total relative system, increasing $q$ should scale the unnormalized response with $1+q$. H2-089 therefore predeclares the pair-normalized quantity
\[
\boxed{
\widetilde P(q)=\frac{P(q)}{1+q}
}.
\]
Each lane is compared with its own $q=0$ baseline,
\[
\boxed{
\delta(q)
=\frac{\widetilde P(q)-P(0)}{|P(0)|}
}.
\]
At $q=0$, $\widetilde P(0)=P(0)$, so this is exactly the relative drift printed by the wrapper.

The historical synthetic ladder is
\[
q\in\{0,10^{-7},10^{-5},10^{-3},0.0123,0.05,0.10,0.25,0.50,1.0\}.
\]
Custom mode accepts any finite $q\ge0$. Values above $q=1$ are explicitly extrapolative attacks beyond the published ladder.

\statusbox{\textbf{Selection firewall.} No GR value is passed into $N(r)$, the lane scales, the secular calculation, $P(q)$, the $(1+q)$ normalization, or $\delta(q)$. The winning bookkeeping rule is selected from this FV-only homogeneity criterion.}

\section{Public quick reference: $q=1$, $R=20$}
The public reference uses
\[
q=1,
\qquad R=20,
\qquad N_s=8192,
\qquad \text{workers}=2.
\]
R20 is used because it executes the same historical field/profile/secular functions while remaining practical on an ordinary machine. A fresh reference run gives
\begin{center}
\small
\begin{tabular}{lrr}
\toprule
Lane & $P(q)$ (deg/orbit) & $\delta(1)$ \\
\midrule
Source Only & $2.8760992846610\times10^{-5}$ & $-50.000000000\%$ \\
Pair Total Everywhere & $5.7521985693757\times10^{-5}$ & $+9.3353\times10^{-10}\%$ \\
Split & $5.5011803975583\times10^{-5}$ & $-4.363864855\%$ \\
\bottomrule
\end{tabular}
\end{center}
Thus, at quick-reference resolution, Pair Total Everywhere preserves the declared pair-normalized response to numerical tolerance while the other two lanes drift.

The unchanged publication-scale H2-089 run uses R20/R40/R80 with 32768 orbital samples. Its preserved $q=1$ fingerprint is
\begin{center}
\begin{tabular}{lr}
\toprule
Lane & Published full $\delta(1)$ \\
\midrule
Source Only & $-50.000000\%$ \\
Pair Total Everywhere & numerical zero \\
Split & $-4.257748\%$ \\
\bottomrule
\end{tabular}
\end{center}
The Split value changes modestly with resolution: the quick R20 value differs from the final published fingerprint by about $0.106$ percentage points. The R20 quick number is therefore not expected to equal the final R80 publication number; the lane-selection ordering is the invariant being reproduced.

\section{Fresh custom-input example}
As an attack on the equal-mass endpoint, a fresh package QA run used
\[
q=0.37,
\qquad R=12,
\qquad N_s=4096.
\]
It returned
\begin{center}
\begin{tabular}{lr}
\toprule
Lane & $\delta(0.37)$ \\
\midrule
Source Only & $-27.0072992701\%$ \\
Pair Total Everywhere & $+2.0482\times10^{-10}\%$ \\
Split & $-1.77533491978\%$ \\
\bottomrule
\end{tabular}
\end{center}
This is not a new fitted case: the wrapper rebuilds the H2-089 compact field/profile and calls the historical secular routine with the new $q$.

\section{Where GR appears---and where it does not}
The H2-089 historical package also contains real-pair checks for Mercury, Venus, Icarus, the Moon, and Europa. For those physical rows it can evaluate the standard pair-mass perihelion ruler
\[
\boxed{
\Delta\varpi_{\rm GR}
=\frac{6\pi G(M_1+M_2)}{a_{\rm phys}(1-e^2)c^2}
}
\]
per orbit. Those rows are useful external context and conditioning checks, but they do \emph{not} choose the H2-089 bookkeeping rule.

In particular, the high-resolution Moon Pair-Total and Split predictions are closer to one another than the numerical coordinate sensitivity of that row. The real Moon therefore does not independently distinguish those lanes. The decisive discriminator is the synthetic FV-only $q$ homogeneity stress with GR closed.

\section{Relationship to the D / release-mode result}
H2-089 contains a second, logically separate result. H2-038 motion-strain work and one H-019/H-021 transverse release mode both follow a normalized quadratic elastic-work family,
\[
W_{\rm motion}\propto\frac12\varepsilon^2,
\qquad
W_{\rm release}\propto\frac12\xi^2.
\]
At H2-089 the direct physical coordinate identification between those two quantities was still underived, so the historical main outcome was ``same quadratic work family; coordinate link underived.'' That coordinate bridge is addressed later in H2-090.

The Two-Body Laboratory here is the \emph{mass-bookkeeping sidequest}. A reviewer should not confuse the selection of Pair Total Everywhere with the separate D-ownership derivation.

\section{Public Python package}
\subsection{Requirements}
\begin{itemize}
\item Python 3.10 or newer;
\item NumPy, installed from \code{requirements.txt};
\item enough memory for the chosen resolution.
\end{itemize}
Install the public dependency with
\begin{verbatim}
python -m pip install -r requirements.txt
\end{verbatim}
No third-party library is bundled in the ZIP.

\subsection{Menu and command-line entry points}
Start with
\begin{verbatim}
python lab_test.py
\end{verbatim}
The interactive menu offers the quick reference, custom $q$, full $q$ ladder, unchanged historical validation/full runs, and archive verification. Direct entry points are
\begin{verbatim}
python lab_test.py --reference
python lab_test.py --custom
python lab_test.py --ladder
python lab_test.py --historical-validation
python lab_test.py --historical-full
python lab_test.py --verify
\end{verbatim}
Custom mode accepts a finite $q\ge0$, an even resolution
\[
8\le R\le80,
\]
orbital quadrature samples, and worker count.

\subsection{Resource scale}
The main historical field array grows approximately as $R^3$. The wrapper reports these practical reference scales:
\begin{center}
\begin{tabular}{cl}
\toprule
Resolution & Approximate main-array memory \\
\midrule
R12 & 0.013 GiB \\
R20 & 0.059 GiB \\
R40 & 0.476 GiB \\
R80 & 3.810 GiB \\
\bottomrule
\end{tabular}
\end{center}
The complete R80 run requires additional arrays and overhead, so a well-provisioned scientific workstation is recommended for the unchanged full profile.

\section{Results, sealing, and reproducibility}
Each focused run writes text and JSON records under \path{results/}. The JSON records the input $q$, $R$, samples/workers, derived $\alpha$, measured $C_{\rm release}$, field/profile metadata, all three lane outputs, the statement that GR was not used in selection, and a SHA-256 seal of the serialized run payload.

The seal is \emph{per-run provenance}, not a fixed expected-result hash: the serialized payload contains its generation timestamp, so two numerically identical runs can legitimately have different candidate-seal strings. Reproducibility should be judged from the scientific outputs and the fixed source/archive hashes below.

\section{Provenance and integrity}
The public package preserves the unchanged historical research archive at
\begin{quote}\footnotesize
\path{original/Frostyverse-Test-H2-089.zip}\\
SHA-256: \path{3d7732996163158df58cd9f266573ec7f657b65d15611561c8e927149c18f260}
\end{quote}
The complete public Python Test ZIP used for this Laboratory has SHA-256
\begin{quote}\footnotesize
\path{d8e900aa8cca7f6398093c7fb6d7c2725ebd440da15033074d96334afd2d970b}
\end{quote}
Inside the package, \path{SHA256SUMS.txt} records hashes for the wrapper, README, expected-results file, requirements, launchers, and preserved H2-089 archive.

\section{Recommended reviewer attacks}
\begin{itemize}
\item Recompute the $q$ ladder at R12, R20, R40, and, if resources allow, R80 without changing any mass rule.
\item Choose fresh $q$ values between the published ladder points and beyond $q=1$ as explicit extrapolative attacks.
\item Verify directly that custom mode calls the unchanged historical numerical chain rather than a closed-form substitute:
\begin{center}\small
\code{build\_compact\_field} $\rightarrow$ \code{build\_compact\_profile} $\rightarrow$ \code{secular\_deg}.
\end{center}
\item Verify that $C_{\rm release}$ is re-measured from the H2-089 release routine rather than silently inserted to force homogeneity.
\item Recompute $P(q)/(1+q)$ independently from the saved lane outputs.
\item Change orbital quadrature resolution and inspect whether the lane-selection ordering survives.
\item Inspect the source for any GR value entering the synthetic homogeneity calculation; finding one would invalidate the stated firewall.
\item Treat a fresh-input failure as a useful falsification result rather than tuning the bookkeeping rule to remove it.
\end{itemize}

\section{Browser Laboratory scope}
The browser Laboratory visualizes preserved H2-089 samples and makes the zero-drift Pair Total line easy to inspect. It is not the scientific solver. Fresh or extended mass-ratio attacks should be run with the downloadable Python Test.

\section{Claim boundary}
The H2-089 result supports
\[
\boxed{M_{\rm pair}=M_1+M_2}
\]
as the simplest surviving universal \emph{effective two-domain bookkeeping rule} under the stated FV-only mass-homogeneity stress. It does not establish literal self-gravity of a body at one point, derive a microscopic two-separated-source field superposition law, prove the standard GR two-body interpretation, or establish Frostyverse as physical reality. The rule remains a working/frozen internal mechanic subject to independent attack.

\end{document}
