feat(server): default steps seed-on-boot + admin re-sync

This commit is contained in:
2026-07-21 10:25:41 +01:00
parent baa7bb239d
commit 15c9da1b01
5 changed files with 156 additions and 0 deletions
+11
View File
@@ -22,6 +22,7 @@ func registerWorkflowRoutes(g *gin.RouterGroup) {
g.DELETE("/steps/:id", deleteStep)
g.GET("/steps/:id/export", exportStep)
g.POST("/steps/import", importStep)
g.POST("/steps/seed-defaults", seedDefaults)
g.POST("/steps/parse", parseStep)
g.GET("/workflows", listWorkflows)
@@ -201,6 +202,16 @@ func exportStep(c *gin.Context) {
c.Data(http.StatusOK, "application/json", b)
}
func seedDefaults(c *gin.Context) {
created, updated, err := services.SeedDefaultSteps()
if err != nil {
c.JSON(http.StatusInternalServerError, gin.H{"error": err.Error()})
return
}
services.LogEvent("workflow.defaults_synced", actorFromCtx(c), "", "", fmt.Sprintf("default steps synced: %d created, %d updated", created, updated))
c.JSON(http.StatusOK, gin.H{"created": created, "updated": updated})
}
func importStep(c *gin.Context) {
body, err := io.ReadAll(c.Request.Body)
if err != nil {