You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
[Bug] Whole-number Double search attributes are missing from list_workflows() typed search attributes #1956
Read a Double (float) search attribute from the results of client.list_workflows() through typed_search_attributes.
Describe the bug
When a Double search attribute holds a whole number such as 5.0, the visibility API returns its payload as the JSON integer 5. decode_typed_search_attributes() decodes that as a Python int, then drops the pair because int is not the float origin type of the key. The attribute silently disappears from WorkflowExecution.typed_search_attributes.
describe() is not affected because it echoes the payload the client sent (5.0). The same drop applies to any other path that decodes a payload written as 5, for example a workflow started by an SDK whose JSON encoder writes whole-number doubles without a decimal point.
I found it while reading the search attribute converter, not from a production incident. The repro is real, though: against the dev server, a Double attribute set to 5.0 comes back as 5.0 from describe() and as None from list_workflows(). Anyone who lists workflows and reads a whole-number Double gets a missing value with no error. Priority is your call; #1957 has the fix if you want it.
Activity
tconley1428 commentedon Oct 11, 2026
Is this an issue you are actually running into with a user scenario, or are you looking for potential bugs to fix?
RaphaelFakhri commentedon Oct 13, 2026
I found it while reading the search attribute converter, not from a production incident. The repro is real, though: against the dev server, a
Doubleattribute set to5.0comes back as5.0fromdescribe()and asNonefromlist_workflows(). Anyone who lists workflows and reads a whole-numberDoublegets a missing value with no error. Priority is your call; #1957 has the fix if you want it.