Filter-expression asymmetry: nodes[edge_expr] vs edges[node_expr]
Nobody has claimed this yet.
- Dominant language
- Rust
- Stars
- 642
- Forks
- 70
- Avg merge
- 2d 13h
- Merged PRs (30d)
- 21
Description
edges[node_expr] is accepted (edges whose endpoints match a node predicate) but nodes[edge_expr] raises Exception("Node filter expected"): the same kind of cross-kind question, answered in one direction only. The remote matches local exactly here (same acceptance, same refusal), so this is a local-semantics decision, not a client fix.
Two symmetric options:
- implement
nodes[edge_expr]as "nodes with at least one matching edge" (the mirror of howedges[node_expr]treats endpoints), or - reject both directions.
Raised as a question in review on the parity suite PR (#2707): "shouldn't node and edge properties support the same filters?"
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the parity suite pull request (#2707) and inspect the existing coverage for edges[node_expr] and nodes[edge_expr]. Clarify the intended symmetric behavior, then update the relevant parity coverage so the chosen acceptance or refusal is explicit for both directions.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- database
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Active
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100