With ScaleOnTheFly now fixed-only and rotation routed through RotationScaleMerge, the
PartialityModel enum carried no information (it was always Rotation for rotation processing,
Fixed otherwise, and mirrored combine_3d). Drop it:
- ScalingSettings: `partiality_mode` (PartialityModel) -> `force_still_processing` (bool);
SetPartialityModel/GetPartialityModel -> ForceStillProcessing/GetForceStillProcessing.
Remove the enum.
- DiffractionExperiment: drop GetPartialityModel(); the rotation-vs-stills decision is now
just GetCombine3D() (set by the tool = rotation && !force_still). The wedge getters no longer
key off the model (dead since wedge refinement was removed).
- jfjoch_process: `-P/--partiality fixed|rot3d` -> `--force-still-processing` (a rotation
dataset scaled as independent stills). Auto-detect sets combine_3d for rotation data unless
the flag is given.
- jfjoch_scale: `-P fixed|rot3d` now toggles combine_3d directly (no PartialityModel).
- jfjoch_viewer: the "process as stills" toggle sets ForceStillProcessing(!rotation_mode) -
UI unchanged, just wired to the new field.
PartialityModel was never in the OpenAPI, so no generated clients change. Rotation path
behaviour is unchanged (lyso 16.4/99.6%/87.3%); --force-still-processing correctly routes to
ScaleOnTheFly. CUDA + non-CUDA + viewer all build.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>