1\section{Results}\label{sec:results}23All numbers in this section are generated from result files by \texttt{scripts/make\_tables.py} and are indexed4in \texttt{results/claim\_registry.csv} with their run identifiers. Unless stated otherwise, ``loss'' is the5teacher-forced cross-entropy on the answer span of the synthetic suite (nats per token), ``$b$'' a forced budget6applied to every position with uniformly random actions, and relative changes are with respect to the frozen7backbone (budget 0) of the same run.89\subsection{Learnability and the bootstrap problem (Phase 4)}\label{sec:results-learnability}10With the readout initialised at zero, as prescribed, the editor did not learn at all in 700 steps on the frozen112.1M-parameter backbone: validation loss was identical at every budget (0.4144, 0.4143, 0.4143, 0.4146, 0.4164)12and the trainable gradient norm stayed at 0.01--0.02. The cause is a scale mismatch: the backbone residual stream13has root-mean-square 5.6 while the difference of the two attention reads has root-mean-square 0.06, so $U$ must14grow by two orders of magnitude before any edit can move a logit, and until it does the editor receives no15gradient. Three remedies were compared under the identical recipe (Figure~\ref{fig:learnability}): the fixed16scale $s$ alone (zero $U$), $s$ with $U\sim\mathcal N(0,0.2^2)$, and $s$ with $U\sim\mathcal N(0,0.5^2)$. Only17the non-zero initialisations learned within 2,000 steps (dev-iid loss $-1.4\,\%$ at budgets 1--2 for18$\sigma=0.2$); with $\sigma=0.5$ the budget-8 loss was worse than the backbone throughout, and a learning rate19of $3\times10^{-3}$ with $w=128$ collapsed to inert edits (every budget exactly equal to budget 0, gradient20norm 0.00). The deliberate-overfitting test passed: on 64 items at budget 8 the frozen-backbone model reached a21training loss of 0.0024 in 200 steps through the workspace path alone while the held-out loss rose, confirming22that the gradient path and the capacity exist. Failure mode 13.1 of the proposal is therefore confirmed, and23$U\sim\mathcal N(0,0.2^2)$ with $s=\rms(H)$ is used for every adapter below, including the baselines.2425\begin{figure}[t]\centering26\includegraphics[width=\textwidth]{../results/figures/learnability_bootstrap.pdf}27\caption{Stage B bootstrap on the frozen tiny backbone (dev-iid answer-span loss under random forced actions,28budgets 0--8). Left: zero-initialised $U$ with the scale $s$; middle and right: $U\sim\mathcal N(0,\sigma^2)$ with29$\sigma=0.2$ and $0.5$. Budget 0 is the frozen backbone (identical in all panels).}30\label{fig:learnability}31\end{figure}3233\subsection{Sparse editor versus global recurrence and dense writes (H1, H2)}\label{sec:results-matrix}34Table~\ref{tab:seedmatrix} reports the pre-registered decisive comparison on the second tiny backbone35(5.6M parameters, char-level): \vtwoprismeseeds{} independent adapter seeds for the sparse editor,36\vtwogrseeds{} for the global-recurrence adapter and \vtwodenseseeds{} for the dense sixteen-slot editor, all37trained with the same forced-budget recipe for 3,000 steps. H1 is supported in its weak form: random sparse38edits reduce the held-out answer-span loss by \vtwoprismegainbone{}\,\% (budget 1), \vtwoprismegainbtwo{}\,\%39(budget 2) and \vtwoprismegainbfour{}\,\% (budget 4), with seed standard deviations below 0.002 nats, and40raise dev-iid exact match from \vtwoprismeembzero{}\,\% to \vtwoprismeembtwo{}\,\%. The effect is not41specific to sparse local writes, however: the global-recurrence adapter---one shared block rewriting the whole42latent, parameter-matched, same bootstrap---reduces the loss by \vtwogrgainbone{}\,\%, \vtwogrgainbtwo{}\,\% and43\vtwogrgainbfour{}\,\% at the same budgets and reaches \vtwogrembtwo{}\,\% exact match, i.e.\ it is at least as44good at every budget and better at budget 8, where the sparse editor's gain shrinks to \vtwoprismegainbeight{}\,\%.45Dense writes (Table~\ref{tab:seedmatrix}, third row) answer the second half of H2 directly. None of the46adapters improves the held-out template, depth or compose regimes by more than one point (H6).47\input{tables/seed_matrix.tex}4849\subsection{Oracle opportunity and the structure of intervention gains (Phase 5)}\label{sec:results-oracle}50Figure~\ref{fig:labels} and Table~\ref{tab:controller} summarise the counterfactual labels collected with the51fixed editor on a stream the editor never trained on (\labelstrainnstates{} and \labelscalibnstates{} exhaustive-audit52states in the training and calibration partitions). Three facts shape everything downstream.53First, the exhaustive one-step oracle finds real value: choosing the best of the 24 actions, or stopping when54none helps, gains \labelscaliboracle{} nats per state on calibration against \labelscalibrandom{} for a random55action; rolled out greedily on dev-iid it lowers the loss by \routingoraclebone{}\,\% with56\routingoracleeditsone{} edits per token at budget 1 and by \routingoraclebeight{}\,\% with57\routingoracleeditseight{} edits per token at budget 8 (Table~\ref{tab:routing}). The two-action oracle gains58\oracletwostep{} nats against \oracleonestep{} for one step, and ``greedy first action then best second'' recovers59almost all of it, so myopia of the one-step rule is not the binding constraint at this scale.60Second, most of the variance of the gains is between states, not between actions: \labelscalibwithin{}\,\% of61the variance of the audited gains is within-state (action identity), the rest is the state's mean gain;62\labelscaliballpos{}\,\% of states have all 24 actions positive and \labelscaliballneg{}\,\% have all 2463negative. Decomposing the oracle, a perfect continue/stop decision with a random action captures64\labelscalibstoponly{} of the \labelscaliboracle{} nats; the choice of \emph{which} slot captures the rest.65Third, opportunity is concentrated where the backbone is uncertain and is dangerous there: in states above the66median base loss the oracle gains \labelscaliboraclehigh{} nats while a random action loses67\labelscalibrandomhigh{}; in the top decile of base loss the oracle gains \labelscalibtopdecoracle{} and a68random action loses \labelscalibtopdecrandom{} nats, with only \labelscalibfracposhigh{}\,\% of actions helpful69(\labelscalibfracposlow{}\,\% in the lower half, where all gains are negligible).7071\begin{figure}[t]\centering72\includegraphics[width=\textwidth]{../results/figures/labels_analysis.pdf}73\caption{Counterfactual labels (calibration partition, editor-unseen stream). Left: fraction of positive gains by74number of edits already applied. Middle: variance decomposition of the exhaustive 24-action audit. Right: mean75gain per state of a random action, of a perfect continue/stop decision with a random action, and of the76one-step oracle.}77\label{fig:labels}78\end{figure}7980\subsection{Learned routing versus reference routers (H2, H3)}\label{sec:results-routing}81Table~\ref{tab:routing} compares, on dev-iid with the same editor, the frozen backbone, random, round-robin and82fixed-pair schedules at budgets 1--8, entropy and norm-change routers over a threshold grid, the learned value83controller at its locked penalty and along a $\lambda$ grid, and the diagnostic oracles. Three results follow.84(i) Spatial selection does not matter for fixed schedules: at budget 1 random, round-robin and fixed-pair give85\routingrandombone{}, \routinguniformbone{} and \routingpairbone{}\,\% respectively, within the paired86bootstrap noise of one another; more edits hurt (\routingrandombeight{}\,\% at budget 8). H2 is not supported.87(ii) The learned controller is worse than not routing: at its calibration-selected penalty88($\lambda=\routingctrllambda$) it edits \routingctrlledits{} times per token and \emph{raises} the dev-iid loss by89\routingctrllocked{}\,\%; every smaller $\lambda$ is worse still, although the same controller had lowered the90calibration loss by 1.1\,\% (Table~\ref{tab:controller}). The reference routers do no better: the best entropy91threshold gives \routingentropybest{}\,\% and the best norm-change threshold \routingnormbest{}\,\%. H3 is92refuted at this scale.93(iii) The mechanism of the failure is visible in the labels. With backbone-residual and entropy features the94controller predicts the \emph{sign} of a gain with \ctrlhentsignacc{}\,\% accuracy (chance 50\,\%) and finds95the states with opportunity, which are the high-loss states; but in exactly those states a wrong action costs96more than the right action gains (\labelscalibtopdecrandom{} versus \labelscalibtopdecoracle{} nats in the top97decile), and the controller's ranking of actions within a state is close to chance (top-1 agreement with the98oracle 7--8\,\% against 4.2\,\% for a uniform guess; captured fraction of the oracle opportunity $\le 5\,\%$).99The pre-registered null ``an oracle can find beneficial edits, but the learned controller cannot predict100them'' is the outcome at this scale.101\input{tables/routing.tex}102\input{tables/controller.tex}103104\subsection{Token loss versus task success}\label{sec:results-reasoning}105Exact match of free greedy generation moves with the loss on dev-iid (Table~\ref{tab:seedmatrix}: $+1.8$ points106for the sparse editor at budget 2, $+2.3$ for global recurrence at budget 8, seed SD $\le 0.5$) but not on the107held-out regimes; per-family transitions are reported in Appendix~\ref{app:results}. No adapter turns the108held-out compose family from near zero (2--3\,\%) into anything else.109110\subsection{Latency and memory}\label{sec:results-latency}111Table~\ref{tab:latency} gives measured batch-1 and batch-8 decode latencies for the tiny model on the112development laptop (Apple M5 Max, fp32, PyTorch 2.15, MPS). Budget 0 costs \latencybzero{} ms per token; each113executed single-slot edit adds about 2.3 ms, so eight edits cost seven times the backbone although their114analytic operation count is only 4.2 times; the dense sixteen-slot write at budget 8 is \emph{not} slower than115eight sparse writes (17.3 vs 19.3 ms), and one controller evaluation adds 2.9 ms even when it stops immediately.116At this scale the per-action host dispatch and kernel-launch overhead dominates the arithmetic, exactly as the117proposal's failure mode 13.6 anticipated; Section~\ref{sec:results-pilot} repeats the measurement at 103M, where118the arithmetic is 60 times larger per token.119\input{tables/latency.tex}120121\subsection{The 103M pilot on web text (Phase 8)}\label{sec:results-pilot}122\input{sections/results_pilot}123124\subsection{Larger configurations}125The 459M and 1.18B configurations were instantiated on the meta device for exact parameter accounting126(Table~\ref{tab:configs}) and the 459M operation table was reproduced (Table~\ref{tab:ops}); neither was127trained. No scaling claim is made (H7 untested).128