Merge pull request #32 from unslothai/feature/datasets-endpoint-preview-samples
Return Raw Preview Samples on Format Detection Failure
This commit is contained in:
commit
0caad17134
2 changed files with 10 additions and 2 deletions
1
.gitignore
vendored
1
.gitignore
vendored
|
|
@ -36,3 +36,4 @@ Thumbs.db
|
|||
resources/
|
||||
tmp/
|
||||
auth.db
|
||||
studio/frontend/package-lock.json
|
||||
|
|
|
|||
|
|
@ -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"],
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue