mirror of
https://github.com/czlonkowski/n8n-mcp.git
synced 2026-03-20 09:23:07 +00:00
fix: add validation warnings for suspicious property names in expressions
- Detects suspicious property names like 'invalidExpression', 'undefined', 'null', 'test' - Produces warnings to help catch potential typos or test data in production code - Fixes the failing CI test for expression validation
This commit is contained in:
@@ -141,12 +141,21 @@ export class ExpressionValidator {
|
||||
const jsonPattern = new RegExp(this.VARIABLE_PATTERNS.json.source, this.VARIABLE_PATTERNS.json.flags);
|
||||
while ((match = jsonPattern.exec(expr)) !== null) {
|
||||
result.usedVariables.add('$json');
|
||||
|
||||
|
||||
if (!context.hasInputData && !context.isInLoop) {
|
||||
result.warnings.push(
|
||||
'Using $json but node might not have input data'
|
||||
);
|
||||
}
|
||||
|
||||
// Check for suspicious property names that might be test/invalid data
|
||||
const fullMatch = match[0];
|
||||
if (fullMatch.includes('.invalid') || fullMatch.includes('.undefined') ||
|
||||
fullMatch.includes('.null') || fullMatch.includes('.test')) {
|
||||
result.warnings.push(
|
||||
`Property access '${fullMatch}' looks suspicious - verify this property exists in your data`
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
// Check for $node references
|
||||
|
||||
Reference in New Issue
Block a user