diff --git a/backend/database.sqlite b/backend/database.sqlite new file mode 100644 index 0000000..e69de29 diff --git a/src/components/ImageTo3DModal.tsx b/src/components/ImageTo3DModal.tsx index 3d88a43..c3708f4 100644 --- a/src/components/ImageTo3DModal.tsx +++ b/src/components/ImageTo3DModal.tsx @@ -306,7 +306,7 @@ export const ImageTo3DModal: React.FC = ({ isOpen, onClose, }; if (meshyModelType !== 'lowpoly') { - payload.ai_model = meshyAiModel; + payload.ai_model = meshyAiModel === 'latest' ? 'meshy-6' : meshyAiModel; payload.should_remesh = meshyShouldRemesh; if (meshyShouldRemesh) { payload.topology = meshyTopology; @@ -350,8 +350,9 @@ export const ImageTo3DModal: React.FC = ({ isOpen, onClose, if (!pollRes.ok) throw new Error("Meshy API: Polling failed."); const pollData = await pollRes.json(); - const status = pollData.status; + const status = (pollData.status || '').toUpperCase(); const progress = pollData.progress || 0; + console.log("Meshy poll:", pollData); // Debug log setProgressMessage(`Generating... ${progress}%`); if (status === 'SUCCEEDED') { @@ -362,7 +363,7 @@ export const ImageTo3DModal: React.FC = ({ isOpen, onClose, isDone = true; deductCredit(); } else if (status === 'FAILED' || status === 'EXPIRED') { - throw new Error(`Meshy API Task ${status}`); + throw new Error(`Meshy API Task ${status}: ${pollData.task_error?.message || 'Unknown error'}`); } } }