Runnable now — the Rich tier calibration
This one is not hardware-gated. Every item above waits on a box the user does not have; this waits only on the user sitting down at the machine they already own. It is here so it is not lost, not because it is blocked.
Plan 0044 shipped TierConfig::RICH as provisional multipliers, explicitly not measurements —
the code says so in its own doc comment. Phase 4 was to replace them with measured values and was
not run at the plan’s close, so the rich tier currently ships numbers nobody has timed.
- Calibrate
Richon the midrange discrete GPU, native fullscreen. Runritmolux.exe --tier rich(the pin, so the governor cannot demote mid-measurement) with the overlay on (F3), across the heaviest preset of each family: anattractor_*, a dense line preset with mirror + fold (fragment_kaleido),swarm_dense, areaction_*, and aspectrum_*. Report per preset (a) whether frame time holds the display’s refresh rate and (b) the p99. Escalation: a miss is not a failure, it is the measurement — record which preset missed and by how much, and the specificTierConfig::RICHfield that caused it comes down to the measured value. Route todevwith the numbers. The five fields and their provisional values:post_cap2560x1440,attractor_particles150 000,attractor_trail_cap3840x2160,swarm_particles30 000,max_segments60 000 (core/src/render/tier.rs).attractor_particlesis now an anchor and not the count drawn — since ADR-0140 the sample budget is a density against the render target, so aRichwindow above the 640x360 anchor resolves up toattractor_particles_live_ceiling(600 000) instead. Record the size of the window the reading was taken at, because the drawn count now depends on it, and the relief lever for an attractor miss is that ceiling rather than the anchor. Lowering the anchor still costs shot noise at every size; lowering the ceiling costs it only on large displays. No number is invented upward to look good — that was the phase’s own rule, and it still binds. (Plan 0044 Phase 4, carried forward at that plan’s close 2026-07-30.) Two things changed under this item at Plan 0057’s close (2026-08-03), and both make it cheaper rather than different. It is still a frame-time measurement and every field above is still provisional. Butattractor_particlesis no longer a brightness: ADR-0065 divides the additive deposit by the count, so bringing that field down now costs shot-noise smoothness and not exposure — a look consequence this escalation used to carry silently. And the “how does it read atRich” half of the question no longer needs the running app:shot --tier floor|richexists (it always did — Plan 0044 Phase 3 built it and only--helpomitted it), so a measurement is a capture. Keep the app for the frame-time run and for any judgement in motion; that is what it is still better at. And since Plan 0050 the frame-time run is an A/B in one sitting rather than two launches.[and]swap the tier on the running renderer, and the settings menu (S) shows which tier is live and whether it is(auto),(pinned)or(demoted). So the loop per preset is: hold on the preset with theF3overlay up, read p99 at one tier, press the other bracket, let the trails re-accumulate, read p99 again. An in-app change pins the tier, so the governor cannot demote inside the measurement — the reason--tierwas required for this before. It also writes[quality] tier, so remember to set it back (or pass--tier, which still wins at launch) before running anything that assumes the default. Plan 0050’s own Phase 6 item 3 asks for exactly this measurement; whichever runs first satisfies both.
Built from a8ce055 at version 0.115.0. This site tracks main and is not versioned per release.