After #2817 is merged, mid-training recipe update should be well supported:
- Built-in recipes should compare full config, not just recipe state type.
- CustomRecipe should compare a stable qfactory/cache key or version.
- Add tests for replacing/mutating qfactories and same-class built-in changes.
After #2817 is merged, mid-training recipe update should be well supported: