v3.2.0 — Import Conflict Handling Design
v3.2.0
This is a docs-only release.
Summary
v3.2.0 adds the Import Conflict Handling Design Polish.
This release documents how future import conflict handling should work after v3.0.0 introduced Import Selected Profiles.
No app code was changed in this release.
Added
- Added v3.2.0 conflict handling design notes
- Clarified current v3.0.0 import behavior
- Defined conflict types
- Defined safe default behavior
- Designed future Rename behavior
- Designed future Replace behavior
- Clarified duplicate handling
- Clarified selection behavior
- Added import result logging guidance
- Updated README, known limitations, product direction, onboarding, and task notes
Current Import Behavior
Current behavior remains:
- valid non-conflicting profiles can be imported
- invalid profiles are blocked
- conflicting profiles are skipped / disabled
- Rename is not implemented
- Replace is not implemented
- selected profile does not change automatically
- no server lifecycle changes
- no network calls
- no
/v1/modelscalls - no external process ownership changes
Conflict Types
The design covers conflicts such as:
- same profile name as an existing profile
- same
modelID + host + portas an existing profile - duplicate names inside an imported file
- duplicate
modelID + host + portinside an imported file - rename result collisions
- replace target ambiguity
- document-level blocking errors
Future Rename Design
Rename is designed as the safer first conflict-resolution step.
Future Rename behavior should:
- be opt-in
- preview the proposed new name before import
- use deterministic suggestions such as
<name> (Imported) - revalidate renamed profiles
- avoid collisions with existing or imported profiles
- avoid server lifecycle changes
- avoid selected profile changes
Future Replace Design
Replace is higher risk and should require explicit confirmation.
Future Replace behavior should:
- show before / after profile metadata
- clearly identify the target existing profile
- block ambiguous targets
- update profile metadata only
- not delete model files
- not delete caches
- not affect logs
- not start / stop / restart servers
- not change selected profile automatically
- not affect adopted external server state
Safety Boundary
Conflict handling remains metadata-only.
It must not:
- import secrets
- import API keys
- import tokens
- import executable paths
- import model weights
- import caches
- start servers
- stop servers
- restart servers
- call
/v1/models - make external HTTP requests
- change process ownership
Direct Mode Boundary
Direct Mode remains unchanged:
OpenAI-compatible client -> mlx_lm.server or adopted external server -> MLX model
MLX Server Manager does not proxy inference requests, act as a chat UI, perform multi-backend routing, or rewrite requests.
Current Binary Asset
The current downloadable app binary remains the v3.0.0 unsigned build:
MLXServerManager-v3.0.0-unsigned.zip
This v3.2.0 release does not include a new binary asset.