return raw preview samples on format detection failure for manual column mapping

This commit is contained in:
Roland Tannous 2026-02-12 15:39:56 +00:00
commit dd71b0f18a
2 changed files with 15781 additions and 2 deletions

View file

@ -81,9 +81,10 @@ async def check_format(request: CheckFormatRequest):
logger.info(f"Format check result: requires_mapping={result['requires_manual_mapping']}, format={result['detected_format']}")
# If format is processable, generate preview samples via format_dataset
# Generate preview samples
preview_samples = None
if not result["requires_manual_mapping"]:
# Format detected — return processed preview
try:
format_result = format_dataset(
preview_slice,
@ -93,7 +94,13 @@ async def check_format(request: CheckFormatRequest):
processed = format_result["dataset"]
preview_samples = [dict(row) for row in processed]
except Exception as e:
logger.warning(f"Preview generation failed (non-fatal): {e}")
logger.warning(f"Processed preview generation failed (non-fatal): {e}")
# Fall back to raw samples so frontend still has something
preview_samples = [dict(row) for row in preview_slice]
else:
# Format detection failed — return raw samples so user can
# see actual data and map columns in the frontend
preview_samples = [dict(row) for row in preview_slice]
return CheckFormatResponse(
requires_manual_mapping=result["requires_manual_mapping"],

15772
studio/frontend/package-lock.json generated Normal file

File diff suppressed because it is too large Load diff