Maintenance layer 3.1: preflight configures the contract
The core's slope estimate now folds in only observations resolvable against readout noise and, when declared, inter-cycle drift; on a 16-channel trapped-ion-class plant at slow cadence this removed five false sign conflicts and raised suppression from 2.34× to 5.52× with every v3.0 acceptance behaviour reproducing within noise. Preflight measures drift with one timed return-to-x0 read (readout noise and drift solved jointly), checks measured slope sign against declared link_signs (catching probe aliasing before a session starts), and returns recommendations that configure start(): drift_per_cycle, tolerance floor, correction cadence. A declared consumer class (numeric, argmax, variational, averaged) returns an honest advisory where the application-level gain will be modest. Client 0.6.0: SWCOptimizer renamed StabilityContract (alias kept), live law telemetry exposed as attributes, probe-rung helper. Offline build ships verify_against_live.py.

