ITADN

Ability to provide type hints to non-identifier keys

#871Openstopachka 创建于 2025-11-21
S
stopachkacommented
Consider a JSON object ```json { "with-hyphen": "a-string", "$startsWithDollarSign": 123 } ``` **Problem**: It's not possible to provide type-hints for `with-hyphen` and `$startsWithDolalrSign` CEL can get type information well if we can express an object as protobuf, or use `StructType`. However, there are times when we have objects that have non-identifier keys. Right now, it's not possible to provide typesafety for non-identifier keys. It would be amazing if we could. **Alternatives considered** To solve this for ourselves, we considered to hacks: 1. Use aliases: walk the CEL tree, and rename all non-identifer keys to some known identifer-style key. 2. Run our own compile step validation: walk the cel tree, and do the type checking ourselves. Right now we are going with 2., but if there was some built-in way to specify types for keys from index access, it would be amazing.
1 条评论