Goal
Introduce a replaceable AI image-to-3D provider layer while keeping the current procedural model generation as the safe fallback.
Scope
- Add an
AI3DProvider interface for source image bytes, category, and task parameters.
- Add provider selection configuration:
AI_3D_ENABLED, AI_3D_PROVIDER, timeout, retry count, Meshy API key, and local endpoint.
- Add a
procedural provider that wraps the current deterministic base mesh generation.
- Normalize provider metadata into
base_mesh and preview_model artifact metadata without adding new artifact kinds.
- Keep
model_generating as the existing pipeline stage.
Acceptance Criteria
- With AI disabled or unconfigured, current model generation behavior is unchanged.
- Provider metadata includes
model_provider, fallback_used, source_image_ids, raw_output_format, and duration fields.
- Unit tests cover provider selection, disabled mode, and procedural fallback.
Goal
Introduce a replaceable AI image-to-3D provider layer while keeping the current procedural model generation as the safe fallback.
Scope
AI3DProviderinterface for source image bytes, category, and task parameters.AI_3D_ENABLED,AI_3D_PROVIDER, timeout, retry count, Meshy API key, and local endpoint.proceduralprovider that wraps the current deterministic base mesh generation.base_meshandpreview_modelartifact metadata without adding new artifact kinds.model_generatingas the existing pipeline stage.Acceptance Criteria
model_provider,fallback_used,source_image_ids,raw_output_format, and duration fields.