right now we only turn the json schema into a nice record contract if it can be perfectly represented as such. otherwise, we fall back to a contract generated from a predicate.
in that more general case, the LSP doesn't get any information for e.g. autocompletion.
we should
generate a contract that allows more than the json schema would, but will give some information to the LSP.
use std.contract.Sequence to apply both that contract and the more accurate predicate contract
teach the LSP to understand std.contract.Sequence so it can get the information out of the record contract
right now we only turn the json schema into a nice record contract if it can be perfectly represented as such. otherwise, we fall back to a contract generated from a predicate.
in that more general case, the LSP doesn't get any information for e.g. autocompletion.
we should
std.contract.Sequence
to apply both that contract and the more accurate predicate contractstd.contract.Sequence
so it can get the information out of the record contract