Feat v0.3.6 demo workflows + interactive demo
Four example workflow packages proving the engine end-to-end: - Bug Report Triage: public entry, branch routing, SLA timer - Employee Onboarding: Starlark automated stages, signoff gate - Content Approval: multi-party signoff, revision cycle loop - Webhook Notifier: http.post, connections fallback, delivery logging Demo surface at /s/workflow-demo with cards, stage diagrams, Starlark viewer, API examples, active/published status, and copyable public links. Engine fixes: started_by in automated context, sla_seconds in package installer, parseSnapshotStages for wrapped/legacy formats. Platform fixes: extension SDK boot in base.html (Preact globals + boot()), admin teams paginated response extraction, workflow adoption endpoint (POST /teams/:teamId/workflows/:id/adopt), team-admin copyable link. Review pass remains on roadmap for remaining UI polish. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -115,6 +115,9 @@ func (s *WorkflowStore) Update(ctx context.Context, id string, patch models.Work
|
||||
if patch.Description != nil {
|
||||
add("description", *patch.Description)
|
||||
}
|
||||
if patch.TeamID != nil {
|
||||
add("team_id", *patch.TeamID)
|
||||
}
|
||||
if patch.Branding != nil {
|
||||
add("branding", string(*patch.Branding))
|
||||
}
|
||||
|
||||
@@ -73,6 +73,10 @@ func (s *WorkflowStore) Update(ctx context.Context, id string, patch models.Work
|
||||
sets = append(sets, "description = ?")
|
||||
args = append(args, *patch.Description)
|
||||
}
|
||||
if patch.TeamID != nil {
|
||||
sets = append(sets, "team_id = ?")
|
||||
args = append(args, *patch.TeamID)
|
||||
}
|
||||
if patch.Branding != nil {
|
||||
sets = append(sets, "branding = ?")
|
||||
args = append(args, string(*patch.Branding))
|
||||
|
||||
Reference in New Issue
Block a user