Update demo.ipynb to the current GIQL named-argument syntax
Description
demo.ipynb uses the outdated single-equals form for operator named arguments — NEAREST(features_b, k=3), NEAREST(..., signed=true), NEAREST(..., max_distance=50000), DISTANCE(..., signed=true). The current GIQL grammar binds named arguments with the walrus form (k := 3), so the single-equals form no longer binds and the argument silently falls back to its default.
The most visible symptom: the k-nearest cells (k=3) silently return only one neighbor per feature instead of three, because k=3 does not bind and k defaults to 1 (the transpiled subquery emits LIMIT 1 rather than LIMIT 3). The "directional / upstream" cell consequently collapses to zero rows.
The notebook's stored cell outputs are also stale: they predate the bedtools-parity + 1 DISTANCE offset (#134) and the named-argument change, so re-executing the notebook today produces different numbers than the committed outputs.
Re-author every operator call to use := for named arguments and re-execute the notebook so the committed outputs reflect current behavior. While re-running, sanity-check that the per-operator result counts are sensible (e.g. k=3 yields up to three neighbors per feature again).
Expected Behavior
Every cell in demo.ipynb uses the current := named-argument syntax, the k-nearest cells return the requested number of neighbors, and the committed outputs match a fresh end-to-end run against main.
Root Cause
GIQL standardized operator named arguments on the walrus form (name := value) in an earlier epic; the demo notebook was never updated from the legacy name=value form. Because an unbound named argument falls back to its default rather than erroring, the affected cells transpile and execute successfully but with the wrong parameters (k defaults to 1). The committed outputs additionally predate the #134 DISTANCE off-by-one parity fix.
Update demo.ipynb to the current GIQL named-argument syntax
Description
demo.ipynbuses the outdated single-equals form for operator named arguments —NEAREST(features_b, k=3),NEAREST(..., signed=true),NEAREST(..., max_distance=50000),DISTANCE(..., signed=true). The current GIQL grammar binds named arguments with the walrus form (k := 3), so the single-equals form no longer binds and the argument silently falls back to its default.The most visible symptom: the k-nearest cells (
k=3) silently return only one neighbor per feature instead of three, becausek=3does not bind andkdefaults to 1 (the transpiled subquery emitsLIMIT 1rather thanLIMIT 3). The "directional / upstream" cell consequently collapses to zero rows.The notebook's stored cell outputs are also stale: they predate the bedtools-parity
+ 1DISTANCE offset (#134) and the named-argument change, so re-executing the notebook today produces different numbers than the committed outputs.Re-author every operator call to use
:=for named arguments and re-execute the notebook so the committed outputs reflect current behavior. While re-running, sanity-check that the per-operator result counts are sensible (e.g. k=3 yields up to three neighbors per feature again).Expected Behavior
Every cell in
demo.ipynbuses the current:=named-argument syntax, the k-nearest cells return the requested number of neighbors, and the committed outputs match a fresh end-to-end run againstmain.Root Cause
GIQL standardized operator named arguments on the walrus form (
name := value) in an earlier epic; the demo notebook was never updated from the legacyname=valueform. Because an unbound named argument falls back to its default rather than erroring, the affected cells transpile and execute successfully but with the wrong parameters (kdefaults to 1). The committed outputs additionally predate the #134 DISTANCE off-by-one parity fix.