Every change, fix, and new feature — newest first.
All three connectors support simulation mode, structured diffs, and consistent error handling with httpx HTTPStatus and network error recovery.
/studio/:id/history — full snapshot timeline of every workflow definition changecreate_access_token(user.id) (was passing a dict)/me/context endpoints now declared before /me/:user_id to prevent FastAPI wildcard shadowinguser_id ownershipfrom __future__ import annotations (caused FastAPI ForwardRef type resolution errors)KnowledgeConnector — search and get methods available in any LLM or Tool stepPOST/GET/DELETE /knowledgeGET /workflows/:id/optimize — static analysis of run history to surface dead steps, flaky steps, always-succeeding steps, and slow stepsPOST /workflows/compile-from-examples — describe a workflow by input/output pairs; Claude infers the intent and compiles a full workflow definition/agents, /agents/:id)/auth/login — Google OAuth + email dev-login/auth/signup — account creation flow/auth/* routes/changelog — versioned release notes with markdown bodies and tag pills/changelog/rss.xml/ — hero, feature grid, example workflows, connector cloud, CTA/pricing — Free / Pro / Self-Host tier comparison with FAQ accordion/auth/login — Google OAuth primary, email dev-login secondary/templates — API-driven + static templates, DAG preview modal, search and category filters/studio is now a workflow card list; /studio/new and /studio/:id are the editor routes/, /pricing, /auth/*)WorkflowDAG — ownerNumber and onSaveConfig are now included in useMemo deps; handleSaveConfig wrapped in useCallbackrunStatus changes no longer cause ELK re-layout churn (status excluded from layout dep array)foreach step IDs now correctly scoped inside the loop bodycode StepType added to DAG node rendererToolNode, LLMNode, BranchNode, ForeachNode, WaitNode, CodeNode with distinct visual treatmentsuseRunStatus hook — WebSocket subscription for per-step status updatesnext_step edges and fixes input_expr references between steps/compile/stream — progress events for each compilation stagehandle_telegram_message() interprets natural language messages and triggers workflow compilation or runlist_transactions, get_balance, get_institutions; defaults to sandbox environment/ws/runs/{run_id} — real-time step-by-step execution eventsPOST /workflows/{id}/run dispatches to FastAPI BackgroundTasks and returns immediatelyAsyncSessionLocal session (was sharing request session, causing post-response errors)GET /runs, filterable by workflow and statuswaiting status — runs pause at WaitStep approval gates; WebSocket stays openOutboundPolicy enforces WhatsApp number allowlists and confidence thresholds before any outbound actionsimulation=true fires every step without calling real external APIs; diffs recorded for reviewLogEntry enriched with step_type, skipped, gated, gated_reason fields