feat(ci): add v2 code-graph benchmarks and extract integration-tests-codegraph crate
Summary
- Add v2 code-graph benchmarks to CI with Python (Django, Flask), C# (NLog), and Kotlin (OkHttp) repos
- Extract
integration-tests-codegraphcrate fromintegration-testkitto isolate heavy deps (code-graph, lance-graph, datafusion, tree-sitter grammars) from thecontainersandclitest binaries - Clean up the extracted crate: remove dead exports, unused fields, simplify Arrow batch construction, use
tabledfor failure output
Changes
V2 benchmarks
- New
index-v2scenario incode-indexing-benchmark.yamlwith--v2flag - Python repos: Django 5.2, Flask 3.1.1
- C# repo: NLog v5.4.0
- OkHttp added to
kotlingroup - New
codegraph-testCI job runs v2 benchmarks for[python, java, kotlin, csharp] - Benchmark template parameterized with
SCENARIOvariable
Crate extraction
integration-tests-codegraphowns graph_validator source, fixtures, and YAML test suitesintegration-testkitloses 7 heavy deps (code-graph, lance-graph, arrow_56, etc.)run-unit-tests.shexcludes the new crate; separatecodegraph-testCI job runs itmise test:integration:codegraphreplacesmise test:graph-validator
Code cleanup
- Dead code removed:
run_yaml_suite_file, unusedpubre-exports,description/paramsfields CountEqualsArgs/CountGteArgsunified intoFieldValueArgscheck_int_fieldhelper deduplicates assertion logicmake_batchhelper reduces Arrow boilerplate in datasets.rstabledreplaces manual box-drawing for failure output- All internal types narrowed to
pub(crate)