fix: resolve frontend/backend integration bugs
- Rename skincare route prefix /skin-snapshots → /skincare to match API client - Add redirect_slashes=False to FastAPI app; change collection routes from "/" to "" to eliminate 307 redirects on POST/GET without trailing slash - Fix redirect() inside try/catch in products/new and routines/new server actions (SvelteKit redirect() throws and was being caught as a 500 error) - Eagerly load inventory and steps relationships via explicit SELECT + model_dump(mode="json"), working around SQLModel 0.0.37 not serializing Relationship fields in response_model - Add field_validator for product_effect_profile to coerce DB-returned dict → ProductEffectProfile, eliminating Pydantic serializer warning - Update all tests to use routes without trailing slash Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
parent
8d4f9d1fc6
commit
9bf94a979c
11 changed files with 85 additions and 68 deletions
|
|
@ -26,8 +26,9 @@ export const actions: Actions = {
|
|||
.map((t) => t.trim())
|
||||
.filter(Boolean) ?? [];
|
||||
|
||||
let product;
|
||||
try {
|
||||
const product = await createProduct({
|
||||
product = await createProduct({
|
||||
name,
|
||||
brand,
|
||||
category,
|
||||
|
|
@ -36,9 +37,9 @@ export const actions: Actions = {
|
|||
leave_on,
|
||||
targets
|
||||
});
|
||||
redirect(303, `/products/${product.id}`);
|
||||
} catch (e) {
|
||||
return fail(500, { error: (e as Error).message });
|
||||
}
|
||||
redirect(303, `/products/${product.id}`);
|
||||
}
|
||||
};
|
||||
|
|
|
|||
|
|
@ -17,11 +17,12 @@ export const actions: Actions = {
|
|||
return fail(400, { error: 'Date and AM/PM are required' });
|
||||
}
|
||||
|
||||
let routine;
|
||||
try {
|
||||
const routine = await createRoutine({ routine_date, part_of_day, notes: notes || undefined });
|
||||
redirect(303, `/routines/${routine.id}`);
|
||||
routine = await createRoutine({ routine_date, part_of_day, notes: notes || undefined });
|
||||
} catch (e) {
|
||||
return fail(500, { error: (e as Error).message });
|
||||
}
|
||||
redirect(303, `/routines/${routine.id}`);
|
||||
}
|
||||
};
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue