Audit finding
VisualProfileCatalog exposes transform-specific tuning normalization through VisualProfileDefinition, but the profile update and editor reset paths still hard-code Soft Invert behavior:
VisualProfileManagementService.UpdateTuning calls VisualProfileDefaults.NormalizeSoftInvertTuning(values) directly;
VisualProfileEditorForm labels the action Reset soft profile;
VisualProfileEditorForm.ResetValues applies VisualProfileDefaults.SoftInvertTuning directly.
This works only because Soft Invert is currently the sole editable transform. Adding another transform with SupportsTuning = true would silently normalize and reset it using Soft Invert rules.
Target state
Make the registered transform/profile definition the single source of truth for:
- tuning normalization;
- canonical/default tuning used by reset;
- supported editor adjustments, if transform-specific adjustment sets are introduced;
- transform-specific editor wording.
Keep the current catalog-based design. Do not add a second registry or a generic plugin framework.
Acceptance criteria
Audit finding
VisualProfileCatalogexposes transform-specific tuning normalization throughVisualProfileDefinition, but the profile update and editor reset paths still hard-code Soft Invert behavior:VisualProfileManagementService.UpdateTuningcallsVisualProfileDefaults.NormalizeSoftInvertTuning(values)directly;VisualProfileEditorFormlabels the actionReset soft profile;VisualProfileEditorForm.ResetValuesappliesVisualProfileDefaults.SoftInvertTuningdirectly.This works only because Soft Invert is currently the sole editable transform. Adding another transform with
SupportsTuning = truewould silently normalize and reset it using Soft Invert rules.Target state
Make the registered transform/profile definition the single source of truth for:
Keep the current catalog-based design. Do not add a second registry or a generic plugin framework.
Acceptance criteria
VisualProfileManagementService.UpdateTuningnormalizes values through the definition selected byprofile.TransformId.VisualProfileDefaults.SoftInvertTuning.