-
Notifications
You must be signed in to change notification settings - Fork 18.4k
Open
Labels
🐞 bugSomething isn't workingSomething isn't working
Description
Self Checks
- I have read the Contributing Guide and Language Policy.
- This is only for bug report, if you would like to ask a question, please head to Discussions.
- I have searched for existing issues search for existing issues, including closed ones.
- I confirm that I am using English to submit this report, otherwise it will be closed.
- 【中文用户 & Non English User】请使用英语提交,否则会被关闭 :)
- Please do not modify this template :) and fill in all the required fields.
Dify version
1.10.0-rc1
Cloud or Self Hosted
Self Hosted (Docker)
Steps to reproduce
- Create a workflow with an if-else node
- Add a condition: integer variable
0compared with string"0.95"using operator<= - The condition incorrectly evaluates to
Falseinstead ofTrue
✔️ Expected Behavior
When comparing numeric values, the system should correctly convert types:
0 <= "0.95"should evaluate toTrue1 >= "0.95"should evaluate toTrue1.1 >= "0.95"should evaluate toTrue
❌ Actual Behavior
The comparison fails because when comparing an integer with a float string, the code converts the string to integer (losing precision). For example, "0.95" becomes 0, so 0 <= 0 evaluates incorrectly.
dosubot
Metadata
Metadata
Assignees
Labels
🐞 bugSomething isn't workingSomething isn't working