test(gq): register every .gqt case as its own test in a dedicated corpus crate - #607
Merged
Merged
Conversation
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
This was referenced Sep 4, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What & why
This PR moves the
.gqtcorpus and its runner into a dedicated crate,omnigraph-gqt, and registers every case as its own test,case::<file>.gqt, discovered at run time bydatatest-stable. The #596 walker was one test, selectable only throughOMNIGRAPH_GQ_LOGIC_TESTS, invisible to--list, cargo-nextest, and IDE test views.OMNIGRAPH_GQ_LOGIC_TESTS=issue_563 cargo test -p omnigraph-engine --test gq_logic_testscargo test -p omnigraph-gqt issue_563(add--test gq_logic_teststo skip the unit tests)cargo test -p omnigraph-gqt --test gq_logic_tests -- --listcase::<file>.gqtOMNIGRAPH_GQ_JOBS=<n> cargo test …cargo test -p omnigraph-gqt -- --test-threads=<n>corpus_layoutFAILlinetests/gq_logic_tests/, no Rust changecrates/omnigraph-gqt/cases/, no Rust changeThe runner is a library (
run_case,list_cases) for a follow-up--showbinary. The crate ispublish = false, outsidedefault-membersand the release build.Backing issue / RFC
docs/rfcs/0045-gq-logic-tests.md): the per-file test identity it recorded as its upgrade path; the body is updated in place and the 2026-09-03 Decision-log entry names what it supersedes.Checklist
AGENTS.md,docs/dev/testing.md, and the workflow follow)corpus_layout, the symlink and non-UTF-8 battery rows, budget and panic tests on the single-case runner; 7 cases green)docs/dev/testing.md,AGENTS.md; developer surface only)Local verification
cargo test -p omnigraph-gqt: 94 unit tests and 7 cases greencargo test -p omnigraph-gqt --test gq_logic_tests -- --list: 7case::<file>.gqtlines; withissue_563: 2 run, 5 filtered outx.gqtincases/:corpus_layoutfails naming itpython3 scripts/check-fix-regression.py --self-test,scripts/check-agents-md.sh,cargo clippy --workspace --all-targets -- -D warnings,cargo fmt --all --check: cleancargo test --workspace --locked --no-fail-fast: 102 binaries green;external_blob_file_policy_rejects_special_filesred only under a sandbox that forbidsUnixListener::bindNotes for reviewers
cargo testat the root skips the crate (-p omnigraph-gqtor--workspacereaches it).Cargo.lockwindows-sysandsocket2edge moves are cargo's minimal resolution for the new dev-dependency: HEAD's lock pluscargo update --workspacereproduces this lock byte for byte..GQTand nested files are refused bycorpus_layout, the gate, and--list.#[test] fn issue_Ninsidecrates/omnigraph-gqt/src/executes there.