← board

Host ROLES: the matrix beast vs the native-only arm oracles

Intended topology

host hardware role
xeon 12-core, ample RAM, Ubuntu 26.04 the matrix. Full tiers, all cores, cross targets under QEMU, idle fuzz/opt/bench.
borg dev-adjacent existing watcher
arm64 rPi crippled native oracle only. Runs aarch64 tests NATIVELY.
arm32 rPi crippled native oracle only. Runs arm32 tests NATIVELY.

The point of the rPis is native vs QEMU differential: xeon already runs the arm targets under emulation (CLASS_WEIGHT has a qemu class), and a real ARM box says whether a QEMU result is the truth or an emulator artifact. Their job is not to grind full suites all day — they are slow, and a full matrix on a Pi would take longer than the answer is worth.

What already exists (do not rebuild it)

Naming note: the launcher is trackt (repo root) + tools/trackt.py. There is no trackt.sh — worth stating because it gets referred to that way.

What is missing

  1. Profiles express RESOURCE CEILINGS, not PURPOSE. restricted means "use half the cores and a fraction of RAM" — an rPi set to restricted still works through a full tier, just slowly, which is precisely the behaviour not wanted. A role needs to say which job classes this box exists to run (e.g. "native aarch64 jobs only; never corpus, never fuzz, never opt"), not merely how hard to push. Suggested shape: a jobs/classes allowlist in the conf, plus a native-oracle profile that sets it.

  2. Nothing compares two hosts. tstate is per-host, and a verdict is published per host+sha. The entire value of a native ARM box is host A native vs host B QEMU on the same sha+job — that comparison does not exist. Without it a Pi just re-reports what xeon already said, and the differential has to be done by eye.

  3. The topology is undocumented, which is why this ticket exists. It belongs in devdocs/dev/ alongside the Track T notes once settled.

Landmine this topology walks straight into

The rPis will run a different distro again (Raspberry Pi OS vs Ubuntu 26.04 vs the dev box's 24.04). Cross-distro assertion coupling has already produced one permanent phantom RED that cost several mis-diagnoses — see [[bug-t-host-dependent-test-assertions-cross-distro]]. Adding two more distros multiplies that surface, so that ticket should land before the Pis are enrolled, not after.

Gate

An arm64 rPi enrolled with a native-oracle role runs only its native job set, never a full tier, and its results are comparable against xeon's QEMU verdicts for the same sha without hand work.

Log