Skip to content

Update demo.ipynb to the current GIQL named-argument syntax #165

Description

@conradbzura

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.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions