v0.5.106: condition block and legacy kbs fixes, GPT 5.4#3431
v0.5.106: condition block and legacy kbs fixes, GPT 5.4#3431icecrasher321 merged 4 commits intomainfrom
Conversation
* feat(models): add gpt-5.4 and gpt-5.4-pro model definitions * fix(providers): update test for gpt-5.4-pro missing verbosity support
* fix(kbs): legacy subblock id migration + CI check * cleanup migration code * address regex inaccuracy
…highlighting, duplicate terminal logs (#3429) * fix(condition): consecutive error logging + execution dequeuing * fix snapshot highlighting * address minor gaps * fix incomplete case * remove activatedEdges path * cleanup tests * address greptile comments * update tests:
PR SummaryMedium Risk Overview Improves condition and subflow output semantics. Condition blocks now always set Aligns client-side edge highlighting with executor behavior. The UI marks outgoing edges on completion/error using a shared helper that mirrors executor activation rules (condition/router handles, error/source), and preview rendering now uses executed block Adds guardrails for subblock ID renames and expands migrations. Introduces Updates model catalog. Adds Written by Cursor Bugbot for commit d640fa0. Configure here. |
|
The latest updates on your projects. Learn more about Vercel for GitHub. |
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 2 potential issues.
Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
apps/sim/app/workspace/[workspaceId]/w/[workflowId]/utils/workflow-execution-utils.ts
Show resolved
Hide resolved
apps/sim/app/workspace/[workspaceId]/w/[workflowId]/utils/workflow-execution-utils.ts
Outdated
Show resolved
Hide resolved
Greptile SummaryThis PR bundles three focused fixes — condition block dead-end routing, legacy knowledge-block subblock ID migration, and new GPT-5.4 model definitions — along with supporting infrastructure (migration pipeline, CI stability check, empty-subflow SSE events). Key changes:
Findings:
Confidence Score: 4/5
Flowchart%%{init: {'theme': 'neutral'}}%%
flowchart TD
A[Condition Block Executes] --> B{Matching condition found?}
B -- No match --> C[selectedCondition = null\nconditionResult = false]
B -- Match found --> D{Has outgoing edge?}
D -- Yes --> E[selectedConnection set\nselectedOption = conditionId\nconditionResult = true]
D -- No / Dead-end --> F[selectedConnection = null\nselectedOption = conditionId\nconditionResult = true]
E --> G[EdgeManager.processOutgoingEdges]
F --> G
C --> G
G --> H{activatedTargets.length == 0?}
H -- No, some edges fired --> I[Normal flow: activated targets queued]
H -- Yes, dead-end --> J{isRoutedDeadEnd?\nselectedOption OR selectedRoute set?}
J -- No true dead-end\nselectedOption null --> K[Queue cascadeTargets normally\nloop sentinel fires]
J -- Yes routed dead-end\nselectedOption set --> L{isEnclosingSentinel?\nsource.loopId == sentinel.loopId?}
L -- Yes same subflow --> M[Queue enclosing sentinel only\nloop can continue/exit]
L -- No downstream subflow --> N[Skip sentinel\nprevents spurious execution]
style F fill:#f9f,stroke:#333
style M fill:#9f9,stroke:#333
style N fill:#f99,stroke:#333
Last reviewed commit: d640fa0 |
Summary