flux-pr-2185
sqlparser-rs (Rust) · W1 · GPT-5.1 Codex Mini
Tests passed. 1/1 commands passed. Strength: strong.
env PATH=/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin cargo test --all-featuresPartial score: 1/1
Trajectory
unknown · partial order onlyCanonical trajectory missing; showing coarse derived order only.
Quality
Equivalence Reasoning
behavioral
The patch only partially implements the intent. It adds optional `START WITH`, `NOCYCLE`, and a `CONNECT_BY_ROOT` parse path, but misses core parity with the intended behavior: it does not introduce the keyword-table change for `NOCYCLE` (so `Keyword::NOCYCLE` is likely undefined in this base), and it collapses hierarchical clauses into a single `ConnectBy` struct, losing clause-order fidelity (`CONNECT BY ... START WITH ...` round-trips as `START WITH ... CONNECT BY ...`). The gold intent supports flexible clause ordering as first-class syntax elements.
Code Review
The patch partially addresses the request but likely does not satisfy the intended change set: it appears incomplete around keyword support, does not adopt the flexible clause representation needed for robust hierarchical clause ordering, and uses a riskier CONNECT_BY_ROOT parsing approach.
Parser code now checks `Keyword::NOCYCLE`, but this patch does not add `NOCYCLE` to the keyword definitions. This is a likely compile-time or behavior break depending on enum generation state.
The AST stores one `ConnectBy` object and formatter always prints `START WITH` before `CONNECT BY` when both exist. Inputs where `CONNECT BY ... START WITH ...` should remain representable in-order are normalized/lost.
Oracle handling adds a custom `parse_prefix` branch that consumes `CONNECT_BY_ROOT` and then parses a full expression. This differs from intended operator reservation behavior and risks precedence/parse-shape mismatches in complex select-item expressions.