Emit the full span range in beloch:edges provenance #49
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Currently each
beloch:edgesentry serializes only the span start —span_to_stringkeeps(start, _)and drops the end (lib/error.ml:9), sospanreads e.g.through.bel:3:1: a point, not a range.The provenance record already carries the full range (
Error.span = start, end;lib/state.ml:7), so nothing new needs to be tracked — only serialized. Emitting both ends gives editor tooling, notably the VS Code live preview (#38-ish preview work), enough to highlight the exact operation that produced a crease on hover, instead of jumping to its first character.Open question: wire format. Either extend the string (
through.bel:3:1-3:19) or emit a structured{ "start": [l,c], "end": [l,c] }. Structured is friendlier for the editor consumer; the string stays greppable. Lean structured unless the CLI use ofspanwants to stay a one-liner.beloch:edgesspanfield.foldfixtures