\paragraph{Stage A.} The 103M backbone (Table~\ref{tab:configs}) was pretrained on \pilotbbtokens{}M tokens of FineWeb-Edu (6,000 steps of $32\times512$, cosine schedule, fp32) on one Apple M3 Ultra in \pilotbbhours{} hours (13.8k tokens/s, peak \pilotbbpeakgb{} GB, $6NP\approx\pilotbbflops\times10^{16}$ FLOPs), reaching a validation perplexity of \pilotbbppl{}. This is one token per parameter---far from compute-optimal and one-half of the budget announced in the proposal's progression (a stale configuration on the node, Appendix~\ref{app:failures}); the parameter-matched plain decoder (feed-forward width 2144, 102.16M) was trained with the identical recipe (validation perplexity \pilotenppl{}, \pilotenhours{} h). Only one backbone seed was affordable. \paragraph{Stage B.} On the frozen backbone, the sparse editor (\pilotedparams{} trainable parameters with the residual-plus-entropy controller features, $s=\rms(H)=8.85$) and the global-recurrence adapter (\pilotgrparams{}) were trained for 3,000 steps of $16\times512$ tokens with the forced-budget recipe. At the learning rate that worked at the tiny scale ($10^{-3}$) the sparse editor collapsed to inert edits within 500 steps (every budget identical to budget 0, gradient norm zero); at $3\times10^{-4}$ it trained (\pilotedminutes{} min, peak \pilotedpeakgb{} GB) but the effect on held-out web text is negligible: $-\pilotedgainbone$, $-\pilotedgainbtwo$, $-\pilotedgainbfour$ and $-\pilotedgainbeight\,\%$ of loss at budgets 1, 2, 4 and 8. The global adapter, which did not collapse at $10^{-3}$, gives $-\pilotgrgainbone$, $-\pilotgrgainbtwo$, $-\pilotgrgainbfour$ and $-\pilotgrgainbeight\,\%$ in \pilotgrminutes{} min. The dense sixteen-slot probe collapsed at both learning rates and yields no 103M result. On general web text, therefore, neither adapter moves a frozen 100M backbone by more than a tenth of a percent of loss with 24.6M adapter tokens---less than the run-to-run noise of pretraining itself---so H1 is not supported outside the synthetic suite. On the locked FineWeb-Edu test split (327,680 tokens) the backbone's perplexity is \pilotpplbackbonemtest{}; forced edits change the test loss by \pilottestprismemeditorbfour\,\% (sparse, budget 4) and \pilottestgrmbfour\,\% (global); the parameter-matched plain decoder trained with the identical recipe reaches \pilotpplenlargedmtest{} (Table~\ref{tab:pilotppl})---the proposal's null ``a larger ordinary Transformer wins after equalising training compute'' holds at this budget. \input{tables/pilot_ppl.tex} \paragraph{Stages C--D and routing.} Counterfactual labels were collected on a validation-disjoint stream of web text and a controller fitted with the tiny-scale recipe (Table~\ref{tab:pilotrouting}). The locked controller changes the validation loss by \pilotroutingctrl\,\% (\pilotroutingctrledits{} edits per token); the one-step oracle reaches \pilotroutingoracle\,\% with \pilotroutingoracleedits{} edits per token, and the best fixed schedule (round-robin, budget 1) \pilotroutinguniformone\,\%. The picture of Section~\ref{sec:results-routing} is unchanged at 103M: there is oracle opportunity (now on natural text), and the controller does not capture it. \input{tables/pilot_routing.tex} \paragraph{Latency at 103M.} Table~\ref{tab:pilotlatency} repeats the latency protocol with the 103M model on the M3 Ultra (prompt 256, 32 generated tokens, fp32). Budget 0 costs \pilotlatbzero{} ms per token at batch 1; eight single-slot edits \pilotlatseight{} ms; eight dense writes \pilotlatdeight{} ms; the controller with its locked penalty \pilotlatctrl{} ms. The sparse-versus-dense gap is now visible but remains far below the analytic ratio (3.1$\times$ more editor operations for dense writes), confirming that at this size the per-action dispatch, the slot re-keying and the bank read---not the lane arithmetic---set the cost. \input{tables/pilot_latency.tex}