Quirk "Does not exist" condition is not triggered when quirk doesn't exist
Last updated: November 20, 2025
When configuring Signals, you can use the “Does not exist” condition for your Quirks. There are best practices how to use this condition to achieve the desired result.
The “Does not exist” condition will not match the options below
Empty strings (
'')Missing or unset values
Zero values (
0)False boolean values (
false)
Solutions
Solution 1: Use Explicit Placeholder Values
Use explicit string values to represent unknown or missing data when settings Quirks in the code
await context.update({
quirks: {
// ❌ Incorrect - This may result in empty string value
// null or undefined won't be accepted as a quirk value type
city = geoIPData?.city,
region = geoIPData?.region.
// ✅ Correct - Use explicit placeholder values
city: geoIPData?.city || 'unknown',
region: geoIPData?.region || 'unknown',
},
});Now check for these specific values in your signal:
Use "equals" condition with string value
unknownUse "not equals" condition to exclude
unknownvalues
Solution 2: Check for Empty Strings with RegEx
If you need to detect empty strings, use a RegEx match condition:
RegEx Pattern: ^$
This pattern matches empty strings specifically, but this will not match for a missing value.
Solution 3: Combined Approach
For comprehensive coverage, combine both solutions:
Primary condition: Check for your placeholder value (e.g.,
unknown)Secondary condition: Use RegEx
^$to catch empty stringsCombine with OR logic to handle both scenarios