The charts are above, and the two committed figures are attached.

**Longer training probably won't help.** These runs are already long: 32k steps is about 410 passes over the 1,173 training maps. The logs in `runs/spectrumnet/*/log.json` show three things:
- **Validation stops improving at 12–21k steps** in every run. After that it drifts up by 0.1–0.2 dB until the end. The test numbers I reported come from those best checkpoints, not the last step.
- **Training loss keeps falling** after that point, roughly 0.013 → 0.009 for the gated runs. The nets are memorising the 1,173 maps, not learning anything that carries over.
- **Seed differences appear early.** At 100–200 m on the mosaic the three seeds give 13%, 26% and 51%. All three have nearly the same validation error (9.75–9.82 dB), so more steps won't make them agree.

Training is limited by the amount of data, not by its length. These would help more, in order:

1. **More maps from the same set.** Every urban scene also has maps at the other frequencies. Coverage barely changes with frequency (under 1 point between 3.5 and 5.9 GHz), so they are nearly free extra training targets. Adding them gives about 5× the maps.
2. **Average the 3 seeds.** This costs no training and removes the arbitrary 13–51% spread at 100–200 m.
3. **Finer pixels.** SpectrumNet's 10 m pixels blur narrow streets, which is my best guess for why the nets reach too short near the Tx on our mosaic. This would mean fine-tuning at 2–5 m pixels, which is a larger change.

Option 1 plus 2 would take about 35 minutes per run, using the same commit-then-run steps as before. Should I run it?