feat(cypher): string functions + fail loudly on unsupported syntax
Add single-argument string functions to projections — size, length, trim, ltrim, rtrim, reverse — via the generic function recognizer. More importantly, change the engine to FAIL LOUDLY on unsupported syntax instead of silently projecting an empty column. An unknown function call (e.g. split(...), coalesce(...)) or list indexing/slicing in RETURN/WITH now returns a clear "unsupported function '<name>' (supported: ...)" error rather than a valid-looking but blank result — the same silent-empty failure mode that hid the labels() bug. This supersedes the #373 graceful-resync behaviour (its test is flipped to assert the error; a new test covers an unknown function in RETURN). Decision: full Cypher Tier 3 (lists/maps/paths/comprehensions/params — a value data-model rewrite) is intentionally NOT implemented; clear errors on unsupported features are the higher-value, lower-risk completeness win for the read subset agents actually use. Refs: Cypher read suite (tiers 1-2a + unsupported-syntax hardening)
M
Martin Vogel committed
67a7334e60056e4c3be5619f896116d6833b8818
Parent: 71a6c57