Support configuring effort alongside model

This commit is contained in:
Ian Gulliver
2026-10-23 08:40:00 -07:00
parent 6bbae3fffe
commit d6d9dd86d9
40 changed files with 805 additions and 541 deletions
+8 -8
View File
@@ -31,15 +31,15 @@ func insertDefinition(ctx context.Context, tx *sql.Tx, def api.WorkflowDefinitio
case s.Random != nil:
kind, children = "random", s.Random
}
_, err := tx.ExecContext(ctx, `INSERT INTO workflow_steps (definition_id, id, parent, position, kind, stage, model, prompt, weight) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?)`,
id, stepID, parent, pos, kind, s.Stage, s.Model, s.Prompt, s.Weight)
_, err := tx.ExecContext(ctx, `INSERT INTO workflow_steps (definition_id, id, parent, position, kind, stage, model, effort, prompt, weight) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`,
id, stepID, parent, pos, kind, s.Stage, s.Model, s.Effort, s.Prompt, s.Weight)
if err != nil {
return err
}
if s.Agents != nil {
for i, a := range *s.Agents {
_, err = tx.ExecContext(ctx, `INSERT INTO workflow_agents (definition_id, step_id, position, name, model, prompt) VALUES (?, ?, ?, ?, ?, ?)`,
id, stepID, i, a.Name, a.Model, a.Prompt)
_, err = tx.ExecContext(ctx, `INSERT INTO workflow_agents (definition_id, step_id, position, name, model, effort, prompt) VALUES (?, ?, ?, ?, ?, ?, ?)`,
id, stepID, i, a.Name, a.Model, a.Effort, a.Prompt)
if err != nil {
return err
}
@@ -74,14 +74,14 @@ func loadDefinition(ctx context.Context, q querier, id string) (api.WorkflowDefi
}
agents := map[int][]api.TeamMember{}
rows, err := q.QueryContext(ctx, `SELECT step_id, name, model, prompt FROM workflow_agents WHERE definition_id = ? ORDER BY step_id, position`, id)
rows, err := q.QueryContext(ctx, `SELECT step_id, name, model, effort, prompt FROM workflow_agents WHERE definition_id = ? ORDER BY step_id, position`, id)
if err != nil {
return def, err
}
for rows.Next() {
step := 0
a := api.TeamMember{}
err = rows.Scan(&step, &a.Name, &a.Model, &a.Prompt)
err = rows.Scan(&step, &a.Name, &a.Model, &a.Effort, &a.Prompt)
if err != nil {
rows.Close()
return def, err
@@ -94,14 +94,14 @@ func loadDefinition(ctx context.Context, q querier, id string) (api.WorkflowDefi
}
children := map[int][]stepRow{}
rows, err = q.QueryContext(ctx, `SELECT id, coalesce(parent, -1), kind, stage, model, prompt, weight FROM workflow_steps WHERE definition_id = ? ORDER BY coalesce(parent, -1), position`, id)
rows, err = q.QueryContext(ctx, `SELECT id, coalesce(parent, -1), kind, stage, model, effort, prompt, weight FROM workflow_steps WHERE definition_id = ? ORDER BY coalesce(parent, -1), position`, id)
if err != nil {
return def, err
}
for rows.Next() {
r := stepRow{}
parent := 0
err = rows.Scan(&r.id, &parent, &r.kind, &r.step.Stage, &r.step.Model, &r.step.Prompt, &r.step.Weight)
err = rows.Scan(&r.id, &parent, &r.kind, &r.step.Stage, &r.step.Model, &r.step.Effort, &r.step.Prompt, &r.step.Weight)
if err != nil {
rows.Close()
return def, err