Compare commits

...
Author SHA1 Message Date
KarrixLee 616cbe9a91 add: comments for clarification 2025-08-04 14:41:05 +08:00
KarrixLee afc865107c refactor: support 3 attribute for the validation prompt 2025-08-04 13:08:52 +08:00
+37 -3
View File
@@ -283,11 +283,45 @@ async def post_prompt(json_data):
prompt = json_data["prompt"]
prompt_id = json_data.get("prompt_id") or str(uuid.uuid4())
partial_execution_targets = None
if "partial_execution_targets" in json_data:
partial_execution_targets = json_data["partial_execution_targets"]
# Handle different validate_prompt signatures (newest to oldest)
valid = None
last_error = None
# v0.3.48 (3 args)
try:
valid = await execution.validate_prompt(prompt_id, prompt)
valid = await execution.validate_prompt(
prompt_id, prompt, partial_execution_targets
)
except TypeError as e:
logger.warning(f"Trying old validate_prompt signature: {e}")
valid = execution.validate_prompt(prompt)
last_error = e
logger.debug(
f"validate_prompt with 3 params not supported, trying with 2. Debug: {last_error}"
)
# v0.3.45 - 0.3.47 (2 args)
if valid is None:
try:
valid = await execution.validate_prompt(prompt_id, prompt)
except TypeError as e:
last_error = e
logger.debug(
f"validate_prompt with 2 params not supported, trying legacy signature. Debug: {last_error}"
)
# v0.3.44 or older (1 arg)
if valid is None:
try:
valid = execution.validate_prompt(prompt)
except TypeError as e:
last_error = e
logger.error(
f"validate_prompt failed with all signatures. Last error: {last_error}"
)
raise
extra_data = {}
if "extra_data" in json_data: