Harden Sol planning smoke schema prompt

This commit is contained in:
Daniel Maddern 2026-08-15 14:17:23 +07:00
parent e11bcd1e59
commit 71a701f0b7

View file

@ -19,8 +19,12 @@ class Command(BaseCommand):
if resource is None: if resource is None:
raise CommandError("No Sol/opencode resource configured. Run seed_spark_resources first.") raise CommandError("No Sol/opencode resource configured. Run seed_spark_resources first.")
prompt = ( prompt = (
"Return only JSON with a project_plan object. Include goal, scope, acceptance_criteria, " "Return only valid JSON. No markdown. No commentary. The JSON must match this exact shape: "
"milestones, features, tasks with id, goal, acceptance_criteria, dependencies. Goal: " "{\"project_plan\":{\"goal\":str,\"scope\":str,\"acceptance_criteria\":[str],"
"\"milestones\":[{\"key\":str,\"title\":str,\"goal\":str,\"features\":[{"
"\"key\":str,\"title\":str,\"description\":str,\"acceptance_criteria\":[str],"
"\"tasks\":[{\"id\":str,\"goal\":str,\"acceptance_criteria\":[str],"
"\"dependencies\":[str]}]}]}]}}. Include at least one milestone, one feature, and one task. Goal: "
+ options["goal"] + options["goal"]
) )
response = SolProvider(resource).complete(ModelRequestContract(purpose="PLANNING", prompt=prompt, token_budget=4000)) response = SolProvider(resource).complete(ModelRequestContract(purpose="PLANNING", prompt=prompt, token_budget=4000))