feat: accept script_body and parameters_schema in save-to-library flow
Previously save_to_library() hardcoded parameters_schema to empty and always used session.latest_script. Now accepts optional overrides from the frontend for parameterized script bodies. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -179,6 +179,8 @@ async def save_to_library(
|
|||||||
share_with_team=data.share_with_team,
|
share_with_team=data.share_with_team,
|
||||||
user_id=current_user.id,
|
user_id=current_user.id,
|
||||||
team_id=current_user.team_id,
|
team_id=current_user.team_id,
|
||||||
|
script_body=data.script_body,
|
||||||
|
parameters_schema=data.parameters_schema,
|
||||||
)
|
)
|
||||||
except ValueError as e:
|
except ValueError as e:
|
||||||
raise HTTPException(status_code=400, detail=str(e))
|
raise HTTPException(status_code=400, detail=str(e))
|
||||||
|
|||||||
@@ -82,3 +82,5 @@ class SaveToLibraryRequest(BaseModel):
|
|||||||
description: str | None = None
|
description: str | None = None
|
||||||
category_id: UUID | None = None
|
category_id: UUID | None = None
|
||||||
share_with_team: bool = False
|
share_with_team: bool = False
|
||||||
|
script_body: str | None = None
|
||||||
|
parameters_schema: dict | None = None
|
||||||
|
|||||||
@@ -323,6 +323,8 @@ async def save_to_library(
|
|||||||
share_with_team: bool,
|
share_with_team: bool,
|
||||||
user_id: UUID,
|
user_id: UUID,
|
||||||
team_id: UUID | None,
|
team_id: UUID | None,
|
||||||
|
script_body: str | None = None,
|
||||||
|
parameters_schema: dict | None = None,
|
||||||
) -> "ScriptTemplate":
|
) -> "ScriptTemplate":
|
||||||
"""Save the latest generated script to the Script Library as a ScriptTemplate."""
|
"""Save the latest generated script to the Script Library as a ScriptTemplate."""
|
||||||
import uuid as uuid_mod
|
import uuid as uuid_mod
|
||||||
@@ -361,8 +363,8 @@ async def save_to_library(
|
|||||||
name=name,
|
name=name,
|
||||||
slug=slug,
|
slug=slug,
|
||||||
description=description,
|
description=description,
|
||||||
script_body=session.latest_script,
|
script_body=script_body or session.latest_script,
|
||||||
parameters_schema={"parameters": []},
|
parameters_schema=parameters_schema or {"parameters": []},
|
||||||
default_values={},
|
default_values={},
|
||||||
validation_rules={},
|
validation_rules={},
|
||||||
tags=[session.language, "ai-generated"],
|
tags=[session.language, "ai-generated"],
|
||||||
|
|||||||
Reference in New Issue
Block a user